/*
Theme Name: Bamboo Parlour Landing
Theme URI: https://thefinaldinner.com
Author: The Bamboo Parlour Secret
Description: Pre-launch landing page for The Bamboo Parlour Secret: The Final Dinner. Activate it on a fresh WordPress install and the whole site becomes the landing page, with a built-in waitlist (see "Parlour Register" in the admin menu). Switch themes when the full site is ready.
Version: 1.4.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: Proprietary
Text Domain: bamboo-parlour-landing
*/

/* ── Tokens: one deliberate dark world ─────────────────────────────── */
:root{
  --ink:#0B0908;
  --parlour:#171210;
  --parlour-2:#1F1813;
  --line:rgba(201,164,85,.22);
  --gold:#C9A455;
  --candle:#EBD9A6;
  --rum:#9A1F1F;
  --bone:#E6DCC6;
  --dust:#9F9078;
  --display:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --label:"Marcellus","Trajan Pro","Cinzel",Georgia,serif;
  --body:"EB Garamond","Garamond","Palatino Linotype",Georgia,serif;
  --mono:"Courier Prime","Courier New",Courier,monospace;
  --gutter:clamp(18px,4vw,48px);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--bone);font-family:var(--body);font-size:1.125rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.07;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
a{color:var(--candle);text-decoration-color:var(--line);text-underline-offset:3px}
a:hover{text-decoration-color:var(--gold)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
img,svg{max-width:100%}
h1,h2,h3{font-family:var(--display);font-weight:400;color:var(--candle);margin:0;text-wrap:balance;line-height:1.05}
p{margin:0}
.wrap{max-width:1120px;margin-inline:auto;padding-inline:var(--gutter)}
.eyebrow{font-family:var(--label);font-size:.76rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold)}
.eyebrow::before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin-right:14px;opacity:.7}
.mono{font-family:var(--mono)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7em;font-family:var(--label);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;
  padding:1.05em 1.7em;border:1px solid var(--gold);color:var(--ink);background:var(--gold);text-decoration:none;border-radius:2px;cursor:pointer;
  transition:background .25s,box-shadow .25s}
.btn:hover{background:var(--candle);box-shadow:0 0 0 1px var(--gold),0 0 40px rgba(201,164,85,.35)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ── Header ────────────────────────────────────────────────────────── */
.top{position:absolute;top:0;left:0;right:0;z-index:5}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:18px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--candle)}
.brand svg{width:46px;height:46px;flex:none}
.brand .name{font-family:var(--label);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;line-height:1.25}
.brand .name small{display:block;font-size:.6rem;letter-spacing:.3em;color:var(--gold)}
.top .where{font-family:var(--mono);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dust)}
@media (max-width:640px){.top .where{display:none}.brand .name{font-size:.7rem}}
.admin-bar .top{top:32px}
@media (max-width:782px){.admin-bar .top{top:46px}}

/* ── Hero: the façade ──────────────────────────────────────────────── */
.hero{position:relative;isolation:isolate;overflow:hidden;--mx:50%;--my:40%;padding-top:96px}
.hero .facade{position:absolute;inset:0;z-index:-3}
.hero .facade svg{width:100%;height:100%;display:block}
.hero canvas{position:absolute;inset:0;z-index:-2;width:100%;height:100%;pointer-events:none}
.hero .light{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(520px circle at var(--mx) var(--my),rgba(235,217,166,.16),rgba(201,164,85,.05) 40%,transparent 70%)}
.hero .wrap{position:relative;padding-block:clamp(48px,9vh,110px) clamp(40px,7vh,80px);text-align:center;max-width:900px}
.hero .kicker{display:flex;flex-wrap:wrap;justify-content:center;gap:.6em 1.4em;margin-bottom:1.8rem}
.hero h1{font-size:clamp(2.4rem,6.4vw,5.4rem);letter-spacing:-.01em;text-shadow:0 0 60px rgba(201,164,85,.18);margin-inline:auto;max-width:16ch}
.hero .title{font-family:var(--label);font-size:clamp(.8rem,1.4vw,.95rem);letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin:1.5rem 0 .4rem}
.hero .title em{font-family:var(--display);font-style:italic;font-weight:500;text-transform:none;letter-spacing:0;font-size:1.9em;color:var(--rum);display:block;margin-top:.25em;text-shadow:0 0 30px rgba(154,31,31,.45)}
.hero .lede{font-size:clamp(1.15rem,1.6vw,1.35rem);line-height:1.55;max-width:58ch;margin:1.6rem auto 0}
.hero .soon{margin-top:1.6rem;font-family:var(--mono);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--dust)}
.hero .soon b{color:var(--candle);font-weight:400}
.hero .cta{margin-top:2rem}
.hero .facade .sign{display:none}
@media (max-width:700px){.hero .facade{opacity:.6}}

