/*
 * Crown & Compass Global — Business Operations
 * Page-specific stylesheet extracted from style.css.
 *
 * Shared/sitewide systems intentionally remain in style.css:
 * header/navigation, footer, floating consultation CTA,
 * trust/value cards, stats band, and shared breadcrumb system.
 */

.hero{
  position:relative;
  height:610px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
  background:
    radial-gradient(
      circle at 18% 25%,
      rgba(47,111,176,0.35),
      transparent 40%
    ),
    radial-gradient(
      circle at 82% 70%,
      rgba(47,111,176,0.25),
      transparent 45%
    ),
    linear-gradient(
      135deg,
      #0c1524 0%,
      #16233c 55%,
      #10192b 100%
    );
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(
      rgba(16,25,43,0.55),
      rgba(16,25,43,0.78)
    ),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.035) 0 1px,
      transparent 1px 64px
    ),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.035) 0 1px,
      transparent 1px 64px
    );
}

.hero-inner{
  position:relative;
  z-index:2;
  max-width:900px;
  padding:0 24px;
}

.hero-eyebrow{
  color:#9db6d8;
  font-size:13px;
  letter-spacing:0.18em;
  text-transform:uppercase;
  font-weight:600;
  margin-bottom:14px;
}

.hero h1{
  color:#fff;
  font-size:44px;
  font-weight:600;
  line-height:1.15;
  margin-bottom:16px;
}

.hero p{
  color:#dbe4f0;
  font-size:18px;
  font-weight:400;
  line-height:1.5;
  font-family:"Assistant",sans-serif;
  margin:0;
}

.diagnostic-band{
  background:#f5f7fa;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:72px 24px;
}

.diagnostic-inner{
  max-width:1180px;
  margin:0 auto;
  text-align:center;
}

.diagnostic-inner h2{
  font-size:30px;
  font-weight:600;
  margin:0;
}

.diagnostic-inner .rule{
  margin-left:auto;
  margin-right:auto;
}

.diagnostic-intro{
  font-size:17px;
  color:var(--ink-soft);
  margin:24px 0 38px;
}

.diagnostic-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.diagnostic-item{
  background:#fff;
  border:1px solid var(--line);
  border-radius:6px;
  padding:22px 26px;

  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:32px;

  text-align:left;
}

.diagnostic-item p{
  margin:0;
  font-size:16px;
  line-height:1.5;
  color:var(--ink);
  flex:1;
}

.diagnostic-item a{
  display:flex;
  align-items:center;
  justify-content:center;

  min-width:260px;
  padding:13px 22px;

  background:var(--blue);
  color:#fff;

  border-radius:4px;
  text-decoration:none;

  font-size:15px;
  font-weight:700;

  text-align:center;
  white-space:nowrap;

  transition:background 0.15s ease;
}

.diagnostic-item a:hover{
  background:var(--blue-dark);
  text-decoration:none;
}

@media (max-width:800px){
.diagnostic-item{
    flex-direction:column;
    align-items:stretch;
    gap:18px;
  }

.diagnostic-item a{
    min-width:0;
    width:100%;
  }
}

.services-section{
  max-width:1380px;
  margin:0 auto;
  padding:86px 32px 96px;
}

.services-section > h2{
  font-size:38px;
  font-weight:600;
  text-align:center;
  line-height:1.2;
}

.services-section > .rule{
  margin-left:auto;
  margin-right:auto;
  margin-top:22px;
  margin-bottom:30px;
}

.services-section > p.section-sub{
  text-align:center;
  max-width:760px;
  margin:0 auto 58px;

  font-size:20px;
  line-height:1.6;

  color:var(--ink-soft);
}

.service-cards{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:34px;
}

.service-card{
  background:#fff;
  border:1px solid var(--line);
  border-top:4px solid var(--blue);
  border-radius:6px;

  padding:38px 34px 32px;

  min-height:610px;

  display:flex;
  flex-direction:column;
}

