/* =====================================================================
   HOMEPAGE CSS — moved out of index.php (was 4 inline <style> blocks).
   Loaded via $PAGE_CSS in index.php, after site.css.
   ===================================================================== */

/* ===== HERO ===== */
.hero{background:radial-gradient(1200px 500px at 85% -10%,rgba(228,168,83,.14),transparent 60%),
  linear-gradient(180deg,var(--mint),var(--paper) 78%);padding:52px 0 68px}
.hero-grid{display:grid;grid-template-columns:1.1fr 430px;gap:44px;align-items:start}
.trust-pill{display:inline-block;background:#fff;border:1px solid var(--line);padding:.45rem .95rem;
  border-radius:999px;font-size:.7rem;font-weight:600;color:var(--teal-deep);box-shadow:var(--shadow-sm)}
.trust-pill b{color:var(--gold-deep)}
.hero h1{font-size:clamp(2.1rem,4.3vw,3.4rem);margin:18px 0 16px;color:var(--teal-deep)}
.hero h1 .u{background:linear-gradient(transparent 62%,rgba(228,168,83,.45) 62%)}
.hero .lead{font-size:1.08rem;color:var(--muted);max-width:540px;font-weight:500}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 28px}
.hero-stats{display:flex;gap:30px;flex-wrap:wrap}
.hero-stats .s{display:flex;flex-direction:column}
.hero-stats .num{font-family:'Fraunces',serif;font-size:2rem;font-weight:700;color:var(--teal);line-height:1}
.hero-stats .lab{font-size:.86rem;color:var(--muted);font-weight:600;margin-top:4px}
@media(max-width:1000px){.hero-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:640px){.hero{padding:24px 0 28px}
  .hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px}
  .hero-stats .num{font-size:1.6rem}
  .hero h1{margin:14px 0 12px;line-height:1.18}
  .hero .lead{font-size:1rem}
  .hero-actions{margin:20px 0 22px;gap:10px}
  .hero-actions .btn{flex:1 1 100%}}

/* ===== ENQUIRY FORM ===== */
.quote-card{background:#fff;border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--line);
  padding:22px;scroll-margin-top:130px}
.quote-card h3,.quote-card .qc-title{font-size:1.35rem;color:var(--teal-deep)}
.quote-card .sub{font-size:.92rem;color:var(--muted);margin:6px 0 14px}
.nm-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.nm-form .full{grid-column:1/-1}
.nm-form label{display:block;font-size:.76rem;font-weight:700;color:var(--teal-deep);margin-bottom:4px}
.nm-form input:not([type=submit]),.nm-form select,.nm-form textarea{
  width:100%;padding:.62rem .8rem;border:1.5px solid var(--line);border-radius:11px;
  font-family:inherit;font-size:16px;background:var(--paper);color:var(--ink);transition:.2s;min-height:44px}
.nm-form input:focus,.nm-form select:focus,.nm-form textarea:focus{
  outline:none;border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px rgba(12,110,110,.12)}
.nm-form textarea{min-height:62px;resize:vertical}
.nm-form .hp{position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nm-form button{width:100%;background:var(--teal);color:#fff;font-weight:700;font-size:1rem;padding:.85rem;
  border:0;border-radius:999px;cursor:pointer;font-family:inherit;transition:.25s;min-height:48px}
.nm-form button:hover{background:var(--teal-deep)}
.quote-note{font-size:.78rem;color:var(--muted);text-align:center;margin:10px 0 0}
.form-msg{padding:.7rem .9rem;border-radius:11px;font-size:.9rem;margin-bottom:12px;font-weight:600}
.form-msg.ok{background:#E6F5EF;color:#0B6B4F}
.form-msg.err{background:#FDECEC;color:#9B2C2C}
@media(max-width:420px){.nm-form{grid-template-columns:1fr}}

/* ===== SEARCH ===== */
.searchband{background:#fff;padding:60px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sb-head{text-align:center;max-width:640px;margin:0 auto 24px}
.sb-head h2{font-size:clamp(1.5rem,2.8vw,2.05rem);color:var(--teal-deep);margin:12px 0 8px}
.sb-head p{color:var(--muted);margin:0;font-size:.98rem}
.sb-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);
  padding:22px 24px;max-width:920px;margin:0 auto}
.sb-form{display:flex;gap:10px}
.sb-input{position:relative;flex:1;min-width:0}
.sb-input>svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--muted)}
.sb-input input{width:100%;height:54px;padding:0 1rem 0 46px;border:1.5px solid var(--line);border-radius:13px;
  font-family:inherit;font-size:16px;background:#fff}
.sb-input input:focus{outline:none;border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px rgba(12,110,110,.12)}
.sb-form .btn{height:54px;padding:0 2rem;flex:none}
.chiprow{display:flex;gap:10px;overflow-x:auto;padding:16px 2px 4px;scrollbar-width:none;scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch}
.chiprow::-webkit-scrollbar{display:none}
.chiprow a{flex:none;scroll-snap-align:start;border-radius:999px;padding:.55rem 1.05rem;font-size:.92rem;
  font-weight:600;white-space:nowrap;border:1px solid var(--line);transition:.18s;min-height:38px;display:inline-flex;align-items:center}
.chiprow .cp{background:var(--mint);color:var(--teal);border-color:transparent}
.chiprow .cd{background:#fff;color:var(--ink)}
.chiprow a:hover{border-color:var(--teal);color:var(--teal)}
@media(max-width:700px){.sb-form{flex-direction:column}.sb-form .btn{width:100%}.sb-card{padding:18px}}
@media(max-width:640px){.searchband{padding:36px 0}.sb-head{margin-bottom:18px}
  .sb-input input{height:50px}.sb-form .btn{height:50px}}

/* ===== ACCREDITATION ===== */
.accred{background:var(--paper);border-bottom:1px solid var(--line);padding:22px 0}
.accred-in{display:flex;align-items:center;justify-content:center;gap:12px 28px;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-size:.9rem;color:var(--teal-deep);
  background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:.45rem 1rem}
.badge b{color:var(--gold-deep)}

/* ===== SERVICE CARDS ===== */
.svc4-sec{padding:58px 0;background:#fff}
.svc4-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.svc4{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px 24px;
  display:flex;flex-direction:column;transition:.25s}
.svc4:hover{border-color:var(--teal);box-shadow:var(--shadow-sm);transform:translateY(-4px)}
.s4-ic{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:var(--mint);
  color:var(--teal);margin-bottom:18px}
.s4-ic svg{width:28px;height:28px}
.svc4 h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.12rem;color:var(--teal-deep)}
.svc4 p{font-size:.94rem;color:var(--muted);margin:.6rem 0 0;flex:1}
.s4-go{display:inline-flex;align-items:center;gap:.5rem;margin-top:20px;align-self:flex-start;background:var(--mint);
  color:var(--teal);border-radius:999px;padding:.55rem 1.05rem;font-size:.9rem;font-weight:700;transition:.2s;min-height:40px}
.s4-go:hover{background:var(--teal);color:#fff}
@media(max-width:1000px){.svc4-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.svc4-sec{padding:40px 0}}

/* ===== DEPARTMENTS (slider) ===== */
.depts{padding:58px 0;background:var(--paper)}
.depts .rail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;scrollbar-width:none;
  -webkit-overflow-scrolling:touch}
.depts .rail::-webkit-scrollbar{display:none}
.dept-card{flex:0 0 332px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;transition:.25s}
.dept-card:hover{box-shadow:var(--shadow);transform:translateY(-4px);border-color:var(--teal)}
.dc-top{display:flex;align-items:center;gap:14px;padding:20px;min-height:104px;background:var(--mint);
  background-image:linear-gradient(45deg,rgba(255,255,255,.5) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.5) 75%),
                   linear-gradient(45deg,rgba(255,255,255,.5) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.5) 75%);
  background-size:16px 16px;background-position:0 0,8px 8px}
