/* A place-led travel edit, using the existing LOV Angels type and black photographic identity. */
.destination-editorial{background:#030303;color:#f2f1ed;font-family:var(--sans);padding-bottom:38px}
.destination-editorial :is(h1,h2,h3,p,figure){margin:0}
.destination-editorial .eyebrow{font:400 9px/1.8 var(--brand-nav);text-transform:uppercase;color:#d2d2cd;letter-spacing:0;margin-bottom:20px}
.destination-editorial :is(h2,h3){font:400 clamp(34px,3.7vw,52px)/1.13 var(--serif);letter-spacing:-.025em;text-transform:none;text-wrap:balance}
.destination-editorial :is(h2,h3) em{font-family:var(--serif);font-style:italic;font-weight:400}
.destination-editorial :is(a,button,input,summary):focus-visible{outline:2px solid #fff;outline-offset:6px}
.de-hero{position:relative;isolation:isolate;min-height:740px;height:92svh;max-height:1000px;display:flex;align-items:end;padding-bottom:108px;overflow:hidden}
.de-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.de-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0007,transparent 75%),linear-gradient(0deg,#030303 0%,#030303a8 22%,transparent 65%,#0003 100%)}
.de-hero-copy{width:100%}
.de-hero-copy h1{font:400 clamp(84px,11.8vw,172px)/1 var(--serif);letter-spacing:-.04em;text-transform:none;margin:0 0 26px;max-width:12ch;text-wrap:balance}
.de-hero-copy .de-deck{font:19px/1.7 var(--sans);max-width:40ch;color:#f0f0eb;margin-bottom:22px;text-wrap:pretty}
.de-text-link{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#ffffff80;font:14px/1.5 var(--sans)}
.de-wayfinding{display:flex;align-items:center;gap:38px;border-bottom:1px solid #ffffff28;padding-block:8px 17px}
.de-wayfinding a{min-height:44px;display:flex;align-items:center;color:#c6c6bf;text-decoration:none;font:13px/1.5 var(--sans)}
.de-wayfinding a:hover{color:#fff}
.de-introduction{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding-block:78px 70px;scroll-margin-top:30px}
.de-introduction>div>p:not(.eyebrow){font:16px/1.85 var(--sans);color:#c5c5be;max-width:49ch;text-wrap:pretty}
.de-facets{list-style:none;margin:24px 0 0;padding:17px 0 0;border-top:1px solid #ffffff24;display:flex;flex-wrap:wrap;gap:8px 21px;font:12px/1.6 var(--sans);color:#e3e3dc}
.de-chapters{padding-block:10px 45px;scroll-margin-top:26px}
.de-section-heading{display:flex;align-items:end;gap:30px;justify-content:space-between;margin-bottom:32px}
.de-section-heading .eyebrow{margin:0 0 5px}
.de-section-heading h2{font:400 26px/1.3 var(--sans);letter-spacing:-.02em}
.de-chapter{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:8%;align-items:center;margin-bottom:65px}
.de-chapter.de-reverse{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr)}
.de-reverse figure{grid-column:2;grid-row:1}
.de-reverse .de-chapter-copy{grid-column:1;grid-row:1}
.de-chapter figure{min-width:0}
.de-chapter figure>img{display:block;width:100%;height:clamp(340px,35vw,470px);object-fit:cover;border-radius:20px}
.de-chapter .de-portrait>img{object-fit:contain;border-radius:0}
.de-chapter .de-panorama>img{height:auto;max-height:470px;object-fit:contain}
.de-chapter-copy{min-width:0}
.de-chapter-copy>.eyebrow{font-size:8px;margin-bottom:19px}
.de-chapter-copy h3{font-size:clamp(31px,3vw,43px);margin-bottom:23px}
.de-chapter-copy>p:not(.eyebrow){font:15px/1.85 var(--sans);color:#c2c2ba;max-width:43ch;text-wrap:pretty}
.de-ideas{list-style:none;margin:22px 0 0;padding:15px 0 0;border-top:1px solid #ffffff28;display:flex;flex-wrap:wrap;gap:6px 17px;font:12px/1.7 var(--sans);color:#dbdbd3}
.de-route-note{font:13px/1.8 var(--sans);color:#989992;max-width:79ch;border-left:1px solid #ffffff35;padding-left:22px}
.de-planning{padding-block:35px 50px;scroll-margin-top:28px}
.de-planning-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:10%;align-items:center;border-top:1px solid #ffffff28;padding-top:55px}
.de-planning-copy>p:not(.eyebrow){font:16px/1.85 var(--sans);color:#bdbdb6;max-width:44ch;margin-top:25px;text-wrap:pretty}
.de-interest-options{border:0;padding:0;margin:28px 0 0;min-width:0}
.de-interest-options legend{font:14px/1.6 var(--sans);color:#e2e2dc;margin-bottom:15px}
.de-interest-options legend>span{font-size:11px;color:#999;margin-left:8px}
.de-interest-options>div{display:flex;flex-wrap:wrap;gap:10px}
.de-interest-options label{position:relative;display:flex;align-items:center;gap:10px;border:1px solid #ffffff35;border-radius:999px;padding:12px 17px;min-height:48px;font:13px/1.5 var(--sans);color:#ccc;background:#ffffff03;cursor:pointer}
.de-interest-options input{accent-color:#fff;width:15px;height:15px;margin:0;flex:none}
.de-interest-options label:has(:checked){border-color:#ffffffa0;color:#fff;background:#ffffff13;box-shadow:inset 0 1px 0 #ffffff16}
.de-interest-options label:has(:focus-visible){outline:2px solid #fff;outline-offset:4px}
.de-planning-copy>.de-handoff-note{font:12px/1.8 var(--sans);color:#969791;margin-top:17px}
.de-offer{padding:30px;border:1px solid #ffffff45;border-radius:23px;background:linear-gradient(130deg,#ffffff10,transparent 70%),#0a0c0f;box-shadow:inset 0 1px 0 #ffffff20}
.de-offer>.eyebrow{font-size:8px;margin-bottom:16px}
.de-price{font:400 55px/1.2 var(--sans);letter-spacing:-.04em;color:#fff}
.de-fee{font:13px/1.7 var(--sans);color:#bcbcb7;margin-top:7px!important}
.de-offer .travel-included{margin:18px 0 17px;font-size:14px}
.de-offer>.de-booking-note{font:12px/1.8 var(--sans);color:#b5b5ad;margin:0 0 22px;max-width:38ch}
.de-offer .button{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:15px 20px;border:1px solid #ffffff80;border-radius:999px;background:#ffffff0b;color:#fff;font:400 9px/1.8 var(--brand-nav);text-transform:uppercase;text-align:center;cursor:pointer;white-space:normal}
.de-offer .button:hover{background:#ffffff20}
.de-commitment{font:11px/1.8 var(--sans);color:#a5a59f;text-align:center;margin-top:14px!important}
.de-planning-details{margin-top:20px;padding-top:15px;border-top:1px solid #ffffff28;font:12px/1.8 var(--sans);color:#a5a59e}
.de-planning-details summary{color:#d2d2ca;min-height:35px;cursor:pointer}
.de-planning-details p{margin-top:14px}
.de-other-destinations{display:flex;align-items:center;flex-wrap:wrap;gap:8px 26px;border-top:1px solid #ffffff28;padding-block:20px;font:14px/1.6 var(--sans)}
.de-other-destinations>span{color:#92938d;margin-right:auto;font-size:12px}
.de-other-destinations a{display:inline-flex;align-items:center;min-height:44px;color:#ddd;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#ffffff50}
@media(max-width:950px){.de-introduction{gap:7%}.de-chapter,.de-chapter.de-reverse{gap:6%}.de-planning-inner{gap:7%;grid-template-columns:minmax(0,1fr) 320px}.de-chapter-copy>.eyebrow{font-family:var(--sans);font-size:11px;text-transform:none}}
@media(max-width:700px){
 .de-hero{height:90svh;min-height:650px;max-height:850px;padding-bottom:95px}.de-hero-shade{background:linear-gradient(90deg,#0008,#0001 85%),linear-gradient(0deg,#030303,#030303a0 28%,#0001 65%,#0004)}
 .de-hero-copy h1{font-size:clamp(64px,17vw,100px);line-height:1.04;letter-spacing:-.035em;margin-bottom:22px}.de-hero-copy .eyebrow{font-family:var(--sans);font-size:10px;letter-spacing:.08em;margin-bottom:20px}
 .de-hero-copy .de-deck{font-size:16px;line-height:1.75;max-width:33ch}
 .de-wayfinding{gap:10px 25px;flex-wrap:wrap;padding-block:4px 13px}.de-wayfinding a{font-size:12px}
 .de-introduction{grid-template-columns:1fr;gap:25px;padding-block:48px}.de-introduction h2{font-size:35px}.de-introduction>div>p:not(.eyebrow){font-size:15px}.de-facets{font-size:11px;gap:8px 17px;margin-top:20px}
 .de-section-heading{display:block;margin-bottom:27px}.de-section-heading .eyebrow{margin-bottom:15px}.de-section-heading h2{font-size:25px}
 .de-chapter,.de-chapter.de-reverse{display:flex;flex-direction:column;gap:25px;margin-bottom:48px;align-items:stretch}.de-chapter figure>img{height:370px;border-radius:17px}.de-chapter .de-portrait>img{border-radius:0}.de-chapter .de-panorama>img{height:auto}
 .de-chapter-copy>.eyebrow{font-family:var(--sans);font-size:11px;text-transform:none;margin-bottom:13px}.de-chapter-copy h3{font-size:33px;max-width:19ch;margin-bottom:18px}.de-chapter-copy>p:not(.eyebrow){font-size:14px;line-height:1.85;max-width:none}.de-ideas{font-size:11px;gap:5px 17px;margin-top:19px}
 .de-route-note{font-size:12px;padding-left:16px}.de-chapters{padding-bottom:18px}.de-planning{padding-block:20px 30px}
 .de-planning-inner{grid-template-columns:1fr;gap:30px;padding-top:38px}.de-planning-copy h2{font-size:35px}.de-planning-copy>p:not(.eyebrow){font-size:15px;margin-top:21px}.de-interest-options label{font-size:12px;padding:11px 13px}.de-planning-copy>.de-handoff-note{font-size:12px}
 .de-offer{padding:27px 24px}.de-price{font-size:50px}.de-other-destinations{gap:3px 23px;padding-block:17px}.de-other-destinations>span{width:100%;margin-bottom:8px}
}
@media(max-width:350px){.de-hero-copy h1{font-size:61px}.de-hero-copy .de-deck{font-size:15px}.de-wayfinding{gap:5px 20px}.de-chapter figure>img{height:330px}.de-chapter .de-panorama>img{height:auto}.de-offer{padding:24px 20px}.de-introduction h2,.de-planning-copy h2{font-size:32px}}
@media(prefers-reduced-motion:no-preference){.de-wayfinding a,.de-interest-options label,.de-offer .button{transition:background .2s,border-color .2s,color .2s}}
@media(prefers-reduced-motion:reduce){.destination-editorial *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Progressive, once-only reveals; unenhanced pages stay fully visible. */
.destination-editorial .de-reveal-item{opacity:1;transform:none;transition:opacity .65s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--de-reveal-delay,0ms)}
.destination-editorial .de-reveal-item.de-reveal-pending{opacity:0;transform:translate3d(0,20px,0);will-change:opacity,transform}
.destination-editorial .de-reveal-item.de-reveal-instant{transition:none!important}
@media(prefers-reduced-motion:reduce){.destination-editorial .de-reveal-item,.destination-editorial .de-reveal-item.de-reveal-pending{opacity:1!important;transform:none!important;transition:none!important}}
@media print{.destination-editorial .de-reveal-item,.destination-editorial .de-reveal-item.de-reveal-pending{opacity:1!important;transform:none!important;transition:none!important}}