.service-card h3{
  font-size:27px;
  line-height:1.2;
  font-weight:600;

  margin:0 0 18px;
}

.service-card .service-tagline{
  font-size:18px;
  line-height:1.45;

  font-style:italic;
  color:var(--blue-dark);

  margin:0 0 22px;
}

.service-card p.service-desc{
  font-size:18px;
  line-height:1.65;

  color:var(--ink-soft);

  margin:0 0 26px;
}

.service-card ul.service-points{
  list-style:none;
  margin:0 0 32px;
  padding:0;

  flex-grow:1;
}

.service-card ul.service-points li{
  position:relative;

  padding:8px 0 8px 28px;

  font-size:17px;
  line-height:1.55;

  color:var(--ink-soft);
}

.service-card ul.service-points li::before{
  content:"✓";

  position:absolute;
  left:0;

  color:var(--accent);

  font-size:19px;
  font-weight:700;
}

.service-card a.service-link{
  display:flex;
  align-items:center;
  justify-content:center;

  min-height:58px;

  text-align:center;

  background:var(--navy);
  color:#fff;

  text-decoration:none;

  font-size:17px;
  font-weight:700;
  line-height:1.2;

  padding:14px 24px;

  border-radius:4px;

  transition:background 0.15s ease;
}

.service-card a.service-link:hover{
  background:var(--navy-2);
}

@media (max-width:1000px){
.service-cards{
    grid-template-columns:1fr;
  }

.service-card{
    min-height:auto;
  }
}

@media (max-width:700px){
.services-section{
    padding:60px 22px 70px;
  }

.services-section > h2{
    font-size:31px;
  }

.services-section > p.section-sub{
    font-size:17px;
  }

.service-card{
    padding:30px 24px;
  }

.service-card h3{
    font-size:24px;
  }

.service-card .service-tagline,
.service-card p.service-desc{
    font-size:17px;
  }

.service-card ul.service-points li{
    font-size:16px;
  }
}

.hero-eyebrow{
  font-size:15px;
  letter-spacing:0.18em;
}

.hero h1,
.hero-title{
  font-size:48px;
  line-height:1.12;
}

.diagnostic-inner h2,
.services-section h2{
  font-size:32px;
  line-height:1.2;
}

.diagnostic-intro{
  font-size:18px;
  line-height:1.6;
}

.diagnostic-item p{
  font-size:17px;
  line-height:1.5;
}

.diagnostic-item a{
  font-size:15px;
}

.service-card h3{
  font-size:22px;
  line-height:1.25;
}

.service-card p{
  font-size:16px;
  line-height:1.6;
}

.service-card li{
  font-size:15px;
  line-height:1.55;
}

.service-card a{
  font-size:15px;
}

@media (max-width:700px){
.hero h1,
.hero-title{
    font-size:36px;
  }

.diagnostic-inner h2,
.services-section h2{
    font-size:27px;
  }

.diagnostic-intro{
    font-size:16px;
  }
}

.hero-eyebrow{
  font-size:16px;
  font-weight:700;
  letter-spacing:0.18em;
}

.hero h1,
.hero-title{
  font-size:56px;
  line-height:1.08;
}

.diagnostic-inner h2,
.services-section h2{
  font-size:36px;
  line-height:1.2;
}

.diagnostic-intro{
  font-size:22px;
  line-height:1.55;
}

.diagnostic-item{
  padding:25px 28px;
  min-height:92px;
}

.diagnostic-item p{
  font-size:19px;
  line-height:1.45;
}

.diagnostic-item a{
  min-width:270px;
  padding:15px 24px;

  font-size:16px;
  font-weight:700;
}

.service-card h3{
  font-size:24px;
  line-height:1.25;
}

.service-card p{
  font-size:18px;
  line-height:1.6;
}

.service-card li{
  font-size:17px;
  line-height:1.55;
}

