/* Layout: trust-first service site. Sticky top bar, hash-routed views, hero copy beside a working renewal clock. 7 languages, RTL for ar/fa. */
:root{
  --bg:#FFFFFF; --surface:#FFFFFF; --sunk:#FBEEEE;
  --ink:#1E0E10; --ink-2:#4A3436; --muted:#6B5557; --line:#EFDADB;
  --accent:#E30A17; --accent-ink:#FFFFFF; --accent-soft:#FDE6E7;
  --navy:#A50D17; --navy-ink:#FFFFFF; --navy-2:#FFD5D8;
  --ok:#0B6E43; --ok-soft:#E3F4EC; --warn:#8A5200; --warn-soft:#FFF3DC; --bad:#B4121C; --bad-soft:#FDE8E9;
  --display:'Manrope','Vazirmatn','Segoe UI',system-ui,sans-serif;
  --body:'Manrope','Vazirmatn','Segoe UI',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Consolas,monospace;
  --r:14px; --r-sm:10px;
  --shadow:0 1px 2px rgba(120,10,20,.06),0 8px 24px rgba(120,10,20,.07);
}
/* Single light theme by brand choice: always white, whatever the device setting. */
:root{color-scheme:light}

*{box-sizing:border-box}
html{overflow-x:hidden}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
[dir="rtl"] body{line-height:1.75}
h1,h2,h3,h4{font-family:var(--display);line-height:1.18;margin:0;text-wrap:balance;letter-spacing:-.02em}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4{letter-spacing:0;line-height:1.35}
p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.num{font-family:var(--mono);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
[dir="rtl"] .flip{transform:scaleX(-1)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Notice band */
.notice{background:var(--sunk);color:var(--ink-2);font-size:13px}
.notice .wrap{padding-block:8px;display:flex;gap:8px;align-items:center}
.notice svg{flex:none}
.notice strong{color:var(--ink)}

/* Header */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:9;background:var(--surface);border-top:4px solid var(--accent);border-bottom:1px solid var(--line)}
.top .wrap{height:68px;display:flex;align-items:center;gap:16px;position:relative}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none;direction:ltr}
.logo{width:40px;height:40px;flex:none;display:block}
.brand b{display:block;font-size:19px;font-weight:800;letter-spacing:-.03em;line-height:1.05;font-family:'Manrope',sans-serif;color:var(--ink)}
.brand b em{font-style:normal;color:var(--accent)}
.brand small{display:block;font-size:10px;color:var(--muted);font-weight:700;letter-spacing:.14em;font-family:'Manrope',sans-serif;margin-top:2px}
nav.main{display:flex;gap:2px;margin-inline-start:auto}
nav.main a{text-decoration:none;font-weight:600;font-size:14.5px;color:var(--ink-2);padding:8px 11px;border-radius:8px;white-space:nowrap}
nav.main a:hover{background:var(--sunk);color:var(--ink)}
nav.main a[aria-current="page"]{color:var(--accent);background:var(--accent-soft)}
.lang{flex:none;position:relative}
.lang select{appearance:none;-webkit-appearance:none;min-height:40px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:700 13.5px var(--body);padding-block:0;padding-inline:34px 14px;cursor:pointer}
.lang svg{position:absolute;inset-inline-start:11px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none;color:var(--muted)}
.top-cta{flex:none}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:10px;width:44px;height:44px;color:var(--ink);cursor:pointer;flex:none}
@media (max-width:1180px){
  nav.main{display:none;position:absolute;left:0;right:0;top:68px;background:var(--surface);border-bottom:1px solid var(--line);flex-direction:column;padding:8px max(16px,env(safe-area-inset-left,0px)) 16px;box-shadow:var(--shadow)}
  nav.main.open{display:flex}
  nav.main a{padding:12px}
  .menu-btn{display:grid;place-items:center}
  .lang{margin-inline-start:auto}
}
@media (max-width:760px){.btn.top-cta{display:none}}
@media (max-width:420px){.brand small{display:none}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;font:700 15px/1.2 var(--body);text-decoration:none;cursor:pointer;border:1.5px solid transparent;white-space:nowrap;transition:transform .15s,background .15s,filter .15s}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{filter:brightness(1.08)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{background:var(--sunk)}
.btn-light{background:#fff;color:#A50D17}
.btn svg{width:18px;height:18px;flex:none}

/* Views */
.view{display:none}
.view.active{display:block}
section{padding-block:72px}
section.tight{padding-block:44px 64px}
.lead{font-size:18px;color:var(--ink-2);max-width:60ch}
.h-sec{font-size:clamp(26px,3.4vw,40px);font-weight:800}
.h-sub{font-size:clamp(22px,2.6vw,28px);font-weight:800}
.stack{display:flex;flex-direction:column;gap:16px}
.crumb{font-size:13px;color:var(--muted);font-weight:600}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--accent)}

