/* FONTS-START (generated by website-src/fonts.py) */
@font-face{font-family:'Gulzar';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/gulzar-arabic-400.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC7, U+10EC9-10EEE, U+10EF0-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Gulzar';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/gulzar-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Noto Sans Arabic';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/notosansarabic-arabic-400.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC7, U+10EC9-10EEE, U+10EF0-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Noto Sans Arabic';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/notosansarabic-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/poppins-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/poppins-latin-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/poppins-latin-600.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/poppins-latin-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* FONTS-END */
/* Dr Umer Ul Haq website. Light-first, with a dark option. Layout language follows codehype.ai (clean white page,
   quiet navigation, 40px buttons with 10px corners, heavy-outline call-to-action box with a hard offset shadow),
   in our own colours: maroon (brand), gold (accent), warm cream.
   The font-face rules are added by build.py from fonts.generated.css. Edit THIS file, not website/assets/site.css. */

:root,html[data-theme="light"]{
  color-scheme:light;
  --bg:#ffffff; --bg2:#faf6f1; --surface:#ffffff;
  --ink:#1b1210; --muted:#645853; --line:#e7ded6; --line2:#d6cac0;
  --brand:#661c15; --brand-h:#7e2519; --on-brand:#ffffff;
  --gold:#b8862b; --gold-t:#7a5a08;
  --tint:linear-gradient(145deg,#fdf6f0 0%,#f8eddc 100%);
  --hard:#1b1210; --shadow:0 1px 2px rgba(27,18,16,.05),0 12px 28px -16px rgba(27,18,16,.22);
  --head:rgba(255,255,255,.97); --wa:#157a43; --alert:#fdf1ee;
  --ill:#661c15; --ill-f:#ffffff; --ill-t:#f6e9da;
  --feat:#661c15; --on-feat:#ffffff; --on-feat-2:rgba(255,255,255,.78); --feat-acc:#e7bd6b; --ok:#157a43;
}
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0b0605; --bg2:#120a08; --surface:#150b09;
  --ink:#f5ede6; --muted:#c5b7ac; --line:#2e1815; --line2:#46251f;
  --brand:#e7bd6b; --brand-h:#f1cd89; --on-brand:#1a0e0b;
  --gold:#e7bd6b; --gold-t:#e7bd6b;
  --tint:radial-gradient(90% 80% at 70% 20%,#3a130e 0%,#1b0b09 55%,#120907 100%);
  --hard:#c9a03c; --shadow:0 12px 30px -16px rgba(0,0,0,.8);
  --head:rgba(11,6,5,.97); --wa:#157a43; --alert:#220d0a;
  --ill:#e7bd6b; --ill-f:#1c0e0b; --ill-t:#2a1410;
  --feat:#1f0d0a; --on-feat:#f5ede6; --on-feat-2:#c5b7ac; --feat-acc:#e7bd6b; --ok:#4fd18b;
}

*{box-sizing:border-box}
[id]{scroll-margin-top:92px}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 Poppins,"Segoe UI",Arial,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}
.is-ur body{font-family:"Noto Sans Arabic",Poppins,sans-serif;line-height:2}
.is-ur h1,.is-ur h2,.is-ur h3{font-family:Gulzar,"Noto Sans Arabic",serif!important;font-weight:400!important;line-height:1.9!important;letter-spacing:0!important}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.num{direction:ltr;unicode-bidi:isolate;display:inline-block;font-family:Poppins,sans-serif}
a.num{padding:3px 2px;min-height:24px}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:8px}
.sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;inset-inline-start:8px;top:-80px;background:var(--brand);color:var(--on-brand);padding:10px 16px;border-radius:10px;z-index:100;font-weight:600}
.skip:focus{top:8px}
.draftbar{background:#8a2a20;color:#fff;text-align:center;font-size:13px;padding:6px 12px;font-weight:600}

/* ---------- buttons (codehype style: 40px, 10px corners, solid primary, outlined secondary) ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 20px;border-radius:10px;border:2px solid var(--line2);background:var(--surface);color:var(--ink);font:500 14px/1 Poppins,"Noto Sans Arabic",sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}
.btn:hover{border-color:var(--ink)}
.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.btn.primary:hover{background:var(--brand-h);border-color:var(--brand-h)}
.btn.wa{background:var(--wa);border-color:var(--wa);color:#fff}
.btn.wa:hover{filter:brightness(1.08);border-color:var(--wa)}
.btn.lg{height:48px;padding:0 26px;font-size:15px;border-radius:12px}
.btn.hard{border-color:var(--ink);box-shadow:3px 3px 0 var(--hard)}
.btn.hard:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--hard)}
.btn.hard:active{transform:translate(3px,3px);box-shadow:0 0 0 var(--hard)}
.btn svg{width:16px;height:16px;flex:none}
.link{font-weight:500;font-size:14.5px;color:var(--brand);text-decoration:none;white-space:nowrap}
.link:hover{text-decoration:underline;text-underline-offset:4px}
.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- header ---------- */
.top{position:sticky;top:0;z-index:50;background:var(--head);border-bottom:1px solid var(--line)}
.top>.wrap{display:flex;align-items:center;gap:8px;height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none;margin-inline-end:20px}
.brand img{width:38px;height:38px}
.brand b{display:block;font-size:15.5px;line-height:1.15;font-weight:600;white-space:nowrap}
.brand small{display:block;font-size:11.5px;color:var(--muted);font-weight:400;white-space:nowrap}
nav.main{display:none;gap:2px;margin-inline-end:auto}
nav.main a{padding:8px 12px;border-radius:8px;font-size:14.5px;font-weight:500;color:var(--muted);text-decoration:none;white-space:nowrap}
nav.main a:hover,nav.main a[aria-current="page"]{background:var(--bg2);color:var(--ink)}
.tools{display:flex;align-items:center;gap:8px;margin-inline-start:auto}
.seg{display:inline-flex;border:0;border-radius:10px;padding:3px;background:var(--bg2)}
.seg button{border:0;background:none;height:32px;padding:0 11px;border-radius:7px;font:600 13px Poppins,"Noto Sans Arabic",sans-serif;color:var(--muted);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--brand);color:var(--on-brand)}
.iconbtn{width:40px;height:40px;border-radius:10px;border:2px solid var(--line2);background:var(--surface);color:var(--ink);display:grid;place-items:center;cursor:pointer;padding:0}
.iconbtn:hover{border-color:var(--ink)}
.iconbtn svg{width:18px;height:18px}
.iconbtn .i-sun{display:none}
html[data-theme="dark"] .iconbtn .i-sun{display:block}
html[data-theme="dark"] .iconbtn .i-moon{display:none}
.bookmenu{display:none}
.burger{display:grid}
.menu-open nav.main{display:flex;position:absolute;inset:68px 0 auto 0;flex-direction:column;gap:2px;background:var(--bg);padding:12px 20px 22px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
.menu-open nav.main a{padding:14px 12px;font-size:16px}
@media(min-width:1000px){nav.main{display:flex}.burger{display:none}.menu-open nav.main{position:static;flex-direction:row;padding:0;border:0;background:none;box-shadow:none}.menu-open nav.main a{padding:8px 12px;font-size:14.5px}.bookmenu{display:block}.menu-open nav.main a.nav-cta{display:none}}
@media(max-width:480px){.wrap{padding:0 18px}.top>.wrap{gap:6px}.brand{margin-inline-end:0}.brand small{display:none}.brand img{width:34px;height:34px}.seg button{padding:0 9px;font-size:12.5px}.iconbtn{width:38px;height:38px}}
@media(max-width:350px){.brand b{font-size:14px}.brand img{display:none}}

/* ---------- 3D + posters ---------- */
[data-3d]{position:relative;min-height:100px}
[data-3d] canvas{position:relative;z-index:1}
.poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .45s ease;pointer-events:none}
.is3d .poster{opacity:0}
html[data-theme="light"] .p-dk,html[data-theme="dark"] .p-lt{display:none}
.no-webgl{background:none}   /* every model has a poster, so nothing extra is needed when WebGL is missing */
.hint{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:12px;color:var(--muted);pointer-events:none;z-index:2}

/* ---------- hero ---------- */
.hero{padding:48px 0 32px}
.hero .wrap{display:grid;gap:40px;align-items:center}
@media(min-width:960px){.hero{padding:72px 0 48px}.hero .wrap{grid-template-columns:1.12fr .88fr;gap:56px}}
.badge{display:inline-flex;align-items:center;gap:9px;padding:6px 14px;border-radius:999px;border:1px solid var(--line2);background:var(--tint);font-size:13px;font-weight:500;color:var(--ink)}
.badge::before{content:"";width:8px;height:8px;border-radius:50%;background:#a99b92;flex:none}
.badge.is-open::before{background:#1fbf6a;box-shadow:0 0 0 4px rgba(31,191,106,.2)}
h1{font-size:clamp(32px,4.4vw,50px);line-height:1.1;margin:20px 0 16px;font-weight:700;letter-spacing:-.03em}
h1 em{font-style:normal;color:var(--brand);display:block}
.lead{color:var(--muted);font-size:clamp(16px,1.6vw,18px);max-width:520px;margin:0}
.loc{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:14.5px;color:var(--muted)}
.loc svg{width:16px;height:16px;flex:none;color:var(--gold-t)}
.cta-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:540px;margin-top:30px;padding:10px 10px 10px 22px;background:var(--surface);border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--hard)}
.cta-bar small{display:block;font-size:12px;color:var(--muted);line-height:1.3}
.cta-bar .big{display:block;font-size:clamp(20px,3.4vw,27px);line-height:1.2;font-weight:700;letter-spacing:-.01em;color:var(--ink);text-decoration:none}
.ticks{display:flex;flex-wrap:wrap;gap:6px 20px;margin:18px 0 0;padding:0;list-style:none;font-size:13.5px;color:var(--muted)}
.ticks li{display:flex;align-items:center;gap:7px}
.ticks li::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--tint);border:1.5px solid var(--gold);flex:none}
.also{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;font-size:14.5px;color:var(--muted)}
.also a:not(.btn){color:var(--ink);font-weight:500;text-decoration:none}
.visual{position:relative;border-radius:28px;background:var(--tint);border:1px solid var(--line);overflow:hidden;width:100%;min-width:0;aspect-ratio:1/1.05}
@media(min-width:960px){.visual{aspect-ratio:1/1.12}}
.visual [data-3d]{position:absolute;inset:0}

/* ---------- stats ---------- */
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding:28px 0;border-block:1px solid var(--line);margin:24px 0 0;list-style:none}
@media(min-width:760px){.stats{grid-template-columns:repeat(4,1fr)}}
.stats b{display:block;font-size:24px;line-height:1.2;font-weight:700;letter-spacing:-.01em}
.stats span{font-size:13.5px;color:var(--muted)}

/* ---------- sections ---------- */
section{padding:88px 0}
@media(max-width:700px){section{padding:56px 0}}
main>section:not(:first-child),footer{content-visibility:auto;contain-intrinsic-size:auto 640px}
.soft{background:var(--bg2)}
.eyebrow{margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-t)}
.is-ur .eyebrow{letter-spacing:0;text-transform:none;font-size:14px}
h2{font-size:clamp(26px,3.4vw,38px);line-height:1.15;margin:0 0 12px;font-weight:700;letter-spacing:-.02em}
.sub{color:var(--muted);font-size:17px;max-width:560px;margin:0 0 36px}
.center{text-align:center}.center .sub{margin-inline:auto}
h3{margin:0 0 6px;font-size:18px;line-height:1.35;font-weight:600}
.card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;color:var(--ink);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
a.card:hover{border-color:var(--line2);transform:translateY(-2px);box-shadow:var(--shadow)}
.card p{margin:0;color:var(--muted);font-size:15px}
.card .more{display:inline-block;margin-top:14px;font-weight:500;font-size:14px;color:var(--brand)}
.grid{display:grid;gap:16px}
@media(min-width:700px){.g2,.g3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.g3{grid-template-columns:repeat(3,1fr)}}

/* booking builder */
.book{max-width:720px;margin:0 auto;padding:32px;background:var(--surface);border:2px solid var(--ink);border-radius:20px;box-shadow:6px 6px 0 var(--hard)}
@media(max-width:560px){.book{padding:22px;box-shadow:4px 4px 0 var(--hard)}}
.book h2{font-size:clamp(22px,2.6vw,28px);margin-bottom:6px}
.book p{margin:0;color:var(--muted);font-size:15px}
.lbl{margin:22px 0 10px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-t)}
.is-ur .lbl{letter-spacing:0;text-transform:none;font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{height:42px;padding:0 18px;border-radius:10px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font:500 14px Poppins,"Noto Sans Arabic",sans-serif;cursor:pointer}
.chip:hover{border-color:var(--line2)}
.chip[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.book .go{margin-top:26px;width:100%}
.book small{display:block;margin-top:12px;color:var(--muted);font-size:13px}

/* explorer */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.tabs button{height:40px;padding:0 16px;border-radius:10px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font:500 14px Poppins,"Noto Sans Arabic",sans-serif;cursor:pointer}
.tabs button:hover{border-color:var(--line2)}
.tabs button[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.exp{display:grid;gap:28px}
@media(min-width:900px){.exp{grid-template-columns:.85fr 1.15fr;align-items:stretch;gap:44px}}
.xstage{position:relative;min-height:320px;border-radius:24px;background:var(--tint);border:1px solid var(--line);overflow:hidden}
.xstage .pm{position:absolute;inset:0;display:none}
.xstage .pm.on{display:block;animation:fade .45s ease}
.xstage .pm [data-3d]{position:absolute;inset:0}
.xstage .nm{position:absolute;left:0;right:0;bottom:14px;text-align:center;font-size:13.5px;font-weight:500;color:var(--muted);z-index:2}
@keyframes fade{from{opacity:0}to{opacity:1}}
.clist{list-style:none;margin:0;padding:0}
.clist li{border-bottom:1px solid var(--line)}
.clist li:first-child{border-top:1px solid var(--line)}
.clist a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 4px;text-decoration:none;color:var(--ink)}
.clist b{display:block;font-weight:600;font-size:16.5px}
.clist small{display:block;font-size:14px;color:var(--muted);line-height:1.5;margin-top:2px}
.clist .go{color:var(--muted);transition:transform .2s,color .2s;flex:none}
.clist a:hover .go{transform:translateX(4px);color:var(--brand)}
.clist a:hover b{color:var(--brand)}
.exp .after{margin-top:22px}

/* steps, lists */
.steps{display:grid;gap:28px;margin:0;padding:0;list-style:none;counter-reset:s}
@media(min-width:800px){.steps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px}}
.steps li::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:40px;height:40px;margin-bottom:16px;border-radius:12px;background:var(--tint);border:1px solid var(--line2);font-weight:700;color:var(--brand);direction:ltr}
.steps p{margin:0;color:var(--muted);font-size:15px}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
@media(min-width:800px){.checks.two{grid-template-columns:1fr 1fr}}
.checks li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.checks li::before{content:"";flex:none;width:8px;height:8px;margin-top:10px;border-radius:50%;background:var(--gold)}

/* about */
.about .wrap{display:grid;gap:40px;align-items:center}
@media(min-width:880px){.about .wrap{grid-template-columns:.6fr 1.4fr;gap:64px}}
.seal{width:min(260px,70%);margin:0 auto;padding:18px;border-radius:50%;background:var(--tint);border:1px solid var(--line)}
.about p{color:var(--muted);margin:0 0 18px;max-width:560px}
.creds{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.creds span{padding:5px 13px;border-radius:999px;border:1px solid var(--line2);font-size:13.5px;font-weight:500;background:var(--surface)}

/* visit */
.two{display:grid;gap:28px}
@media(min-width:900px){.two{grid-template-columns:1fr 1.1fr;gap:44px;align-items:start}}
table.hours{width:100%;border-collapse:collapse;margin-bottom:8px}
table.hours td{padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}
table.hours td:last-child{text-align:end;font-weight:600;white-space:nowrap;padding-inline-start:14px}
.addr{margin:18px 0 0;font-size:15px;color:var(--muted)}
.addr strong{color:var(--ink);display:block}
.phones{margin:18px 0 0;font-size:15px}
.phones .num.big{font-size:24px;font-weight:700;color:var(--ink);text-decoration:none;display:block}
.phones a{color:var(--muted);text-decoration:none}
.map{aspect-ratio:4/3;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--bg2)}
.map iframe{width:100%;height:100%;border:0}
html[data-theme="dark"] .map iframe{filter:invert(.92) hue-rotate(180deg) saturate(.7)}

/* faq */
details{border-bottom:1px solid var(--line);padding:6px 0}
details:first-of-type{border-top:1px solid var(--line)}
summary{cursor:pointer;font-weight:600;font-size:16.5px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:24px;font-weight:400;line-height:1;color:var(--muted);flex:none}
details[open] summary::after{content:"\2212"}
details p{margin:0 0 18px;color:var(--muted);max-width:720px}
.narrow{max-width:800px;margin:0 auto}

/* closing band */
.band{padding:56px 24px;text-align:center;border-radius:28px;border:1px solid var(--line);background:var(--tint)}
.band h2{max-width:560px;margin-inline:auto}
.band .row{justify-content:center;margin-top:24px}

/* ---------- inner pages ---------- */
.phero{padding:36px 0 8px}
.phero .wrap{display:grid;gap:28px;align-items:center}
@media(min-width:900px){.phero{padding:56px 0 16px}.phero .wrap{grid-template-columns:1.2fr .8fr;gap:48px}}
.phero h1{font-size:clamp(30px,4.4vw,46px);margin:14px 0 12px}
.phero .lead{max-width:560px}
.phero .art{position:relative;height:240px;border-radius:24px;background:var(--tint);border:1px solid var(--line);overflow:hidden}
@media(max-width:899px){.phero .art{order:-1;height:200px}}
.phero .art [data-3d]{position:absolute;inset:0}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--muted)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.layout{display:grid;gap:40px;padding:40px 0 88px}
@media(min-width:960px){.layout{grid-template-columns:1fr 340px;gap:64px;align-items:start}}
.prose h2{font-size:clamp(21px,2.4vw,26px);margin:40px 0 12px;letter-spacing:-.01em}
.prose h2:first-child{margin-top:0}
.prose p{color:var(--ink);margin:0 0 14px;max-width:700px;opacity:.9}
.prose ul{margin:0 0 14px;padding-inline:24px;max-width:700px}
.prose li{margin:8px 0;opacity:.9}
.prose table{border-collapse:collapse;width:100%;max-width:700px}
.alert{border:1px solid var(--line2);background:var(--alert);border-radius:14px;padding:18px 22px;margin:28px 0;max-width:700px}
.alert b{display:block;margin-bottom:4px}
.alert ul{margin:6px 0}
.related{display:flex;flex-wrap:wrap;gap:8px}
.related a{padding:7px 14px;border:1px solid var(--line2);border-radius:999px;text-decoration:none;color:var(--ink);font-size:14px;background:var(--surface)}
.related a:hover{border-color:var(--ink)}
.draft{margin-top:32px;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);max-width:700px}
.aside{position:sticky;top:92px;display:grid;gap:14px}
.aside .card{padding:22px}
.aside .big{display:block;font-size:24px;font-weight:700;color:var(--ink);text-decoration:none;margin:8px 0 0}
.aside .alt2{font-size:14.5px;color:var(--muted);text-decoration:none}
.aside .btn{width:100%;margin-top:10px}
.aside .meta{margin:14px 0 0;font-size:13.5px;color:var(--muted)}
.aside .badge{margin-top:12px}
.hub-group{margin:48px 0 16px;font-size:22px}

