:root{--bg:#f8f5ee;--surf:#fffdf8;--ink:#14201b;--mut:#5a665f;--line:#ddd6c6;--green:#0f3d2e;--green2:#1a5640;--gold:#b08a35;--goldtx:#86671c;--onG:#f6f7f3;--ok:#1d7a4f;--bad:#b3392f;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0b1713;--surf:#12231d;--ink:#eef2ec;--mut:#a3b3ab;--line:#26392f;--green:#d7b25c;--green2:#e6c577;--gold:#d7b25c;--goldtx:#d7b25c;--onG:#0b1713;--ok:#5cc58e;--bad:#ef8a80}}
:root[data-theme="dark"]{--bg:#0b1713;--surf:#12231d;--ink:#eef2ec;--mut:#a3b3ab;--line:#26392f;--green:#d7b25c;--green2:#e6c577;--gold:#d7b25c;--goldtx:#d7b25c;--onG:#0b1713;--ok:#5cc58e;--bad:#ef8a80}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 76px)}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 "Source Sans 3","Noto Sans Ethiopic",system-ui,sans-serif}
h1,h2,h3{font-family:"Cormorant Garamond","Noto Serif Ethiopic",Georgia,serif;line-height:1.12;margin:0;font-weight:700;letter-spacing:-.01em}
a{color:inherit}.wrap{max-width:1120px;margin:0 auto;padding:0 22px}img{max-width:100%}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:66px;gap:12px}
.brand{font:700 18px "Cormorant Garamond",serif;text-decoration:none;display:flex;align-items:center;gap:10px}
.mark{width:32px;height:32px;border-radius:50%;background:var(--green);color:var(--onG);display:grid;place-items:center;font-size:16px}
nav.d{display:flex;gap:26px;font-size:15px}nav.d a,.drop a.l{text-decoration:none;color:var(--mut)}nav.d a:hover,nav.d a[aria-current],.drop a[aria-current]{color:var(--ink)}
nav.d a[aria-current]{box-shadow:0 2px var(--gold);padding-bottom:4px}
.tools{display:flex;gap:8px;align-items:center}
.lang{display:flex;border:1px solid var(--line);border-radius:99px;overflow:hidden}
.lang button{border:0;background:none;color:var(--mut);padding:6px 11px;font:600 13px "Source Sans 3","Noto Sans Ethiopic",sans-serif;cursor:pointer}
.lang button[aria-pressed=true]{background:var(--green);color:var(--onG)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:var(--onG);border:0;border-radius:10px;padding:13px 22px;font:600 16px "Source Sans 3","Noto Sans Ethiopic",sans-serif;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--green2)}.btn.ghost{background:none;color:var(--ink);border:1px solid var(--line)}.btn.ghost:hover{border-color:var(--ink)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.sm{padding:9px 16px;font-size:15px}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.burger{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:none;cursor:pointer;place-items:center;padding:0;color:var(--ink)}
.burger i{display:block;width:18px;height:2px;background:currentColor;margin:2px 0;transition:.25s}
.burger[aria-expanded=true] i:nth-child(1){transform:translateY(6px) rotate(45deg)}.burger[aria-expanded=true] i:nth-child(2){opacity:0}.burger[aria-expanded=true] i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.drop{display:none}
.hero{padding:76px 0 64px;display:grid;grid-template-columns:1.2fr .8fr;gap:52px;align-items:center}
.hero h1{font-size:clamp(38px,5.6vw,64px)}.lead{font-size:19px;color:var(--mut);max-width:34em;margin:22px 0 30px}.cta{display:flex;gap:12px;flex-wrap:wrap}
.ph{position:relative;border-radius:18px;overflow:hidden;background:linear-gradient(160deg,var(--green),var(--green2));display:grid;place-items:center;color:var(--onG);font:700 64px "Cormorant Garamond",serif;aspect-ratio:4/5}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ph small{position:absolute;bottom:12px;left:0;right:0;text-align:center;font:400 12px "Source Sans 3",sans-serif;opacity:.7}
.chip{position:absolute;left:14px;right:14px;bottom:14px;background:var(--surf);color:var(--ink);border-radius:12px;padding:12px 14px;font:500 14px/1.4 "Source Sans 3",sans-serif;z-index:2}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.stats div{padding:26px 18px;border-right:1px solid var(--line)}.stats div:last-child{border:0}
.stats b{font:700 34px "Cormorant Garamond",serif;display:block}.stats span{color:var(--mut);font-size:15px}
section{padding:80px 0}.alt{background:var(--surf);border-block:1px solid var(--line)}
h2{font-size:clamp(30px,4vw,44px);margin-bottom:14px}.sub{color:var(--mut);max-width:38em;margin:0 0 38px}
.page{padding:64px 0 36px}.page h1{font-size:clamp(36px,5vw,56px);margin-bottom:14px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--surf);border:1px solid var(--line);border-radius:14px;padding:26px;text-decoration:none;display:block}
.card h3{font-size:22px;margin-bottom:8px}.card p{color:var(--mut);margin:0;font-size:16px}a.card:hover{border-color:var(--gold)}
.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.creds{list-style:none;padding:0;margin:22px 0 0}.creds li{padding:12px 0;border-top:1px solid var(--line);display:flex;gap:12px}.creds li:before{content:"✓";color:var(--ok);font-weight:700}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gal figure{margin:0;cursor:zoom-in}.gal .ph{aspect-ratio:4/3;font-size:40px}.gal figcaption{font-size:14px;color:var(--mut);margin-top:8px}
dialog{border:0;border-radius:14px;padding:0;max-width:min(92vw,900px);background:var(--surf)}dialog::backdrop{background:rgba(0,0,0,.7)}dialog img{display:block;max-height:80vh;margin:auto}dialog p{margin:0;padding:12px 16px;color:var(--ink)}
.tl{border-left:2px solid var(--line);margin:0 0 0 8px;padding:0 0 0 26px}.tl div{position:relative;padding-bottom:26px}.tl div:before{content:"";position:absolute;left:-33px;top:7px;width:12px;height:12px;border-radius:50%;background:var(--gold)}.tl b{font-family:"Cormorant Garamond",serif;font-size:19px}.tl span{display:block;color:var(--mut);font-size:15px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);counter-reset:s}.steps div{padding:18px 22px 0 0;border-top:3px solid var(--gold);counter-increment:s}.steps div:before{content:counter(s);font:700 22px "Cormorant Garamond",serif;color:var(--gold)}.steps h3{font-size:20px;margin:6px 0}.steps p{color:var(--mut);font-size:15px;margin:0}
details{border-top:1px solid var(--line);padding:18px 0}details:last-of-type{border-bottom:1px solid var(--line)}summary{font-weight:600;cursor:pointer;font-size:18px}details p,details ul{color:var(--mut);margin:10px 0 0}details ul{padding-left:20px}
.band{background:var(--green);color:var(--onG);border-radius:20px;padding:46px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.band h2{margin:0;font-size:clamp(26px,3.4vw,38px)}.band .btn{background:var(--onG);color:var(--green)}
.book{background:var(--surf);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.prog{display:flex;border-bottom:1px solid var(--line)}.prog span{flex:1;text-align:center;padding:14px 6px;font-size:14px;color:var(--mut);border-bottom:3px solid transparent}.prog span.on{color:var(--ink);font-weight:600;border-color:var(--gold)}.prog span.done{color:var(--ok)}
.step{padding:30px;display:none}.step.on{display:block}.opts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.opt{border:1.5px solid var(--line);border-radius:12px;padding:18px;background:none;color:var(--ink);text-align:left;cursor:pointer;font:inherit}.opt b{display:block}.opt span{color:var(--mut);font-size:14px}.opt[aria-pressed=true]{border-color:var(--green);box-shadow:0 0 0 2px var(--green) inset}
.lbl{font-weight:600;margin:22px 0 10px;display:block}.lbl:first-child{margin-top:0}
.days{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px}.day{flex:0 0 66px;border:1.5px solid var(--line);border-radius:12px;padding:10px 0;text-align:center;background:none;color:var(--ink);cursor:pointer;font:inherit}
.day small{display:block;color:var(--mut);font-size:12px}.day b{font-size:21px}.day[aria-pressed=true]{background:var(--green);color:var(--onG);border-color:var(--green)}.day[aria-pressed=true] small{color:inherit}.day:disabled{opacity:.35;cursor:not-allowed}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}.slot{border:1.5px solid var(--line);border-radius:10px;padding:10px;background:none;color:var(--ink);cursor:pointer;font:600 15px "Source Sans 3",sans-serif}
.slot[aria-pressed=true]{background:var(--green);color:var(--onG);border-color:var(--green)}.slot:disabled{text-decoration:line-through;opacity:.4;cursor:not-allowed}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.full{grid-column:1/-1}
label.f{display:block;font-size:14px;color:var(--mut)}label.f input,label.f textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;font-size:16px}
.err{color:var(--bad);font-size:14px;min-height:20px;margin-top:10px}.foot{display:flex;justify-content:space-between;gap:12px;margin-top:26px;flex-wrap:wrap}
.sum{background:var(--bg);border:1px dashed var(--line);border-radius:12px;padding:18px;margin:16px 0 20px}.sum div{display:flex;justify-content:space-between;gap:14px;padding:5px 0}.sum span{color:var(--mut)}.ref{font:700 28px "Cormorant Garamond",serif;letter-spacing:.04em;color:var(--green)}
.hours{width:100%;border-collapse:collapse}.hours td{padding:10px 0;border-top:1px solid var(--line)}.hours td:last-child{text-align:right;color:var(--mut)}
footer{background:var(--green);color:var(--onG);padding:56px 0 40px;margin-top:40px}footer .g{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:32px}footer a{display:block;opacity:.85;text-decoration:none;margin:6px 0}footer h3{font-size:19px;margin-bottom:10px}.fine{opacity:.6;font-size:13px;margin-top:34px}
@media (max-width:860px){nav.d,.tools .btn,.tools .lang{display:none}.burger{display:grid}
.drop{display:grid;position:absolute;left:0;right:0;top:100%;background:var(--bg);border-bottom:1px solid var(--line);grid-template-rows:0fr;transition:grid-template-rows .28s;visibility:hidden}.drop.open{grid-template-rows:1fr;visibility:visible}
.drop>div{overflow:hidden;padding:0 22px}.drop.open>div{padding:8px 22px 22px}.drop a.l{display:block;padding:14px 0;font-size:19px;border-bottom:1px solid var(--line);color:var(--ink)}.drop a[aria-current]{color:var(--gold);font-weight:600}.drop .lang{display:flex;width:max-content;margin:16px 0}.drop .btn{width:100%}
.hero,.split,footer .g{grid-template-columns:1fr}.hero{padding-top:44px;gap:34px}.ph.big{max-width:320px}.stats{grid-template-columns:1fr 1fr}.stats div:nth-child(2){border-right:0}.stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}
.grid3,.gal,.opts,.fields{grid-template-columns:1fr}.gal{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr;gap:28px}section{padding:56px 0}.step{padding:20px}.band{padding:30px}.page{padding-top:40px}}
@media (min-width:861px){.drop{display:none}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.prose{max-width:780px}.prose h2{font-size:30px;margin:44px 0 6px;padding-top:20px;border-top:1px solid var(--line)}.prose h3{font-size:19px;margin:24px 0 4px}.prose p,.prose li{color:var(--mut);margin:6px 0}.prose a{color:var(--ink);text-decoration:underline}
.fine a{display:inline;margin:0 16px 0 0;opacity:.9;text-decoration:underline}

.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s,transform .6s}.js .reveal.in{opacity:1;transform:none}
.hero-d{background:var(--green);color:var(--onG)}.hero-d .lead{color:inherit;opacity:.85}.hero-d .btn{background:var(--onG);color:var(--green)}.hero-d .btn.ghost{background:none;color:var(--onG);border-color:color-mix(in srgb,var(--onG) 40%,transparent)}
.trust{display:flex;gap:10px 26px;flex-wrap:wrap;font-size:14px;margin-top:30px;opacity:.9}.trust span:before{content:"\2713\00a0";font-weight:700}
.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.badge{border:1px solid var(--line);border-radius:12px;padding:18px;text-align:center;background:var(--surf)}.badge b{display:block;font-family:"Cormorant Garamond",serif;font-size:18px}.badge span{color:var(--mut);font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:10px}.chip2{border:1.5px solid var(--line);border-radius:99px;padding:10px 18px;background:var(--surf);color:var(--ink);font:500 16px "Source Sans 3","Noto Sans Ethiopic",sans-serif;cursor:pointer}.chip2[aria-pressed=true]{background:var(--green);color:var(--onG);border-color:var(--green)}
.out{margin-top:22px;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:22px;background:var(--surf);display:none}.out.on{display:block}.out h3{font-size:24px;margin-bottom:6px}.out p{color:var(--mut);margin:0 0 14px}
.srch{width:100%;max-width:420px;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--surf);color:var(--ink);font:inherit;font-size:16px}
.art{display:flex;flex-direction:column;gap:6px}.art small{color:var(--gold);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:12px}.art .m{color:var(--mut);font-size:14px}.art[hidden]{display:none}
.tbtn{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:none;color:var(--ink);cursor:pointer;font-size:17px}
.sbar{display:none}.soc{margin-top:14px}.fine .soc a,footer .soc a{display:inline-block;margin:0 16px 0 0}
@media (max-width:860px){.badges{grid-template-columns:1fr 1fr}.tools .tbtn{display:none}.drop .tbtn{display:inline-block;margin-left:10px}
.sbar{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--surf);border-top:1px solid var(--line);padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px))}.sbar a{text-align:center;padding:12px 6px;border-radius:10px;border:1px solid var(--line);text-decoration:none;font-weight:600;font-size:15px}.sbar a:last-child{background:var(--green);color:var(--onG);border-color:var(--green)}body{padding-bottom:72px}}