/* Home hero */
.hero{padding-block:56px 72px;background:var(--surface);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
.hero h1{font-size:clamp(34px,5vw,56px);font-weight:800;letter-spacing:-.035em}
[dir="rtl"] .hero h1{letter-spacing:0}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;gap:36px}.hero{padding-block:40px 56px}}

/* Red top sections: hero and every page head, white type */
.hero,.phead{background:var(--accent);color:#fff;border-bottom:0;position:relative;overflow:hidden}
.hero::before,.phead::before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;border:70px solid rgba(255,255,255,.07);inset-inline-start:-220px;bottom:-330px;pointer-events:none}
.hero .wrap,.phead .wrap{position:relative}
.hero .lead,.phead .lead{color:#fff}
.hero h1 em{color:#fff;text-decoration:underline;text-decoration-thickness:.07em;text-underline-offset:.14em}
.hero .btn-primary{background:#fff;color:var(--accent)}
.hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.6)}
.hero .btn-ghost:hover{background:rgba(255,255,255,.12)}
.phead .crumb,.phead .crumb a{color:#fff}
.phead .crumb a:hover{color:#fff;text-decoration:underline}
.phead .law-tag{background:rgba(255,255,255,.16);color:#fff}
header.top{border-top:0}
.hero .tool{box-shadow:0 24px 60px rgba(70,0,6,.35);border:1px solid rgba(255,255,255,.14)}

/* Renewal clock */
.tool{background:var(--navy);color:var(--navy-ink);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:18px;box-shadow:var(--shadow)}
:root[data-theme="dark"] .tool{border:1px solid var(--line)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tool{border:1px solid var(--line)}}
.tool h3{font-size:19px;font-weight:800}
.tool p.sub{color:var(--navy-2);font-size:14px;margin-top:4px}
.tool label{font-size:13px;font-weight:700;color:var(--navy-2)}
.tool input[type=date]{width:100%;min-height:48px;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:var(--navy-ink);font:600 16px var(--body);padding:0 14px;color-scheme:dark}
.clock{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center}
.days{font-family:var(--mono);font-size:56px;font-weight:600;line-height:1;letter-spacing:-.04em;direction:ltr;text-align:center;min-width:2.2ch}
.days small{display:block;font-family:var(--body);font-size:13px;font-weight:700;letter-spacing:0;color:var(--navy-2);margin-top:8px;direction:inherit}
.tl{position:relative;height:10px;border-radius:999px;background:rgba(255,255,255,.16);overflow:hidden;direction:ltr}
.tl b{position:absolute;top:0;bottom:0;background:#F0414C;border-radius:999px}
.tl i{position:absolute;top:-3px;width:3px;height:16px;background:#fff;left:0}
.tl-legend{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--navy-2);font-weight:600}
[dir="rtl"] .tl-legend{flex-direction:row-reverse}
.verdict{border-radius:12px;padding:14px 16px;font-size:14.5px;font-weight:600;background:rgba(255,255,255,.08)}
.verdict strong{display:block;font-size:15.5px;margin-bottom:2px}
.verdict{background:rgba(0,0,0,.18)}
.verdict.ok strong{color:#9BF0C6}.verdict.warn strong{color:#FFE08A}.verdict.bad strong{color:#FFFFFF;text-decoration:underline;text-underline-offset:3px}
.tool{position:relative;overflow:hidden}
.tool::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:34px solid rgba(255,255,255,.06);inset-inline-end:-110px;top:-110px;pointer-events:none}
.tl b{background:#FFFFFF}
.tl i{background:#FFD5D8}

/* Service grid */
.svc-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-top:32px}
.svc{grid-column:span 2;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;text-decoration:none;display:flex;flex-direction:column;gap:10px;transition:border-color .15s,transform .15s}
.svc:hover{border-color:var(--accent);transform:translateY(-2px)}
.svc:nth-child(1),.svc:nth-child(2){grid-column:span 3}
.svc:nth-child(1){background:var(--accent);border-color:var(--accent);color:#fff}
.svc:nth-child(1) p,.svc:nth-child(1) .law{color:rgba(255,255,255,.9)}
.svc:nth-child(2){background:var(--navy);border-color:var(--navy);color:var(--navy-ink)}
:root[data-theme="dark"] .svc:nth-child(2){border-color:var(--line)}
.svc:nth-child(2) p,.svc:nth-child(2) .law{color:var(--navy-2)}
.svc h3{font-size:20px;font-weight:800}
.svc p{color:var(--ink-2);font-size:15px}
.svc .law{font-size:12.5px;color:var(--muted);margin-top:auto;font-weight:600}
.ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);flex:none}
.svc:nth-child(1) .ico,.svc:nth-child(2) .ico{background:rgba(255,255,255,.15);color:#fff}
.ico svg{width:22px;height:22px}
@media (max-width:900px){.svc,.svc:nth-child(1),.svc:nth-child(2){grid-column:span 3}}
@media (max-width:600px){.svc-grid{grid-template-columns:1fr}.svc,.svc:nth-child(1),.svc:nth-child(2){grid-column:auto}}

/* Process: a real sequence */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:32px;border-top:2px solid var(--ink)}
.step{padding-top:22px;padding-inline-end:22px;display:flex;flex-direction:column;gap:8px}
.step .n{font-family:var(--mono);font-size:13px;color:var(--accent);font-weight:600}
.step h4{font-size:18px;font-weight:800}
.step p{color:var(--ink-2);font-size:15px}
@media (max-width:800px){.steps{grid-template-columns:1fr 1fr;row-gap:24px}}
@media (max-width:480px){.steps{grid-template-columns:1fr}}

/* Trust split */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
@media (max-width:860px){.split{grid-template-columns:1fr;gap:28px}}
.promise{margin:0;padding:0;display:grid;gap:14px;list-style:none}
.promise li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start;font-size:15.5px}
.promise svg{width:22px;height:22px;color:var(--ok);margin-top:2px}
.free-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:12px}
.free-box a.ext{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;background:var(--sunk);border-radius:var(--r-sm);text-decoration:none;font-weight:700}
.free-box a.ext span{font-family:var(--mono);font-size:13px;color:var(--muted);font-weight:500;direction:ltr}
.free-box a.ext:hover{color:var(--accent)}

/* Page heads */
.phead{background:var(--surface);border-bottom:1px solid var(--line);padding-block:44px 40px}
.phead h1{font-size:clamp(30px,4.2vw,48px);font-weight:800;margin-top:10px}
.phead .lead{margin-top:12px}
.law-tag{display:inline-block;font-size:12.5px;font-weight:600;color:var(--ink-2);background:var(--sunk);border-radius:6px;padding:3px 8px;margin-top:14px}

/* Types */
.types{display:grid;gap:12px}
details.type{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
details.type summary{cursor:pointer;list-style:none;padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;min-height:44px}
details.type summary::-webkit-details-marker{display:none}
details.type summary h3{font-size:19px;font-weight:800}
details.type summary p{color:var(--muted);font-size:14.5px;margin-top:2px}
details.type summary .chev{width:36px;height:36px;border-radius:50%;background:var(--sunk);display:grid;place-items:center;transition:transform .2s}
details.type[open] summary .chev{transform:rotate(180deg)}
details.type[open]{border-color:var(--ink-2)}
.type-body{padding:0 22px 22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.type-body h4{font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
[dir="rtl"] .type-body h4{letter-spacing:0}
.type-body ul,.other ul,.aside ul{margin:0;padding-inline-start:18px;padding-inline-end:0;color:var(--ink-2);font-size:15px;display:grid;gap:4px}
@media (max-width:700px){.type-body{grid-template-columns:1fr}}

/* Docs checklist */
.docs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.doc{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer;align-items:start;min-height:44px}
.doc input{width:20px;height:20px;accent-color:var(--accent);margin:2px 0 0}
.doc b{display:block;font-size:15px}
.doc span{font-size:13.5px;color:var(--muted)}
.doc:has(input:checked){background:var(--ok-soft);border-color:transparent}
.doc-meter{font-size:14px;color:var(--ink-2);font-weight:700}
@media (max-width:700px){.docs{grid-template-columns:1fr}}

/* FAQ */
.faq{display:grid;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:18px 0;font-weight:700;font-size:16.5px;list-style:none;display:flex;justify-content:space-between;gap:16px;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--accent);font-size:20px;line-height:1;flex:none}
.faq details[open] summary::after{content:"-"}
.faq p{padding:0 0 18px;color:var(--ink-2);max-width:70ch}

/* Callouts */
.callout{border-radius:var(--r);padding:18px 20px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;font-size:15px}
.callout svg{width:22px;height:22px;margin-top:1px}
.callout.info{background:var(--sunk);color:var(--ink-2)}
.callout.warn{background:var(--warn-soft);color:var(--ink)}
.callout.warn svg{color:var(--warn)}
.callout strong{color:var(--ink)}

/* Forms & tools */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;display:grid;gap:20px;min-width:0}
@media (max-width:520px){.panel{padding:20px}}
.panel h3{font-size:22px;font-weight:800}
.panel .sub{color:var(--muted);font-size:14.5px;margin-top:4px}
.field{display:grid;gap:6px;min-width:0}
.field label,.field legend{font-size:14px;font-weight:700;color:var(--ink);padding:0}
.help{font-size:13px;color:var(--muted)}
.err{color:var(--bad);font-weight:700;font-size:13px}
.field input[type=text],.field input[type=tel],.field input[type=date],.field input[type=number],.field select,.field textarea{width:100%;min-height:48px;border-radius:12px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font:500 16px var(--body);padding:10px 14px}
.field input[type=tel],.field input[type=date],.field input[type=number]{direction:ltr}
[dir="rtl"] .field input[type=tel],[dir="rtl"] .field input[type=number]{text-align:right}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink-2);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}
.field [aria-invalid="true"]{border-color:var(--bad)}
.row2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
@media (max-width:640px){.row2{grid-template-columns:1fr}}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);font-weight:700;font-size:14.5px;cursor:pointer;background:var(--bg)}
.seg input:checked+span{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.seg input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
fieldset{border:0;margin:0;padding:0;display:grid;gap:8px;min-width:0}
.result{border-radius:14px;padding:18px 20px;display:grid;gap:6px}
.result.ok{background:var(--ok-soft)}.result.ok strong{color:var(--ok)}
.result.warn{background:var(--warn-soft)}.result.warn strong{color:var(--warn)}
.result.bad{background:var(--bad-soft)}.result.bad strong{color:var(--bad)}
.result.neutral{background:var(--sunk)}
.result strong{font-size:17px}
.result p{font-size:14.5px;color:var(--ink-2)}
.big-figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fig{background:var(--sunk);border-radius:12px;padding:14px;min-width:0}
.fig b{display:block;font-family:var(--mono);font-size:24px;font-weight:600;direction:ltr;text-align:start}
[dir="rtl"] .fig b{text-align:right}
.fig span{font-size:12.5px;color:var(--muted);font-weight:700}
@media (max-width:520px){.big-figs{grid-template-columns:1fr}}

/* Tool tabs */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.tabs button{min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:700 14.5px var(--body);cursor:pointer}
.tabs button[aria-selected="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.two-col{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px;align-items:start}
@media (max-width:900px){.two-col{grid-template-columns:1fr}}
.aside{display:grid;gap:16px}
.aside .box{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;gap:10px;font-size:14.5px;color:var(--ink-2)}
.aside .box h4{font-size:16px;color:var(--ink)}

/* Wizard */
.wiz-steps{display:flex;gap:10px;align-items:center;font-size:13.5px;font-weight:700;color:var(--muted)}
.wiz-steps .dot{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--sunk);font-family:var(--mono);flex:none}
.wiz-steps .on .dot{background:var(--accent);color:#fff}
.wiz-steps .on{color:var(--ink)}
.wiz-steps .bar{flex:1;height:2px;background:var(--line);min-width:16px}
.wiz-steps span.lbl{display:flex;align-items:center;gap:8px}
.checks{display:grid;gap:10px}
.check{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;font-size:15px;background:var(--bg);min-height:44px}
.check input{width:20px;height:20px;accent-color:var(--accent);margin:1px 0 0}
.check:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}

/* Other services */
.other-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.other{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:10px;align-content:start}
.other h3{font-size:20px;font-weight:800}
.other p{color:var(--ink-2);font-size:15px}
@media (max-width:700px){.other-grid{grid-template-columns:1fr}}

/* Contact */
.contact-cards{display:grid;gap:12px;align-content:start}
.ccard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center}
.ccard b{display:block;font-size:13px;color:var(--muted);font-weight:700}
.ccard .v{font-size:18px;font-weight:800;overflow-wrap:anywhere}
.copy{background:none;border:1px solid var(--line);border-radius:8px;min-height:32px;padding:4px 12px;font:700 12.5px var(--body);color:var(--ink-2);cursor:pointer;margin-top:6px}
.copy:hover{background:var(--sunk)}

