

:root{
  --paper:#FAF9F6;--ink:#14120F;--clay:#8A6553;--brass:#A8875A;
  --hair:#E7E3DA;--hairstrong:#D8D2C6;--muted:#6E675E;--faint:#9B948A;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--paper);color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-weight:400;font-size:16px;line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -webkit-touch-callout:none;
}
img{max-width:100%;display:block;height:auto;user-select:none;-webkit-user-drag:none;pointer-events:none}
a{color:inherit;text-decoration:none}
.wrap{max-width:880px;margin:0 auto;padding:0 26px}
.kicker{font-size:11px;letter-spacing:.24em;text-transform:uppercase;font-weight:500;color:var(--brass)}
h1,h2{font-family:'Gambarino',Georgia,serif;font-weight:400;text-wrap:balance}
section{border-top:1px solid var(--hair)}
section:first-of-type{border-top:0}

/* reveal */
.rv{opacity:0;transform:translateY(12px);transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.rv{transition:none;opacity:1;transform:none}}

/* hero */
.hero{padding:76px 0 62px;text-align:center}
.hero .mark{width:196px;margin:0 auto 34px}
.hero .mark img{width:100%}
.hero .kicker{margin-bottom:20px}
.hero h1{font-size:clamp(38px,5.5vw,52px);line-height:1.08;letter-spacing:.01em}
.hero .lede{margin-top:18px;font-size:16px;line-height:1.7;color:var(--muted);max-width:44ch;margin-left:auto;margin-right:auto}
.hero .meta{margin-top:32px;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:500;color:var(--faint)}

/* scope */
.scope{padding:68px 0 76px}
.scope h2{font-size:clamp(28px,4.2vw,40px);margin-top:13px}
.groups{margin-top:40px}
.grp{margin-bottom:36px}
.grp-label{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--muted);padding-bottom:12px;border-bottom:1px solid var(--hairstrong)}
.item{display:flex;align-items:baseline;justify-content:space-between;gap:28px;padding:20px 0;border-bottom:1px solid var(--hair)}
.item .name{font-family:'Gambarino',Georgia,serif;font-size:22px;line-height:1.25}
.item .name .tag{font-family:'Inter',sans-serif;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-left:12px;position:relative;top:-3px;white-space:nowrap}
.item .name .tag.inc{color:var(--clay)}
.item p{margin-top:7px;font-size:14px;line-height:1.6;color:var(--muted);max-width:56ch}
.item .price{text-align:right;white-space:nowrap}
.item .price .n{font-family:'Gambarino',Georgia,serif;font-size:20px;font-variant-numeric:tabular-nums}
.item .price .c{margin-top:2px;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--faint)}

/* style sections */
.style{padding:62px 0 68px}
.style h2{font-size:clamp(26px,3.8vw,34px);margin-top:13px;max-width:26ch}
.style .lede{margin-top:13px;font-size:15px;line-height:1.7;color:var(--muted);max-width:52ch}
.gallery{margin-top:38px}
.grow{display:flex;gap:12px}
.grow+.grow{margin-top:12px}
.fr{position:relative;overflow:hidden;margin:0;min-width:0}
.fr img{width:100%;height:auto}
.fr .sh{position:absolute;inset:0;z-index:1}

/* motion posters */
.motion{margin-top:46px}
.motion .kicker{color:var(--muted);letter-spacing:.22em}
.vposter{position:relative;overflow:hidden;background:var(--ink)}
.vposter img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.vposter .sh{position:absolute;inset:0;z-index:1}
.vposter .pv{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center}
.film{margin-top:16px;aspect-ratio:16/9}
.reels{margin-top:16px;display:flex;gap:12px}
.reels .vposter{flex:1;aspect-ratio:9/16}
.play{width:50px;height:50px;border:1px solid var(--brass);border-radius:50%;position:relative;opacity:.95}
.play::after{content:'';position:absolute;left:50%;top:50%;transform:translate(-40%,-50%);border-left:10px solid var(--brass);border-top:7px solid transparent;border-bottom:7px solid transparent}
.v-lbl{font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:var(--paper);opacity:.72;text-align:center;line-height:2;padding:0 12px}
.m-note{margin-top:12px;font-size:13px;color:var(--faint)}

/* details */
.det{padding:62px 0 66px}
.det h2{font-size:clamp(26px,3.8vw,34px);margin-top:13px}
.det .items{margin-top:32px}
.det .item > div:first-child{flex:1;min-width:0}
.det .item .side{text-align:right;white-space:nowrap;font-family:'Gambarino',Georgia,serif;font-size:16.5px;color:var(--muted)}
.det .item .side .sub{font-family:'Inter',sans-serif;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--faint);margin-top:5px}
.trav{list-style:none;margin-top:6px}
.trav li{display:flex;justify-content:space-between;gap:22px;padding:8px 0;font-size:14px;color:var(--muted)}
.trav li+li{border-top:1px solid var(--hair)}
.trav .fee{font-family:'Gambarino',Georgia,serif;font-size:16px;color:var(--ink);white-space:nowrap}

/* next step */
.next{padding:80px 0 88px;text-align:center}
.next h2{font-size:clamp(28px,4.4vw,40px);margin-top:15px;max-width:22ch;margin-left:auto;margin-right:auto}
.next .lede{margin-top:14px;font-size:15px;color:var(--muted);max-width:42ch;margin-left:auto;margin-right:auto}
.pill{display:inline-block;margin-top:32px;border:1px solid var(--ink);border-radius:99px;padding:16px 34px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;transition:color .2s,border-color .2s}
.pill:hover{color:var(--clay);border-color:var(--clay)}
.contact-line{margin-top:28px;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;color:var(--faint)}
.contact-line a:hover{color:var(--clay)}

/* footer */
.ft{border-top:1px solid var(--hair);padding:36px 0 44px;text-align:center}
.ft .mark{width:112px;margin:0 auto 15px;opacity:.62}
.ft .mark img{width:100%}
.ft div.fnote{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--faint);line-height:2.2}

@media (max-width:640px){
  .hero{padding:56px 0 48px}
  .hero .mark{width:164px;margin-bottom:28px}
  .scope{padding:52px 0 56px}
  .style,.det{padding:46px 0 52px}
  .item{flex-direction:column;gap:9px}
  .item .price{text-align:left}
  .item .price .n{font-size:18px}
  .det .item{flex-direction:column;gap:8px}
  .det .item .side{text-align:left;font-size:15px}
  .grow{flex-direction:column}
  .grow+.grow{margin-top:10px}
  .grow{gap:10px}
  .reels{flex-direction:column;align-items:center}
  .reels .vposter{width:min(100%,320px);flex:none}
  .next{padding:58px 0 64px}
}

/* live film */
.dp-film{position:relative;margin-top:16px;aspect-ratio:16/9;background:var(--ink);overflow:hidden}
.dp-film iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.dp-snd{position:absolute;right:16px;bottom:16px;z-index:3;background:rgba(20,18,15,.55);color:var(--paper);border:1px solid rgba(250,249,246,.7);border-radius:99px;padding:9px 20px;font-family:'Inter',sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;cursor:pointer}
.dp-snd:hover{border-color:#fff}
#dp-root{width:100%}