/* ── Fact strip ────────────────────────────────────────────────────── */
.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(201,164,85,.04),transparent 40%,transparent 60%,rgba(201,164,85,.04))}
.strip .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.strip .cell{padding:20px 16px;border-left:1px solid var(--line)}
.strip .cell:first-child{border-left:0}
.strip b{display:block;font-family:var(--label);font-weight:400;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:.35em}
.strip span{font-family:var(--mono);font-size:.96rem;color:var(--bone)}

/* ── The ledger: notice + register ─────────────────────────────────── */
.ledger{background:var(--parlour);position:relative;overflow:hidden}
.ledger::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(700px 420px at 70% 30%,rgba(201,164,85,.10),transparent 70%)}
.ledger .wrap{position:relative;padding-block:clamp(64px,9vw,120px);display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,110px);align-items:center}
@media (max-width:860px){.ledger .wrap{grid-template-columns:1fr}.notice{max-width:440px;margin-inline:auto}}

.notice{position:relative;color:#3B3025;padding:34px 30px 30px;font-family:var(--mono);transform:rotate(-1.4deg);
  background-color:#DDD1B2;
  background-image:
    radial-gradient(ellipse at 20% 10%,rgba(120,90,40,.28),transparent 55%),
    radial-gradient(ellipse at 90% 100%,rgba(120,90,40,.4),transparent 50%),
    radial-gradient(circle at 70% 30%,rgba(110,80,40,.18),transparent 12%),
    radial-gradient(circle at 30% 70%,rgba(110,80,40,.14),transparent 9%),
    radial-gradient(circle at 82% 58%,rgba(90,60,30,.16),transparent 6%),
    radial-gradient(circle at 12% 88%,rgba(90,60,30,.2),transparent 10%),
    radial-gradient(ellipse at 50% 50%,transparent 60%,rgba(80,55,25,.35)),
    radial-gradient(circle at 0% 100%,rgba(35,22,10,.7),rgba(60,40,18,.35) 9%,transparent 22%),
    radial-gradient(circle at 100% 0%,rgba(60,40,18,.3),transparent 14%);
  box-shadow:0 30px 60px rgba(0,0,0,.6),inset 0 0 90px rgba(100,70,30,.35);
  clip-path:polygon(0 0,32% .5%,61% 0,100% .6%,100% 38%,99.2% 41%,100% 44%,100% 86%,97% 90%,100% 94%,96% 100%,90% 98.4%,84% 100%,77% 98.7%,70% 100%,62% 99%,54% 100%,46% 98.5%,38% 100%,30% 99%,22% 100%,14% 98.6%,6% 100%,0 98.8%,0 62%,.8% 57%,0 52%)}
