:root{--bg:#14110f;--ink:#f1e9dd;--mut:#a89c8d;--acc:#d3a56b;--card:#1f1a16;--line:rgba(211,165,107,.22);--serif:"Cormorant Garamond",Georgia,serif;--sans:Jost,system-ui,sans-serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font:400 16px/1.6 var(--sans)}
img{max-width:100%;height:auto;display:block}a{color:inherit}
.skip{position:absolute;left:-999px;top:0;background:var(--acc);color:#14110f;padding:10px 14px;z-index:99}.skip:focus{left:0}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.eyebrow{font:400 10px var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--mut)}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05}h1{font-size:clamp(40px,8vw,64px);margin:12px 0 14px}h2{font-size:clamp(30px,5vw,42px);margin:10px 0 14px}
h1 i,h2 i{color:var(--acc)}p{color:var(--mut);font-size:15px}
.h3{font:400 22px var(--serif);letter-spacing:.08em;text-transform:uppercase}.h3 a{text-decoration:none}.h3.sm{font-size:16px;margin:16px 0 4px}
.tl{display:inline-block;margin:14px 18px 0 0;font:500 10px var(--sans);letter-spacing:.25em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--acc);padding-bottom:4px}
.btn{display:inline-block;font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;background:var(--acc);color:#14110f;border:0;border-radius:99px;padding:14px 26px;margin-top:18px;text-decoration:none;cursor:pointer}
.btn:hover{filter:brightness(1.08)}
/* header */
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 20px;background:rgba(20,17,15,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.05)}
.logo img{width:70px;height:auto}.dnav{display:none}.dnav a,.mnav nav a{font:500 10px var(--sans);letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--mut);padding:6px 2px;border-bottom:1px solid transparent}
.dnav a[aria-current],.mnav nav a[aria-current]{color:var(--ink);border-color:var(--acc)}
.hr{display:flex;align-items:center;gap:14px}.lang{font:500 11px var(--sans);letter-spacing:.14em;text-decoration:none;color:var(--acc);border:1px solid var(--line);border-radius:99px;padding:6px 11px}
.mnav{position:relative}.mnav summary{list-style:none;cursor:pointer;font:500 10px var(--sans);letter-spacing:.22em;text-transform:uppercase;padding:8px 2px}.mnav summary::-webkit-details-marker{display:none}
.mnav nav{position:absolute;right:0;top:calc(100% + 10px);min-width:230px;background:#1b1612;border:1px solid var(--line);border-radius:14px;padding:12px 18px;display:flex;flex-direction:column;gap:2px;box-shadow:0 14px 40px rgba(0,0,0,.5)}
.mnav nav a{padding:9px 0}.mnav .sep{font:400 9px var(--sans);letter-spacing:.3em;text-transform:uppercase;color:#6f655a;margin-top:10px;padding-top:12px;border-top:1px solid var(--line)}
@media(min-width:860px){.dnav{display:flex;gap:26px}.mnav{display:none}.logo img{width:92px}}
/* hero */
.hero{position:relative;min-height:700px;display:flex;align-items:flex-end;overflow:hidden}.hbg{position:absolute;inset:0}.hbg img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,15,.55),rgba(20,17,15,.05) 28%,rgba(20,17,15,.45) 56%,#14110f 92%)}
.hin{position:relative;z-index:2;width:100%;max-width:1100px;margin:0 auto;padding:0 20px 44px}.hin h1{font-size:clamp(52px,11vw,92px)}.lead{max-width:520px;margin-top:6px;color:#d8cdbd}
@media(min-width:860px){.hero{min-height:720px}.hero::after{background:linear-gradient(90deg,#14110f 0,rgba(20,17,15,.55) 38%,rgba(20,17,15,.05) 65%),linear-gradient(180deg,transparent 70%,#14110f)}.hin{padding-bottom:90px}}
/* cards */
.cards{display:grid;gap:12px;grid-template-columns:1fr;margin:34px 0}
@media(min-width:640px){.cards{grid-template-columns:1fr 1fr}}@media(min-width:960px){.cards{grid-template-columns:repeat(3,1fr)}}
.scard{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:14px;padding:10px;text-decoration:none;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .2s}.scard:hover{box-shadow:inset 0 0 0 1px var(--acc)}
.thumbwrap{flex:none;width:92px;height:92px;border-radius:10px;overflow:hidden;background:#2a2118}.thumb{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.thumbwrap.web{background:linear-gradient(135deg,#3a2c20,#17120f)}.thumbwrap.web .thumb{object-fit:cover;object-position:left center}
.scard h3{font:400 18px var(--serif);letter-spacing:.1em;text-transform:uppercase}.scard p{font-size:12px;margin-top:2px}
/* sections */
.about-t{display:grid;gap:22px;align-items:center;padding-top:20px;padding-bottom:30px}.abimg img{border-radius:14px;width:100%;max-height:220px;object-fit:cover;object-position:center 30%}
@media(min-width:760px){.about-t{grid-template-columns:1fr 1fr;gap:50px}.abimg img{max-height:300px}}
.story{background:#1f1a16;margin-top:20px;padding:36px 0}.sgrid{display:grid;gap:24px;align-items:center}@media(min-width:760px){.sgrid{grid-template-columns:1fr 1fr;gap:50px}}
.collage{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.collage img{width:100%;height:220px;object-fit:cover;border-radius:12px}
.script{font:italic 24px var(--serif);color:var(--acc);margin-top:16px}
.gal{padding-top:36px}.row{list-style:none;padding:14px 0;display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory}.row li{flex:none;width:150px;scroll-snap-align:start}.row img{width:150px;height:210px;object-fit:cover;border-radius:12px}
.webcard{display:grid;gap:18px;align-items:center;background:var(--card);border-radius:14px;padding:22px;text-decoration:none;margin:20px 0;box-shadow:inset 0 0 0 1px var(--line)}@media(min-width:760px){.webcard{grid-template-columns:1fr 1.2fr;padding:30px}}
.webcard h2{font-size:30px}.webill img{width:100%;height:auto}
.cta{text-align:center;padding:60px 20px 70px}.cta h2{font-size:clamp(30px,6vw,46px);text-transform:uppercase}
.sub{padding-top:40px;padding-bottom:18px;max-width:1100px}.sub p{max-width:560px}.locn{margin-top:12px;font-size:13px}
/* two-column + tiers */
.two{display:grid;gap:26px;padding-bottom:30px}@media(min-width:820px){.two{grid-template-columns:1fr 1.1fr;gap:56px;align-items:start}}
.portrait img{width:100%;border-radius:14px;max-height:380px;object-fit:cover;object-position:center 4%}@media(min-width:820px){.portrait img{max-height:520px}}.portrait.webp img{max-height:none;object-fit:contain;background:var(--card);padding:18px}
.body p{margin-bottom:14px;font-size:16px}.body h1{margin-top:0}
.tier{background:var(--card);border-radius:14px;padding:20px;margin:0 0 14px;box-shadow:inset 0 0 0 1px var(--line)}.tier .pr{font:400 30px var(--serif);color:var(--acc);margin:6px 0 8px}.tier .pr small{font:300 14px var(--sans);color:var(--mut)}
.tier ul{list-style:none;padding:0}.tier li{font-size:13px;line-height:1.5;color:var(--mut);padding:7px 0;border-top:1px solid rgba(255,255,255,.07)}.tier p{margin:0 0 6px}
.tiers{display:grid;gap:14px;margin-bottom:30px}@media(min-width:760px){.tiers{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.tiers{grid-template-columns:repeat(3,1fr)}}
.illu{margin:-4px -4px 14px}.illu img{width:100%;height:auto}
.bc{font-size:12px;letter-spacing:.06em;color:var(--mut);padding-top:22px}.bc a{color:var(--mut)}
.faq{padding-top:20px}.faq details{background:var(--card);border-radius:12px;padding:16px 18px;margin-bottom:10px}.faq summary{cursor:pointer;font:500 15px var(--sans);color:var(--ink)}.faq details p{margin-top:10px}
.rel h2{margin-top:30px}
/* form */
.cform{display:flex;flex-direction:column;gap:14px;max-width:620px}.cform label span{display:block;font:500 10px var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--mut);margin:0 2px 7px}
.cform input,.cform select,.cform textarea{width:100%;font:400 16px var(--sans);color:var(--ink);background:var(--card);border:1px solid rgba(211,165,107,.28);border-radius:12px;padding:14px;outline:none;-webkit-appearance:none;appearance:none;color-scheme:dark}
.cform select{background-image:linear-gradient(45deg,transparent 50%,#d3a56b 50%),linear-gradient(135deg,#d3a56b 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.cform textarea{resize:vertical;min-height:130px}.cform input:focus,.cform select:focus,.cform textarea:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(211,165,107,.15)}
.cform ::placeholder{color:#7c7266}.cform .bad{border-color:#d9675f}.cform .btn{align-self:flex-start}.ok{color:var(--acc);font-size:13px}
.direct{padding:34px 0 60px}.mail{display:inline-block;font:400 clamp(22px,5vw,30px) var(--serif);text-decoration:none;border-bottom:1px solid var(--acc);margin:10px 0 12px;word-break:break-all}
/* footer */
footer{background:#100d0b;padding:36px 20px 28px;border-top:1px solid rgba(255,255,255,.05)}.locf{text-align:center;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:26px}
.fcols{max-width:1100px;margin:0 auto;display:grid;gap:26px;grid-template-columns:1fr 1fr}@media(min-width:760px){.fcols{grid-template-columns:1fr 1.4fr 1fr}}
.fcols div{display:flex;flex-direction:column;gap:6px}.fcols h3{font:500 10px var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--acc);margin-bottom:6px}.fcols a,.fcols span{font-size:13px;color:var(--mut);text-decoration:none}.fcols a:hover{color:var(--ink)}
.copy{text-align:center;font-size:11px;margin-top:30px;color:#6f655a}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.legal{max-width:760px;padding-top:44px;padding-bottom:70px}.legal h1{font-size:clamp(36px,7vw,52px)}.legal h2{font:500 14px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--acc);margin:30px 0 8px}.legal p{font-size:15px;margin-bottom:12px;color:#c9bfb0}.legal a{color:var(--acc)}
mark.todo{background:rgba(211,165,107,.18);color:var(--acc);padding:1px 5px;border-radius:4px;outline:1px dashed rgba(211,165,107,.6)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.consent{font-size:12px;line-height:1.5}.consent a{color:var(--acc)}.err{color:#e3857d;font-size:13px}
.copy a{color:var(--mut);text-decoration:none}.copy a:hover{color:var(--ink)}.copy{line-height:2}

.sgal ul{list-style:none;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:6px 0 10px}.sgal img{width:100%;height:340px;object-fit:cover;border-radius:14px}

.sgal img.p{height:auto;aspect-ratio:2/3;object-position:center top}

.soc{display:inline-flex;gap:14px;align-items:center}.soc a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--acc);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s,background .2s}.soc a:hover,.soc a:focus-visible{box-shadow:inset 0 0 0 1px var(--acc);background:rgba(211,165,107,.1)}
.soc.ft{margin-top:6px}.socbar{display:flex;align-items:center;justify-content:center;gap:18px;padding-top:26px;padding-bottom:4px}.socbar .eyebrow{margin:0}

.refs ul{list-style:none;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:6px 0 14px}
.refcard{display:block;background:var(--card);border-radius:14px;overflow:hidden;text-decoration:none;box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s}.refcard:hover,.refcard:focus-visible{box-shadow:inset 0 0 0 1px var(--acc)}
.refimg{display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#3a2c20,#17120f);overflow:hidden}.refimg img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.refcard:hover .refimg img{transform:scale(1.03)}
.reftx{display:block;padding:14px 16px 16px}.refd{display:block;font-size:13px;color:var(--mut);margin:2px 0 6px}
