/* Hallmark · pre-emit critique: P5 H4 E4 S5 R4 V4 */
.resort-guide-page{background:var(--oyster);color:var(--ink)}.resort-guide-page .footer-grid{grid-template-columns:minmax(220px,1.15fr) minmax(150px,.75fr) minmax(280px,1.35fr) minmax(240px,1.1fr);gap:clamp(36px,5vw,72px)}.footer-destination-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.guide-hero{position:relative;min-height:84vh;display:grid;align-items:end;overflow:hidden;background:linear-gradient(135deg,var(--jungle-deep),var(--jungle))}.guide-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;background:var(--sand);transition:opacity .35s ease}.guide-hero>img[data-fallback="true"],.resort-compare-card img[data-fallback="true"],.deep-media img[data-fallback="true"]{opacity:0}.guide-hero__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,28,22,.94),rgba(15,28,22,.5) 54%,rgba(15,28,22,.18)),linear-gradient(180deg,rgba(15,28,22,.05),rgba(15,28,22,.85))}.guide-hero__content{position:relative;z-index:1;max-width:980px;padding:clamp(136px,17vw,220px) clamp(22px,6vw,76px) clamp(58px,8vw,96px);color:var(--oyster)}.guide-hero h1{color:var(--oyster);font-size:clamp(2.7rem,7vw,6.4rem);line-height:.96;max-width:900px;overflow-wrap:anywhere}.guide-hero p:not(.eyebrow){max-width:660px;color:rgba(249,248,246,.78);font-size:15px;line-height:1.9;margin:28px 0 0}.guide-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:34px}.guide-toc{position:sticky;top:76px;z-index:40;display:flex;gap:1px;overflow-x:auto;background:rgba(26,46,37,.96);border-top:1px solid rgba(184,150,12,.25);border-bottom:1px solid rgba(184,150,12,.25);scrollbar-width:none}.guide-toc a{flex:0 0 auto;padding:15px 22px;color:rgba(249,248,246,.74);font-size:9px;letter-spacing:.2em;text-transform:uppercase;transition:color .3s ease,background .3s ease}.guide-toc a:hover,.guide-toc a.is-active{color:var(--gold-light);background:rgba(212,174,48,.08)}.quick-section,.snapshot-section,.comparison-section,.deep-section,.tier-section,.upcoming-section,.logistics-section,.package-section,.booking-section,.via-section,.related-section,.faq-section,.sources-section{padding:clamp(72px,9vw,130px) 0}.quick-section,.tier-section,.package-section,.faq-section{background:var(--sand)}.section-kicker,.section-head-left .label,.upcoming-section .label,.logistics-section .label,.booking-section .label,.related-section .label,.sources-section .label{margin-bottom:18px}.quick-section h2,.section-head-left h2,.upcoming-section h2,.logistics-section h2,.booking-section h2,.sources-section h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.08;max-width:820px}.quick-list{list-style:none;display:grid;gap:14px;margin-top:38px;max-width:980px}.quick-list li{position:relative;padding:18px 18px 18px 44px;background:rgba(249,248,246,.72);border-left:2px solid var(--gold);color:var(--jungle)}.quick-list li::before{content:'';position:absolute;left:20px;top:29px;width:7px;height:7px;border-radius:50%;background:var(--gold)}.section-head-left{max-width:860px;margin-bottom:46px}.section-head-left p,.consult-lead,.logistics-section p,.booking-section p,.via-section p,.sources-section p{color:var(--muted);line-height:1.9;font-size:14px}.table-wrap,.package-table{overflow-x:auto;border:1px solid rgba(184,150,12,.22);background:#fff}table{width:100%;border-collapse:collapse;min-width:640px}th,td{text-align:left;vertical-align:top;padding:18px 20px;border-bottom:1px solid rgba(184,150,12,.16)}th{width:260px;color:var(--jungle);font-size:10px;letter-spacing:.18em;text-transform:uppercase}td{color:var(--muted)}.consult-section{padding:clamp(66px,8vw,110px) 0;background:var(--jungle)}.consult-lead{color:rgba(249,248,246,.82);font-family:var(--serif);font-size:clamp(1.6rem,3.5vw,2.8rem);line-height:1.25;max-width:980px}.resort-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.resort-compare-card,.deep-card,.tier-grid article,.faq-item{background:#fff;border:1px solid rgba(184,150,12,.18)}.resort-compare-card,.deep-media{background:linear-gradient(135deg,rgba(184,150,12,.18),rgba(26,46,37,.16)),var(--sand)}.resort-compare-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);min-height:100%;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}.resort-compare-card:hover{transform:translateY(-5px);box-shadow:0 28px 70px rgba(15,28,22,.12)}.resort-compare-card img{width:100%;height:100%;min-height:320px;object-fit:cover;background:var(--sand);transition:opacity .35s ease}.resort-card-body{padding:34px}.tier-label{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:12px}.resort-card-body h3,.deep-copy h3,.tier-grid h3{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05;margin-bottom:22px}dl{display:grid;gap:14px}dt{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--jungle);font-weight:600}dd{color:var(--muted);line-height:1.65;margin-top:4px}.resort-card-body .btn{margin-top:24px}.deep-card{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);margin-bottom:30px}.deep-media img{width:100%;height:100%;min-height:420px;object-fit:cover;background:var(--sand);transition:opacity .35s ease}.deep-copy{padding:clamp(30px,5vw,56px)}.deep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.deep-grid h4{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;margin-bottom:8px}.deep-grid p,.deep-grid li{color:var(--muted);line-height:1.75}.deep-grid ul{padding-left:18px}.tier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.tier-grid article{padding:30px}.tier-grid p{color:var(--muted);line-height:1.8}.upcoming-section{background:var(--jungle);color:var(--oyster)}.upcoming-section h2{color:var(--oyster)}.upcoming-section p{color:rgba(249,248,246,.74);max-width:760px;line-height:1.9}.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(36px,6vw,80px)}.package-table th{width:auto}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:30px}.related-grid a{display:flex;min-height:86px;align-items:center;padding:20px;border:1px solid rgba(184,150,12,.24);background:#fff;color:var(--jungle);font-size:10px;letter-spacing:.17em;text-transform:uppercase;transition:transform .35s var(--ease),border-color .35s ease}.related-grid a:hover{transform:translateY(-3px);border-color:var(--gold)}.faq-list{max-width:980px;margin:0 auto}.faq-question{width:100%;display:flex;justify-content:space-between;gap:20px;padding:24px;text-align:left;color:var(--jungle);font-family:var(--serif);font-size:1.35rem;border-bottom:1px solid rgba(184,150,12,.14);cursor:pointer}.faq-question:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.faq-answer{padding:0 24px 24px;color:var(--muted);line-height:1.9}.sources-section ul{columns:2;list-style:none;padding:0;margin:28px 0}.sources-section li{break-inside:avoid;margin-bottom:12px}.sources-section a{color:var(--gold);border-bottom:1px solid rgba(184,150,12,.35)}.fact-note{border-left:2px solid var(--gold);padding-left:18px}.final-cta{padding:clamp(92px,10vw,150px) 0;background:var(--jungle-deep);color:var(--oyster);text-align:center}.final-cta h2{color:var(--oyster);font-size:clamp(2.1rem,4.5vw,4rem)}.final-cta p{max-width:620px;margin:24px auto 0;color:rgba(249,248,246,.72)}.final-cta .guide-actions{justify-content:center}@media(max-width:1120px){.resort-grid,.tier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resort-compare-card,.deep-card{grid-template-columns:1fr}.deep-media img{min-height:320px}}@media(max-width:760px){.guide-hero{min-height:760px}.guide-hero__content{padding-left:22px;padding-right:22px}.guide-actions .btn,.guide-actions .btn-ghost{width:100%;text-align:center;white-space:normal}.guide-toc{top:64px}.quick-list li{padding-right:14px}.resort-grid,.deep-grid,.tier-grid,.split,.related-grid{grid-template-columns:1fr}.resort-card-body,.deep-copy,.tier-grid article{padding:24px}.sources-section ul{columns:1}.footer-grid,.footer-destination-lists{grid-template-columns:1fr!important}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