.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.in{padding:10px;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:inherit;font-size:16px}
.bkc{border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:12px;background:var(--surf)}.bkc .m{color:var(--mut);font-size:14px}
.stt{padding:2px 10px;border-radius:99px;font-size:13px;border:1px solid var(--line);color:var(--mut)}.stt.confirmed{color:var(--ok);border-color:var(--ok)}.stt.cancelled{color:var(--bad);border-color:var(--bad)}
.dr{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--line);align-items:center}.dr label{font-weight:600}.note{color:var(--mut);font-size:14px}.ok{color:var(--ok)}.bad{color:var(--bad)}
@media (max-width:860px){.dr{grid-template-columns:1fr}}
.stt.completed{color:var(--ok);border-color:var(--ok)}.stt.no_show{color:var(--bad);border-color:var(--bad)}

/* ===== Legal identity: ivory paper, deep green, brass; classical serif ===== */
h1,h2,h3{font-family:"Cormorant Garamond","Noto Serif Ethiopic",Georgia,serif;font-weight:700;letter-spacing:0}
body{line-height:1.7}
h1{font-size:clamp(42px,6vw,74px);line-height:1.03}h2{font-size:clamp(34px,4.4vw,52px);line-height:1.08}
.card h3,.out h3,.panel h3{font-size:27px}.steps h3{font-size:24px}.prose h3{font-size:23px}.stats b{font-size:44px}.ref{font-size:34px}.tl b{font-size:22px}.band h2{font-size:clamp(30px,3.8vw,44px)}
.nav{height:72px}.brand{gap:12px}.mark{width:38px;height:38px;border:1px solid var(--gold)}.mark svg{width:22px;height:22px}
.bn{display:flex;flex-direction:column;line-height:1.05;font:700 23px "Cormorant Garamond",serif}.bn small{font:600 10px "Source Sans 3",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-top:3px}
nav.d{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}
.btn,.btn.ghost{border-radius:3px;letter-spacing:.02em}.btn:not(.ghost){box-shadow:inset 0 -3px 0 var(--gold)}
.card,.badge,.bkc,.sum,.out{border-radius:4px}.book{border-radius:6px}.opt,.day,.slot,.in,label.f input,label.f textarea,.srch,.chip2,.stt,.tbtn{border-radius:3px}
.card{border-top:3px solid var(--gold)}
.ph,.ph.big{border-radius:3px}.ph.big{outline:1px solid var(--gold);outline-offset:10px;margin:10px}
.eyebrow{display:flex;align-items:center;gap:12px;font:600 12px "Source Sans 3",sans-serif;letter-spacing:.22em;text-transform:uppercase;color:var(--goldtx);margin-bottom:12px}.eyebrow:before{content:"";width:36px;height:1px;background:currentColor}
.hero-d{background-image:repeating-linear-gradient(90deg,transparent 0 92px,color-mix(in srgb,var(--onG) 7%,transparent) 92px 93px);border-bottom:4px solid var(--gold)}.hero-d .eyebrow{color:var(--onG);opacity:.85}
.alt{border-block:3px double var(--line)}
.steps div:before,.art small{color:var(--goldtx)}
.clause:before{counter-increment:cl;content:"\00a7\00a0" counter(cl,decimal-leading-zero);display:block;font:600 12px "Source Sans 3",sans-serif;letter-spacing:.18em;color:var(--goldtx);margin-bottom:8px}
.laws{counter-reset:dc}.laws summary{font-family:"Cormorant Garamond","Noto Serif Ethiopic",serif;font-size:27px}.laws summary:before{counter-increment:dc;content:"\00a7\00a0" counter(dc);color:var(--goldtx);margin-right:12px}
blockquote.pull{margin:0 0 28px;padding:6px 0 6px 22px;border-left:3px solid var(--gold);font:600 30px/1.25 "Cormorant Garamond",serif}
footer .fine{border-top:1px solid color-mix(in srgb,var(--onG) 25%,transparent);padding-top:22px}
@media (max-width:860px){.ph.big{margin:10px auto}.bn{font-size:21px}h1{font-size:clamp(40px,11vw,56px)}}

.skip{position:absolute;left:-999px;top:0;background:var(--green);color:var(--onG);padding:10px 16px;z-index:100;text-decoration:none}.skip:focus{left:10px;top:10px}
.stars{display:flex;gap:2px;margin:10px 0}.star{background:none;border:0;font-size:36px;line-height:1;color:var(--line);cursor:pointer;padding:0 2px}.star[aria-pressed=true],.star:hover{color:var(--goldtx)}.rating{color:var(--goldtx);letter-spacing:.15em;font-size:18px}
.dh{font-size:23px!important;margin:26px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.quote{font:500 22px/1.4 "Cormorant Garamond","Noto Serif Ethiopic",serif;margin:10px 0}
@media print{header,footer,.sbar,.cta,.band,.drop,.skip,.burger{display:none!important}body{background:#fff;color:#000}.reveal{opacity:1!important;transform:none!important}a{text-decoration:none}}