/* ---------- footer ---------- */
footer{background:var(--bg2);border-top:1px solid var(--line);padding:56px 0 110px;font-size:14.5px;color:var(--muted)}
.foot{display:grid;gap:36px}
@media(min-width:800px){.foot{grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:40px}footer{padding-bottom:36px}}
.foot-brand .brand{margin:0 0 12px}
.foot-brand p{margin:0 0 16px;max-width:300px}
.fh{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.is-ur .fh{letter-spacing:0;text-transform:none;font-size:14px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
footer a{color:var(--muted);text-decoration:none;display:inline-block;padding:3px 0}
footer a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}
footer .plain{margin:0 0 10px;line-height:1.55}
.foot-bottom{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between;font-size:13px}
.foot-bottom p{margin:0;max-width:640px}
.sticky{position:fixed;inset:auto 0 0 0;display:flex;gap:8px;padding:10px 12px;background:var(--head);border-top:1px solid var(--line);z-index:60;box-sizing:border-box;max-width:100vw}
.sticky a{flex:1 1 0;min-width:0;height:46px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-weight:600;font-size:14.5px;text-decoration:none;white-space:nowrap}
.sticky .c{flex-grow:1.5;background:var(--brand);color:var(--on-brand)}
.sticky .w{background:var(--wa);color:#fff}
@media(min-width:900px){.sticky{display:none}}

.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{transition:none!important}.xstage .pm.on{animation:none}html{scroll-behavior:auto}.btn,.card{transition:none}}
@media print{.top,.sticky,[data-3d],.book,.draftbar{display:none!important}body{background:#fff;color:#000}a{color:#000}}

.qual{border-collapse:collapse;width:100%;max-width:700px}
.qual td{padding:12px 0;border-bottom:1px solid var(--line);vertical-align:top;font-size:15px}
.qual td:first-child{font-weight:600;padding-inline-end:20px;white-space:nowrap}
@media(max-width:480px){.qual td:first-child{white-space:normal}}
.sub.center{margin-inline:auto;text-align:center}
.band .sub{margin-bottom:0}
footer a.num{padding-inline:0}
.cta-bar .big{white-space:nowrap}
@media(max-width:520px){.cta-bar{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.cta-bar .btn{width:100%}}


/* ================= v3: illustrations, services, first visit, explorer tiles, assistant, banner, footer ================= */
.ico{width:20px;height:20px;flex:none}
.arr{width:16px;height:16px;transition:transform .2s}
.is-ur .arr{transform:scaleX(-1)}
.btn.gold{background:#e7bd6b;border-color:#e7bd6b;color:#1a0e0b}
.btn.gold:hover{background:#f1cd89;border-color:#f1cd89}
.btn.lightline{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.btn.lightline:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.chip-tag{align-self:flex-start;display:inline-block;padding:4px 12px;border-radius:999px;background:var(--tint);border:1px solid var(--line2);font-size:12.5px;font-weight:500;color:var(--gold-t)}

/* illustrations */
.ill{width:100%;height:100%;display:block}
.ill .t{fill:var(--ill-t)}
.ill .f{fill:var(--ill-f);stroke:var(--ill);stroke-width:2.5;stroke-linejoin:round}
.ill .s{fill:none;stroke:var(--ill);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.ill .g{fill:var(--gold);stroke:none}
.ill .gs{fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.ill .float,.ill .drift,.ill .drift2{transform-box:fill-box;transform-origin:center}
.ill .float{animation:bob 5s ease-in-out infinite}
.ill .drift{animation:bob 6s ease-in-out -2s infinite}
.ill .drift2{animation:bob 7s ease-in-out -4s infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* services */
.svcs{display:grid;gap:18px;grid-template-columns:1fr}
@media(min-width:640px){.svcs{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.svcs{grid-template-columns:repeat(6,1fr)}.svc{grid-column:span 2}.svc.wide{grid-column:span 3}}
.svc{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s,border-color .25s}
.svc:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--line2)}
.svc:hover .arr{transform:translateX(4px)}
.svc-art{height:180px;background:var(--tint);border-bottom:1px solid var(--line);padding:6px 10px}
.svc.wide .svc-art{height:210px}
.svc-body{display:flex;flex-direction:column;gap:8px;flex:1;padding:22px 24px 24px}
.svc-body h3{margin:6px 0 0;font-size:20px}
.svc-body p{margin:0;color:var(--muted);font-size:15px}
.svc .more{margin-top:auto;padding-top:12px;display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--brand)}

/* first visit */
.visit{display:grid;gap:28px}
@media(min-width:960px){.visit{grid-template-columns:1.2fr .8fr;gap:36px;align-items:stretch}}
.timeline{list-style:none;margin:0;padding:6px 0 0;display:grid;gap:30px}
.timeline li{display:grid;grid-template-columns:60px 1fr;gap:22px;position:relative}
.timeline li:not(:last-child)::after{content:"";position:absolute;inset-inline-start:29px;top:66px;bottom:-26px;border-inline-start:2px dashed var(--line2)}
.node{width:60px;height:60px;border-radius:20px;background:var(--tint);border:1px solid var(--line2);display:grid;place-items:center;color:var(--brand);box-shadow:var(--shadow)}
.node .ico{width:28px;height:28px}
.timeline h3{margin:8px 0 6px;font-size:21px}
.timeline p{margin:0;color:var(--muted);max-width:480px}
.timeline .chip-tag{margin-top:2px}
.bring{display:flex;flex-direction:column;gap:14px;background:var(--feat);color:var(--on-feat);border-radius:26px;padding:34px;border:1px solid transparent}
html[data-theme="dark"] .bring{border-color:var(--line2)}
.bring .eyebrow{color:var(--feat-acc);margin:0}
.bring h3{margin:0;font-size:25px;color:var(--on-feat);line-height:1.2}
.bring ul{list-style:none;margin:8px 0 4px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 14px}
.bring li{display:flex;gap:12px;align-items:flex-start}
.bring li .ico{width:40px;height:40px;padding:10px;border-radius:12px;background:rgba(255,255,255,.12);color:var(--feat-acc)}
.bring b{display:block;font-size:15px;font-weight:600}
.bring small{display:block;color:var(--on-feat-2);font-size:13px;line-height:1.45}
.bring .walk{display:flex;gap:10px;align-items:flex-start;margin:6px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.2);font-size:14px;color:var(--on-feat-2)}
.bring .walk .ico{width:18px;height:18px;margin-top:3px;color:var(--feat-acc)}
.bring .btn{margin-top:auto;align-self:flex-start}
@media(max-width:480px){.bring{padding:26px}.bring ul{grid-template-columns:1fr}}

/* explorer tiles + stage */
.areas{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:28px}
@media(max-width:900px){.areas{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-inline:-18px;padding:6px 18px 14px;scrollbar-width:none}.areas::-webkit-scrollbar{display:none}.area{flex:none;width:150px;scroll-snap-align:start}}
.area{display:flex;flex-direction:column;align-items:flex-start;gap:16px;text-align:start;padding:16px 16px 18px;border-radius:18px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font:500 14.5px/1.3 Poppins,"Noto Sans Arabic",sans-serif;cursor:pointer;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .25s,background .25s,color .25s}
.area .ico{width:46px;height:46px;padding:11px;border-radius:14px;background:var(--tint);color:var(--brand);transition:transform .4s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.area:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 18px 30px -16px rgba(184,134,43,.6)}
.area:hover .ico{transform:rotate(-8deg) scale(1.1)}
.area[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand);box-shadow:0 18px 34px -14px rgba(102,28,21,.7)}
html[data-theme="dark"] .area[aria-pressed="true"]{box-shadow:0 18px 34px -14px rgba(231,189,107,.45)}
.area[aria-pressed="true"] .ico{background:rgba(255,255,255,.2);color:var(--on-brand)}
.xstage{--acc:#b8862b;--gx:50%;--gy:55%;min-height:360px;border-radius:28px;isolation:isolate}
.xstage .orb{position:absolute;inset:0;z-index:0;background:radial-gradient(circle 240px at var(--gx) var(--gy),color-mix(in srgb,var(--acc) 38%,transparent),transparent 72%);transition:background .3s;pointer-events:none}
.xstage::after{content:"";position:absolute;z-index:0;width:80%;aspect-ratio:1;left:10%;top:6%;border-radius:50%;border:2px dashed color-mix(in srgb,var(--acc) 55%,transparent);animation:spin 46s linear infinite;pointer-events:none}
@keyframes spin{to{transform:rotate(360deg)}}
.xstage[data-area="spine"]{--acc:#b8862b}.xstage[data-area="joints"]{--acc:#c0392b}.xstage[data-area="bones"]{--acc:#9a7b4a}
.xstage[data-area="immune"]{--acc:#d9822b}.xstage[data-area="vessels"]{--acc:#b3261e}.xstage[data-area="gout"]{--acc:#c9a03c}
.xstage .pm{z-index:1}
.xstage .pm.on{animation:pop .6s cubic-bezier(.2,.8,.2,1)}
@keyframes pop{from{opacity:0;transform:scale(.86) rotate(-5deg)}to{opacity:1;transform:none}}
.xstage .pm [data-3d]{transform:perspective(900px) rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg));transition:transform .25s ease-out}
.xstage .nm{z-index:2}
.clist li{animation:rise .5s both ease-out}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* appointment assistant (Marham-style: tabs, date strip, slots, plus a guided chat) */
.appt{display:grid;max-width:1020px;margin:0 auto;border:2px solid var(--ink);border-radius:26px;background:var(--surface);box-shadow:6px 6px 0 var(--hard);overflow:hidden}
@media(min-width:900px){.appt{grid-template-columns:320px 1fr}}
@media(max-width:560px){.appt{box-shadow:4px 4px 0 var(--hard);border-radius:20px}}
.appt-side{display:flex;flex-direction:column;gap:22px;padding:28px;background:var(--bg2);border-bottom:1px solid var(--line)}
@media(min-width:900px){.appt-side{border-bottom:0;border-inline-end:1px solid var(--line)}}
.who{display:flex;gap:14px;align-items:center}
.who img{border-radius:50%;flex:none}
.who b{display:block;font-size:17px;line-height:1.25}
.who small{display:block;color:var(--muted);font-size:13.5px}
.verified{display:inline-flex;align-items:center;gap:5px;margin-top:5px;font-size:12.5px;font-weight:600;color:var(--ok)}
.verified .ico{width:15px;height:15px}
.facts{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.facts li{display:flex;gap:12px}
.facts .ico{width:38px;height:38px;padding:9px;border-radius:12px;background:var(--tint);border:1px solid var(--line2);color:var(--brand)}
.facts b{display:block;font-size:14.5px}
.facts small{display:block;color:var(--muted);font-size:13.5px;line-height:1.55}
.appt-side .btn{margin-top:auto;align-self:flex-start}
.appt-main{display:flex;flex-direction:column;min-width:0}
.appt-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.appt-tabs button{height:56px;border:0;border-bottom:3px solid transparent;background:var(--bg2);font:600 14.5px Poppins,"Noto Sans Arabic",sans-serif;color:var(--muted);cursor:pointer}
.appt-tabs button:hover{color:var(--ink)}
.appt-tabs button[aria-selected="true"]{background:var(--surface);color:var(--ink);border-bottom-color:var(--brand)}
.chat-head{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--line)}
.chat-head img{border-radius:50%}
.chat-head b{display:block;font-size:15px}
.chat-head small{display:block;font-size:12.5px;color:var(--muted);line-height:1.4}
.restart{margin-inline-start:auto;flex:none;width:38px;height:38px;border-radius:10px;border:2px solid var(--line);background:var(--surface);color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0}
.restart:hover{border-color:var(--ink);color:var(--ink)}
.restart .ico{width:16px;height:16px}
.chat{min-height:400px;max-height:560px;overflow-y:auto;padding:22px 20px;display:flex;flex-direction:column;gap:12px;background:var(--surface);overscroll-behavior:contain}
@media(max-width:560px){.chat{min-height:360px;max-height:520px;padding:16px 14px}}
.msg{display:flex;gap:10px;max-width:94%;animation:rise .35s both ease-out}
.msg.me{align-self:flex-end;justify-content:flex-end}
.msg .av{border-radius:50%;flex:none;margin-top:2px;align-self:flex-start}
.bub{padding:11px 16px;border-radius:18px;font-size:15px;line-height:1.55}
.msg.bot .bub{background:var(--bg2);border:1px solid var(--line);border-top-left-radius:5px}
.msg.me .bub{background:var(--brand);color:var(--on-brand);border-bottom-right-radius:5px}
.is-ur .msg.bot .bub{border-top-left-radius:18px;border-top-right-radius:5px}
.is-ur .msg.me .bub{border-bottom-right-radius:18px;border-bottom-left-radius:5px}
.ctl{margin-inline-start:38px;animation:rise .4s both ease-out}
@media(max-width:560px){.ctl{margin-inline-start:0}}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{height:44px;padding:0 20px;border-radius:999px;border:2px solid var(--line2);background:var(--surface);color:var(--ink);font:500 14px Poppins,"Noto Sans Arabic",sans-serif;cursor:pointer;transition:border-color .15s,background .15s}
.opt:hover{border-color:var(--brand);background:var(--tint)}
.days{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity}
.day{flex:none;width:70px;padding:11px 0;border-radius:16px;border:2px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;scroll-snap-align:start;font-family:inherit;transition:border-color .15s,transform .15s}
.day small{font-size:11.5px;color:var(--muted);line-height:1.3}
.day b{font-size:21px;line-height:1.15}
.day:hover{border-color:var(--brand);transform:translateY(-2px)}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:8px}
.slot{height:44px;border-radius:12px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font:500 14px Poppins,sans-serif;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.slot:hover{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.note{margin:10px 0 0;font-size:12.5px;color:var(--muted)}
.ask{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ask input{flex:1 1 200px;min-width:0;height:46px;padding:0 14px;border-radius:12px;border:2px solid var(--line2);background:var(--surface);color:var(--ink);font:400 15px Poppins,"Noto Sans Arabic",sans-serif}
.ask input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 25%,transparent)}
.ask .btn{height:46px}
.err{flex-basis:100%;margin:0;color:#c0392b;font-size:13px}
html[data-theme="dark"] .err{color:#ff8a7a}
.err:empty{display:none}
.sumcard{background:var(--surface);border:2px solid var(--ink);border-radius:18px;padding:20px 22px;box-shadow:4px 4px 0 var(--hard)}
.sumcard dl{margin:0 0 18px;display:grid;gap:10px}
.sumcard dl>div{display:flex;justify-content:space-between;gap:16px;padding-bottom:9px;border-bottom:1px dashed var(--line2)}
.sumcard dt{color:var(--muted);font-size:13.5px}
.sumcard dd{margin:0;font-weight:600;font-size:14.5px;text-align:end}
.sumcard .row{margin:0}
.priv{margin:14px 0 0;font-size:12.5px;color:var(--muted)}
.priv a{color:var(--ink);font-weight:600;text-decoration:none}

/* dark closing banner (dark in both themes so it stands out) */
.band2{position:relative;display:grid;gap:12px;align-items:center;padding:44px 28px;border-radius:32px;overflow:hidden;color:#fff;background:radial-gradient(80% 130% at 88% 15%,#8a2a20 0%,#661c15 38%,#2a0b08 100%);box-shadow:0 30px 60px -30px rgba(60,10,5,.7)}
@media(min-width:900px){.band2{grid-template-columns:1.4fr .6fr;padding:60px 56px}}
.band2 .row .btn.lg{padding:0 20px}
.band2 .eyebrow{color:#e7bd6b;margin:0 0 12px}
.band2 h2{color:#fff;max-width:520px;margin-bottom:12px}
.band2-text>p{margin:0;color:rgba(255,255,255,.84);max-width:480px;font-size:17px}
.band2 .row{margin-top:28px}
.band2-meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin:24px 0 0;padding:0;list-style:none;font-size:13.5px;color:rgba(255,255,255,.78)}
.band2-meta li::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#e7bd6b;margin-inline-end:8px}
.band2-art{position:relative;min-height:260px}
.band2-art img{position:absolute;inset:0;margin:auto;height:118%;width:auto;max-width:none;filter:drop-shadow(0 24px 30px rgba(0,0,0,.45))}
@media(max-width:899px){.band2-art{display:none}}

/* footer and contact details */
.foot{grid-template-columns:1fr}
@media(min-width:800px){.foot{grid-template-columns:1.4fr .8fr 1fr 1.5fr}}
.contact-list{gap:14px}
.contact-list li{display:flex;gap:10px;align-items:flex-start}
.contact-list .ico{width:18px;height:18px;margin-top:3px;color:var(--gold-t)}
.contact-list .num{color:var(--ink);font-weight:600}
.socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.soc{width:40px;height:40px;padding:0;border-radius:12px;border:2px solid var(--line2);display:grid;place-items:center;color:var(--ink)}
.soc:hover{border-color:var(--brand);color:var(--brand);text-decoration:none}
.soc .ico{width:20px;height:20px}
.phones .mail{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--muted);text-decoration:none;font-size:15px}
.phones .mail .ico{width:18px;height:18px;color:var(--gold-t)}

@media(prefers-reduced-motion:reduce){.ill .float,.ill .drift,.ill .drift2,.xstage::after{animation:none}.xstage .pm.on,.msg,.ctl,.clist li{animation:none}.area,.svc,.day{transition:none}}
.areas{scroll-padding-inline:18px}

/* ---------- round 3: cleaner header, Book menu, dual Call/WhatsApp CTAs, live calendar ---------- */
[hidden]{display:none!important}
button.link{background:none;border:0;padding:0;cursor:pointer;font-family:inherit}
.bookmenu{position:relative}
.bookmenu .btn{padding:0 16px}
.bookmenu .btn svg:last-child{width:14px;height:14px;transition:transform .2s}
.bookmenu .btn[aria-expanded="true"] svg:last-child{transform:rotate(180deg)}
.bm-pop{position:absolute;inset-inline-end:0;top:calc(100% + 12px);width:316px;background:var(--surface);border:2px solid var(--ink);border-radius:14px;box-shadow:4px 4px 0 var(--hard);padding:8px;z-index:70}
.bm-row{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;color:var(--ink);text-decoration:none}
.bm-row:hover,.bm-row:focus-visible{background:var(--bg2)}
.bm-row svg{width:20px;height:20px;flex:none;color:var(--brand)}
.bm-row.wa svg{color:var(--wa)}
.bm-row b{display:block;font-size:14.5px;font-weight:600;line-height:1.25}
.bm-row small{display:block;font-size:12.5px;color:var(--muted);line-height:1.35}
.bm-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:6px 4px 2px;padding:10px 8px 2px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.bm-foot .copy{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--brand);font:500 12.5px Poppins,"Noto Sans Arabic",sans-serif;cursor:pointer;padding:6px 4px}
.bm-foot .copy svg{width:15px;height:15px}
.nav-cta{display:none}
.menu-open nav.main a.nav-cta{display:block}
.menu-open nav.main a.nav-cta:first-of-type{margin-top:8px;background:var(--brand);color:var(--on-brand);text-align:center;border-radius:10px}
.seg button{height:30px}
@media(max-width:1199px){.brand small{display:none}}
@media(min-width:481px) and (max-width:1199px){.brand{margin-inline-end:10px}}

.duo{display:flex;gap:10px;flex-wrap:wrap}
.duo .btn{flex:1 1 0}
.cta-bar{flex-direction:column;align-items:stretch;gap:14px;max-width:500px;padding:18px 20px}
.cta-bar .duo{display:grid;grid-template-columns:1fr 1fr}
.cta-bar .duo .btn{width:100%}
.aside .duo{margin-top:12px}
.aside .duo .btn{width:auto;margin-top:0}
.contact-duo{margin-top:16px;max-width:460px}
.contact-duo .btn{flex:1 1 auto}
@media(max-width:380px){.cta-bar .duo{grid-template-columns:1fr}}

.sched{padding:26px 24px;display:flex;flex-direction:column;gap:16px;align-items:flex-start;min-height:360px}
.sched-lead{margin:0;color:var(--muted);font-size:15px;max-width:540px}
.sched-frame{width:100%}
.sched-iframe{width:100%;height:660px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.sched-alt{margin:0;display:flex;gap:6px 18px;flex-wrap:wrap;align-items:center}
@media(max-width:560px){.sched{padding:18px 14px}}

/* ---------- explorer: one centred ring, fixed stage height, caption pill (round 3 fix) ---------- */
.xstage::after{inset:auto;left:calc(50% - min(46%,210px));top:50%;translate:0 -50%;width:min(92%,420px);height:auto;aspect-ratio:1;margin:0}
.xstage .orb{background:radial-gradient(circle 240px at var(--gx) calc(var(--gy) * .85),color-mix(in srgb,var(--acc) 34%,transparent),transparent 72%)}
.xstage .nm{left:50%;right:auto;bottom:16px;transform:translateX(-50%);padding:6px 16px;border-radius:999px;background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--line);color:var(--ink);font-size:13px;white-space:nowrap;max-width:calc(100% - 32px);overflow:hidden;text-overflow:ellipsis}
@media(min-width:900px){.xstage{min-height:540px}.exp>div:last-child{align-self:center}}

/* no cursor-following glow on the body-area stage */
.xstage .orb{display:none}

/* ---------- round 3b: healthcare appointment card (replaces the heavy outlined box), Book menu, footer ---------- */
.cta-bar{display:block;max-width:520px;margin-top:28px;padding:0;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}
.ac-head{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--tint);border-bottom:1px solid var(--line)}
.ac-ico{width:40px;height:40px;border-radius:12px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;flex:none}
.ac-ico svg{width:20px;height:20px}
.ac-head b{display:block;font-size:15.5px;font-weight:600;line-height:1.25}
.ac-head small{display:block;font-size:12.5px;color:var(--muted);line-height:1.35}
.ac-body{display:flex;flex-direction:column;gap:14px;padding:18px 20px 16px}
.ac-num small{display:block;font-size:12px;color:var(--muted);line-height:1.3;margin-bottom:2px}
.cta-bar .ac-num .big{font-size:clamp(22px,3.6vw,28px)}
.ac-facts{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--muted)}
.ac-facts li{display:flex;align-items:center;gap:7px}
.ac-facts li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}
.ac-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 20px;background:var(--bg2);border-top:1px solid var(--line)}
@media(max-width:520px){.cta-bar{padding:0}.ac-head,.ac-body,.ac-foot{padding-inline:16px}}

.bm-pop{border:1px solid var(--line2);border-radius:16px;box-shadow:0 22px 44px -18px rgba(27,18,16,.32),0 2px 6px rgba(27,18,16,.06);padding:6px}
.bm-title{margin:0;padding:10px 12px 8px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.bm-foot{border-top:1px solid var(--line)}

footer .foot-bottom{display:none}
.foot-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;margin-top:36px;padding:18px 0;border-top:1px solid var(--line);font-size:12.5px;font-weight:500;letter-spacing:.03em;text-transform:uppercase}
.foot-meta a{color:var(--ink);text-decoration:none}
.foot-meta a:hover{color:var(--brand)}
.foot-meta .rights{color:var(--muted)}
.pk-time{font-variant-numeric:tabular-nums;white-space:nowrap}
.foot-disc{margin:0;padding:14px 0;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);line-height:1.5}
.wordmark{display:flex;align-items:baseline;justify-content:space-between;margin:10px 0 0;font-size:clamp(46px,14.4vw,198px);line-height:1;padding-bottom:.1em;letter-spacing:-.045em;white-space:nowrap;overflow:hidden;user-select:none;pointer-events:none}
.wm-a{font-weight:700;color:var(--ink)}
.wm-b{font-weight:400;color:var(--brand);letter-spacing:-.035em}
html[data-theme="dark"] .wm-b{color:var(--gold)}
@media(max-width:899px){footer{padding-bottom:84px}}

/* ---------- round 3c: animated trust band + moving conditions ribbon ---------- */
.trust{padding:26px 0 8px;overflow-x:clip}
.stats2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none}
@media(min-width:760px){.stats2{grid-template-columns:repeat(4,1fr);gap:16px}}
.st{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .25s,box-shadow .3s;animation:slidein .7s both cubic-bezier(.2,.8,.2,1)}
.st:nth-child(2){animation-delay:.08s}.st:nth-child(3){animation-delay:.16s}.st:nth-child(4){animation-delay:.24s}
.st:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 16px 28px -18px rgba(184,134,43,.55)}
.si{width:46px;height:46px;border-radius:14px;background:var(--tint);color:var(--brand);display:grid;place-items:center;flex:none;position:relative}
.si svg{width:24px;height:24px}
.st:hover .si{background:var(--brand);color:var(--on-brand)}
.si::after{content:"";position:absolute;inset:-5px;border-radius:18px;border:1.5px solid var(--gold);opacity:0;transform:scale(.86)}
.st:hover .si::after{opacity:.7;transform:scale(1);transition:all .35s}
.stats2 b{display:block;font-size:24px;line-height:1.15;font-weight:700;letter-spacing:-.01em}
.stats2 b sup{font-size:.55em;color:var(--gold-t,#b8862b);margin-inline-start:1px;vertical-align:.55em}
.stats2 small{display:block;font-size:13px;color:var(--muted);line-height:1.35}
@keyframes slidein{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
.mq{position:relative;margin-top:18px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.mq-track{display:flex;gap:10px;width:max-content;padding:4px 0;animation:marquee 70s linear infinite}
.mq:hover .mq-track,.mq:focus-within .mq-track{animation-play-state:paused}
.mq .pill{flex:none;display:inline-flex;align-items:center;gap:9px;height:38px;padding:0 16px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);color:var(--ink);font-size:13.5px;font-weight:500;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.mq .pill::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}
.mq .pill:hover{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
@keyframes marquee{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.st{animation:none}.mq{-webkit-mask-image:none;mask-image:none;overflow-x:auto}.mq-track{animation:none}.mq .pill[aria-hidden="true"]{display:none}}

/* ---------- round 3c: closing banner, the appointment pass ---------- */
.finale{padding-top:0}
.fin{position:relative;display:grid;gap:36px;align-items:center;padding:44px 26px;border-radius:32px;overflow:hidden;isolation:isolate;color:#fff;background:linear-gradient(135deg,#240906 0%,#4c1510 52%,#6e2018 100%);box-shadow:0 34px 70px -34px rgba(60,10,5,.8)}
@media(min-width:960px){.fin{grid-template-columns:1.12fr .88fr;gap:20px;padding:64px 60px}}
.fin-bg{position:absolute;inset:0;z-index:-1;overflow:hidden;background-image:radial-gradient(rgba(231,189,107,.16) 1.2px,transparent 1.4px);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 90% at 80% 40%,#000,transparent 75%);mask-image:radial-gradient(70% 90% at 80% 40%,#000,transparent 75%)}
.fin-bg i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:drift 16s ease-in-out infinite alternate}
.fin-bg .g1{width:420px;height:420px;right:-90px;top:-120px;background:#b0382a}
.fin-bg .g2{width:360px;height:360px;left:-120px;bottom:-160px;background:#e7bd6b;opacity:.22;animation-delay:-6s}
@keyframes drift{to{transform:translate(-40px,30px) scale(1.12)}}
.fin::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(231,189,107,.7),rgba(231,189,107,0) 38%,rgba(231,189,107,0) 70%,rgba(231,189,107,.45));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.fin .eyebrow{color:#e7bd6b;margin:0 0 14px}
.fin h2{color:#fff;font-size:clamp(34px,5vw,56px);line-height:1.05;letter-spacing:-.025em;margin:0 0 16px;max-width:560px}
.fin h2 em{white-space:nowrap;font-style:normal;background:linear-gradient(95deg,#f6e2a8,#e7bd6b 45%,#c9a03c);-webkit-background-clip:text;background-clip:text;color:transparent}
.fin-lead{margin:0;max-width:470px;font-size:17px;line-height:1.55;color:rgba(255,255,255,.84)}
.fin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.fin-actions .btn.lg{height:54px;padding:0 24px;font-size:16px;border-radius:14px}
.fin .btn.gold{position:relative;overflow:hidden}
.btn.shine::after{content:"";position:absolute;top:0;bottom:0;width:46%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:sheen 4.5s ease-in-out infinite}
@keyframes sheen{0%,55%{left:-60%}100%{left:130%}}
.btn.pulse{animation:ping 2.6s ease-out infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(140,235,178,.38)}70%,100%{box-shadow:0 0 0 14px rgba(140,235,178,0)}}
.fin-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin:28px 0 0;padding:0;list-style:none;font-size:13.5px;color:rgba(255,255,255,.82)}
.fin-trust li{display:flex;align-items:center;gap:9px}
.fin-trust svg{width:18px;height:18px;color:#e7bd6b;flex:none}
.fin-stage{--or1:112px;--or2:168px;position:relative;display:grid;place-items:center;min-height:300px}
@media(min-width:960px){.fin-stage{--or1:190px;--or2:234px;min-height:500px}}
.orbit{position:absolute;inset:0;display:none;place-items:center;pointer-events:none}
@media(min-width:960px){.orbit{display:grid}}
.ring{position:absolute;left:50%;top:50%;border-radius:50%;border:1.5px dashed rgba(231,189,107,.38);translate:-50% -50%}
.ring.r1{width:calc(var(--or1) * 2);height:calc(var(--or1) * 2)}
.ring.r2{width:calc(var(--or2) * 2);height:calc(var(--or2) * 2);border-style:solid;border-color:rgba(231,189,107,.16)}
.spin{position:absolute;inset:0;animation:spin 60s linear infinite}
.ob{position:absolute;left:50%;top:50%;width:0;height:0;transform:rotate(var(--a)) translateX(var(--r))}
.ob-in{position:absolute;left:-24px;top:-24px;width:48px;height:48px;transform:rotate(calc(var(--a) * -1))}
.ob-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.1);border:1px solid rgba(231,189,107,.45);color:#f2d58f;box-shadow:0 10px 24px -8px rgba(0,0,0,.5);animation:spin 60s linear infinite reverse}
.ob.wa .ob-ic{color:#7be0a4;border-color:rgba(123,224,164,.5)}
.ob-ic svg{width:22px;height:22px}
.pass{position:relative;z-index:1;width:min(360px,100%);border-radius:22px;background:#fffaf2;color:#1b1210;box-shadow:0 30px 60px -22px rgba(0,0,0,.65),0 0 0 1px rgba(231,189,107,.55);animation:float 7s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.pass-top{display:flex;align-items:center;gap:12px;padding:18px 20px 16px;border-bottom:2px dashed #e4d4b6}
.pass-top img{border-radius:50%;flex:none}
.pass-top b{display:block;font-size:16px;font-weight:600;line-height:1.2}
.pass-top small{display:block;font-size:12.5px;color:#6c5a50}
.pass-mid{display:flex;align-items:center;gap:16px;padding:18px 20px}
.pass-date{flex:none;width:76px;padding:8px 0 10px;border-radius:16px;background:linear-gradient(160deg,#7a241a,#4c1510);color:#fff;text-align:center;box-shadow:0 12px 20px -12px rgba(76,21,16,.9)}
.pass-date small{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#f2d58f}
.pass-date b{display:block;font-size:32px;line-height:1.05;font-weight:700}
.pass-mid .lbl{display:block;font-size:12px;color:#6c5a50;margin-bottom:2px}
.pass-mid .tm{display:block;font-size:18px;font-weight:700;margin-bottom:8px;letter-spacing:-.01em}
.pass .badge{background:#f3ecdf;border-color:#e1d3b8;color:#3a2a22;font-size:12px}
.pass-foot{display:flex;flex-wrap:wrap;gap:6px 16px;padding:13px 20px 16px;border-top:1px solid #efe3cc;background:#fbf4e6;border-radius:0 0 22px 22px;font-size:12.5px;color:#5a4940}
.pass-foot>span{display:flex;align-items:center;gap:7px}
.pass-foot svg{width:15px;height:15px;color:#9a6f1c}
@media(max-width:959px){.fin-stage{min-height:0}.pass{margin-inline:auto}}
@media(prefers-reduced-motion:reduce){.fin-bg i,.spin,.ob-ic,.pass,.btn.shine::after,.btn.pulse{animation:none}}

.fin-link{display:inline-flex;align-items:center;height:54px;padding:0 6px;color:#f2d58f;font-weight:500;font-size:15.5px;text-decoration:none;white-space:nowrap}
.fin-link:hover{text-decoration:underline;text-underline-offset:5px}
.foot-meta{margin-top:0}
.foot-disc{margin-top:30px}
@media(max-width:560px){.fin-actions{gap:10px}.fin-actions .btn.lg{flex:1 1 100%;width:100%}.fin-link{width:100%;justify-content:center;height:44px}}

/* =====================================================================================
   round 4: soft scheduler card (no black outlines), footer lines, calmer banner, two-tier header
   ===================================================================================== */

/* ---- soft cards instead of heavy outlined boxes ---- */
.appt{border:1px solid var(--line);border-radius:26px;box-shadow:0 26px 60px -36px rgba(60,20,10,.32),0 2px 6px rgba(27,18,16,.04)}
@media(max-width:560px){.appt{border-radius:20px;box-shadow:0 16px 36px -24px rgba(60,20,10,.32)}}
.appt-side{background:linear-gradient(180deg,var(--tint),var(--bg2))}
.appt-tabs{display:flex;gap:6px;padding:8px;background:var(--bg2);border-bottom:1px solid var(--line)}
.appt-tabs button{flex:1;height:44px;border:0;border-radius:12px;background:transparent;color:var(--muted);font:600 14px Poppins,"Noto Sans Arabic",sans-serif;transition:background .2s,color .2s,box-shadow .2s}
.appt-tabs button:hover{color:var(--ink)}
.appt-tabs button[aria-selected="true"]{background:var(--surface);color:var(--brand);border:0;box-shadow:0 1px 3px rgba(27,18,16,.1),0 0 0 1px var(--line)}
.opt{border-width:1px}
.day,.slot{border-width:1px}
.day:hover,.slot:hover,.opt:hover{box-shadow:0 8px 18px -12px rgba(102,28,21,.5)}
.sumcard{border:1px solid var(--line);box-shadow:0 14px 34px -22px rgba(60,20,10,.4)}
.sumcard .gcal{width:100%;margin-top:12px;gap:10px;border-width:1px}
.sumcard .gcal svg{width:18px;height:18px;color:#1a73e8}
.sumcard .gcal-note{margin:8px 0 0;font-size:12.5px;color:var(--muted)}
.book{border:1px solid var(--line);box-shadow:var(--shadow)}
.sched-lead{max-width:none}

/* ---- footer: link row between two lines, awareness line beneath ---- */
.foot-meta{margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.foot-disc{margin:0;padding:16px 0 4px;border-top:0}

/* ---- closing banner: calmer, more elegant ---- */
.fin{padding:48px 26px;background:linear-gradient(135deg,#2a0b08 0%,#4a1410 60%,#5e1a14 100%)}
@media(min-width:960px){.fin{padding:72px 68px}}
.fin-bg{background-image:none;-webkit-mask-image:none;mask-image:none}
.fin-bg i{animation:none}
.fin-bg .g1{opacity:.32;width:520px;height:520px;right:-140px;top:-160px}
.fin-bg .g2{display:none}
.fin h2{margin-bottom:14px}
.fin-lead{font-size:16.5px;color:rgba(255,255,255,.8)}
.fin-actions{margin-top:30px}
.fin-note{margin:26px 0 0;font-size:13.5px;line-height:1.6;color:rgba(255,255,255,.66)}
.fin-stage{min-height:0}
@media(min-width:960px){.fin-stage{min-height:360px}}
.fin-stage::before{content:"";position:absolute;width:min(430px,92%);aspect-ratio:1;border-radius:50%;border:1px solid rgba(231,189,107,.22)}
.pass{animation:none;width:min(380px,100%);box-shadow:0 34px 60px -26px rgba(0,0,0,.6)}
.pass-top{border-bottom-width:1px}

/* ---- header: utility strip above the main bar ---- */
.util{background:var(--bg2);border-bottom:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.util .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;height:40px}
.u-status{display:inline-flex;align-items:center;gap:9px;font-weight:500;color:var(--ink);min-width:0}
.u-status::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:#9a8f86}
.u-status.is-open::before{background:#1f9d5b;box-shadow:0 0 0 4px rgba(31,157,91,.18)}
.u-right{display:flex;align-items:center;gap:10px 18px}
.u-em{color:#b3261e;text-decoration:none;font-weight:500;white-space:nowrap}
.u-em b{font-weight:700}
html[data-theme="dark"] .u-em{color:#ff9a90}
.u-ph{display:inline-flex;align-items:center;gap:6px;color:var(--ink);text-decoration:none;font-weight:500;white-space:nowrap}
.u-ph svg{width:14px;height:14px;color:var(--brand);flex:none}
.u-em:hover,.u-ph:hover{text-decoration:underline;text-underline-offset:3px}
.util .seg{padding:2px}
.util .seg button{height:24px;padding:0 10px;font-size:12px}
.iconbtn.sm{width:30px;height:30px;border-radius:8px;border-width:1px}
.iconbtn.sm svg{width:15px;height:15px}
@media(max-width:699px){.u-em,.u-ph{display:none}.util .wrap{height:38px}}

/* ---- header: main bar with a Conditions menu ---- */
.top>.wrap{height:72px}
.brand img{width:42px;height:42px}
nav.main{align-self:stretch}
nav.main .nv{display:none;list-style:none;margin:0;padding:0;gap:2px;align-items:stretch;height:100%}
@media(min-width:1000px){nav.main .nv{display:flex}}
.nv>li{display:flex;align-items:center;position:relative}
.nv>li.mega{position:static}
nav.main a[aria-current="page"]{background:none;color:var(--ink);position:relative}
nav.main a[aria-current="page"]::after{content:"";position:absolute;inset-inline:12px;bottom:4px;height:2px;border-radius:2px;background:var(--gold)}
nav.main .nv>li>a:hover{background:var(--bg2);color:var(--ink)}
.dd-btn{display:none;width:22px;height:34px;margin-inline-start:-8px;border:0;border-radius:8px;background:none;color:var(--muted);cursor:pointer;place-items:center;padding:0}
.dd-btn:hover{color:var(--ink);background:var(--bg2)}
@media(min-width:1000px){.dd-btn{display:grid}}
.dd-btn svg{width:13px;height:13px;transition:transform .2s}
.dd-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.dd-pop{display:none;position:absolute;z-index:80;background:var(--surface);border:1px solid var(--line);box-shadow:0 30px 50px -26px rgba(40,15,8,.38)}
@media(min-width:1000px){.dd-pop:not([hidden]){display:block;animation:ddin .18s ease-out}}
@keyframes ddin{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.dd-pop.mega{top:100%;left:0;right:0;border-width:1px 0 0;border-radius:0 0 24px 24px;padding:28px 0 22px}
.mg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 36px}
.mg-h{display:flex;align-items:center;gap:12px;margin:0 0 8px;font-weight:600;font-size:14.5px;color:var(--ink)}
.mg-h svg{width:36px;height:36px;padding:9px;border-radius:11px;background:var(--tint);color:var(--brand);flex:none}
.mg-col ul{list-style:none;margin:0;padding:0;padding-inline-start:48px}
.mg-col a{display:block;padding:5px 0;font-size:14px;color:var(--muted);text-decoration:none;background:none}
.mg-col a:hover{color:var(--brand);background:none}
.mg-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:13.5px;color:var(--muted)}
.dd-pop.small{top:calc(100% - 6px);inset-inline-start:0;width:330px;border-radius:16px;padding:8px}
.dd-pop.small ul{list-style:none;margin:0;padding:0}
.dd-pop.small a{display:block;padding:11px 14px;border-radius:10px;color:var(--ink);background:none}
.dd-pop.small a:hover{background:var(--bg2)}
.dd-pop.small b{display:block;font-size:14.5px;font-weight:600}
.dd-pop.small small{display:block;margin-top:2px;font-size:12.5px;color:var(--muted);line-height:1.4}
.nav-cta-li{display:none}
.menu-open nav.main .nv{display:flex;flex-direction:column;align-items:stretch;gap:2px;height:auto}
.menu-open nav.main .nv>li{display:block}
.menu-open nav.main .nv>li.nav-cta-li{display:block}
.menu-open nav.main a.nav-cta{display:block}
.menu-open nav.main a.nav-cta.primary{margin-top:8px;background:var(--brand);color:var(--on-brand);text-align:center;border-radius:10px}
.menu-open nav.main{inset:calc(72px) 0 auto 0}
@media(min-width:1000px){.menu-open nav.main .nv{flex-direction:row;align-items:stretch;gap:2px;height:100%}.menu-open nav.main .nv>li{display:flex}.nav-cta-li,.menu-open nav.main .nv>li.nav-cta-li{display:none}}
@media(prefers-reduced-motion:reduce){.dd-pop{animation:none!important}}

/* ---- menu refinements ---- */
.dd-pop a{white-space:normal}
.dd-pop.small small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mg-grid{grid-template-columns:repeat(3,1fr);gap:22px 28px}
@media(min-width:1100px){.mg-grid{grid-template-columns:repeat(6,1fr);gap:0 22px}}
.mg-h{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:10px}
.mg-col ul{padding-inline-start:0}
.mg-col a{padding:4px 0;font-size:13.5px;line-height:1.35;white-space:normal}
.dd-pop.mega{padding:26px 0 20px}
@media(min-width:1100px){.mg-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.mg-grid>*{min-width:0}
.u-status{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:62vw}
@media(max-width:699px){.util{font-size:12px}}

/* =====================================================================================
   round 5: side dock (language + theme), new Book control, graphic closing banner
   ===================================================================================== */

/* ---- side dock, always on screen ---- */
.dock{position:fixed;inset-inline-end:14px;top:50%;transform:translateY(-50%);z-index:55;display:flex;flex-direction:column;gap:6px;padding:6px;border-radius:999px;background:var(--surface);border:1px solid var(--line);box-shadow:0 14px 34px -16px rgba(40,15,8,.4)}
.dk-btn{width:42px;height:42px;border-radius:50%;border:0;background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;padding:0;transition:background .2s,color .2s,transform .2s}
.dk-btn:hover{background:var(--tint);color:var(--brand);transform:scale(1.06)}
.dk-btn.iconbtn{width:42px;height:42px;border:0;border-radius:50%;background:transparent}
.dk-btn.iconbtn:hover{border:0}
.dk-btn svg{width:19px;height:19px}
.dk-lang{font:700 12.5px Poppins,"Noto Sans Arabic",sans-serif;background:var(--brand);color:var(--on-brand)}
.dk-lang:hover{background:var(--brand-h);color:var(--on-brand)}
@media(max-width:899px){.dock{top:auto;bottom:86px;transform:none;inset-inline-end:10px;flex-direction:column;gap:4px;padding:4px;opacity:.96}.dk-btn,.dk-btn.iconbtn{width:38px;height:38px}}
@media print{.dock{display:none}}

/* ---- header: no utility strip; call chip + Book control ---- */
.util{display:none}
.hd-call{display:none;align-items:center;gap:10px;margin-inline-end:6px;text-decoration:none;color:var(--ink)}
@media(min-width:1180px){.hd-call{display:flex}}
.hd-ico{width:38px;height:38px;border-radius:12px;background:var(--tint);color:var(--brand);display:grid;place-items:center;flex:none;transition:background .2s,color .2s}
.hd-ico svg{width:17px;height:17px}
.hd-call:hover .hd-ico{background:var(--brand);color:var(--on-brand)}
.hd-txt small{display:block;font-size:11.5px;color:var(--muted);line-height:1.2}
.hd-txt b{display:block;font-size:15px;font-weight:600;line-height:1.25;letter-spacing:.01em}
.bk{height:44px;padding:0 20px;border-radius:999px;gap:9px;box-shadow:0 10px 22px -12px rgba(102,28,21,.65)}
.bk:hover{box-shadow:0 14px 26px -12px rgba(102,28,21,.75);transform:translateY(-1px)}
html[data-theme="dark"] .bk{box-shadow:0 10px 22px -12px rgba(231,189,107,.5)}

/* ---- Book menu: two big actions, two quiet rows ---- */
.bm-pop{width:340px;padding:8px;border-radius:20px;border:1px solid var(--line2);box-shadow:0 30px 60px -24px rgba(40,15,8,.42),0 2px 8px rgba(40,15,8,.06)}
.bm-head{padding:12px 12px 12px}
.bm-head b{display:block;font-size:16px;font-weight:600}
.bm-head small{display:block;margin-top:2px;font-size:12.5px;color:var(--muted);line-height:1.45}
.bm-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 4px 8px}
.bm-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;border-radius:14px;color:#fff;text-decoration:none;transition:transform .2s,filter .2s}
.bm-tile:hover{transform:translateY(-2px);filter:brightness(1.08)}
.bm-tile.call{background:var(--brand);color:var(--on-brand)}
.bm-tile.wa{background:var(--wa);color:#fff}
.bm-tile svg{width:22px;height:22px;margin-bottom:8px}
.bm-tile b{font-size:15px;font-weight:600;line-height:1.2}
.bm-tile small{font-size:12px;opacity:.88}
.bm-title{display:none}

/* ---- closing banner: graphic scene instead of a box ---- */
.fin{overflow:hidden}
.fin-art{display:grid;place-items:center}
.fin-art svg{width:min(460px,100%);height:auto;overflow:visible}
@media(max-width:959px){.fin-art{order:-1}.fin-art svg{width:min(320px,86%)}}
.fin{--a-glow:#e7bd6b;--a-ring:rgba(231,189,107,.4);--a-cal:#fffaf2;--a-dot:#e4d4b6;--a-gold:#e7bd6b;--a-shadow:rgba(0,0,0,.28);--a-pick:#e7bd6b;--a-wa:#1f9d5b;--a-phone:#f2d58f;--a-pulse:#e7bd6b}
.a-ring{fill:none;stroke:var(--a-ring);stroke-width:1.2}
.a-dash{stroke-dasharray:2 8;stroke-linecap:round}
.a-gold{fill:var(--a-gold)}
.a-gold.soft{opacity:.55}
.a-cross{stroke:var(--a-gold);stroke-width:2;stroke-linecap:round;opacity:.6;fill:none}
.a-shadow{fill:var(--a-shadow);filter:blur(14px)}
.a-cal{fill:var(--a-cal)}
.a-dot circle{fill:var(--a-dot)}
.a-pick{fill:var(--a-pick)}
.a-check{fill:#1f9d5b}
.a-check-ring{fill:var(--a-cal)}
.a-wa{fill:var(--a-wa)}
.a-phone{fill:var(--a-phone)}
.a-pulse{fill:none;stroke:var(--a-pulse);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:640;stroke-dashoffset:640;animation:draw 5.5s ease-in-out infinite;opacity:.9}
@keyframes draw{0%{stroke-dashoffset:640;opacity:0}12%{opacity:.9}55%{stroke-dashoffset:0;opacity:.9}85%{stroke-dashoffset:0;opacity:.9}100%{stroke-dashoffset:0;opacity:0}}
.a-float{animation:bobsvg 7s ease-in-out infinite}
.a-float.a2{animation-delay:-2.4s}.a-float.a3{animation-delay:-4.6s}
@keyframes bobsvg{0%,100%{translate:0 0}50%{translate:0 -7px}}
@media(prefers-reduced-motion:reduce){.a-pulse{animation:none;stroke-dashoffset:0}.a-float{animation:none}}
.fin-stage,.pass{display:none}

/* ---- in dark theme the banner turns light, so it stands out ---- */
html[data-theme="dark"] .fin{background:linear-gradient(135deg,#fdf7ea 0%,#f7ead3 55%,#f0dfbf 100%);color:#1b1210;box-shadow:0 40px 80px -40px rgba(231,189,107,.45);--a-glow:#c9a03c;--a-ring:rgba(138,95,18,.45);--a-cal:#ffffff;--a-dot:#eadcc3;--a-gold:#b8862b;--a-shadow:rgba(102,28,21,.22);--a-pick:#c9a03c;--a-phone:#661c15;--a-pulse:#8a2a20}
html[data-theme="dark"] .fin::before{background:linear-gradient(135deg,rgba(184,134,43,.55),rgba(184,134,43,0) 40%,rgba(184,134,43,0) 70%,rgba(184,134,43,.35))}
html[data-theme="dark"] .fin .eyebrow{color:#8a5f12}
html[data-theme="dark"] .fin h2{color:#1b1210}
html[data-theme="dark"] .fin h2 em{background:linear-gradient(95deg,#8a2a20,#5a170f);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="dark"] .fin-lead{color:#4a3a32}
html[data-theme="dark"] .fin .btn.gold{background:#661c15;border-color:#661c15;color:#fff}
html[data-theme="dark"] .fin .btn.gold:hover{background:#7a241a;border-color:#7a241a}
html[data-theme="dark"] .fin-link{color:#661c15}
html[data-theme="dark"] .fin-note{color:#6b5a50}
html[data-theme="dark"] .fin-bg .g1{background:#e7bd6b;opacity:.5}
html[data-theme="dark"] .a-phone{fill:#661c15}
html[data-theme="dark"] .a-float.a3 path{stroke:#f2d58f}
.hd-txt b{white-space:nowrap}
.hd-txt small{white-space:nowrap}

/* =====================================================================================
   round 6: credentials card in the hero, "Does this sound like you?" guide
   ===================================================================================== */
.hd-call{display:none!important}

/* ---- hero credentials card ---- */
.cred-card{max-width:560px;margin-top:28px;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}
.cc-head{display:flex;align-items:center;gap:14px;padding:16px 20px;background:linear-gradient(120deg,var(--tint),var(--bg2));border-bottom:1px solid var(--line)}
.cc-ico{width:44px;height:44px;border-radius:14px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;flex:none}
.cc-ico svg{width:22px;height:22px}
.cc-head>div{flex:1;min-width:0}
.cc-head b{display:block;font-size:16px;font-weight:600;line-height:1.25}
.cc-head small{display:block;font-size:12.5px;color:var(--muted);line-height:1.4}
.cc-yrs{flex:none;text-align:center;padding:6px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--line2)}
.cc-yrs>span{display:block;font-size:24px;line-height:1.1;font-weight:700;color:var(--brand)}
.cc-yrs sup{font-size:.55em;margin-inline-start:1px;vertical-align:.55em}
.cc-yrs small{font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.cc-grid{list-style:none;margin:0;padding:6px 8px;display:grid;grid-template-columns:1fr 1fr;gap:0 8px}
.cc-grid li{position:relative;padding:12px 12px 12px 40px;border-radius:12px;transition:background .2s}
[dir="rtl"] .cc-grid li{padding:12px 40px 12px 12px}
.cc-grid li:hover{background:var(--bg2)}
.cc-grid li::before{content:"";position:absolute;left:11px;top:14px;width:20px;height:20px;border-radius:50%;background:var(--tint);border:1px solid var(--gold)}
.cc-grid li::after{content:"";position:absolute;left:18px;top:19px;width:5px;height:9px;border:solid var(--gold);border-width:0 2px 2px 0;transform:rotate(45deg)}
html[dir="rtl"] .cc-grid li::before{left:auto;right:11px}
html[dir="rtl"] .cc-grid li::after{left:auto;right:18px}
.cc-tag{display:block;font-size:14.5px;font-weight:600;line-height:1.3;color:var(--ink)}
.cc-grid small{display:block;margin-top:2px;font-size:12px;line-height:1.4;color:var(--muted)}
.cc-foot{display:flex;flex-wrap:wrap;gap:6px 22px;padding:12px 20px 14px;background:var(--bg2);border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.cc-foot>span{display:flex;align-items:center;gap:8px}
.cc-foot svg{width:16px;height:16px;color:var(--brand);flex:none}
@media(max-width:520px){.cc-grid{grid-template-columns:1fr}.cc-head{padding:14px 16px;gap:12px}}

/* ---- ribbon on its own ---- */
.trust{padding:20px 0 0}
.mq{margin-top:0}

/* ---- Does this sound like you? ---- */
.symptoms{padding:72px 0 64px;background:linear-gradient(180deg,var(--bg2),var(--bg))}
.symptoms .center{margin-bottom:34px}
.sx-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:760px){.sx-grid{grid-template-columns:repeat(3,1fr);gap:16px}}
@media(min-width:1100px){.sx-grid{grid-template-columns:repeat(3,1fr)}}
.sx{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px 22px 20px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .25s;transition-delay:0s}
.js .sx.reveal{transition-delay:var(--d,0ms)}
.sx::after{content:"";position:absolute;inset-inline-end:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,var(--tint),transparent 70%);transition:transform .5s}
.sx:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 22px 38px -24px rgba(184,134,43,.6)}
.sx:hover::after{transform:scale(1.8)}
.sx-ico{position:relative;z-index:1;width:52px;height:52px;border-radius:16px;background:var(--tint);color:var(--brand);display:grid;place-items:center;margin-bottom:6px;transition:background .25s,color .25s,transform .4s cubic-bezier(.2,.8,.2,1)}
.sx-ico svg{width:26px;height:26px}
.sx:hover .sx-ico{background:var(--brand);color:var(--on-brand);transform:rotate(-7deg) scale(1.06)}
.sx b{position:relative;z-index:1;font-size:17px;font-weight:600;line-height:1.3}
.sx-line{position:relative;z-index:1;font-size:14px;line-height:1.55;color:var(--muted)}
.sx-go{position:relative;z-index:1;margin-top:auto;padding-top:6px;font-size:13.5px;font-weight:500;color:var(--brand)}
.sx-ask{background:linear-gradient(150deg,#6e2018,#3a100b);border-color:transparent;color:#fff}
.sx-ask::after{background:radial-gradient(circle,rgba(231,189,107,.35),transparent 70%)}
.sx-ask .sx-ico{background:rgba(231,189,107,.18);color:#f2d58f}
.sx-ask .sx-line{color:rgba(255,255,255,.8)}
.sx-ask .sx-go{color:#f2d58f}
.sx-ask:hover{border-color:transparent;box-shadow:0 22px 38px -22px rgba(102,28,21,.7)}
.sx-ask:hover .sx-ico{background:#e7bd6b;color:#3a100b}
.sx-note{margin:22px 0 0;text-align:center;font-size:13px;color:var(--muted)}
@media(max-width:559px){.sx-grid{grid-template-columns:1fr}.sx{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:18px}.sx-ico{margin:0}.sx b{flex:1;min-width:0}.sx-line,.sx-go{flex-basis:100%;padding-inline-start:0}.symptoms{padding:56px 0 48px}}
@media(prefers-reduced-motion:reduce){.sx,.sx-ico,.sx::after{transition:none}}
.cc-yrs b{display:inline}
.cc-yrs>span{white-space:nowrap}
html[dir="rtl"] .cc-grid li{text-align:right}
html[dir="rtl"] .cc-tag{direction:ltr;text-align:right;unicode-bidi:plaintext}

/* ---- compact credentials card (fits inside the hero) ---- */
.cred-card{max-width:540px;margin-top:22px;border-radius:18px}
.cc-head{gap:12px;padding:10px 14px;background:var(--tint)}
.cc-ico{width:34px;height:34px;border-radius:11px}
.cc-ico svg{width:18px;height:18px}
.cc-head>b{flex:1;font-size:14.5px;font-weight:600;line-height:1.3}
.cc-yrs{display:flex;align-items:baseline;gap:5px;padding:4px 10px;border-radius:999px}
.cc-yrs>span{font-size:17px;line-height:1.2}
.cc-yrs small{font-size:10.5px}
.cc-grid{display:flex;flex-wrap:wrap;gap:7px;padding:12px 14px 4px}
.cc-grid li,[dir="rtl"] .cc-grid li{padding:5px 12px 5px 28px;border:1px solid var(--line2);border-radius:999px;background:var(--surface);transition:border-color .2s,background .2s}
[dir="rtl"] .cc-grid li{padding:5px 28px 5px 12px}
.cc-grid li:hover{background:var(--tint);border-color:var(--gold)}
.cc-grid li::before{left:8px;top:7px;width:14px;height:14px}
.cc-grid li::after{left:12px;top:10px;width:3.5px;height:6.5px;border-width:0 1.8px 1.8px 0}
html[dir="rtl"] .cc-grid li::before{left:auto;right:8px}
html[dir="rtl"] .cc-grid li::after{left:auto;right:12px}
.cc-tag{font-size:13px;font-weight:600;white-space:nowrap}
.cc-foot{padding:9px 14px 11px;gap:4px 16px;font-size:12px;background:transparent;border-top:0}
.cc-foot svg{width:14px;height:14px}
@media(max-width:520px){.cc-head{padding:10px 12px}.cc-grid{padding:10px 12px 2px}.cc-foot{padding:8px 12px 10px}}

/* ---- hero sized to fit one screen on laptops ---- */
@media(min-width:960px){
.hero{padding:34px 0 36px}
.hero h1{font-size:clamp(34px,3.6vw,45px);margin:16px 0 12px}
.hero .lead{font-size:17px;line-height:1.55}
.hero .loc{margin-top:12px}
.hero .cred-card{margin-top:18px}
.hero .visual{aspect-ratio:1/1.02;max-height:560px;margin-inline:auto}
}

/* =====================================================================================
   round 7: centred nav, status chip on the picture, credentials strip in the hero
   ===================================================================================== */

/* ---- header: logo left, menu centred, Book right ---- */
@media(min-width:1000px){
.top>.wrap{display:grid;grid-template-columns:1fr auto 1fr;gap:16px}
.top>.wrap>.brand{justify-self:start;margin-inline-end:0}
nav.main{justify-self:center;margin:0}
.tools{justify-self:end;margin:0}
}

/* ---- status chip sits on the picture, not above the headline ---- */
.visual-wrap{position:relative;min-width:0}
.vis-badge{position:absolute;top:16px;inset-inline-start:16px;z-index:4;background:var(--surface);box-shadow:0 8px 18px -12px rgba(40,15,8,.4)}
.hero h1{margin:0 0 14px}
@media(min-width:960px){.hero{padding:30px 0 34px}.hero h1{margin:0 0 14px}}

/* ---- credentials strip (replaces the lead paragraph) ---- */
.cred-line{display:flex;align-items:stretch;gap:18px;max-width:560px;margin-top:2px}
.cl-years{flex:none;display:flex;flex-direction:column;justify-content:center;padding-inline-end:18px;border-inline-end:2px solid var(--gold)}
.cl-num{display:block;font-size:46px;font-weight:700;line-height:1;letter-spacing:-.03em;color:var(--brand);white-space:nowrap}
.cl-num b{display:inline;font-weight:700}
.cl-num sup{font-size:.42em;margin-inline-start:2px;vertical-align:1.3em;font-weight:700}
.cl-years small{display:block;margin-top:6px;font-size:12px;line-height:1.3;color:var(--muted)}
.cl-body{min-width:0;display:flex;flex-direction:column;justify-content:center}
.cl-list{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;list-style:none;margin:0;padding:0;font-size:15.5px;font-weight:600;line-height:1.5;color:var(--ink)}
.cl-list li{display:flex;align-items:center;white-space:nowrap}
.cl-list li:not(:last-child)::after{content:"";width:5px;height:5px;margin:0 11px;border-radius:50%;background:var(--gold);flex:none}
.cl-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 9px;margin:9px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted)}
.cl-sub svg{width:15px;height:15px;color:var(--brand);flex:none}
.cl-dot{width:3px;height:3px;border-radius:50%;background:var(--muted);opacity:.6}
@media(max-width:520px){.cred-line{gap:14px}.cl-years{padding-inline-end:14px}.cl-num{font-size:38px}.cl-list{font-size:14.5px}}
html[dir="rtl"] .cl-list{direction:ltr;justify-content:flex-end}
html[dir="rtl"] .cl-body{text-align:right}
.cl-list{display:grid;grid-template-columns:repeat(2,max-content);gap:5px 26px;justify-content:start}
.cl-list li{align-items:center;gap:9px}
.cl-list li:not(:last-child)::after{content:none}
.cl-list li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}
html[dir="rtl"] .cl-list{justify-content:end}
@media(max-width:380px){.cl-list{grid-template-columns:max-content;gap:4px}}
.cl-num{direction:ltr;unicode-bidi:isolate}
.cl-sub{flex-direction:column;align-items:flex-start;gap:3px}
.cl-sub>svg{display:none}
.cl-sub>span:first-of-type::before{content:"";display:inline-block;width:14px;height:14px;margin-inline-end:7px;vertical-align:-2px;background:var(--brand);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.2 8-8 9-4.8-1-8-4.5-8-9V6z'/%3E%3Cpath d='M9 12l2.2 2.2L15.5 10'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 4.5-3.2 8-8 9-4.8-1-8-4.5-8-9V6z'/%3E%3Cpath d='M9 12l2.2 2.2L15.5 10'/%3E%3C/svg%3E") center/contain no-repeat}
.cl-dot{display:none}
html[dir="rtl"] .cl-sub{align-items:flex-end}
@media(max-width:560px){.cl-list{grid-template-columns:minmax(0,max-content);gap:4px}.cl-list li{white-space:normal}}
@media(max-width:400px){
.cred-line{flex-direction:column;gap:10px}
.cl-years{flex-direction:row;align-items:baseline;gap:10px;padding-inline-end:0;border-inline-end:0;padding-bottom:8px;border-bottom:2px solid var(--gold);align-self:flex-start}
.cl-years small{margin-top:0}
.cl-num{font-size:34px}
}

/* =====================================================================================
   round 8: appointment chat flows with the page; compact closing banner
   ===================================================================================== */
.chat{min-height:320px;max-height:none;overflow:visible;overscroll-behavior:auto}
@media(max-width:560px){.chat{min-height:300px;max-height:none}}
.chat>*{scroll-margin-block:110px 100px}
section[id]{scroll-margin-top:90px}

.fin{padding:30px 28px;gap:16px;border-radius:26px}
@media(min-width:960px){.fin{grid-template-columns:1.3fr .7fr;padding:34px 52px;gap:12px}}
.fin .eyebrow{margin:0 0 8px;font-size:11.5px}
.fin h2{font-size:clamp(26px,3vw,36px);line-height:1.1;margin:0 0 8px;max-width:none}
.fin-lead{font-size:15px;line-height:1.5;max-width:460px}
.fin-actions{margin-top:18px;gap:10px}
.fin-actions .btn.lg{height:46px;padding:0 20px;font-size:15px;border-radius:12px}
.fin-link{height:46px;font-size:15px}
.fin-note{margin-top:14px;font-size:12.5px}
.fin-art svg{width:min(270px,100%)}
@media(max-width:959px){.fin-art{display:none}}
.fin-bg .g1{width:380px;height:380px;right:-120px;top:-150px}

/* =====================================================================================
   round 9: hero in plain words (phone, tablet, desktop), bento "What we do"
   ===================================================================================== */

/* ---- hero copy ---- */
.hero-copy{min-width:0}
.hero-kicker{display:inline-flex;align-items:center;gap:9px;margin:0 0 14px;padding:6px 14px;border-radius:999px;background:var(--tint);border:1px solid var(--line2);font-size:13px;font-weight:500;color:var(--ink)}
.kdot{width:8px;height:8px;border-radius:50%;background:var(--gold);flex:none}
.hero-sub{margin:0;max-width:520px;font-size:clamp(16px,1.5vw,17.5px);line-height:1.6;color:var(--muted)}
.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.hero-chips a{display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);color:var(--ink);font-size:13.5px;font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s,transform .2s}
.hero-chips a:hover{background:var(--brand);border-color:var(--brand);color:var(--on-brand);transform:translateY(-1px)}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:20px}
.hero-cta .btn.lg{height:48px;padding:0 22px;border-radius:12px}
.hero-link{font-size:14.5px;font-weight:500;color:var(--brand);text-decoration:none;white-space:nowrap;padding:0 6px}
.hero-link:hover{text-decoration:underline;text-underline-offset:4px}
.hero .cred-line{margin-top:22px}
.hero .loc{margin-top:14px}
.hero h1{margin:0 0 12px}

/* credentials: a simple wrapping list that can never overflow */
.cl-list{display:flex;flex-wrap:wrap;gap:5px 24px;justify-content:flex-start}
.cl-list li{flex:0 0 auto;white-space:normal}
.cl-list li:not(:last-child)::after{content:none}
html[dir="rtl"] .cl-list{justify-content:flex-end}

/* ---- hero layouts ---- */
/* phones */
@media(max-width:699px){
.hero{padding:22px 0 28px}
.hero .wrap{gap:26px}
.hero-kicker{font-size:12.5px;margin-bottom:12px}
.hero h1{font-size:clamp(30px,8.4vw,38px)}
.hero-cta{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hero-cta .btn.lg{width:100%;padding:0 10px;font-size:15px}
.hero-link{grid-column:1/-1;text-align:center;padding:6px 0}
.hero-chips{flex-wrap:nowrap;overflow-x:auto;margin-inline:-18px;padding:2px 18px 6px;scrollbar-width:none;scroll-snap-type:x proximity}
.hero-chips::-webkit-scrollbar{display:none}
.hero-chips li{flex:none;scroll-snap-align:start}
.hero .visual{aspect-ratio:1/.92;max-height:420px}
}
/* tablets: two columns, smaller picture */
@media(min-width:700px) and (max-width:959px){
.hero{padding:30px 0 34px}
.hero .wrap{grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}
.hero h1{font-size:clamp(30px,4.6vw,38px)}
.hero-sub{font-size:16px}
.hero-cta .btn.lg{padding:0 18px;font-size:15px}
.hero .visual{aspect-ratio:1/1.1;max-height:460px}
.cl-num{font-size:40px}
.cred-line{gap:14px}
.cl-years{padding-inline-end:14px}
}
/* small laptops */
@media(min-width:960px) and (max-width:1149px){.hero h1{font-size:clamp(32px,3.6vw,40px)}.hero .wrap{gap:36px}.hero-cta .btn.lg{padding:0 18px}}
/* desktop: keep the whole hero close to one screen */
@media(min-width:960px){.hero{padding:30px 0 34px}.hero .cred-line{margin-top:20px}}

/* ---- What we do: bento board ---- */
.bento{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:700px){.bento{grid-template-columns:repeat(2,1fr);gap:16px}.bt1{grid-column:1/-1}}
@media(min-width:1000px){
.bento{grid-template-columns:repeat(12,1fr);grid-auto-rows:minmax(0,auto)}
.bt1{grid-column:span 5;grid-row:span 2}
.bt2{grid-column:span 4}
.bt3{grid-column:span 3}
.bt4{grid-column:span 3}
.bt5{grid-column:span 4}
}
.bt{position:relative;display:flex;flex-direction:column;border-radius:26px;overflow:hidden;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .25s}
.js .bt.reveal{transition-delay:var(--d,0ms)}
.bt:hover{transform:translateY(-6px);box-shadow:0 28px 44px -26px rgba(60,20,10,.4);border-color:var(--gold)}
.bt-no{position:absolute;top:16px;inset-inline-end:20px;z-index:2;font-size:13px;font-weight:600;letter-spacing:.12em;color:var(--muted);opacity:.75}
.bt-art{height:150px;padding:10px 14px 0;background:radial-gradient(70% 90% at 50% 100%,var(--tint),transparent);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.bt:hover .bt-art{transform:scale(1.05)}
.bt-body{display:flex;flex-direction:column;gap:8px;flex:1;padding:6px 24px 24px}
.bt h3{margin:4px 0 0;font-size:21px;line-height:1.2}
.bt p{margin:0;color:var(--muted);font-size:15px;line-height:1.55}
.bt-go{margin-top:auto;padding-top:12px;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--brand)}
.bt-go .arr{width:30px;height:30px;padding:7px;border-radius:50%;background:var(--tint);transition:transform .3s,background .3s,color .3s}
.bt:hover .bt-go .arr{transform:translateX(5px);background:var(--brand);color:var(--on-brand)}
.bt-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:9px}
.bt-list li{position:relative;padding-inline-start:28px;font-size:15px;font-weight:500}
.bt-list li::before{content:"";position:absolute;inset-inline-start:0;top:3px;width:18px;height:18px;border-radius:50%;background:var(--tint);border:1px solid var(--gold)}
.bt-list li::after{content:"";position:absolute;inset-inline-start:6px;top:7px;width:4px;height:8px;border:solid var(--gold-t,#b8862b);border-width:0 2px 2px 0;transform:rotate(45deg)}
html[dir="rtl"] .bt-list li::after{inset-inline-start:auto;inset-inline-end:6px}
/* featured tile */
.bt1{background:linear-gradient(160deg,#6e2018 0%,#3c120d 100%);border-color:transparent;color:#fff}
.bt1 .bt-art{height:230px;background:radial-gradient(60% 80% at 50% 100%,rgba(231,189,107,.28),transparent)}
@media(max-width:999px){.bt1 .bt-art{height:190px}}
.bt1 .ill{--ill:#f2d58f;--ill-f:rgba(255,255,255,.1);--ill-t:rgba(231,189,107,.14)}
.bt1 h3{font-size:26px;color:#fff}
.bt1 p,.bt1 .bt-no{color:rgba(255,255,255,.8)}
.bt1 .chip-tag{background:rgba(231,189,107,.16);border-color:rgba(231,189,107,.4);color:#f2d58f}
.bt1 .bt-list li{color:#fff}
.bt1 .bt-list li::before{background:rgba(231,189,107,.2);border-color:#e7bd6b}
.bt1 .bt-list li::after{border-color:#f2d58f}
.bt1 .bt-go{color:#f2d58f}
.bt1 .bt-go .arr{background:rgba(231,189,107,.18);color:#f2d58f}
.bt1:hover{border-color:transparent;box-shadow:0 30px 50px -26px rgba(102,28,21,.8)}
.bt1:hover .bt-go .arr{background:#e7bd6b;color:#3c120d}
.bt5{background:linear-gradient(160deg,var(--tint),var(--surface))}
.bt-help{margin-top:22px;text-align:center}
.bt-help p{margin:0;font-size:14.5px;color:var(--muted)}
/* phones: swipe board instead of a long stack */
@media(max-width:699px){
.bento{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-18px;padding:4px 18px 14px;scrollbar-width:none}
.bento::-webkit-scrollbar{display:none}
.bt{flex:0 0 82%;scroll-snap-align:center}
.bt1{flex-basis:86%}
.bt-art{height:140px}
.bt1 .bt-art{height:170px}
}
@media(prefers-reduced-motion:reduce){.bt,.bt-art,.bt-go .arr,.hero-chips a{transition:none}}
/* featured tile: the picture takes the spare height */
.bt1{min-height:0}
.bt1 .bt-art{flex:1 1 auto;display:grid;place-items:center;height:auto;min-height:230px;padding:14px 18px 0}
.bt1 .bt-art .ill{width:100%;height:auto;max-height:330px}
.bt1 .bt-body{flex:none}
@media(max-width:699px){.bt1 .bt-art{flex:none;min-height:0;height:170px}.bt1 .bt-art .ill{max-height:none;height:100%}}

/* =====================================================================================
   round 10 (part 1): hero "at a glance", "What do you need today?" wayfinder
   ===================================================================================== */
.hero-chips,.hero-cta{display:none}

/* ---- at a glance ---- */
.glance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0 0;padding:0;list-style:none;max-width:560px}
@media(min-width:560px){.glance{grid-template-columns:repeat(3,minmax(0,1fr))}}
.glance li{display:flex;align-items:flex-start;gap:11px;padding:12px 12px 12px 12px;border-radius:16px;background:var(--surface);border:1px solid var(--line);transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .2s,box-shadow .25s}
.glance li:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 14px 26px -18px rgba(184,134,43,.6)}
.gl-ico{flex:none;width:34px;height:34px;border-radius:11px;background:var(--tint);color:var(--brand);display:grid;place-items:center}
.gl-ico svg{width:17px;height:17px}
.glance small{display:block;font-size:11.5px;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.glance b{display:block;margin-top:3px;font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink)}
html[dir="rtl"] .glance small{letter-spacing:0;text-transform:none}
.hero .cred-line{margin-top:20px}
.hero h1{margin:0 0 12px}
@media(max-width:699px){.glance{gap:8px}.glance li{padding:10px}.glance b{font-size:13px}}
@media(min-width:700px) and (max-width:959px){.glance{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- wayfinder ---- */
.find{padding:56px 0 8px}
.find .center{margin-bottom:26px}
.fd-grid{display:grid;grid-template-columns:1fr;gap:10px}
@media(min-width:620px){.fd-grid{grid-template-columns:repeat(2,1fr);gap:12px}}
@media(min-width:1000px){.fd-grid{grid-template-columns:repeat(3,1fr);gap:14px}}
.fd{position:relative;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .25s;overflow:hidden}
.js .fd.reveal{transition-delay:var(--d,0ms)}
.fd:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 20px 34px -22px rgba(184,134,43,.65)}
.fd-ico{flex:none;width:50px;height:50px;border-radius:16px;background:var(--tint);color:var(--brand);display:grid;place-items:center;transition:background .25s,color .25s,transform .35s cubic-bezier(.2,.8,.2,1)}
.fd-ico svg{width:24px;height:24px}
.fd:hover .fd-ico{background:var(--brand);color:var(--on-brand);transform:rotate(-6deg)}
.fd-txt{flex:1;min-width:0}
.fd-txt b{display:block;font-size:16px;font-weight:600;line-height:1.3}
.fd-txt small{display:block;margin-top:2px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.fd-go{flex:none;width:32px;height:32px;border-radius:50%;background:var(--bg2);display:grid;place-items:center;color:var(--brand);transition:transform .3s,background .3s,color .3s}
.fd-go svg{width:15px;height:15px}
.fd:hover .fd-go{transform:translateX(4px);background:var(--brand);color:var(--on-brand)}
[dir="rtl"] .fd-go svg{transform:scaleX(-1)}
.more-row{margin:26px 0 0;text-align:center}
@media(prefers-reduced-motion:reduce){.glance li,.fd,.fd-ico,.fd-go{transition:none}}

/* =====================================================================================
   round 10 (part 2): directory, FAQ, contact, about, new patients, services pages
   ===================================================================================== */

/* ---- search + chips (conditions, FAQ) ---- */
.dir{padding:36px 0 56px}
.dir-tools{display:flex;flex-direction:column;gap:14px;margin-bottom:22px}
.dir-search{position:relative;display:block;max-width:560px}
.dir-search svg{position:absolute;inset-inline-start:16px;top:50%;width:19px;height:19px;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.dir-search input{width:100%;height:52px;padding:0 18px;padding-inline-start:46px;border-radius:16px;border:1px solid var(--line2);background:var(--surface);color:var(--ink);font:500 15.5px Poppins,"Noto Sans Arabic",sans-serif;transition:border-color .2s,box-shadow .2s}
.dir-search input::placeholder{color:var(--muted);opacity:.85}
.dir-search input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 16%,transparent)}
.dchips{display:flex;flex-wrap:wrap;gap:8px}
.dchip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);color:var(--ink);font:500 14px Poppins,"Noto Sans Arabic",sans-serif;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.dchip svg{width:16px;height:16px;color:var(--brand)}
.dchip:hover{border-color:var(--brand)}
.dchip.on,.dchip[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.dchip.on svg,.dchip[aria-pressed="true"] svg{color:var(--on-brand)}
.dir-count{margin:0;font-size:13.5px;color:var(--muted)}
@media(max-width:699px){.dchips:not(.v){flex-wrap:nowrap;overflow-x:auto;margin-inline:-18px;padding:2px 18px 6px;scrollbar-width:none}.dchips:not(.v)::-webkit-scrollbar{display:none}.dchip{flex:none}}
.dir-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:700px){.dir-grid{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(min-width:1040px){.dir-grid{grid-template-columns:repeat(3,1fr)}}
.dc{position:relative;display:flex;align-items:flex-start;gap:14px;padding:18px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .2s}
.dc:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 20px 34px -22px rgba(184,134,43,.6)}
.dc-ico{flex:none;width:46px;height:46px;border-radius:15px;background:var(--tint);color:var(--brand);display:grid;place-items:center;transition:background .25s,color .25s}
.dc-ico svg{width:23px;height:23px}
.dc:hover .dc-ico{background:var(--brand);color:var(--on-brand)}
.dc-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.dc-main b{font-size:16px;font-weight:600;line-height:1.3}
.dc-main small{font-size:13.5px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dc-tag{position:absolute;top:14px;inset-inline-end:14px;font-size:11px;font-weight:500;color:var(--gold-t,#8a5f12);background:var(--tint);padding:3px 10px;border-radius:999px;display:none}
@media(min-width:1040px){.dc-main{padding-inline-end:0}}
.dc-go{flex:none;align-self:center;width:28px;height:28px;border-radius:50%;background:var(--bg2);display:grid;place-items:center;color:var(--brand);transition:transform .3s,background .3s,color .3s}
.dc-go svg{width:14px;height:14px}
.dc:hover .dc-go{transform:translateX(4px);background:var(--brand);color:var(--on-brand)}
[dir="rtl"] .dc-go svg{transform:scaleX(-1)}
.dir-empty{padding:34px 20px;text-align:center;border:1px dashed var(--line2);border-radius:20px;background:var(--surface)}
.dir-empty b{display:block;font-size:17px;margin-bottom:6px}
.dir-empty p{margin:0 auto 16px;max-width:420px;color:var(--muted);font-size:14.5px}
.when{padding:56px 0}
.when-box{display:grid;gap:22px;align-items:center}
@media(min-width:900px){.when-box{grid-template-columns:.9fr 1.1fr;gap:44px}}
.when-box .checks{margin:0}

/* ---- FAQ ---- */
.faqp{padding:36px 0 56px}
.faq-layout{display:grid;gap:24px;align-items:start}
@media(min-width:900px){.faq-layout{grid-template-columns:300px 1fr;gap:40px}.faq-side{position:sticky;top:96px}}
.faq-side{display:flex;flex-direction:column;gap:14px}
.dchips.v{flex-direction:column;align-items:stretch;gap:6px}
.dchips.v .dchip{justify-content:flex-start;height:44px;border-radius:14px}
@media(max-width:899px){.dchips.v{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;margin-inline:-18px;padding:2px 18px 6px;scrollbar-width:none}.dchips.v::-webkit-scrollbar{display:none}.dchips.v .dchip{flex:none;height:40px;border-radius:999px}}
.faq-help{padding:18px;border-radius:18px;background:linear-gradient(150deg,#6e2018,#3c120d);color:#fff}
.faq-help b{display:block;font-size:15.5px;margin-bottom:4px}
.faq-help p{margin:0 0 12px;font-size:13.5px;color:rgba(255,255,255,.8);line-height:1.5}
@media(max-width:899px){.faq-help{display:none}}
.faq-list{display:flex;flex-direction:column;gap:10px}
.faqi{border:1px solid var(--line);border-radius:18px;background:var(--surface);transition:border-color .2s,box-shadow .2s}
.faqi[open]{border-color:var(--gold);box-shadow:0 16px 30px -24px rgba(184,134,43,.7)}
.faqi summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;font-size:16px;font-weight:600;line-height:1.4}
.faqi summary::-webkit-details-marker{display:none}
.faqi summary::after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:var(--tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23661c15' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .3s,background-color .3s}
.faqi[open] summary::after{transform:rotate(45deg);background-color:var(--bg2)}
.faqi p{margin:0;padding:0 20px 20px;color:var(--muted);font-size:15px;line-height:1.65}

/* ---- contact ---- */
.qa-band{padding:36px 0 0}
.qa-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:900px){.qa-grid{grid-template-columns:repeat(4,1fr);gap:16px}}
.qa{display:flex;flex-direction:column;gap:4px;padding:20px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .2s;min-width:0}
.qa:hover{transform:translateY(-4px);box-shadow:0 22px 36px -24px rgba(60,20,10,.45)}
.qa-ico{width:46px;height:46px;border-radius:15px;background:var(--tint);color:var(--brand);display:grid;place-items:center;margin-bottom:10px}
.qa-ico svg{width:22px;height:22px}
.qa b{font-size:16px;font-weight:600}
.qa small{font-size:13px;color:var(--muted);overflow-wrap:anywhere;line-height:1.4}
.qa.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.qa.primary .qa-ico{background:rgba(255,255,255,.18);color:var(--on-brand)}
.qa.primary small{color:inherit;opacity:.85}
.qa.wa{background:var(--wa);border-color:var(--wa);color:#fff}
.qa.wa .qa-ico{background:rgba(255,255,255,.2);color:#fff}
.qa.wa small{color:#fff;opacity:.9}

/* ---- info cards ---- */
.icards{display:grid;gap:14px;margin-top:26px}
@media(min-width:700px){.icards.three{grid-template-columns:repeat(3,1fr)}.icards.four{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.icards.four{grid-template-columns:repeat(4,1fr)}}
.ic{padding:22px;border-radius:22px;background:var(--surface);border:1px solid var(--line);transition:transform .28s,border-color .2s,box-shadow .28s}
.ic:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 20px 34px -24px rgba(184,134,43,.6)}
.ic-ico{width:48px;height:48px;border-radius:16px;background:var(--tint);color:var(--brand);display:grid;place-items:center;margin-bottom:14px}
.ic-ico svg{width:24px;height:24px}
.ic h3{margin:0 0 6px;font-size:17px}
.ic p{margin:0;font-size:14.5px;line-height:1.6;color:var(--muted)}
.icards+.appt,section>.wrap>.icards{margin-bottom:0}

/* ---- jump nav ---- */
.jump{position:sticky;top:72px;z-index:40;background:var(--head);border-bottom:1px solid var(--line)}
.jump ul{display:flex;gap:6px;margin:0;padding:10px 0;list-style:none;overflow-x:auto;scrollbar-width:none}
.jump ul::-webkit-scrollbar{display:none}
.jump a{display:inline-flex;align-items:center;height:36px;padding:0 15px;border-radius:999px;font-size:13.5px;font-weight:500;color:var(--muted);text-decoration:none;white-space:nowrap;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s}
.jump a:hover{background:var(--tint);color:var(--ink);border-color:var(--line2)}
@media(min-width:900px){.jump ul{justify-content:center}}
section[id]{scroll-margin-top:130px}

/* ---- about ---- */
.about2{padding:56px 0 48px}
.about2-grid{display:grid;gap:28px;align-items:start}
@media(min-width:900px){.about2-grid{grid-template-columns:1.1fr .9fr;gap:48px}}
.about2 h2{margin:6px 0 14px}
.about2 p{font-size:16.5px;line-height:1.7;color:var(--muted)}
.glass2{padding:22px;border-radius:24px;background:linear-gradient(160deg,var(--tint),var(--surface));border:1px solid var(--line)}
.glass2 .glance{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}
.cc2-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:26px}
@media(min-width:760px){.cc2-grid{grid-template-columns:repeat(3,1fr);gap:16px}}
.cc2{display:flex;flex-direction:column;gap:4px;padding:20px;border-radius:20px;background:var(--surface);border:1px solid var(--line);transition:transform .28s,border-color .2s}
.cc2:hover{transform:translateY(-4px);border-color:var(--gold)}
.cc2-ico{width:44px;height:44px;border-radius:14px;background:var(--tint);color:var(--brand);display:grid;place-items:center;margin-bottom:10px}
.cc2-ico svg{width:22px;height:22px}
.cc2 b{font-size:16px;font-weight:600;line-height:1.3}
.cc2 small{font-size:13px;line-height:1.5;color:var(--muted)}
.cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.pill2{display:inline-flex;align-items:center;height:42px;padding:0 18px;border-radius:999px;border:1px solid var(--line2);background:var(--surface);color:var(--ink);font-size:14.5px;font-weight:500;text-decoration:none;transition:background .2s,color .2s,border-color .2s,transform .2s}
.pill2:hover{background:var(--brand);border-color:var(--brand);color:var(--on-brand);transform:translateY(-2px)}
.visit-card{display:grid;gap:22px;align-items:center;padding:28px;border-radius:26px;background:var(--surface);border:1px solid var(--line)}
@media(min-width:900px){.visit-card{grid-template-columns:1.2fr .8fr;padding:36px 44px}.visit-card .row{justify-content:flex-end}}
.visit-card p{color:var(--muted);margin:0 0 10px}
.visit-card .row{display:flex;flex-wrap:wrap;gap:10px}

/* ---- new patients: fees ---- */
.fee-grid{display:grid;gap:14px;margin-top:26px}
@media(min-width:760px){.fee-grid{grid-template-columns:1fr 1fr;gap:18px}}
.fee{position:relative;padding:26px;border-radius:24px;background:var(--surface);border:1px solid var(--line);overflow:hidden}
.fee:nth-child(2){background:linear-gradient(160deg,#6e2018,#3c120d);color:#fff;border-color:transparent}
.fee-ico{position:absolute;top:22px;inset-inline-end:22px;width:46px;height:46px;border-radius:15px;background:var(--tint);color:var(--brand);display:grid;place-items:center}
.fee-ico svg{width:22px;height:22px}
.fee:nth-child(2) .fee-ico{background:rgba(231,189,107,.2);color:#f2d58f}
.fee .eyebrow{margin:0 0 6px}
.fee:nth-child(2) .eyebrow{color:#f2d58f}
.fee-amt{display:block;font-size:40px;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin-bottom:14px}
.fee ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14.5px}
.fee li{position:relative;padding-inline-start:20px}
.fee li::before{content:"";position:absolute;inset-inline-start:0;top:8px;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.fee-note{margin:16px 0 0;font-size:13.5px;color:var(--muted)}

/* ---- services: compare ---- */
.cmp{margin-top:24px;border-radius:24px;border:1px solid var(--line);background:var(--surface);overflow:hidden}
.cmp table{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:16px 18px;text-align:start;font-size:15px;vertical-align:top;border-top:1px solid var(--line)}
.cmp thead th,.cmp thead td{border-top:0;background:var(--bg2);font-size:15px}
.cmp thead th{display:table-cell}
.cmp thead th svg{width:18px;height:18px;vertical-align:-3px;margin-inline-end:8px;color:var(--brand)}
.cmp tbody th{width:22%;font-weight:600;color:var(--muted);font-size:13.5px}
.cmp tbody td:last-child{background:color-mix(in srgb,var(--tint) 55%,transparent)}
@media(max-width:560px){.cmp th,.cmp td{padding:12px 10px;font-size:13.5px}.cmp tbody th{width:26%}}

/* ---- next steps ---- */
.nextsteps{padding:56px 0 72px}
.nextsteps h2{margin:0 0 20px;font-size:clamp(22px,3vw,28px)}
.ns-grid{display:grid;gap:12px}
@media(min-width:760px){.ns-grid{grid-template-columns:repeat(3,1fr);gap:14px}}
.ns{display:flex;align-items:center;gap:14px;padding:18px;border-radius:20px;background:var(--surface);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .2s}
.ns:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 20px 34px -22px rgba(184,134,43,.6)}
.ns-ico{flex:none;width:46px;height:46px;border-radius:15px;background:var(--tint);color:var(--brand);display:grid;place-items:center}
.ns-ico svg{width:22px;height:22px}
.ns>span:nth-child(2){flex:1;min-width:0}
.ns b{display:block;font-size:16px;font-weight:600}
.ns small{display:block;font-size:13.5px;color:var(--muted);line-height:1.45}
.ns-go{flex:none;width:30px;height:30px;border-radius:50%;background:var(--bg2);display:grid;place-items:center;color:var(--brand);transition:transform .3s,background .3s,color .3s}
.ns-go svg{width:14px;height:14px}
.ns:hover .ns-go{transform:translateX(4px);background:var(--brand);color:var(--on-brand)}
[dir="rtl"] .ns-go svg{transform:scaleX(-1)}
@media(prefers-reduced-motion:reduce){.dc,.ic,.qa,.ns,.cc2,.pill2,.faqi,.dchip{transition:none}}

/* =====================================================================================
   round 11: calm hero (one hierarchy: name, one line, three facts, one credentials line)
   ===================================================================================== */
.hero .hero-kicker,.hero .glance,.hero .cred-line,.hero .loc,.hero .hero-chips,.hero .hero-cta{display:none!important}
.hero{padding:44px 0 52px}
.hero h1{margin:0;font-size:inherit;line-height:1.05;letter-spacing:-.035em}
.hero .h1-name{display:block;font-size:clamp(38px,5.4vw,66px);font-weight:700;color:var(--ink)}
.hero h1 em{display:block;margin-top:10px;font-size:clamp(21px,2.7vw,33px);font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--brand)}
.hero-sub{margin:20px 0 0;max-width:460px;font-size:clamp(16px,1.5vw,18px);line-height:1.6;color:var(--muted)}

.hero-facts{display:flex;flex-wrap:wrap;margin:34px 0 0;padding:0;list-style:none}
.hero-facts li{display:flex;align-items:center;gap:11px;padding:2px 26px 2px 0;margin-inline-end:26px;border-inline-end:1px solid var(--line2)}
.hero-facts li:last-child{border-inline-end:0;margin-inline-end:0;padding-inline-end:0}
.hf-ico{flex:none;color:var(--gold-t,#b8862b);display:grid;place-items:center}
.hf-ico svg{width:22px;height:22px}
.hero-facts small{display:block;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);line-height:1.2}
html[dir="rtl"] .hero-facts small{letter-spacing:0;text-transform:none}
.hero-facts b{display:block;margin-top:3px;font-size:14.5px;font-weight:600;line-height:1.3;color:var(--ink)}

.hero-cred{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line);max-width:560px}
.hc-years{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.hc-years b{font-size:30px;font-weight:700;color:var(--brand);letter-spacing:-.02em;line-height:1}
.hc-years sup{font-size:15px;font-weight:700;color:var(--brand);vertical-align:.7em;margin-inline-start:-3px}
.hc-years small{font-size:12px;color:var(--muted)}
.hc-list{display:flex;flex-wrap:wrap;gap:4px 0;margin:0;padding:0;list-style:none;font-size:13.5px;font-weight:500;color:var(--muted)}
.hc-list li{display:flex;align-items:center;white-space:nowrap}
.hc-list li:not(:last-child)::after{content:"";width:4px;height:4px;margin:0 11px;border-radius:50%;background:var(--gold);opacity:.8;flex:none}
.hc-pmdc svg{width:15px;height:15px;color:var(--brand);margin-inline-end:6px}
html[dir="rtl"] .hc-list{direction:ltr}

/* picture: calmer, no hint text */
.hero .visual .hint{display:none}
.hero .visual{border-radius:32px;border-color:transparent;background:linear-gradient(160deg,var(--tint),var(--bg2))}
.vis-badge{top:18px;inset-inline-start:18px;font-size:12.5px;padding:5px 13px}

/* phones */
@media(max-width:699px){
.hero{padding:22px 0 30px}
.hero .wrap{gap:28px}
.hero .h1-name{font-size:clamp(36px,11vw,46px)}
.hero h1 em{font-size:clamp(19px,5.6vw,23px);margin-top:8px}
.hero-sub{margin-top:14px;font-size:16px}
.hero-facts{flex-direction:column;margin-top:24px;border-top:1px solid var(--line)}
.hero-facts li{padding:12px 0;margin:0;border-inline-end:0;border-bottom:1px solid var(--line)}
.hero-facts b{font-size:14px}
.hero-cred{margin-top:20px;padding-top:0;border-top:0}
.hc-years b{font-size:26px}
.hc-list{font-size:13px}
.hero .visual{aspect-ratio:1/.95;max-height:380px}
}
/* tablets */
@media(min-width:700px) and (max-width:959px){
.hero{padding:36px 0 44px}
.hero .wrap{grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}
.hero-facts{flex-direction:column;gap:12px;margin-top:26px}
.hero-facts li{border-inline-end:0;margin:0;padding:0}
.hero .visual{aspect-ratio:1/1.1;max-height:440px}
.hero-cred{margin-top:22px;padding-top:18px}
}
@media(min-width:960px){.hero .wrap{gap:64px}.hero .visual{aspect-ratio:1/1.04;max-height:540px}}
@media(min-width:960px) and (max-width:1149px){.hero-facts li{padding-inline-end:18px;margin-inline-end:18px}}

/* ---- hero facts: three even columns, icon beside the label ---- */
@media(min-width:960px){
.hero-facts{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:0;margin-top:32px;max-width:560px}
.hero-facts li{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;margin:0;padding:0 18px;border-inline-end:1px solid var(--line2)}
.hero-facts li:first-child{padding-inline-start:0}
.hero-facts li:last-child{border-inline-end:0;padding-inline-end:0}
.hero-facts li>span:last-child{display:contents}
.hero-facts small{grid-column:2;grid-row:1}
.hero-facts b{grid-column:1/-1;grid-row:2;margin-top:6px}
.hf-ico svg{width:18px;height:18px}
}
/* ---- credentials: plain text, no dangling dots ---- */
.hc-list{gap:4px 16px}
.hc-list li:not(:last-child)::after{content:none}
@media(min-width:960px){
.hero-facts b{white-space:pre-line}
.hero-facts li{align-content:start;align-items:center}
.hero-facts{grid-template-columns:1fr 1fr 1fr}
}

.hero-facts .nl{display:inline}
.hero-facts .nl::before{content:"\00a0\00b7\00a0"}
@media(min-width:960px){.hero-facts .nl{display:block}.hero-facts .nl::before{content:none}}

/* =====================================================================================
   round 12: credentials panel in the hero
   ===================================================================================== */
.hero .hero-facts,.hero .hero-cred{display:none!important}
.cred-panel{display:flex;align-items:center;gap:20px;margin-top:30px;max-width:560px;padding:18px 22px 18px 18px;border-radius:24px;background:linear-gradient(120deg,var(--tint),var(--surface) 70%);border:1px solid var(--line);box-shadow:0 18px 34px -26px rgba(60,20,10,.45)}
.cp-medal{flex:none;position:relative;width:92px;height:92px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface);color:var(--brand);box-shadow:inset 0 0 0 3px var(--surface),0 0 0 3px var(--gold),0 12px 22px -12px rgba(184,134,43,.7)}
.cp-medal::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1px dashed var(--gold);opacity:.55}
.cp-medal b{font-size:34px;font-weight:700;line-height:1;letter-spacing:-.03em}
.cp-medal sup{position:absolute;top:19px;inset-inline-end:17px;font-size:16px;font-weight:700}
.cp-medal small{margin-top:3px;font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
html[dir="rtl"] .cp-medal small{letter-spacing:0;text-transform:none;font-size:12px}
.cp-body{min-width:0;flex:1}
.cp-title{margin:0 0 10px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
html[dir="rtl"] .cp-title{letter-spacing:0;text-transform:none;font-size:13px}
.cp-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}
.cp-tags li{position:relative;display:inline-flex;align-items:center;height:32px;padding:0 13px 0 30px;border-radius:999px;background:var(--surface);border:1px solid var(--line2);font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap}
.cp-tags li::before{content:"";position:absolute;left:10px;top:50%;width:13px;height:13px;margin-top:-6.5px;border-radius:50%;background:var(--tint);border:1px solid var(--gold)}
.cp-tags li::after{content:"";position:absolute;left:14.6px;top:50%;width:3px;height:6px;margin-top:-4.4px;border:solid var(--gold-t,#b8862b);border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
html[dir="rtl"] .cp-tags li{padding:0 30px 0 13px;direction:ltr}
html[dir="rtl"] .cp-tags li::before{left:auto;right:10px}
html[dir="rtl"] .cp-tags li::after{left:auto;right:14.6px}
.cp-ok{display:flex;align-items:center;gap:7px;margin:12px 0 0;font-size:13px;font-weight:500;color:var(--brand)}
.cp-ok svg{width:16px;height:16px;flex:none}
@media(max-width:560px){.cred-panel{gap:14px;padding:14px;border-radius:20px;margin-top:24px}.cp-medal{width:72px;height:72px}.cp-medal b{font-size:26px}.cp-medal sup{top:15px;inset-inline-end:11px;font-size:13px}.cp-medal small{font-size:9px}.cp-tags li{height:30px;font-size:12.5px;padding-right:11px}}
@media(max-width:380px){.cred-panel{flex-direction:column;align-items:flex-start}}
@media(min-width:700px) and (max-width:959px){.cred-panel{margin-top:24px}}

/* =====================================================================================
   round 13: banner pattern + rheumatology illustration; hero depth, motion, scroll cue
   ===================================================================================== */
/* ---- banner: patterned background ---- */
.fin-bg{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64' fill='none' stroke='%23e7bd6b' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M32 25v14M25 32h14' stroke-opacity='.3'/%3E%3Ccircle cx='0' cy='0' r='1.6' fill='%23e7bd6b' stroke='none' fill-opacity='.35'/%3E%3Ccircle cx='64' cy='0' r='1.6' fill='%23e7bd6b' stroke='none' fill-opacity='.35'/%3E%3Ccircle cx='0' cy='64' r='1.6' fill='%23e7bd6b' stroke='none' fill-opacity='.35'/%3E%3Ccircle cx='64' cy='64' r='1.6' fill='%23e7bd6b' stroke='none' fill-opacity='.35'/%3E%3C/svg%3E");background-size:64px 64px;-webkit-mask-image:radial-gradient(85% 120% at 78% 45%,#000 0,rgba(0,0,0,.55) 55%,rgba(0,0,0,.18) 100%);mask-image:radial-gradient(85% 120% at 78% 45%,#000 0,rgba(0,0,0,.55) 55%,rgba(0,0,0,.18) 100%)}
html[data-theme="dark"] .fin-bg{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64' fill='none' stroke='%238a2a20' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M32 25v14M25 32h14' stroke-opacity='.3'/%3E%3Ccircle cx='0' cy='0' r='1.6' fill='%238a2a20' stroke='none' fill-opacity='.35'/%3E%3Ccircle cx='64' cy='0' r='1.6' fill='%238a2a20' stroke='none' fill-opacity='.35'/%3E%3Ccircle cx='0' cy='64' r='1.6' fill='%238a2a20' stroke='none' fill-opacity='.35'/%3E%3Ccircle cx='64' cy='64' r='1.6' fill='%238a2a20' stroke='none' fill-opacity='.35'/%3E%3C/svg%3E")}
.fin::after{content:"";position:absolute;z-index:-1;inset:auto -60px -90px auto;width:420px;height:420px;border-radius:50%;border:1px solid rgba(231,189,107,.18);box-shadow:0 0 0 38px rgba(231,189,107,.04),0 0 0 76px rgba(231,189,107,.03);pointer-events:none}
html[data-theme="dark"] .fin::after{border-color:rgba(138,42,32,.16);box-shadow:0 0 0 38px rgba(138,42,32,.035),0 0 0 76px rgba(138,42,32,.025)}

/* ---- banner: illustration colours ---- */
.fin{--a-bone:#fffaf2;--a-bone-o:rgba(60,16,10,.55);--a-joint:#b8862b;--a-hot:#e7bd6b;--a-ab:#f2d58f;--a-vt:#f6e9d2}
html[data-theme="dark"] .fin{--a-bone:#ffffff;--a-bone-o:rgba(102,28,21,.45);--a-joint:#8a5f12;--a-hot:#c9a03c;--a-ab:#8a2a20;--a-vt:#ffffff}
.fin-art svg .bo{stroke:var(--a-bone-o);stroke-linecap:round;fill:none}
.fin-art svg .bn{stroke:var(--a-bone);stroke-linecap:round;fill:none}
.fin-art svg .bn2{fill:var(--a-bone)}
.fin-art svg .jt{fill:var(--a-joint);opacity:.85}
.fin-art svg .hot{fill:var(--a-hot);stroke:var(--a-bone);stroke-width:2.5}
.fin-art svg .hot-ring{fill:none;stroke:var(--a-hot);stroke-width:2;opacity:.7;transform-box:fill-box;transform-origin:center;animation:hotpulse 3.2s ease-out infinite}
.fin-art svg .hot-ring.r2{animation-delay:-1.6s}
@keyframes hotpulse{0%{transform:scale(.8);opacity:.8}100%{transform:scale(2.3);opacity:0}}
.fin-art svg .vo{fill:var(--a-bone-o)}
.fin-art svg .vt{fill:var(--a-vt)}
.fin-art svg .vt.hotv{fill:var(--a-hot)}
.fin-art svg .vp{fill:var(--a-bone-o);opacity:.9}
.fin-art svg .ab path{fill:none;stroke:var(--a-ab);stroke-width:3.5;stroke-linecap:round}
.fin-art svg .ab circle{fill:var(--a-ab)}
.fin-art svg .ab.sm{opacity:.7}
.fin-art svg .cr path{fill:none;stroke:var(--a-hot);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.fin-art svg .cr path:first-child{fill:color-mix(in srgb,var(--a-hot) 22%,transparent)}
.fin-art svg .ring{fill:none;stroke:var(--a-ring);stroke-width:1.2}
.fin-art svg .ring.dash{stroke-dasharray:2 8;stroke-linecap:round}
.fin-art svg .dot{fill:var(--a-gold)}
.fin-art svg .dot.soft{opacity:.55}
.fin-art svg .hand{transform-box:fill-box;transform-origin:50% 100%;animation:handsway 9s ease-in-out infinite}
@keyframes handsway{0%,100%{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}
.fin-art svg .spine,.fin-art svg .ab,.fin-art svg .cr{animation:bobsvg 8s ease-in-out infinite}
.fin-art svg .ab.sm{animation-delay:-3s}.fin-art svg .cr{animation-delay:-5s}
@media(prefers-reduced-motion:reduce){.fin-art svg *{animation:none!important}}
/* the old calendar scene classes are no longer used */
.fin-stage,.pass{display:none}

/* ---- hero: depth, a soft stage for the picture, entrance, scroll cue ---- */
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(46% 78% at 80% 46%,color-mix(in srgb,var(--tint) 95%,transparent),transparent 72%),radial-gradient(34% 52% at 4% 104%,color-mix(in srgb,var(--tint) 70%,transparent),transparent 72%);pointer-events:none}
.hero::after{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(color-mix(in srgb,var(--gold) 34%,transparent) 1.1px,transparent 1.5px);background-size:30px 30px;-webkit-mask-image:radial-gradient(52% 84% at 80% 48%,#000 0,transparent 74%);mask-image:radial-gradient(52% 84% at 80% 48%,#000 0,transparent 74%);opacity:.65;pointer-events:none}
html[dir="rtl"] .hero::before{background:radial-gradient(46% 78% at 20% 46%,color-mix(in srgb,var(--tint) 95%,transparent),transparent 72%),radial-gradient(34% 52% at 96% 104%,color-mix(in srgb,var(--tint) 70%,transparent),transparent 72%)}
html[dir="rtl"] .hero::after{-webkit-mask-image:radial-gradient(52% 84% at 20% 48%,#000 0,transparent 74%);mask-image:radial-gradient(52% 84% at 20% 48%,#000 0,transparent 74%)}
.hero .visual{background:none!important;border:0!important;border-radius:0;overflow:visible}
.visual-wrap::before{content:"";position:absolute;z-index:0;left:50%;top:50%;width:94%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--surface) 88%,transparent) 0%,color-mix(in srgb,var(--tint) 85%,transparent) 55%,transparent 71%);border:1px solid color-mix(in srgb,var(--gold) 28%,transparent)}
.visual-wrap::after{content:"";position:absolute;z-index:0;left:50%;top:50%;width:108%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:1px dashed color-mix(in srgb,var(--gold) 42%,transparent);animation:spin 90s linear infinite;pointer-events:none}
.hero .visual{position:relative;z-index:1}
.vis-badge{z-index:5}
.hero h1 em::after{content:"";display:block;width:56px;height:3px;margin-top:14px;border-radius:3px;background:var(--gold)}
@media(max-width:699px){.visual-wrap::after{display:none}.hero h1 em::after{margin-top:10px;width:44px}}

@keyframes hrise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes hfade{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.hero-copy>*{animation:hrise .8s both cubic-bezier(.2,.8,.2,1)}
.hero-copy>*:nth-child(2){animation-delay:.1s}.hero-copy>*:nth-child(3){animation-delay:.2s}.hero-copy>*:nth-child(4){animation-delay:.3s}
.visual-wrap{animation:hfade 1s both .12s cubic-bezier(.2,.8,.2,1)}
@media(prefers-reduced-motion:reduce){.hero-copy>*,.visual-wrap,.visual-wrap::after{animation:none}}

.scroll-cue{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:none;flex-direction:column;align-items:center;gap:6px;font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-decoration:none}
html[dir="rtl"] .scroll-cue{letter-spacing:0;text-transform:none;font-size:13px}
.scroll-cue i{width:22px;height:34px;border:1.5px solid var(--line2);border-radius:12px;position:relative}
.scroll-cue i::after{content:"";position:absolute;left:50%;top:7px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:var(--gold);animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(12px)}}
.scroll-cue:hover{color:var(--brand)}
@media(min-width:960px) and (min-height:760px){.scroll-cue{display:flex}.hero{padding-bottom:84px}}
@media(prefers-reduced-motion:reduce){.scroll-cue i::after{animation:none;opacity:1}}
@media(min-width:960px){.fin-art svg{width:min(330px,100%)}.fin{padding-block:30px}}
/* hero picture: a clean circular stage that is never cut off */
@media(min-width:960px){
.hero .wrap{align-items:center}
.visual-wrap{padding:26px 22px}
.hero .visual{max-height:none;aspect-ratio:1/1.02}
.visual-wrap::after{width:100%}
.hero{padding-bottom:96px}
.scroll-cue{bottom:14px}
}
.visual-wrap::before{width:88%}

/* =====================================================================================
   round 14: calendar banner art back; no plus or dot patterns anywhere, circles stay
   ===================================================================================== */
.fin-bg{background-image:none!important;-webkit-mask-image:none!important;mask-image:none!important}
html[data-theme="dark"] .fin-bg{background-image:none!important}
.hero::after{display:none!important}
.fin::after{border-width:1.5px;box-shadow:0 0 0 46px rgba(231,189,107,.05),0 0 0 92px rgba(231,189,107,.035),0 0 0 138px rgba(231,189,107,.022)}
.fin::before{z-index:-1}
html[data-theme="dark"] .fin::after{box-shadow:0 0 0 46px rgba(138,42,32,.05),0 0 0 92px rgba(138,42,32,.035),0 0 0 138px rgba(138,42,32,.022)}
.fin-art svg{width:min(330px,100%)}
@media(min-width:960px){.fin-art svg{width:min(340px,100%)}}

/* =====================================================================================
   round 14b: hero redesign
   ===================================================================================== */
.hero .cred-panel,.hero .hero-facts,.hero .hero-cred{display:none!important}
.hero-sub{max-width:480px}
.hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:26px}
.hero-meta .badge{background:var(--surface)}
.hm-line{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted)}
.hm-line svg{width:16px;height:16px;color:var(--gold-t,#b8862b);flex:none}

/* stage: one circle, no second ring, no dots; gold arcs stay as the signature */
.visual-wrap::after{display:none}
.visual-wrap::before{width:92%;border:1px solid color-mix(in srgb,var(--gold) 34%,transparent);background:radial-gradient(circle,color-mix(in srgb,var(--surface) 92%,transparent) 0%,color-mix(in srgb,var(--tint) 90%,transparent) 58%,transparent 72%)}

/* credential cards */
.hero-badges{list-style:none;margin:0;padding:0}
.hb{display:flex;align-items:center;gap:10px;padding:11px 15px;border-radius:18px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line);box-shadow:0 16px 30px -18px rgba(60,20,10,.45);-webkit-backdrop-filter:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .2s}
.hb:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 20px 34px -18px rgba(184,134,43,.6)}
.hb svg{width:20px;height:20px;color:var(--brand);flex:none}
.hb-body{display:block;min-width:0}
.hb-t,.hb-num{display:block;font-size:16px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}
.hb-num{font-size:26px;color:var(--brand);letter-spacing:-.03em}
.hb-num sup{font-size:.55em;margin-inline-start:1px;vertical-align:.55em}
.hb small{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:var(--muted)}
.hb4 svg{width:22px;height:22px;padding:4px;border-radius:50%;background:var(--tint)}

/* desktop: cards float around the circle */
@media(min-width:960px){
.hero .wrap{grid-template-columns:.92fr 1.08fr;gap:36px}
.visual-wrap{padding:22px 0;max-width:560px;margin-inline-start:auto;width:100%}
.hero .visual{max-width:470px;margin-inline:auto;aspect-ratio:1/1.02}
.hb{position:absolute;z-index:6;animation:bobsvg 8s ease-in-out infinite}
.hb1{left:0;top:19%}
.hb2{right:-2%;top:30%;animation-delay:-2.2s}
.hb3{left:-1%;bottom:21%;animation-delay:-4.4s}
.hb4{right:4%;bottom:10%;animation-delay:-6.2s}
}
@media(min-width:1280px){.hb1{left:-3%}.hb3{left:-4%}.hb2{right:-4%}}
/* tablet and phone: tidy 2 x 2 under the picture */
@media(max-width:959px){
.hero-badges{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;position:relative;z-index:2}
.hb{padding:10px 12px}
.hb-num{font-size:24px}
}
@media(max-width:380px){.hb{gap:8px;padding:9px 10px}.hb-t{font-size:15px}.hb small{font-size:11.5px}}
@media(prefers-reduced-motion:reduce){.hb{animation:none}}
html[dir="rtl"] .hb-t,html[dir="rtl"] .hb-num{direction:ltr;text-align:start}
@media(min-width:960px){html[dir="rtl"] .hb1{left:auto;right:0}html[dir="rtl"] .hb2{right:auto;left:-2%}html[dir="rtl"] .hb3{left:auto;right:-1%}html[dir="rtl"] .hb4{right:auto;left:4%}}

/* ---- hero polish ---- */
@media(min-width:960px){
.hero .wrap{grid-template-columns:1fr 1fr}
.hero .h1-name{font-size:clamp(38px,4.5vw,62px);white-space:nowrap}
.hero h1 em{font-size:clamp(20px,2.2vw,30px)}
.hero-sub{font-size:17.5px}
}
@media(max-width:959px){
.visual-wrap::before{display:none}
.hero .visual::before{content:"";position:absolute;z-index:-1;inset:3% 4% 6%;border-radius:50%;border:1px solid color-mix(in srgb,var(--gold) 34%,transparent);background:radial-gradient(circle,color-mix(in srgb,var(--surface) 92%,transparent) 0%,color-mix(in srgb,var(--tint) 90%,transparent) 62%,transparent 74%)}
}

/* =====================================================================================
   round 15: hero centred as one block in its section, role line, space below
   ===================================================================================== */
.hero h1 em{display:block}
.hero h1 em .em-loc{display:block;margin-top:6px;font-size:.62em;font-weight:500;letter-spacing:-.005em;color:var(--muted)}
.hero h1 em::after{margin-top:16px}

/* both columns share one centre line, and the block is centred in the section */
@media(min-width:960px){
.hero{display:flex;align-items:center;min-height:min(700px,calc(100svh - 72px));padding:44px 0 120px}
.hero>.wrap{width:100%;align-items:center}
.hero-copy{align-self:center}
.visual-wrap{align-self:center;margin-inline:auto}
.hero .h1-name{font-size:clamp(38px,4.4vw,60px)}
.hero h1 em{font-size:clamp(21px,2.3vw,31px);line-height:1.18}
.scroll-cue{bottom:30px}
}
@media(min-width:700px) and (max-width:959px){.hero{padding:36px 0 72px}.hero>.wrap{align-items:center}}
@media(max-width:699px){.hero{padding:24px 0 52px}.hero h1 em .em-loc{font-size:.66em}}

/* breathing room between the hero and the conditions ribbon */
.trust{padding:34px 0 0}
@media(max-width:699px){.trust{padding-top:22px}}

/* =====================================================================================
   round 16: banner rings are centred on the illustration, so the picture sits inside them
   ===================================================================================== */
.fin::after{display:none!important}
.fin-art{position:relative}
.fin-art svg{position:relative;z-index:1}
.fin-art::before{content:"";position:absolute;z-index:0;left:50%;top:50%;width:min(300px,86%);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:1.5px solid rgba(231,189,107,.34);box-shadow:0 0 0 42px rgba(231,189,107,.07),0 0 0 84px rgba(231,189,107,.05),0 0 0 126px rgba(231,189,107,.03);pointer-events:none}
html[data-theme="dark"] .fin-art::before{border-color:rgba(138,42,32,.3);box-shadow:0 0 0 42px rgba(138,42,32,.06),0 0 0 84px rgba(138,42,32,.045),0 0 0 126px rgba(138,42,32,.03)}
/* the rings that were drawn inside the picture would now double up, so only the picture itself remains */
.fin-art svg .a-ring{display:none}
@media(max-width:959px){.fin-art{display:none}}

/* =====================================================================================
   round 17: banner illustration = appointment calendar + bone joint, inside outline-only rings
   ===================================================================================== */
.fin-art::before{display:none!important}
.fin-art svg{overflow:visible;width:min(340px,100%)}
.fin-art svg .fa-ring{fill:none;stroke:var(--a-ring);stroke-width:1.4}
.fin-art svg .fa-ring.r2{opacity:.6}
.fin-art svg .fa-ring.r3{opacity:.32}
.fin-art svg .fa-cross rect{fill:#fff;opacity:.92}
.fin-art svg .fa-pick{fill:#1f9d5b}
.fin-art svg .fa-med-bg{fill:var(--a-cal)}
.fin-art svg .fa-med-rim{fill:none;stroke:var(--a-hot);stroke-width:3}
.fin-art svg .fa-bone{fill:url(#fa-bone-g);stroke:#b08a46;stroke-width:2.2}
.fin-art svg .fa-hot{fill:url(#fa-hot-g);stroke:#fffaf0;stroke-width:3}
.fin-art svg .fa-hot-ring{fill:none;stroke:#e5533a;stroke-width:2.4;opacity:.6;transform-box:fill-box;transform-origin:center;animation:hotpulse 3.2s ease-out infinite}
.fin-art svg .fa-hot-ring.r2{animation-delay:-1.6s}
.fin-art svg .fa-card{animation:bobsvg 8s ease-in-out infinite}
.fin-art svg .fa-med{animation:bobsvg 8s ease-in-out -4s infinite}
@media(prefers-reduced-motion:reduce){.fin-art svg *{animation:none!important}}

.fin-art svg .fa-bone{stroke-width:1.8}

/* =====================================================================================
   round 18: banner = the real 3D spine render inside outline-only rings (no drawn cartoon)
   ===================================================================================== */
.fin-art svg.fa-rings{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.fa-stage{position:relative;width:min(340px,100%);aspect-ratio:460/440;margin-inline:auto}
.fa-stage svg.fa-rings .fa-ring{fill:none;stroke:var(--a-ring);stroke-width:1.4}
.fa-stage svg.fa-rings .fa-ring.r2{opacity:.6}
.fa-stage svg.fa-rings .fa-ring.r3{opacity:.32}
.fa-spine{position:absolute;left:50%;top:50%;height:58%;width:auto;transform:translate(-50%,-50%);max-width:none;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(0,0,0,.35))}
.fa-sp-lt{display:none;height:60%;filter:drop-shadow(0 14px 16px rgba(110,32,24,.22))}
html[data-theme="dark"] .fa-sp-dk{display:none}
html[data-theme="dark"] .fa-sp-lt{display:block}
.fa-node{position:absolute;left:81.3%;top:82.7%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;display:grid;place-items:center;background:#e7bd6b;color:#3c120d;box-shadow:0 8px 18px -8px rgba(0,0,0,.55),0 0 0 4px rgba(231,189,107,.22)}
.fa-node svg{width:19px;height:19px}
html[data-theme="dark"] .fa-node{background:#661c15;color:#fff;box-shadow:0 8px 18px -8px rgba(102,28,21,.6),0 0 0 4px rgba(102,28,21,.16)}
.fin-art{width:100%}
.fa-spine{height:80%}
.fa-sp-lt{height:78%;-webkit-mask-image:radial-gradient(closest-side,#000 74%,transparent 100%);mask-image:radial-gradient(closest-side,#000 74%,transparent 100%)}

/* banner picture is the knee joint render (hero keeps the spine, the explorer opens on the immune system) */
.fa-img{position:absolute;left:50%;top:50%;height:80%;width:auto;transform:translate(-50%,-50%);max-width:none;object-fit:contain;filter:drop-shadow(0 16px 20px rgba(0,0,0,.32))}
.fa-img-lt{display:none;filter:drop-shadow(0 14px 16px rgba(110,32,24,.2))}
html[data-theme="dark"] .fa-img-dk{display:none}
html[data-theme="dark"] .fa-img-lt{display:block}
.fa-spine,.fa-sp-lt{display:none!important}
.fa-img-lt{-webkit-mask-image:radial-gradient(closest-side,#000 76%,transparent 100%);mask-image:radial-gradient(closest-side,#000 76%,transparent 100%)}

/* =====================================================================================
   round 19: caring appointment banner (message + promises + appointment card)
   ===================================================================================== */
.fin-stage,.pass{display:none!important}
.fin.care{padding:46px 28px;gap:30px;align-items:center}
@media(min-width:960px){.fin.care{grid-template-columns:1.1fr .9fr;padding:58px 56px;gap:48px}}
.fin.care .eyebrow{margin-bottom:14px}
.fin.care h2{font-size:clamp(30px,3.9vw,46px);line-height:1.08;letter-spacing:-.025em;margin:0 0 16px;max-width:560px}
.fin.care h2 em{font-style:normal;display:block;background:linear-gradient(95deg,#f6e2a8,#e7bd6b 55%,#c9a03c);-webkit-background-clip:text;background-clip:text;color:transparent}
.fin.care .fin-lead{font-size:16.5px;line-height:1.65;max-width:520px}
.promises{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px;max-width:520px}
.promises li{display:flex;align-items:center;gap:14px;font-size:15.5px;font-weight:500;color:rgba(255,255,255,.92)}
.pr-ico{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(231,189,107,.16);border:1px solid rgba(231,189,107,.38);color:#f2d58f}
.pr-ico svg{width:19px;height:19px}

.appt-card{position:relative;background:#fffaf2;color:#1b1210;border-radius:26px;padding:22px 22px 18px;box-shadow:0 40px 70px -34px rgba(0,0,0,.65),0 0 0 1px rgba(231,189,107,.5);min-width:0}
.ac2-top{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid #eadfca}
.ac2-top img{border-radius:50%;flex:none}
.ac2-top b{display:block;font-size:16px;font-weight:600;line-height:1.25}
.ac2-top small{display:block;font-size:12.5px;color:#6c5a50;line-height:1.35}
.ac2-when{display:flex;align-items:center;gap:16px;padding:16px 0}
.ac2-date{flex:none;width:72px;padding:8px 0 10px;border-radius:16px;background:linear-gradient(160deg,#7a241a,#4c1510);color:#fff;text-align:center;box-shadow:0 12px 20px -12px rgba(76,21,16,.9)}
.ac2-date small{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#f2d58f}
.ac2-date b{display:block;font-size:30px;line-height:1.05;font-weight:700}
.ac2-when .lbl{display:block;font-size:12px;color:#6c5a50;margin-bottom:2px}
.ac2-when .tm{display:block;font-size:19px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}
.appt-card .badge{background:#f3ecdf;border-color:#e1d3b8;color:#3a2a22;font-size:12px}
.ac2-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ac2-actions .btn.lg{height:50px;padding:0 12px;font-size:15px;border-radius:13px;width:100%}
.ac2-num{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 14px;margin:14px 2px 0}
.ac2-num .num{font-size:16px;font-weight:700;color:#1b1210;text-decoration:none;letter-spacing:.01em}
.ac2-link{font-size:13.5px;font-weight:500;color:#661c15;text-decoration:none;white-space:nowrap}
.ac2-link:hover{text-decoration:underline;text-underline-offset:4px}
.ac2-foot{list-style:none;margin:14px 0 0;padding:14px 2px 0;border-top:1px solid #eadfca;display:grid;gap:6px;font-size:12.5px;color:#6c5a50}
.ac2-foot li{position:relative;padding-inline-start:16px}
.ac2-foot li::before{content:"";position:absolute;inset-inline-start:0;top:7px;width:6px;height:6px;border-radius:50%;background:#c9a03c}
@media(max-width:520px){.fin.care{padding:34px 18px}.appt-card{padding:18px 16px 14px;border-radius:22px}.ac2-actions{grid-template-columns:1fr}.ac2-date{width:64px}}

/* in dark theme the banner turns light, so the message needs dark ink */
html[data-theme="dark"] .fin.care h2 em{background:linear-gradient(95deg,#8a2a20,#5a170f);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="dark"] .promises li{color:#2b1c17}
html[data-theme="dark"] .pr-ico{background:rgba(138,42,32,.1);border-color:rgba(138,42,32,.3);color:#8a2a20}
html[data-theme="dark"] .appt-card{background:#fff;box-shadow:0 36px 60px -34px rgba(102,28,21,.45),0 0 0 1px rgba(184,134,43,.45)}
html[data-theme="dark"] .appt-card .btn.primary{background:#661c15;border-color:#661c15;color:#fff}
@media(prefers-reduced-motion:reduce){.appt-card{animation:none}}

/* =====================================================================================
   round 20: banner keeps its layout; the illustration = 3D knee in outline rings + glass appointment chip
   ===================================================================================== */
.fa-node{display:none}
.fa-chip{position:absolute;left:50%;bottom:3%;transform:translateX(-50%);display:flex;align-items:center;gap:11px;padding:10px 16px 10px 11px;border-radius:18px;background:#fffaf2;color:#1b1210;white-space:nowrap;box-shadow:0 22px 38px -18px rgba(0,0,0,.6),0 0 0 1px rgba(231,189,107,.55);z-index:3}
.fa-chip-ico{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(160deg,#8a2a20,#5a170f);color:#f6e2a8;flex:none}
.fa-chip-ico svg{width:18px;height:18px}
.fa-chip-txt small{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#7a6a60;line-height:1.2}
.fa-chip-txt b{display:block;margin-top:2px;font-size:14.5px;font-weight:700;line-height:1.2;letter-spacing:-.005em}
.fa-chip-txt b i{font-style:normal;font-weight:500;color:#6c5a50}
html[dir="rtl"] .fa-chip-txt small{letter-spacing:0;text-transform:none;font-size:12px}
html[data-theme="dark"] .fa-chip{background:#fff;box-shadow:0 22px 38px -18px rgba(102,28,21,.45),0 0 0 1px rgba(184,134,43,.5)}
.fa-img{height:76%;top:47%}
@media(prefers-reduced-motion:reduce){.fa-chip{animation:none}}

/* =====================================================================================
   round 21: calendar + plant + 3D bone joint (replaces the person of the reference), in brand colours
   ===================================================================================== */
.fa-chip{display:none!important}
.fa-stage svg .fa-cal-shadow{fill:var(--a-shadow);filter:blur(12px)}
.fa-stage svg .fa-cal-body{fill:var(--a-cal)}
.fa-stage svg .fa-bind{fill:var(--a-gold)}
.fa-stage svg .fa-grid{fill:none;stroke:#d8c293;stroke-width:2.4}
.fa-stage svg .fa-sel{fill:#1f9d5b}
.fa-stage svg .fa-leaf{fill:#2f9a64}
.fa-stage svg .fa-pot{fill:#7a241a}
.fa-stage svg .fa-cal{animation:bobsvg 8s ease-in-out infinite}
.fa-stage .fa-img{left:28%;top:10%;height:80%;width:auto;transform:none}
@media(prefers-reduced-motion:reduce){.fa-stage svg .fa-cal{animation:none}}

.fa-stage .fa-img{left:34%;top:11%;height:79%}

/* gradient discs instead of outline rings; heartline back inside the circle */
.fin{--a-d1:rgba(231,189,107,.34);--a-d2:rgba(231,189,107,.14);--a-d3:rgba(231,189,107,.04)}
html[data-theme="dark"] .fin{--a-d1:rgba(184,134,43,.34);--a-d2:rgba(184,134,43,.15);--a-d3:rgba(184,134,43,.05)}
.fa-stage{width:min(380px,100%)}
.fa-stage svg .a-pulse{stroke-width:3.2;opacity:.95}
.fa-stage svg .fa-disc{stroke:none}
/* heartline draws once, then stays */
.fa-stage svg .a-pulse{stroke-dasharray:640;stroke-dashoffset:640;opacity:.95;animation:pulseonce 2.4s .5s cubic-bezier(.4,0,.2,1) forwards}
@keyframes pulseonce{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.fa-stage svg .a-pulse{animation:none!important;stroke-dashoffset:0}}
/* heartline: always visible; a soft glow breathes along it */
.fa-stage svg .a-pulse{stroke-dasharray:none!important;stroke-dashoffset:0!important;animation:none!important;opacity:1;stroke-width:4.2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--a-pulse) 70%,transparent))}
@media(prefers-reduced-motion:no-preference){.fa-stage svg .a-pulse{animation:pulseglow 3.6s ease-in-out infinite!important}}
@keyframes pulseglow{0%,100%{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--a-pulse) 45%,transparent))}50%{filter:drop-shadow(0 0 9px color-mix(in srgb,var(--a-pulse) 90%,transparent))}}

/* ---- audit fixes: WhatsApp fallback; language label uses a system font so the 166 KB Arabic webfont is not downloaded on English pages ---- */
.sumcard .row{flex-wrap:wrap}
.wa-status{margin:10px 0 0;font-size:13.5px;font-weight:500;color:var(--brand)}
.wa-fallback{margin:14px 0 0;padding:14px;border-radius:14px;background:var(--bg2);border:1px solid var(--line)}
.wa-fallback .priv{margin:0 0 10px}
.wa-ta{display:block;width:100%;margin-top:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--line2);background:var(--surface);color:var(--ink);font:13px/1.5 Poppins,sans-serif;resize:vertical}
.dk-lang,.dk-lang span{font-family:"Segoe UI",Tahoma,"Noto Naskh Arabic UI","Geeza Pro","Helvetica Neue",Arial,sans-serif}

/* ---- tap targets: every button and stand-alone link is at least 44 x 44 px (WCAG 2.5.5 / Apple and Google guidance) ---- */
.btn{min-height:44px;height:auto;padding-block:0}
.btn.lg{min-height:48px}
.brand{min-height:44px}
nav.main a{padding-block:11px}
.dd-btn{width:44px;height:44px;margin-inline-start:-14px}
.iconbtn,.dk-btn,.dk-btn.iconbtn,.restart,.soc{min-width:44px;min-height:44px;width:44px;height:44px}
.iconbtn.sm{width:30px;height:30px;min-width:0;min-height:0}
.mq .pill{height:44px}
.pill2{height:44px}
.dchip{height:44px}
footer a,.foot-meta a{display:inline-flex;align-items:center;min-height:44px;padding-block:0}
.phones .mail,.phones .num,.contact-list a{min-height:44px}
.phones .num.big{display:flex;align-items:center}
@media(max-width:899px){.dchips.v .dchip{height:44px}}
footer a,.foot-meta a{min-width:44px}
.jump a{height:44px}
.jump ul{padding-block:6px}
.crumbs a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;margin-block:-12px}
.related a{display:inline-flex;align-items:center;min-height:44px;padding-block:0}
.dd-btn{margin-inline:-16px -14px}

/* generated from style attributes by build.py */
.s01d763{padding-top:44px !important}
.s0295d5{--d:300ms}
.s097521{margin-inline:auto !important}
.s0f9ed7{margin:6px 0 0 !important}
.s13076d{text-align:center !important}
.s177bb5{--d:120ms}
.s3222cd{--d:350ms}
.s344c3f{margin:0 auto !important;max-width:720px !important}
.s43ffe6{padding:8px 0 56px !important}
.s490ec6{margin-bottom:36px !important}
.s4996d2{--d:240ms}
.s52d4f1{stop-color:var(--a-d3) !important}
.s5e3ede{padding:90px 0 !important}
.s63e22f{padding-top:32px !important}
.s6dd18e{margin:0 !important;font-size:15px !important}
.s7abc78{--d:360ms}
.s83b8b4{stop-color:var(--a-d2) !important}
.s99472d{stop-color:var(--a-d1) !important}
.s9a8a93{stop-color:var(--a-d2) !important;stop-opacity:.55 !important}
.s9faa70{--d:280ms}
.sa84733{justify-content:center !important;margin-top:24px !important}
.sc95716{--d:180ms}
.sceff85{--d:140ms}
.sd2a105{padding-top:40px !important}
.sd6957f{--d:70ms}
.sdd9f90{padding:48px 0 72px !important}
.se8b05b{--d:210ms}
.sf023d6{stop-color:var(--a-d3) !important;stop-opacity:.0 !important}
.sfc24b5{--d:60ms}