.dc-ic{flex:none;width:58px;height:58px;border-radius:13px;background:#fff;display:grid;place-items:center;
  box-shadow:0 4px 12px -6px rgba(6,58,58,.25)}
.dc-ic img{width:32px;height:32px;object-fit:contain}
.dc-top h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.08rem;line-height:1.25}
.dc-top h3 a{color:var(--teal-deep)}
.dc-desc{font-size:.93rem;color:var(--muted);margin:0 0 -42px;padding:16px 20px 10px;flex:1}
.dc-procs{padding:10px 20px 16px}
.dc-plabel{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--muted);margin-bottom:9px;     margin-top: 26px;}
.dc-pills{display:flex;flex-direction:column;gap:10px;max-height:132px;overflow-y:auto;overscroll-behavior:contain;
  padding-right:5px;scrollbar-width:thin;scrollbar-color:#BFD9D6 transparent;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.dc-pills::-webkit-scrollbar{width:7px}
.dc-pills::-webkit-scrollbar-thumb{background:#BFD9D6;border-radius:99px}
.dc-pills a{background:var(--mint);border-radius:999px;padding:.42rem .8rem;font-size:.84rem;color:var(--ink);
  line-height:1.3;display:flex;justify-content:space-between;gap:8px;transition:.18s;min-height:42px;align-items:center}
.dc-pills a:hover{background:var(--teal);color:#fff}
.dc-pills b{color:var(--teal);font-weight:700;white-space:nowrap}
.dc-pills a:hover b{color:#fff}
.dc-foot{display:flex;gap:10px;padding:14px 16px;background:var(--teal);margin-top:auto}
.dc-foot a{flex:1;text-align:center;border-radius:999px;padding:.5rem .7rem;font-size:.86rem;font-weight:700;
  transition:.2s;white-space:nowrap;min-height:40px;display:flex;align-items:center;justify-content:center}
.dc-foot .b1{border:1.5px solid rgba(255,255,255,.65);color:#fff}
.dc-foot .b1:hover{background:rgba(255,255,255,.16)}
.dc-foot .b2{background:#fff;color:var(--teal-deep)}
.dc-foot .b2:hover{background:var(--gold);color:#3a2607}
@media(max-width:640px){.dc-top{min-height:0;padding:16px}
  .dc-ic{width:48px;height:48px}.depts{padding:40px 0}.dc-pills{max-height:112px}}

/* ===== HOW / STATS ===== */
.how{padding:58px 0;background:#fff}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;margin-top:12px}
.steps::before{content:"";position:absolute;top:34px;left:12%;right:12%;height:2px;
  background:repeating-linear-gradient(90deg,var(--gold) 0 10px,transparent 10px 20px);opacity:.6}
.step{text-align:center;position:relative;z-index:2}
.step .n{width:68px;height:68px;margin:0 auto 16px;border-radius:50%;background:var(--teal);color:#fff;
  display:grid;place-items:center;font-family:'Fraunces',serif;font-size:1.5rem;font-weight:700;
  box-shadow:0 12px 26px -12px rgba(12,110,110,.8);border:4px solid #fff}
.step h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.06rem;color:var(--teal-deep);margin-bottom:6px}
.step p{font-size:.94rem;color:var(--muted);margin:0}
@media(max-width:780px){.steps{grid-template-columns:1fr 1fr;gap:26px 18px}.steps::before{display:none}}
@media(max-width:480px){.how{padding:40px 0}}
.stats{padding:48px 0;background:var(--teal-deep);color:#eafaf8}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.stats .big{font-family:'Fraunces',serif;font-weight:700;font-size:2.1rem;color:var(--gold);display:block;line-height:1}
.stats .lab{font-size:.95rem;color:#a8ccca;font-weight:600;margin-top:6px}
@media(max-width:640px){.stats-grid{grid-template-columns:1fr 1fr;gap:22px 14px}.stats{padding:36px 0}
  .stats .big{font-size:1.7rem}}

/* ===== SLIDERS ===== */
.railsec{padding:58px 0}
.rail-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}
.rail-bar h2{font-size:clamp(1.6rem,3vw,2.2rem);color:var(--teal-deep)}
.rail-bar p{color:var(--muted);margin:8px 0 0;max-width:480px}
.rail-nav{display:flex;align-items:center;gap:10px}
.rnav{width:44px;height:44px;flex:none;border-radius:50%;border:1.5px solid var(--line);background:#fff;
  cursor:pointer;color:var(--teal);display:grid;place-items:center;transition:.2s}
.rnav:hover{background:var(--teal);color:#fff;border-color:var(--teal)}
.rnav svg{width:20px;height:20px}
.rnav[disabled]{opacity:.35;cursor:default}
.rnav[disabled]:hover{background:#fff;color:var(--teal);border-color:var(--line)}
.rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 16px;scrollbar-width:none;
  -webkit-overflow-scrolling:touch}
.rail::-webkit-scrollbar{display:none}
.hcard{flex:0 0 300px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:16px;
  overflow:hidden;transition:.25s;color:inherit}
.hcard:hover{border-color:var(--teal);box-shadow:var(--shadow);transform:translateY(-4px)}
.hc-img{aspect-ratio:16/10;overflow:hidden;background:var(--mint)}
.hc-img img{width:100%;height:100%;object-fit:cover;transition:.5s}
.hcard:hover .hc-img img{transform:scale(1.05)}
.hc-body{padding:16px 18px 18px}
.hc-body h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.02rem;color:var(--teal-deep);
  line-height:1.3;min-height:2.6em}
.hc-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:9px}
.hc-meta span{font-size:.84rem;color:var(--muted);font-weight:600}
.hc-acc{display:inline-block;margin-top:11px;background:var(--mint);color:var(--teal);border-radius:999px;
  padding:.3rem .75rem;font-size:.8rem;font-weight:700}
.docsec{background:var(--paper)}
.doc-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.doc-filters{display:flex;gap:10px;flex-wrap:wrap}
.doc-filters select{height:48px;min-width:190px;padding:0 1rem;border:1.5px solid var(--line);border-radius:12px;
  font-family:inherit;font-size:16px;background:#fff;color:var(--ink);cursor:pointer}
.doc-filters select:focus{outline:none;border-color:var(--teal)}
.doc-clear{height:48px;padding:0 1.1rem;border:0;background:transparent;color:var(--gold-deep);
  font-family:inherit;font-weight:700;font-size:.92rem;cursor:pointer}
.dcard{flex:0 0 232px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:16px;
  overflow:hidden;transition:.25s;color:inherit}
.dcard:hover{border-color:var(--teal);box-shadow:var(--shadow);transform:translateY(-4px)}
.dp-photo{aspect-ratio:1/1;overflow:hidden;background:var(--mint)}
.dp-photo img{width:100%;height:100%;object-fit:cover;object-position:top center}
.dp-info{padding:14px 16px 18px;background:var(--mint);text-align:center}
.dp-info h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.02rem;color:var(--teal-deep);
  line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-spec{display:block;font-size:.87rem;color:var(--muted);margin-top:4px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dp-exp{display:block;font-size:.84rem;color:var(--teal);font-weight:700;margin-top:8px}
.rail-empty{color:var(--muted);text-align:center;padding:24px 0}
@media(max-width:640px){.railsec{padding:40px 0}
  .doc-bar{flex-direction:column;align-items:stretch}
  .doc-filters{gap:8px}.doc-filters select{flex:1;min-width:0;height:46px}
  .rail-bar{margin-bottom:16px}}

/* ===== TICKER ===== */
.ticker{background:var(--teal-deep);overflow:hidden;padding:11px 0;position:relative}
.ticker::before,.ticker::after{content:"";position:absolute;top:0;bottom:0;width:70px;z-index:2;pointer-events:none}
.ticker::before{left:0;background:linear-gradient(90deg,var(--teal-deep),transparent)}
.ticker::after{right:0;background:linear-gradient(270deg,var(--teal-deep),transparent)}
.tick-track{display:flex;gap:34px;width:max-content;animation:tick 55s linear infinite}
.ticker:hover .tick-track{animation-play-state:paused}
.tick-track a{display:inline-flex;align-items:center;gap:.5rem;color:#cfe8e6;font-size:.9rem;font-weight:600;white-space:nowrap}
.tick-track a:hover{color:var(--gold)}
.tick-track b{color:var(--gold)}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:640px){.tick-track{animation-duration:38s}.tick-track a{font-size:.84rem}}
@media(prefers-reduced-motion:reduce){.tick-track{animation:none;overflow-x:auto;-webkit-overflow-scrolling:touch}}

/* ===== WHY ===== */
.why{padding:58px 0;background:#fff}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.why-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:28px 24px;
  text-align:center;transition:.25s}
.why-card:hover{border-color:var(--teal);box-shadow:var(--shadow-sm);transform:translateY(-3px)}
.wc-ic{width:58px;height:58px;margin:0 auto 16px;border-radius:50%;background:var(--mint);color:var(--teal);
  display:grid;place-items:center}
.wc-ic svg{width:27px;height:27px}
.why-card h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.06rem;color:var(--teal-deep)}
.why-card p{font-size:.94rem;color:var(--muted);margin:.6rem 0 0}
@media(max-width:900px){.why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.why{padding:40px 0}}

/* ===== COUNTRIES ===== */
.countries{padding:54px 0;background:linear-gradient(180deg,var(--mint),#fff)}
.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.country{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;
  padding:.7rem .9rem;font-weight:600;font-size:1rem;color:var(--teal-deep)}
.country .fl{font-size:1.35rem;line-height:1}
@media(max-width:520px){.country-grid{grid-template-columns:1fr 1fr;gap:10px}.countries{padding:36px 0}
  .country{padding:.6rem .75rem;font-size:.92rem}}

/* ===== SEO / GUIDE CONTENT ===== */
.guide{padding:64px 0;background:linear-gradient(180deg,#fff,var(--paper) 45%,#fff);position:relative}
.guide-shell{max-width:1180px;margin:0 auto}
.guide-head{max-width:760px;margin:0 auto 40px;text-align:center}
.guide-head h2{font-size:clamp(1.8rem,3.4vw,2.5rem);color:var(--teal-deep);margin:12px 0 16px}
.guide-lead{font-size:1.12rem;line-height:1.75;color:var(--muted);font-weight:500}
.guide-lead strong{color:var(--teal-deep);font-weight:700}

.guide-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:40px;align-items:start;max-width:100%}
.guide-toc{position:sticky;top:24px;background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:18px;box-shadow:var(--shadow-sm);min-width:0;max-width:100%;box-sizing:border-box}
.guide-toc .toc-title{margin:0 0 12px;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);
  margin-bottom:12px}
.guide-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.guide-toc a{display:flex;align-items:center;gap:10px;padding:.5rem .55rem;border-radius:10px;font-size:.88rem;
  font-weight:600;color:var(--ink);line-height:1.3;transition:.18s}
.guide-toc a b{flex:none;width:20px;height:20px;border-radius:50%;background:var(--mint);color:var(--teal);
  font-size:.72rem;display:grid;place-items:center;font-weight:800}
.guide-toc a:hover{background:var(--mint);color:var(--teal-deep)}
.guide-toc a:hover b{background:var(--teal);color:#fff}

.guide-body{min-width:0;max-width:100%}
.guide-body h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.32rem;color:var(--teal-deep);
  margin:0 0 12px;display:flex;align-items:center;gap:12px;scroll-margin-top:24px;overflow-wrap:anywhere}
.guide-body h3 .gnum{flex:none;width:34px;height:34px;border-radius:11px;background:var(--teal);color:#fff;
  display:grid;place-items:center;font-family:'Fraunces',serif;font-weight:700;font-size:1.02rem}
.guide-block{margin:0 0 34px}
.guide-block:last-child{margin-bottom:0}
.guide-body p{font-size:1.03rem;line-height:1.78;color:var(--ink);margin:0 0 14px;overflow-wrap:break-word}
.guide-body ul{margin:0 0 14px;padding-left:0;list-style:none}
.guide-body ul li{font-size:1rem;line-height:1.65;color:var(--ink);margin-bottom:10px;padding-left:28px;position:relative;overflow-wrap:break-word}
.guide-body ul li::before{content:"";position:absolute;left:0;top:.45em;width:16px;height:16px;border-radius:50%;
  background:var(--mint);border:2px solid var(--teal)}

.guide-facts{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 26px;margin:6px 0 30px;
  box-shadow:var(--shadow-sm);max-width:100%;box-sizing:border-box}
.guide-facts h4{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--teal-deep);margin-bottom:14px}
.guide-facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;list-style:none;margin:0;padding:0}
.guide-facts-grid li{display:flex;align-items:flex-start;gap:9px;font-size:.94rem;font-weight:600;color:var(--teal-deep);
  line-height:1.45}
.guide-facts-grid li svg{flex:none;width:18px;height:18px;color:var(--gold-deep);margin-top:2px}

.guide-stat{display:flex;align-items:center;gap:20px;background:var(--teal-deep);border-radius:18px;
  padding:24px 26px;margin:6px 0 30px;color:#eafaf8;max-width:100%;box-sizing:border-box}
.guide-stat .gs-num{font-family:'Fraunces',serif;font-weight:700;font-size:2.4rem;color:var(--gold);flex:none;line-height:1}
.guide-stat p{color:#dff2f0;font-size:.98rem;margin:0;line-height:1.55;min-width:0;overflow-wrap:break-word}

.guide-cta{background:var(--mint);border:1px solid var(--line);border-radius:18px;padding:26px;text-align:center;
  margin-top:10px;max-width:100%;box-sizing:border-box}
.guide-cta p{color:var(--teal-deep);font-weight:600;max-width:520px;margin:0 auto 16px}

@media(max-width:960px){
  .guide-layout{grid-template-columns:minmax(0,1fr)}
  .guide-toc{position:static;order:-1;width:100%;max-width:100%}
  .guide-toc ol{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:4px;scrollbar-width:none;
    -webkit-overflow-scrolling:touch;max-width:100%}
  .guide-toc ol::-webkit-scrollbar{display:none}
  .guide-toc a{flex:none;white-space:nowrap;background:var(--paper);max-width:220px;overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:640px){
  .guide{padding:40px 0}
  .guide-shell{max-width:100%}
  .guide-head{margin-bottom:24px}
  .guide-lead{font-size:1.02rem;line-height:1.65}
  .guide-facts,.guide-stat,.guide-cta{padding:18px}
  .guide-facts-grid{grid-template-columns:1fr}
  .guide-stat{flex-direction:column;text-align:center;gap:10px}
  .guide-body h3{font-size:1.12rem;gap:10px}
  .guide-body h3 .gnum{width:28px;height:28px;font-size:.88rem;border-radius:9px}
  .guide-body p,.guide-body ul li{font-size:.97rem;line-height:1.65}
  .guide-toc{padding:14px}
  .guide-toc a{max-width:180px}
}

/* ===== STORIES / VIDEO ===== */
.testi{padding:58px 0;background:var(--mint);overflow:hidden}
.testi-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 0 18px;scrollbar-width:none;
  -webkit-overflow-scrolling:touch}
.testi-rail::-webkit-scrollbar{display:none}
.tcard{scroll-snap-align:start;flex:0 0 clamp(300px,44%,440px);background:#fff;border:1px solid var(--line);
  border-radius:18px;padding:26px;box-shadow:var(--shadow-sm)}
.sstars{color:var(--gold);letter-spacing:2px;font-size:1rem}
.tcard p{font-size:1.02rem;margin:12px 0 20px}
.tcard .who{display:flex;align-items:center;gap:12px}
.tcard .who img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid var(--gold)}
.tcard .who b{display:block;font-weight:700;color:var(--teal-deep)}
.tcard .who small{color:var(--muted)}
.rail-ctrls{display:flex;gap:10px;justify-content:center;margin-top:6px}
.rail-ctrls button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:#fff;
  cursor:pointer;color:var(--teal);display:grid;place-items:center;transition:.2s}
.rail-ctrls button:hover{background:var(--teal);color:#fff}
.vtesti{padding:58px 0;background:#fff}
.vtesti-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.vcard{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.vwrap{position:relative;width:100%;aspect-ratio:16/9;background:#000}
.vwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vbody{padding:14px 16px}
.vtag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--teal);background:var(--mint);border-radius:999px;padding:.25rem .65rem;margin-bottom:8px}
.vcard h4{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1rem;color:var(--teal-deep)}
@media(max-width:900px){.vtesti-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.vtesti{padding:40px 0}.testi{padding:40px 0}.tcard{padding:20px}}

/* ===== FAQ ===== */
.faq-sec{padding:58px 0;background:var(--paper)}
.faq-wrap{max-width:860px;margin:0 auto;max-height:680px;overflow-y:auto;padding-right:8px;
  scrollbar-width:thin;scrollbar-color:#BFD9D6 transparent;-webkit-overflow-scrolling:touch}
.faq-wrap::-webkit-scrollbar{width:8px}
.faq-wrap::-webkit-scrollbar-thumb{background:#BFD9D6;border-radius:99px}
.faq-item{border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow:hidden;background:#fff}
.faq-item.active{border-color:var(--teal);box-shadow:var(--shadow-sm)}
.faq-q{width:100%;text-align:left;background:none;border:0;cursor:pointer;padding:18px 20px;font-family:inherit;
  font-weight:700;font-size:1.04rem;color:var(--teal-deep);display:flex;justify-content:space-between;
  align-items:flex-start;gap:16px}
.faq-q .plus{flex:none;width:26px;height:26px;border-radius:50%;background:var(--mint);color:var(--teal);
  display:grid;place-items:center;font-size:1.2rem;transition:.3s}
.faq-item.active .plus{background:var(--teal);color:#fff;transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-a-inner{padding:0 20px 18px;color:var(--muted);font-size:1rem}
@media(max-width:640px){.faq-q{font-size:.96rem;padding:15px 16px}.faq-wrap{max-height:60vh}.faq-sec{padding:40px 0}}

/* ===== CTA ===== */
.finalcta{padding:58px 0;background:#fff}
.cta-box{background:linear-gradient(120deg,var(--teal),var(--teal-mid));border-radius:26px;padding:48px 40px;
  text-align:center;color:#fff;position:relative;overflow:hidden}
.cta-box::before{content:"";position:absolute;top:-80px;left:-40px;width:260px;height:260px;border-radius:50%;
  background:rgba(228,168,83,.2)}
.cta-box::after{content:"";position:absolute;bottom:-100px;right:-40px;width:300px;height:300px;border-radius:50%;
  background:rgba(255,255,255,.06)}
.cta-box h2{font-size:clamp(1.7rem,3.2vw,2.4rem);position:relative;z-index:2}
.cta-box p{max-width:580px;margin:14px auto 26px;color:#e6f6f4;position:relative;z-index:2;font-size:1.08rem}
.cta-box .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative;z-index:2}
@media(max-width:640px){.cta-box{padding:28px 20px}.finalcta{padding:40px 0}.cta-box h2{margin-bottom:4px}}

/* =====================================================================
   MOBILE LAYOUT FIXES — kept together at the end on purpose. Later
   rules of equal specificity win, so everything here overrides the
   defaults above without editing them.
   ===================================================================== */

/* --- Accreditation badges: even 2x2 instead of 1 / 1 / 2 ---
   flex-wrap was breaking them unevenly because the first two badges
   are wider than the last two. A grid forces a clean 2x2. */
@media(max-width:760px){
  .accred{padding:18px 0}
  .accred-in{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}
  .badge{justify-content:center;text-align:center;font-size:.8rem;padding:.55rem .6rem;line-height:1.3}
}
@media(max-width:360px){.badge{font-size:.74rem}}

/* --- Slider arrows visible on mobile ---
   The old rule was `@media(max-width:640px){.rail-nav{display:none}}`,
   hiding the prev/next buttons on exactly the devices where free
   scrolling a rail feels worst. They now sit centred under the
   heading. Applies to departments, hospitals and doctors alike. */
@media(max-width:640px){
  .rail-nav{display:flex!important;width:100%;justify-content:center;align-items:center;
    gap:12px;margin-top:16px;order:3}
  .rail-nav .btn{flex:1 1 auto;max-width:160px;min-height:42px;padding:0 1rem;font-size:.9rem;
    display:inline-flex;align-items:center;justify-content:center}
  .rail-bar{flex-direction:column;align-items:stretch;margin-bottom:18px}
  .doc-bar{gap:12px}
  .doc-bar .rail-nav{margin-top:6px}
  .rnav{width:44px;height:44px}
}

/* One card per swipe, snapped to the left edge, instead of flinging
   past three cards at a time. */
.rail,.depts .rail,.testi-rail{scroll-behavior:smooth;scroll-padding-left:2px}
@media(max-width:640px){
  .rail,.depts .rail{scroll-snap-type:x mandatory;scroll-snap-stop:always}
  .dept-card{flex-basis:82vw;max-width:330px}
  .hcard{flex-basis:78vw;max-width:320px}
  .dcard{flex-basis:46vw;max-width:210px}
  .tcard{flex:0 0 84vw}
}

/* --- How it works: 2 columns on mobile (was 1, making it very tall) --- */
@media(max-width:480px){
  .steps{grid-template-columns:1fr 1fr;gap:24px 12px}
  .step .n{width:50px;height:50px;font-size:1.15rem;margin-bottom:10px;border-width:3px}
  .step h3{font-size:.95rem;line-height:1.25}
  .step p{font-size:.85rem;line-height:1.5}
}

/* --- Services and Why cards: same 2-up rhythm --- */
@media(max-width:560px){
  .svc4-grid{grid-template-columns:1fr 1fr;gap:12px}
  .svc4{padding:18px 14px}
  .s4-ic{width:44px;height:44px;margin-bottom:12px;border-radius:12px}
  .s4-ic svg{width:22px;height:22px}
  .svc4 h3{font-size:.97rem;line-height:1.25}
  .svc4 p{font-size:.85rem;line-height:1.5}
  .s4-go{font-size:.8rem;padding:.45rem .8rem;margin-top:14px;min-height:36px}

  .why-grid{grid-template-columns:1fr 1fr;gap:12px}
  .why-card{padding:18px 14px}
  .wc-ic{width:46px;height:46px;margin-bottom:12px}
  .wc-ic svg{width:22px;height:22px}
  .why-card h3{font-size:.95rem;line-height:1.25}
  .why-card p{font-size:.84rem;line-height:1.5}

  .vtesti-grid{grid-template-columns:1fr 1fr;gap:12px}
  .vbody{padding:10px 12px}
  .vcard h4{font-size:.88rem;line-height:1.3}
  .vtag{font-size:.62rem;padding:.2rem .5rem;margin-bottom:6px}
}

/* --- Global mobile refinements --- */
@media(max-width:480px){
  .wrap{padding-left:16px;padding-right:16px;box-sizing:border-box}
}
/* Emergency: guarantee revealed content is visible even if the
   IntersectionObserver in footer.php never fires. */
.reveal{opacity:1!important;transform:none!important}
/* Hide the guide's "On this page" list on mobile — on desktop it's a
   sticky sidebar that's genuinely useful; on small screens it collapses
   into a horizontal scroll strip of 10 truncated links that most people
   swipe past. Desktop keeps it. */
@media(max-width:960px){
  .guide-toc{display:none}
  .guide-layout{grid-template-columns:minmax(0,1fr)}
}

/* ===== VIDEO TESTIMONIALS — namespaced .vts* =========================
   One player, loaded only when someone actually presses play. The old
   grid mounted every video as a live iframe at page load, which is what
   YouTube was throwing "Playback ID" errors at.
   ===================================================================== */
.vts{padding:58px 0;background:#fff}
.vts-grid{display:grid;grid-template-columns:minmax(0,1.45fr) 400px;gap:26px;align-items:start}

/* featured player */
.vts-stage{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;margin:0;
  border-radius:20px;overflow:hidden;background:var(--mint);cursor:pointer}
.vts-stage img{width:100%;height:100%;object-fit:cover;display:block;transition:.5s}
.vts-stage:hover img{transform:scale(1.03)}
.vts-stage::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(4,40,40,.55))}
.vts-play{position:absolute;inset:0;display:grid;place-items:center;z-index:2}
.vts-play span{width:78px;height:78px;border-radius:50%;background:rgba(255,255,255,.92);
  display:grid;place-items:center;box-shadow:0 14px 34px -12px rgba(4,40,40,.7);transition:.25s}
.vts-play svg{width:26px;height:26px;margin-left:4px;color:var(--teal);fill:currentColor}
.vts-stage:hover .vts-play span{transform:scale(1.08);background:#fff}
.vts-frame{width:100%;aspect-ratio:16/9;border:0;border-radius:20px;display:block;background:#000}
.vts-meta{padding:16px 4px 0}
.vts-meta h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.2rem;
  color:var(--teal-deep);line-height:1.3;margin:0}
.vts-meta .who{display:block;font-size:.93rem;color:var(--muted);margin-top:6px}
.vts-chip{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  color:var(--teal);background:var(--mint);border-radius:999px;padding:.28rem .7rem;margin-bottom:10px}
.vts-chip:empty{display:none}

/* playlist */
.vts-list{background:var(--mint);border-radius:20px;padding:10px;max-height:520px;overflow-y:auto;
  scrollbar-width:thin;scrollbar-color:#BFD9D6 transparent;overscroll-behavior:contain}
.vts-list::-webkit-scrollbar{width:7px}
.vts-list::-webkit-scrollbar-thumb{background:#BFD9D6;border-radius:99px}
.vts-item{display:grid;grid-template-columns:132px minmax(0,1fr);gap:14px;width:100%;text-align:left;
  background:none;border:0;border-radius:14px;padding:10px;font-family:inherit;cursor:pointer;transition:.2s;
  align-items:start}
.vts-item:hover{background:rgba(255,255,255,.75)}
.vts-item[aria-current="true"]{background:#fff;box-shadow:var(--shadow-sm)}
.vts-thumb{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#0d3b3b}
.vts-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.vts-thumb i{position:absolute;inset:0;display:grid;place-items:center}
.vts-thumb i svg{width:26px;height:26px;color:#fff;fill:rgba(255,255,255,.9);
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.5))}
.vts-item b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:.95rem;font-weight:700;
  color:var(--teal-deep);line-height:1.32}
.vts-item small{display:block;font-size:.84rem;color:var(--muted);margin-top:4px;line-height:1.4}
.vts-item em{font-style:normal;display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem;
  font-weight:700;color:var(--teal);margin-top:7px}
.vts-item[aria-current="true"] em{color:var(--gold-deep)}

@media(max-width:1000px){
  .vts-grid{grid-template-columns:1fr;gap:20px}
  .vts-list{max-height:none;display:grid;grid-auto-flow:column;grid-auto-columns:74%;gap:8px;
    overflow-x:auto;scroll-snap-type:x mandatory;padding:10px}
  .vts-item{grid-template-columns:1fr;scroll-snap-align:start;gap:10px}
  .vts-thumb{width:100%}
}
@media(max-width:560px){
  .vts{padding:40px 0}
  .vts-list{grid-auto-columns:82%}
  .vts-play span{width:62px;height:62px}
  .vts-play svg{width:21px;height:21px}
  .vts-meta h3{font-size:1.04rem}
}
@media(prefers-reduced-motion:reduce){.vts-stage img,.vts-play span,.vts-item{transition:none}}

/* ===== PATIENT STORIES — namespaced .ps* ==============================
   Replaces the old .testi/.tcard block. Three fixes over the previous
   version:
   1. Cards are equal height by construction (flex column, quote flexes,
      author pinned to the bottom) instead of one tall card stretching
      its neighbours and leaving them half empty.
   2. Long quotes clamp to 7 lines behind a "Read full review" toggle,
      so a 90-word review and a 20-word review look like siblings.
   3. The " · " between country and treatment only prints when there is
      something on both sides of it.
   ===================================================================== */
.ps{padding:58px 0;background:var(--mint);overflow:hidden}
.ps-rail{display:flex;align-items:stretch;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:6px 2px 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}
.ps-rail::-webkit-scrollbar{display:none}

.ps-card{scroll-snap-align:start;flex:0 0 clamp(300px,42%,420px);background:#fff;border:1px solid var(--line);
  border-radius:18px;padding:24px 24px 20px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;
  transition:.25s}
.ps-card:hover{border-color:var(--teal);box-shadow:var(--shadow);transform:translateY(-3px)}

.ps-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ps-stars{color:var(--gold);letter-spacing:2px;font-size:1rem;line-height:1}
.ps-gicon{flex:none;width:22px;height:22px;opacity:.9}

.ps-quote{flex:1;margin:0;font-size:1rem;line-height:1.62;color:var(--ink)}
.ps-quote .ps-text{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.ps-card.open .ps-quote .ps-text{-webkit-line-clamp:unset;overflow:visible}
.ps-more{align-self:flex-start;margin-top:10px;background:none;border:0;padding:0;cursor:pointer;
  font-family:inherit;font-size:.88rem;font-weight:700;color:var(--teal);text-decoration:underline}
.ps-more:hover{color:var(--teal-deep)}
.ps-more[hidden]{display:none}

.ps-who{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.ps-who img{width:52px;height:52px;flex:none;border-radius:50%;object-fit:cover;border:2px solid var(--gold);background:var(--mint)}
.ps-avatar{width:52px;height:52px;flex:none;border-radius:50%;border:2px solid var(--gold);background:var(--teal);
  color:#fff;display:grid;place-items:center;font-family:'Fraunces',serif;font-weight:700;font-size:1.25rem}
.ps-who b{display:block;font-weight:700;color:var(--teal-deep);font-size:1rem;line-height:1.3}
.ps-who small{display:block;color:var(--muted);font-size:.86rem;margin-top:2px}

/* controls + Google buttons */
.ps-ctrls{display:flex;gap:10px;justify-content:center;margin-top:4px}
.ps-ctrls button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:#fff;
  cursor:pointer;color:var(--teal);display:grid;place-items:center;transition:.2s}
.ps-ctrls button:hover{background:var(--teal);color:#fff;border-color:var(--teal)}
.ps-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.ps-actions .btn{min-height:48px}
.ps-actions .btn svg{width:18px;height:18px;flex:none}
.ps-note{text-align:center;color:var(--muted);font-size:.86rem;margin:14px 0 0}

@media(max-width:640px){
  .ps{padding:40px 0}
  .ps-card{flex:0 0 84vw;padding:20px 18px 16px}
  .ps-quote{font-size:.96rem}
  .ps-actions{gap:10px;margin-top:20px}
  .ps-actions .btn{flex:1 1 100%;justify-content:center}
}

/* ===== COUNTRIES — namespaced .cw* ==================================== */
.cw{padding:58px 0;background:linear-gradient(180deg,var(--mint),#fff);scroll-margin-top:80px}
.cw-bar{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 22px}
.cw-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px;-webkit-overflow-scrolling:touch;
  scroll-snap-type:x proximity;max-width:100%}
.cw-tabs::-webkit-scrollbar{display:none}
.cw-tab{flex:none;scroll-snap-align:start;border:1.5px solid var(--line);background:#fff;color:var(--ink);
  border-radius:999px;padding:.5rem 1.05rem;font-family:inherit;font-size:.92rem;font-weight:700;cursor:pointer;
  transition:.18s;min-height:42px;white-space:nowrap}
.cw-tab:hover{border-color:var(--teal);color:var(--teal)}
.cw-tab[aria-selected="true"]{background:var(--teal);border-color:var(--teal);color:#fff}
.cw-tab i{font-style:normal;opacity:.65;font-weight:600;margin-left:.35rem}
.cw-tab[aria-selected="true"] i{opacity:.8}

.cw-search{position:relative;flex:0 1 260px;min-width:200px}
.cw-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted)}
.cw-search input{width:100%;height:46px;padding:0 .9rem 0 42px;border:1.5px solid var(--line);border-radius:999px;
  font-family:inherit;font-size:16px;background:#fff;color:var(--ink)}
.cw-search input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(12,110,110,.12)}

/* 5 columns desktop, 3 tablet, 2 mobile */
.cw-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.cw-item{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid var(--line);border-radius:14px;
  padding:.7rem .85rem;font-weight:600;font-size:.98rem;color:var(--teal-deep);transition:.18s;min-height:56px;min-width:0}
.cw-item:hover{border-color:var(--teal);box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.cw-item img{width:34px;height:23px;flex:none;object-fit:cover;border-radius:4px;
  box-shadow:0 0 0 1px rgba(6,58,58,.12)}
.cw-item .cw-nf{width:34px;height:23px;flex:none;border-radius:4px;background:var(--mint);color:var(--teal);
  display:grid;place-items:center;font-size:.7rem;font-weight:800;letter-spacing:.04em}
.cw-item span{min-width:0;line-height:1.25}
.cw-item[hidden]{display:none}

.cw-more{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:22px auto 0;
  background:#fff;border:1.5px solid var(--teal);color:var(--teal);border-radius:999px;
  padding:.7rem 1.6rem;font-family:inherit;font-weight:700;font-size:.95rem;cursor:pointer;
  min-height:46px;transition:.2s}
.cw-more:hover{background:var(--teal);color:#fff}
.cw-more[hidden]{display:none}
.cw-more svg{width:16px;height:16px;flex:none;transition:transform .2s}
.cw-more[aria-expanded="true"] svg{transform:rotate(180deg)}
.cw-empty{text-align:center;color:var(--muted);padding:26px 0;margin:0}
.cw-foot{text-align:center;color:var(--muted);font-size:.92rem;margin:22px 0 0}
.cw-foot a{color:var(--teal);font-weight:700;text-decoration:underline}

@media(max-width:1100px){
  .cw-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:640px){
  .cw{padding:40px 0}
  .cw-bar{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:18px}
  .cw-search{flex:1 1 auto;order:-1}
  .cw-tabs{margin:0 -16px;padding:2px 16px}
  .cw-grid{grid-template-columns:1fr 1fr;gap:10px}
  .cw-item{padding:.6rem .7rem;font-size:.9rem;gap:9px;min-height:52px}
  .cw-item img,.cw-item .cw-nf{width:28px;height:19px}
  .cw-more{width:100%}
}
@media(max-width:360px){.cw-item{font-size:.84rem}}

/* =====================================================================
   SEO REVISION (Oct 2026) additions
   ===================================================================== */
/* hero: short lead + supporting line */
.hero .lead-2{font-size:.98rem;color:var(--muted);max-width:540px;margin:-4px 0 0}
/* department cards: link to the full procedure list */
.dc-more{display:inline-flex;align-items:center;gap:.35rem;margin-top:10px;font-size:.84rem;font-weight:700;
  color:var(--teal);text-decoration:underline;text-underline-offset:3px}
.dc-more:hover{color:var(--teal-deep)}
/* guide: visible freshness date */
.guide-updated{font-size:.86rem;color:var(--muted);font-weight:600;margin:14px 0 0}
/* guide: 40-60 word direct answer under each question heading */
.guide-body .g-answer{font-size:1.04rem;line-height:1.7;font-weight:500;color:var(--teal-deep);
  background:var(--mint);border-inline-start:3px solid var(--gold);padding:12px 16px;border-radius:0 12px 12px 0;margin:0 0 16px}
@media(max-width:640px){.guide-body .g-answer{font-size:.98rem;padding:10px 14px}}
/* FAQ: question is now an <h3> wrapping the button; keep the old look */
.faq-h{margin:0;font:inherit;letter-spacing:normal;line-height:inherit}
.faq-a-inner{margin:0}
