:root{--ink:#17100D;--ink2:#241812;--gold:#C8A24A;--gold2:#E8D497;--ivory:#F4EAD7;--rose:#7A2230;--mute:#BBAA8F;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',system-ui,sans-serif;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-behavior:smooth}*{box-sizing:border-box;margin:0}
body{background:var(--ink);color:var(--ivory);font:300 17px/1.75 var(--sans);overflow-x:hidden}
img{max-width:100%;display:block}a{color:var(--gold)}[hidden]{display:none!important}
.nv{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px max(22px,calc(50vw - 590px));border-bottom:1px solid color-mix(in srgb,var(--gold) 27%,transparent);position:sticky;top:env(safe-area-inset-top,0px);background:color-mix(in srgb,var(--ink) 93%,transparent);z-index:5;flex-wrap:wrap}
.nv img{height:44px;width:auto}.nv div{display:flex;gap:6px 22px;flex-wrap:wrap}.nv div a{color:var(--ivory);text-decoration:none;font-size:15px}.nv div a:hover{color:var(--gold)}
main{max-width:1180px;margin:0 auto;padding:0 22px 40px}
.ph1{padding:56px 0 24px;text-align:center}.ph1 h1{font:600 clamp(36px,6vw,60px)/1.1 var(--serif)}.ph1 p{max-width:680px;margin:14px auto 0;color:var(--mute)}
h2{font:600 clamp(26px,3.4vw,36px)/1.2 var(--serif);color:var(--gold2);margin-bottom:10px}
.btn{display:inline-block;background:none;border:1px solid var(--gold);color:var(--gold2);padding:11px 24px;font:400 15px var(--sans);cursor:pointer;text-decoration:none;transition:.3s}.btn:hover,.btn.f{background:var(--gold);color:var(--ink)}.btn:disabled{opacity:.5}
.stories{display:grid;gap:56px;padding:20px 0}.story{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.story.r .pic{order:2}
.pic{position:relative;border:1px solid color-mix(in srgb,var(--gold) 27%,transparent);overflow:hidden;aspect-ratio:4/3;background:var(--ink2)}.pic img{width:100%;height:100%;object-fit:cover}
.pic .cap{position:absolute;left:0;right:0;bottom:0;padding:6px 12px;background:#000a;font-size:12px;color:var(--mute)}
.pic.ph{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,var(--rose),var(--ink) 85%)}.pic.ph span{font:600 clamp(28px,4vw,44px) var(--serif);color:var(--gold2);opacity:.85}
.tx .intro{font:italic 400 22px/1.5 var(--serif);color:var(--gold2);margin-bottom:14px}.tx p{margin-bottom:14px}
.cta{text-align:center;padding:44px 0 10px;border-top:1px solid color-mix(in srgb,var(--gold) 20%,transparent)}.cta p{margin-bottom:16px;color:var(--mute)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:26px 0;align-items:start}
.det dt{font:500 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-top:16px}.det dd{margin:2px 0 4px}.det a{color:var(--ivory)}.det a.btn{color:var(--ink);margin-top:14px}
.map{border:1px solid color-mix(in srgb,var(--gold) 33%,transparent);aspect-ratio:4/3;background:var(--ink2)}.map iframe{width:100%;height:100%;border:0;display:block}.two p{margin-top:10px;font-size:15px}
.box{background:var(--ink2);border:1px solid color-mix(in srgb,var(--gold) 27%,transparent);padding:26px;display:grid;gap:12px;align-content:start}.box p{color:var(--mute)}
input,select,textarea{width:100%;background:var(--ink);color:var(--ivory);border:1px solid color-mix(in srgb,var(--gold) 40%,transparent);padding:12px 14px;font:300 16px var(--sans)}.hp{position:absolute;left:-9999px;height:0;opacity:0}
#fbm{color:var(--gold2);min-height:1.4em}
.revs{padding:20px 0}.revs #rgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.rev{background:var(--ink2);border:1px solid color-mix(in srgb,var(--gold) 20%,transparent);padding:22px}.rev .stars{color:var(--gold);letter-spacing:3px;margin-bottom:6px}.rev footer{margin-top:10px;color:var(--mute);font-size:14px;border:0;padding:0;text-align:left}
.empty{text-align:center;color:var(--mute);padding:30px 0}
footer{padding:30px 22px;text-align:center;font-size:14px;color:var(--mute);border-top:1px solid color-mix(in srgb,var(--gold) 27%,transparent)}footer a{color:var(--mute)}
@media(max-width:820px){.story,.two{grid-template-columns:1fr}.story.r .pic{order:0}}

/* ---- polish ---- */
body{background:radial-gradient(ellipse 80% 40% at 50% 0,color-mix(in srgb,var(--rose) 38%,transparent),transparent),var(--ink)}
.ph1{position:relative;padding:72px 0 34px}.ph1 h1{background:linear-gradient(var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
.ph1::after{content:"";display:block;width:140px;height:2px;margin:26px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.btn{border-radius:2px;letter-spacing:.04em}.btn.f{box-shadow:0 6px 24px color-mix(in srgb,var(--gold) 28%,transparent)}.btn:hover{transform:translateY(-2px)}
.story .pic,.box,.rev,.frame{box-shadow:0 20px 50px #0007}.pic.ph{background:radial-gradient(circle at 50% 35%,var(--rose),var(--ink) 88%)}
.pic img{transition:transform 1.2s}.story:hover .pic img{transform:scale(1.04)}
.tx h2:before{content:"\2756";display:block;color:var(--gold);font-size:20px;margin-bottom:6px}
.vgrid{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:10px 0 4px}.vbox{text-align:center}
.frame{aspect-ratio:16/9;width:100%;border:1px solid var(--gold);padding:7px;background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 35%,transparent),color-mix(in srgb,var(--rose) 60%,transparent));position:relative}
.frame iframe{width:100%;height:100%;border:0;display:block;background:#000}
.vbox h2{margin:20px 0 6px}.vbox p{color:var(--mute)}.hint{text-align:center;color:var(--mute);font-size:14px;max-width:640px;margin:22px auto 6px}
@media(prefers-reduced-motion:no-preference){.story,.box,.rev,.vbox,.ph1{animation:up .9s both}.story:nth-child(2n){animation-delay:.12s}@keyframes up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}}
@media(max-width:820px){.vgrid{grid-template-columns:1fr}}