.service-card a{
  font-size:16px;
}

@media (max-width:800px){
.hero h1,
.hero-title{
    font-size:40px;
  }

.hero-eyebrow{
    font-size:14px;
  }

.diagnostic-inner h2,
.services-section h2{
    font-size:30px;
  }

.diagnostic-intro{
    font-size:17px;
  }

.diagnostic-item p{
    font-size:17px;
  }
}

.diagnostic-inner{
  max-width:1250px;
}

.services-inner,
.services-section .section-inner{
  max-width:1250px;
}

.service-card h3{
  font-size:27px;
}

.service-card p.service-desc{
  font-size:18px;
}

.service-card ul.service-points li{
  font-size:17px;
}

.services-section > h2{
  text-align:center;
  font-size:38px;
  line-height:1.2;
  margin:0;
}

.services-section > .rule{
  width:70px;
  height:3px;
  background:var(--blue);

  margin:26px auto 34px;
}

.services-section > p.section-sub{
  max-width:760px;
  margin:0 auto 58px;

  text-align:center;

  font-size:20px;
  line-height:1.5;

  color:var(--ink-soft);
}

.hero-inner{
  max-width:980px;
  margin:0 auto;
  padding:0 24px;
}

.hero h1{
  max-width:860px;
  margin:0 auto;

  font-size:56px;
  line-height:1.08;
  text-align:center;
}

.hero{
  padding-bottom:80px;
}

.hero{
  padding-top:85px;
  padding-bottom:85px;
}

.service-card p,
.service-card li,
.diagnostic-item p{
    font-family:"Assistant", sans-serif !important;
}

.service-card h3{
    font-family:"Lora", serif !important;
}

.hero h1{
    font-family:"Lora", serif !important;
}

.service-card .service-tagline,
.service-card .tagline{
    font-size:20px !important;
    line-height:1.55;
}

.service-card p{
    font-size:21px !important;
    line-height:1.65;
}

.service-card li,
.service-card .check-list li{
    font-size:19px !important;
    line-height:1.6;
}

.diagnostic-item p{
    font-size:21px !important;
    line-height:1.55;
}

.diagnostic-item a,
.diagnostic-item .diagnostic-button{
    font-size:19px !important;
    line-height:1.25;
}

.diagnostic-intro{
    font-size:21px !important;
    line-height:1.5;
}

.services-section > p.section-sub{
    font-size:21px !important;
    line-height:1.55;

    /* slightly wider so the larger font has room */
    max-width:900px;
}

.hero-eyebrow{
    font-size:20px !important;
    font-weight:700;
    letter-spacing:0.18em;
}

.services-section > .rule{
    width:90px !important;
}

.service-card{
    padding-top:34px !important;
    padding-bottom:30px !important;
}

.service-card h3{
    margin-bottom:12px !important;
}

.service-card .service-tagline{
    margin-bottom:22px !important;
}

.service-card > p:not(.service-tagline){
    margin-bottom:22px !important;
}

.service-card li{
    margin-bottom:14px !important;
}

.service-card .service-button,
.service-card .btn{
    margin-top:24px !important;
}

.diagnostic-item a{
    background:#364E69 !important;
}

.diagnostic-item a:hover{
    background:#2D4259 !important;
}

.hero{
    background:
        linear-gradient(
            rgba(15, 27, 45, 0.62),
            rgba(15, 27, 45, 0.62)
        ),
        url("assets/images/jlg-world-map.png") center center / cover no-repeat !important;
}

.hero{
    background-color: #364E69 !important;
}

.hero::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        linear-gradient(
            rgba(15,27,45,0.18),
            rgba(15,27,45,0.28)
        );
}

.hero{
    background-color:#364E69 !important;
}

.hero .hero-inner{
    position:relative;
    z-index:2;

    width:100%;
    max-width:980px !important;

    margin:0 auto !important;
    padding:0 24px !important;

    display:flex;
    flex-direction:column;
    align-items:center;

    /* Drops the complete content stack slightly lower */
    transform:translateY(22px);
}

