/* May Chen Studio: shared styles for he (rtl) and en (ltr). Logical properties throughout. */
@font-face{font-family:"Montserrat";src:url(/assets/fonts/montserrat-latin-200-normal.woff2) format("woff2");font-weight:200;font-display:swap}
@font-face{font-family:"Montserrat";src:url(/assets/fonts/montserrat-latin-300-normal.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Montserrat";src:url(/assets/fonts/montserrat-latin-300-italic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"Montserrat";src:url(/assets/fonts/montserrat-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Montserrat";src:url(/assets/fonts/montserrat-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Montserrat";src:url(/assets/fonts/montserrat-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
/* Hebrew glyphs only: Latin inside Hebrew pages still renders in Montserrat */
@font-face{font-family:"Assistant";src:url(/assets/fonts/assistant-hebrew-300-normal.woff2) format("woff2");font-weight:200 300;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F;font-display:swap}
@font-face{font-family:"Assistant";src:url(/assets/fonts/assistant-hebrew-400-normal.woff2) format("woff2");font-weight:400 500;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F;font-display:swap}
@font-face{font-family:"Assistant";src:url(/assets/fonts/assistant-hebrew-600-normal.woff2) format("woff2");font-weight:600 700;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F;font-display:swap}

:root{
  --bg:#140b08; --bg2:#1c110d; --fg:#f0e8e0; --muted:#a99a90; --accent:#71343b; --line:rgba(240,232,224,.14);
  --display:"Montserrat","Assistant",system-ui,sans-serif;
  --body:"Montserrat","Assistant",system-ui,sans-serif;
  --gut:clamp(16px,4vw,56px); --max:1280px; --wide:1560px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;font-weight:300;line-height:1.7;overflow-x:hidden}
html[lang=he] body{font-size:18px}
html[dir=rtl] body{text-align:right}
/* film grain over everything: ties the photos and the page into one surface */
body::after{content:"";position:fixed;inset:-50%;z-index:39;pointer-events:none;opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img,video{display:block;max-width:100%}
a{color:inherit}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.wide{max-width:var(--wide);margin-inline:auto;padding-inline:var(--gut)}

/* type */
.display{font-family:var(--display);font-weight:300;line-height:1;letter-spacing:.06em;text-transform:uppercase;margin:0}
.h-sec{font-size:clamp(56px,11vw,150px)}
.h-mid{font-family:var(--display);font-weight:300;font-size:clamp(28px,3.6vw,46px);line-height:1.15;letter-spacing:.02em;margin:0 0 .6em}
html[lang=en] .h-mid{text-transform:uppercase;letter-spacing:.08em}
.kicker{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
html[lang=he] .kicker:not([lang=en]){letter-spacing:.06em}
.lead{font-size:clamp(19px,2vw,23px);line-height:1.5}
.muted{color:var(--muted)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:48px;padding:.7em 1.6em;border:1px solid var(--accent);background:var(--accent);color:var(--fg);text-decoration:none;font:inherit;font-weight:400;font-size:15px;letter-spacing:.06em;cursor:pointer;transition:background .2s,color .2s}
.btn:hover{background:transparent;color:var(--fg);border-color:var(--accent)}
.btn.ghost{background:transparent;color:var(--fg);border-color:var(--line)}
.btn.ghost:hover{border-color:var(--accent);background:rgba(113,52,59,.18)}
html[lang=en] .btn{text-transform:uppercase;font-size:12px;letter-spacing:.18em}
:focus-visible{outline:1px solid var(--fg);outline-offset:3px}

/* header */
.hdr{position:fixed;inset-block-start:0;inset-inline:0;z-index:40;display:flex;align-items:center;gap:24px;padding:14px var(--gut);transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.hdr.solid{background:rgba(20,11,8,.9);backdrop-filter:blur(8px);border-color:var(--line)}
.logo{font-family:var(--display);font-weight:300;font-size:18px;letter-spacing:.32em;text-decoration:none;white-space:nowrap}
.nav{display:flex;gap:22px;margin-inline-start:auto}
.nav a{text-decoration:none;font-size:15px;color:var(--muted);transition:color .2s}
.nav a:hover,.nav a[aria-current]{color:var(--fg)}
.nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}
.nav .nav-book{display:none}
html[lang=en] .nav a{font-size:12px;letter-spacing:.18em;text-transform:uppercase}
.hdr .btn{min-height:40px;padding:.5em 1.1em}
.lang{font-size:13px;letter-spacing:.12em;text-decoration:none;border:1px solid var(--line);padding:.45em .8em;color:var(--muted)}
.lang:hover{color:var(--fg);border-color:var(--fg)}
@media (max-width:900px){
  .hdr{flex-wrap:wrap;gap:8px 16px;padding-block:10px}
  .lang{margin-inline-start:auto}
  .nav{order:3;width:100%;margin:0;gap:18px;justify-content:center}
  .nav a{font-size:14px}
  html[lang=en] .nav a{font-size:11px;letter-spacing:.14em}
  .nav .nav-book{display:inline;color:var(--fg)}
  .hdr .btn{display:none}
}

/* hero: the whole photograph, at its own aspect ratio; the title sits in the dark area on the left */
.hero{position:relative;background:var(--bg)}
.hero img{width:100%;height:auto}
.hero-in{position:absolute;z-index:2;inset-block:0;left:var(--gut);width:min(32%,520px);display:flex;align-items:center}
.hero h1{font-family:var(--display);font-weight:300;font-size:clamp(20px,2.5vw,44px);line-height:1.35;letter-spacing:.06em;margin:0;text-shadow:0 2px 24px rgba(20,11,8,.8)}
html[lang=he] .hero h1{letter-spacing:0;line-height:1.4}
@media (max-width:700px){
  .hero{padding-top:92px}
  .hero-in{position:static;width:auto;padding:22px var(--gut) 0}
  .hero h1{font-size:clamp(22px,6.4vw,30px)}
}

/* statement */
.statement{padding:clamp(64px,10vw,140px) var(--gut) clamp(24px,4vw,48px);text-align:center}
.st-line{font-family:var(--display);font-weight:300;font-size:clamp(22px,3.3vw,46px);line-height:1.35;letter-spacing:.08em;max-width:24em;margin:0 auto 28px}
.st-sub{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin:0}
.st-sub::before{content:"";display:block;width:40px;height:1px;background:var(--accent);margin:0 auto 22px}

/* home: choose portraits or couples */
.choose{padding-top:clamp(32px,5vw,64px)}
.choose-lead{text-align:center;max-width:30em;margin:0 auto clamp(32px,5vw,56px)}
.choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,44px);align-items:start}
.card{display:block;text-decoration:none;color:inherit}
.card img{width:100%;height:auto;transition:opacity .4s}
.card:hover img{opacity:.86}
.card-t{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:baseline;padding-top:22px;border-bottom:1px solid var(--line);padding-bottom:20px;transition:border-color .3s}
.card:hover .card-t{border-color:var(--accent)}
.card-h{font-family:var(--display);font-weight:300;font-size:clamp(26px,3vw,40px);letter-spacing:.14em;text-transform:uppercase;line-height:1.1}
html[lang=he] .card-h{letter-spacing:.02em}
.card-go{grid-row:1;grid-column:2;font-size:22px;color:var(--muted);transition:transform .3s,color .3s}
.card:hover .card-go{color:var(--fg);transform:translateX(6px)}
html[dir=rtl] .card:hover .card-go{transform:translateX(-6px)}
.card-l{grid-column:1/-1;font-size:15px}
.choose-book{text-align:center;margin-top:clamp(40px,6vw,72px)}
@media (max-width:760px){.choose-grid{grid-template-columns:1fr;gap:48px}}

/* inner page header */
.page-head{padding:clamp(140px,16vw,210px) 0 clamp(24px,4vw,48px)}
.page-head .kicker{margin-bottom:18px}
.page-h{font-family:var(--display);font-weight:300;font-size:clamp(28px,4.4vw,62px);line-height:1.2;letter-spacing:.02em;margin:0 0 .5em;max-width:20em}
.page-h1,.page-h2{display:block}
.page-h1{letter-spacing:.14em}
.page-h2{font-size:.62em;margin-top:.3em}
html[dir=rtl] .page-h[dir=ltr]{text-align:right}
.page-head .lead{max-width:34em}
@media (max-width:900px){.page-head{padding-top:140px}}

/* sections */
section{position:relative}
.sec{padding-block:clamp(72px,12vw,160px)}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 40px;margin-bottom:clamp(32px,5vw,64px)}

/* ---------- split sections: text beside a photo shown whole (he: text right, image left) ---------- */
.split{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;min-height:clamp(560px,80vh,860px)}
.split-text{position:relative;z-index:2;align-self:center;padding:clamp(72px,9vw,120px) var(--gut);max-width:640px;justify-self:end;width:100%}
.split.rev .split-text{order:2;justify-self:start}
.split-media{position:relative;display:flex;align-items:center;justify-content:center;padding:clamp(24px,4vw,64px) var(--gut)}
.split-media img{width:100%;height:auto;max-height:86vh;object-fit:contain}
.split-text .kicker{margin-bottom:18px}
.quote-h{font-family:var(--display);font-weight:300;font-size:clamp(28px,3.4vw,48px);line-height:1.2;letter-spacing:.04em;margin:0 0 24px;text-transform:uppercase}
html[lang=he] .quote-h{text-transform:none;line-height:1.1}
.quote-h span{display:block}
.split-text .row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.priv-list{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.priv-list li{padding-inline-start:28px;position:relative;color:#d9cfc6}
.priv-list li::before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.8em;width:14px;height:1px;background:var(--accent)}
.split .last{font-family:var(--display);font-weight:300;font-size:clamp(24px,2.6vw,34px);color:var(--fg);margin-top:.4em}
.about-ph{display:grid;place-items:center;min-height:420px;background:radial-gradient(closest-side,#24150f,transparent)}
.about-ph .ph{font-family:var(--display);letter-spacing:.2em;font-size:22px;color:var(--muted)}
.about-ph img{width:100%;height:auto;object-fit:contain}
@media (max-width:900px){
  .split{grid-template-columns:1fr;min-height:0}
  .split-media,.split.rev .split-media{order:-1;padding:24px var(--gut) 0}
  .split-media img{max-height:none}
  .about-ph{min-height:240px}
  .split-text,.split.rev .split-text{order:0;padding-top:36px;padding-bottom:72px;justify-self:stretch;max-width:none}
}
}

/* ---------- portfolio: Photos / Videos per page. Every frame keeps its own aspect ratio. ---------- */
.work{padding-top:clamp(32px,5vw,64px);padding-bottom:clamp(56px,8vw,110px)}
.tabs{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:baseline}
.tab{background:none;border:0;padding:0;font-family:var(--display);font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:rgba(240,232,224,.3);cursor:pointer;font-size:clamp(22px,2.8vw,40px);line-height:1;transition:color .3s}
.tab:hover{color:rgba(240,232,224,.65)}
.tab[aria-selected=true]{color:var(--fg)}
.tab-sep{color:var(--accent);font-size:clamp(22px,2.8vw,40px);font-weight:200}
.tab-line{margin:18px 0 0;font-size:clamp(16px,1.5vw,19px);max-width:36em}
/* stills / video: two separate sections, chosen from the switch above them */
.work-switch{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:baseline;padding-top:clamp(16px,3vw,40px)}
.work-switch .tab{text-decoration:none;color:rgba(240,232,224,.55)}
.work-switch .tab:hover{color:var(--fg)}
.work-h{font-family:var(--display);font-weight:300;font-size:clamp(20px,2vw,28px);letter-spacing:.3em;margin:0;padding-bottom:16px;border-bottom:1px solid var(--line)}
html[dir=rtl] .work-h{text-align:right}
.work-video{border-top:1px solid var(--line)}
.strip-wrap{position:relative;margin-top:clamp(24px,3.4vw,44px)}
.strip{display:flex;align-items:center;gap:clamp(10px,1.4vw,20px);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-inline:var(--gut);scrollbar-width:none;cursor:grab;--sh:clamp(360px,64vh,620px)}
.strip::-webkit-scrollbar{display:none}
.strip.drag{cursor:grabbing;scroll-snap-type:none}
.si{flex:0 0 auto;position:relative;margin:0;aspect-ratio:var(--r);width:min(80vw,calc(var(--sh) * var(--r)));scroll-snap-align:center}
.si img,.si video{width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;background:var(--bg2)}
figure.si,figure.cg{cursor:zoom-in}
.strip.drag figure.si{cursor:grabbing}
.arr{position:absolute;top:50%;z-index:5;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;border:1px solid rgba(240,232,224,.4);background:rgba(20,11,8,.6);color:var(--fg);font-family:var(--display);font-weight:300;font-size:24px;cursor:pointer;display:grid;place-items:center;transition:border-color .2s,opacity .2s}
.arr:hover{border-color:var(--accent)}
.arr.prev{inset-inline-start:max(12px,calc(var(--gut) - 26px))}
.arr.next{inset-inline-end:max(12px,calc(var(--gut) - 26px))}
.work-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:clamp(20px,3vw,36px)}
.hint{font-size:14px;letter-spacing:.04em}

/* couples: editorial grid, staggered on a 12-column field, photos uncropped */
.cgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(12px,2vw,28px);row-gap:clamp(40px,6vw,110px);margin-top:clamp(36px,5vw,72px);}
.cg{margin:0;position:relative}
.cg img{width:100%;height:auto}
.cg1{grid-column:2/span 4}
.cg2{grid-column:7/span 6;align-self:end}
.cg3{grid-column:1/span 7}
.cg4{grid-column:9/span 3;align-self:center}
.cg5{grid-column:3/span 8}
.cg6{grid-column:5/span 4}
.cg6::before{content:"";position:absolute;inset-block-start:-28px;inset-inline-start:0;width:40px;height:1px;background:var(--accent)}

/* videos: whole frame, original aspect ratio */
.vgrid{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:clamp(16px,2.4vw,32px);margin-top:clamp(24px,3.4vw,44px);--vh:clamp(340px,66vh,640px)}
.vgrid .si{width:min(100%,calc(var(--vh) * var(--r)))}
.vid{cursor:pointer}
.vid .play{position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;border:1px solid rgba(240,232,224,.7);background:rgba(20,11,8,.4);color:var(--fg);font-size:17px;display:grid;place-items:center;cursor:pointer;transition:opacity .3s,transform .3s,border-color .3s;padding-inline-start:4px}
.vid:hover .play{border-color:var(--accent)}
.vid.playing .play{opacity:0;transform:scale(.9);pointer-events:none}
@media (max-width:760px){
  .strip{--sh:min(62vh,470px)}
  .si{width:min(86vw,calc(var(--sh) * var(--r)))}
  .arr{display:none}
  .cgrid{grid-template-columns:1fr;row-gap:36px}
  .cg{grid-column:1!important;width:88%}
  .cg.v{width:72%}
  .cg:nth-child(even){justify-self:end}
  .cg6::before{display:none}
  .vgrid{--vh:min(70vh,560px)}
}

/* packages */
.pk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,44px)}
.pk{display:flex;flex-direction:column;padding-bottom:8px;border-bottom:1px solid var(--line)}
.pk-media{position:relative;aspect-ratio:4/3;margin-bottom:22px;background:var(--bg2)}
.pk-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.pk h3{font-family:var(--display);font-weight:300;font-size:clamp(24px,2.2vw,30px);letter-spacing:.06em;margin:0 0 22px;line-height:1.2}
html[lang=en] .pk h3{text-transform:uppercase}
.pk dl{margin:0;display:grid;gap:18px;flex:1}
.pk dt{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
html[lang=he] .pk dt{letter-spacing:.04em;font-size:14px}
.pk dd{margin:0}
.pk ul{margin:0;padding-inline-start:1.1em}
.pk li{margin-bottom:.35em}
.pk .btn{margin-top:28px;width:100%}
.note{margin-top:28px;font-size:14px;max-width:60em}
@media (max-width:900px){.pk-grid{display:flex;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;margin-inline:calc(-1*var(--gut));padding-inline:var(--gut);scroll-padding-inline:var(--gut);scrollbar-width:none}.pk-grid::-webkit-scrollbar{display:none}.pk{flex:0 0 min(80vw,340px);scroll-snap-align:start}}

/* process */
.steps{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;counter-reset:s;list-style:none;margin:0;padding:0}
.steps li{border-top:1px solid var(--line);padding-top:18px}
.steps li::before{counter-increment:s;content:"0" counter(s);font-family:var(--display);font-weight:200;font-size:32px;display:block;margin-bottom:10px;color:var(--muted)}
.steps li:first-child{border-top-color:var(--accent)}
.steps h3{font-size:16px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;font-family:var(--display)}
html[lang=he] .steps h3{font-size:22px;letter-spacing:0}
.steps p{margin:0}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* faq */
.faq{max-width:900px}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-of-type{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-size:18px;font-weight:400}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--display);font-weight:200;font-size:26px;line-height:1;color:var(--muted);transition:transform .3s,color .3s}
.faq details[open] summary::after{color:var(--accent)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding-bottom:20px;color:#d9cfc6;max-width:46em}

/* band: the whole photo, line set over it */
.band{position:relative;display:grid;place-items:center;text-align:center;padding-block:clamp(24px,4vw,64px)}
.band img{width:min(100%,1600px);height:auto;margin-inline:auto;grid-area:1/1}
.band .in{grid-area:1/1;position:relative;z-index:2;padding:var(--gut);text-shadow:0 2px 30px rgba(20,11,8,.9)}
.band .line{font-family:var(--display);font-weight:300;font-size:clamp(20px,3.4vw,48px);line-height:1.25;letter-spacing:.06em;margin:0 0 18px;text-transform:uppercase;max-width:16em}
html[lang=he] .band .line{text-transform:none;letter-spacing:0}
.band .kicker{color:var(--fg)}

/* closing call to action on portraits / couples */
.cta{text-align:center;border-top:1px solid var(--line)}
.cta .lead{max-width:30em;margin:0 auto 32px}

/* booking */
.book{display:grid;grid-template-columns:4fr 8fr;gap:clamp(28px,5vw,80px);align-items:start}
.cal{min-height:720px;position:relative;border-radius:6px;overflow:hidden;box-shadow:0 0 0 1px var(--line),0 30px 80px rgba(0,0,0,.6)}
.cal-done{margin:0 0 20px;padding:18px 22px;border:1px solid var(--accent);font-size:18px}
.cal-done[hidden]{display:none}
.cal .calendly-inline-widget{min-width:320px;height:760px}
.cal .ph{position:absolute;inset:0;display:grid;place-items:center;padding:32px;text-align:center;color:var(--muted)}
@media (max-width:900px){.cal .calendly-inline-widget{height:1000px}}

/* booking page: request form, then the intro call */
.bk-steps{list-style:none;counter-reset:b;margin:clamp(32px,4vw,56px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px 32px}
.bk-steps li{border-top:1px solid var(--line);padding-top:16px}
.bk-steps li:first-child{border-top-color:var(--accent)}
.bk-steps li::before{counter-increment:b;content:"0" counter(b);display:block;font-weight:200;font-size:28px;color:var(--muted);margin-bottom:8px}
.bk-steps h3{font-size:15px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px}
html[lang=he] .bk-steps h3{font-size:20px;letter-spacing:0}
.bk-steps p{margin:0;font-size:15px}
.bk{padding-top:clamp(24px,4vw,48px)}
.bk-form,.bk-done{max-width:760px}
.bk-form{display:grid;gap:22px}
.fld{display:grid;gap:8px;margin:0;padding:0;border:0;min-width:0}
.fld>span,.fld legend{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding:0;margin-bottom:8px}
html[lang=he] .fld>span,html[lang=he] .fld legend{font-size:15px;letter-spacing:.02em;text-transform:none}
.fld legend{margin-bottom:12px}
.req{color:var(--accent);margin-inline-start:4px}
.fld-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.bk-form input:not([type=radio]),.bk-form select,.bk-form textarea{width:100%;min-height:48px;padding:12px 14px;background:var(--bg2);color:var(--fg);border:1px solid var(--line);border-radius:0;font:inherit;font-size:16px;color-scheme:dark}
html[dir=rtl] .bk-form input[dir=ltr]{text-align:right}
.bk-form textarea{resize:vertical}
.bk-form input:focus,.bk-form select:focus,.bk-form textarea:focus{outline:none;border-color:var(--accent)}
.opts{display:flex;flex-wrap:wrap;gap:12px}
.opt{position:relative;cursor:pointer}
.opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opt span{display:inline-flex;align-items:center;min-height:46px;padding:.6em 1.4em;border:1px solid var(--line);transition:border-color .2s,background .2s}
.opt input:checked+span{border-color:var(--accent);background:rgba(113,52,59,.25)}
.opt input:focus-visible+span{outline:1px solid var(--fg);outline-offset:3px}
.bk-form .btn{justify-self:start;min-width:240px}
.bk-form .btn[disabled]{opacity:.6;cursor:wait}
.bk-err{margin:0;color:#e0a8a8}
.hp{position:absolute;inset-inline-start:0;width:1px;height:1px;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.alt{font-size:15px;margin:0}
.bk-done[hidden],.bk-form[hidden]{display:none}
.bk-done{outline:none}
.bk-done .h-mid{margin-top:40px}
.bk-done .cal{margin-top:24px}
@media (max-width:760px){.bk-steps{grid-template-columns:1fr}.fld-row{grid-template-columns:1fr}.bk-form .btn{width:100%}}

/* footer */
.ftr{border-top:1px solid var(--line);padding:48px var(--gut) 110px;display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;font-size:15px;color:var(--muted)}
.ftr a{text-decoration:none}.ftr a:hover{color:var(--fg)}
.ftr .links{display:flex;flex-wrap:wrap;gap:12px 24px}
.ftr .logo{font-size:16px}
.ltr{direction:ltr;unicode-bidi:isolate}
.at{font-family:Georgia,"Times New Roman",serif}
@media (min-width:901px){.ftr{padding-bottom:48px}}

/* sticky mobile CTA */
.sticky{position:fixed;inset-inline:12px;inset-block-end:12px;z-index:45;transform:translateY(140%);transition:transform .35s}
.sticky.show{transform:none}
.sticky .btn{width:100%;box-shadow:0 8px 30px rgba(0,0,0,.5)}
@media (min-width:901px){.sticky{display:none}}

/* lightbox */
.lb{position:fixed;inset:0;z-index:60;background:rgba(20,11,8,.97);display:none;align-items:center;justify-content:center}
.lb.open{display:flex}
.lb img{max-width:92vw;max-height:88vh;width:auto;height:auto;object-fit:contain}
.lb button{position:absolute;background:none;border:0;color:var(--fg);font-size:34px;font-weight:200;cursor:pointer;padding:16px;font-family:var(--display)}
.lb .x{inset-block-start:8px;inset-inline-end:8px}
.lb .prev{inset-inline-start:4px;top:50%;transform:translateY(-50%)}
.lb .next{inset-inline-end:4px;top:50%;transform:translateY(-50%)}
.lb .count{position:absolute;inset-block-end:16px;font-size:12px;letter-spacing:.2em;color:var(--muted)}

/* legal page */
.legal{min-height:70vh;padding-top:140px}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.legal{max-width:820px;padding-bottom:96px}
.legal h2{font-family:var(--display);font-weight:400;font-size:clamp(22px,2.2vw,28px);margin:44px 0 12px}
.legal p,.legal li{color:#d9cfc6}
.legal ul{padding-inline-start:1.2em;margin:0 0 1em}
.legal li{margin-bottom:.5em}
.legal .back{margin-top:48px}
