/*! core.css — shared base, loaded by every page
 * Design tokens, reset, header and nav, footer, buttons, forms and the
 * shared component library: every rule the site pages have in common.
 * Load this BEFORE a page stylesheet; page files build on these rules.
 */
:root{
    
    --paper:#FBF8F0;
    --paper-raised:#FFFFFF;
    --ink:#101722;
    --ink-soft:#57616D;
    --muted:#6B7581;
    --pine:#0F62C5;          
    --pine-deep:#0B2244;     
    --pine-pale:#E7F0FC;     
    --gold:#C7A06B;          
    --gold-deep:#9C7844;
    
    --gold-deep-text:#7E5F36;
    --gold-bright:#E4C68C;   
    --clay:#147A45;          
    --white:#FFFFFF;
    --logo-navy:#0B2244;
    --logo-teal:#0F62C5;
    --line:#E7DFC9;
    --line-deep:rgba(255,255,255,0.14);
    --radius:8px;
    --radius-lg:20px;
    --radius-xl:28px;
    --radius-pill:999px;
    
    --shadow-soft:0 1px 1px rgba(11,35,64,0.05), 0 6px 14px rgba(11,35,64,0.07), 0 26px 52px -14px rgba(11,35,64,0.14), 0 2px 5px -1px rgba(199,160,107,0.06);
    --shadow-lift:0 2px 4px rgba(11,35,64,0.13), 0 26px 48px -12px rgba(11,35,64,0.30), 0 60px 100px -30px rgba(11,35,64,0.38), 0 3px 8px -2px rgba(199,160,107,0.10);
    --shadow-xl:0 4px 10px rgba(6,17,34,0.20), 0 40px 70px -18px rgba(6,17,34,0.42), 0 90px 140px -40px rgba(6,17,34,0.46);
    --shadow-inset-hair:inset 0 0 0 1px rgba(11,35,64,0.06);
    --glow-pine:0 0 0 1px rgba(15,98,197,0.10), 0 18px 40px -12px rgba(15,98,197,0.38), 0 4px 14px -4px rgba(15,98,197,0.24);
    --glow-gold:0 0 0 1px rgba(199,160,107,0.16), 0 18px 40px -14px rgba(156,120,68,0.5);
    /* Type pairing: Montserrat carries every heading and UI label; Raleway
       carries running text. --serif / --sans keep their old names so the
       hundreds of existing var(--serif) / var(--sans) rules still resolve. */
    --font-heading: "Montserrat", "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
    --font-text: "Raleway", "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
    --serif: var(--font-heading);
    --sans: var(--font-text);
    /* Label type, not code type — see internal-polish.css section 16. */
    --mono: var(--font-heading);
  }
  *{box-sizing:border-box;}

  html{overflow-x:clip;}
  @media (prefers-reduced-motion:no-preference){ html{scroll-behavior:smooth;} }
  /* The header sticks, so an anchor jump would otherwise leave the heading it
     landed on hidden behind it. Keep this a little taller than the header:
     ~125px on desktop, ~70px once the nav collapses. */
  html{scroll-padding-top:140px;}
  @media (max-width:980px){ html{scroll-padding-top:86px;} }
  body{
    margin:0;
    overflow-x:clip;
    background:
      radial-gradient(1200px 640px at 12% -6%, rgba(15,98,197,0.05), transparent 60%),
      var(--paper);
    color:var(--ink);
    font-family:var(--font-text);
    /* Raleway has a shorter x-height than the sans it replaces, so the base
       size and leading are nudged up to keep body copy equally readable. */
    font-size:16.5px;
    line-height:1.72;
    letter-spacing:0.004em;
    -webkit-font-smoothing:antialiased;
    position:relative;
  }
  
  body::before{
    content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0.5;mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='matrix' values='0 0 0 0 0.06  0 0 0 0 0.11  0 0 0 0 0.2  0 0 0 0.028 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
    background-size:120px 120px;
  }
  header.site,main,footer{position:relative;z-index:1;}
  @media (prefers-reduced-motion:no-preference){
    .hero-banner-content{animation:heroRise 0.7s cubic-bezier(.2,.7,.2,1) both;}
    .hero-below-grid{animation:heroRise 0.7s cubic-bezier(.2,.7,.2,1) both;animation-delay:0.1s;}
  }
  @keyframes heroRise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:translateY(0);}}
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{margin:0;padding:0;list-style:none;}
  
  /* Montserrat is geometric and wide: headings take a heavier weight and
     tighter tracking than the previous serif needed, which is what keeps the
     pairing with Raleway looking deliberate rather than defaulted. */
  h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;margin:0;color:var(--ink);letter-spacing:-0.02em;line-height:1.22;font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility;}
  h1{letter-spacing:-0.028em;}
  h2{letter-spacing:-0.022em;}
  h3{font-weight:600;letter-spacing:-0.014em;line-height:1.3;}
  h4,h5,h6{font-weight:600;letter-spacing:-0.008em;line-height:1.35;}
  p,li,dd,dt,blockquote,figcaption,td,th,label,input,select,textarea{font-family:var(--font-text);}
  /* UI furniture reads as the heading face: buttons, nav, tags, eyebrows. */
  .btn,.nav-strip a,.quickbar-item strong,.section-tag,.blog-tag,.read-more,.fb-more,.fbm-label,.topbar-cta a{font-family:var(--font-heading);}
  p{margin:0;}
  .wrap{max-width:1480px;margin:0 auto;padding:0 32px;}
  section{padding:clamp(34px, 4.6vw, 64px) 0;}
  .rule{border:none;border-top:1px solid var(--line);}
  
  .reveal-el{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.16,.8,.24,1), transform .7s cubic-bezier(.16,.8,.24,1);}
  .reveal-el.is-visible{opacity:1;transform:translateY(0);}
  @media (prefers-reduced-motion:reduce){.reveal-el{opacity:1;transform:none;transition:none;}}
  .hairline-top{border-top:1px solid var(--line);}
  
  .section-head{position:relative;}

  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:15px 30px;
    font-family:var(--font-heading);font-weight:600;font-size:14.5px;letter-spacing:0.01em;
    border-radius:var(--radius-pill);
    cursor:pointer;border:1px solid transparent;position:relative;isolation:isolate;overflow:hidden;
    transition:background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.28s cubic-bezier(.2,.9,.25,1.3), box-shadow 0.28s ease;
  }
  .btn:focus-visible{outline:2px solid var(--pine);outline-offset:3px;}
  
  .btn::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,0.22),rgba(255,255,255,0) 45%);opacity:0;transition:opacity 0.18s ease;pointer-events:none;}
  .btn-primary::after,.btn-white::after,.btn-gold::after,.btn-whatsapp::after{opacity:1;}
  .btn-primary{background:linear-gradient(135deg,#1571DE,var(--pine) 55%,#0A3F86);color:var(--white);box-shadow:0 1px 0 rgba(255,255,255,0.22) inset, 0 12px 26px rgba(15,98,197,0.32);}
  .btn-primary:hover{background:linear-gradient(135deg,#1B7AF0,#0B4FA3 55%,#0A3F86);transform:translateY(-2px) scale(1.015);box-shadow:0 1px 0 rgba(255,255,255,0.22) inset, var(--glow-pine);}
  .btn-primary:active{transform:translateY(0) scale(0.99);}
  
  .btn-primary span.shine,.btn-gold span.shine{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;}
  .btn-primary::before,.btn-gold::before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,0.35),transparent);transform:skewX(-20deg);transition:left .65s cubic-bezier(.2,.7,.2,1);pointer-events:none;z-index:1;}
  .btn-primary:hover::before,.btn-gold:hover::before{left:130%;}
  .btn-outline{background:transparent;color:var(--ink);border-color:var(--ink);}
  .btn-outline:hover{background:var(--pine-deep);color:var(--white);border-color:var(--pine-deep);transform:translateY(-2px) scale(1.015);box-shadow:0 14px 30px -8px rgba(11,35,64,0.28);}
  .btn-light{background:var(--white);color:var(--pine-deep);border-color:var(--line);}
  .btn-light:hover{background:var(--pine-pale);transform:translateY(-2px);}
  .btn-white{background:#fff;color:var(--pine-deep);}
  .btn-white:hover{background:var(--pine-pale);transform:translateY(-2px);}
  .btn-sm{padding:9px 18px;font-size:13px;box-shadow:none;}
  .btn-sm.btn-primary{box-shadow:0 6px 16px rgba(15,98,197,0.25);}
  .btn-sm.btn-outline{border-color:var(--line);color:var(--ink);}
  
  .btn-sm.btn-outline:hover{background:var(--pine-deep);color:var(--white);border-color:var(--pine-deep);box-shadow:0 6px 16px rgba(11,35,64,0.14);}

  .brand-stripe{height:5px;width:100%;background:linear-gradient(90deg,#1B4F91 0%,#1B4F91 41%,#E2231A 41%,#E2231A 59%,#1B4F91 59%,#1B4F91 100%);}

  .topbar{background:var(--pine-deep);color:#FFFFFF;font-size:13.5px;}
  .topbar .wrap{max-width:1480px;display:flex;justify-content:space-between;align-items:center;padding-top:9px;padding-bottom:9px;flex-wrap:wrap;gap:8px;}
  .topbar a{opacity:0.92;}
  .topbar a:hover{opacity:1;text-decoration:underline;}
  .topbar-right{display:flex;align-items:center;gap:14px;}
  .topbar-contacts{display:flex;gap:16px;flex-wrap:wrap;align-items:center;}
  .topbar-contacts a{display:inline-flex;align-items:center;gap:6px;}
  .topbar-links{display:flex;gap:12px;flex-wrap:wrap;padding-left:14px;border-left:1px solid rgba(255,255,255,0.25);}
  .topbar-links a{opacity:0.85;font-weight:500;}
  .topbar-links a:hover{opacity:1;}
  @media (max-width:1320px){ .topbar-links{display:none;} }
  @media (max-width:1180px){ .header-cta a[aria-label="Call now"]{display:none;} }
  .topbar-icons{display:flex;gap:14px;align-items:center;}
  .topbar-icons a{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.14);color:#fff;font-size:13px;}
  .topbar-icons a:hover{background:rgba(255,255,255,0.28);text-decoration:none;}
  .topbar-social{display:flex;gap:8px;align-items:center;}
  .topbar-social a{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.14);}
  .topbar-social a svg{width:14px;height:14px;fill:#fff;}
  .topbar-social a:hover{background:rgba(255,255,255,0.28);}
  .topbar-cta{display:flex;}
  .topbar-cta a{background:var(--clay);color:#FFFFFF;font-weight:700;font-size:13px;padding:9px 18px;display:flex;align-items:center;gap:7px;border-right:1px solid rgba(255,255,255,0.25);white-space:nowrap;}
  .topbar-cta a:last-child{border-right:none;}
  .topbar-cta a:hover{background:#0F5E36;opacity:1;text-decoration:none;}

  .quickbar{background:var(--pine-deep);}
  /* Four equal columns, so the actions span the whole container instead of
     bunching up at the left and leaving a quarter of the bar empty. The
     ≤700px rule below drops them to a 2x2 grid. */
  .quickbar .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;padding:0 32px;gap:0;scrollbar-width:none;}
  .quickbar .wrap::-webkit-scrollbar{display:none;}
  .quickbar-item{display:flex;align-items:center;justify-content:center;gap:11px;padding:11px 18px;min-width:0;border-right:1px solid rgba(255,255,255,0.12);transition:background .16s ease;}
  .quickbar-item:last-child{border-right:none;}
  .quickbar-item > span:last-child{min-width:0;}
  .quickbar-item:hover{background:rgba(255,255,255,0.05);}
  .quickbar-item .qb-icon{width:17px;height:17px;flex:none;color:#7FC4F2;display:flex;align-items:center;justify-content:center;}
  .quickbar-item .qb-icon svg{width:100%;height:100%;}
  .quickbar-item strong{font-size:13px;color:#fff;font-weight:600;letter-spacing:-0.005em;display:block;}
  .quickbar-item strong + span{display:block;font-size:11px;font-weight:500;color:#8FAAD1;letter-spacing:0.003em;margin-top:1px;}

  .header-reviews{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;background:var(--white);border:1px solid var(--line);padding:8px 14px;border-radius:999px;box-shadow:0 1px 2px rgba(11,35,64,0.04);transition:box-shadow .16s ease, transform .16s ease;}
  .header-reviews:hover{box-shadow:0 6px 16px rgba(11,35,64,0.10);transform:translateY(-1px);}
  .header-reviews .stars{color:#C99A2E;letter-spacing:-1px;font-size:13px;}

  .scroll-progress{position:fixed;top:0;left:0;height:2.5px;width:0%;z-index:80;background:linear-gradient(90deg,var(--gold-deep),var(--gold-bright) 50%,var(--gold));box-shadow:0 0 10px rgba(231,206,154,0.5);pointer-events:none;transition:width .08s linear;}

  
  header.site{position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(199,160,107,0.35), 0 8px 24px -12px rgba(11,35,64,0.14);transition:box-shadow .25s ease;isolation:isolate;}
  header.site::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:rgb(251,248,240);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);transition:background .25s ease;}
  
  header.site.is-scrolled{box-shadow:0 1px 0 rgba(199,160,107,0.4), 0 16px 32px -14px rgba(11,35,64,0.22);}
  header.site.is-scrolled::before{background:rgb(251,248,240);}
  .nav-row{display:flex;align-items:center;justify-content:space-between;padding:11px 32px;gap:20px;}
  .logo{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-size:21px;font-weight:600;color:var(--logo-navy);}
  
  .logo img{height:38px;width:auto;mix-blend-mode:multiply;}
  .logo-fallback{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--logo-navy);letter-spacing:-0.01em;}
  
  .nav-strip{border-top:1px solid var(--line);background:var(--paper-raised);box-shadow:inset 0 6px 10px -8px rgba(11,35,64,0.10);}
  .nav-strip .wrap{max-width:1480px;padding:6px 32px;}
  nav.primary{display:flex;gap:2px;align-items:center;justify-content:center;flex-wrap:wrap;row-gap:6px;}
  nav.primary a{font-size:13.5px;font-weight:600;color:var(--logo-navy);white-space:nowrap;position:relative;padding:10px 14px;border-radius:9px;transition:background .16s ease, color .16s ease;}
  nav.primary a::after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:1.5px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .22s cubic-bezier(.2,.7,.2,1);}
  nav.primary a:hover{color:var(--pine-deep);background:rgba(15,98,197,0.06);}
  nav.primary a:hover::after{transform:scaleX(1);}
  .logo{flex-shrink:0;}
  .header-cta{flex-shrink:0;}
  .header-cta{display:flex;gap:12px;align-items:center;}
  .mobile-nav-head,.mobile-nav-foot,.mobile-nav-search{display:none;}
  .menu-toggle{
    display:none;align-items:center;justify-content:center;width:42px;height:42px;flex:none;
    background:none;border:1px solid var(--line);border-radius:11px;cursor:pointer;color:var(--ink);
    transition:background .15s ease,border-color .15s ease;
  }
  .menu-toggle:hover{background:var(--pine-pale);border-color:var(--pine-pale);}
  .menu-toggle svg{width:19px;height:19px;}
  .menu-toggle .icon-close{display:none;}
  .menu-toggle[aria-expanded="true"] .icon-open{display:none;}
  .menu-toggle[aria-expanded="true"] .icon-close{display:block;}

  .search-toggle{background:none;border:1px solid var(--line);color:var(--ink);width:38px;height:38px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:background .16s ease, color .16s ease, border-color .16s ease;}
  .search-toggle:hover{background:var(--pine-deep);color:#fff;border-color:var(--pine-deep);}
  .site-search-overlay{position:fixed;inset:0;background:rgba(11,20,33,0.82);backdrop-filter:blur(2px);z-index:1000;display:none;align-items:center;justify-content:center;padding:24px;}
  .site-search-overlay.open{display:flex;}
  .search-overlay-form{display:flex;align-items:center;gap:20px;width:100%;max-width:900px;border-bottom:2px solid rgba(255,255,255,0.55);padding-bottom:14px;}
  .search-overlay-input{flex:1;background:none;border:none;outline:none;color:#fff;font-family:var(--serif);font-size:32px;font-weight:600;letter-spacing:-0.01em;}
  .search-overlay-input::placeholder{color:rgba(255,255,255,0.55);font-family:var(--sans);font-size:20px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;}
  .search-overlay-submit{background:none;border:none;color:#fff;cursor:pointer;flex:none;display:inline-flex;padding:4px;}
  .search-overlay-submit:hover{color:var(--gold);}
  .search-overlay-close{position:absolute;top:24px;right:28px;background:none;border:none;color:#fff;font-size:34px;line-height:1;cursor:pointer;}
  .search-overlay-close:hover{color:var(--gold);}
  @media (max-width:640px){
    .search-overlay-input{font-size:22px;}
    .search-overlay-input::placeholder{font-size:14px;}
  }
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
  .treatment-search{
    background:linear-gradient(150deg,var(--pine-deep),#0E2C50 55%,#0A1E38);
    border-radius:var(--radius-lg,16px);padding:26px 30px;margin:0 0 20px;
    box-shadow:var(--shadow-lift);position:relative;overflow:hidden;
  }
  .treatment-search::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(460px 240px at 12% 0%, rgba(127,196,242,0.14), transparent 65%);}
  .treatment-search::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);pointer-events:none;}
  .treatment-search{border-top:2px solid transparent;background-image:linear-gradient(150deg,var(--pine-deep),#0E2C50 55%,#0A1E38),linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));background-origin:border-box;background-clip:padding-box,border-box;}
  .treatment-search h2{color:#FFFFFF;font-size:26px;text-align:center;margin-bottom:8px;position:relative;font-family:var(--serif);font-weight:600;}
  .treatment-search-sub{color:rgba(255,255,255,0.72);font-size:14.5px;text-align:center;max-width:520px;margin:0 auto 16px;line-height:1.5;position:relative;}
  .treatment-search-skip{text-align:center;font-size:13.5px;color:rgba(255,255,255,0.62);margin-top:16px;position:relative;}
  .treatment-search-skip a{color:var(--gold);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
  .treatment-search-skip a:hover{color:#D8B993;}
  .treatment-search-row{display:flex;gap:16px;flex-wrap:wrap;align-items:center;position:relative;}
  .treatment-search-field{flex:1 1 260px;min-width:220px;}
  .treatment-search-field select{
    width:100%;padding:14px 40px 14px 18px;border-radius:9px;border:1px solid transparent;
    background:#FFFFFF url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E2A52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 14px center / 16px 16px;
    color:var(--ink);font-size:14.5px;font-family:inherit;appearance:none;-webkit-appearance:none;
    box-shadow:0 1px 2px rgba(11,35,64,0.10);cursor:pointer;transition:box-shadow .15s ease;
  }
  .treatment-search-field select:hover{box-shadow:0 4px 12px rgba(11,35,64,0.18);}
  .treatment-search-field select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(191,149,112,0.28);}
  .treatment-search-submit{flex:0 0 auto;}
  .btn-gold{background:linear-gradient(135deg,#B08750,#8F6845 50%,#6E4A2E);color:#FFFFFF;border:none;padding:14px 34px;border-radius:var(--radius-pill);font-weight:700;font-size:13.5px;letter-spacing:0.04em;text-transform:uppercase;cursor:pointer;box-shadow:0 1px 0 rgba(255,255,255,0.2) inset, 0 10px 22px -6px rgba(110,74,46,0.5);transition:transform .2s cubic-bezier(.2,.9,.25,1.3),box-shadow .2s ease,background .2s ease;}
  .btn-gold:hover{transform:translateY(-2px) scale(1.015);box-shadow:0 1px 0 rgba(255,255,255,0.25) inset, var(--glow-gold);}
  @media (max-width:640px){
    .treatment-search{padding:24px 20px;}
    .treatment-search-row{flex-direction:column;align-items:stretch;}
    .btn-gold{width:100%;}
  }
  .featured-conditions{display:grid;grid-template-columns:1fr 1.6fr;gap:20px;margin-bottom:24px;}
  .fc-portrait{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/5;min-height:340px;box-shadow:var(--shadow-lift);background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);isolation:isolate;transition:box-shadow .3s ease,transform .3s ease;}
  .fc-portrait:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);}
  .fc-portrait::before{content:"";position:absolute;inset:0;z-index:2;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10);border-radius:inherit;pointer-events:none;}
  .fc-portrait img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .5s cubic-bezier(.2,.8,.2,1);}
  .fc-portrait:hover img{transform:scale(1.045);}
  .fc-portrait-label{position:relative;z-index:2;padding:24px 22px;color:#fff;background:linear-gradient(180deg,rgba(9,25,48,0.55) 0%,transparent 40%,transparent 60%,rgba(6,17,34,0.92) 100%);height:100%;display:flex;flex-direction:column;justify-content:flex-end;}
  
  .fc-portrait-label span{display:inline-flex;align-items:center;width:fit-content;background:rgba(231,206,154,0.16);border:1px solid rgba(231,206,154,0.34);backdrop-filter:blur(3px);font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#EAD9B8;padding:4px 11px;border-radius:999px;}
  .fc-portrait-label strong{display:block;font-family:var(--serif);font-size:21px;font-weight:600;margin-top:10px;letter-spacing:0.002em;}
  .fc-right{display:flex;flex-direction:column;gap:16px;}
  .fc-banner{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:20/9;min-height:200px;box-shadow:var(--shadow-lift);background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);isolation:isolate;transition:box-shadow .3s ease,transform .3s ease;}
  .fc-banner:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);}
  .fc-banner::before{content:"";position:absolute;inset:0;z-index:2;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10);border-radius:inherit;pointer-events:none;}
  .fc-banner img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .5s cubic-bezier(.2,.8,.2,1);}
  .fc-banner:hover img{transform:scale(1.04);}
  
  .fc-banner-body{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:20px 22px 20px;color:#fff;background:linear-gradient(0deg,rgba(6,17,34,0.86) 0%,rgba(6,17,34,0.55) 65%,transparent 100%);}
  .fc-kicker{display:inline-flex;align-items:center;gap:6px;background:rgba(231,206,154,0.16);border:1px solid rgba(231,206,154,0.34);backdrop-filter:blur(3px);color:#EAD9B8;font-family:var(--font-heading);font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:4px 11px;border-radius:999px;margin-bottom:10px;}
  .fc-kicker svg{width:11px;height:11px;flex:none;}
  .fc-banner-body h3{color:#fff;font-size:19px;font-weight:600;letter-spacing:0.002em;}
  .fc-banner-body a{margin-top:10px;}
  .fc-tile{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:1/1;min-height:110px;box-shadow:var(--shadow-soft);background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;transition:box-shadow .25s ease,transform .25s ease;}
  .fc-tile::before{content:"";position:absolute;inset:0;z-index:2;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10);border-radius:inherit;pointer-events:none;}
  .fc-tile:hover{box-shadow:var(--glow-pine);transform:translateY(-4px);}
  .fc-tile img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
  .fc-tile-label{position:relative;z-index:2;padding:11px 12px;color:#fff;background:linear-gradient(180deg,rgba(9,25,48,0.15) 0%,rgba(6,17,34,0.88) 100%);font-size:12px;font-weight:700;letter-spacing:0.02em;line-height:1.3;display:flex;align-items:center;gap:8px;}
  
  .fc-tile-mono{flex:none;width:22px;height:22px;border-radius:7px;background:rgba(231,206,154,0.2);color:#EAD9B8;font-family:var(--serif);font-weight:700;font-size:10px;display:flex;align-items:center;justify-content:center;}
  
  .fc-portrait img, .fc-banner img, .fc-tile img, .tab-image img{filter:contrast(1.04) saturate(1.05);}
  .fc-portrait::after, .fc-banner::after, .fc-tile::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,22,42,0) 55%,rgba(6,17,34,0.55) 100%);pointer-events:none;}
  .fc-banner::after{background:linear-gradient(200deg,rgba(8,22,42,0) 40%,rgba(6,17,34,0.6) 100%);}
  .fc-banner img{transform:scaleX(-1);}
  .fc-banner:hover img{transform:scaleX(-1) scale(1.04);}
  .fc-tile:hover img{transform:scale(1.05);}
  .fc-tile img{transition:transform .35s ease;}

  
  .fc-portrait.img-fallback::before, .fc-banner.img-fallback::before, .fc-tile.img-fallback::before{
    content:"";position:absolute;inset:0;z-index:1;
    background-image:radial-gradient(circle at 30% 25%, rgba(127,196,242,0.22), transparent 55%), radial-gradient(circle at 80% 80%, rgba(231,206,154,0.14), transparent 50%);
  }
  .fc-portrait.img-fallback::after, .fc-banner.img-fallback::after, .fc-tile.img-fallback::after{
    content:"";position:absolute;z-index:1;background:no-repeat center/contain;opacity:0.55;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237FC4F2' stroke-width='1.3'%3E%3Cpath d='M12 2l7 4v6c0 5-3.5 8-7 10-3.5-2-7-5-7-10V6l7-4z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
  }
  .fc-portrait.img-fallback::after{top:24px;right:24px;width:46px;height:46px;}
  .fc-banner.img-fallback::after{top:16px;right:16px;width:34px;height:34px;}
  .fc-tile.img-fallback::after{top:12px;right:12px;width:26px;height:26px;}
  @media (max-width:900px){
    .featured-conditions{grid-template-columns:1fr;}
    .fc-tiles{grid-template-columns:repeat(2,1fr);}
  }
  .appt-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:10px;}
  .appt-card h3{font-size:17px;margin-bottom:2px;}
  .appt-card .form-field input, .appt-card .form-field textarea{width:100%;box-sizing:border-box;}
  .qa-success{font-size:12.5px;color:var(--pine-deep);background:var(--pine-pale);padding:8px 10px;border-radius:8px;margin:0;}
  .hero{padding:0 0 0;position:relative;}
  
  .hero-banner::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:
      radial-gradient(640px 480px at 8% -10%, rgba(127,196,242,0.16), transparent 60%),
      radial-gradient(520px 420px at 100% 110%, rgba(231,206,154,0.10), transparent 55%);
  }

  
  .hero-below{position:relative;z-index:3;margin-top:28px;padding-bottom:8px;}
  .hero-below-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:24px;align-items:stretch;}
  @media (max-width:980px){ .hero-below{margin-top:24px;} .hero-below-grid{grid-template-columns:1fr;} }
  @media (max-width:640px){ .hero-below{margin-top:20px;} }

  .hero-kicker{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--pine-deep);font-weight:600;margin-bottom:16px;letter-spacing:0.02em;background:linear-gradient(135deg,var(--pine-pale),#F3E9DC 140%);border:1px solid rgba(191,149,112,0.35);padding:7px 16px 7px 13px;border-radius:999px;box-shadow:0 1px 2px rgba(11,35,64,0.05), inset 0 1px 0 rgba(255,255,255,0.6);}
  .hero-kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(191,149,112,0.22);flex:none;}
  .hero h1{font-size:clamp(32px, 3.6vw, 48px);line-height:1.14;max-width:600px;letter-spacing:-0.022em;font-weight:600;font-variation-settings:"opsz" 60;}
  .hero h1 .accent{font-style:italic;display:inline-block;padding-right:0.1em;background:linear-gradient(100deg,var(--gold-deep),var(--gold) 55%,var(--gold-bright) 115%);-webkit-background-clip:text;background-clip:text;color:transparent;}
  .hero-sub{margin-top:14px;font-size:15px;color:var(--ink-soft);max-width:500px;line-height:1.6;}
  .hero-actions{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap;}
  .hero-assurance{margin-top:10px;font-size:13px;color:var(--ink-soft);}
  .quick-facts{margin-top:0;padding:28px 28px 22px;background:linear-gradient(180deg,#FFFFFF,#FBFAF6 70%);border:1px solid rgba(199,160,107,0.22);border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);height:100%;box-sizing:border-box;display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate;}
  .quick-facts::before{content:"";position:absolute;top:0;left:0;right:0;height:2.5px;background:linear-gradient(90deg,var(--gold),#F1D9B8,var(--gold));z-index:1;}
  .quick-facts::after{content:"";position:absolute;top:-60px;right:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(199,160,107,0.10),transparent 70%);pointer-events:none;z-index:0;}
  .quick-facts li{font-size:13.5px;color:var(--ink-soft);line-height:1.5;padding:11px 0 11px 32px;position:relative;border-bottom:1px solid rgba(231,223,201,0.7);z-index:1;}
  .quick-facts li:last-of-type{border-bottom:none;}
  .quick-facts li::before{content:"";position:absolute;left:0;top:13px;width:19px;height:19px;border-radius:50%;background:linear-gradient(135deg,var(--pine),var(--pine-deep));box-shadow:0 2px 5px rgba(11,35,64,0.28);}
  .quick-facts li::after{content:"";position:absolute;left:6.5px;top:19px;width:6px;height:3.5px;border-left:1.6px solid #fff;border-bottom:1.6px solid #fff;transform:rotate(-45deg);}
  .quick-facts strong{color:var(--pine-deep);font-weight:700;letter-spacing:0.01em;}
  
  .quick-facts-foot{margin-top:auto;padding:18px 0 0!important;border-top:none!important;display:flex;flex-wrap:wrap;gap:9px;position:relative;z-index:1;}
  .quick-facts-foot::before,.quick-facts-foot::after{display:none;}
  .qf-chip{display:inline-flex;align-items:center;gap:6px;background:var(--white);color:var(--pine-deep);font-size:11.5px;font-weight:600;padding:7px 13px;border-radius:999px;line-height:1.2;white-space:nowrap;border:1px solid var(--pine-pale);box-shadow:0 1px 2px rgba(11,35,64,0.06);}
  .qf-chip svg{width:11px;height:11px;flex:none;color:var(--pine);}
  @media (max-width:480px){ .qf-chip{font-size:11px;padding:5px 9px;} }
  .hero-links{margin-top:20px;display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:16px;}

  /* Icon-badge variant (used for the Exosome therapy / Treatment benefits /
     Patient stories row) — centred pill badges with a tinted icon roundel,
     matching the premium chip/badge language used elsewhere on the page. */
  .hero-links-icons{justify-content:center;gap:14px;padding-top:22px;}
  .hero-links-icons a{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;color:var(--pine-deep);
    background:linear-gradient(180deg,#FFFFFF,#FBFAF6 70%);border:1px solid rgba(199,160,107,0.30);
    padding:8px 22px 8px 8px;border-radius:999px;letter-spacing:0.01em;
    box-shadow:0 1px 2px rgba(11,35,64,0.06),0 8px 18px -10px rgba(11,35,64,0.22);
    transition:transform .2s cubic-bezier(.2,.8,.24,1),box-shadow .2s ease,border-color .2s ease,background .2s ease;
  }
  .hero-links-icons a svg{width:15px;height:15px;flex:none;padding:8px;box-sizing:content-box;border-radius:50%;
    background:var(--pine-pale);color:var(--pine);transition:background .2s ease,color .2s ease,transform .2s ease;
  }
  .hero-links-icons a:hover{transform:translateY(-3px);border-color:var(--gold-deep);background:linear-gradient(180deg,#FFFFFF,#FBF5E8 70%);box-shadow:0 16px 30px -14px rgba(11,35,64,0.32);}
  .hero-links-icons a:hover svg{background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;transform:scale(1.06);}
  @media (max-width:480px){ .hero-links-icons{gap:10px;} .hero-links-icons a{padding:7px 16px 7px 7px;font-size:12.5px;} }

  .hero-banner .hero-links{border-top:none;padding-top:0;gap:12px;}
  .hero-banner .hero-links a{
    display:inline-flex;align-items:center;gap:8px;
    color:rgba(255,255,255,0.92);border-bottom:none;padding:9px 16px 9px 13px;
    background:rgba(255,255,255,0.08);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
    border:1px solid rgba(255,255,255,0.22);border-radius:999px;font-size:13.5px;
    transition:background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
  }
  .hero-banner .hero-links a svg{width:15px;height:15px;flex:none;color:var(--gold-bright);}
  .hero-banner .hero-links a:hover{
    background:rgba(255,255,255,0.15);border-color:rgba(240,217,160,0.6);
    transform:translateY(-2px);box-shadow:0 10px 22px -10px rgba(0,0,0,0.45);
  }

  .stat-panel{background:linear-gradient(165deg,var(--pine-deep),#0E2C50 55%,#0A1E38);border:none;padding:6px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);position:relative;isolation:isolate;overflow:hidden;height:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;}
  .stat-panel::before{content:"";position:absolute;top:0;left:0;right:0;height:2.5px;background:linear-gradient(90deg,var(--gold),#F1D9B8,var(--gold));z-index:1;}
  .stat-row{display:flex;justify-content:space-between;align-items:center;padding:11px 18px;position:relative;gap:12px;}
  .stat-row:not(:last-child)::after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(231,206,154,0.28) 20%,rgba(231,206,154,0.28) 80%,transparent);}
  .stat-icon{flex:none;width:34px;height:34px;border-radius:10px;background:rgba(127,196,242,0.14);border:1px solid rgba(127,196,242,0.22);color:#7FC4F2;display:flex;align-items:center;justify-content:center;}
  .stat-icon svg{width:17px;height:17px;}
  .stat-num{font-family:var(--serif);font-size:20px;color:#7FC4F2;font-weight:600;letter-spacing:-0.005em;margin-right:auto;padding-left:12px;}
  .stat-label{font-size:12px;color:#B9C7DC;text-align:right;max-width:145px;line-height:1.35;}

  .section-head{max-width:640px;margin-bottom:12px;}
  .section-head h2{font-size:30px;line-height:1.22;}
  .section-head p{margin-top:10px;font-size:15.5px;color:var(--ink-soft);}
  .section-tag{
    font-family:var(--serif);font-style:italic;font-size:14px;font-weight:600;color:var(--gold-deep-text);letter-spacing:0.005em;
    text-transform:none;margin-bottom:14px;display:inline-flex;align-items:center;gap:9px;
    background:linear-gradient(135deg,var(--pine-pale),#F3E9DC 140%);border:1px solid rgba(191,149,112,0.32);
    padding:6px 16px 6px 13px;border-radius:999px;box-shadow:0 1px 2px rgba(11,35,64,0.05), inset 0 1px 0 rgba(255,255,255,0.6);
  }
  .section-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(191,149,112,0.2);flex:none;display:inline-block;}
  
  .section-tag--pine{color:var(--pine);background:linear-gradient(135deg,var(--pine-pale),#DCEBFB 140%);border-color:rgba(15,98,197,0.28);}
  .section-tag--pine::before{background:var(--pine);box-shadow:0 0 0 3px rgba(15,98,197,0.18);}
  .section-tag--clay{color:var(--clay);background:linear-gradient(135deg,#E3F3EA,#D2EBDC 140%);border-color:rgba(20,122,69,0.26);}
  .section-tag--clay::before{background:var(--clay);box-shadow:0 0 0 3px rgba(20,122,69,0.18);}

  .callout{background:linear-gradient(160deg,var(--pine-deep),#0E2C50 60%,#0A1E38);color:var(--white);padding:22px 26px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);}
  .callout-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:32px;align-items:center;}
  .callout h2{color:var(--white);font-size:30px;line-height:1.32;}
  .callout p{color:#C3D2E8;margin-top:16px;font-size:16px;line-height:1.68;}
  .seal-row{display:grid;grid-template-columns:repeat(5,1fr);gap:0;}
  .seal{padding:0 18px;border-left:1px solid rgba(255,255,255,0.16);}
  .seal:first-child{border-left:none;padding-left:0;}
  .seal-mark{font-family:var(--serif);font-size:16px;font-weight:600;margin-bottom:10px;color:#7FC4F2;width:54px;height:54px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.05;border-radius:50%;border:1px solid rgba(127,196,242,0.4);box-shadow:inset 0 0 0 3px rgba(127,196,242,0.08);padding:4px;}
  .seal-title{font-size:14px;font-weight:600;}
  .seal-sub{font-size:12.5px;color:#A6B7D2;margin-top:2px;}
  
  .seal:nth-child(2) .seal-mark{color:#F0D9A0;border-color:rgba(240,217,160,0.45);box-shadow:inset 0 0 0 3px rgba(240,217,160,0.1);}
  .seal:nth-child(3) .seal-mark{color:#8FE3B8;border-color:rgba(143,227,184,0.45);box-shadow:inset 0 0 0 3px rgba(143,227,184,0.1);}
  .seal:nth-child(4) .seal-mark{color:#B9A6F2;border-color:rgba(185,166,242,0.45);box-shadow:inset 0 0 0 3px rgba(185,166,242,0.1);}
  .seal:nth-child(5) .seal-mark{color:#F2B69C;border-color:rgba(242,182,156,0.45);box-shadow:inset 0 0 0 3px rgba(242,182,156,0.1);}

  .evidence-split{display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;align-items:center;}
  .evidence-panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:28px 26px;}
  .evidence-panel-title{font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--pine);margin-bottom:18px;}
  .evidence-seal-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
  .evidence-seal{display:flex;align-items:center;gap:12px;}
  .evidence-seal .es-mark{
    font-family:var(--serif);font-size:12px;font-weight:700;color:var(--gold-deep-text);
    width:44px;height:44px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;
    text-align:center;line-height:1.05;background:linear-gradient(150deg,#FBF3E7,#F1E0C4);
    border:1px solid var(--gold);box-shadow:0 0 0 3px rgba(199,160,107,0.14), inset 0 1px 1px rgba(255,255,255,0.6);
    padding:4px;overflow:hidden;word-break:break-word;hyphens:auto;
  }
  .evidence-seal .es-text{display:flex;flex-direction:column;min-width:0;}
  .evidence-seal .es-title{display:block;font-size:13.5px;font-weight:700;color:var(--ink);}
  .evidence-seal .es-sub{display:block;font-size:12px;color:var(--ink-soft);margin-top:1px;line-height:1.35;}
  
  .evidence-seal:nth-child(2) .es-mark{color:var(--pine);background:linear-gradient(150deg,#EAF2FC,#D3E6FA);border-color:var(--pine);box-shadow:0 0 0 3px rgba(15,98,197,0.14),inset 0 1px 1px rgba(255,255,255,0.6);}
  .evidence-seal:nth-child(3) .es-mark{color:var(--clay);background:linear-gradient(150deg,#E9F5EE,#D2EBDC);border-color:var(--clay);box-shadow:0 0 0 3px rgba(20,122,69,0.14),inset 0 1px 1px rgba(255,255,255,0.6);}
  .evidence-seal:nth-child(4) .es-mark{color:var(--pine-deep);background:linear-gradient(150deg,#E9EDF4,#D3DCEB);border-color:var(--pine-deep);box-shadow:0 0 0 3px rgba(11,34,68,0.14),inset 0 1px 1px rgba(255,255,255,0.6);}
  .evidence-panel-foot{margin-top:14px;padding-top:16px;border-top:1px dashed var(--line);font-size:13px;color:var(--ink-soft);line-height:1.5;}
  @media (max-width:900px){ .evidence-split{grid-template-columns:1fr;} }

  .conditions-panel{
    background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-lg);
    box-shadow:0 24px 48px -30px rgba(11,35,64,0.28), var(--shadow-soft);padding:18px 30px 30px;margin-top:16px;
    position:relative;isolation:isolate;
  }
  .conditions-panel::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));}
  .tabs{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;background:none;border:none;border-radius:0;padding:0;margin:14px 0 18px;}
  .tab-btn{
    display:flex;align-items:center;gap:10px;width:100%;text-align:left;white-space:normal;
    font-family:var(--font-heading);font-weight:700;font-size:13px;letter-spacing:0.01em;
    background:#fff;border:1px solid var(--line);border-radius:13px;
    padding:12px 13px;cursor:pointer;box-shadow:0 1px 2px rgba(11,35,64,.05);
    color:var(--ink);transition:background .28s ease,color .28s ease,box-shadow .28s ease,transform .28s ease,border-color .28s ease;
  }
  .tab-btn .tb-mono{width:29px;height:29px;flex:none;border-radius:9px;background:var(--pine-pale);color:var(--pine-deep);font-family:var(--serif);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
  .tab-btn .tb-label{flex:1;line-height:1.25;}
  .tab-btn .tb-count{font-size:10px;font-weight:700;color:var(--ink-soft);opacity:.6;background:var(--paper-raised);border-radius:99px;padding:2px 7px;flex:none;transition:background .15s ease,color .15s ease,opacity .15s ease;}
  .tab-btn:hover{color:var(--pine-deep);border-color:var(--pine);transform:translateY(-1px);box-shadow:0 10px 20px -12px rgba(11,35,64,.3);}
  .tab-btn:hover .tb-mono{background:var(--pine-deep);color:#fff;}
  .tab-btn.active{color:#fff;background:linear-gradient(135deg,var(--pine-deep),#0E2C50);border-color:transparent;box-shadow:0 10px 20px -10px rgba(11,35,64,.5);}
  .tab-btn.active .tb-mono{background:rgba(255,255,255,.18);color:#fff;}
  .tab-btn.active .tb-count{background:rgba(255,255,255,.2);color:#fff;opacity:1;}
  @keyframes tabFadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
  .tab-panel{display:none;}
  .tab-panel.active{display:grid;grid-template-columns:0.85fr 1.45fr;gap:30px;align-items:stretch;animation:tabFadeIn .75s cubic-bezier(.16,.8,.24,1) both;}
  @media (prefers-reduced-motion:reduce){.tab-panel.active{animation:none;}}
  .tab-image{background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);overflow:hidden;border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);isolation:isolate;
    
    align-self:start;aspect-ratio:3/2;position:sticky;top:110px;}
  .tab-image::before{content:"";position:absolute;inset:0;z-index:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10);background:linear-gradient(180deg,rgba(14,44,80,0) 0%,rgba(14,44,80,0) 55%,rgba(8,22,44,0.55) 78%,rgba(4,12,26,0.92) 100%);pointer-events:none;}
  .tab-image::after{content:attr(data-label);position:absolute;left:24px;right:24px;bottom:20px;z-index:2;color:#fff;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.28;letter-spacing:0.002em;pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,0.55),0 2px 10px rgba(0,0,0,0.35);}
  .tab-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
  .condition-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;align-content:start;}
  .condition-list a{
    display:flex;align-items:center;justify-content:space-between;gap:8px;
    padding:13px 14px;border-radius:13px;background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(11,35,64,.05);
    font-size:14.5px;font-weight:700;font-family:var(--font-heading);color:var(--ink);
    transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease;
  }
  .condition-list a::after{
    content:"";width:7px;height:7px;flex-shrink:0;
    border-right:2px solid currentColor;border-top:2px solid currentColor;
    transform:rotate(45deg);opacity:0;transition:opacity .15s ease,transform .15s ease;
    margin-left:6px;
  }
  .condition-list a:hover{color:var(--pine-deep);background:#fff;border-color:var(--pine);transform:translateY(-1px);box-shadow:0 10px 20px -12px rgba(11,35,64,.3);}
  .condition-list a:hover::after{opacity:0.7;transform:rotate(45deg) translate(1px,-1px);}
  .directory-foot{margin-top:18px;display:flex;gap:14px;flex-wrap:wrap;}

  
  .jumpnav{background:var(--white);border-bottom:1px solid var(--line);}
  .jumpnav-inner{display:flex;align-items:stretch;padding:0;position:relative;}
  .jumpnav-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--white);background:var(--pine-deep);flex-shrink:0;display:flex;align-items:center;padding:0 18px;}
  
  .jumpnav-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:14px 20px 14px 16px;flex:1;min-width:0;}
  .jumpnav-inner a{flex-shrink:0;font-size:13.5px;font-weight:600;padding:7px 15px;border-radius:var(--radius-pill);background:var(--paper-raised);border:1px solid var(--line);color:var(--ink-soft);transition:background .15s ease,color .15s ease,border-color .15s ease;}
  .jumpnav-inner a:hover{background:var(--pine-pale);border-color:var(--pine);color:var(--pine-deep);}
  .jumpnav-inner a.is-active{background:var(--pine-pale);border-color:var(--pine);color:var(--pine);font-weight:700;}
  
  @media (max-width:700px){
    .jumpnav-label{padding:0 14px;}
    .jumpnav-links{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:12px 34px 12px 14px;}
    .jumpnav-links::-webkit-scrollbar{display:none;}
    .jumpnav-inner::after{content:"";position:absolute;top:0;right:0;bottom:0;width:34px;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,var(--white) 85%);pointer-events:none;}
  }
  .back-to-top.show{opacity:1;pointer-events:auto;transform:translateY(0);}
  .back-to-top:hover{background:var(--pine-pale);}
  .back-to-top svg{width:19px;height:19px;}

  

  .video-card{position:relative;}
  .verified-badge{
    position:absolute;top:12px;left:12px;z-index:3;display:inline-flex;align-items:center;gap:5px;
    background:rgba(11,35,64,0.82);backdrop-filter:blur(2px);color:#fff;font-size:11px;font-weight:700;
    letter-spacing:.03em;padding:5px 10px 5px 8px;border-radius:var(--radius-pill);
  }
  .verified-badge svg{width:12px;height:12px;flex-shrink:0;}

  .whyus{background:var(--paper);}
  .whyus-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;align-items:stretch;}
  .whyus-item{text-align:center;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:20px 16px 18px;transition:background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;}
  .whyus-item::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%) scaleX(0);width:36px;height:2px;background:var(--gold);transition:transform 0.2s ease;}
  .whyus-item:hover{background:var(--pine-pale);transform:translateY(-6px);box-shadow:var(--glow-pine);border-color:transparent;}
  .whyus-item:hover::before{transform:translateX(-50%) scaleX(1);}
  .whyus-item .wi-icon{width:42px;height:42px;margin:0 auto 6px;color:var(--pine-deep);background:linear-gradient(150deg,var(--pine-pale) 0%,#D9E8FB 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(15,98,197,0.12);transition:transform 0.2s ease, box-shadow 0.2s ease;}
  .whyus-item .wi-icon svg{width:20px;height:20px;}
  .whyus-item:hover .wi-icon{transform:translateY(-2px);}
  .whyus-item strong{display:block;font-size:14px;color:var(--ink);margin-bottom:4px;}
  .whyus-item span{font-size:12.5px;color:var(--ink-soft);line-height:1.4;display:block;}
  
  .whyus-item:nth-child(6n+1) .wi-icon{background:linear-gradient(150deg,#E7F0FC 0%,#CFE3FA 100%);color:var(--pine);}
  .whyus-item:nth-child(6n+1):hover .wi-icon{box-shadow:inset 0 0 0 1px rgba(15,98,197,0.14),0 0 0 3px rgba(15,98,197,0.22);}
  .whyus-item:nth-child(6n+1)::before{background:var(--pine);}
  .whyus-item:nth-child(6n+2) .wi-icon{background:linear-gradient(150deg,#FBF1E1 0%,#F1DFC0 100%);color:var(--gold-deep-text);}
  .whyus-item:nth-child(6n+2):hover .wi-icon{box-shadow:inset 0 0 0 1px rgba(156,120,68,0.16),0 0 0 3px rgba(199,160,107,0.30);}
  .whyus-item:nth-child(6n+2)::before{background:var(--gold);}
  .whyus-item:nth-child(6n+3) .wi-icon{background:linear-gradient(150deg,#E3F3EA 0%,#C7E7D5 100%);color:var(--clay);}
  .whyus-item:nth-child(6n+3):hover .wi-icon{box-shadow:inset 0 0 0 1px rgba(20,122,69,0.16),0 0 0 3px rgba(20,122,69,0.24);}
  .whyus-item:nth-child(6n+3)::before{background:var(--clay);}
  .whyus-item:nth-child(6n+4) .wi-icon{background:linear-gradient(150deg,#0B2244 0%,#173766 100%);color:#DCEBFB;}
  .whyus-item:nth-child(6n+4):hover .wi-icon{box-shadow:inset 0 0 0 1px rgba(11,34,68,0.3),0 0 0 3px rgba(11,34,68,0.22);}
  .whyus-item:nth-child(6n+4)::before{background:var(--pine-deep);}
  .whyus-item:nth-child(6n+5) .wi-icon{background:linear-gradient(150deg,#E7F0FC 0%,#CFE3FA 100%);color:var(--pine);}
  .whyus-item:nth-child(6n+5):hover .wi-icon{box-shadow:inset 0 0 0 1px rgba(15,98,197,0.14),0 0 0 3px rgba(15,98,197,0.22);}
  .whyus-item:nth-child(6n+5)::before{background:var(--pine);}
  .whyus-item:nth-child(6n+6) .wi-icon{background:linear-gradient(150deg,#FBF1E1 0%,#F1DFC0 100%);color:var(--gold-deep-text);}
  .whyus-item:nth-child(6n+6):hover .wi-icon{box-shadow:inset 0 0 0 1px rgba(156,120,68,0.16),0 0 0 3px rgba(199,160,107,0.30);}
  .whyus-item:nth-child(6n+6)::before{background:var(--gold);}
  @media (max-width:980px){ .whyus-grid{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:600px){ .whyus-grid{grid-template-columns:repeat(2,1fr);} }

  .cta-band{
    background:linear-gradient(150deg,var(--pine-deep),#0E2C50 55%,#0A1E38);
    border-radius:var(--radius-lg);padding:26px 28px;margin-top:18px;
    text-align:center;box-shadow:var(--shadow-lift);position:relative;overflow:hidden;
  }
  .cta-band::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(420px 220px at 85% 0%, rgba(127,196,242,0.16), transparent 65%);}
  .cta-band::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08);pointer-events:none;}
  .cta-band-label{color:#B9C7DC;font-size:12.5px;font-weight:700;letter-spacing:0.06em;margin-bottom:12px;position:relative;}
  .cta-band-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;position:relative;}
  .cta-band .btn{padding:12px 24px;}
  .cta-band .btn-white{background:#fff;color:var(--pine-deep);}
  .cta-band .btn-white:hover{background:var(--pine-pale);}
  .cta-band .btn-accent{background:var(--clay);color:#FFFFFF;}
  .cta-band .btn-accent:hover{background:#0F5E36;}
  .btn-whatsapp{background:#25D366;color:#FFFFFF;box-shadow:0 1px 0 rgba(255,255,255,0.22) inset, 0 12px 26px rgba(37,211,102,0.32);}
  .btn-whatsapp:hover{background:#1EBC59;color:#FFFFFF;transform:translateY(-1px);box-shadow:0 1px 0 rgba(255,255,255,0.22) inset, 0 16px 34px rgba(37,211,102,0.4);}
  .btn-whatsapp svg{width:16px;height:16px;flex:none;}
  .cta-band.cta-band--light{background:var(--white);box-shadow:var(--shadow-soft);}
  .cta-band.cta-band--light::before{background:radial-gradient(420px 220px at 85% 0%, rgba(191,149,112,0.10), transparent 65%);}
  .cta-band.cta-band--light::after{box-shadow:inset 0 0 0 1px var(--line);}
  .cta-band.cta-band--light .cta-band-label{color:var(--gold-deep-text,#7E5F36);}
  .cta-band.cta-band--light .btn-white{background:var(--pine-deep);color:#fff;}
  .cta-band.cta-band--light .btn-white:hover{background:#0E2C50;}
  .cta-band.cta-band--light .btn-accent{background:#fff;color:var(--ink);border:1px solid var(--line);}
  .cta-band.cta-band--light .btn-accent:hover{background:var(--paper-raised);}
  @media (max-width:600px){
    .cta-band{padding:20px 18px;}
    .cta-band-actions{flex-direction:column;}
    .cta-band .btn{justify-content:center;}
  }

  .therapy-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
  .therapy-chips a{
    font-size:14px;font-weight:500;padding:9px 18px;background:var(--white);
    border:1px solid var(--line);color:var(--ink-soft);border-radius:var(--radius-pill);
    transition:border-color .15s ease, color .15s ease, background .15s ease;
  }
  .therapy-chips a:hover{border-color:var(--pine);color:var(--pine-deep);background:var(--pine-pale);}

  .split{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:center;}
  
  .evidence-photo{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:4/3;isolation:isolate;
    box-shadow:0 30px 60px -20px rgba(3,10,24,0.5), 0 10px 22px -12px rgba(3,10,24,0.35), 0 0 0 1px rgba(231,206,154,0.3);
    background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);
  }
  .evidence-photo::before{content:"";position:absolute;inset:-24px;z-index:-1;border-radius:32px;pointer-events:none;
    background:radial-gradient(60% 60% at 50% 40%, rgba(240,217,160,0.22), transparent 72%);filter:blur(4px);
  }
  .evidence-photo::after{content:"";position:absolute;inset:0;z-index:2;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10);border-radius:inherit;pointer-events:none;}
  .evidence-photo img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;}
  
  img[src*="Stem-cell-therapy-what-are-the-benefits"]{filter:contrast(1.1) saturate(1.3) brightness(1.02) hue-rotate(-18deg);}
  .evidence-photo .evidence-photo-tint{position:absolute;inset:0;z-index:1;pointer-events:none;mix-blend-mode:soft-light;opacity:0.3;
    background:radial-gradient(65% 65% at 78% 12%, rgba(240,217,160,0.5) 0%, transparent 62%);
  }
  .evidence-photo .evidence-photo-shade{position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(0deg, rgba(4,11,24,0.55) 0%, transparent 42%);
  }
  .evidence-photo .evidence-photo-tag{position:absolute;left:16px;bottom:16px;z-index:5;color:#fff;font-size:12.5px;font-weight:600;
    background:rgba(6,16,32,0.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
    border:1px solid rgba(255,255,255,0.2);padding:8px 14px;border-radius:999px;
    display:inline-flex;align-items:center;gap:7px;letter-spacing:.01em;
    box-shadow:0 10px 22px -10px rgba(0,0,0,0.5);
  }
  .evidence-photo .evidence-photo-tag svg{width:14px;height:14px;flex:none;color:var(--gold-bright);}
  .split img{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);border:1px solid var(--line);}
  .benefit-list li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--ink-soft);}
  .benefit-list li:first-child{padding-top:0;}
  .benefit-list.compact li{padding:7px 0;font-size:13.5px;}
  .benefit-list li::before{content:"—";color:var(--pine);flex-shrink:0;font-weight:600;}

  .support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
  .support-item{display:block;padding:22px 20px;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);border:1px solid var(--line);border-top:2.5px solid transparent;transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;}
  .support-item:hover{border-top-color:var(--pine);}
  .support-item:hover{transform:translateY(-7px);box-shadow:var(--glow-pine);}
  .support-item .si-icon{width:40px;height:40px;border-radius:var(--radius);background:linear-gradient(145deg,var(--pine-pale) 0%,#D9E8FB 100%);color:var(--pine-deep);display:flex;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:inset 0 0 0 1px rgba(15,98,197,0.12);}
  .support-item .si-icon svg{width:22px;height:22px;}
  .support-item h3{font-size:17px;margin-bottom:8px;color:var(--ink);}
  .support-item p{font-size:14.5px;color:var(--ink-soft);line-height:1.55;}
  
  .support-item:nth-child(4n+1) .si-icon{background:linear-gradient(150deg,#E7F0FC 0%,#CFE3FA 100%);color:var(--pine);}
  .support-item:nth-child(4n+2) .si-icon{background:linear-gradient(150deg,#E3F3EA 0%,#C7E7D5 100%);color:var(--clay);}
  .support-item:nth-child(4n+3) .si-icon{background:linear-gradient(150deg,#FBF1E1 0%,#F1DFC0 100%);color:var(--gold-deep-text);}
  .support-item:nth-child(4n+4) .si-icon{background:linear-gradient(150deg,#0B2244 0%,#173766 100%);color:#DCEBFB;}

  .team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:stretch;}
  .team-card{display:flex;flex-direction:column;justify-content:center;padding:22px 22px;background:var(--paper-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);border:1px solid var(--line);position:relative;overflow:hidden;transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;}
  .team-card::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));transform:scaleX(0);transform-origin:left;transition:transform 0.25s ease;}
  .team-card:hover{transform:translateY(-7px);box-shadow:var(--glow-gold);border-color:var(--gold);}
  .team-card:hover::before{transform:scaleX(1);}
  .team-card .wi-icon{width:38px;height:38px;border-radius:var(--radius);background:var(--pine-pale);color:var(--pine-deep);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
  .team-card .wi-icon svg{width:22px;height:22px;}
  .team-card h3{font-size:16.5px;margin-bottom:8px;color:var(--ink);}
  .team-card p{font-size:14px;color:var(--ink-soft);line-height:1.55;}
  .team-card .team-link{display:inline-block;margin-top:12px;font-size:13.5px;font-weight:600;color:var(--pine);}
  
  .team-card:nth-child(4n+1) .wi-icon{background:linear-gradient(150deg,#E7F0FC 0%,#CFE3FA 100%);color:var(--pine);}
  .team-card:nth-child(4n+1) .team-link{color:var(--pine);}
  .team-card:nth-child(4n+2) .wi-icon{background:linear-gradient(150deg,#E3F3EA 0%,#C7E7D5 100%);color:var(--clay);}
  .team-card:nth-child(4n+2) .team-link{color:var(--clay);}
  .team-card:nth-child(4n+3) .wi-icon{background:linear-gradient(150deg,#FBF1E1 0%,#F1DFC0 100%);color:var(--gold-deep-text);}
  .team-card:nth-child(4n+3) .team-link{color:var(--gold-deep-text);}
  .team-card:nth-child(4n+4) .wi-icon{background:linear-gradient(150deg,#0B2244 0%,#173766 100%);color:#DCEBFB;}
  .team-card:nth-child(4n+4) .team-link{color:var(--pine-deep);}
  @media (max-width:980px){ .team-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:600px){ .team-grid{grid-template-columns:1fr;} }

  .explore-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:16px;}
  .explore-card{
    display:flex;flex-direction:column;padding:24px 22px 22px;background:var(--white);
    border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);
    transition:transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;position:relative;overflow:hidden;
  }
  .explore-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--pine),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .25s ease;}
  .explore-card:hover{transform:translateY(-5px);box-shadow:0 22px 42px -18px rgba(11,35,64,0.24), var(--shadow-lift);border-color:var(--pine);}
  .explore-card:hover::before{transform:scaleX(1);}
  .explore-card .ec-icon{
    width:42px;height:42px;border-radius:12px;background:var(--pine-pale);color:var(--pine-deep);
    display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:background .2s ease,color .2s ease;
  }
  .explore-card .ec-icon svg{width:20px;height:20px;}
  .explore-card:hover .ec-icon{background:var(--pine-deep);color:#fff;}
  
  .explore-card:nth-child(5n+1) .ec-icon{background:linear-gradient(150deg,#E7F0FC 0%,#CFE3FA 100%);color:var(--pine);}
  .explore-card:nth-child(5n+1) .ec-tag{color:var(--pine);}
  .explore-card:nth-child(5n+2) .ec-icon{background:linear-gradient(150deg,#E3F3EA 0%,#C7E7D5 100%);color:var(--clay);}
  .explore-card:nth-child(5n+2) .ec-tag{color:var(--clay);}
  .explore-card:nth-child(5n+3) .ec-icon{background:linear-gradient(150deg,#FBF1E1 0%,#F1DFC0 100%);color:var(--gold-deep-text);}
  .explore-card:nth-child(5n+3) .ec-tag{color:var(--gold-deep-text);}
  .explore-card:nth-child(5n+4) .ec-icon{background:linear-gradient(150deg,#0B2244 0%,#173766 100%);color:#DCEBFB;}
  .explore-card:nth-child(5n+4) .ec-tag{color:var(--pine-deep);}
  .explore-card:nth-child(5n+5) .ec-icon{background:linear-gradient(150deg,#E7F0FC 0%,#CFE3FA 100%);color:var(--pine);}
  .explore-card:nth-child(5n+5) .ec-tag{color:var(--pine);}
  .explore-card .ec-tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--pine);margin-bottom:8px;}
  .explore-card h3{font-size:16px;margin-bottom:8px;color:var(--ink);}
  .explore-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;flex:1;}
  .explore-card .ec-arrow{margin-top:14px;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--pine-deep);}
  .explore-card .ec-arrow svg{width:14px;height:14px;transition:transform .2s ease;}
  .explore-card:hover .ec-arrow svg{transform:translateX(3px);}
  @media (max-width:980px){ .explore-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:600px){ .explore-grid{grid-template-columns:1fr;} }

  .process-promise-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;}
  .process-promise-grid .col-head{margin-bottom:14px;}
  .process-promise-grid .col-head .section-tag{margin-bottom:10px;}
  .process-promise-grid .col-head h2{font-size:30px;line-height:1.15;margin-bottom:12px;}
  .process-promise-grid .col-head h2 .accent{color:var(--pine);display:block;}
  .process-promise-grid .col-head p{color:var(--ink-soft);font-size:15px;line-height:1.6;max-width:460px;}

  .promise-list{display:flex;flex-direction:column;gap:15px;margin-bottom:18px;}
  .promise-item{display:flex;gap:14px;align-items:flex-start;}
  .promise-icon{
    flex-shrink:0;width:42px;height:42px;border-radius:12px;background:var(--pine-pale);color:var(--pine-deep);
    display:flex;align-items:center;justify-content:center;
  }
  .promise-icon svg{width:20px;height:20px;}
  .promise-item h3{font-size:15.5px;margin-bottom:4px;color:var(--ink);}
  .promise-item p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;margin:0;}
  .promise-disclaimer{
    position:relative;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--pine);
    border-radius:12px;padding:16px 18px;margin-left:8px;
  }
  .promise-disclaimer p{margin:0;font-size:13px;line-height:1.65;color:var(--pine-deep);}
  @media (max-width:900px){ .process-promise-grid{grid-template-columns:1fr;gap:36px;} }

  
  .video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
  .video-card{background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft);transition:transform 0.2s ease, box-shadow 0.2s ease;border:1px solid var(--line);}
  .video-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:transparent;}
  .video-frame{position:relative;padding-top:56%;background:linear-gradient(160deg,#0E2C50,var(--pine-deep) 60%,#0A1E38);overflow:hidden;cursor:pointer;border:0;width:100%;display:block;padding-left:0;padding-right:0;}
  .video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
  .video-frame .yt-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease;}
  .video-card:hover .video-frame .yt-thumb{transform:scale(1.04);}
  .video-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,17,34,0.05) 0%,rgba(6,17,34,0.55) 100%);pointer-events:none;}
  .video-frame .yt-play{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;
    width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,0.96);
    display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(6,17,34,0.35);
    transition:transform .2s ease,background .2s ease;
  }
  .video-frame .yt-play svg{width:20px;height:20px;fill:var(--pine-deep);margin-left:3px;}
  .video-card:hover .video-frame .yt-play{transform:translate(-50%,-50%) scale(1.08);background:#fff;}
  .video-cap{padding:16px 18px;font-size:14.5px;font-weight:500;color:var(--ink-soft);border-top:1px solid var(--line);}

  .about-block{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);}
  .about-block:last-of-type{border-bottom:none;}
  .about-block.reverse .about-copy{order:2;}
  .about-block.reverse .about-img{order:1;}
  .about-eyebrow{font-size:13px;font-weight:600;color:var(--pine);margin-bottom:10px;}
  .about-copy h3{font-size:24px;margin-bottom:14px;}
  .about-copy p{color:var(--ink-soft);font-size:15.5px;}
  .about-img img{border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);width:100%;}

  .about-head{text-align:center;max-width:640px;margin:0 auto 26px;}
  .about-head .section-tag{justify-content:center;display:flex;}
  .about-head h2{font-size:33px;}
  .about-head p{margin-top:10px;color:var(--ink-soft);font-size:15.5px;}
  .about-tabnav{margin-bottom:26px;}
  .about-tab-list{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;
    background:none;border:none;border-radius:0;padding:0;
  }
  .about-tab-btn{
    display:flex;align-items:center;gap:10px;width:100%;text-align:left;white-space:normal;
    background:#fff;border:1px solid var(--line);border-radius:13px;
    font-family:var(--font-heading);font-weight:700;font-size:13px;letter-spacing:0.01em;
    color:var(--ink);padding:12px 13px;cursor:pointer;box-shadow:0 1px 2px rgba(11,35,64,.05);
    transition:background .28s ease, color .28s ease, box-shadow .28s ease, transform .28s ease, border-color .28s ease;
  }
  .about-tab-btn .atab-mono{width:29px;height:29px;flex:none;border-radius:9px;background:var(--pine-pale);color:var(--pine-deep);font-family:var(--serif);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
  .about-tab-btn .atab-label{flex:1;line-height:1.25;}
  .about-tab-btn:hover{color:var(--pine-deep);border-color:var(--pine);transform:translateY(-1px);box-shadow:0 10px 20px -12px rgba(11,35,64,.3);}
  .about-tab-btn:hover .atab-mono{background:var(--pine-deep);color:#fff;}
  .about-tab-btn.active{color:#fff;background:linear-gradient(135deg,var(--pine-deep),#0E2C50);border-color:transparent;box-shadow:0 10px 20px -10px rgba(11,35,64,.5);}
  .about-tab-btn.active .atab-mono{background:rgba(255,255,255,.18);color:#fff;}
  .about-tab-panel{display:none;grid-template-columns:1.05fr 0.95fr;gap:32px;align-items:start;}
  .about-tab-panel.active{display:grid;animation:tabFadeIn .75s cubic-bezier(.16,.8,.24,1) both;}
  @media (prefers-reduced-motion:reduce){.about-tab-panel.active{animation:none;}}
  .about-tab-copy p{color:var(--ink-soft);font-size:15.5px;line-height:1.6;margin-bottom:13px;}
  .about-tab-copy p:last-of-type{margin-bottom:0;}
  .about-quote{position:relative;border-left:none;padding:18px 26px 18px 54px;font-family:var(--serif);font-style:italic;font-weight:500;color:var(--pine-deep);background:linear-gradient(115deg,var(--pine-pale) 0%,#EEF3FA 100%);margin:24px 0;font-size:17px;line-height:1.5;border-radius:var(--radius);box-shadow:inset 3px 0 0 var(--gold);}
  .about-quote::before{content:"\201C";position:absolute;left:16px;top:2px;font-family:var(--serif);font-style:normal;font-weight:700;font-size:44px;line-height:1;color:var(--gold);opacity:0.85;}
  .about-disclaimer{
    display:flex;gap:14px;align-items:flex-start;
    background:linear-gradient(115deg,#FBF3E7 0%,#F6EAD3 100%);
    border:1px solid var(--gold);border-left:3px solid var(--gold-deep);
    padding:20px 22px;margin-top:14px;border-radius:12px;
    box-shadow:0 10px 24px -16px rgba(156,120,68,0.35);
  }
  .about-disclaimer-icon{
    flex:none;width:34px;height:34px;border-radius:50%;background:var(--white);
    display:flex;align-items:center;justify-content:center;color:var(--gold-deep);
    box-shadow:inset 0 0 0 1px rgba(156,120,68,0.25);
  }
  .about-disclaimer-icon svg{width:17px;height:17px;}
  .about-disclaimer strong{color:var(--gold-deep-text);display:block;margin-bottom:6px;font-size:13.5px;letter-spacing:0.02em;}
  .about-disclaimer p{margin:0;color:var(--ink-soft);font-size:14.5px;line-height:1.6;}
  .about-tab-img{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft);border:1px solid var(--line);background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);min-height:280px;}
  .about-tab-img img{width:100%;border-radius:var(--radius-lg);display:block;}
  .about-tab-copy h3{font-size:20px;margin-bottom:14px;color:var(--ink);}
  @media (max-width:820px){
    .about-tab-panel{grid-template-columns:1fr;}
    .about-tab-panel .about-tab-img{order:-1;}
  }

  .cert-list li{padding:10px 0;font-size:15px;color:var(--ink-soft);border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:flex-start;}
  .cert-list li:last-child{border-bottom:none;}
  .cert-list li::before{content:"✓";color:var(--white);font-weight:700;font-size:11px;background:var(--pine);width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;}

  .faq-item{border-bottom:1px solid var(--line);break-inside:avoid;border-radius:10px;transition:background .16s ease;}
  .faq-item:last-child{border-bottom:none;}
  .faq-item:hover{background:var(--paper-raised);}
  .faq-item.open{background:var(--pine-pale);}
  .faq-q{
    width:100%;text-align:left;background:none;border:none;cursor:pointer;
    padding:14px 14px;font-family:var(--serif);font-size:16.5px;font-weight:600;color:var(--ink);
    display:flex;justify-content:space-between;align-items:center;gap:16px;
  }
  .faq-q:hover{color:var(--pine-deep);}
  .faq-q .plus{
    font-family:var(--sans);font-size:15px;color:var(--pine);transition:transform 0.2s ease, background 0.2s ease, color 0.2s ease, box-shadow .2s ease;
    flex-shrink:0;width:26px;height:26px;border-radius:50%;border:1px solid var(--line);background:var(--white);
    display:flex;align-items:center;justify-content:center;
  }
  .faq-item:hover .plus{border-color:var(--pine);}
  .faq-item.open .plus{transform:rotate(45deg);background:var(--pine-deep);border-color:var(--pine-deep);color:#fff;box-shadow:0 4px 10px rgba(15,98,197,0.28);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height 0.25s ease;}
  .faq-a p{padding:0 14px 20px;color:var(--ink-soft);font-size:14.5px;line-height:1.6;max-width:560px;}
  @media (max-width:820px){
  }

  .country-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;background:var(--line);border:1px solid var(--line);}
  .country-grid a{background:var(--white);padding:16px 12px;text-align:center;font-size:14.5px;font-weight:500;color:var(--ink-soft);transition:background 0.15s ease;}
  .country-grid a:hover{background:var(--pine-pale);color:var(--pine-deep);}

  .access-stats{
    display:flex;flex-wrap:wrap;gap:0;margin:2px 0 20px;border:1px solid var(--line);
    border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-soft);overflow:hidden;
  }
  .access-stat{flex:1 1 0;min-width:150px;padding:20px 22px;position:relative;}
  .access-stat + .access-stat::before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:1px;background:var(--line);}
  .access-stat-num{display:block;font-family:var(--serif);font-size:26px;font-weight:600;color:var(--pine-deep);letter-spacing:-0.01em;line-height:1.15;}
  .access-stat-label{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:3px;}
  @media (max-width:640px){ .access-stat + .access-stat::before{display:none;} .access-stat{border-top:1px solid var(--line);} .access-stat:first-child{border-top:none;} .access-stats{flex-direction:column;} }

  .access-wrap{display:grid;grid-template-columns:1.15fr 0.85fr;gap:26px;align-items:start;margin-top:4px;}
  .access-main{
    background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);
    padding:28px 28px 26px;box-shadow:var(--shadow-soft);
  }
  .access-main-label{font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px;}
  .country-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;}
  .country-pill{
    font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ink);
    background:var(--white);border:1px solid var(--line);padding:7px 18px 7px 7px;
    border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:9px;
    box-shadow:var(--shadow-soft);transition:border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
  }
  .country-pill:hover{border-color:var(--pine);transform:translateY(-2px);box-shadow:0 10px 22px -10px rgba(15,98,197,0.35), var(--shadow-lift);color:var(--pine-deep);}
  .country-pill .flag{
    width:26px;height:26px;border-radius:50%;overflow:hidden;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    background:var(--pine-pale);border:1px solid var(--line);box-shadow:inset 0 0 0 1.5px var(--white);
  }
  .country-pill .flag img{width:100%;height:100%;object-fit:cover;display:block;}
  .country-pill .flag.emoji{font-size:14px;}
  .country-pill.more{background:var(--pine-pale);color:var(--pine-deep);font-weight:700;border-color:var(--pine-pale);box-shadow:none;padding:9px 18px;}

  .country-region{margin-top:13px;padding-top:16px;border-top:1px solid var(--line);}
  .country-region:first-of-type{margin-top:14px;}
  .country-region-label{
    font-family:var(--serif);font-style:italic;font-weight:600;font-size:13px;
    color:var(--gold-deep-text);margin-bottom:11px;letter-spacing:0.005em;
    display:flex;align-items:baseline;gap:9px;
  }
  .country-region-label::after{content:"";flex:1;height:1px;background:var(--line);align-self:center;}
  .country-pills.dense{gap:7px;margin-bottom:0;}
  .country-pills.dense .country-pill{
    padding:5px 14px 5px 5px;font-size:12.8px;gap:7px;box-shadow:none;background:var(--paper);
  }
  .country-pills.dense .country-pill .flag{width:19px;height:19px;}
  .country-pills.dense .country-pill:hover{background:var(--white);box-shadow:var(--shadow-soft);}
  .country-more-link{
    display:inline-flex;align-items:center;gap:5px;margin-top:16px;
    font-family:var(--font-heading);font-size:13px;font-weight:700;color:var(--pine);
    border-bottom:1px solid rgba(15,98,197,0.35);padding-bottom:1px;transition:color 0.15s ease, border-color 0.15s ease;
  }
  .country-more-link:hover{color:var(--pine-deep);border-color:var(--pine-deep);}

  .access-quote{
    position:relative;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--gold);
    border-radius:12px;padding:20px 22px 18px 24px;margin-bottom:16px;
  }
  .access-quote-mark{font-family:var(--serif);font-size:40px;line-height:0.5;color:var(--gold);position:absolute;top:20px;left:20px;opacity:0.55;}
  .access-quote p{font-family:var(--serif);font-size:16.5px;line-height:1.55;color:var(--ink);font-style:italic;margin:6px 0 14px 22px;}
  .access-quote-by{display:flex;align-items:center;gap:10px;margin-left:22px;}
  .access-quote-by .flag{width:26px;height:26px;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid var(--line);box-shadow:inset 0 0 0 1.5px var(--white);}
  .access-quote-by .flag img{width:100%;height:100%;object-fit:cover;display:block;}
  .access-quote-by .aq-name{font-size:13.5px;font-weight:700;color:var(--ink);display:block;}
  .access-quote-by .aq-loc{font-size:12.5px;color:var(--ink-soft);display:block;}
  .access-quote-by .stars{margin-left:auto;font-size:13px;color:var(--gold-deep-text);letter-spacing:1px;}

  .access-side{display:flex;flex-direction:column;gap:20px;}

  .access-cta{
    background:linear-gradient(155deg,#0B2A22,#123829 58%,#081F19);
    border-radius:var(--radius-lg);padding:26px 26px;box-shadow:0 24px 50px -20px rgba(8,31,25,0.5), var(--shadow-lift);color:var(--white);
    position:relative;overflow:hidden;
  }
  .access-cta::before{
    content:"";position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;
    background:radial-gradient(circle,rgba(20,122,69,0.4) 0%,rgba(20,122,69,0) 70%);
  }
  .access-cta::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg,rgba(255,255,255,0.05),transparent 40%);
  }
  .access-cta-chip{
    display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:0.04em;
    color:#BFD8F5;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.16);
    padding:5px 12px;border-radius:var(--radius-pill);margin-bottom:16px;position:relative;
  }
  .access-cta-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:#4ADE80;box-shadow:0 0 0 3px rgba(74,222,128,0.25);flex-shrink:0;}
  .access-cta h3{font-size:19px;margin-bottom:10px;color:var(--white);position:relative;}
  .access-cta p{font-family:var(--sans);font-size:14px;color:#C3D2E8;margin-bottom:20px;line-height:1.6;position:relative;}
  .access-cta-team{display:flex;align-items:center;gap:10px;margin-bottom:20px;position:relative;}
  .access-cta-team .avatars{display:flex;}
  .access-cta-team .avatars span{
    width:30px;height:30px;border-radius:50%;background:var(--pine-pale);color:var(--pine-deep);
    display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700;
    border:2px solid #123829;margin-left:-8px;font-family:var(--sans);
  }
  .access-cta-team .avatars span:first-child{margin-left:0;}
  .access-cta-team small{font-size:12px;color:#A9CFC0;}
  .access-cta .btn{width:100%;justify-content:center;margin-bottom:10px;position:relative;}
  .access-cta .btn:last-child{margin-bottom:0;}
  .access-cta .btn-white{background:#fff;color:var(--clay);}
  .access-cta .btn-white:hover{background:#E3F3EA;}
  .access-cta .btn-line-light{background:transparent;border:1.4px solid rgba(255,255,255,0.5);color:#fff;}
  .access-cta .btn-line-light:hover{background:rgba(255,255,255,0.12);}
  @media (max-width:760px){ .access-wrap{grid-template-columns:1fr;} }

  .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
  .blog-card{border:1px solid var(--line);background:var(--white);display:flex;flex-direction:column;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-soft);transition:transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;position:relative;}
  .blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--gold);}
  .blog-card img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform 0.4s ease;}
  
  .news-grid img{height:220px;aspect-ratio:auto;}
  .blog-card:hover img{transform:scale(1.045);}
  .blog-card.img-fallback::before{content:"";display:block;width:100%;aspect-ratio:16/10;background:linear-gradient(165deg,#0E2C50,var(--pine-deep) 55%,#0A1E38);}

  .case-card{background:var(--paper-raised);}
  .case-card:hover img{transform:none;}
  .blog-card-body{padding:24px;flex:1;display:flex;flex-direction:column;}
  .blog-tag{font-size:12.5px;font-weight:600;color:var(--pine);margin-bottom:10px;}
  .blog-card h3{font-size:17px;line-height:1.35;margin-bottom:12px;}
  .blog-card .read-more{margin-top:auto;font-size:14px;font-weight:600;color:var(--pine-deep);display:inline-flex;align-items:center;gap:6px;}
  .blog-card .read-more::after{content:"→";transition:transform 0.18s ease;}
  .blog-card:hover .read-more::after{transform:translateX(3px);}

  .final-cta{
    background:linear-gradient(150deg,var(--pine-deep) 0%,#123663 55%,#0A1E38 100%);
    border-top:none;border-bottom:none;position:relative;overflow:hidden;padding:38px 0;color:#fff;
  }
  .final-cta::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:1;
    background:linear-gradient(90deg,var(--gold-deep),var(--gold-bright) 50%,var(--gold));pointer-events:none;}
  .final-cta-actions{display:flex;gap:14px;flex-wrap:wrap;}
  .final-cta-trust{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.18);border-radius:var(--radius-lg);box-shadow:0 24px 44px -22px rgba(0,0,0,0.5);padding:22px 24px;position:relative;isolation:isolate;}
  .final-cta-trust::before{content:"";position:absolute;top:10px;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));}
  .final-cta-trust-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed rgba(255,255,255,0.18);}
  .final-cta-trust-row:last-child{border-bottom:none;padding-bottom:0;}
  .final-cta-trust-row:first-child{padding-top:2px;}
  .final-cta-trust-num{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--gold-bright);flex-shrink:0;width:100px;}
  .final-cta-trust-label{font-size:13px;color:rgba(255,255,255,0.85);line-height:1.4;}
  @media (max-width:900px){ .final-cta-grid{grid-template-columns:1fr;} }

  footer{background:linear-gradient(160deg,#0B2244,#123A72 55%,#081B34);color:#C3D2E8;padding:26px 0 0;font-size:14.5px;position:relative;box-shadow:0 -1px 0 rgba(255,255,255,0.06) inset;}
  
  footer::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(231,206,154,0.55),transparent);}
  /* The footer is a dense link directory and is not held to the article
     column, so it uses its own container instead of .wrap — full width, with
     the same side gutters everything else has. */
  .footer-wrap{width:100%;margin:0;padding:0 32px;}
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:24px;padding-bottom:28px;}
  .footer-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,0.14);margin-bottom:20px;}
  .footer-rating{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,0.08);padding:10px 18px;border-radius:var(--radius-pill);font-size:14px;font-weight:600;color:#fff;}
  .footer-rating .stars{color:#E7CE9A;}
  
  .footer-full-grid{display:flex;gap:40px;align-items:flex-start;padding-bottom:22px;}
  .footer-links-columns{flex:1;min-width:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0 32px;align-items:start;}
  .footer-links-columns .footer-col-group{display:flex;flex-direction:column;gap:20px;min-width:0;}
  .footer-links-columns .footer-col{margin-bottom:0;}
  .footer-reach{width:280px;flex-shrink:0;}
  .footer-full-grid .footer-col h3 a{color:inherit;}
  
  .footer-popular{padding:22px 0 24px;border-top:1px solid rgba(255,255,255,0.14);}
  .footer-popular-label{font-family:var(--serif);font-style:italic;font-size:13.5px;font-weight:600;color:#E7CE9A;margin-bottom:14px;letter-spacing:.01em;display:inline-flex;align-items:baseline;gap:10px;}
  .footer-popular-label::before{content:"";align-self:center;width:26px;height:1px;background:#E7CE9A;display:inline-block;}
  .footer-popular-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px;}
  .fp-card{display:flex;align-items:center;gap:11px;padding:10px 12px;font-size:12.6px;font-weight:600;color:#C3D2E8;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:12px;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;}
  .fp-card:hover{background:rgba(255,255,255,0.1);border-color:rgba(231,206,154,0.5);color:#fff;transform:translateY(-1px);}
  .fp-mono{width:26px;height:26px;flex:none;border-radius:8px;background:rgba(231,206,154,0.14);color:#E7CE9A;font-family:var(--serif);font-weight:700;font-size:10.5px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
  .fp-card:hover .fp-mono{background:#E7CE9A;color:#0B2244;}
  .fp-label{flex:1;line-height:1.25;}

  .trust-strip{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;padding:14px 0;border-top:1px solid rgba(255,255,255,0.14);font-size:13.5px;color:#B9C7DC;font-weight:600;}
  .trust-strip span{display:flex;align-items:center;gap:8px;}
  .trust-strip span::before{content:"✓";color:#E7CE9A;font-weight:700;}
  .footer-col h3{color:#F1E0C4;font-family:var(--serif);font-size:15.5px;font-weight:600;font-style:italic;margin-bottom:14px;letter-spacing:0.005em;padding-bottom:8px;border-bottom:1px solid rgba(231,206,154,0.25);}
  .footer-col li{padding:6px 0;transition:padding-left 0.15s ease;}
  
  .footer-more-info{column-count:1;}
  .footer-col a{transition:color 0.15s ease;}
  .footer-col a:hover{color:#E7CE9A;text-decoration:none;}
  .footer-col li:hover{padding-left:4px;}
  
  .footer-subnav{list-style:none;margin:2px 0 8px;padding-left:15px;border-left:1px solid rgba(231,206,154,0.22);}
  .footer-subnav li{padding:3px 0;}
  .footer-subnav a{font-size:12.8px;color:#93A5C2;}
  .footer-subnav a:hover{color:#E7CE9A;}
  .footer-subnav li:hover{padding-left:2px;}
  .footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
  
  .footer-logo-chip{display:inline-flex;align-items:center;background:#fff;padding:9px 16px;border-radius:var(--radius-pill);box-shadow:0 6px 18px rgba(0,0,0,0.22);}
  .footer-logo img{height:32px;width:auto;display:block;}
  .footer-logo span{font-family:var(--serif);font-size:18px;color:var(--white);font-weight:600;}
  .footer-addr p{margin-bottom:6px;color:#A9BAD4;}
  .footer-social{display:flex;gap:12px;margin-top:13px;}
  .footer-social a{width:36px;height:36px;border:1px solid rgba(255,255,255,0.26);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;}
  .footer-social a svg{width:16px;height:16px;}
  .footer-social a:hover{background:#9C7A3C;border-color:#9C7A3C;transform:translateY(-2px);}
  .footer-contact-row{display:flex;gap:12px;margin-bottom:14px;}
  .footer-contact-row .fc-icon{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;color:#E7CE9A;}
  .footer-contact-row .fc-icon svg{width:15px;height:15px;}
  .footer-contact-row div{padding-top:4px;}
  .back-to-top{color:#93A5C2;display:inline-flex;align-items:center;gap:6px;}
  .back-to-top:hover{color:#fff;}
  .disclaimer-box{border-top:1px solid rgba(255,255,255,0.14);padding:18px 0;font-size:12.5px;line-height:1.6;color:#93A5C2;}
  /* Privacy, terms and the medical disclaimer, above the copyright line. */
  .footer-legal{border-top:1px solid rgba(255,255,255,0.14);padding:16px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;}
  .footer-legal a{color:#93A5C2;text-decoration:none;transition:color .15s ease;}
  .footer-legal a:hover{color:#E7CE9A;}
  .footer-legal + .footer-bottom{border-top:0;padding-top:14px;}
  .footer-bottom{border-top:1px solid rgba(255,255,255,0.14);padding:20px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13px;color:#93A5C2;}

  .mobile-fab{display:none;}

  .desktop-fab{
    display:none;position:fixed;right:28px;bottom:28px;z-index:60;
    align-items:center;gap:12px;background:var(--paper-raised);border:1px solid var(--line);
    border-radius:999px;padding:8px 8px 8px 20px;box-shadow:var(--shadow-lift);
    opacity:0;transform:translateY(14px) scale(0.97);pointer-events:none;
    transition:opacity .3s ease, transform .3s ease;
  }
  .desktop-fab.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
  .desktop-fab-text{display:flex;flex-direction:column;line-height:1.25;}
  .desktop-fab-text strong{font-family:var(--serif);font-size:13.5px;color:var(--ink);}
  .desktop-fab-text span{font-size:11.5px;color:var(--ink-soft);}
  .desktop-fab-actions{display:flex;align-items:center;gap:6px;}
  .desktop-fab-actions a{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .16s ease, box-shadow .16s ease;}
  .desktop-fab-actions a svg{width:17px;height:17px;}
  .desktop-fab-actions a.dfab-wa{background:#147A45;color:#fff;}
  .desktop-fab-actions a.dfab-wa:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(20,122,69,0.32);}
  .desktop-fab-actions a.dfab-eval{background:linear-gradient(135deg,#1571DE,var(--pine) 60%,#0B4FA3);color:#fff;padding:0 18px;width:auto;border-radius:999px;font-size:13px;font-weight:700;gap:7px;}
  .desktop-fab-actions a.dfab-eval:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(15,98,197,0.34);}
  .desktop-fab-close{position:absolute;top:-8px;left:-8px;width:20px;height:20px;border-radius:50%;background:var(--ink-soft);color:#fff;font-size:12px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;border:2px solid var(--paper);}
  @media (max-width:980px){ .desktop-fab{display:none !important;} }

  @media (max-width:980px){
    .callout-grid{grid-template-columns:1fr;}
    .seal-row{grid-template-columns:repeat(2,1fr);row-gap:24px;}
    .seal{border-left:none;padding-left:0;}
    .split{grid-template-columns:1fr;}
    .support-grid{grid-template-columns:repeat(2,1fr);}
    .process-promise-grid{grid-template-columns:1fr;gap:32px;}
    .tab-panel.active{grid-template-columns:1fr;}
    .conditions-panel{padding:14px 20px 22px;}
    .tab-image{position:relative;top:auto;}
    .about-block, .about-block.reverse{grid-template-columns:1fr;}
    .about-block.reverse .about-copy, .about-block.reverse .about-img{order:0;}
    .video-grid{grid-template-columns:1fr;}
    .blog-grid{grid-template-columns:1fr;}
    .country-grid{grid-template-columns:repeat(3,1fr);}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .footer-full-grid{flex-direction:column;gap:28px;}
    .footer-links-columns{grid-template-columns:repeat(3,1fr);}
    .footer-reach{width:100%;}
    .footer-popular-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));}
  }
  
  @media (max-width:1300px){
    .menu-toggle{display:flex;flex-shrink:0;}
    .nav-strip{border-top:none;}
    .nav-strip .wrap{padding:0;}
    
    .header-cta{display:none;}
    .mobile-fab{
      display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;
      background:var(--pine-deep);box-shadow:0 -8px 24px rgba(11,35,64,0.28);
    }
    .mobile-fab a{flex:1;text-align:center;padding:12px 8px 13px;color:var(--white);font-weight:600;font-size:12px;border-right:1px solid rgba(255,255,255,0.15);display:flex;flex-direction:column;align-items:center;gap:3px;}
    .mobile-fab a svg{width:19px;height:19px;}
    .mobile-fab a:last-child{border-right:none;background:var(--clay);}
    body{padding-bottom:60px;}

    nav.primary{
      display:flex !important;flex-direction:column;flex-wrap:nowrap;gap:0;
      position:fixed;top:0;right:0;bottom:0;width:min(392px,88vw);height:100dvh;
      background:var(--paper-raised);box-shadow:-24px 0 60px -12px rgba(11,35,64,0.35);
      z-index:85;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
      padding:0 0 max(20px,env(safe-area-inset-bottom));
      transform:translateX(105%);visibility:hidden;
      scrollbar-width:thin;scrollbar-color:var(--gold) transparent;
      transition:transform .34s cubic-bezier(.2,.7,.2,1), visibility 0s linear .34s;
    }
    nav.primary.is-open{transform:translateX(0);visibility:visible;transition:transform .34s cubic-bezier(.2,.7,.2,1);}
    nav.primary::-webkit-scrollbar{width:5px;}
    nav.primary::-webkit-scrollbar-thumb{background:var(--gold);border-radius:99px;}
    nav.primary::-webkit-scrollbar-track{background:transparent;}
    .nav-backdrop{
      position:fixed;inset:0;z-index:80;background:rgba(9,22,41,0.5);
      -webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);
      opacity:0;pointer-events:none;transition:opacity .28s ease;
    }
    .nav-backdrop.show{opacity:1;pointer-events:auto;}
    
    body.nav-locked{position:fixed;left:0;right:0;overflow:hidden;}

    .mobile-nav-head,.mobile-nav-foot,.mobile-nav-search{display:flex;}
    .mobile-nav-head{
      align-items:center;justify-content:space-between;gap:12px;
      padding:19px 20px 17px;flex:none;position:sticky;top:0;z-index:2;
      background:var(--paper-raised);border-bottom:1px solid var(--line);
    }
    .mobile-nav-head::before{
      content:"";position:absolute;top:0;left:0;right:0;height:3px;
      background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));
    }
    .mobile-nav-head span{font-family:var(--serif);font-weight:600;font-style:italic;font-size:16.5px;color:var(--pine-deep);}
    .mobile-nav-close{
      width:34px;height:34px;flex:none;border-radius:50%;border:1px solid var(--line);
      background:var(--paper);color:var(--ink);font-size:19px;line-height:1;cursor:pointer;
      display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,transform .15s ease;
    }
    .mobile-nav-close:hover{background:var(--pine-pale);color:var(--pine-deep);transform:rotate(90deg);}
    .mobile-nav-close:focus-visible{outline:2px solid var(--pine);outline-offset:2px;}

    nav.primary .nav-item{flex:none;width:100%;padding:0 10px;}
    nav.primary .nav-item + .nav-item{border-top:1px solid var(--line);}
    nav.primary .nav-item > a{
      display:flex;align-items:center;padding:15px 10px;font-size:14.5px;font-weight:600;
      color:var(--ink);border-radius:0;
    }
    nav.primary .nav-item.has-mega > a{padding-right:44px;position:relative;}

    .mobile-nav-foot{
      flex:none;margin-top:auto;padding:18px 20px max(18px,env(safe-area-inset-bottom));
      display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);
      background:linear-gradient(180deg,transparent,var(--pine-pale) 140%);
    }
    .mobile-nav-foot a{
      display:flex;align-items:center;justify-content:center;gap:8px;
      padding:12px 14px;border-radius:11px;font-size:13.5px;font-weight:700;white-space:nowrap;
    }
    .mobile-nav-foot a svg{width:15px;height:15px;flex:none;}
    .mobile-nav-foot a.mnf-call{background:var(--pine-pale);color:var(--pine-deep);}
    .mobile-nav-foot a.mnf-wa{background:#25D366;color:#fff;}
    .mobile-nav-foot a.mnf-eval{background:var(--pine-deep);color:#fff;}
  }
  @media (max-width:700px){
    .nav-row{flex-wrap:nowrap;}
    .header-cta{display:none;}
    .nav-strip{border-top:none;}
    .nav-strip .wrap{padding:0;}
    .quickbar .wrap{grid-template-columns:1fr 1fr;}
    .quickbar-item{justify-content:flex-start;padding:10px 14px;}
    .quickbar-item:nth-child(2n){border-right:none;}
    .quickbar-item:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,0.12);}
    .topbar-cta, .topbar-icons, .topbar-social{display:none;}
    .hero h1{font-size:28px;line-height:1.2;}
    .section-head h2{font-size:27px;}
    .condition-list{grid-template-columns:1fr;}
    .support-grid{grid-template-columns:1fr;}
    .country-grid{grid-template-columns:repeat(2,1fr);}
    .footer-grid{grid-template-columns:1fr;}
    .footer-links-columns{grid-template-columns:1fr;}
    .footer-top{flex-direction:column;align-items:flex-start;}
    .float-stack{display:none;}
    
  }
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{transition:none !important;}
  }
  :focus-visible{outline:2px solid var(--pine);outline-offset:2px;}

  .skip-link{
    position:absolute;left:-9999px;top:0;background:var(--pine-deep);color:#fff;
    padding:12px 20px;z-index:100;font-weight:600;
  }
  .skip-link:focus{left:12px;top:12px;}

  .nav-item{position:relative;flex-shrink:0;}
  .nav-item.has-mega{padding-bottom:14px;margin-bottom:-14px;}
  .nav-item.has-mega > a{display:inline-flex;align-items:center;gap:5px;}
  .nav-item.has-mega > a::before{
    content:"";width:6px;height:6px;flex-shrink:0;order:2;
    border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;
    transform:translateY(-1px) rotate(45deg);opacity:0.55;transition:transform .16s ease, opacity .16s ease;
  }
  .nav-item.has-mega:hover > a::before{opacity:0.9;transform:translateY(1px) rotate(45deg);}
  .mega-panel{
    
    pointer-events:none;
    display:none;position:absolute;top:100%;left:0;margin-top:12px;
    
    background:var(--paper);
    border:1px solid var(--line);box-shadow:var(--shadow-xl);
    padding:22px 24px 20px;z-index:60;border-radius:20px;
    
    max-height:clamp(520px, 86vh, 720px);overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;
    opacity:0;transform:translateY(6px);transition:opacity .28s ease, transform .28s ease;
    background-image:linear-gradient(180deg, rgba(15,98,197,0.035), rgba(15,98,197,0) 70px);
  }
  
  .mega-panel{
    background-image:linear-gradient(150deg, var(--pine-pale) 0%, rgba(255,255,255,0) 55%), linear-gradient(90deg, transparent, var(--gold-bright) 18%, var(--gold) 50%, var(--gold-bright) 82%, transparent);
    background-repeat:no-repeat;background-size:100% 100%, 100% 2px;background-position:0 0, 0 0;background-color:var(--paper);
  }
  .mega-panel::before{
    content:"";position:absolute;top:-10px;left:var(--arrow-x, 22px);width:11px;height:11px;
    background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);
    transform:rotate(45deg);border-radius:2px 0 0 0;
  }
  
  @media (min-width:1301px){
    .nav-item.has-mega:focus-within .mega-panel{display:block;opacity:1;transform:translateY(0);pointer-events:auto;}
    .nav-item.has-mega:focus-within .mega-panel.has-rail{display:flex;pointer-events:auto;}
    .nav-item.has-mega:focus-within .mega-panel.cols-2{display:block;column-count:2;}
    .nav-item.has-mega:focus-within .mega-panel.cols-3{display:block;column-count:3;}
    .nav-item.has-mega:focus-within .mega-panel.cols-4{display:block;column-count:4;}
  }
  .mega-panel.force-open{display:block;opacity:1;transform:translateY(0);pointer-events:auto;}
  .mega-panel.has-rail.force-open{display:flex;pointer-events:auto;}
  
  .mega-panel.cols-2.force-open{display:block;column-count:2;}
  .mega-panel.cols-3.force-open{display:block;column-count:3;}
  .mega-panel.cols-4.force-open{display:block;column-count:4;}
  .mega-panel a{display:block;padding:8px 12px;font-size:13.5px;font-weight:500;color:var(--ink-soft);line-height:1.35;border-radius:8px;break-inside:avoid;transition:background .14s ease, color .14s ease, padding-left .14s ease;}
  nav.primary .mega-panel a{white-space:normal;}
  .mega-panel a:hover{background:var(--pine-pale);color:var(--pine-deep);}
  .mega-panel > a:not(.mega-sub){font-family:var(--serif);font-weight:600;font-size:14.5px;color:var(--pine-deep);}
  .mega-panel.cols-1{display:block;width:290px;}
  
  .mega-panel.cols-2{display:block;column-count:2;column-gap:16px;column-fill:balance;width:560px;}
  .mega-panel.cols-3{display:block;column-count:3;column-gap:16px;column-fill:balance;width:860px;}
  .mega-panel.cols-4{display:block;column-count:4;column-gap:16px;column-fill:balance;width:1160px;}

  .mega-index{break-inside:avoid;grid-column:1/-1;background:linear-gradient(165deg,var(--pine-pale),#FFFFFF 75%);border:1px solid var(--line);border-radius:14px;padding:6px 8px 12px;margin:0 0 16px;box-shadow:var(--shadow-inset-hair);display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:2px 10px;}
  .mega-panel.idx-cols-1 .mega-index{grid-template-columns:1fr;}
  .mega-panel.idx-cols-2 .mega-index{grid-template-columns:1fr 1fr;}
  .mega-panel.idx-cols-3 .mega-index{grid-template-columns:1fr 1fr 1fr;}
  .mega-panel.idx-cols-4 .mega-index{grid-template-columns:1fr 1fr 1fr 1fr;}
  .mega-index-label{display:block;grid-column:1/-1;font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep-text);padding:8px 10px 6px;}
  .mega-index a{font-family:var(--sans);font-size:13px;font-weight:700;color:var(--ink);padding:12px 13px;position:relative;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 1px 2px rgba(11,35,64,.05);transition:background .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease, border-color .18s ease;}
  .mega-index-mono{width:29px;height:29px;flex:none;border-radius:9px;background:var(--pine-pale);color:var(--pine-deep);font-family:var(--serif);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
  .mega-index-label2{flex:1;line-height:1.25;}
  .mega-index a:hover{background:#fff;border-color:var(--pine);color:var(--pine-deep);transform:translateY(-1px);box-shadow:0 10px 20px -12px rgba(11,35,64,.3);}
  .mega-index a:hover .mega-index-mono{background:var(--pine-deep);color:#fff;}
  .mega-index a.mega-view-all{grid-column:1/-1;margin-top:6px;background:var(--pine-deep);color:#FFFFFF;text-align:center;justify-content:center;font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:11px 10px;border-radius:9px;border-color:transparent;box-shadow:none;}
  .mega-index a.mega-view-all:hover{background:#0E2C50;box-shadow:0 10px 22px -8px rgba(11,35,64,0.4);color:#fff;transform:none;}
  
  .mega-panel.idx-cols-1{width:300px;}
  .mega-panel.idx-cols-2{width:560px;}
  .mega-panel.idx-cols-3{width:820px;}
  .mega-panel.idx-cols-4{width:1080px;}

  .mega-group{break-inside:avoid;margin:0 6px 6px 0;}
  .mega-panel.cols-1 .mega-group + .mega-group,
  .mega-panel:not([class*="cols-"]):not(.has-rail) .mega-group + .mega-group{border-top:1px solid var(--line);margin-top:2px;padding-top:8px;}
  .mega-panel .mega-cat{display:flex;align-items:center;gap:9px;padding:10px 12px 6px;font-family:var(--serif);font-size:12.5px;font-weight:700;font-style:italic;letter-spacing:.03em;color:var(--pine-deep);break-inside:avoid;position:relative;grid-column:1/-1;}
  .mega-panel .mega-cat::before{content:"";width:15px;height:2px;flex:none;border-radius:2px;background:linear-gradient(90deg,var(--gold-deep),var(--gold-bright));}
  .mega-panel a.mega-sub{padding:6px 12px 6px 22px;font-size:13px;font-weight:400;position:relative;}
  .mega-panel a.mega-sub::before{content:"";position:absolute;left:12px;top:14px;width:4px;height:4px;border-radius:50%;background:var(--pine);opacity:.45;transition:opacity .14s ease, background .14s ease;}
  .mega-panel a.mega-sub:hover{padding-left:26px;}
  .mega-panel a.mega-sub:hover::before{opacity:1;background:var(--gold-deep);}
  .submenu-toggle{display:none;}

  .mega-panel.has-rail{flex-direction:column;width:920px;padding:18px 20px 18px;gap:0;}
  .mega-row{display:flex;align-items:stretch;gap:0;min-height:0;}
  .mega-rail{width:224px;flex:none;display:flex;flex-direction:column;gap:2px;padding:2px 16px 4px 2px;margin-right:18px;border-right:1px solid var(--line);overflow-y:auto;max-height:calc(clamp(520px, 86vh, 720px) - 130px);scroll-behavior:smooth;}
  .mega-rail-head{font-family:var(--serif);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep-text);padding:2px 10px 10px;}
  .mega-rail-btn{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:12px;padding:8px 9px;cursor:pointer;font-family:inherit;font-size:12.8px;font-weight:600;color:var(--ink-soft);transition:background .15s ease,color .15s ease;}
  .mega-rail-btn .rail-mono{width:27px;height:27px;flex:none;border-radius:9px;background:var(--pine-pale);color:var(--pine-deep);font-family:var(--serif);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
  .mega-rail-btn .rail-label{flex:1;line-height:1.25;}
  .mega-rail-btn .rail-count{font-size:10px;font-weight:700;color:var(--ink-soft);opacity:.6;background:var(--paper-raised);border-radius:99px;padding:2px 7px;flex:none;}
  .mega-rail-btn:hover{background:var(--pine-pale);color:var(--pine-deep);}
  .mega-rail-btn.is-active{background:linear-gradient(135deg,var(--pine-deep),#0E2C50);color:#fff;box-shadow:0 10px 20px -10px rgba(11,35,64,.5);}
  .mega-rail-btn.is-active .rail-mono{background:rgba(255,255,255,.18);color:#fff;}
  .mega-rail-btn.is-active .rail-count{background:rgba(255,255,255,.2);color:#fff;opacity:1;}

  .mega-content{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0;}
  .mega-search{position:relative;margin-bottom:12px;flex:none;}
  .mega-search input{width:100%;border:1px solid var(--line);background:var(--paper-raised);border-radius:11px;padding:9px 14px 9px 34px;font-size:12.8px;font-family:inherit;color:var(--ink);}
  .mega-search input:focus{outline:none;border-color:var(--pine);background:#fff;box-shadow:0 0 0 3px rgba(15,98,197,0.1);}
  .mega-search::before{content:"";position:absolute;left:13px;top:12px;width:11px;height:11px;border:1.6px solid var(--ink-soft);border-radius:50%;opacity:.5;pointer-events:none;}
  .mega-search::after{content:"";position:absolute;left:21px;top:22px;width:6px;height:1.6px;background:var(--ink-soft);transform:rotate(45deg);opacity:.5;pointer-events:none;}
  .mega-panel.has-rail .mega-content > .mega-group{display:none;margin:0;overflow-y:auto;max-height:calc(clamp(520px, 86vh, 720px) - 130px);scroll-behavior:smooth;}
  .mega-panel.has-rail .mega-content > .mega-group.is-active{display:block;animation:megaFadeIn .4s ease;}
  .mega-panel.has-rail .mega-group .mega-cat{display:none;}
  
  .mega-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 10px;}
  .mega-panel.has-rail a.mega-sub,
  .mega-panel.has-rail .mega-group-grid > a{display:flex;align-items:center;gap:10px;padding:12px 13px;font-size:13px;font-weight:700;font-family:var(--sans);color:var(--ink);border-radius:13px;background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(11,35,64,.05);text-decoration:none;transition:background .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,border-color .18s ease;}
  .mega-panel.has-rail a.mega-sub::before,
  .mega-panel.has-rail .mega-group-grid > a::before{display:none;}
  .mega-panel.has-rail a.mega-sub::after,
  .mega-panel.has-rail .mega-group-grid > a::after{display:none;}
  .mega-panel.has-rail a.mega-sub:hover,
  .mega-panel.has-rail .mega-group-grid > a:hover{background:#fff;border-color:var(--pine);color:var(--pine-deep);transform:translateY(-1px);box-shadow:0 10px 20px -12px rgba(11,35,64,.3);padding-left:13px;}
  .mega-panel.has-rail a.mega-sub:hover .mega-index-mono,
  .mega-panel.has-rail .mega-group-grid > a:hover .mega-index-mono{background:var(--pine-deep);color:#fff;}
  /* The label sits to the RIGHT of the mono badge, vertically centred. */
  .mega-panel.has-rail .mega-group-grid > a .mega-index-label2{flex:1;min-width:0;}
  .mega-no-results{grid-column:1/-1;font-size:12.5px;color:var(--ink-soft);padding:10px 4px;}

  .mega-overview-title{font-family:var(--serif);font-weight:700;font-size:17px;letter-spacing:-0.01em;color:var(--pine-deep);margin:0 0 6px;}
  .mega-overview-lead{font-size:12.5px;color:var(--ink-soft);line-height:1.55;margin:0 0 18px;max-width:46ch;}
  .mega-overview-tiles-head{display:block;font-family:var(--serif);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-deep-text);margin:0 0 10px;}
  .mega-overview-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px 14px;}
  .mega-overview-tiles .mega-rail-btn{
    width:auto;padding:13px 14px;border:1px solid var(--line);border-radius:13px;
    background:#fff;box-shadow:0 1px 2px rgba(11,35,64,.05);
    transition:background .15s ease,box-shadow .15s ease,transform .15s ease,border-color .15s ease;
  }
  .mega-overview-tiles .mega-rail-btn .rail-mono{width:30px;height:30px;font-size:11.5px;background:var(--pine-pale);}
  .mega-overview-tiles .mega-rail-btn .rail-label{font-family:var(--serif);font-size:13.5px;font-weight:700;color:var(--ink);}
  .mega-overview-tiles .mega-rail-btn:hover{
    background:#fff;border-color:var(--pine);transform:translateY(-1px);
    box-shadow:0 10px 20px -12px rgba(11,35,64,.3);
  }
  .mega-overview-tiles .mega-rail-btn:hover .rail-mono{background:var(--pine-deep);color:#fff;}

  .mega-cta-strip{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;flex:none;flex-wrap:wrap;}
  .mega-cta-strip span{font-size:12px;color:var(--ink-soft);line-height:1.35;max-width:280px;}
  .mega-cta-strip .mega-cta-actions{display:flex;gap:8px;flex:none;}
  .mega-cta-strip a{flex:none;font-size:12px;font-weight:700;padding:9px 15px;border-radius:10px;white-space:nowrap;transition:background .15s ease,transform .15s ease,box-shadow .15s ease;}
  .mega-cta-strip a.mega-cta-primary{color:#fff;background:var(--pine-deep);}
  .mega-cta-strip a.mega-cta-primary:hover{background:#0E2C50;transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(11,35,64,.5);}
  .mega-cta-strip a.mega-cta-ghost{color:var(--pine-deep);background:var(--pine-pale);}
  .mega-cta-strip a.mega-cta-ghost:hover{background:#e4eefb;}

  @keyframes megaFadeIn{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:translateY(0);}}

  .whatsapp-float{
    position:fixed;right:24px;bottom:24px;width:56px;height:56px;border-radius:50%;
    background:#25D366;display:flex;align-items:center;justify-content:center;
    box-shadow:0 10px 26px rgba(0,0,0,0.28);z-index:55;
  }
  .whatsapp-float:hover{background:#1ebc59;}

  .whatsapp-side-tab{
    position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:54;
    display:flex;align-items:center;gap:9px;background:#25D366;color:#fff;
    padding:13px 16px 13px 14px;border-radius:12px 0 0 12px;
    box-shadow:-6px 8px 22px rgba(0,0,0,0.22);
    max-width:44px;overflow:hidden;white-space:nowrap;
    transition:max-width .28s cubic-bezier(.2,.7,.2,1), background .16s ease;
  }
  .whatsapp-side-tab:hover{max-width:190px;background:#1ebc59;}
  .whatsapp-side-tab svg{width:20px;height:20px;flex:none;}
  .whatsapp-side-tab span{font-size:13px;font-weight:700;font-family:var(--sans);}
  @media (max-width:980px){ .whatsapp-side-tab{display:none;} }

  .float-stack{position:fixed;right:24px;bottom:24px;z-index:55;display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
  .float-stack .float-btn{
    width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    box-shadow:0 10px 26px rgba(0,0,0,0.28);transition:transform .15s ease, background .15s ease;
  }
  .float-stack .float-btn:hover{transform:translateY(-2px);}
  .float-call{background:var(--pine-deep);}
  .float-call:hover{background:#0a1e38;}
  .float-whatsapp{background:var(--clay);}
  .float-whatsapp:hover{background:#0F5E36;}

  .exit-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;}
  .exit-modal-backdrop{position:absolute;inset:0;background:rgba(11,34,68,0.55);backdrop-filter:blur(2px);}
  .exit-modal-card{position:relative;max-width:420px;width:100%;background:var(--paper-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:32px 28px 28px;text-align:left;animation:exitModalIn 0.25s ease;}
  @keyframes exitModalIn{from{opacity:0;transform:translateY(12px) scale(0.98);}to{opacity:1;transform:translateY(0) scale(1);}}
  .exit-modal-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border:none;background:var(--pine-pale);color:var(--pine-deep);border-radius:50%;font-size:18px;line-height:1;cursor:pointer;}
  
  .exit-modal-close::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%);color:#000;}
  .exit-modal-tag{font-family:var(--sans);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--pine);margin-bottom:8px;}
  .exit-modal-card .exit-modal-title{font-family:var(--serif);font-size:22px;line-height:1.25;color:var(--ink);margin:0 0 10px;font-weight:600;}
  .exit-modal-card p{font-family:var(--sans);font-size:14px;line-height:1.55;color:var(--ink-soft);margin:0 0 20px;}
  @media (max-width:640px){ .exit-modal{display:none !important;} } 
  .chat-widget{position:fixed;right:24px;bottom:156px;z-index:56;display:flex;flex-direction:column;align-items:flex-end;gap:14px;}
  .chat-msg{
    position:relative;max-width:250px;background:var(--white);border-radius:14px;
    padding:16px 34px 16px 18px;box-shadow:0 16px 40px -12px rgba(11,35,64,0.35), var(--shadow-lift);
    opacity:0;transform:translateY(10px) scale(0.97);pointer-events:none;transition:opacity .25s ease, transform .25s ease;
  }
  .chat-widget.show .chat-msg{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
  .chat-msg::after{
    content:"";position:absolute;right:22px;bottom:-8px;width:16px;height:16px;background:var(--white);
    clip-path:polygon(0 0,100% 0,0 100%);
  }
  .chat-msg p{margin:0;font-family:var(--sans);font-size:13.5px;line-height:1.55;color:var(--ink);}
  .chat-msg-link{display:block;color:inherit;text-decoration:none;}
  .chat-msg-close{
    position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:50%;border:none;
    background:var(--paper-raised);color:var(--ink-soft);font-size:14px;line-height:1;cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;
  }
  .chat-msg-close:hover{background:var(--pine-pale);color:var(--pine-deep);}
  
  .chat-msg-close::after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%);}
  @media (max-width:760px){ .chat-widget{bottom:136px;right:16px;} }

  .lead-form{
    background:var(--white);border:1px solid var(--line);
    padding:30px 32px 24px;border-radius:20px;
    box-shadow:0 34px 70px -22px rgba(11,35,64,0.22), 0 10px 24px -12px rgba(11,35,64,0.1), 0 0 0 1px rgba(231,206,154,0.18);
    position:relative;overflow:hidden;
  }
  .lead-form::before{
    content:"";position:absolute;top:0;left:0;right:0;height:4px;
    background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));
  }
  .lead-form h3{font-size:20px;margin-bottom:4px;letter-spacing:-0.01em;font-family:var(--serif);}
  .lead-form .form-sub{color:var(--ink-soft);font-size:13px;line-height:1.5;margin-bottom:18px;}
  
  .form-progress{display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
  .form-progress-step{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--ink-soft);opacity:0.48;}
  .form-progress-step::before{content:"";width:20px;height:20px;flex:none;border-radius:50%;border:1.5px solid var(--line);background:var(--paper);}
  .form-progress-step.is-active{color:var(--pine-deep);opacity:1;}
  .form-progress-step.is-active::before{background:linear-gradient(135deg,var(--gold),var(--gold-deep));border-color:var(--gold-deep);box-shadow:0 3px 8px -2px rgba(164,124,85,0.5);}
  .form-progress-line{width:36px;height:1.5px;background:var(--line);margin:0 10px;}
  .form-step-back{display:block;margin:10px auto 0;background:none;border:none;color:var(--ink-soft);font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:underline;}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:9px;}
  .form-field.full{grid-column:1 / -1;}
  .form-field label{font-size:11.5px;font-weight:600;color:var(--ink-soft);letter-spacing:0.01em;}
  .form-field textarea{resize:vertical;min-height:44px;height:44px;line-height:1.3;font-size:13px;}
  .form-field input:focus, .form-field select:focus, .form-field textarea:focus{
    outline:none;border-color:var(--pine);background:var(--white);
    box-shadow:0 0 0 3px rgba(15,98,197,0.12);
  }
  .form-field input::placeholder, .form-field textarea::placeholder{color:#a9a297;}
  .lead-form .btn-primary{padding:13px 28px;font-size:14px;margin-top:4px;}
  .form-trust{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px dashed var(--line);}
  .form-trust span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--ink-soft);}
  .form-trust svg{width:15px;height:15px;color:var(--pine);flex-shrink:0;}
  @media (max-width:600px){ .form-trust{gap:10px 16px;} }
  .form-consent{font-size:10.5px;line-height:1.45;color:var(--ink-soft);margin-top:9px;}
  .form-success{display:none;background:var(--pine-pale);color:var(--pine-deep);padding:11px 14px;font-size:12.5px;font-weight:600;margin-top:12px;border-radius:var(--radius);}
  .form-success.show{display:block;}
  
  #evaluation{position:relative;padding:44px 0 56px;overflow:hidden;}
  #evaluation::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:
      radial-gradient(620px 420px at 10% 20%, rgba(15,98,197,0.05), transparent 60%),
      radial-gradient(560px 420px at 94% 88%, rgba(231,206,154,0.16), transparent 60%);
  }
  #evaluation .wrap{position:relative;z-index:1;}
  .evaluation-split{display:grid;grid-template-columns:0.92fr 1.08fr;gap:52px;align-items:center;}
  @media (max-width:900px){ .evaluation-split{grid-template-columns:1fr;gap:30px;} }
  .evaluation-aside{border-left:2px solid var(--gold-bright);padding-left:26px;}
  .evaluation-aside .section-tag{margin-bottom:14px;}
  .evaluation-aside h2{font-size:27px;line-height:1.28;margin-bottom:10px;}
  .evaluation-aside > p{color:var(--ink-soft);font-size:14.5px;line-height:1.62;margin-bottom:16px;max-width:440px;}
  .evaluation-aside .benefit-list{margin-bottom:0;}
  
  .evaluation-aside .benefit-list li{border-bottom:none;padding:7px 0;gap:12px;}
  .evaluation-aside .benefit-list li::before{
    content:"\2713";display:inline-flex;align-items:center;justify-content:center;
    width:19px;height:19px;margin-top:1px;border-radius:50%;flex:none;
    background:linear-gradient(135deg,var(--pine-pale),#F3E9DC 140%);
    border:1px solid rgba(191,149,112,0.4);color:var(--pine-deep);
    font-size:10.5px;font-weight:700;
  }
  
  .eval-aside-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:20px;border-top:1px dashed var(--line);}
  @media (max-width:900px){
    .evaluation-aside{text-align:center;border-left:none;padding-left:0;border-top:2px solid var(--gold-bright);padding-top:22px;}
    .evaluation-aside > p{margin-left:auto;margin-right:auto;}
    .evaluation-aside .benefit-list li{justify-content:center;}
    .eval-aside-foot{justify-content:center;}
  }

  @media (max-width:420px){
    .lead-form{padding:20px 18px 18px;}
    .form-row{grid-template-columns:1fr;}
    .form-field textarea{height:56px;}
  }

  @media (max-width:1300px){
    
    .mega-panel{
      position:static;display:none;border:none;box-shadow:none;
      padding:2px 8px 12px 8px;overflow:visible;column-count:1 !important;width:auto !important;
      background-image:none !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
      max-height:min(66vh,560px);overflow-y:auto;-webkit-overflow-scrolling:touch;
      border-radius:14px;margin:0 10px 10px;
      scrollbar-width:thin;scrollbar-color:var(--gold) transparent;
      
      background:
        linear-gradient(var(--paper) 30%, rgba(251,248,240,0)) local,
        linear-gradient(rgba(251,248,240,0), var(--paper) 70%) 0 100% local,
        linear-gradient(to bottom, rgba(11,35,64,0.14), rgba(11,35,64,0)) 0 0,
        linear-gradient(to top, rgba(11,35,64,0.14), rgba(11,35,64,0)) 0 100%;
      background-repeat:no-repeat;background-color:var(--paper);
      background-size:100% 34px, 100% 34px, 100% 12px, 100% 12px;
      background-attachment:local, local, scroll, scroll;
    }
    .mega-panel::-webkit-scrollbar{width:5px;}
    .mega-panel::-webkit-scrollbar-thumb{background:var(--gold);border-radius:99px;}
    .mega-panel::-webkit-scrollbar-track{background:transparent;}
    .mega-panel::before{display:none;}
    .mega-panel.open{display:block;animation:megaFadeIn .38s ease;pointer-events:auto;}
    
    .mega-panel.cols-1,.mega-panel.cols-2,.mega-panel.cols-3,.mega-panel.cols-4{display:none;grid-template-columns:none;}
    .mega-panel.cols-1.open,.mega-panel.cols-2.open,.mega-panel.cols-3.open,.mega-panel.cols-4.open{display:block;}
    
    .mega-panel.cols-2.open,.mega-panel.cols-3.open,.mega-panel.cols-4.open{
      column-count:2 !important;column-gap:14px;
    }
    .mega-panel.cols-2.open a,.mega-panel.cols-3.open a,.mega-panel.cols-4.open a{break-inside:avoid;}
    
    .mega-panel.force-open:not(.open){display:none;}
    .mega-panel.has-rail.force-open:not(.open){display:none;}
    .mega-panel a{padding:10px 12px;font-size:13.5px;}
    .mega-panel > a:not(.mega-sub){font-size:13.5px;}
    .mega-panel a.mega-sub{padding:9px 12px 9px 22px;}
    .mega-panel a:focus-visible{outline:2px solid var(--pine);outline-offset:-2px;border-radius:8px;}
    .nav-item.has-mega{position:relative;}
    .nav-item.has-mega > a::before{display:none;}
    .submenu-toggle{
      display:block;position:absolute;top:6px;right:6px;width:36px;height:36px;
      background:var(--paper);border:1px solid var(--line);border-radius:50%;cursor:pointer;padding:0;
      transition:background .15s ease, transform .2s ease;
    }
    .submenu-toggle::before{
      content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;
      border-right:2px solid var(--pine-deep);border-bottom:2px solid var(--pine-deep);
      transform:translate(-50%,-65%) rotate(45deg);transition:transform 0.2s ease;
    }
    .submenu-toggle[aria-expanded="true"]{background:var(--pine-pale);}
    .submenu-toggle[aria-expanded="true"]::before{transform:translate(-50%,-35%) rotate(-135deg);}
    .submenu-toggle:focus-visible{outline:2px solid var(--pine);outline-offset:2px;}

    
    .mega-panel.has-rail{width:auto !important;max-height:none;overflow:visible;padding:2px 4px 8px;background:none;}
    .mega-panel.has-rail.open{display:block;}
    .mega-row{display:block;}
    .mega-search{display:none;}
    .mega-rail{
      display:flex !important;flex-direction:row;width:auto;flex:none;max-height:none;
      overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;
      border-right:none;margin:0 0 12px;padding:2px 2px 8px;gap:8px;
      scrollbar-width:thin;scrollbar-color:var(--gold) transparent;
    }
    .mega-rail::-webkit-scrollbar{height:5px;}
    .mega-rail::-webkit-scrollbar-thumb{background:var(--gold);border-radius:99px;}
    .mega-rail-head{display:none;}
    .mega-rail-btn{flex:none;width:auto;flex-direction:row;padding:7px 13px 7px 7px;border-radius:999px;background:var(--paper-raised);border-color:var(--line);white-space:nowrap;}
    .mega-rail-btn .rail-mono{width:22px;height:22px;font-size:10px;}
    .mega-panel.has-rail .mega-content > .mega-group{display:none;margin:0;max-height:min(66vh,560px);overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:12px;}
    .mega-panel.has-rail .mega-content > .mega-group.is-active{
      display:block !important;
      scrollbar-width:thin;scrollbar-color:var(--gold) transparent;
      background:
        linear-gradient(var(--paper) 30%, rgba(251,248,240,0)) local,
        linear-gradient(rgba(251,248,240,0), var(--paper) 70%) 0 100% local,
        linear-gradient(to bottom, rgba(11,35,64,0.14), rgba(11,35,64,0)) 0 0,
        linear-gradient(to top, rgba(11,35,64,0.14), rgba(11,35,64,0)) 0 100%;
      background-repeat:no-repeat;background-color:var(--paper);
      background-size:100% 30px, 100% 30px, 100% 12px, 100% 12px;
      background-attachment:local, local, scroll, scroll;
    }
    .mega-panel.has-rail .mega-content > .mega-group::-webkit-scrollbar{width:5px;}
    .mega-panel.has-rail .mega-content > .mega-group::-webkit-scrollbar-thumb{background:var(--gold);border-radius:99px;}
    .mega-panel.has-rail .mega-group .mega-cat{display:none;}
    .mega-panel.has-rail .mega-group-grid{grid-template-columns:1fr 1fr;padding:2px 10px 8px;}
    .mega-panel.has-rail a.mega-sub{padding:9px 11px;}
    .mega-panel.has-rail .mega-content > .mega-group.is-active{padding:2px 10px 8px;}
    .mega-overview-title{font-size:15.5px;padding:2px 0 0;}
    .mega-overview-tiles{grid-template-columns:1fr 1fr;gap:8px;}
    .mega-cta-strip{flex-direction:column;align-items:flex-start;}
  }
  @media (max-width:480px){
    .mega-overview-tiles{grid-template-columns:1fr;}
  }
  .faqtab-btn .ft-ic{width:32px;height:32px;flex-shrink:0;border-radius:9px;background:linear-gradient(150deg,var(--pine-pale) 0%,#D9E8FB 100%);color:var(--pine-deep);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px rgba(15,98,197,0.12);transition:background .16s ease,color .16s ease,box-shadow .16s ease;}
  .faqtab-btn .ft-ic svg{width:16px;height:16px;}
  .faqtab-btn:hover{color:var(--pine-deep);background:var(--pine-pale);transform:translateY(-1px);box-shadow:0 6px 14px -6px rgba(11,35,64,0.16);}
  .faqtab-btn.active{color:#fff;background:linear-gradient(135deg,var(--pine-deep),#0E2C50);border-color:transparent;font-weight:700;box-shadow:0 10px 20px -10px rgba(11,35,64,.5);}
  .faqtab-btn.active .ft-ic{background:rgba(255,255,255,.18);color:#fff;}
  .faq-help-card{
    margin-top:14px;background:linear-gradient(160deg,#3A2C16,#4E3B1E 62%,#241A0C);
    border-radius:var(--radius-lg);padding:20px;color:#fff;box-shadow:0 20px 40px -18px rgba(36,26,12,0.5);
  }
  .faq-help-card h3{font-size:14.5px;margin:0 0 6px;color:#fff;}
  .faq-help-card p{font-family:var(--sans);font-size:12.5px;color:#E3D3B8;line-height:1.5;margin:0 0 14px;}
  .faq-help-card a{display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:700;background:#fff;color:var(--gold-deep-text);padding:10px;border-radius:var(--radius-pill);text-decoration:none;transition:background .15s ease;}
  .faq-help-card a:hover{background:#F3E9DC;}
  .faqtab-panel{display:none;padding-top:0;}
  .faqtab-panel.active{display:block;animation:tabFadeIn .7s cubic-bezier(.16,.8,.24,1) both;}
  @media (prefers-reduced-motion:reduce){.faqtab-panel.active{animation:none;}}

  .faq-card{
    position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);
    box-shadow:var(--shadow-lift);margin-top:0;padding:8px 30px;overflow:hidden;
  }
  .faq-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));}
  .faq-card .faqtab-panel{padding:2px 0;}

  /* ==========================================================================
     PREMIUM POLISH LAYER — visual refinement pass only.
     Nothing above this block is removed or restructured; these rules simply
     override/extend existing selectors (later wins on equal specificity) to
     add richer depth, finer typography, and more considered micro-interaction
     across the whole page. Safe to delete this block to revert to the
     original look with zero content loss.
     ========================================================================== */

  ::selection{background:var(--gold-deep);color:#fff;}
  :focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px;border-radius:4px;}
  body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
  ::-webkit-scrollbar{width:11px;height:11px;}
  ::-webkit-scrollbar-track{background:var(--paper);}
  ::-webkit-scrollbar-thumb{background:linear-gradient(var(--gold-deep),var(--gold));border-radius:99px;border:2.5px solid var(--paper);}
  ::-webkit-scrollbar-thumb:hover{background:var(--gold-deep);}

  /* Finer, more editorial heading rhythm */
  h1,h2,h3,h4{font-variation-settings:"opsz" 32;}
  .section-tag{
    letter-spacing:0.12em;font-size:11px;padding:6px 15px 6px 13px;
    background:linear-gradient(180deg,#fff,var(--paper-raised));
    box-shadow:0 1px 0 rgba(255,255,255,0.6) inset,0 1px 2px rgba(11,35,64,0.06),0 8px 18px -12px rgba(11,35,64,0.3);
    border:1px solid var(--line);
  }
  .section-tag::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold-deep);margin-right:2px;box-shadow:0 0 0 3px rgba(199,160,107,0.22);}
  .section-tag--pine::before{background:var(--pine);box-shadow:0 0 0 3px rgba(15,98,197,0.16);}
  .section-tag--clay::before{background:var(--clay);box-shadow:0 0 0 3px rgba(20,122,69,0.16);}
  .section-head h2,.about-head h2,.callout h2,.final-cta h2,.process-promise-grid .col-head h2{
    letter-spacing:-0.022em;text-wrap:balance;
  }
  .stat-num{font-variant-numeric:tabular-nums;text-shadow:0 0 22px rgba(127,196,242,0.35);}

  /* Header — subtle glass depth + finer hairline */
  .topbar{background:linear-gradient(180deg,#0D2A54,var(--pine-deep));}
  .nav-strip{
    background:rgba(255,255,255,0.86);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);
    border-bottom:1px solid var(--line);box-shadow:inset 0 6px 10px -8px rgba(11,35,64,0.10),0 1px 0 rgba(255,255,255,0.5);
  }
  .logo-fallback{background:linear-gradient(135deg,var(--logo-navy),#1B4C87 55%,var(--logo-navy));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
  nav.primary a{font-weight:700;}

  /* Buttons — richer, jewelled gradients with a crisper top highlight */
  .btn{letter-spacing:0.01em;}
  .btn-primary{background:linear-gradient(160deg,#2C86F2 0%,var(--pine) 45%,#0A3F86 100%);box-shadow:0 1px 0 rgba(255,255,255,0.35) inset,0 1px 1px rgba(6,17,34,0.5) inset,0 14px 28px -10px rgba(10,63,134,0.55);}
  .btn-primary:hover{box-shadow:0 1px 0 rgba(255,255,255,0.4) inset,0 1px 1px rgba(6,17,34,0.5) inset,var(--glow-pine);}
  .btn-gold{background:linear-gradient(160deg,#C7A06B 0%,#9C7844 55%,#6E4A2E 100%);box-shadow:0 1px 0 rgba(255,255,255,0.32) inset,0 1px 1px rgba(36,26,12,0.5) inset,0 14px 26px -8px rgba(110,74,46,0.55);}
  .btn-outline{border-width:1.5px;}
  .btn-white{box-shadow:0 1px 0 rgba(255,255,255,0.7) inset,0 10px 22px -10px rgba(11,35,64,0.28);}

  /* Cards — a touch more air, crisper hairline, deeper resting shadow */
  .fc-portrait,.fc-banner,.fc-tile,.tab-image,.stat-panel,.blog-card,.faq-card,.appt-card,.condition-list a,.tab-btn,.about-tab-img{
    transition-timing-function:cubic-bezier(.16,.8,.24,1);
  }
  .fc-portrait::before,.fc-banner::before,.fc-tile::before,.tab-image::before{
    box-shadow:inset 0 0 0 1px rgba(255,255,255,0.14),inset 0 1px 0 rgba(255,255,255,0.18);
  }
  .condition-list a,.tab-btn,.blog-card,.faq-card,.appt-card{box-shadow:0 1px 1px rgba(11,35,64,0.04),0 10px 22px -16px rgba(11,35,64,0.22);}
  .condition-list a:hover,.tab-btn:hover{box-shadow:0 1px 1px rgba(11,35,64,0.05),0 16px 30px -14px rgba(11,35,64,0.32);}

  /* Fine grain texture on the dark, image-style panels for a print-like premium finish */
  .hero-banner::after,.stat-panel::after,.callout::after,.final-cta::after,footer::after{
    content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0.05;mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  .stat-panel::after{opacity:0.04;}

  /* Footer — refined hairline + link motion */
  footer{position:relative;isolation:isolate;}
  footer::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;z-index:2;background:linear-gradient(90deg,transparent,var(--gold-bright) 50%,transparent);}
  .footer-social a:hover{box-shadow:0 8px 18px -8px rgba(156,120,68,0.55);}

  @media (prefers-reduced-motion:reduce){
    .fc-portrait,.fc-banner,.fc-tile,.tab-image,.stat-panel,.blog-card,.faq-card{transition:none;}
  }

  /* ==========================================================================
     PREMIUM POLISH LAYER II — a second, deeper pass: ambient light, ornamental
     dividers, consistent photo treatment, and richer micro-components. Purely
     additive/override, same as layer I — delete either block to roll back a
     step with zero content loss.
     ========================================================================== */

  /* Ambient light behind the hero copy for a softer, more considered depth */
  .hero-banner-content{position:relative;isolation:isolate;}
  .hero-banner-content::before{
    content:"";position:absolute;z-index:-1;top:-80px;left:-120px;width:420px;height:420px;
    background:radial-gradient(circle,rgba(127,196,242,0.20) 0%,transparent 70%);
    filter:blur(10px);pointer-events:none;
  }
  .hero-kicker{position:relative;}
  .hero-banner .hero-kicker::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold-bright);margin-right:1px;box-shadow:0 0 0 4px rgba(228,198,140,0.22),0 0 10px rgba(228,198,140,0.6);}

  /* Consistent, editorial duotone across every photographic tile so mixed
     source photos (real clinical shots, stock, patient photos) read as one
     considered art direction rather than a patchwork. */
  .fc-portrait img,.fc-banner img,.fc-tile img,.tab-image img,.video-frame img,.blog-card img,.about-img img,.about-tab-img img,.hero-banner-img{
    filter:contrast(1.06) saturate(0.96) brightness(0.99);
  }

  /* Ornamental hairline — small centred diamond mark on section dividers,
     a quiet editorial signature instead of a bare line. */
  .hairline-top{position:relative;}
  .hairline-top::before{
    content:"";position:absolute;top:-1px;left:50%;width:7px;height:7px;
    background:var(--paper);border:1px solid var(--line);transform:translate(-50%,-50%) rotate(45deg);
  }

  /* Video & blog cards — bring them up to the same premium-card language as
     the FAQ/appointment cards (top accent line, deeper hover lift). */
  .video-card,.blog-card{position:relative;isolation:isolate;box-shadow:0 1px 1px rgba(11,35,64,0.05),0 16px 34px -20px rgba(11,35,64,0.28);}
  .video-card::before,.blog-card::before{
    content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:2;
    background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));
    opacity:0;transition:opacity .25s ease;
  }
  .video-card:hover::before,.blog-card:hover::before{opacity:1;}
  .video-card:hover,.blog-card:hover{box-shadow:0 4px 10px rgba(11,35,64,0.08),0 30px 54px -22px rgba(11,35,64,0.38);}

  /* Quick-fact chips & hero utility links — slightly richer resting state */
  .qf-chip{box-shadow:0 1px 2px rgba(11,35,64,0.06),0 6px 14px -8px rgba(11,35,64,0.18);transition:transform .18s cubic-bezier(.2,.8,.24,1),box-shadow .18s ease;}
  .qf-chip:hover{transform:translateY(-1px);box-shadow:0 10px 20px -10px rgba(11,35,64,0.28);}


  /* Slightly more generous, considered button proportions */
  .btn-primary,.btn-gold,.btn-outline{padding-top:14px;padding-bottom:14px;}
  .btn-sm{padding-top:9px;padding-bottom:9px;}

  /* Mega-menu — crisper card feel */
  .mega-panel{border-radius:var(--radius-lg);box-shadow:0 1px 1px rgba(11,35,64,0.05),0 40px 70px -24px rgba(11,35,64,0.32);}

  /* Floating action buttons — a touch more jewellery, less flat disc */
  .float-stack .float-btn{box-shadow:0 10px 24px -8px rgba(11,35,64,0.4),0 1px 0 rgba(255,255,255,0.2) inset;}

  @media (prefers-reduced-motion:reduce){
    .hero-banner-content::before{display:none;}
  }

  /* ==========================================================================
     PREMIUM POLISH LAYER III — spacing rhythm, staggered reveals (wired up in
     the page script below), and the mobile nav drawer. Additive/override only.
     ========================================================================== */

  /* Mobile nav drawer — give it the same considered materials as the rest of
     the site instead of a flat white sheet. */
  @media (max-width:980px){
    nav.primary{background:linear-gradient(180deg,#FFFFFF 0%,var(--paper) 100%);}
    nav.primary::before{
      content:"";position:sticky;top:0;display:block;height:3px;z-index:3;
      background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));
    }
  }

  /* Stat rows settle in with a touch more polish once revealed */
  .stat-row{transition-property:opacity,transform;}
  .stat-panel{padding:14px 6px;}
  .stat-row{padding:8px 12px;border-radius:12px;transition:background .2s ease;}
  .stat-row:hover{background:rgba(255,255,255,0.06);}

  /* Slightly more generous card padding where text sits directly on white,
     so content doesn't feel cramped against the new, airier section rhythm */
  .appt-card,.faq-card{padding-top:22px;padding-bottom:26px;}

  /* ==========================================================================
     PREMIUM POLISH LAYER IV — an actual structural change rather than another
     shadow/gradient pass: the hero photo now sits in front of a second,
     rotated card for real layered depth (like a physical print peeking from
     behind another), and the headline scale was bumped up a notch to carry
     more editorial weight on larger screens (see the h1 rule near the top of
     this stylesheet, updated in place rather than overridden here).
     ========================================================================== */
  .hero-photo-frame::after{display:none;}
/* BUG FIX (added): this file's footer HTML uses .footer-box, .footer-link-grid,
   .footer-box-az, .footer-reach-trust and .footer-reach-links extensively (the 8
   "Diseases We Treat" category cards + Reach Us panel in the footer), but only the
   old, more generic .footer-col rules existed in this file's <style> block — none of
   those five classes had ANY matching CSS. Result: every footer category box rendered
   as plain unstyled text/icons in a flat column (no card border, background, grid
   layout, hover state, or badge/count styling). The Reach Us box was also affected:
   this file was additionally missing the .footer-col background/border/padding card
   rule and the .footer-reach gold-gradient background + top accent bar, so — despite
   also carrying the older .footer-col class — it rendered with no background tint,
   border tint or accent stripe either, just plain text on the bare footer background.
   Everything below is copied in as-is from the "Diseases Treated" page (the one file
   that had it all correctly) so the footer renders identically across all three pages. */
.footer-col{
  background:rgba(255,255,255,0.035);
  border:1px solid rgba(255,255,255,0.09);
  border-radius:14px;
  padding:18px 18px 14px;
  transition:background .2s ease,border-color .2s ease;
}
.footer-col:hover{background:rgba(255,255,255,0.055);border-color:rgba(231,206,154,0.28);}
.footer-col h3{
  padding-bottom:10px;margin-bottom:10px;
  border-bottom:1px solid rgba(231,206,154,0.22);
}
.footer-col li{padding:5px 0;}
.footer-col ul{margin:0;padding:0;list-style:none;}
.footer-subnav{margin-top:6px !important;padding-left:14px !important;border-left:1px solid rgba(255,255,255,0.1);}
.footer-reach{
  background:linear-gradient(160deg,rgba(231,206,154,0.07),rgba(255,255,255,0.03) 60%);
  border-color:rgba(231,206,154,0.22);
  position:relative;overflow:hidden;
}
.footer-reach::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--gold-deep),var(--gold-bright) 50%,var(--gold));
}
@media (max-width:900px){.footer-col{padding:16px 16px 12px;}}
/* ==========================================================================
   FOOTER — UNIFORM BOX GRID (replaces the CSS-column masonry)
   Masonry (column-count) packs boxes top-to-bottom per column, balancing
   column height automatically — but that ignores row alignment entirely,
   so boxes in the same visual row rarely end at the same edge: whichever
   column happens to be shorter reads as a stray gap while its neighbour
   runs flush. A real CSS grid fixes this at the source — every box in a
   row is stretched to match the tallest box in that row, so rows always
   close flush on every side, with zero column ever reading as "short".
   An 8th box (A–Z index) fills what would otherwise be a trailing gap in
   the last row, so the grid is a clean, complete 4x2 rectangle.
   -------------------------------------------------------------------------- */
.footer-full-grid{align-items:flex-start !important;}
.footer-link-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;
}
.footer-box{
  display:flex;flex-direction:column;
  background:linear-gradient(160deg,rgba(255,255,255,0.045),rgba(255,255,255,0.015));
  border:1px solid rgba(255,255,255,0.10);border-radius:12px;
  padding:9px 11px 8px;position:relative;overflow:hidden;height:100%;
  transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.footer-box>ul{flex:1 1 auto;}
.footer-box .fb-more{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  margin-top:7px;
  padding:6px 11px;
  border-radius:999px;
  border:1px solid rgba(231,206,154,0.32);
  background:rgba(231,206,154,0.06);
  font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.02em;
  color:var(--gold-bright);
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.footer-box .fb-more svg{width:12px;height:12px;flex:none;transition:transform .18s ease;}
.footer-box .fb-more:hover{background:linear-gradient(150deg,#E7CE9A,var(--gold-deep));color:#0B2244;border-color:transparent;transform:translateY(-1px);}
.footer-box .fb-more:hover svg{transform:translateX(3px);}
.footer-box-az{justify-content:flex-start;grid-column:span 2;height:auto;}
.footer-box-az p{flex:0 0 auto;color:#B9CAE6;font-size:13.5px;line-height:1.5;margin:0;}
.footer-box-az .fb-more{margin-top:7px;}
.footer-box::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--gold-deep),var(--gold-bright) 50%,var(--gold));
  opacity:0;transition:opacity .2s ease;
}
.footer-box:hover{background:rgba(255,255,255,0.065);border-color:rgba(231,206,154,0.32);transform:translateY(-2px);box-shadow:0 14px 26px -16px rgba(0,0,0,0.5);}
.footer-box:hover::before{opacity:1;}
.footer-box h3{
  display:flex;align-items:flex-start;gap:10px;
  padding-bottom:5px;margin-bottom:5px;
  border-bottom:1px solid rgba(231,206,154,0.22);
}
.footer-box .fb-icon{
  flex:none;width:34px;height:34px;border-radius:10px;margin-top:1px;
  background:linear-gradient(150deg,rgba(231,206,154,0.18),rgba(231,206,154,0.05));
  border:1px solid rgba(231,206,154,0.4);color:#F0D9A0;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 3px 8px -3px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.08);
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.footer-box .fb-icon svg{width:16px;height:16px;}
.footer-box:hover .fb-icon{background:linear-gradient(150deg,#E7CE9A,var(--gold-deep));color:#0B2244;transform:scale(1.05);}
.footer-box .fb-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;padding-top:0;}
.footer-box h3 a,.footer-box .fb-plain-title{
  font-family:var(--serif);font-size:16px;font-weight:600;line-height:1.28;
  color:#FFFFFF;letter-spacing:0.001em;
}
.footer-box .fb-sub{
  font-family:var(--sans);font-size:12px;font-weight:500;line-height:1.4;
  color:#B9CAE6;
}
.footer-box .fb-count{
  flex:none;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.02em;
  color:#2A1D10;background:linear-gradient(150deg,var(--gold-bright),var(--gold-deep));
  border-radius:999px;width:25px;height:25px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 3px 8px -2px rgba(156,120,68,0.5);margin-top:0;
}
.footer-box ul{margin:0;padding:0;list-style:none;}
.footer-box li{padding:3px 0;line-height:1.4;position:relative;padding-left:13px;}
.footer-box li::before{
  content:"";position:absolute;left:0;top:11px;width:5px;height:1.5px;
  background:rgba(231,206,154,0.45);transition:width .16s ease,background .16s ease;
}
.footer-box li:hover::before{width:8px;background:var(--gold-bright);}
.footer-box li a{
  font-family:var(--sans);font-size:14px;font-weight:600;color:#DCE7F9;
  transition:color .16s ease,padding-left .16s ease;
}
.footer-box li a:hover{color:var(--gold-bright);padding-left:3px;}
.footer-box .footer-subnav li{padding-left:0;}
.footer-box .footer-subnav li::before{display:none;}
.footer-box .footer-subnav a{font-size:12.5px;font-weight:500;color:#AFC0DD;}
.footer-box .footer-subnav a:hover{color:var(--gold-bright);}
.footer-box.wide{
  display:block;grid-column:1/-1;
  padding:11px 15px 10px;margin-bottom:0;
}
.footer-box.wide h3{margin-bottom:8px;}
/* A fixed grid, not a wrapping flex row: flex:1 1 170px let the cards on a
   short last row grow to two or three times the width of the ones above,
   so the block read as a ragged pile instead of a table. Equal columns keep
   every link the same size and aligned down the page. */
.fbm-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:7px 10px;align-items:stretch;}
.fbm-group-title{
  grid-column:1/-1;
  display:block;font-family:var(--sans);font-size:11px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:#F0D9A0;
  padding-bottom:4px;border-bottom:1px solid rgba(231,206,154,0.28);
}
.fbm-groups .fbm-group-title:not(:first-child){margin-top:3px;}
.fbm-card{
  display:flex;align-items:center;gap:9px;padding:6px 9px;
  font-family:var(--sans);font-size:13.5px;font-weight:600;color:#DCE7F9;
  background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);
  border-radius:9px;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
  min-width:0;
}
@media (max-width:700px){ .fbm-groups{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));} }
.fbm-card:hover{background:rgba(255,255,255,0.1);border-color:rgba(231,206,154,0.5);color:#fff;transform:translateY(-1px);}
.fbm-mono{
  width:24px;height:24px;flex:none;border-radius:6px;
  background:rgba(231,206,154,0.14);color:#E7CE9A;
  font-family:var(--serif);font-weight:700;font-size:10.5px;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s ease,color .15s ease;
}
.fbm-card:hover .fbm-mono{background:#E7CE9A;color:#0B2244;}
.fbm-label{flex:1;line-height:1.3;}
@media (max-width:640px){
  .footer-box h3 a,.footer-box .fb-plain-title{font-size:16px;}
  .footer-box li a{font-size:14.5px;}
}
@media (max-width:480px){ .fbm-groups{grid-template-columns:1fr;} }
.footer-reach{display:flex;flex-direction:column;}
@media (max-width:1180px){ .footer-box.wide{grid-column:1/-1;} }
@media (max-width:900px){ .footer-link-grid{grid-template-columns:repeat(2,1fr);} .footer-box.wide{grid-column:1/-1;} .footer-box.wide ul.two-col{columns:1;} }
@media (max-width:560px){ .footer-link-grid{grid-template-columns:1fr;} .footer-box.wide{grid-column:1/-1;} .footer-box-az{grid-column:span 1;} }

/* Reach Us card had a lot of unused space below "Get directions" once every
   footer column was stretched to equal height — filled with the same
   24-48h / 98+ / 4.9★ trust stats already used in the page's final CTA
   (reusing real, already-stated numbers rather than inventing new content),
   reinforcing trust right next to the evaluation button instead of leaving
   the space blank. */
.footer-reach-trust{margin-top:16px;padding-top:14px;border-top:1px solid rgba(231,206,154,0.18);display:flex;flex-direction:column;gap:8px;}
.footer-reach-trust .final-cta-trust-row{
  padding:10px 12px;gap:12px;border-bottom:none;
  background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);
  border-radius:10px;transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.footer-reach-trust .final-cta-trust-row:hover{background:rgba(231,206,154,0.08);border-color:rgba(231,206,154,0.3);transform:translateY(-1px);}
.footer-reach-trust .final-cta-trust-num{font-size:16px;width:52px;}
.footer-reach-trust .final-cta-trust-label{font-size:12px;color:#B9C4D6;}
.footer-reach-trust .final-cta-trust-label a{color:#E7CE9A;text-decoration:underline;text-decoration-color:rgba(231,206,154,0.4);}
a.final-cta-trust-row{text-decoration:none;cursor:pointer;}

/* -- Reach Us: Quick Links list, reusing the primary nav's top-level pages
   for on-site interlinking instead of leaving blank space under the
   address/phone block. */
.footer-reach-links{margin-top:14px;padding-top:12px;border-top:1px solid rgba(231,206,154,0.18);display:flex;flex-direction:column;gap:2px;}
.footer-reach-links h4{margin:0 0 6px;font-family:var(--serif);font-style:italic;font-size:13px;font-weight:600;color:#E7CE9A;letter-spacing:.01em;}
.footer-reach-links a{padding:3px 0;font-size:13.5px;font-weight:600;color:#DCE7F9;transition:color .16s ease,padding-left .16s ease;}
.footer-reach-links a:hover{color:var(--gold-bright);padding-left:3px;}

/* ==========================================================================
   FOOTER — CLOSE THE RIGHT-HAND GAP (desktop only)
   .footer-full-grid laid the link boxes (flex:1) beside the 270px "Reach
   Us" card as two flex siblings. Once the link side grew to 3 rows of
   boxes plus the full-width "More Info" box, "Reach Us" — a short address
   card — finished 2-3 screens earlier, leaving a tall blank strip of bare
   footer background beside the "More Info"/popular-searches sections below
   it, since a flex sibling can't be shorter than its row without leaving
   the *rest* of the column empty. Turning footer-full-grid into the actual
   grid (via display:contents on the boxes' wrapper, which drops it from
   the render tree but keeps its children as direct grid items) lets "Reach
   Us" span only the 3 rows the category boxes occupy — matching them in
   height with no leftover column — while the full-width boxes below (A-Z
   count aside, "More Info") span the entire row, including the space the
   sidebar used to claim. Scoped to >980px because the existing mobile
   layout already stacks Reach Us under the links in one column. */
@media (min-width:981px){
  .footer-full-grid{
    display:grid !important;
    grid-template-columns:repeat(4,1fr) 270px;
    align-items:stretch !important;
    row-gap:14px;column-gap:8px;
  }
  .footer-links-columns.footer-link-grid{display:contents;}
  .footer-reach{grid-column:5;grid-row:1 / span 3;width:auto;}
}

/* ==========================================================================
   MOBILE / TABLET DRAWER — refinements
   --------------------------------------------------------------------------
   Appended after the drawer rules above so it is the last word at this
   breakpoint. Same palette, type and panel as before; what changes is that
   the submenus actually show their links, and that every control is a real
   touch target.
   ========================================================================== */
@media (max-width:1300px){

  /* THE BUG, part one: .mega-panel's resting state is opacity:0 (it fades in
     on desktop via .force-open, which also sets opacity:1). In the drawer the
     open state is .open, which only set display and a 0.38s fade-in animation
     — so the panel faded in and then snapped back to fully transparent the
     moment the animation ended. Every submenu "opened" as a tall blank box. */
  .mega-panel.open{opacity:1 !important;transform:none !important;pointer-events:auto;}

  /* THE BUG, part three: nav.primary is centred horizontally for the desktop
     bar (justify-content:center), and the drawer turns it into a column
     without resetting that — so once a submenu made the column taller than
     the drawer, flex centring pushed the header, the search row and the first
     items off the TOP, where scrollTop can never reach them. Start-aligned. */
  nav.primary{justify-content:flex-start !important;align-items:stretch !important;}

  /* THE BUG, part two: a panel built as an index grid kept its desktop width
     (.idx-cols-2 = 560px, .idx-cols-4 = 1080px) and a 2-4 column grid inside
     a ~330px drawer, so its links were laid out off to the right of the panel
     and the section opened as a tall empty box. One column, panel width auto. */
  .mega-panel[class*="idx-cols-"]{width:auto !important;}
  .mega-panel .mega-index{
    grid-template-columns:1fr !important;
    width:auto !important;margin:0 0 10px;padding:6px;gap:6px;
  }
  .mega-panel .mega-index a{padding:12px 12px;}
  .mega-panel .mega-index-label{padding:8px 6px 4px;}
  .mega-panel.cols-2.open,.mega-panel.cols-3.open,.mega-panel.cols-4.open{
    column-count:1 !important;   /* two text columns at 330px is unreadable */
  }
  .mega-panel.cols-1,.mega-panel.cols-2,.mega-panel.cols-3,.mega-panel.cols-4,
  .mega-panel.has-rail{width:auto !important;}
  .mega-group-grid{grid-template-columns:1fr !important;}

  /* Drawer header: site mark on the left, a 44px close button on the right. */
  .mobile-nav-head{padding:14px 16px 13px;}
  .mobile-nav-brand{display:flex;align-items:center;}
  .mobile-nav-brand img{height:34px;width:auto;}
  .mobile-nav-brand-text{font-family:var(--font-heading);font-weight:700;font-size:15px;color:var(--pine-deep);}
  .mobile-nav-close{
    width:44px;height:44px;border-radius:50%;font-size:0;
    border:1px solid var(--line);background:var(--paper);color:var(--ink);
  }
  .mobile-nav-close svg{width:19px;height:19px;}

  /* Search: the one thing a phone visitor could not do from this menu. */
  .mobile-nav-search{
    display:flex;align-items:center;gap:10px;width:calc(100% - 24px);margin:12px 12px 4px;
    padding:13px 15px;border:1px solid var(--line);border-radius:12px;
    background:var(--paper);color:var(--ink-soft);
    font-family:var(--font-text);font-size:14px;text-align:left;cursor:pointer;
  }
  .mobile-nav-search svg{width:17px;height:17px;flex:none;color:var(--pine);}
  .mobile-nav-search:active{background:var(--pine-pale);}

  /* Rows: 52px tall, chevron a 44px target, and a clear open state so it is
     obvious which section the links below belong to. */
  nav.primary .nav-item > a{min-height:52px;padding:14px 12px;font-size:15px;}
  /* Pinned to the row, not centred on the item: once a panel opens the item
     is ~500px tall, and a centred chevron floated out over the open links. */
  .submenu-toggle{top:4px;right:8px;transform:none;width:44px;height:44px;}
  .submenu-toggle[aria-expanded="true"]{background:var(--pine-deep);border-color:var(--pine-deep);}
  .submenu-toggle[aria-expanded="true"]::before{border-right-color:#fff;border-bottom-color:#fff;}
  nav.primary .nav-item:has(.mega-panel.open) > a{color:var(--pine-deep);background:var(--pine-pale);}

  /* The page you are on, marked in the list. */
  nav.primary a[aria-current="page"]{
    color:var(--pine-deep);font-weight:700;
    box-shadow:inset 3px 0 0 var(--gold);
  }

  /* An open panel scrolls within itself rather than stretching the drawer. */
  .mega-panel.open{max-height:min(58vh,440px);overflow-y:auto;-webkit-overflow-scrolling:touch;}
}

/* The page's own floating furniture — back-to-top, the bottom action bar, the
   chat bubble — sits above the drawer's backdrop and showed through on top of
   an open menu. The drawer carries its own Call / WhatsApp / evaluation
   buttons, so none of it is needed while the menu is open. */
body.nav-locked .mobile-fab,
body.nav-locked .back-to-top,
body.nav-locked .topicnav-top-btn,
body.nav-locked .topicnav-next,
body.nav-locked .float-stack,
body.nav-locked #chat-widget,
body.nav-locked .desktop-fab{display:none !important;}

/* ------------------------------------------------------------------------
   Nav dropdown category badges: show the Stem Cell Care India mark in every
   circle instead of the JS-generated 2-letter monogram. The letters stay in
   the DOM (visually hidden) so each badge keeps an accessible label. The pale
   chip is kept on hover/active too, so the blue mark never lands on a dark
   fill where it would wash out.
   ------------------------------------------------------------------------ */
.rail-mono,
.mega-index-mono{
  /* !important: the per-context rules (e.g. .mega-rail-btn .rail-mono) set a
     `background` shorthand, which would otherwise reset this image to none. */
  background-image:url('/images/scci-mark.png') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:64% !important;
  color:transparent !important;
  font-size:0 !important;
  text-indent:-9999px;
  overflow:hidden;
}
.mega-rail-btn.is-active .rail-mono,
.mega-rail-btn:hover .rail-mono,
.mega-overview-tiles .mega-rail-btn .rail-mono,
.mega-overview-tiles .mega-rail-btn:hover .rail-mono,
.mega-index a:hover .mega-index-mono,
.mega-panel.has-rail a.mega-sub:hover .mega-index-mono{
  background-color:var(--pine-pale) !important;
  color:transparent !important;
}

/* Homepage category tabs (Diseases We Treat + About Us) — same brand mark on a
   pale chip. background-color is forced so the hover/active navy flip can't
   wash the mark out. */
.tb-mono,
.atab-mono{
  background-color:var(--pine-pale) !important;
  background-image:url('/images/scci-mark.png') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:62% !important;
  color:transparent !important;
  font-size:0 !important;
  text-indent:-9999px;
  overflow:hidden;
}

/* Footer badges (More Info policy cards + Popular searches) — brand mark on the
   footer's gold chip, locked so it stays legible in every state on the dark
   footer. */
.fbm-mono,
.fp-mono{
  background-color:#E7CE9A !important;
  background-image:url('/images/scci-mark.png') !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:60% !important;
  color:transparent !important;
  font-size:0 !important;
  text-indent:-9999px;
  overflow:hidden;
}