.hero .hero-eyebrow{
    margin:0 0 22px !important;

    color:#D4A017 !important;

    font-family:"Assistant", sans-serif !important;
    font-size:14px !important;
    font-weight:700 !important;

    letter-spacing:.16em !important;
    line-height:1.2;

    text-transform:uppercase;
}

.hero .hero-inner h1{
    width:100%;
    max-width:930px !important;

    margin:0 auto 26px !important;

    color:#FFFFFF !important;

    font-family:"Lora", serif !important;
    font-size:54px !important;
    font-weight:600 !important;

    line-height:1.08 !important;
    letter-spacing:-.015em;

    text-align:center;
}

.hero .hero-lede{
    width:100%;
    max-width:720px;

    margin:0 auto 36px !important;

    color:rgba(244,241,232,.82) !important;

    font-family:"Assistant", sans-serif !important;
    font-size:17px !important;
    font-weight:400 !important;

    line-height:1.55 !important;

    text-align:center;
}

.hero-actions{
    display:flex;
    align-items:center;
    justify-content:center;

    gap:16px;
}

.hero-btn{
    min-height:54px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:14px 28px;

    border-radius:4px;

    font-family:"Assistant", sans-serif !important;
    font-size:15px;
    font-weight:700;
    line-height:1.2;

    text-decoration:none !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease,
        color .25s ease,
        background-position .65s ease;
}

.hero-btn-gold{
    min-width:205px;

    background:
        linear-gradient(
            120deg,
            #F0DEAE 0%,
            #D4A017 48%,
            #554009 100%
        );

    background-size:220% 100%;
    background-position:0% 0%;

    color:#1D2952 !important;

    border:1px solid transparent;

    box-shadow:0 5px 18px rgba(212,160,23,.28);
}

.hero-btn-gold:hover{
    background-position:100% 0%;

    transform:translateY(-2px);

    box-shadow:
        0 10px 25px rgba(212,160,23,.40),
        0 0 18px rgba(240,222,174,.15);
}

.hero-btn-outline{
    min-width:215px;

    background:rgba(255,255,255,.015);

    color:#FFFFFF !important;

    border:1px solid rgba(244,241,232,.52);
}

.hero-btn-outline:hover{
    color:#F0DEAE !important;

    border-color:#D4A017;

    background:rgba(244,241,232,.06);

    transform:translateY(-2px);

    box-shadow:0 7px 18px rgba(29,41,82,.22);
}

@media (max-width:700px){
.hero .hero-inner{
        transform:none;
        padding:0 !important;
    }

.hero .hero-inner h1{
        font-size:38px !important;
        line-height:1.12 !important;
    }

.hero .hero-lede{
        font-size:16px !important;
    }

.hero-actions{
        width:100%;

        flex-direction:column;
        gap:12px;
    }

.hero-btn{
        width:100%;
        max-width:320px;
    }
}

.hero{
    position:relative !important;
    overflow:hidden !important;

    background:
        radial-gradient(
            circle at 20% 20%,
            rgba(224,199,127,0.10),
            transparent 42%
        ),
        linear-gradient(
            120deg,
            #343F68 0%,
            #1D2952 52%,
            #131B35 100%
        ) !important;
}

#ccg-globe{
    position:absolute;

    width:750px;
    height:750px;

    left:50%;
    top:50%;

    transform:translate(-50%, -50%);

    z-index:0;

    opacity:.72;

    pointer-events:none;
}

#ccg-globe canvas{
    display:block;

    width:100% !important;
    height:100% !important;
}

.hero .hero-inner{
    position:relative !important;
    z-index:2 !important;
}

.hero::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:1;

    background:
        radial-gradient(
            circle at center,
            rgba(29,41,82,0.04) 0%,
            rgba(29,41,82,0.14) 50%,
            rgba(19,27,53,0.30) 100%
        );

    pointer-events:none;
}

