/*
Theme Name: CMRS Comprehensive Medical Review Services
Theme URI: https://cmrsllc.com
Author: CMRS
Description: Custom theme for Comprehensive Medical Review Services, LLC, converted from the design-approved static site.
Version: 1.0
Text Domain: cmrs
*/

  :root{
    --navy:#0f3778;
    --navy-deep:#082552;
    --navy-ink:#05193d;
    --sky:#3aa0e0;
    --sky-2:#1e88d1;
    --sky-light:#8ac7eb;
    --teal:#2dbfb0;
    /* New accent colors to reduce blueness */
    --red:#c1272d;
    --red-light:#e0464c;
    --coral:#e07956;
    --gold:#e8a934;
    --green:#2a9d5c;
    --warm-cream:#fdf6ec;
    --ink:#15203a;
    --slate:#4a5a78;
    --muted:#7b869e;
    --line:#dfe7f2;
    --bg:#ffffff;
    --bg-alt:#f2f7fc;
    --bg-soft:#e8f1fa;
    --bg-deep:#eaf2fb;
    --shadow-sm: 0 2px 12px rgba(15,55,120,.06);
    --shadow: 0 10px 35px rgba(15,55,120,.10);
    --shadow-lg: 0 24px 70px rgba(15,55,120,.18);
    --shadow-glow: 0 0 0 1px rgba(58,160,224,.25), 0 12px 40px rgba(58,160,224,.22);
    --grad-brand: linear-gradient(135deg, #0f3778 0%, #1e6db8 45%, #3aa0e0 100%);
    --grad-sky: linear-gradient(135deg, #3aa0e0 0%, #1e88d1 100%);
    --grad-dark: linear-gradient(135deg, #05193d 0%, #0f3778 60%, #1e6db8 100%);
    --grad-red: linear-gradient(135deg, #8e1d22 0%, #c1272d 60%, #e0464c 100%);
    --grad-warm: linear-gradient(135deg, #c1272d 0%, #e07956 50%, #e8a934 100%);
    --grad-teal: linear-gradient(135deg, #1a8378 0%, #2dbfb0 60%, #5dc7a8 100%);
  }
  /* ===== PRINT-FRIENDLY STYLES ===== */
  @media print{
    .top-bar,header.site-header,nav.primary,.hero,.service-strip,.scroll-down,
    .cta-band,.accred-bar,.about-video,.about-badges,.hero-img-frame,
    .hero-progress,.megamenu,.sp-cta,footer,.callout *,
    .quote-strip{display:none !important}
    .container{max-width:none;padding:0 36px}
    body{font-size:11pt;line-height:1.5;color:#000;background:#fff}
    h1,h2,h3,h4{color:#000;page-break-after:avoid}
    .page-hero{
      background:#fff !important;color:#000 !important;
      border-bottom:2px solid #000;padding:14pt 0;
    }
    .page-hero h1,.page-hero .lead,.page-hero .breadcrumb{color:#000 !important}
    .request-block,.sidebar-card{display:none !important}
    a{color:#000;text-decoration:underline}
    .service-card,.team-card{
      page-break-inside:avoid;
      border:1px solid #ccc;background:#fff;
    }
    .s-icon,.sp-icon,.tech-card-icon{
      background:#000 !important;color:#fff !important;
    }
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0;scroll-behavior:smooth}
  body{
    font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
    color:var(--ink);
    background:var(--bg);
    line-height:1.65;
    font-size:16px;
    overflow-x:hidden;
  }
  a{color:var(--sky-2);text-decoration:none;transition:color .15s}
  a:hover{color:var(--navy)}
  img{max-width:100%;display:block}
  h1,h2,h3,h4{font-family:'Inter',sans-serif;font-weight:700;color:var(--navy-ink);line-height:1.18;margin:0 0 .5em;letter-spacing:-.01em}
  h1{font-size:2.6rem;letter-spacing:-.025em}
  h2{font-size:2.1rem;letter-spacing:-.02em}
  h3{font-size:1.3rem}
  .container{max-width:1240px;margin:0 auto;padding:0 28px}

  /* ===================== LOGO ===================== */
  .cmrs-logo{
    display:flex;align-items:center;cursor:pointer;user-select:none;
    position:relative;
  }
  .cmrs-logo-media{
    position:relative;display:inline-flex;align-items:center;justify-content:center;
    height:88px;flex-shrink:0;
  }
  /* New self-contained CMRS logo (CMRS letters + tagline embedded).
     Image is shown by default; the SVG only kicks in if the PNG fails to load. */
  .cmrs-logo-img{
    height:88px;width:auto;display:block;
  }
  .cmrs-logo-img.broken{display:none}
  .cmrs-logo-img.broken ~ .cmrs-logo-svg{display:block}
  .cmrs-logo-svg{height:54px;width:auto;display:none;flex-shrink:0}
  /* Old text/divider blocks now hidden because the new image already
     contains the "Comprehensive Medical Review Services" tagline. */
  .cmrs-logo-divider,.cmrs-logo-text{display:none}
  .cmrs-logo-tag{
    display:block;font-size:.66rem;letter-spacing:2.5px;
    color:var(--navy);text-transform:uppercase;font-weight:700;
  }
  /* Footer variant: cropped white-background CMRS logo, sized to match the
     width of the description paragraph beneath it. */
  .cmrs-logo.on-dark{align-self:flex-start;margin-bottom:14px;display:block;}
  .cmrs-logo.on-dark .cmrs-logo-media{
    height:auto;background:transparent;border-radius:8px;padding:0;
    box-shadow:0 6px 18px rgba(0,0,0,.20);overflow:hidden;
    width:340px;max-width:100%;
  }
  .cmrs-logo.on-dark .cmrs-logo-img{
    width:100%;height:auto;display:block;
    /* Use the cropped white-background logo (top section of the asset panel) */
    content:url('assets/images/cmrs-logo-footer.png');
  }
  /* If real logo has black background, screen blend mode removes it on light headers */
  .cmrs-logo-img{mix-blend-mode:multiply}
  .cmrs-logo.on-dark .cmrs-logo-img{mix-blend-mode:screen}

  /* ===================== TOP UTILITY BAR (taller, prominent) ===================== */
  .top-bar{
    background:var(--grad-dark);
    color:#cbdcf2;font-size:.92rem;padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .top-bar .container{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
  .top-bar a{color:#cbdcf2}
  .top-bar a:hover{color:#fff}
  .tb-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
  .tb-phone{
    display:inline-flex;align-items:center;gap:8px;
    color:#fff;font-weight:600;font-size:.95rem;
    letter-spacing:.3px;text-decoration:none;
  }
  .tb-phone:hover{color:#fff;text-decoration:none}
  .tb-phone svg{width:16px;height:16px;color:#8ac7eb}
  .tb-email-btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:8px 16px;border-radius:8px;
    background:rgba(58,160,224,.18);
    border:1px solid rgba(138,199,235,.4);
    color:#fff;font-weight:600;font-size:.88rem;letter-spacing:.2px;
    cursor:pointer;transition:all .2s;text-decoration:none;
  }
  .tb-email-btn:hover{
    background:var(--grad-sky);border-color:var(--sky);color:#fff;
    text-decoration:none;transform:translateY(-1px);
    box-shadow:0 4px 12px rgba(58,160,224,.4);
  }
  .tb-email-btn svg{width:15px;height:15px}
  .tb-seals{display:flex;gap:8px;align-items:center;margin-left:6px}
  .tb-seal{
    display:inline-flex;align-items:center;gap:6px;
    padding:5px 11px;border-radius:8px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(138,199,235,.3);
    font-size:.74rem;font-weight:700;letter-spacing:.7px;
    color:#fff;
  }
  .tb-seal-icon{
    display:inline-flex;align-items:center;justify-content:center;
    width:18px;height:18px;border-radius:50%;
    background:#fff;color:var(--navy);font-weight:800;font-size:.6rem;
    flex-shrink:0;
  }
  .tb-seal-urac{
    padding:3px 8px;background:#fff;border-color:#e8a934;
  }
  .tb-seal-urac img{
    height:26px;width:auto;display:block;
    object-fit:contain;
  }
  .tb-seal-img{
    padding:3px 8px;background:#fff;border-color:rgba(255,255,255,.55);
  }
  .tb-seal-img img{
    height:26px;width:auto;display:block;
    object-fit:contain;
  }
  /* Prominent login buttons - same color, larger */
  .login-buttons{display:flex;gap:10px;align-items:center}
  .login-btn{
    display:inline-flex;align-items:center;gap:9px;
    padding:11px 22px;border-radius:10px;
    font-size:.92rem;font-weight:700;letter-spacing:.3px;
    cursor:pointer;transition:all .22s;text-decoration:none;
    color:#fff;
    background:var(--grad-sky);
    border:1px solid var(--sky);
    box-shadow:0 5px 14px rgba(58,160,224,.32);
  }
  .login-btn:hover{
    background:linear-gradient(135deg,#1e88d1,#0f3778);
    text-decoration:none;color:#fff;transform:translateY(-2px);
    box-shadow:0 8px 22px rgba(58,160,224,.5);
  }
  .login-btn svg{width:16px;height:16px}

  /* ===================== HEADER ===================== */
  header.site-header{
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid var(--line);
    position:sticky;top:0;z-index:500;
    box-shadow:0 2px 16px rgba(0,0,0,.04);
  }
  .nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:30px}
  .nav-wrap > .cmrs-logo{margin-left:8px;}

  nav.primary{display:flex;align-items:center;gap:0;flex:1;justify-content:space-around}
  .nav-item{position:static;flex:1;display:flex;justify-content:center}
  .nav-link{
    display:inline-flex;align-items:center;gap:6px;padding:18px 22px;
    color:var(--ink);font-weight:600;font-size:1.1rem;cursor:pointer;
    border-radius:8px;transition:all .18s;position:relative;
    white-space:nowrap;letter-spacing:.2px;
  }
  .nav-link:hover,.nav-link.active{background:var(--bg-soft);color:var(--navy)}
  .nav-link .caret{font-size:.7rem;opacity:.6;transition:transform .2s}
  .nav-item:hover .nav-link .caret{transform:rotate(180deg);opacity:1}
  .nav-link::after{
    content:"";position:absolute;bottom:8px;left:50%;transform:translateX(-50%) scaleX(0);
    width:26px;height:2px;background:var(--grad-sky);border-radius:2px;
    transition:transform .25s;
  }
  .nav-item:hover .nav-link::after{transform:translateX(-50%) scaleX(1)}

  /* Contact tab styled as a blue CTA button */
  .nav-item.nav-cta .nav-link{
    background:linear-gradient(180deg,#2070D8 0%,#1356B8 100%);
    color:#fff;
    padding:14px 28px;
    border-radius:8px;
    box-shadow:0 4px 14px rgba(19,86,184,.32);
  }
  .nav-item.nav-cta .nav-link:hover{
    background:linear-gradient(180deg,#1a5fc4 0%,#0e4ba2 100%);
    color:#fff;
    transform:translateY(-1px);
    box-shadow:0 6px 18px rgba(19,86,184,.42);
  }
  .nav-item.nav-cta .nav-link::after{display:none}

  /* Compact dropdown for the About nav item - small, vertical list, anchored
     to the nav item rather than full-width like the megamenu. */
  .nav-item-compact{position:relative}
  .megamenu.mm-compact{
    position:absolute;left:0;right:auto;top:100%;
    width:230px;
    padding:8px;
    border-radius:12px;
    border:1px solid var(--line);
    box-shadow:0 16px 36px rgba(15,55,120,.15);
    background:#fff;
    display:flex;flex-direction:column;gap:2px;
  }
  .megamenu.mm-compact::before{display:none}
  .megamenu.mm-compact .mm-compact-link{
    display:block;padding:10px 14px;border-radius:8px;
    color:var(--ink);font-weight:600;font-size:.92rem;letter-spacing:.1px;
    cursor:pointer;text-decoration:none;
    transition:background .15s,color .15s,transform .15s;
  }
  .megamenu.mm-compact .mm-compact-link:hover{
    background:var(--bg-alt);color:var(--navy);text-decoration:none;transform:translateX(2px);
  }
  /* Click-to-close: when an entry is clicked, this class is added briefly so
     the dropdown disappears immediately instead of waiting for mouseleave. */
  .nav-item.menu-suppress .megamenu{
    opacity:0 !important;visibility:hidden !important;
    pointer-events:none !important;transition:none !important;
  }

  /* Mega menu - drops from top of viewport like CareReview */
  .megamenu{
    position:absolute;left:0;right:0;top:100%;
    background:#fff;
    border-top:1px solid var(--line);
    box-shadow:0 24px 50px rgba(15,55,120,.18);
    padding:40px 0 44px;
    opacity:0;visibility:hidden;transform:translateY(-8px);
    transition:all .28s cubic-bezier(.2,.8,.2,1);
    z-index:400;
  }
  .nav-item:hover .megamenu{opacity:1;visibility:visible;transform:translateY(0)}
  .megamenu::before{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:
      radial-gradient(circle at 10% 0%, rgba(58,160,224,.06), transparent 40%),
      radial-gradient(circle at 90% 100%, rgba(15,55,120,.05), transparent 45%);
  }
  .mm-container{max-width:1240px;margin:0 auto;padding:0 28px;position:relative;z-index:2}
  .mm-grid{display:grid;grid-template-columns:1.5fr 2.5fr;gap:50px;align-items:start}
  .mm-feature{
    background:var(--grad-dark);
    border-radius:16px;padding:32px;color:#fff;
    position:relative;overflow:hidden;
    min-height:260px;display:flex;flex-direction:column;justify-content:space-between;
  }
  .mm-feature::before{
    content:"";position:absolute;top:-30%;right:-30%;width:260px;height:260px;
    background:radial-gradient(circle,rgba(58,160,224,.4) 0%,transparent 70%);
    border-radius:50%;
  }
  .mm-feature .mm-eyebrow{
    font-size:.72rem;letter-spacing:2px;text-transform:uppercase;
    color:var(--sky-light);font-weight:600;margin-bottom:10px;position:relative;z-index:2;
  }
  .mm-feature h3{color:#fff;font-size:1.3rem;margin-bottom:10px;position:relative;z-index:2}
  .mm-feature p{color:#cbdcf2;font-size:.9rem;margin-bottom:18px;position:relative;z-index:2}
  .mm-feature .mm-cta{
    display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
    padding:10px 18px;background:var(--grad-sky);
    border-radius:30px;color:#fff;font-weight:600;font-size:.85rem;
    position:relative;z-index:2;
  }
  .mm-feature .mm-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(58,160,224,.5);text-decoration:none;color:#fff}

  .mm-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px 30px}
  .mm-link{
    display:flex;gap:14px;padding:14px 16px;border-radius:10px;
    cursor:pointer;transition:all .18s;
  }
  .mm-link:hover{background:var(--bg-alt);text-decoration:none;transform:translateX(2px)}
  .mm-icon{
    flex-shrink:0;width:42px;height:42px;border-radius:11px;
    background:var(--grad-brand);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:700;font-size:.82rem;letter-spacing:.5px;
    box-shadow:0 6px 16px rgba(15,55,120,.25);
  }
  .mm-link:hover .mm-icon{background:var(--grad-sky);box-shadow:0 8px 22px rgba(58,160,224,.4)}
  .mm-txt h4{color:var(--navy-ink);font-size:.98rem;margin:0 0 3px;font-weight:600}
  .mm-txt p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}

  /* Deep-link highlight when arriving at a team card from the dropdown */
  .team-card.exec-highlight{
    box-shadow:0 0 0 3px #3aa0e0, var(--shadow-lg);
    transform:translateY(-6px);
    transition:box-shadow .35s, transform .35s;
  }

  /* Executive Team mega-menu (photo dropdown) */
  .megamenu.team-mm .mm-grid{grid-template-columns:1.1fr 3.2fr;gap:36px}
  .team-mm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px 14px}
  .team-mm-card{
    display:flex;flex-direction:column;align-items:center;text-align:center;
    padding:10px 6px;border-radius:10px;cursor:pointer;
    transition:background .2s,transform .2s;
    text-decoration:none;color:inherit;
  }
  .team-mm-card:hover{background:var(--bg-alt);transform:translateY(-2px);text-decoration:none;color:inherit}
  .team-mm-photo{
    width:62px;height:62px;border-radius:50%;overflow:hidden;
    background:linear-gradient(135deg,#0f3778,#3aa0e0);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:700;font-size:.78rem;letter-spacing:.02em;
    margin-bottom:8px;box-shadow:0 4px 12px rgba(15,55,120,.18);
    border:2px solid #fff;flex-shrink:0;
  }
  .team-mm-photo img{width:100%;height:100%;object-fit:cover;display:block}
  .team-mm-name{font-size:.78rem;font-weight:600;color:var(--navy-ink);line-height:1.22;margin:0 0 2px}
  .team-mm-title{font-size:.66rem;color:var(--muted);line-height:1.28;margin:0;font-weight:500}
  .team-mm-row-label{
    grid-column:1/-1;font-size:.66rem;font-weight:700;text-transform:uppercase;
    letter-spacing:.10em;color:var(--blue, #1e6db8);
    padding:4px 0 6px;border-bottom:1px solid #e3ebf5;margin-top:6px;
  }
  .team-mm-row-label:first-of-type{margin-top:0}
  @media(max-width:1100px){
    .megamenu.team-mm .mm-grid{grid-template-columns:1fr}
    .team-mm-grid{grid-template-columns:repeat(3,1fr)}
  }

  .btn{
    display:inline-flex;align-items:center;gap:8px;padding:12px 24px;
    border-radius:30px;font-weight:600;font-size:.93rem;cursor:pointer;
    border:none;transition:all .22s;text-align:center;
    font-family:inherit;
  }
  .btn-primary{
    background:var(--grad-sky);color:#fff;
    box-shadow:0 6px 18px rgba(58,160,224,.4);
  }
  .btn-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 28px rgba(58,160,224,.55);
    text-decoration:none;color:#fff;
  }
  .btn-outline{
    background:transparent;border:2px solid var(--navy);color:var(--navy);padding:10px 22px;
  }
  .btn-outline:hover{background:var(--navy);color:#fff;text-decoration:none;transform:translateY(-2px)}
  .btn-white{
    background:#fff;color:var(--navy);
    box-shadow:0 6px 18px rgba(0,0,0,.1);
  }
  .btn-white:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.18);text-decoration:none;color:var(--navy)}
  .btn-ghost-light{
    background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.3);color:#fff;
    backdrop-filter:blur(8px);
  }
  .btn-ghost-light:hover{background:rgba(255,255,255,.2);color:#fff;text-decoration:none}

  /* ===================== HERO (DMEC-style; cleaner, taller, image full-height) ===================== */
  .hero{
    position:relative;overflow:hidden;
    min-height:620px;
    /* Fallback color - sits behind the Dallas skyline image/SVG so the hero
       is never blank. Real skyline content lives in .hero-bg. */
    background:#0d2447;
    padding:0;
  }
  /* Dallas skyline background layer - fills the hero. Real photo
     (dallas-skyline.jpg) is preferred; the inline SVG below renders as a
     stylized fallback when no photo is supplied. */
  .hero-bg{
    position:absolute;inset:0;z-index:0;overflow:hidden;
  }
  .hero-bg-img{
    position:absolute;inset:0;width:100%;height:100%;
    object-fit:cover;display:block;
  }
  .hero-bg-svg{
    position:absolute;inset:0;width:100%;height:100%;
    display:block;
  }
  /* When the real photo loads it gets the .loaded class and the SVG fallback
     is hidden. */
  .hero-bg-img.loaded ~ .hero-bg-svg{display:none}
  /* Dark blue tint over the skyline. Default (service slides): heavier
     dampening so the city lights don't compete with slide text. When the
     Dallas transition slide is active, the overlay lightens so the skyline
     reads at full brightness. Smooth transition between the two states. */
  .hero-bg::after{
    content:"";position:absolute;inset:0;
    background:
      linear-gradient(180deg,
        rgba(13,36,71,.82) 0%,
        rgba(15,55,120,.72) 35%,
        rgba(15,55,120,.62) 60%,
        rgba(8,37,82,.82) 100%);
    pointer-events:none;
    transition:background .8s ease;
  }
  /* Dallas slide active - show the skyline with a much lighter wash. */
  .hero.hero-dallas-active .hero-bg::after{
    background:
      linear-gradient(180deg,
        rgba(13,36,71,.18) 0%,
        rgba(15,55,120,.08) 35%,
        rgba(15,55,120,.08) 60%,
        rgba(8,37,82,.22) 100%);
  }
  .hero-stage-v2{
    position:relative;z-index:2;min-height:500px;
    /* Bottom padding leaves a clear band under the hero image/text so the
       service tiles overlap the hero gradient - not the image itself.
       Tightened so the tile bar sits closer to the hero artwork and the
       full row stays above the fold in Chrome. */
    padding:28px 0 60px;
  }
  .hero-slide-v2{
    position:absolute;inset:0;
    opacity:0;transform:translateY(10px);
    transition:opacity .8s ease,transform .8s ease;
    pointer-events:none;
  }
  .hero-slide-v2.active{opacity:1;transform:translateY(0);pointer-events:auto}
  /* Dallas transition slide - text content sits at the TOP of the hero so the
     skyline image (in the hero background) is clearly visible below it.
     No flex columns, no image-frame on the side. */
  .hero-slide-v2.hero-slide-dallas .container{
    padding:8px 0 24px !important;
    justify-content:flex-start !important;
  }
  .hero-slide-v2.hero-slide-dallas .slide-headline{font-size:3.4rem;line-height:1.05;margin-bottom:0;margin-top:-18px !important;}
  .hero-slide-v2.hero-slide-dallas .slide-headline .navy{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.5);}
  .hero-slide-v2.hero-slide-dallas .slide-eyebrow{
    background:var(--navy);border:1px solid rgba(255,255,255,.18);color:#fff;
    box-shadow:0 10px 26px rgba(8,18,40,.45);
    padding:12px 26px;font-size:1.05rem;font-weight:800;letter-spacing:.2px;
    margin-top:-6px !important;margin-bottom:6px !important;
  }
  .hero-slide-v2.hero-slide-dallas .slide-sub{
    color:#e8f1fa;text-shadow:0 1px 10px rgba(0,0,0,.4);
    margin-top:10px !important;
  }
  .hero-slide-v2 .container{
    display:flex;gap:60px;align-items:stretch;
    height:100%;min-height:460px;padding-top:18px;padding-bottom:18px;
  }
  .hero-slide-v2[data-side="right"] .container{flex-direction:row-reverse}
  .hero-img-frame{
    flex:1;align-self:stretch;
    border-radius:18px;overflow:hidden;position:relative;
    box-shadow:var(--shadow-lg);
    background-size:cover;background-position:center;
    min-height:480px;
    margin-top:0;
  }
  .hero-img-frame::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,.06) 0%,transparent 50%,rgba(5,25,61,.45) 100%);
  }
  /* Decorative colored block (.hero-img-decor) hidden - too distracting against
     real photos. Photos themselves carry the visual weight. */
  .hero-img-decor{display:none !important;}
  .hero-img-tag{
    display:none !important;
    position:absolute;bottom:22px;left:22px;z-index:2;
    padding:8px 18px;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);
    border-radius:30px;font-size:.84rem;font-weight:700;color:var(--navy-ink);
    letter-spacing:.5px;
    box-shadow:0 6px 16px rgba(0,0,0,.1);
  }
  .hero-text-wrap{
    flex:1;display:flex;flex-direction:column;
    justify-content:flex-start;max-width:560px;
    padding-top:0;
  }
  /* Eyebrow tag: prominent label using the same font as the headline below it,
     so the eye instantly registers what topic the slide is about. Dark navy
     background (matching the site header) makes the text read sharply
     against any photo behind it. */
  .hero-text-wrap .slide-eyebrow{
    background:var(--navy);
    border:1px solid rgba(255,255,255,.18);
    color:#fff;
    margin-bottom:24px;
    margin-top:0;
    font-family:inherit;
    font-size:1.55rem;
    padding:14px 30px;
    font-weight:800;
    letter-spacing:.2px;
    text-transform:none;
    box-shadow:0 10px 26px rgba(8,18,40,.45);
    text-shadow:none;
    line-height:1.15;
  }
  .hero-text-wrap .slide-eyebrow::before{background:#fff}
  .hero-text-wrap .slide-headline{
    font-size:4.2rem;font-weight:900;line-height:1.04;margin-bottom:24px;
    letter-spacing:-.03em;color:#ffffff;
    text-shadow:0 2px 18px rgba(0,0,0,.25);
  }
  .hero-text-wrap .slide-headline .navy{color:#ffffff;display:block}
  .hero-text-wrap .slide-headline .sky{
    /* Bright sky-blue accent stays readable on the navy hero background */
    color:#bfe4fb;background:none;-webkit-background-clip:initial;background-clip:initial;
    display:block;
  }
  /* Per-slide accent colors - kept readable against the navy hero */
  .hero-slide-v2[data-slide="1"] .slide-headline .sky{color:#ffd28a;background:none;-webkit-background-clip:initial;background-clip:initial}
  .hero-text-wrap .slide-sub{
    font-size:1.36rem;color:#e8f1fa;margin-bottom:0;
    text-shadow:0 1px 10px rgba(0,0,0,.18);
    max-width:540px;line-height:1.5;font-weight:400;
  }
  /* Note: slide-cta now lives in the tile bar below */

  /* Slide indicator dots - smaller, just above tiles */
  .hero-progress{
    position:relative;display:flex;justify-content:center;
    gap:7px;z-index:5;padding:6px 0 14px;
  }
  .hero-prog-dot{
    width:6px;height:6px;border-radius:50%;
    background:rgba(15,55,120,.25);cursor:pointer;border:none;padding:0;
    transition:all .25s;
  }
  .hero-prog-dot.active{background:var(--sky);width:22px;border-radius:3px}

  /* Scroll-down indicator - pulled up close to the service tile bar so the
     "Scroll for more" cue is visible above the fold. Negative margin-top
     compensates for the .service-strip translateY(-50%) that already overlaps
     the hero, eliminating the empty band that was sitting between the tiles
     and the scroll cue. */
  .scroll-down{
    text-align:center;padding:0 0 18px;
    margin-top:-32px;
    background:transparent;
    position:relative;z-index:6;
  }
  .scroll-down a{
    display:inline-flex;flex-direction:column;align-items:center;gap:8px;
    color:var(--muted);font-size:.78rem;font-weight:600;letter-spacing:1.5px;
    text-transform:uppercase;cursor:pointer;text-decoration:none;
    transition:color .2s;
  }
  .scroll-down a:hover{color:var(--navy)}
  .scroll-down svg{
    animation:bounce 1.8s ease-in-out infinite;
  }
  @keyframes bounce{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(6px)}
  }

  /* Legacy stage-video CSS preserved for backward compat */
  .hero-stage{position:absolute;inset:0;z-index:1;overflow:hidden;display:none}
  .stage-video{
    position:absolute;inset:0;
    background-size:cover;background-position:center;
    opacity:0;transition:opacity 1.2s ease,transform 10s ease;
    transform:scale(1.05);
  }
  .stage-video.active{opacity:1;transform:scale(1.12)}

  /* 9 unique thematic "video" backgrounds - each evokes a service */
  .sv-ur{background:
    radial-gradient(ellipse at 75% 30%,rgba(138,199,235,.55),transparent 55%),
    linear-gradient(135deg,#0f3778 0%,#1e6db8 55%,#3aa0e0 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1' opacity='.2'%3E%3Ccircle cx='900' cy='300' r='120'/%3E%3Ccircle cx='900' cy='300' r='200'/%3E%3Ccircle cx='900' cy='300' r='280'/%3E%3Cpath d='M 850 280 Q 900 250 950 280 T 1050 280'/%3E%3Cpath d='M 850 320 Q 900 350 950 320 T 1050 320'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-disability{background:
    radial-gradient(ellipse at 70% 60%,rgba(255,195,120,.5),transparent 55%),
    linear-gradient(135deg,#4a2a5c 0%,#9a3d18 45%,#f5a561 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.5' opacity='.25'%3E%3Cpath d='M 0 450 Q 300 400 600 430 T 1200 410'/%3E%3Cpath d='M 0 490 Q 300 450 600 470 T 1200 460'/%3E%3Ccircle cx='960' cy='170' r='70' opacity='.4'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-irr{background:
    radial-gradient(ellipse at 70% 40%,rgba(138,199,235,.45),transparent 55%),
    linear-gradient(135deg,#082552 0%,#0f3778 45%,#1e88d1 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1' opacity='.22'%3E%3Cpath d='M 850 150 L 1050 150 L 1050 450 L 850 450 Z'/%3E%3Cpath d='M 870 180 L 1030 180 M 870 220 L 1030 220 M 870 260 L 1000 260 M 870 300 L 1020 300 M 870 340 L 990 340 M 870 380 L 1010 380'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-pharmacy{background:
    radial-gradient(ellipse at 75% 35%,rgba(125,220,205,.45),transparent 55%),
    linear-gradient(135deg,#0a3d5c 0%,#147b91 50%,#2dbfb0 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1' opacity='.22'%3E%3Crect x='870' y='200' width='160' height='80' rx='40'/%3E%3Cline x1='950' y1='200' x2='950' y2='280'/%3E%3Ccircle cx='910' cy='380' r='30'/%3E%3Ccircle cx='990' cy='380' r='30'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-peer{background:
    radial-gradient(ellipse at 70% 40%,rgba(138,199,235,.4),transparent 55%),
    linear-gradient(135deg,#0f3778 0%,#2864a8 50%,#3aa0e0 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.5' opacity='.25'%3E%3Ccircle cx='900' cy='280' r='40'/%3E%3Ccircle cx='980' cy='320' r='40'/%3E%3Cpath d='M 920 290 L 970 320'/%3E%3Ccircle cx='860' cy='340' r='40'/%3E%3Cpath d='M 890 320 L 950 320'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-director{background:
    radial-gradient(ellipse at 65% 40%,rgba(138,199,235,.3),transparent 55%),
    linear-gradient(135deg,#030f24 0%,#082552 55%,#0f3778 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%238ac7eb' stroke-width='1' opacity='.3'%3E%3Cpath d='M 850 250 L 950 200 L 1050 250 L 1050 360 L 850 360 Z'/%3E%3Cpath d='M 920 300 L 950 270 L 980 300 L 980 360 L 920 360 Z'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-bh{background:
    radial-gradient(ellipse at 70% 40%,rgba(182,150,225,.45),transparent 55%),
    linear-gradient(135deg,#1a1e5c 0%,#4a2a8c 50%,#7e5bc7 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1' opacity='.25'%3E%3Cpath d='M 870 200 C 830 220 830 280 870 300 C 860 340 900 380 950 360 C 990 400 1050 360 1050 320 C 1080 280 1060 220 1010 210 C 990 180 940 170 900 190 C 890 190 880 195 870 200 Z'/%3E%3Ccircle cx='910' cy='260' r='6' fill='%23ffffff' opacity='.4'/%3E%3Ccircle cx='970' cy='290' r='6' fill='%23ffffff' opacity='.4'/%3E%3Ccircle cx='1000' cy='250' r='6' fill='%23ffffff' opacity='.4'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-ime{background:
    radial-gradient(ellipse at 75% 30%,rgba(255,255,255,.45),transparent 55%),
    linear-gradient(135deg,#0a3d5c 0%,#1e88d1 50%,#8ac7eb 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.2' opacity='.3'%3E%3Cpath d='M 870 200 L 1050 200 L 1050 420 L 870 420 Z'/%3E%3Cpath d='M 890 240 L 1030 240 M 890 280 L 1030 280 M 890 320 L 990 320'/%3E%3Ccircle cx='970' cy='370' r='18'/%3E%3C/g%3E%3C/svg%3E")}
  .sv-bill{background:
    radial-gradient(ellipse at 70% 45%,rgba(125,220,205,.4),transparent 55%),
    linear-gradient(135deg,#05193d 0%,#0a3d5c 50%,#147b91 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1' opacity='.22'%3E%3Crect x='860' y='200' width='180' height='240' rx='8'/%3E%3Cpath d='M 890 240 L 1010 240 M 890 275 L 1010 275 M 890 310 L 990 310 M 890 345 L 970 345 M 890 380 L 1010 380 M 890 415 L 950 415'/%3E%3C/g%3E%3C/svg%3E")}

  /* Legacy hero-overlay/play-indicator preserved hidden */
  .hero-overlay,.hero-play-indicator,.slide-counter-pill,.hero-inner,.hero-slides{display:none}

  .slide-cta{display:flex;gap:12px;flex-wrap:wrap}

  /* ===================== SERVICE QUICK STRIP (11 tiles) =====================
     Sits on the seam between the navy hero and the white About section so
     it doesn't cover the hero artwork. Each tile uses a vertical gradient
     (dark-blue top → light-blue bottom). Tiles cycle through four shades
     of blue from the CMRS logo for visual rhythm. */
  .service-strip{
    background:transparent;padding:0;
    position:relative;margin-top:0;z-index:5;
    /* Tile bar straddles the seam - top half overlaps the hero, bottom half
       sits in the section below, with the horizontal seam line splitting the
       tiles roughly through their middle. */
    transform:translateY(-50%);
  }
  .service-strip .container{
    /* No white plate behind tiles - tiles sit directly over the hero seam. */
    background:transparent;padding:0;
    display:flex;align-items:stretch;gap:8px;
    border:0;box-shadow:none;
    position:relative;overflow:visible;
  }
  .service-strip .container::before{display:none}
  .sp-tiles{
    flex:1;display:grid;grid-template-columns:repeat(8,1fr);gap:6px;
    align-items:stretch;justify-content:center;
  }
  .sp-item{
    padding:16px 8px 18px;text-align:center;cursor:pointer;
    border-radius:14px;transition:all .3s cubic-bezier(.2,.8,.2,1);
    display:flex;flex-direction:column;align-items:center;gap:10px;
    position:relative;overflow:hidden;
    /* Default tile gradient - lighter brand blue so it reads softer */
    background:linear-gradient(180deg,#2068b4 0%,#5ab1e2 100%);
    color:#fff;
  }
  .sp-item::after{
    content:"";position:absolute;bottom:8px;left:50%;transform:translateX(-50%) scaleX(0);
    width:30px;height:3px;background:#fff;border-radius:3px;
    transition:transform .35s;
  }
  .sp-item:hover{transform:translateY(-3px);filter:brightness(1.06)}
  .sp-item.active{
    transform:translateY(-6px);
    box-shadow:0 16px 32px rgba(15,55,120,.32);
  }
  .sp-item.active::after{transform:translateX(-50%) scaleX(1)}
  .sp-item.active .sp-icon{
    transform:rotate(-6deg) scale(1.12);
    box-shadow:0 12px 26px rgba(255,255,255,.35);
  }
  .sp-icon{
    width:36px;height:36px;border-radius:10px;
    background:rgba(255,255,255,.22);
    border:1.5px solid rgba(255,255,255,.45);
    backdrop-filter:blur(4px);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.3px;
    box-shadow:0 5px 14px rgba(0,0,0,.18);
    transition:all .3s;flex-shrink:0;position:relative;
  }
  .sp-label{
    font-size:1.02rem;font-weight:700;color:#fff;
    line-height:1.25;letter-spacing:.15px;
    text-shadow:0 1px 4px rgba(0,0,0,.22);
  }
  /* Lighter, friendlier four-shade rotation so titles still pop in white. */
  .sp-item:nth-child(4n+1){background:linear-gradient(180deg,#1f5fa6 0%,#5ab1e2 100%)}
  .sp-item:nth-child(4n+2){background:linear-gradient(180deg,#2068b4 0%,#74bee8 100%)}
  .sp-item:nth-child(4n+3){background:linear-gradient(180deg,#2773bf 0%,#7dc3ee 100%)}
  .sp-item:nth-child(4n+4){background:linear-gradient(180deg,#3a8acc 0%,#a8d4ee 100%)}

  /* Learn More button anchored on the right of the strip */
  .sp-cta{
    flex-shrink:0;display:flex;align-items:center;justify-content:center;
    margin-left:8px;padding:0 6px;
  }
  .sp-cta-btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:14px 22px;border-radius:12px;
    background:var(--grad-sky);color:#fff;font-weight:700;font-size:.92rem;
    letter-spacing:.3px;cursor:pointer;text-decoration:none;
    box-shadow:0 8px 20px rgba(58,160,224,.35);
    transition:all .22s;border:none;font-family:inherit;
    height:100%;min-height:88px;
    flex-direction:column;
    text-align:center;
  }
  .sp-cta-btn:hover{
    background:linear-gradient(135deg,#1e88d1,#0f3778);
    color:#fff;text-decoration:none;transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(58,160,224,.5);
  }
  .sp-cta-btn-label{font-size:.66rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;opacity:.85}
  .sp-cta-btn-text{font-size:1rem;font-weight:800}

  /* ===================== SECTIONS ===================== */
  section{padding:90px 0;position:relative}
  .section-alt{background:linear-gradient(180deg,var(--bg-alt) 0%,#fff 100%)}
  .section-deep{
    background:var(--grad-dark);
    color:#fff;
  }
  .section-deep h2,.section-deep h3,.section-deep h4{color:#fff}
  .section-deep .section-eyebrow{color:var(--sky-light)}
  .section-deep p{color:#cbdcf2}

  .section-header{text-align:center;max-width:760px;margin:0 auto 60px}
  /* Section eyebrow - light blue pill with white letters for a friendly,
     approachable accent that sits well above the navy section titles. */
  .section-eyebrow{
    display:inline-block;
    padding:10px 22px;border-radius:999px;
    background:var(--sky);
    color:#fff;
    font-size:.95rem;font-weight:800;letter-spacing:2.6px;text-transform:uppercase;
    margin-bottom:18px;
    box-shadow:0 6px 18px rgba(58,160,224,.30);
    border:1px solid rgba(255,255,255,.18);
  }
  .section-eyebrow::before,.section-eyebrow::after{display:none}
  /* In already-dark sections (section-deep / accred-bar), use a lighter pill
     so it still reads. */
  .section-deep .section-eyebrow,
  .accred-bar .section-eyebrow{
    background:rgba(255,255,255,.18);
    color:#fff;border-color:rgba(255,255,255,.32);
    box-shadow:0 6px 18px rgba(0,0,0,.18);
  }
  .section-header h2{font-size:2.4rem;margin-bottom:14px}
  .section-header .section-header-lead{
    color:var(--slate);font-size:1.1rem;max-width:620px;margin:0 auto;
  }

  /* ===================== ABOUT ===================== */
  .about-wrap{
    background:linear-gradient(180deg,#fff 0%,var(--bg-alt) 100%);
  }
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:flex-start}
  /* About hero tagline - the founding-purpose statement sits beneath the
     standard hero lead, slightly offset in a warm gold so it reads as a
     distinct tagline rather than additional descriptive copy. */
  .about-hero-tagline{
    margin:14px 0 0;
    font-family:'Playfair Display','Inter',serif;
    font-style:italic;
    font-size:1.25rem;
    line-height:1.35;
    color:#f3c969 !important;
    letter-spacing:.1px;
    max-width:640px;
    text-shadow:0 1px 12px rgba(0,0,0,.25);
  }
  /* About CMRS - title sits full-width on one line above the body. The
     leadership photo floats to the right inside the body so the first
     paragraph begins to its left, and subsequent paragraphs wrap underneath
     once the text passes the bottom of the photo. */
  .about-flow{display:flex;flex-direction:column;gap:24px}
  .about-header-full{max-width:none}
  .about-title-single{
    font-size:2rem;line-height:1.18;letter-spacing:-.012em;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    margin-bottom:0;
  }
  .about-body-flow p{margin-top:0;margin-bottom:1.05em;color:var(--slate)}
  .about-body-flow p:first-of-type{margin-top:0}
  .about-leader-img{
    float:right;
    width:46%;
    max-width:560px;
    margin:6px 0 18px 32px;
    border-radius:18px;
    box-shadow:var(--shadow-lg);
    aspect-ratio:5/4;
    object-fit:cover;
    object-position:center center;
  }
  .about-body-flow::after{content:"";display:block;clear:both}
  @media (max-width:900px){
    .about-title-single{white-space:normal;font-size:1.6rem}
    .about-leader-img{
      float:none;width:100%;max-width:none;margin:0 0 20px;
      aspect-ratio:16/9;
    }
  }
  .about-visual{position:relative}
  .about-video{
    position:relative;aspect-ratio:5/4;border-radius:22px;overflow:hidden;
    background:linear-gradient(135deg,#0f3778,#1e88d1 75%,#3aa0e0);
    box-shadow:var(--shadow-lg);
    display:flex;align-items:center;justify-content:center;
  }
  .about-video::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(160deg,transparent 40%,rgba(5,25,61,.55) 100%);
  }
  .about-video .play-btn{
    width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.96);
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 10px 40px rgba(0,0,0,.3);cursor:pointer;
    transition:transform .2s;z-index:3;position:relative;
  }
  .about-video .play-btn:hover{transform:scale(1.12)}
  .about-video .play-btn::after{
    content:"";border-left:22px solid var(--navy);
    border-top:13px solid transparent;border-bottom:13px solid transparent;
    margin-left:6px;
  }
  .about-video-label{
    position:absolute;bottom:20px;left:22px;color:#fff;z-index:3;
  }
  .about-video-label-tag{
    display:inline-block;padding:4px 12px;background:rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(10px);
    border-radius:20px;font-size:.68rem;font-weight:600;letter-spacing:1.5px;
    text-transform:uppercase;margin-bottom:6px;
  }
  .about-video-label h4{color:#fff;margin:0;font-size:1.05rem}

  .about-badges{
    position:absolute;top:20px;right:-30px;
    display:flex;flex-direction:column;gap:14px;z-index:3;
  }
  .about-badge{
    background:#fff;padding:14px 18px;border-radius:14px;
    box-shadow:var(--shadow);display:flex;align-items:center;gap:12px;
    min-width:180px;
  }
  .about-badge .b-num{
    font-weight:800;font-size:1.4rem;line-height:1;
    background:var(--grad-sky);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .about-badge .b-txt{font-size:.76rem;color:var(--slate);line-height:1.3;font-weight:500}

  .about-visual-accent{
    position:absolute;top:-30px;left:-30px;width:140px;height:140px;
    background:linear-gradient(135deg,#8ac7eb,#3aa0e0);
    border-radius:30px;z-index:-1;opacity:.7;
    transform:rotate(-8deg);
  }

  /* ===================== SERVICE CARDS (modernized) ===================== */
  .service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
  .service-card{
    background:#fff;border-radius:22px;padding:32px 30px;
    transition:all .3s cubic-bezier(.2,.8,.2,1);cursor:pointer;
    position:relative;overflow:hidden;
    border:1px solid var(--line);
  }
  .service-card::before{
    content:"";position:absolute;top:0;left:0;right:0;height:6px;
    background:var(--grad-brand);
    transform:scaleX(0);transform-origin:left;transition:transform .4s;
  }
  .service-card::after{
    content:"";position:absolute;bottom:-60px;right:-60px;width:180px;height:180px;
    background:radial-gradient(circle,rgba(58,160,224,.12),transparent 70%);
    border-radius:50%;opacity:0;transition:opacity .3s;
  }
  .service-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow-lg);
    border-color:transparent;
  }
  .service-card:hover::before{transform:scaleX(1)}
  .service-card:hover::after{opacity:1}
  .service-card .s-icon{
    width:60px;height:60px;border-radius:18px;
    background:var(--grad-brand);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:700;font-size:1.15rem;
    margin-bottom:22px;
    box-shadow:0 12px 26px rgba(15,55,120,.25);
    transition:transform .3s;
  }
  .service-card:hover .s-icon{transform:rotate(-6deg) scale(1.08)}
  .service-card h3{margin-bottom:10px;font-size:1.2rem}
  .service-card p{color:var(--slate);font-size:.94rem;margin-bottom:20px;line-height:1.6}
  .service-card .learn{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--sky-2);font-weight:600;font-size:.88rem;
    transition:gap .2s;
  }
  .service-card:hover .learn{gap:10px}
  .service-card .learn .arr{
    display:inline-flex;align-items:center;justify-content:center;
    width:22px;height:22px;border-radius:50%;background:var(--bg-soft);
    font-size:.8rem;transition:all .2s;
  }
  .service-card:hover .learn .arr{background:var(--sky);color:#fff}

  /* ===================== OUR SERVICES PAGE - Stylized variants =====================
     Scoped to #page-services so the home-page service grid is unchanged.
     Each tile carries a service-line color theme: a colored top accent bar,
     a service-specific icon gradient, a soft tinted background wash, and a
     decorative outline shape in the corner that animates on hover. */
  #page-services .service-cards{gap:28px}
  #page-services .service-card{
    padding:30px 28px 26px;
    border-radius:20px;
    border:1px solid rgba(15,55,120,.10);
    background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
  }
  #page-services .service-card::before{
    transform:scaleX(1);height:5px;opacity:.85;border-radius:20px 20px 0 0;
  }
  #page-services .service-card::after{
    /* Replace the bottom-right radial blur with a service-themed svg badge.
       The default badge is a clean concentric ring; per-service variants
       below override the background-image. */
    content:"";position:absolute;
    top:18px;right:18px;width:64px;height:64px;
    background:transparent;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%231e6db8' stroke-width='1.2' opacity='.18'%3E%3Ccircle cx='32' cy='32' r='28'/%3E%3Ccircle cx='32' cy='32' r='20'/%3E%3Ccircle cx='32' cy='32' r='12'/%3E%3C/g%3E%3C/svg%3E");
    background-size:contain;background-repeat:no-repeat;
    border-radius:0;opacity:.7;transform:rotate(0);
    transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .3s;
  }
  #page-services .service-card:hover{
    transform:translateY(-6px);
    border-color:transparent;
    box-shadow:0 20px 40px -12px rgba(15,55,120,.22);
  }
  #page-services .service-card:hover::after{
    transform:rotate(45deg) scale(1.05);
    opacity:1;
  }
  #page-services .service-card .s-icon{
    width:56px;height:56px;border-radius:16px;
    margin-bottom:18px;
    font-size:1.05rem;letter-spacing:.5px;
    box-shadow:0 10px 24px rgba(15,55,120,.22);
    position:relative;z-index:1;
  }
  /* Soft halo behind icon, becomes visible on hover */
  #page-services .service-card .s-icon::before{
    content:"";position:absolute;inset:-8px;border-radius:22px;
    background:radial-gradient(circle,rgba(58,160,224,.32),transparent 70%);
    opacity:0;transition:opacity .3s;z-index:-1;
  }
  #page-services .service-card:hover .s-icon::before{opacity:1}
  #page-services .service-card:hover .s-icon{transform:rotate(-4deg) scale(1.06)}
  #page-services .service-card h3{
    font-size:1.18rem;line-height:1.3;margin-bottom:10px;
    color:var(--navy);
  }
  #page-services .service-card p{
    font-size:.92rem;line-height:1.6;margin-bottom:22px;
    color:var(--slate);
  }
  #page-services .service-card .learn{
    font-weight:700;font-size:.84rem;text-transform:uppercase;letter-spacing:.6px;
  }

  /* Per-service color themes - top accent bar + icon gradient.
     Colors mirror the .sv-* hero gradients for visual continuity. */
  #page-services .service-card.svc-ime::before{background:linear-gradient(90deg,#0a3d5c,#1e88d1,#8ac7eb)}
  #page-services .service-card.svc-ime .s-icon{background:linear-gradient(135deg,#0a3d5c 0%,#1e88d1 60%,#8ac7eb 100%)}

  #page-services .service-card.svc-ur::before{background:linear-gradient(90deg,#0f3778,#1e6db8,#3aa0e0)}
  #page-services .service-card.svc-ur .s-icon{background:linear-gradient(135deg,#0f3778 0%,#1e6db8 60%,#3aa0e0 100%)}

  #page-services .service-card.svc-peer::before{background:linear-gradient(90deg,#0f3778,#2864a8,#3aa0e0)}
  #page-services .service-card.svc-peer .s-icon{background:linear-gradient(135deg,#0f3778 0%,#2864a8 60%,#3aa0e0 100%)}

  #page-services .service-card.svc-disability::before{background:linear-gradient(90deg,#4a2a5c,#9a3d18,#f5a561)}
  #page-services .service-card.svc-disability .s-icon{background:linear-gradient(135deg,#4a2a5c 0%,#9a3d18 60%,#f5a561 100%)}

  #page-services .service-card.svc-irr::before{background:linear-gradient(90deg,#082552,#0f3778,#1e88d1)}
  #page-services .service-card.svc-irr .s-icon{background:linear-gradient(135deg,#082552 0%,#0f3778 60%,#1e88d1 100%)}

  #page-services .service-card.svc-bh::before{background:linear-gradient(90deg,#1a1e5c,#4a2a8c,#7e5bc7)}
  #page-services .service-card.svc-bh .s-icon{background:linear-gradient(135deg,#1a1e5c 0%,#4a2a8c 60%,#7e5bc7 100%)}

  #page-services .service-card.svc-md::before{background:linear-gradient(90deg,#030f24,#082552,#0f3778)}
  #page-services .service-card.svc-md .s-icon{background:linear-gradient(135deg,#030f24 0%,#082552 60%,#0f3778 100%)}

  #page-services .service-card.svc-pharmacy::before{background:linear-gradient(90deg,#0a3d5c,#147b91,#2dbfb0)}
  #page-services .service-card.svc-pharmacy .s-icon{background:linear-gradient(135deg,#0a3d5c 0%,#147b91 60%,#2dbfb0 100%)}

  /* ===================== WHY CHOOSE (tinted stripe) ===================== */
  .why-stripe{
    position:relative;
   /* background:
      radial-gradient(ellipse at 20% 50%,rgba(58,160,224,.12),transparent 50%),
      radial-gradient(ellipse at 80% 50%,rgba(15,55,120,.08),transparent 50%),
      linear-gradient(180deg,#eaf2fb 0%,#d9e8f5 100%);
    padding:100px 0;*/overflow:hidden;
  }
  .why-stripe::before{
    content:"";position:absolute;top:-100px;left:10%;width:250px;height:250px;
   /* background:radial-gradient(circle,rgba(45,191,176,.2),transparent 65%);*/
    border-radius:50%;filter:blur(40px);
  }
  .why-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
    position:relative;z-index:2;
  }
  .why-item:nth-child(2) .why-num{background:var(--grad-warm);-webkit-background-clip:text;background-clip:text;color:transparent}
  .why-item:nth-child(3) .why-num{background:var(--grad-teal);-webkit-background-clip:text;background-clip:text;color:transparent}
  .why-item:nth-child(4) .why-num{background:var(--grad-red);-webkit-background-clip:text;background-clip:text;color:transparent}
  .why-item{
    background:rgba(255,255,255,.75);backdrop-filter:blur(14px);
    border:1px solid rgba(255,255,255,.6);
    border-radius:20px;padding:32px 24px;
    text-align:center;transition:all .25s;
    box-shadow:var(--shadow-sm);
  }
  .why-item:hover{transform:translateY(-4px);background:#fff;box-shadow:var(--shadow)}
  .why-num{
    font-size:2.9rem;font-weight:800;line-height:1;margin-bottom:12px;
    background:var(--grad-brand);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    letter-spacing:-.03em;
  }
  .why-item h4{color:var(--navy);margin-bottom:8px;font-size:1.05rem}
  .why-item p{font-size:.88rem;color:var(--slate);margin:0;line-height:1.55}

  /* ===================== ACCREDITATIONS ===================== */
  .accred-bar{
    background:var(--grad-dark);
    color:#fff;padding:80px 0;position:relative;overflow:hidden;
  }
  .accred-bar::before{
    content:"";position:absolute;top:-200px;right:-200px;width:500px;height:500px;
    background:radial-gradient(circle,rgba(58,160,224,.3),transparent 65%);
    border-radius:50%;filter:blur(60px);
  }
  .accred-bar::after{
    content:"";position:absolute;bottom:-200px;left:-200px;width:500px;height:500px;
    background:radial-gradient(circle,rgba(45,191,176,.2),transparent 65%);
    border-radius:50%;filter:blur(60px);
  }
  .accred-bar .section-header{position:relative;z-index:2}
  .accred-bar h2{color:#fff}
  .accred-bar .section-eyebrow{color:var(--sky-light)}
  .accred-bar .section-header-lead{color:#cbdcf2}
  .accred-logos{
    display:grid;grid-template-columns:repeat(4,1fr);gap:22px;
    position:relative;z-index:2;
  }
  .accred-logo{
    background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
    border:1px solid rgba(255,255,255,.15);
    backdrop-filter:blur(10px);
    border-radius:18px;padding:28px 22px;text-align:center;cursor:pointer;
    transition:all .25s;position:relative;overflow:hidden;
  }
  .accred-logo::before{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(58,160,224,.2),transparent 50%);
    opacity:0;transition:opacity .25s;
  }
  .accred-logo:hover{
    background:rgba(255,255,255,.15);transform:translateY(-4px);
    border-color:rgba(138,199,235,.4);
    box-shadow:0 14px 40px rgba(0,0,0,.2);
  }
  .accred-logo:hover::before{opacity:1}
  .accred-logo .logo-text{
    font-weight:800;font-size:1.4rem;letter-spacing:1.5px;color:#fff;margin-bottom:6px;
    position:relative;z-index:2;
  }
  .accred-logo .logo-desc{
    font-size:.78rem;color:#cbdcf2;line-height:1.4;position:relative;z-index:2;
  }

  /* ===================== CTA BAND ===================== */
  .cta-band{
    position:relative;overflow:hidden;
    background:linear-gradient(135deg,#3aa0e0 0%,#1e88d1 50%,#0f3778 100%);
    color:#fff;padding:90px 0;text-align:center;
  }
  .cta-band::before{
    content:"";position:absolute;top:-150px;right:-150px;width:400px;height:400px;
    background:radial-gradient(circle,rgba(255,255,255,.15),transparent 65%);
    border-radius:50%;filter:blur(40px);
  }
  .cta-band::after{
    content:"";position:absolute;bottom:-150px;left:-150px;width:400px;height:400px;
    background:radial-gradient(circle,rgba(45,191,176,.3),transparent 65%);
    border-radius:50%;filter:blur(40px);
  }
  .cta-band .container{position:relative;z-index:2}
  .cta-band h2{color:#fff;font-size:2.3rem;margin-bottom:16px;max-width:680px;margin-left:auto;margin-right:auto}
  .cta-band p{font-size:1.1rem;margin-bottom:30px;opacity:.95;max-width:560px;margin-left:auto;margin-right:auto}
  .cta-band .cta-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

  /* ===================== TESTIMONIAL STRIP ===================== */
  .quote-strip{
    background:#fff;padding:70px 0;
  }
  .quote-wrap{
    max-width:860px;margin:0 auto;text-align:center;padding:0 30px;
    position:relative;
  }
  .quote-mark{
    font-family:'Playfair Display',serif;font-size:6rem;line-height:.8;
    background:var(--grad-sky);-webkit-background-clip:text;background-clip:text;color:transparent;
    margin-bottom:8px;opacity:.5;
  }
  .quote-text{
    font-family:'Playfair Display',serif;font-weight:500;font-size:1.5rem;
    color:var(--navy-ink);line-height:1.4;margin-bottom:20px;font-style:italic;
  }
  .quote-attr{
    font-size:.85rem;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;font-weight:600;
  }

  /* ===================== FOOTER ===================== */
  footer{
    background:var(--navy-ink);color:#cbdcf2;padding:80px 0 28px;
    position:relative;overflow:hidden;
  }
  footer::before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;
    background:var(--grad-sky);
  }
  footer::after{
    content:"";position:absolute;top:-100px;left:20%;width:500px;height:500px;
    background:radial-gradient(circle,rgba(58,160,224,.08),transparent 70%);
    border-radius:50%;filter:blur(60px);
  }
  .footer-grid{
    display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:50px;
    margin-bottom:48px;position:relative;z-index:2;
  }
  footer h4{color:#fff;font-size:.95rem;margin-bottom:18px;font-weight:600;letter-spacing:.5px}
  footer ul{list-style:none;padding:0;margin:0}
  footer li{margin-bottom:10px;font-size:.9rem}
  footer a{color:#cbdcf2}
  footer a:hover{color:var(--sky-light)}
  .footer-social{display:flex;gap:10px;margin-top:20px}
  .footer-social a{
    width:36px;height:36px;border-radius:10px;
    background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
    display:inline-flex;align-items:center;justify-content:center;
    color:#cbdcf2;font-size:.9rem;font-weight:600;
    transition:all .2s;
  }
  .footer-social a:hover{background:var(--sky);border-color:var(--sky);color:#fff;transform:translateY(-2px)}
  .footer-bottom{
    border-top:1px solid rgba(255,255,255,.08);padding-top:28px;
    display:flex;justify-content:space-between;align-items:center;font-size:.84rem;
    position:relative;z-index:2;flex-wrap:wrap;gap:14px;
  }
  .footer-badges{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
  .footer-badge{
    padding:5px 14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);
    border-radius:20px;font-size:.74rem;letter-spacing:1px;font-weight:600;
  }
  .footer-badge-urac{
    padding:4px 10px;background:#fff;border-color:#e8a934;border-radius:14px;
    display:inline-flex;align-items:center;
  }
  .footer-badge-urac img{
    height:34px;width:auto;display:block;object-fit:contain;
  }
  .footer-badge-img{
    padding:4px 10px;background:#fff;border-color:rgba(255,255,255,.35);border-radius:14px;
    display:inline-flex;align-items:center;
  }
  .footer-badge-img img{
    height:34px;width:auto;display:block;object-fit:contain;
  }

  /* ===================== SUB-PAGE HERO ===================== */
  /* Home page is a single-screen experience: hero carousel + service tile bar
     fit inside the viewport, with no scrolling and no content below. */
  .page-hero{
    
    color:#fff;/*background:var(--grad-dark);padding:54px 0 48px;position:relative;*/overflow:hidden;
  }
  .page-hero::before{
    content:"";position:absolute;top:-50%;right:-10%;width:700px;height:700px;
    background:conic-gradient(from 90deg,rgba(58,160,224,.25),rgba(15,55,120,.15),rgba(58,160,224,.25));
    border-radius:50%;filter:blur(80px);opacity:.8;
  }
  .page-hero::after{
    content:"";position:absolute;bottom:-60%;left:-20%;width:600px;height:600px;
    background:radial-gradient(circle,rgba(45,191,176,.18),transparent 65%);
    border-radius:50%;filter:blur(60px);
  }
  .page-hero .container{position:relative;z-index:2}
  .breadcrumb{font-size:.85rem;color:#a8c3e0;margin-bottom:20px}
  .breadcrumb a{color:#a8c3e0}
  .breadcrumb a:hover{color:#fff}
  .page-hero h1{color:#fff;font-size:2.8rem;margin-bottom:16px;max-width:820px}
  .page-hero .lead{font-size:1.15rem;color:#dce9f5;max-width:700px}
  .page-hero-video{
    position:absolute;top:50%;right:60px;transform:translateY(-50%);
    width:260px;aspect-ratio:16/10;border-radius:16px;overflow:hidden;
    background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.03));
    border:1.5px solid rgba(255,255,255,.25);
    backdrop-filter:blur(14px);
    display:flex;align-items:center;justify-content:center;z-index:3;
    box-shadow:0 20px 50px rgba(0,0,0,.3);
  }
  .page-hero-video .play-btn{
    width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.95);
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    transition:transform .2s;
  }
  .page-hero-video .play-btn:hover{transform:scale(1.1)}
  .page-hero-video .play-btn::after{
    content:"";border-left:16px solid var(--navy);
    border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px;
  }
  .page-hero-video-label{
    position:absolute;bottom:10px;left:12px;color:#fff;z-index:3;
  }
  .page-hero-video-label-tag{
    display:inline-block;padding:3px 10px;background:rgba(0,0,0,.4);
    backdrop-filter:blur(10px);border-radius:20px;
    font-size:.68rem;letter-spacing:1px;font-weight:600;
  }
  /* Still-image variant of the page-hero video frame
     (used on the UR page to replace the video per editorial direction). */
  .page-hero-still{
    position:absolute;top:50%;right:60px;transform:translateY(-50%);
    width:260px;aspect-ratio:16/10;border-radius:16px;overflow:hidden;
    border:1.5px solid rgba(255,255,255,.25);
    box-shadow:0 20px 50px rgba(0,0,0,.3);z-index:3;
  }
  .page-hero-still svg{width:100%;height:100%;display:block}
  .page-hero-still img{width:100%;height:100%;object-fit:cover;display:block}
  .page-hero-still.about-skyline img{display:block}
  .page-hero-still.about-skyline svg{display:none}
  .page-hero-still-tag{
    position:absolute;bottom:10px;left:12px;color:#fff;z-index:3;
    display:inline-block;padding:3px 10px;background:rgba(0,0,0,.4);
    backdrop-filter:blur(10px);border-radius:20px;
    font-size:.68rem;letter-spacing:1px;font-weight:600;
  }
  @media (max-width:1188px){.page-hero-still{display:none}}

  /* About page hero - clean dark navy with a DFW image to the right */
  #page-about .page-hero{padding:80px 0 70px;}

  /* Services Overview hero - larger video pinned to the left,
     headline + lead shifted right so they share the row. */
  #page-services .page-hero{padding:90px 0 80px}
  #page-services .page-hero .container{display:block;position:relative}
  .page-hero-video.page-hero-video-lg-left{
    position:absolute;left:0;top:50%;right:auto;
    transform:translateY(-50%);
    width:430px;aspect-ratio:16/10;border-radius:18px;
  }
  /* Services Overview hero image - SVG composite sits directly on the hero, no box.
     Pulled in from the left edge + slightly smaller so the Home/Services breadcrumb
     no longer sits on top of the image, and the image reads tighter to the headline. */
  .services-hero-image{
    position:absolute;left:120px;top:50%;right:auto;
    transform:translateY(-50%);
    width:560px;aspect-ratio:16/10;
    background:transparent;
    z-index:1;
    pointer-events:none;
  }
  /* Keep the breadcrumb visible above the SVG image on the Services page */
  #page-services .breadcrumb{position:relative;z-index:5}
  .services-hero-image img{
    width:100%;height:100%;display:block;
    filter:drop-shadow(0 18px 40px rgba(0,0,0,.35));
  }
  .services-hero-text{margin-left:720px}
  @media (max-width: 900px){
    .page-hero-video.page-hero-video-lg-left{position:relative;left:auto;top:auto;transform:none;width:100%;margin-bottom:24px}
    .services-hero-image{position:relative;left:auto;top:auto;transform:none;width:100%;margin-bottom:24px}
    .services-hero-text{margin-left:0}
  }

  /* Home page Our Services - bottom row places MSA + LCP side-by-side on the
     same line, centered. Built on a 6-col grid so the first 9 cards stay 3-up
     and the bottom pair sits in cols 2-3 + cols 4-5 (cols 1 and 6 act as
     side gutters that center the pair). Header h2 stays on one line; lead
     paragraph wraps onto two lines. */
  #home-services .section-header.section-header-wide{max-width:1080px}
  #home-services .single-line-h2{white-space:nowrap}
  #home-services .two-line-lead{max-width:780px;margin-left:auto;margin-right:auto}
  #home-services .service-cards,
  #page-services .service-cards{
    display:grid;grid-template-columns:repeat(6,1fr);gap:26px;
  }
  #home-services .service-cards .service-card,
  #page-services .service-cards .service-card{grid-column:span 2}
  #home-services .service-cards .service-card:nth-child(7),
  #page-services .service-cards .service-card:nth-child(7){grid-column:2 / span 2}
  #home-services .service-cards .service-card:nth-child(8),
  #page-services .service-cards .service-card:nth-child(8){grid-column:4 / span 2}
  @media (max-width: 1024px){
    #home-services .single-line-h2{white-space:normal}
    #home-services .service-cards,
    #page-services .service-cards{grid-template-columns:repeat(2,1fr)}
    #home-services .service-cards .service-card,
    #page-services .service-cards .service-card,
    #home-services .service-cards .service-card:nth-child(7),
    #home-services .service-cards .service-card:nth-child(8),
    #page-services .service-cards .service-card:nth-child(7),
    #page-services .service-cards .service-card:nth-child(8){grid-column:auto}
  }

  /* ===================== PAGE BODY ===================== */
  .page-body{padding:70px 0;background:linear-gradient(180deg,#fff 0%,var(--bg-alt) 100%)}
  .content-grid{display:grid;grid-template-columns:1fr 340px;gap:60px;align-items:start}
  /*.content-main h2{font-size:1.7rem;margin-top:40px}*/
  .content-main h2:first-child{margin-top:0}
  .content-main h3{font-size:1.2rem;margin-top:28px;color:var(--ink)}
  .content-main p{color:var(--slate);margin-bottom:16px}
  .content-main ul{margin:0 0 20px;padding-left:22px}
  .content-main ul li{color:var(--slate);margin-bottom:8px}
  .content-main ul li::marker{color:var(--sky)}

  .callout{
    background:linear-gradient(135deg,var(--bg-soft) 0%,#fff 100%);
    border-left:4px solid var(--sky);padding:24px 28px;border-radius:14px;
    margin:28px 0;box-shadow:var(--shadow-sm);
  }
  .callout strong{color:var(--navy)}
  .callout .callout-label{
    display:inline-flex;align-items:center;gap:8px;
    font-size:.72rem;letter-spacing:2px;
    text-transform:uppercase;color:var(--sky-2);font-weight:700;margin-bottom:10px;
  }
  .callout .callout-label::before{
    content:"";width:16px;height:2px;background:currentColor;border-radius:2px;
  }
  .callout .callout-source{
    display:block;margin-top:14px;padding-top:10px;
    border-top:1px solid rgba(15,55,120,.14);
    font-size:.78rem;color:var(--muted);font-style:italic;line-height:1.5;
  }
  .callout .callout-source strong{color:var(--navy-ink);font-style:normal}
  .callout .callout-source em{color:var(--slate)}

  /* Centered title variant for callouts (title sits at the top center, with
     a small dash on each side, instead of the default left-aligned label) */
  .callout.callout-title-center{padding-top:22px;text-align:left}
  .callout.callout-title-center .callout-label{
    display:flex;justify-content:center;align-items:center;gap:12px;
    margin:0 0 16px;width:100%;font-size:.78rem;
  }
  .callout.callout-title-center .callout-label::before,
  .callout.callout-title-center .callout-label::after{
    content:"";width:28px;height:2px;background:currentColor;border-radius:2px;
    display:block;
  }

  .sidebar-card{
    background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;
    box-shadow:var(--shadow);position:sticky;top:110px;
  }

  /* Service-page top-right action stack: prominent Download + Request Info buttons */
  .svc-action-stack{
    position:sticky;top:110px;display:flex;flex-direction:column;gap:14px;
    padding:0;
  }
  .btn-svc-action{
    display:flex;align-items:center;justify-content:center;gap:12px;
    padding:22px 26px;border-radius:14px;cursor:pointer;
    font-weight:800;font-size:1.04rem;letter-spacing:.2px;
    text-decoration:none;border:2px solid transparent;text-align:center;
    transition:all .2s;line-height:1.25;min-height:80px;
    box-shadow:0 8px 24px rgba(15,55,120,.18);
  }
  .btn-svc-action svg{width:22px;height:22px;flex-shrink:0;}
  .btn-svc-download{
    background:var(--navy);color:#fff;border-color:var(--navy);
  }
  .btn-svc-download:hover{
    background:#0c2c61;border-color:#0c2c61;
    transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,55,120,.30);
  }
  .btn-svc-request{
    background:var(--sky);color:#fff;border-color:var(--sky);
  }
  .btn-svc-request:hover{
    background:var(--sky-2);border-color:var(--sky-2);
    transform:translateY(-2px);box-shadow:0 12px 28px rgba(58,160,224,.32);
  }
  .sidebar-card h4{color:var(--navy);margin-bottom:14px;font-size:1.1rem}
  .sidebar-card p{font-size:.9rem;color:var(--slate);margin-bottom:20px}
  .sidebar-card .btn{width:100%;justify-content:center}

  /* ===================== REQUEST INFO FORM ===================== */
  .request-block{
    background:linear-gradient(135deg,#fff 0%,var(--bg-alt) 100%);
    border-radius:22px;padding:44px;margin:50px 0;
    border:1px solid var(--line);
    box-shadow:var(--shadow);position:relative;overflow:hidden;
  }
  .request-block::before{
    content:"";position:absolute;top:-60px;right:-60px;width:220px;height:220px;
    background:radial-gradient(circle,rgba(58,160,224,.15),transparent 70%);
    border-radius:50%;
  }
  .request-block > *{position:relative;z-index:2}
  .request-block h3{color:var(--navy);margin-bottom:8px;font-size:1.45rem}
  .request-block .rb-sub{color:var(--slate);margin-bottom:26px;font-size:.96rem}
  .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .form-grid .full{grid-column:1/-1}
  .form-field label{display:block;font-size:.85rem;color:var(--ink);font-weight:500;margin-bottom:7px}
  .form-field input,.form-field select,.form-field textarea{
    width:100%;padding:13px 16px;border:1px solid var(--line);border-radius:10px;
    font-family:inherit;font-size:.94rem;background:#fff;transition:all .18s;
    color:var(--ink);
  }
  .form-field input:focus,.form-field select:focus,.form-field textarea:focus{
    outline:none;border-color:var(--sky);box-shadow:0 0 0 4px rgba(58,160,224,.12);
  }
  .form-field textarea{resize:vertical;min-height:100px}
  .form-note{font-size:.82rem;color:var(--muted);margin-top:14px}

  /* ===================== TEAM ===================== */
  .team-grid{display:flex;flex-direction:column;gap:0}
  .team-row{display:grid;gap:24px;margin:0 auto;width:100%}
  .team-row-3{grid-template-columns:repeat(3,1fr);max-width:894px}
  .team-row-4{grid-template-columns:repeat(4,1fr);max-width:100%}
  .team-row-label{
    display:flex;align-items:center;gap:14px;
    margin:26px 0 14px;font-size:.78rem;letter-spacing:2.5px;text-transform:uppercase;
    color:var(--sky-2);font-weight:700;
  }
  .team-row-label:first-child{margin-top:0}
  .team-row-label::before,.team-row-label::after{
    content:"";flex:1;height:1px;
    background:linear-gradient(90deg,transparent,var(--line),transparent);
  }
  .team-card{
    background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;
    transition:all .3s;position:relative;
  }
  .team-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:transparent}
  .team-photo{
    width:100%;aspect-ratio:3/4;position:relative;overflow:hidden;
    background:linear-gradient(135deg,#e6f0fa 0%,#b6d6ef 60%,#8ac7eb 100%);
    display:flex;align-items:center;justify-content:center;
    color:var(--navy);font-weight:800;font-size:2.3rem;letter-spacing:1px;
  }
  .team-photo.has-img{background:#e6f0fa}
  .team-photo.has-img img{width:100%;height:100%;object-fit:cover;display:block}
  .team-photo::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(180deg,transparent 65%,rgba(15,55,120,.25) 100%);
    pointer-events:none;
  }
  .team-photo-tag{
    position:absolute;bottom:12px;left:12px;z-index:2;
    font-size:.66rem;letter-spacing:2px;color:#fff;opacity:.85;font-weight:600;
  }
  .team-info{padding:20px 20px 22px}
  .team-info h3{font-size:.98rem;margin-bottom:4px;line-height:1.3}
  .team-info .team-title{
    font-size:.76rem;color:var(--sky-2);font-weight:600;margin-bottom:10px;
    letter-spacing:.3px;line-height:1.35;
  }
  .team-info p{font-size:.82rem;color:var(--slate);margin:0;line-height:1.55}

  /* --- Featured leadership cards (top row: Gary + Melissa) --- */
  /* Founders cards now match the standard team-card sizing
     (the team-card-feature class is intentionally kept as a no-op so older
     references don't break - sizing is identical to team-card now). */
  .team-card-feature{grid-column:auto}
  .team-card-feature .team-photo{aspect-ratio:1/1}
  .team-card-feature .team-info{padding:18px 20px 20px}
  .team-card-feature .team-info h3{font-size:1.05rem;margin-bottom:6px}
  .team-card-feature .team-info .team-title{font-size:.88rem;margin-bottom:0}
  /* Responsive: collapse 3-card and 4-card rows on smaller screens */
  @media (max-width:1000px){
    .team-row-3,.team-row-4{grid-template-columns:repeat(2,1fr);max-width:100%}
  }
  @media (max-width:620px){
    .team-row-3,.team-row-4{grid-template-columns:1fr}
  }

  /* Biography trigger button under each executive (opens popup below the row) */
  .team-bio-btn{
    margin-top:14px;display:inline-flex;align-items:center;gap:6px;
    background:transparent;border:1px solid var(--navy);color:var(--navy);
    padding:7px 16px;border-radius:18px;font-size:.78rem;font-weight:700;
    letter-spacing:.6px;text-transform:uppercase;cursor:pointer;
    transition:background .18s ease,color .18s ease,box-shadow .18s ease;
    font-family:inherit;
  }
  .team-bio-btn::after{content:"\203A";font-size:1rem;line-height:1;margin-left:2px;transition:transform .2s ease}
  .team-bio-btn:hover{background:var(--navy);color:#fff;box-shadow:0 4px 12px rgba(15,55,120,.2)}
  .team-bio-btn.active{background:var(--navy);color:#fff}
  .team-bio-btn.active::after{transform:rotate(90deg)}
  .team-card-md .team-bio-btn{display:inline-flex;margin-left:auto;margin-right:auto}

  /* The biography popup (one shared element, repositioned under the clicked row) */
  .team-bio-popup{
    grid-column:1 / -1;margin:6px 0 18px;padding:28px 34px 30px;
    background:#fff;border:1px solid var(--line);border-left:4px solid var(--navy);
    border-radius:14px;box-shadow:0 14px 36px rgba(15,55,120,.14);
    position:relative;animation:bioFadeIn .22s ease;
    font-size:.95rem;line-height:1.6;color:var(--slate);
  }
  .team-bio-popup[hidden]{display:none}
  .team-bio-popup .bio-close{
    position:absolute;top:10px;right:12px;background:transparent;border:0;
    width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.4rem;
    line-height:1;color:var(--muted);transition:background .15s ease,color .15s ease;
    font-family:inherit;
  }
  .team-bio-popup .bio-close:hover{background:var(--bg-alt);color:var(--navy-ink)}
  .team-bio-popup .bio-popup-title{
    font-size:1.18rem;margin:0 0 2px;color:var(--navy-ink);font-weight:700;
    line-height:1.25;padding-right:36px;
  }
  .team-bio-popup .bio-popup-meta{
    font-size:.82rem;color:var(--sky-2);font-weight:700;letter-spacing:.6px;
    text-transform:uppercase;margin:0 0 14px;
  }
  .team-bio-popup .bio-popup-body p{margin:0 0 .8em}
  .team-bio-popup .bio-popup-body p:last-child{margin-bottom:0}
  @keyframes bioFadeIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
  @media (max-width:720px){
    .team-bio-popup{padding:22px 20px 24px}
    .team-bio-popup .bio-popup-title{font-size:1.05rem;padding-right:28px}
  }

  /* --- Medical Director cards (centered, role + specialty) --- */
  .team-card-md .team-info{text-align:center}
  .team-card-md .team-info h3{margin-bottom:6px}
  .team-info .team-role{
    font-size:.74rem;color:#b8851d;font-weight:800;letter-spacing:1.6px;
    text-transform:uppercase;margin:0 0 4px;line-height:1.2;
  }
  .team-card-md .team-info .team-title{
    font-size:.86rem;color:var(--navy);font-weight:600;margin-bottom:10px;
    letter-spacing:.2px;line-height:1.35;
  }

  /* ==== Service Sheet download band (consistent across all service pages) ==== */
  .svc-sheet-band{
    margin:54px 0 10px;padding:32px 32px 30px;
    background:linear-gradient(135deg,#f3f7fc 0%,#e8f1fb 100%);
    border:1px solid #d3e1f1;border-radius:16px;
    display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;
    box-shadow:0 4px 18px rgba(15,55,120,.08);
  }
  .svc-sheet-text{flex:1;min-width:260px;}
  .svc-sheet-text .eyebrow{
    display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:2px;
    color:var(--sky);text-transform:uppercase;margin-bottom:6px;
  }
  .svc-sheet-text h3{
    margin:0 0 6px;font-size:1.35rem;color:var(--navy);font-weight:700;line-height:1.3;
  }
  .svc-sheet-text p{
    margin:0;font-size:.95rem;color:var(--slate);line-height:1.5;max-width:560px;
  }
  .svc-sheet-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start;}
  .btn-sheet{
    display:inline-flex;align-items:center;gap:10px;
    padding:14px 24px;border-radius:10px;cursor:pointer;
    background:var(--navy);color:#fff;font-weight:700;font-size:.95rem;
    text-decoration:none;border:1.5px solid var(--navy);
    transition:all .2s;letter-spacing:.3px;white-space:nowrap;
  }
  .btn-sheet:hover{background:#0c2c61;border-color:#0c2c61;transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,55,120,.25);}
  .btn-sheet svg{width:18px;height:18px;}
  .btn-sheet-outline{
    display:inline-flex;align-items:center;gap:8px;
    padding:8px 16px;border-radius:8px;cursor:pointer;
    background:transparent;color:var(--navy);font-weight:600;font-size:.85rem;
    text-decoration:none;border:1.5px solid #c4d4ea;
    transition:all .2s;
  }
  .btn-sheet-outline:hover{border-color:var(--navy);background:#fff;}
  @media (max-width:700px){
    .svc-sheet-band{flex-direction:column;align-items:flex-start;padding:24px 22px;}
    .svc-sheet-actions{width:100%;}
    .btn-sheet,.btn-sheet-outline{width:100%;justify-content:center;}
  }

  /* ===================== INDUSTRIES ===================== */
  .industries-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
  .industry-card{
    background:#fff;border:1px solid var(--line);border-radius:22px;padding:38px;
    cursor:pointer;transition:all .3s;position:relative;overflow:hidden;
  }
  .industry-card::before{
    content:"";position:absolute;top:0;left:0;bottom:0;width:4px;
    background:var(--grad-brand);transform:scaleY(0);transform-origin:top;transition:transform .3s;
  }
  .industry-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}
  .industry-card:hover::before{transform:scaleY(1)}
  .industry-card .i-icon{
    width:60px;height:60px;border-radius:18px;
    background:var(--grad-brand);
    display:flex;align-items:center;justify-content:center;color:#fff;
    font-weight:700;font-size:1.15rem;margin-bottom:22px;
    box-shadow:0 12px 26px rgba(15,55,120,.25);
    transition:transform .3s;
  }
  .industry-card:hover .i-icon{transform:rotate(-6deg) scale(1.08)}
  .industry-card h3{font-size:1.25rem;margin-bottom:12px}
  .industry-card p{color:var(--slate);font-size:.95rem;margin-bottom:16px}
  .industry-card ul{padding-left:18px;margin:0 0 14px}
  .industry-card ul li{color:var(--slate);font-size:.9rem;margin-bottom:5px}

  .specialty-list{columns:3;column-gap:36px;padding:0;list-style:none;margin:0}
  .specialty-list li{
    padding:12px 0;border-bottom:1px solid var(--line);font-size:1.08rem;color:var(--ink);font-weight:500;
    break-inside:avoid;display:flex;align-items:center;gap:10px;line-height:1.35;
  }
  .specialty-list li::before{
    content:"";width:6px;height:6px;border-radius:50%;background:var(--sky);
    flex-shrink:0;
  }

  /* Home icon in nav */
  .nav-home{
    display:inline-flex;align-items:center;gap:8px;
    padding:14px 18px;
    color:var(--ink);font-weight:600;font-size:1.05rem;cursor:pointer;
    border-radius:8px;transition:all .18s;
    flex-shrink:0;
  }
  .nav-home:hover{background:var(--bg-soft);color:var(--navy)}
  .nav-home svg{width:20px;height:20px;display:block}
  .nav-home-label{letter-spacing:.2px}

  /* ===================== RESPONSIVE ===================== */
  @media (max-width:1200px){
    .sp-tiles{grid-template-columns:repeat(4,1fr);gap:2px}
    .sp-label{font-size:.7rem}
    .service-strip .container{flex-direction:column}
    .sp-cta{margin-left:0;width:100%;padding:0}
    .sp-cta-btn{flex-direction:row;height:auto;min-height:0;padding:14px 24px;width:100%}
  }
  @media (max-width:1000px){
    .hero-inner{min-height:480px;padding:50px 0 80px}
    .hero-slides{min-height:260px}
    .slide-headline{font-size:2.3rem}
    .mm-grid{grid-template-columns:1fr}
    .mm-feature{min-height:auto}
    .service-cards,.industries-grid,.why-grid{grid-template-columns:1fr 1fr}
    .flag-grid{grid-template-columns:1fr}
    .service-strip .container{grid-template-columns:repeat(3,1fr)}
    .accred-logos{grid-template-columns:1fr 1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
    .about-grid,.content-grid{grid-template-columns:1fr}
    .specialty-list{columns:2}
    .page-hero-video{display:none}
    .about-badges{position:static;flex-direction:row;margin-top:20px;justify-content:center}
    nav.primary{display:none}
  }
  @media (max-width:650px){
    h1{font-size:1.9rem}
    .service-cards,.industries-grid,.why-grid,.footer-grid{grid-template-columns:1fr}
    .slide-headline{font-size:1.7rem}
    .slide-counter-pill,.hero-play-indicator{display:none}
    .specialty-list{columns:1}
    .form-grid{grid-template-columns:1fr}
    .service-strip .container{grid-template-columns:repeat(2,1fr)}
    .section-header h2,.page-hero h1,.cta-band h2{font-size:1.7rem}
    .top-bar .contacts{display:none}
  }

  /* =============== AMERICAN / U.S. OPERATIONS =============== */
  .usa-band{
    position:relative;    /*overflow:hidden;
background:
      radial-gradient(ellipse at 15% 30%,rgba(191,10,48,.08),transparent 55%),
      radial-gradient(ellipse at 85% 70%,rgba(15,55,120,.10),transparent 55%),
      linear-gradient(180deg,#fff 0%,#f6f9fc 100%);*/
    padding:90px 0;
  }
  .usa-band::before{
    content:"";position:absolute;top:-120px;left:-60px;width:280px;height:280px;
    /*background:radial-gradient(circle,rgba(191,10,48,.12),transparent 70%);
    border-radius:50%;filter:blur(50px);*/
  }
  .usa-band::after{
    content:"";position:absolute;bottom:-100px;right:-80px;width:320px;height:320px;
   /* background:radial-gradient(circle,rgba(15,55,120,.12),transparent 70%);
    border-radius:50%;filter:blur(50px);*/
  }
  .flag-grid{
    display:grid;grid-template-columns:1fr 1.15fr;gap:60px;align-items:center;
    position:relative;z-index:2;
  }
  .flag-art{
    display:flex;flex-direction:column;gap:18px;position:relative;
  }
  .flag-art-img{
    aspect-ratio:19/10;border-radius:20px;overflow:hidden;
    box-shadow:var(--shadow-lg);position:relative;
  }
  .flag-svg{width:100%;height:100%;display:block}
  .flag-badge{
    position:relative;
    background:#fff;
    border-radius:14px;padding:20px 22px;
    display:flex;align-items:center;gap:16px;
    box-shadow:0 12px 30px rgba(0,0,0,.10);
    border:1px solid var(--line);
  }
  .flag-badge-seal{
    width:54px;height:54px;border-radius:50%;
    background:var(--grad-brand);flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:.7rem;letter-spacing:1px;text-align:center;line-height:1.1;
    box-shadow:0 8px 20px rgba(15,55,120,.3);
  }
  .flag-badge-text h4{margin:0 0 2px;font-size:1rem;color:var(--navy-ink)}
  .flag-badge-text p{margin:0;font-size:.82rem;color:var(--slate);line-height:1.4}
  .flag-content .flag-eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    padding:8px 16px;
    background:linear-gradient(90deg,#bf0a30,#0f3778);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    font-size:.78rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
    margin-bottom:14px;
  }
  .flag-content h2{font-size:2.4rem;margin-bottom:18px}
  .flag-content h2 .rd{color:#bf0a30}
  .flag-content p{color:var(--slate);font-size:1.05rem;margin-bottom:14px}
  .flag-proof{
    display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px;
  }
  .flag-proof-item{
    background:rgba(255,255,255,.9);backdrop-filter:blur(10px);
    border:1px solid var(--line);border-radius:14px;padding:18px 20px;
    display:flex;gap:14px;align-items:center;
  }
  .flag-proof-check{
    width:32px;height:32px;border-radius:50%;flex-shrink:0;
    background:linear-gradient(135deg,#2dbfb0,#3aa0e0);
    display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;
    box-shadow:0 6px 14px rgba(45,191,176,.35);
  }
  .flag-proof-text h4{margin:0 0 2px;font-size:.92rem;color:var(--navy-ink)}
  .flag-proof-text p{margin:0;font-size:.8rem;color:var(--slate);line-height:1.4}

  /* =============== RESOURCES / INSIGHTS =============== */
  .resources-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
  .res-card{
    background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;
    cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);
    display:flex;flex-direction:column;
  }
  .res-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:transparent}
  .res-card.coming-soon{opacity:.85}
  .res-thumb{
    aspect-ratio:16/9;position:relative;overflow:hidden;
    background:var(--grad-brand);
    display:flex;align-items:center;justify-content:center;
  }
  .res-thumb-bh{background:linear-gradient(135deg,#1a1e5c 0%,#4a2a8c 50%,#7e5bc7 100%)}
  .res-thumb-ffd{background:linear-gradient(135deg,#0a3d5c 0%,#1e88d1 60%,#8ac7eb 100%)}
  .res-thumb-ime{background:linear-gradient(135deg,#082552 0%,#0f3778 45%,#1e88d1 100%)}
  .res-thumb-irr{background:linear-gradient(135deg,#0f3778 0%,#1e6db8 50%,#3aa0e0 100%)}
  .res-thumb-aviation{background:linear-gradient(135deg,#082552 0%,#1e6db8 60%,#2dbfb0 100%)}
  .res-thumb-guidelines{background:linear-gradient(135deg,#0f3778 0%,#2864a8 100%)}
  .res-thumb-pharmacy{background:linear-gradient(135deg,#0a3d5c 0%,#147b91 50%,#2dbfb0 100%)}
  .res-thumb-usa{background:linear-gradient(135deg,#bf0a30 0%,#0f3778 100%)}
  .res-thumb::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 50%);
  }
  .res-thumb-icon{
    width:64px;height:64px;border-radius:18px;
    background:rgba(255,255,255,.15);backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.25);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:1rem;letter-spacing:1px;
    position:relative;z-index:2;
  }
  .res-meta{
    display:flex;align-items:center;gap:10px;margin-bottom:12px;
    font-size:.74rem;color:var(--muted);font-weight:500;
  }
  .res-cat{
    display:inline-block;padding:3px 10px;border-radius:30px;
    background:var(--bg-soft);color:var(--sky-2);
    font-size:.7rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;
  }
  .res-body{padding:24px 26px 26px;display:flex;flex-direction:column;flex:1}
  .res-body h3{font-size:1.12rem;margin-bottom:10px;line-height:1.35}
  .res-body p{color:var(--slate);font-size:.92rem;line-height:1.6;margin-bottom:18px;flex:1}
  .res-card .read-more{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--sky-2);font-weight:600;font-size:.88rem;
    transition:gap .2s;
  }
  .res-card:hover .read-more{gap:10px}
  .res-coming-tag{
    position:absolute;top:14px;right:14px;z-index:3;
    padding:5px 12px;background:rgba(255,255,255,.2);backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.3);
    border-radius:20px;color:#fff;font-size:.68rem;letter-spacing:1px;font-weight:700;
    text-transform:uppercase;
  }

  /* Article body */
  .article-meta-row{
    display:flex;align-items:center;gap:14px;margin-bottom:14px;
    font-size:.85rem;color:#cbdcf2;flex-wrap:wrap;
  }
  .article-meta-cat{
    padding:4px 12px;background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.25);border-radius:30px;
    font-size:.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#fff;
  }
  .article-author-block{
    display:flex;align-items:center;gap:14px;
    padding:18px 22px;background:var(--bg-alt);
    border-radius:14px;margin:30px 0;
    border:1px solid var(--line);
  }
  .article-author-avatar{
    width:54px;height:54px;border-radius:50%;flex-shrink:0;
    background:linear-gradient(135deg,#e6f0fa,#b6d6ef);
    display:flex;align-items:center;justify-content:center;
    color:var(--navy);font-weight:800;font-size:1rem;
  }
  .article-author-block .name{font-weight:700;color:var(--navy);font-size:.96rem;margin:0}
  .article-author-block .title{font-size:.82rem;color:var(--slate);margin:2px 0 0}

  /* Featured insights on home */
  .home-insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

  @media (max-width:1000px){
    .resources-grid,.home-insights-grid{grid-template-columns:repeat(2,1fr)}
  }
  @media (max-width:650px){
    .resources-grid,.home-insights-grid{grid-template-columns:1fr}
  }

  /* =============== ACCREDITATION LOGOS (About page) =============== */
  .accred-section{
    background:linear-gradient(180deg,#fff 0%,var(--bg-alt) 100%);
    padding:60px 0;border-top:1px solid var(--line);
  }
  .accred-logos-grid{
    display:grid;grid-template-columns:repeat(5,1fr);gap:20px;
    margin-top:32px;
  }
  .accred-logo-card{
    background:#fff;border:2px solid var(--line);border-radius:16px;
    padding:30px 20px;text-align:center;
    transition:all .25s;cursor:pointer;
  }
  .accred-logo-card:hover{
    border-color:var(--sky);transform:translateY(-4px);
    box-shadow:0 14px 30px rgba(15,55,120,.12);
  }
  .accred-logo-mark{
    height:56px;display:flex;align-items:center;justify-content:center;
    margin-bottom:12px;
  }
  .accred-logo-mark.accred-logo-img{height:78px}
  .accred-logo-mark.accred-logo-img img{
    max-height:78px;max-width:100%;width:auto;display:block;object-fit:contain;
  }
  /* URAC feature banner on Accreditations page (and the same banner pattern
     reused for SOC 2, HIPAA and Virtru via .cred-feature). */
  .urac-feature,
  .cred-feature{
    background:linear-gradient(180deg,#fff 0%,var(--bg-alt) 100%);
    border:2px solid #e8a934;border-radius:20px;padding:36px;
    margin:0 0 24px;display:grid;grid-template-columns:240px 1fr;
    gap:32px;align-items:center;box-shadow:0 14px 40px rgba(232,169,52,.10);
  }
  .urac-feature img{width:100%;max-width:220px;height:auto;display:block;margin:0 auto}
  .cred-feature .cred-mark{
    width:100%;max-width:220px;margin:0 auto;display:flex;align-items:center;justify-content:center;
  }
  .cred-feature .cred-mark svg,
  .cred-feature .cred-mark img{width:100%;height:auto;display:block}
  .cred-feature .cred-eyebrow{
    display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:1.6px;
    text-transform:uppercase;margin-bottom:8px;
  }
  .cred-feature h2{margin:0 0 10px}
  .cred-feature p{color:var(--slate);margin:0 0 12px}
  /* Color modifiers - each accreditation gets its own accent on the border,
     shadow, and eyebrow text. */
  .cred-feature.cred-feature--soc{
    border-color:#1565c0;
    box-shadow:0 14px 40px rgba(21,101,192,.10);
  }
  .cred-feature.cred-feature--soc .cred-eyebrow{color:#1565c0}
  .cred-feature.cred-feature--hipaa{
    border-color:#1976d2;
    box-shadow:0 14px 40px rgba(25,118,210,.10);
  }
  .cred-feature.cred-feature--hipaa .cred-eyebrow{color:#1976d2}
  .cred-feature.cred-feature--virtru{
    border-color:#004987;
    box-shadow:0 14px 40px rgba(0,73,135,.10);
  }
  .cred-feature.cred-feature--virtru .cred-eyebrow{color:#004987}
  @media (max-width:780px){
    .urac-feature,
    .cred-feature{grid-template-columns:1fr;text-align:center;padding:28px}
    .urac-feature img{max-width:180px}
    .cred-feature .cred-mark{max-width:180px}
  }
  /* SVG support inside the accred-logos-grid tiles (About page band) */
  .accred-logo-mark svg{height:100%;width:auto;max-width:100%;display:block}
  .accred-logo-mark.accred-logo-svg{height:64px}
  .accred-logo-mark.accred-logo-svg svg{height:100%;width:auto;max-width:100%}
  /* Top-bar responsive - hide URAC seal on small screens */
  @media (max-width:900px){
    .tb-seals{display:none}
  }
  .accred-logo-mark .stylized{
    font-weight:900;font-size:1.6rem;letter-spacing:1px;
    background:var(--grad-brand);
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .accred-logo-card h4{
    font-size:.95rem;color:var(--navy);margin:0 0 4px;font-weight:700;letter-spacing:.3px;
  }
  .accred-logo-card p{
    font-size:.78rem;color:var(--slate);margin:0;line-height:1.4;
  }

  /* =============== Services mega-menu (clean 2-col) =============== */
  .mm-services-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;
  }

  /* =============== CV SUBMISSION FORM =============== */
  .cv-split{
    display:grid;grid-template-columns:1fr 1fr;gap:24px;
    margin:30px 0 8px;
  }
  .cv-pane{
    background:#fff;border:1px solid var(--line);border-radius:14px;
    padding:24px;
  }
  .cv-pane-title{
    font-size:1rem;color:var(--navy);margin:0 0 4px;font-weight:700;
  }
  .cv-pane-sub{
    font-size:.84rem;color:var(--muted);margin:0 0 16px;
  }
  .cv-checks{display:grid;gap:10px}
  .cv-check{
    display:flex;align-items:center;gap:12px;
    padding:11px 14px;border-radius:10px;cursor:pointer;
    border:1px solid var(--line);transition:all .18s;
    background:#fff;
  }
  .cv-check:hover{background:var(--bg-soft);border-color:var(--sky-light)}
  .cv-check input[type="checkbox"]{
    width:18px;height:18px;accent-color:var(--sky);flex-shrink:0;cursor:pointer;
  }
  .cv-check span{font-size:.92rem;font-weight:500;color:var(--ink)}
  .cv-check input:checked + span{color:var(--navy);font-weight:600}
  .cv-check:has(input:checked){
    background:linear-gradient(135deg,var(--bg-soft) 0%,#fff 100%);
    border-color:var(--sky);
  }
  .cv-yesno{display:grid;gap:12px}
  .cv-yn-opt{
    display:flex;align-items:center;gap:14px;
    padding:16px 18px;border-radius:12px;cursor:pointer;
    border:2px solid var(--line);transition:all .2s;background:#fff;
  }
  .cv-yn-opt:hover{border-color:var(--sky-light)}
  .cv-yn-opt input[type="radio"]{
    width:20px;height:20px;accent-color:var(--sky);flex-shrink:0;cursor:pointer;
  }
  .cv-yn-opt span{font-size:.95rem;font-weight:600;color:var(--ink)}
  .cv-yn-opt:has(input:checked){
    border-color:var(--sky);background:linear-gradient(135deg,var(--bg-soft) 0%,#fff 100%);
    box-shadow:0 4px 14px rgba(58,160,224,.15);
  }
  .cv-dropzone{
    border:2.5px dashed var(--line);border-radius:16px;
    padding:30px 24px;text-align:center;cursor:pointer;
    transition:all .25s;background:#fff;margin-top:24px;
  }
  .cv-dropzone:hover,.cv-dropzone.drag-over{
    border-color:var(--sky);background:linear-gradient(180deg,var(--bg-soft) 0%,#fff 100%);
  }
  .cv-dropzone svg{color:var(--sky);margin:0 auto 12px}
  .cv-dropzone h4{margin:0 0 6px;font-size:1.05rem;color:var(--navy)}
  .cv-dropzone p{margin:0;font-size:.88rem;color:var(--slate)}
  .cv-browse{color:var(--sky-2);font-weight:700;text-decoration:underline;cursor:pointer}
  .cv-file-name{
    margin-top:12px;font-size:.88rem;color:var(--navy);font-weight:600;
  }
  /* Service interest/experience grid - tightened, larger headers, properly centered checkboxes.
     Column order: Interest | Service | YES | NO  (Interest moved to left). */
  .svc-exp-grid{
    background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;
    max-width:700px;
  }
  /* Four columns: Interest | Service label | YES | NO. */
  .svc-exp-head{
    display:grid;
    grid-template-columns:88px 1fr 60px 60px;
    grid-template-rows:auto auto;
    background:var(--navy-deep);color:#fff;
    padding:14px 16px 14px;
    align-items:center;column-gap:14px;row-gap:6px;
    font-family: 'Georgia', 'Times New Roman', serif;
  }
  .svc-exp-head .svc-exp-exp-title{
    grid-column:3 / span 2; grid-row:1;
    font-size:1.05rem;font-weight:700;letter-spacing:.5px;color:#fff;text-align:center;
    text-transform:uppercase;
    font-family: 'Georgia', 'Times New Roman', serif;
  }
  /* Service header - larger and centered top-to-bottom of the dark blue header,
     spanning both rows of the head. */
  .svc-exp-head .svc-exp-label{
    grid-column:2; grid-row:1 / span 2;
    color:#fff;font-size:1.45rem;font-weight:700;letter-spacing:.6px;
    text-align:center;
    align-self:center;
    text-transform:uppercase;
    font-family: 'Georgia', 'Times New Roman', serif;
  }
  .svc-exp-head .svc-exp-col-interest{
    grid-column:1; grid-row:1 / span 2;
    color:#fff;font-size:1.15rem;font-weight:700;letter-spacing:.5px;text-align:center;
    align-self:center;
    text-transform:uppercase;
    font-family: 'Georgia', 'Times New Roman', serif;
  }
  .svc-exp-head .svc-exp-yn{
    grid-row:2;
    color:#fff;font-size:1rem;font-weight:700;letter-spacing:.6px;text-align:center;
    text-transform:uppercase;
    font-family: 'Georgia', 'Times New Roman', serif;
  }

  .svc-exp-row{
    display:grid;grid-template-columns:88px 1fr 60px 60px;
    padding:10px 16px;border-top:1px solid var(--line);
    align-items:center;column-gap:14px;
  }
  .svc-exp-row:hover{background:var(--bg-soft)}
  .svc-exp-label{font-size:.92rem;color:var(--ink);font-weight:500;text-align:left;}
  .svc-exp-col{display:flex;justify-content:center;align-items:center;}
  .svc-exp-col input[type="checkbox"]{
    width:18px;height:18px;accent-color:var(--sky);cursor:pointer;margin:0;
  }

  /* Compact uniform tiles - used for both Degree and State Licensure rows.
     Tiles are fixed-width so the two rows have identical tile sizing for symmetry. */
  .cv-checks-tile{
    display:flex;flex-wrap:nowrap;gap:8px;
  }
  .cv-checks-tile .cv-check{
    width:96px;padding:8px 6px;justify-content:center;flex:0 0 auto;
    white-space:nowrap;
  }
  .cv-checks-tile.cv-checks-state .cv-check{
    width:62px;
  }
  .cv-checks-tile .cv-check span{
    font-size:.82rem;font-weight:600;letter-spacing:.3px;
  }
  .cv-checks-tile .cv-check input[type="checkbox"]{
    width:14px;height:14px;
  }
  /* "Other …" text input that aligns to the tile row above it */
  .tile-row-other{margin-top:10px;}

  /* =============== TECHNOLOGY PAGE =============== */
  .tech-hero-stat{
    display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
    margin-top:30px;
  }
  .tech-hero-stat.tech-hero-stat-compact{
    grid-template-columns:repeat(2,1fr);gap:12px;max-width:380px;
  }
  .tech-stat{
    background:rgba(255,255,255,.08);backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:18px 20px;
    color:#fff;
  }
  .tech-hero-stat-compact .tech-stat{padding:12px 14px;}
  .tech-stat .ts-num{
    font-size:1.6rem;font-weight:800;
    background:linear-gradient(90deg,#8ac7eb,#fff);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    line-height:1;margin-bottom:4px;
  }
  .tech-hero-stat-compact .tech-stat .ts-num{font-size:1.25rem;}
  .tech-stat .ts-lbl{font-size:.82rem;color:#cbdcf2;font-weight:500}
  .tech-hero-stat-compact .tech-stat .ts-lbl{font-size:.74rem;}

  /* Technology page: shorter hero + 4 stat tiles on one line */
  #page-technology .page-hero{padding:32px 0 28px;}
  #page-technology .tech-hero-stat.tech-hero-stat-compact{
    grid-template-columns:repeat(4,1fr);gap:10px;max-width:none;margin-top:22px;
  }
  #page-technology .tech-hero-stat-compact .tech-stat{padding:9px 11px;border-radius:10px;}
  #page-technology .tech-hero-stat-compact .tech-stat .ts-num{font-size:1rem;margin-bottom:2px;}
  #page-technology .tech-hero-stat-compact .tech-stat .ts-lbl{font-size:.65rem;line-height:1.25;}
  @media (max-width:780px){
    #page-technology .tech-hero-stat.tech-hero-stat-compact{grid-template-columns:repeat(2,1fr);gap:10px;}
  }

  /* Reusable hero-with-image layout: text/stats left, photo right.
     Used on Technology, About, Network, and Accreditations pages. */
  .hero-with-image{
    display:grid;grid-template-columns:1.2fr .85fr;gap:48px;align-items:center;
  }
  .hero-with-image > .hero-text-side{min-width:0;}
  .hero-side-image{
    width:100%;aspect-ratio:4/3;border-radius:18px;
    background-size:cover;background-position:center;background-repeat:no-repeat;
    /* Solid navy fallback shows if the photo file hasn't been uploaded yet,
       so the hero looks intentional (not broken) until the asset is dropped in. */
    background-color:#0d2447;
    border:1px solid rgba(255,255,255,.18);
    /*box-shadow:0 18px 48px rgba(0,0,0,.30);*/
    position:relative;overflow:hidden;
  }
  .hero-side-image::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(15,55,120,.10) 0%,transparent 50%,rgba(8,37,82,.18) 100%);
    pointer-events:none;
  }
  @media (max-width:980px){
    .hero-with-image{grid-template-columns:1fr;gap:28px;}
    .hero-side-image{max-width:560px;margin:0 auto;aspect-ratio:16/10;}
  }

  .tech-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin:40px 0}
  .tech-card{
    background:#fff;border:1px solid var(--line);border-radius:18px;
    padding:30px;transition:all .25s;
  }
  .tech-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
  .tech-card-head{
    display:flex;align-items:center;gap:14px;margin-bottom:18px;
  }
  .tech-card-icon{
    width:54px;height:54px;border-radius:14px;
    background:var(--grad-brand);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:.85rem;letter-spacing:.5px;
    box-shadow:0 8px 20px rgba(15,55,120,.22);flex-shrink:0;
  }
  .tech-card h3{font-size:1.15rem;margin:0;color:var(--navy)}
  .tech-card-sub{font-size:.85rem;color:var(--sky-2);margin:2px 0 0;font-weight:600}
  .tech-card p{color:var(--slate);font-size:.94rem;margin:0 0 14px}
  .tech-card ul{margin:0;padding-left:20px}
  .tech-card ul li{color:var(--slate);font-size:.9rem;margin-bottom:6px}

  /* =============== NEWS PAGE =============== */
  .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
  .news-card{
    background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;
    cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);
    display:flex;flex-direction:column;
  }
  .news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:transparent}
  .news-thumb{
    aspect-ratio:16/9;background:var(--grad-brand);
    display:flex;align-items:center;justify-content:center;
    color:#fff;font-weight:800;font-size:1.2rem;letter-spacing:1px;
    position:relative;overflow:hidden;
    background-size:cover;background-position:center;
  }
  .news-thumb::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 50%);
  }
  .news-thumb-portrait{background-position:center 18%}
  .news-thumb-label{
    position:absolute;left:14px;bottom:12px;z-index:2;
    background:rgba(15,55,120,.86);color:#fff;
    padding:5px 12px;border-radius:30px;
    font-size:.7rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;
  }
  /* Logo-style thumbnail: clean light background with a contained logo */
  .news-thumb-logo{
    background-color:#f4f7fb;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    background-origin:content-box;
    padding:20px 32px;
    box-sizing:border-box;
    border-bottom:1px solid var(--line);
  }
  .news-thumb-logo::after{display:none}
  .news-body{padding:24px 26px 26px;flex:1;display:flex;flex-direction:column}
  .news-date{
    font-size:.78rem;color:var(--muted);font-weight:600;
    letter-spacing:1.5px;text-transform:uppercase;margin-bottom:10px;
  }
  .news-body h3{font-size:1.1rem;margin-bottom:10px;line-height:1.35}
  .news-body p{color:var(--slate);font-size:.92rem;line-height:1.6;margin-bottom:14px;flex:1}
  .news-tag{
    display:inline-block;padding:4px 12px;border-radius:30px;
    background:var(--bg-soft);color:var(--sky-2);
    font-size:.7rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;
    margin-bottom:10px;align-self:flex-start;
  }
  .news-li-share{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--sky-2);font-size:.82rem;font-weight:600;
    padding-top:14px;border-top:1px solid var(--line);
  }

  @media (max-width:1000px){
    .cv-split,.tech-grid,.news-grid{grid-template-columns:1fr}
    .tech-hero-stat{grid-template-columns:repeat(2,1fr)}
    .hero-slide-v2 .container{flex-direction:column !important;gap:24px}
    .hero-img-frame{width:100%;max-width:none}
    .hero-text-wrap{text-align:center;max-width:none}
    .hero-text-wrap .slide-eyebrow{margin-left:auto;margin-right:auto}
  }
  @media (max-width:650px){
    .hero-text-wrap .slide-headline{font-size:1.7rem}
    .login-btn span{display:none}
  }

  .hidden{display:none !important}

  /* ===================================================================
     MOBILE & TABLET RESPONSIVE OVERRIDES (added 2026-05-28)
     Strategy: tablet ≤1024px tweaks; phone ≤900px collapses nav to a
     hamburger drawer and stacks multi-column grids; ≤480px shrinks
     headings and the hero. All overrides scoped to media queries so
     desktop layout is unchanged.
     =================================================================== */

  /* Hamburger button — visible only on mobile/tablet */
  .nav-hamburger{
    display:none;
    align-items:center;justify-content:center;
    width:46px;height:46px;
    background:transparent;border:1px solid var(--line);border-radius:10px;
    cursor:pointer;color:var(--navy);
    transition:background .18s,border-color .18s;
    margin-left:auto;
  }
  .nav-hamburger:hover{background:var(--bg-soft)}
  .nav-hamburger svg{width:24px;height:24px}
  .nav-hamburger .icon-close{display:none}
  body.nav-open .nav-hamburger .icon-open{display:none}
  body.nav-open .nav-hamburger .icon-close{display:block}

  /* Mobile drawer backdrop */
  .nav-backdrop{
    display:none;position:fixed;inset:0;
    background:rgba(15,55,120,.35);
    z-index:998;
    opacity:0;transition:opacity .2s;
  }
  body.nav-open .nav-backdrop{display:block;opacity:1}

  /* ------- TABLET (≤1100px) — slim spacing so nav fits before hamburger ------ */
  @media (max-width:1100px){
    .nav-link{padding:14px 14px;font-size:.98rem}
    .nav-home{padding:12px 12px;font-size:.95rem}
    .nav-home-label{display:none}
    .cmrs-logo-text{display:none}
  }

  /* ------- MOBILE / SMALL TABLET (≤900px) — hamburger drawer ------- */
  @media (max-width:900px){
    /* Show hamburger, swap to drawer */
    .nav-hamburger{display:inline-flex;position: fixed;right: 20px;z-index: 10002;}
    .nav-wrap{padding:12px 0;gap:12px}
    .cmrs-logo-text{display:none}
    .cmrs-logo-divider{display:none}
    .cmrs-logo-media{transform:scale(.85);transform-origin:left center}

    /* Override the older rule that hid the nav entirely at ≤1000px */
    nav.primary{
      /*display:flex !important;*/
      position:fixed;
      top:0;right:0;
      width:min(82vw, 340px);
      height:100vh;
      background:#fff;
      flex-direction:column;
      align-items:stretch;
      justify-content:flex-start;
      gap:4px;
      padding:80px 18px 24px;
      box-shadow:-12px 0 30px rgba(15,55,120,.18);
      transform:translateX(105%);
      transition:transform .28s cubic-bezier(.4,.0,.2,1);
      z-index:999;
      overflow-y:auto;
    }
    body.nav-open nav.primary{transform:translateX(0)}

    .nav-home{
      padding:14px 16px;font-size:1.1rem;
      border-bottom:1px solid var(--line);border-radius:0;
      width:100%;justify-content:flex-start;
    }
    .nav-home-label{display:inline}
    .nav-item{flex:0 0 auto;display:block;width:100%}
    .nav-link{
      display:flex;width:100%;
      padding:8px 16px;font-size:1.1rem;
      border-bottom:1px solid var(--line);border-radius:0;
      justify-content:flex-start;
    }
    .nav-link::after{display:none}
    .nav-item-compact .megamenu.mm-compact{
      position:static;width:100%;box-shadow:none;border:0;
      padding:4px 0 8px 16px;background:transparent;
      opacity:1 !important;visibility:visible !important;transform:none !important;
      transition:none !important;
    }
    .mm-compact .mm-compact-link{padding:10px 8px;font-size:.98rem}
    .nav-item.nav-cta{margin-top:14px}
    .nav-item.nav-cta .nav-link{
      justify-content:center;border-radius:10px;border-bottom:0;
    }

    /* General layout collapse */
    .hero-inner{min-height:auto;padding:30px 0 50px}
    .hero-slides{min-height:auto}
    .slide-headline{font-size:1.8rem;line-height:1.2}
    .slide-sub,.slide-lead{font-size:1rem}
    .hero-text-wrap{padding:0 16px}

    /* Stack grids that may have been left as multi-col */
    .tech-grid,.service-cards,.industries-grid,.why-grid,
    .team-row-3,.team-row-4,.team-row,
    .news-grid,.network-grid,.benefits-grid,
    .about-grid,.content-grid,.footer-grid,
    .accred-logos,.contact-grid,.form-grid,
    .pillars-grid,.callout-grid{
      grid-template-columns:1fr !important;
      gap:16px;
    }

    /* Page hero */
    .page-hero h1{font-size:1.8rem}
    .page-hero{padding:40px 0 28px}
    .page-hero .lead{font-size:1rem}
    .breadcrumb{font-size:.85rem}

    /* Section headers */
    .section-header h2,.cta-band h2,.callout h3,h2{font-size:1.55rem;line-height:1.25}

    /* Inputs */
    input,select,textarea{font-size:16px !important}  /* prevents iOS zoom on focus */

    /* Make wide elements scroll instead of overflowing the viewport */
    .specialty-list{columns:1}
    table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}

    /* Footer */
    footer{padding:30px 16px}
    .footer-grid{gap:24px}

    /* Hide decorative elements that don't make sense on small screens */
    .page-hero-video,.about-video,.scroll-down{display:none}
  }

  /* ------- SMALL PHONES (≤480px) — tighter spacing, smaller hero ------- */
  @media (max-width:480px){
    .container{padding-left:14px;padding-right:14px}
    .nav-wrap{padding:10px 0}
    .cmrs-logo-media{transform:scale(.75);transform-origin:left center}
    h1,.page-hero h1{font-size:1.5rem}
    .slide-headline{font-size:1.5rem}
    .section-header h2,.cta-band h2{font-size:1.35rem}
    h3{font-size:1.1rem}
    .lead{font-size:.95rem}
    .btn,.btn-primary{padding:12px 18px;font-size:.95rem;width:100%;text-align:center}
    .tech-card,.news-card,.team-card,.service-card{padding:18px !important}
    .nav-hamburger{width:42px;height:42px;position: fixed;right: 20px;z-index: 10002;}
    .nav-hamburger svg{width:22px;height:22px}
    nav.primary{width:88vw;padding:70px 14px 20px}
  }
