@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
/* ===== Design Dojo — Light editorial (v2) ===== */
:root{color-scheme:light;--ink:#111111;--ivory:#FFFFFF;--paper:#F6F6F6;--rule:#E6E6E6;--acc:#111111;--muted:#767676}
html,body{background:var(--ivory)!important;color:var(--ink)}
body{font-family:'Jost',system-ui,sans-serif!important;font-weight:400;-webkit-font-smoothing:antialiased}
*{text-shadow:none!important}
::selection{background:var(--ink);color:var(--ivory)}
h1,h2,h3,blockquote{font-family:'Playfair Display',Georgia,serif!important;font-weight:400!important;letter-spacing:-.015em}
h1 em,h2 em,h3 em{font-style:italic;color:var(--acc)!important}
body::after{background:var(--ivory)!important}

/* film motif off: no scene numbers, no letterbox bars, no frame borders */
.dd-scene{display:none!important}
.dd-band{border:0!important;max-width:1360px;margin-left:auto!important;margin-right:auto!important;padding:0 40px;box-sizing:border-box}
.dd-film-frame{border:0!important;background:var(--paper)!important}

/* ---------- Masthead ---------- */
header.z32{max-width:none!important;flex-direction:column;justify-content:center;gap:14px!important;padding:22px 40px 0!important;border-bottom:1px solid var(--ink)}
header.z32 .dd-logo img{width:84px!important;height:84px!important}
header.z32 .dd-nav{justify-content:center;gap:34px!important;padding:12px 0 14px;border-top:1px solid var(--rule);width:100%;max-width:1360px;font-size:12px!important;letter-spacing:.24em!important;font-weight:500}
header.z32 .dd-nav a{color:var(--ink)!important}
header.z32 .dd-nav a[aria-current="page"],header.z32 .z48{text-decoration:underline!important;text-underline-offset:7px;text-decoration-thickness:1px}
header.z32 .z35{background:transparent!important;color:var(--ink)!important;border:1px solid var(--ink);padding:9px 18px!important;min-height:0!important}
header.z32 .z35:hover{background:var(--ink)!important;color:var(--ivory)!important}

/* ---------- Hero: split editorial spread ---------- */
.z49{display:grid!important;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:stretch;min-height:0!important;max-width:1440px;margin:0 auto;background:var(--ivory)!important;overflow:hidden!important}
.z49>img,.z49 .dd-hero-img{position:relative!important;inset:auto!important;grid-column:2;grid-row:1;width:100%!important;height:min(84vh,820px)!important;object-fit:cover}
.z50,.z51,.z52{display:none!important}
.z53{grid-column:1;grid-row:1;align-self:center;padding:72px 64px 72px 40px!important;gap:26px!important;max-width:none!important}
.z54{color:var(--acc)!important;font-size:12px!important;letter-spacing:.28em!important;font-weight:500}
.z55{font-size:clamp(46px,5.4vw,92px)!important;line-height:1.02!important;letter-spacing:-.025em!important}
.z53>p:not(.z54){color:#555555!important;font-size:18px!important;font-weight:300}

/* ---------- Buttons ---------- */
.dd-btn,.z28,.z35{border-radius:0!important;font-family:'Jost',sans-serif!important;font-weight:500!important;letter-spacing:.2em!important}
.dd-ghost,.z28{border:1px solid var(--ink)!important;color:var(--ink)!important;background:transparent!important}
.dd-ghost:hover,.z28:hover{background:var(--ink)!important;color:var(--ivory)!important}

/* ---------- Section headings: magazine rule above ---------- */
.z17,.z41,.z62,#dd-spread-h,#dd-types,.dd-film h2{position:relative;padding-top:22px}
.z17::before,.z41::before,.z62::before,#dd-spread-h::before,#dd-types::before,.dd-film h2::before{content:"";position:absolute;top:0;left:0;width:56px;height:1px;background:var(--ink)}
.z19,.z54,.dd-film-ey,.dd-cta-ey{font-family:'Jost',sans-serif!important}

/* quotes: big italic Bodoni */
blockquote{font-style:italic}

/* cards: paper instead of dark panels, hairline instead of shadow */
.z71,.z60 article{background:#FFFFFF!important;border:1px solid var(--rule)}
.dd-pop{outline-color:var(--ink)!important}
.dd-mb{background:var(--ink)!important;color:var(--ivory)!important}

/* photo hover: no zoom, gentle fade — more print-like */
.dd-sel figure:hover img,.dd-gal figure:hover img{transform:none!important;opacity:.9}
.dd-sel figure,.dd-sel-g figure{background:var(--paper)!important}

/* View cursor + play buttons in ink */
.dd-vc{background:rgba(255,255,255,.85)!important;border-color:var(--ink)!important;color:var(--ink)!important}
.dd-play-c{background:rgba(255,255,255,.86)!important;border-color:var(--ink)!important}
.dd-play-c svg{fill:var(--ink)!important}
.dd-play:hover .dd-play-c{background:var(--ink)!important}.dd-play:hover .dd-play-c svg{fill:var(--ivory)!important}
.dd-play img{filter:none!important}
.dd-play::after{background:linear-gradient(0deg,rgba(20,18,16,.55) 0%,rgba(20,18,16,0) 40%)!important}
.dd-home-cap,.dd-play-l{color:#FFFFFF!important}
.dd-home-cap small,.dd-play-l span{color:#F3E2C8!important}
.dd-sel-f figcaption{background:linear-gradient(0deg,rgba(20,18,16,.6),rgba(20,18,16,0))!important;color:#FFFFFF!important}

/* ---------- Closing CTA: image + text side by side, no overlay ---------- */
.dd-cta{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0!important;background:var(--paper)!important;border:0!important;color:var(--ink)!important;align-items:stretch}
.dd-cta::before{display:none!important}
.dd-cta>img{position:relative!important;inset:auto!important;height:620px!important;grid-column:1;grid-row:1}
.dd-cta-in{grid-column:2;grid-row:1;align-self:center;padding:64px!important;max-width:none!important}
.dd-cta h2{color:var(--ink)!important;font-size:clamp(40px,4.4vw,72px)!important;line-height:1.02!important}
.dd-cta-ey{color:var(--acc)!important}
.dd-cta-b a:first-child{background:var(--ink)!important;color:var(--ivory)!important}
.dd-cta-b a+a{background:transparent!important;border-color:var(--ink)!important;color:var(--ink)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}

/* footer: masthead echo */
footer.z43{border-top:1px solid var(--ink)}

/* floating buttons */
.dd-top{background:rgba(255,255,255,.95)!important;border-color:var(--ink)!important;color:var(--ink)!important}

/* ---------- Phone ---------- */
@media (max-width:760px){
  header.z32{flex-direction:row;justify-content:space-between;padding:12px 20px!important}
  header.z32 .dd-logo img{width:56px!important;height:56px!important}
  header.z32 .dd-nav{border-top:0;padding:0;width:auto;justify-content:flex-end}
  .z49{grid-template-columns:1fr}
  .z49>img,.z49 .dd-hero-img{grid-column:1;grid-row:1;height:56svh!important}
  .z53{grid-column:1;grid-row:2;padding:36px 20px 56px!important}
  .z55{font-size:clamp(42px,12vw,60px)!important}
  .dd-band{padding:0 20px}
  .dd-cta{grid-template-columns:1fr}
  .dd-cta>img{height:44svh!important}
  .dd-cta-in{grid-column:1;grid-row:2;padding:40px 20px 56px!important}
}

/* inverse (cream) sections become paper with ink text */
.z57{background:var(--paper)!important;color:var(--ink)!important}
.z57 :where(p,span,a,li,h2,h3,small,strong,div){color:var(--ink)}
.z57 [style*="color"]:not(em){color:#555555!important}
.z57 .z58{color:var(--acc)!important}
/* row buttons (contact, packages) keep the serif, no wide tracking */
.dd-btn.z15{font-family:'Playfair Display',Georgia,serif!important;letter-spacing:-.01em!important;font-weight:400!important;border-color:var(--ink)!important;color:var(--ink)!important;background:transparent!important}
.dd-btn.z15:hover{background:var(--ink)!important;color:var(--ivory)!important}
.dd-btn.z15:hover *{color:var(--ivory)!important}
.dd-leak{display:none!important}
.hub-acc{background:#FFFFFF!important;border-color:var(--rule)!important}
.hub-acc[open]{border-color:var(--ink)!important}

/* ---------- Carnival page: editorial with a carnival accent ---------- */
body:has(.bs-svg){--acc:#B5372B}
body:has(.bs-svg) .z17::before,body:has(.bs-svg) .z41::before,body:has(.bs-svg) .z62::before{width:72px;height:2px;background:linear-gradient(90deg,#D2584C,#C9A36A,#4FA36A)}
body:has(.bs-svg) .card.gold{background:var(--ink)!important}

/* readability: use Bodoni's sturdier small-size cut everywhere, slightly heavier headings */
*{font-optical-sizing:none!important;font-variation-settings:'opsz' 11!important}
h1,h2,h3{font-weight:500!important}