@media (max-width:900px){
#ccg-globe{
        width:650px;
        height:650px;
    }
}

@media (max-width:650px){
#ccg-globe{
        width:540px;
        height:540px;

        opacity:.55;
    }
}

#ccg-globe canvas{
    filter:
        brightness(1.03)
        saturate(1.12)
        drop-shadow(0 0 3px rgba(212,160,23,.22))
        drop-shadow(0 0 8px rgba(224,199,127,.12));
}

/* =========================================================
   CCG GLOBE — HIDE DEFAULT FIRST FRAME ONLY
   ========================================================= */

#ccg-globe{
    visibility:hidden;
}

#ccg-globe.is-sized{
    visibility:visible;
}

.diagnostic-band{
    background: #FAFAF8;
}

.diagnostic-band h2{
    color: #1D2952;
}

.diagnostic-band .rule{
    background: linear-gradient(
        90deg,
        #F0DEAE 0%,
        #E0C77F 25%,
        #D4A017 65%,
        #8A650F 100%
    );

    border: none;
}

.diagnostic-intro{
    color: #343F68;
}

.diagnostic-item{
    background: #FFFFFF;

    border: 1px solid rgba(29, 41, 82, 0.12);

    /* CCG GOLD ACCENT */
    border-left: 4px solid #D4A017;

    box-shadow:
        0 5px 18px rgba(29, 41, 82, 0.035);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.diagnostic-item p{
    color: #1B1B1F;
}

.diagnostic-item:hover{
    transform: translateY(-3px);

    box-shadow:
        0 10px 28px rgba(29, 41, 82, 0.10);

    border-left-color: #D4A017;
}

.diagnostic-item a{
    background: linear-gradient(
        135deg,
        #1D2952 1000%,
        #343F68 0%
    );

    color: #FFFFFF;

    border: 1px solid rgba(212, 160, 23, 0.18);

    transition:
        color 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease,
        transform 0.35s ease;
}

.diagnostic-item a:hover{
    background: #1D2952 !important;
    color: #FFFFFF;

    border-color: rgba(212, 160, 23, 0.65);

    box-shadow:
        0 0 6px rgba(240, 222, 174, 0.25),
        0 0 14px rgba(212, 160, 23, 0.18),
        0 8px 22px rgba(29, 41, 82, 0.18);

    transform: translateY(-1px);
}

.diagnostic-item a{
    position: relative;
    overflow: hidden;

    background: #1D2952 !important;
    color: #FFFFFF;

    isolation: isolate;
}

.diagnostic-item a::before{
    content: "";

    position: absolute;
    top: -50%;
    left: -75%;

    width: 45%;
    height: 200%;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(240, 222, 174, 0.08) 20%,
        rgba(240, 222, 174, 0.75) 48%,
        rgba(212, 160, 23, 0.95) 52%,
        rgba(240, 222, 174, 0.35) 70%,
        transparent 100%
    );

    transform: skewX(-20deg);

    pointer-events: none;
    z-index: 1;

    transition: left 0.75s ease;
}

.diagnostic-item a:hover::before{
    left: 135%;
}

.diagnostic-item a{
    position: relative;
    overflow: hidden;

    background: #1D2952 !important;
    color: #FFFFFF !important;

    isolation: isolate;

    transition:
        color 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

.diagnostic-item a::before{
    content: "";

    position: absolute;
    top: -50%;
    left: -75%;

    width: 45%;
    height: 200%;

    opacity: 0;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(240, 222, 174, 0.08) 20%,
        rgba(240, 222, 174, 0.75) 45%,
        rgba(212, 160, 23, 1) 52%,
        rgba(240, 222, 174, 0.40) 68%,
        transparent 100%
    );

    transform: skewX(-20deg);

    pointer-events: none;
    z-index: 1;
}