/* CTA band */
.band{background:var(--navy);color:var(--navy-ink)}
:root[data-theme="dark"] .band{border-block:1px solid var(--line)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .band{border-block:1px solid var(--line)}}
.band .wrap{padding-block:56px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.band h2{font-size:clamp(24px,3vw,34px);font-weight:800}
.band p{color:var(--navy-2);margin-top:8px}
.band .acts{display:flex;gap:12px;flex-wrap:wrap}
.band .btn-ghost{color:var(--navy-ink);border-color:rgba(255,255,255,.32)}
.band .btn-ghost:hover{background:rgba(255,255,255,.08)}
@media (max-width:760px){.band .wrap{grid-template-columns:1fr}}

/* Footer */
footer{padding-block:40px 88px;font-size:14px;color:var(--muted)}
footer .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:32px}
footer h4{font-size:14px;color:var(--ink);margin-bottom:10px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
footer a{text-decoration:none}
footer a:hover{color:var(--accent)}
footer .legal{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;font-size:13px;line-height:1.6}
@media (max-width:760px){footer .wrap{grid-template-columns:1fr}}

/* WhatsApp float */
.wa{position:fixed;inset-inline-end:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:8;width:56px;height:56px;border-radius:50%;background:#1A8F48;color:#fff;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.wa svg{width:28px;height:28px}

@media (prefers-reduced-motion:no-preference){
  .view.active .rise{animation:rise .5s cubic-bezier(.16,1,.3,1) both}
  .view.active .rise + .rise{animation-delay:.08s}
  @keyframes rise{from{transform:translateY(10px)}to{transform:none}}
  .tl b,.tl i{transition:left .4s cubic-bezier(.16,1,.3,1),width .4s cubic-bezier(.16,1,.3,1)}
}

/* Additions for the multi-page site (appended after style.css at build time). */

/* Icon sizes that the prototype set with attributes */
.notice svg{width:16px;height:16px}
.menu-btn svg{width:22px;height:22px}
.chev svg{width:18px;height:18px}

/* Semantic heading levels styled like the prototype's visual sizes */
.tool-h{font-size:19px;font-weight:800}
.panel .h3{font-size:22px;font-weight:800}
.other .h3{font-size:20px;font-weight:800}
.aside .box .h4{font-size:16px;color:var(--ink)}
.ccard a.v{text-decoration:none;color:var(--ink)}
.ccard a.v:hover{color:var(--accent)}

/* Language menu: real links so search engines find every language version */
details.lang{position:relative;flex:none}
details.lang summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:700 13.5px var(--body);cursor:pointer;white-space:nowrap}
details.lang summary::-webkit-details-marker{display:none}
details.lang summary svg{width:16px;height:16px;color:var(--muted);position:static;transform:none}
details.lang[open] summary{border-color:var(--ink-2)}
details.lang ul{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:20;list-style:none;margin:0;padding:6px;min-width:170px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:grid;gap:2px}
details.lang a{display:block;padding:10px 12px;border-radius:8px;text-decoration:none;font-weight:600;font-size:14.5px;color:var(--ink-2)}
details.lang a:hover{background:var(--sunk);color:var(--ink)}
details.lang a[aria-current="true"]{color:var(--accent);background:var(--accent-soft)}
@media (max-width:1180px){details.lang{margin-inline-start:auto}}
.ln-short{display:none}
@media (max-width:480px){.ln-full{display:none}.ln-short{display:inline}}

.foot-langs{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 16px;font-weight:600}

/* Root language gate and 404 */
.lang-gate{min-height:100vh;display:grid;place-items:center;padding-block:48px;background:var(--accent);color:#fff}
.lang-gate .brand b,.lang-gate .brand b em,.lang-gate .brand small{color:#fff}
.lang-gate h1{font-size:clamp(28px,4vw,44px);font-weight:800;max-width:22ch}
.lang-gate h1 em{font-style:normal;text-decoration:underline}
.gate-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.gate-list a{display:inline-flex;min-height:46px;align-items:center;padding:0 20px;border-radius:999px;background:#fff;color:var(--accent);font-weight:700;text-decoration:none}

/* Sixth home card (caregiver permits) runs the full row */
.svc:nth-child(6){grid-column:span 6}
@media (max-width:600px){.svc:nth-child(6){grid-column:auto}}

/* Caregiver page */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.chips li{padding:10px 16px;border-radius:999px;background:var(--accent-soft);color:var(--ink);font-weight:700;font-size:15px}
a.cross{display:grid;grid-template-columns:44px minmax(0,1fr) 20px;gap:14px;align-items:center;padding:18px 20px;border:1.5px solid var(--accent);border-radius:var(--r);text-decoration:none;background:var(--surface)}
a.cross b{display:block;font-size:16px}
a.cross span span{color:var(--accent);font-weight:700;font-size:15px}
a.cross:hover{background:var(--accent-soft)}
a.cross > svg{color:var(--accent)}

/* Page heads are red like the home hero. The older white .phead rule in style.css comes later in
   that file than the red one, so it has to be restated here, after everything. */
.phead{background:var(--accent);color:#fff;border-bottom:0}
.phead h1{color:#fff}

/* Home "good to know" slider: one card at a time, cross-fades, pauses on hover/focus */
.news{padding-block:40px 8px}
.news-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.news-ctrl{display:flex;gap:8px}
.nbtn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.nbtn:hover{border-color:var(--accent);color:var(--accent)}
.nbtn svg{width:18px;height:18px}
#nPrev svg{transform:rotate(90deg)}
#nNext svg{transform:rotate(-90deg)}
[dir="rtl"] #nPrev svg{transform:rotate(-90deg)}
[dir="rtl"] #nNext svg{transform:rotate(90deg)}
.pz{width:12px;height:14px;border-inline:4px solid currentColor;box-sizing:border-box}
.nbtn.paused .pz{width:0;height:0;border-inline:0;border-block:7px solid transparent;border-inline-start:12px solid currentColor;margin-inline-start:3px}
.slides{display:grid}
.slide{grid-area:1/1;display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center;padding:28px;border-radius:18px;background:var(--navy);color:#fff;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s}
.slide.on{opacity:1;visibility:visible}
.slide:nth-child(2n){background:var(--accent)}
.slide-ico{width:72px;height:72px;border-radius:18px;background:rgba(255,255,255,.14);display:grid;place-items:center}
.slide-ico svg{width:36px;height:36px;color:#fff}
.slide-tag{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.16);padding:3px 10px;border-radius:999px}
[dir="rtl"] .slide-tag{letter-spacing:0}
.slide h3{font-size:clamp(20px,2.4vw,26px);font-weight:800;margin:10px 0 6px}
.slide p{color:rgba(255,255,255,.92);max-width:62ch}
.slide a{display:inline-flex;align-items:center;gap:6px;margin-top:12px;color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.slide a svg{width:16px;height:16px}
.dots{display:flex;justify-content:center;gap:8px;margin-top:14px}
.dot{width:10px;height:10px;border-radius:50%;border:0;background:var(--line);cursor:pointer;padding:0}
.dot[aria-current="true"]{background:var(--accent);width:26px;border-radius:999px}
@media (max-width:600px){.slide{grid-template-columns:1fr;padding:22px}.slide-ico{width:56px;height:56px}}
@media (prefers-reduced-motion:reduce){.slide{transition:none}}

/* Partner hospital page */
.ins-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ins{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.ins .btn{grid-column:1/-1;justify-self:start;margin-top:6px}
.ins p{color:var(--ink-2);font-size:15px}
@media (max-width:700px){.ins-grid{grid-template-columns:1fr}}
.ins .btn{white-space:normal;text-align:start;line-height:1.3;padding-block:10px;max-width:100%}

/* Our own insurance offer sits above the insurer links */
.ins-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:26px;border-radius:18px;background:var(--accent);color:#fff}
.ins-top p{color:#fff;margin-top:6px;max-width:62ch}
.ins-top .h3{font-size:22px;font-weight:800}
.ins-acts{display:flex;gap:10px;flex-wrap:wrap}
.ins-top .btn-ghost{color:#fff;border-color:rgba(255,255,255,.6)}
.ins-top .btn-ghost:hover{background:rgba(255,255,255,.12)}
.ins-label{font-weight:800;color:var(--muted);font-size:14px;margin-bottom:-18px}
.ins .btn-ghost{color:var(--ink)}
@media (max-width:760px){.ins-top{grid-template-columns:1fr}}
.btn.soon{cursor:default;color:var(--muted);border-style:dashed}
.tabs{row-gap:8px}

/* Guide page */
.guide{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.guide p{color:var(--ink-2)}
.prov-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.prov-row .field{min-width:220px;flex:0 1 300px}
.guide-link{color:var(--accent);font-weight:700;font-size:14.5px}
@media (max-width:520px){.guide{grid-template-columns:1fr}.prov-row .field{flex:1 1 100%;min-width:0}}

/* Blog */
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.post-card{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);text-decoration:none;transition:border-color .15s,transform .15s}
.post-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.post-ico{width:48px;height:48px;border-radius:12px;background:var(--accent);display:grid;place-items:center;margin-bottom:6px}
.post-ico svg{width:24px;height:24px;color:#fff}
.post-card time{font-size:13px;font-weight:700;color:var(--muted)}
.post-card h3{font-size:18px;font-weight:800}
.post-card p{color:var(--ink-2);font-size:15px}
.post-more{margin-top:auto;padding-top:8px;color:var(--accent);font-weight:800;font-size:14.5px;display:inline-flex;gap:6px;align-items:center}
.post-more svg{width:16px;height:16px}
@media (max-width:900px){.post-grid{grid-template-columns:1fr}}
.prose{max-width:72ch;display:grid;gap:16px}
.prose h2{font-size:clamp(20px,2.4vw,24px);font-weight:800;margin-top:12px}
.prose p{font-size:17px;color:var(--ink-2);line-height:1.75}
.prose-acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.guide > .stack{min-width:0}
.guide .h3{overflow-wrap:anywhere}
.guide .btn{white-space:normal;max-width:100%;text-align:start;line-height:1.3;padding-block:10px}