.notice::before{content:"";position:absolute;right:18px;top:48px;width:92px;height:92px;border-radius:50%;border:6px solid rgba(110,75,35,.13);box-shadow:inset 0 0 0 2px rgba(110,75,35,.06);pointer-events:none}
.notice .head{font-family:var(--label);text-align:center;letter-spacing:.22em;font-size:.74rem;text-transform:uppercase;border-bottom:1px solid rgba(59,48,37,.7);padding-bottom:10px;margin-bottom:16px;opacity:.85}
.notice .big{font-size:2.2rem;font-weight:700;text-align:center;letter-spacing:.12em;margin:14px 0 6px;color:#4a2620;opacity:.78;filter:blur(.25px);text-shadow:.4px 0 0 rgba(74,38,32,.35)}
.notice p{font-size:.95rem;line-height:1.45;opacity:.9;text-shadow:.3px 0 0 rgba(59,48,37,.25)}
.notice .sig{margin-top:22px;font-style:italic;text-align:left;padding-right:96px}
.notice .frag{display:inline-block;vertical-align:bottom;white-space:nowrap;position:relative;padding-right:.2em;
  clip-path:polygon(0 0,86% 0,90% 25%,84% 45%,92% 70%,86% 100%,0 100%);background:linear-gradient(90deg,transparent 60%,rgba(80,55,25,.18))}
.notice .crease{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,transparent 47.6%,rgba(255,250,230,.35) 47.9%,rgba(60,40,20,.22) 48.3%,transparent 48.8%),
             linear-gradient(180deg,transparent 57.4%,rgba(255,250,230,.3) 57.7%,rgba(60,40,20,.2) 58.1%,transparent 58.6%)}