.diagnostic-item a:hover{
    background: #1D2952 !important;

    color: #F0DEAE !important;

    border-color: rgba(212, 160, 23, 0.70);

    box-shadow:
        0 0 5px rgba(240, 222, 174, 0.28),
        0 0 13px rgba(212, 160, 23, 0.20),
        0 8px 22px rgba(29, 41, 82, 0.18);

    transform: translateY(-1px);
}

.diagnostic-item a:hover::before{
    opacity: 1;
    animation: ccgButtonGleam 0.75s ease-out 1;
}

@keyframes ccgButtonGleam {
    0% {
        left: -75%;
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        left: 135%;
        opacity: 0;
    }
}

.services-section h2{
    color: #1D2952;
}

.services-section .rule{
    background: linear-gradient(
        90deg,
        #F0DEAE 0%,
        #E0C77F 25%,
        #D4A017 65%,
        #8A650F 100%
    );

    border: none;
}

.services-section .section-sub{
    color: #343F68;
}

.service-card{
    background: #FFFFFF;

    border: 1px solid rgba(29, 41, 82, 0.12);

    border-top: 3px solid transparent;

    border-image:
        linear-gradient(
            90deg,
            #F0DEAE 0%,
            #D4A017 55%,
            #8A650F 100%
        )
        1;

    box-shadow:
        0 5px 18px rgba(29, 41, 82, 0.035);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.service-card:hover{
    transform: translateY(-4px);

    box-shadow:
        0 14px 32px rgba(29, 41, 82, 0.10);
}

.service-card h3{
    color: #1D2952;
}

.service-card .service-tagline{
    color: #585C7E;
}

.service-card .service-desc,
.service-card .service-points li{
    color: #1B1B1F;
}

.service-card .service-points li::before{
    color: #D4A017;
}

.service-card .service-link{
    position: relative;
    overflow: hidden;

    background: #1D2952 !important;
    color: #FFFFFF !important;

    border: 1px solid rgba(212, 160, 23, 0.18);

    isolation: isolate;

    transition:
        color 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease;
}

.service-card .service-link::before{
    content: "";

    position: absolute;
    top: -50%;
    left: -75%;

    width: 45%;
    height: 200%;

    opacity: 0;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(240, 222, 174, 0.08) 20%,
        rgba(240, 222, 174, 0.75) 45%,
        rgba(212, 160, 23, 1) 52%,
        rgba(240, 222, 174, 0.40) 68%,
        transparent 100%
    );

    transform: skewX(-20deg);

    pointer-events: none;
    z-index: 1;
}

.service-card .service-link:hover{
    background: #1D2952 !important;

    color: #F0DEAE !important;

    border-color: rgba(212, 160, 23, 0.70);

    box-shadow:
        0 0 5px rgba(240, 222, 174, 0.28),
        0 0 13px rgba(212, 160, 23, 0.20),
        0 8px 22px rgba(29, 41, 82, 0.18);

    transform: translateY(-1px);
}

.service-card .service-link:hover::before{
    opacity: 1;

    animation:
        ccgServiceButtonGleam
        0.75s
        ease-out
        1;
}

@keyframes ccgServiceButtonGleam {

    0% {
        left: -75%;
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        left: 135%;
        opacity: 0;
    }

}

.hero-btn-gold{
    position:relative;
    overflow:hidden;

    background:
        linear-gradient(
            110deg,
            #F0DEAE 0%,
            #D4A017 45%,
            #8A650F 100%
        );

    color:#1D2952;

    box-shadow:
        0 10px 24px
        rgba(212,160,23,.18);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hero-btn-gold::before{
    content:"";

    position:absolute;

    top:0;
    bottom:0;

    left:-55%;

    width:35%;

    background:
        linear-gradient(
            100deg,
            transparent,
            rgba(255,255,255,.58),
            transparent
        );

    transform:
        skewX(-18deg);

    pointer-events:none;

    opacity:0;
}

.hero-btn-gold:hover{
    transform:translateY(-3px);

    box-shadow:
        0 14px 30px
        rgba(212,160,23,.28);
}

.hero-btn-gold:hover::before{
    opacity:1;

    animation:
        businessOpsButtonGleam
        .85s
        ease-out
        1;
}

@keyframes businessOpsButtonGleam{

    from{
        left:-55%;
    }

    to{
        left:125%;
    }

}

.hero{
    position:relative;
    isolation:isolate;
}

.hero::before{
    content:"";

    position:absolute;
    inset:0;

    z-index:1;

    pointer-events:none;

    background:

        /* MAIN CCG MIDNIGHT BLUE WASH */
        linear-gradient(
            90deg,
            rgba(19,27,53,.70) 0%,
            rgba(29,41,82,.58) 32%,
            rgba(52,63,104,.42) 52%,
            rgba(29,41,82,.54) 72%,
            rgba(19,27,53,.70) 100%
        ),

        /* SOFT BLUE CENTER GLOW */
        radial-gradient(
            ellipse at center,
            rgba(52,63,104,.28) 0%,
            rgba(29,41,82,.12) 42%,
            transparent 70%
        ),

        /* VERY SUBTLE GOLD WARMTH OVER CITY */
        radial-gradient(
            circle at 82% 30%,
            rgba(212,160,23,.10) 0%,
            rgba(212,160,23,.035) 25%,
            transparent 48%
        );
}

.hero-inner{
    position:relative;
    z-index:2;
}

.hero{
    position:relative;
    isolation:isolate;
}

.hero::before{
    content:"";

    position:absolute;
    inset:0;

    z-index:1;

    pointer-events:none;

    background:

        /* MAIN CCG MIDNIGHT BLUE WASH */
        linear-gradient(
            90deg,
            rgba(19,27,53,.70) 0%,
            rgba(29,41,82,.58) 32%,
            rgba(52,63,104,.42) 52%,
            rgba(29,41,82,.54) 72%,
            rgba(19,27,53,.70) 100%
        ),

        /* SOFT BLUE CENTER GLOW */
        radial-gradient(
            ellipse at center,
            rgba(52,63,104,.28) 0%,
            rgba(29,41,82,.12) 42%,
            transparent 70%
        ),

        /* VERY SUBTLE GOLD WARMTH OVER CITY */
        radial-gradient(
            circle at 82% 30%,
            rgba(212,160,23,.10) 0%,
            rgba(212,160,23,.035) 25%,
            transparent 48%
        );
}

.hero-inner{
    position:relative;
    z-index:2;
}

.hero::after{
    content:"";

    position:absolute;
    inset:0;

    z-index:1;

    pointer-events:none;

    box-shadow:
        inset 120px 0 130px rgba(19,27,53,.24),
        inset -120px 0 130px rgba(19,27,53,.20),
        inset 0 -85px 100px rgba(19,27,53,.26);
}

.hero .business-hero-title{
    width:100%;
    max-width:930px !important;

    margin:0 auto 26px !important;

    text-align:center;

    font-family:"Lora", serif !important;
    font-weight:600 !important;

    line-height:1.06 !important;
}

.business-hero-title-main{
    display:block;

    color:#FFFFFF;

    font-size:56px;

    line-height:1.08;
}

.business-hero-title-accent{
    display:block;

    margin-top:8px;

    font-size:54px;
    font-style:italic;
    font-weight:500;

    line-height:1.12;

    background:linear-gradient(
        90deg,
        #F0DEAE 0%,
        #D4A017 48%,
        #E0C77F 72%,
        #BC8810 100%
    );

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;

    padding-bottom:.10em;
}

@media (max-width:700px){
.business-hero-title-main{
        font-size:38px;
    }

.business-hero-title-accent{
        font-size:36px;

        margin-top:6px;
    }
}