.notice .tape{position:absolute;width:76px;height:22px;pointer-events:none;box-shadow:0 1px 2px rgba(0,0,0,.15);
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 3px,transparent 3px 6px),linear-gradient(180deg,rgba(214,196,150,.62),rgba(190,170,120,.55))}
.notice .tape.tl{left:-22px;top:10px;transform:rotate(-42deg)}
.notice .tape.tr{right:-22px;top:10px;transform:rotate(42deg)}
.notice .pin{position:absolute;left:50%;top:9px;width:9px;height:9px;margin-left:-4px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#8a7a68,#3a2f26);box-shadow:0 0 0 3px rgba(120,60,20,.22),0 0 12px 6px rgba(120,60,20,.18)}
.notice .stamp{position:absolute;left:-10px;bottom:56px;width:150px;height:150px;transform:rotate(-14deg);pointer-events:none;opacity:.5;
  -webkit-mask-size:cover;mask-size:cover;
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.08' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 -3.6 0'/%3E%3C/filter%3E%3Crect width='200' height='200' fill='%23fff' filter='url(%23n)'/%3E%3C/svg%3E");
          mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.08' numOctaves='3' seed='7'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 3 3 -3.6 0'/%3E%3C/filter%3E%3Crect width='200' height='200' fill='%23fff' filter='url(%23n)'/%3E%3C/svg%3E")}
.notice .seal{position:absolute;right:12px;bottom:2px;width:84px;height:84px;pointer-events:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.exhibit{display:flex;align-items:center;gap:12px;margin:26px auto 0;max-width:440px;padding:10px 14px 10px 12px;
  background:#CFC3A5;color:#3B3025;font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;line-height:1.5;
  transform:rotate(.6deg);box-shadow:0 12px 30px rgba(0,0,0,.5)}
.exhibit::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--ink);flex:none;box-shadow:inset 0 0 0 2px rgba(255,255,255,.15)}
.exhibit b{font-weight:700;margin-right:.4em}

/* the register */
.register h2{font-size:clamp(2rem,4vw,3.2rem);margin:1rem 0 1.2rem}
.register .lead{max-width:52ch;color:var(--bone)}
.register .lead+.lead{margin-top:.9em}
.form{margin-top:2rem;border:1px solid var(--gold);background:var(--ink);box-shadow:0 40px 100px rgba(0,0,0,.6)}
.form .bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:12px 20px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dust)}
.form .bar .live{display:inline-flex;align-items:center;gap:8px;color:var(--gold)}
.form .bar .live i{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold);display:inline-block}
.form .body{padding:24px 22px 26px;display:grid;gap:18px}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.form .row{grid-template-columns:1fr}}
.form label{display:block;font-family:var(--label);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:9px}
.form input[type=text],.form input[type=email],.form input[type=tel]{width:100%;font-family:var(--mono);font-size:1rem;color:var(--bone);background:var(--parlour);border:1px solid var(--line);padding:13px 14px;border-radius:0;-webkit-appearance:none}
.form input:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 1px var(--gold)}
.form .was-submitted :invalid{border-color:var(--rum);box-shadow:0 0 0 1px rgba(154,31,31,.6)}
.form .btn{width:100%}
.form .fine{font-size:.92rem;color:var(--dust);line-height:1.5}
.form .hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden}
.form .kind{border:0;margin:0;padding:0}
.form .kind legend{font-family:var(--label);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;padding:0}
.form .pills{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.form .pill{position:relative;display:block;cursor:pointer;height:100%}
.form .pill input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.form .pill span{display:flex;align-items:center;justify-content:center;height:100%;text-align:center;font-family:var(--label);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--dust);padding:12px 10px;border:1px solid var(--line);transition:color .2s,border-color .2s,background .2s;line-height:1.35;min-height:52px}
.form .pill input:checked+span{color:var(--ink);background:var(--gold);border-color:var(--gold)}
.form .pill input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.form .pill:hover span{border-color:var(--gold)}
@media (max-width:640px){.form .pills{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.form .pills{grid-template-columns:1fr}}
.form .choose{font-family:var(--mono);font-size:.82rem;letter-spacing:.06em;color:var(--dust);text-align:center;padding:14px 0 4px;border-top:1px dashed var(--line);transition:color .3s}
.form .choose.nudge{color:var(--candle);animation:nudge .45s}
@keyframes nudge{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.form .kf{display:grid;gap:18px}
.form .kf[hidden],.form .choose[hidden],.form .fld[hidden]{display:none}
.form .grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form .fld.wide{grid-column:1/-1}
@media (max-width:560px){.form .grid{grid-template-columns:1fr}}
.form label em{font-style:normal;text-transform:none;letter-spacing:.04em;color:var(--dust);font-family:var(--mono);font-size:.68rem;margin-left:6px}
.form textarea{width:100%;font-family:var(--body);font-size:1.02rem;color:var(--bone);background:var(--parlour);border:1px solid var(--line);padding:12px 14px;border-radius:0;resize:vertical;min-height:84px;-webkit-appearance:none;appearance:none}
.form textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 1px var(--gold)}
.form select{width:100%;font-family:var(--mono);font-size:1rem;color:var(--bone);background:var(--parlour);border:1px solid var(--line);padding:13px 14px;border-radius:0;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23C9A455' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.form select:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 1px var(--gold)}
.form .done{padding:34px 22px;text-align:center;display:grid;gap:12px}
.form .done .typed{font-family:var(--mono);color:var(--candle);font-size:1.05rem;letter-spacing:.04em}
.form .done .voice{font-family:var(--display);font-style:italic;font-size:1.4rem;color:var(--candle)}
.form .done .fine{margin-top:6px}
.form .err{margin:0;padding:12px 16px;border:1px solid var(--rum);color:var(--bone);font-size:.98rem;background:rgba(154,31,31,.12)}

/* ── The legend, briefly ───────────────────────────────────────────── */
.legend .wrap{padding-block:clamp(64px,9vw,120px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.legend h2{font-size:clamp(1.9rem,3.6vw,3rem);margin-top:1rem}
.legend .prose{max-width:60ch}
.legend .prose p+p{margin-top:1em}
.legend .voice{font-family:var(--display);font-style:italic;font-weight:500;color:var(--candle);font-size:1.35rem;margin-top:1.5em;line-height:1.35}
@media (max-width:820px){.legend .wrap{grid-template-columns:1fr}}

/* ── Not that ──────────────────────────────────────────────────────── */
.notthat{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--parlour)}
.notthat .wrap{padding-block:clamp(48px,6vw,80px);display:grid;grid-template-columns:repeat(4,1fr);gap:28px clamp(20px,3vw,40px)}
.notthat .cell{padding-top:18px;border-top:1px solid var(--line)}
.notthat .yes{border-top-color:var(--gold)}
.notthat .no{font-family:var(--display);font-size:clamp(1.4rem,2vw,1.8rem);color:var(--dust);text-decoration:line-through;text-decoration-color:var(--rum);text-decoration-thickness:2px}
.notthat .yes .no{text-decoration:none;color:var(--candle)}
.notthat p{margin-top:.5em;font-size:1rem;color:var(--dust)}
.notthat .yes p{color:var(--bone)}
@media (max-width:900px){.notthat .wrap{grid-template-columns:1fr 1fr}}
@media (max-width:460px){.notthat .wrap{grid-template-columns:1fr}}

/* ── Find us + footer ──────────────────────────────────────────────── */
.find .wrap{padding-block:clamp(56px,8vw,100px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:center}
.find h2{font-size:clamp(1.7rem,3vw,2.4rem);margin:1rem 0 .8rem}
.find p{max-width:48ch}
.find .addr{font-family:var(--mono);font-size:1rem;line-height:1.75;margin-top:1rem}
.find .addr .gold{color:var(--gold)}
.find .map{border:1px solid var(--line);aspect-ratio:16/8;background:var(--parlour);position:relative;overflow:hidden}
.find .map svg{width:100%;height:100%;display:block}
@media (max-width:820px){.find .wrap{grid-template-columns:1fr}}
footer{border-top:1px solid var(--line);background:#070605}
footer .wrap{padding-block:40px 36px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
footer .brand svg{width:52px;height:52px}
footer .mid{text-align:center;font-family:var(--display);font-style:italic;color:var(--dust);font-size:1.1rem}
footer .mid span{color:var(--rum)}
footer .legal{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;color:var(--dust);text-align:right;line-height:1.8}
@media (max-width:820px){footer .wrap{grid-template-columns:1fr;text-align:center}footer .brand{justify-content:center}footer .legal{text-align:center}}

/* ── Motion ────────────────────────────────────────────────────────── */
.flame{animation:flicker 3.2s infinite ease-in-out;transform-origin:center}
.flame.f2{animation-duration:4.1s;animation-delay:-1.3s}
@keyframes flicker{0%,100%{opacity:1}18%{opacity:.82}31%{opacity:.96}47%{opacity:.78}63%{opacity:.98}80%{opacity:.86}}
.reveal{transition:opacity .9s ease,transform .9s ease}
.reveal.pre{opacity:0;transform:translateY(18px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.flame{animation:none}.reveal{transition:none}.reveal.pre{opacity:1;transform:none}}

/* ── Careers page ──────────────────────────────────────────────────── */
.top.top-solid{position:sticky;top:0;background:linear-gradient(var(--ink) 70%,rgba(11,9,8,0));backdrop-filter:blur(6px)}
.top .where[href]{text-decoration:none;color:var(--candle)}
.top .where[href]:hover{color:var(--gold)}
.chero{position:relative;overflow:hidden;background:radial-gradient(900px 420px at 30% 0%,rgba(201,164,85,.12),transparent 70%),var(--ink)}
.chero .wrap{padding-block:clamp(56px,9vw,120px) clamp(40px,6vw,72px);max-width:960px}
.chero h1{font-size:clamp(2.4rem,5.6vw,4.6rem);margin:1rem 0 1.4rem;max-width:18ch}
.chero .lede{font-size:clamp(1.12rem,1.5vw,1.3rem);line-height:1.55;max-width:62ch}
.chero .lede+.lede{margin-top:1em;color:var(--candle)}
.cfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:2.4rem;border:1px solid var(--line)}
.cfacts div{padding:16px 18px;border-left:1px solid var(--line)}
.cfacts div:first-child{border-left:0}
.cfacts b{display:block;font-family:var(--label);font-weight:400;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:.35em}
.cfacts span{font-family:var(--mono);font-size:.9rem;color:var(--bone)}
@media (max-width:760px){.cfacts{grid-template-columns:1fr}.cfacts div{border-left:0;border-top:1px solid var(--line)}.cfacts div:first-child{border-top:0}}
.roles{background:var(--parlour);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.roles .wrap{padding-block:clamp(56px,8vw,100px);max-width:960px}
.roles .rhead{margin-bottom:28px}
.roles h2{font-size:clamp(1.9rem,3.6vw,3rem);margin-top:1rem}
.roles .muted{color:var(--dust);margin-top:.8rem}
.role{border:1px solid var(--line);background:var(--ink);margin-top:14px}
.role summary{list-style:none;cursor:pointer;padding:24px 24px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 28px;align-items:start}
.role summary::-webkit-details-marker{display:none}
.role h3{font-size:clamp(1.4rem,2.4vw,1.9rem);margin:0 0 .4rem}
.role .meta{font-family:var(--mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.role .sum{margin-top:.7rem;color:var(--bone);max-width:56ch}
.role .rpay{display:flex;flex-direction:column;gap:8px;align-items:flex-end;min-width:200px}
.role .chip{font-family:var(--mono);font-size:.82rem;color:var(--bone);border:1px solid var(--line);padding:7px 10px;text-align:right;max-width:280px}
.role .chip b{display:block;font-family:var(--label);font-weight:400;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:2px}
.role .more{font-family:var(--label);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dust);margin-top:4px}
.role .more::after{content:" +";color:var(--gold)}
.role[open] .more::after{content:" −"}
.role[open] summary{border-bottom:1px solid var(--line)}
.role:hover{border-color:rgba(201,164,85,.45)}
.rbody{padding:8px 24px 28px;display:grid;grid-template-columns:1fr 1fr;gap:18px 40px}
.rbody .col.wide{grid-column:1/-1}
.rbody h4{font-family:var(--label);font-weight:400;font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:16px 0 8px}
.rbody p{color:var(--bone);max-width:68ch}
.rbody p+p{margin-top:.7em}
.rbody ul{margin:0;padding-left:1.1em;color:var(--bone)}
.rbody li{margin:.3em 0}
.rbody ul.inline{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.rbody ul.inline li{font-family:var(--mono);font-size:.82rem;border:1px solid var(--line);padding:5px 9px;color:var(--dust);margin:0}
.rbody .act{margin-top:10px}
@media (max-width:700px){.role summary{grid-template-columns:1fr}.role .rpay{flex-direction:row;flex-wrap:wrap;align-items:stretch;min-width:0}.role .chip{text-align:left}.rbody{grid-template-columns:1fr}}
.apply .wrap{padding-block:clamp(56px,8vw,100px);max-width:960px}
.apply .ahead{max-width:60ch;margin-bottom:28px}
.apply h2{font-size:clamp(1.9rem,3.6vw,3rem);margin:1rem 0 .8rem}
.apply .ahead p{color:var(--dust)}
.apply .form{max-width:none}
.apply .form .body{display:grid;gap:18px}
.form input[type=file]{width:100%;font-family:var(--mono);font-size:.9rem;color:var(--bone);background:var(--parlour);border:1px dashed var(--line);padding:12px 14px}
.form input[type=file]::file-selector-button{font-family:var(--label);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);background:var(--gold);border:0;padding:8px 12px;margin-right:12px;cursor:pointer}
.form .hint{font-family:var(--mono);font-size:.74rem;color:var(--dust);margin-top:6px}

footer .mid .hire{display:block;margin-top:12px;font-family:var(--mono);font-style:normal;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);text-decoration:none;border-bottom:1px dashed rgba(201,164,85,.4);width:max-content;max-width:100%;margin-inline:auto;padding-bottom:2px}
footer .mid .hire:hover{color:var(--candle);border-bottom-color:var(--candle)}
.role .state{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--candle);margin-bottom:10px;display:flex;align-items:center;gap:8px}
.role .state i{width:7px;height:7px;border-radius:50%;background:#5BBE7A;box-shadow:0 0 8px #5BBE7A;display:inline-block}
.role.is-soon .state{color:var(--dust)}
.role.is-soon .state i{background:var(--gold);box-shadow:0 0 8px var(--gold)}
.role .subtitle{font-family:var(--display);font-style:italic;font-size:1.05rem;color:var(--dust);margin:-.2rem 0 .4rem}
.rbody .facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 28px;border:1px solid var(--line);padding:4px 18px 16px;margin-top:14px}
.rbody .facts p{font-family:var(--mono);font-size:.88rem}
@media (max-width:700px){.rbody .facts{grid-template-columns:1fr}}
.rbody .act{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.rbody .actnote{font-size:.95rem;color:var(--dust);font-style:italic;max-width:46ch}

.form .choice{border:0;margin:0;padding:0}
.form .choice legend{display:block;font-family:var(--label);font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:9px;padding:0}
.form .pills.small{grid-template-columns:1fr 1fr}
.form .pills.small .pill span{min-height:46px;padding:10px}
