:root{--theatre-black:#111014;--deep-mulberry:#40263A;--ocean-iris:#3E4F75;--stage-apricot:#E59A71;--mineral-mint:#73A89A;--ticket-paper:#EFE4D0;--pearl-smoke:#C7C3C6;--spotlight-white:#FFF9EF;--display:"Big Caslon","Goudy Old Style",Georgia,serif;--body:"Gill Sans","Gill Sans MT",Calibri,sans-serif;--mono:Menlo,Consolas,"Liberation Mono",monospace}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--theatre-black);color:var(--spotlight-white);font:17px/1.65 var(--body);overflow-x:hidden}
body.luxurytrip-scroll-locked{overflow:hidden}
a{color:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.luxurytrip-skip-link{position:fixed;left:1rem;top:-5rem;z-index:200;background:var(--ticket-paper);color:var(--theatre-black);padding:.7rem 1rem}
.luxurytrip-skip-link:focus{top:1rem}
.luxurytrip-shell{width:min(1180px,calc(100% - 2rem));margin:auto}
.luxurytrip-header{position:sticky;top:0;z-index:100;border-bottom:1px solid transparent;transition:.3s}
.luxurytrip-home-header{position:fixed;width:100%}
.luxurytrip-header-scrolled,.luxurytrip-menu-open{background:rgba(17,16,20,.97);border-color:var(--stage-apricot);box-shadow:0 12px 30px #0008}
.luxurytrip-navigation{min-height:80px;display:flex;align-items:center;gap:1.2rem}
.luxurytrip-brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto}
.luxurytrip-brand img{width:44px;height:44px;object-fit:contain}
.luxurytrip-brand-name{font:1.05rem/1.1 var(--display);max-width:110px}
.luxurytrip-navigation-links{display:flex;align-items:center;gap:1.05rem}
.luxurytrip-navigation-links a{text-decoration:none;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase}
.luxurytrip-navigation-links a:hover,.luxurytrip-navigation-links a[aria-current="page"]{color:var(--stage-apricot)}
.luxurytrip-menu-button{display:none;background:transparent;border:1px solid var(--pearl-smoke);color:white;padding:.55rem .7rem}
.luxurytrip-button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:.65rem 1.05rem;background:var(--stage-apricot);color:var(--theatre-black);border:1px solid var(--stage-apricot);text-decoration:none;font-weight:700;letter-spacing:.02em}
.luxurytrip-button:hover{background:var(--spotlight-white);border-color:var(--spotlight-white)}
.luxurytrip-button-secondary{background:transparent;color:var(--spotlight-white);border-color:var(--pearl-smoke)}
.luxurytrip-button-mint{background:var(--mineral-mint);border-color:var(--mineral-mint)}
:focus-visible{outline:3px solid var(--mineral-mint);outline-offset:3px}
.luxurytrip-hero{min-height:100svh;display:grid;align-items:end;position:relative;background:linear-gradient(90deg,#111014f2 0%,#111014b8 38%,#11101433 70%),url('images/luxury-trip-hero.webp') center/cover}
.luxurytrip-hero::after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(transparent,var(--theatre-black))}
.luxurytrip-hero-content{position:relative;z-index:1;padding:9rem 0 6rem}
.luxurytrip-kicker{font:700 .76rem/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--stage-apricot)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.05;margin:.4em 0}
h1{font-size:clamp(3.4rem,8.5vw,8.2rem);max-width:900px;letter-spacing:-.045em}
h2{font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.03em}
h3{font-size:1.75rem}
.luxurytrip-hero-subtitle{font:clamp(1.2rem,2.3vw,2rem)/1.3 var(--display);color:var(--ticket-paper);max-width:680px}
.luxurytrip-hero-facts{display:flex;flex-wrap:wrap;gap:1.5rem;margin:2rem 0}
.luxurytrip-hero-facts span{font:700 .8rem var(--mono);text-transform:uppercase;letter-spacing:.08em}
.luxurytrip-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.luxurytrip-section{padding:clamp(4rem,8vw,8rem) 0}
.luxurytrip-section-mulberry{background:var(--deep-mulberry)}
.luxurytrip-section-paper{background:var(--ticket-paper);color:var(--theatre-black)}
.luxurytrip-section-iris{background:var(--ocean-iris)}
.luxurytrip-section-heading{display:grid;grid-template-columns:minmax(220px,.6fr) 1.4fr;gap:2rem;align-items:end;margin-bottom:3rem}
.luxurytrip-section-heading p{max-width:650px}
.luxurytrip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.luxurytrip-grid-four{grid-template-columns:repeat(4,1fr)}
.luxurytrip-card{border:1px solid #c7c3c64d;padding:1.5rem;min-height:230px;transition:.25s}
.luxurytrip-card:hover{border-color:var(--stage-apricot);box-shadow:inset 0 0 0 1px var(--stage-apricot)}
.luxurytrip-card-mint{border-top:4px solid var(--mineral-mint)}
.luxurytrip-price{font:700 1rem var(--mono);color:var(--stage-apricot)}
.luxurytrip-section-paper .luxurytrip-price{color:#713d27}
.luxurytrip-route{display:grid;grid-template-columns:repeat(7,1fr);position:relative;gap:.5rem}
.luxurytrip-route::before{content:"";position:absolute;left:5%;right:5%;top:19px;border-top:1px solid var(--stage-apricot)}
.luxurytrip-route-stop{position:relative;padding-top:3rem;font:700 .78rem/1.4 var(--mono);text-align:center}
.luxurytrip-route-stop::before{content:"";position:absolute;top:13px;left:calc(50% - 7px);width:14px;height:14px;border-radius:50%;background:var(--theatre-black);border:2px solid var(--stage-apricot)}
.luxurytrip-page-hero{padding:8rem 0 4rem;background:linear-gradient(135deg,var(--deep-mulberry),var(--ocean-iris));border-bottom:1px solid var(--stage-apricot)}
.luxurytrip-page-hero h1{font-size:clamp(3rem,7vw,6.5rem)}
.luxurytrip-lead{font-size:1.25rem;max-width:760px}
.luxurytrip-photo-frame{aspect-ratio:16/9;background:linear-gradient(135deg,var(--ocean-iris),var(--deep-mulberry));border:1px solid var(--stage-apricot);overflow:hidden}
.luxurytrip-photo-frame img{width:100%;height:100%;object-fit:cover}
.luxurytrip-photo-frame img[src="images/cruise.jpg"]{font-size:0}
.luxurytrip-facts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #c7c3c64d}
.luxurytrip-fact{padding:1.2rem;border-right:1px solid #c7c3c64d}
.luxurytrip-fact:last-child{border:0}
.luxurytrip-fact small{display:block;color:var(--pearl-smoke);text-transform:uppercase;font:700 .7rem var(--mono);letter-spacing:.1em}
.luxurytrip-timeline{max-width:900px;margin:auto}
.luxurytrip-itinerary-stop{display:grid;grid-template-columns:120px 1fr;gap:2rem;padding:0 0 3rem;position:relative}
.luxurytrip-itinerary-stop::before{content:"";position:absolute;left:59px;top:2.2rem;bottom:0;border-left:1px solid var(--stage-apricot)}
.luxurytrip-day{font:700 .8rem var(--mono);color:var(--stage-apricot)}
.luxurytrip-itinerary-copy{border:1px solid #c7c3c64d;padding:1.3rem}
.luxurytrip-schedule{font:700 .78rem/1.6 var(--mono);color:var(--mineral-mint)}
.luxurytrip-table-wrap{overflow-x:auto}
.luxurytrip-table{width:100%;border-collapse:collapse;min-width:760px}
.luxurytrip-table th,.luxurytrip-table td{text-align:left;padding:1rem;border-bottom:1px solid #c7c3c64d;vertical-align:top}
.luxurytrip-table th{font:.72rem var(--mono);text-transform:uppercase;color:var(--stage-apricot)}
.luxurytrip-list{padding-left:1.2rem}
.luxurytrip-notice{border-left:5px solid var(--mineral-mint);padding:1.3rem 1.5rem;background:#73a89a18}
.luxurytrip-form{max-width:860px}
.luxurytrip-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.luxurytrip-field{display:flex;flex-direction:column;gap:.35rem}
.luxurytrip-field-wide{grid-column:1/-1}
.luxurytrip-field label,.luxurytrip-checkbox label{font-weight:700}
.luxurytrip-field input,.luxurytrip-field select,.luxurytrip-field textarea{width:100%;padding:.85rem;background:var(--spotlight-white);color:var(--theatre-black);border:2px solid transparent;border-radius:0}
.luxurytrip-field textarea{min-height:130px;resize:vertical}
.luxurytrip-field input[aria-invalid="true"],.luxurytrip-field select[aria-invalid="true"],.luxurytrip-field textarea[aria-invalid="true"]{border-color:#e87d7d}
.luxurytrip-error{min-height:1.2em;color:#ffb2a8;font-size:.86rem}
.luxurytrip-checkbox{display:flex;gap:.65rem;align-items:flex-start;margin:.7rem 0}
.luxurytrip-checkbox input{margin-top:.45rem}
.luxurytrip-form-status{margin-top:1rem;padding:1rem;border:1px solid var(--mineral-mint)}
.luxurytrip-footer{background:#09080b;padding:4rem 0 2rem;border-top:1px solid var(--deep-mulberry)}
.luxurytrip-footer-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr;gap:2rem}
.luxurytrip-footer-links{display:grid;gap:.45rem}
.luxurytrip-footer-links a{color:var(--pearl-smoke)}
.luxurytrip-footer-email{font:700 .8rem var(--mono)}
.luxurytrip-adult-row{display:flex;gap:1rem;align-items:flex-start;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #ffffff22}
.luxurytrip-adult-badge{flex:none;background:var(--stage-apricot);color:var(--theatre-black);padding:.45rem .7rem;font:700 .72rem var(--mono)}
.luxurytrip-adult-copy{margin:0;color:var(--pearl-smoke);font-size:.85rem}
.luxurytrip-cookie-banner{position:fixed;z-index:300}
.luxurytrip-cookie-banner{left:1rem;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));margin:auto;max-width:960px;background:var(--ticket-paper);color:var(--theatre-black);border:2px solid var(--stage-apricot);padding:1.25rem;box-shadow:0 20px 70px #000}
.luxurytrip-cookie-banner[hidden]{display:none}
.luxurytrip-cookie-banner-inner{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}
.luxurytrip-cookie-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.luxurytrip-reveal{opacity:0;transform:translateY(24px);transition:opacity .6s,transform .6s}
.luxurytrip-reveal-visible{opacity:1;transform:none}
.luxurytrip-legal-copy{max-width:820px}
.luxurytrip-legal-copy h2{font-size:2.2rem;margin-top:2em}
.luxurytrip-chapter{font:700 .7rem var(--mono);color:var(--mineral-mint);letter-spacing:.14em;text-transform:uppercase}

@media(max-width:960px){.luxurytrip-menu-button{display:block}
.luxurytrip-navigation-links{position:fixed;inset:80px 0 0;background:var(--theatre-black);padding:2rem;display:none;flex-direction:column;align-items:flex-start;overflow:auto}
.luxurytrip-navigation-links.luxurytrip-navigation-links-open{display:flex}
.luxurytrip-navigation-links a{font-size:1.05rem}
.luxurytrip-navigation>.luxurytrip-button{display:none}
.luxurytrip-grid-four{grid-template-columns:1fr 1fr}
.luxurytrip-route{grid-template-columns:1fr}
.luxurytrip-route::before{left:19px;top:5%;bottom:5%;right:auto;border-top:0;border-left:1px solid var(--stage-apricot)}
.luxurytrip-route-stop{text-align:left;padding:0 0 1.2rem 3rem}
.luxurytrip-route-stop::before{left:13px;top:5px}
.luxurytrip-facts{grid-template-columns:1fr 1fr}
.luxurytrip-fact:nth-child(2){border-right:0}
.luxurytrip-fact{border-bottom:1px solid #c7c3c64d}
}

@media(max-width:680px){.luxurytrip-section-heading,.luxurytrip-grid,.luxurytrip-grid-four,.luxurytrip-footer-grid,.luxurytrip-form-grid{grid-template-columns:1fr}
.luxurytrip-field-wide{grid-column:auto}
.luxurytrip-cookie-banner-inner{grid-template-columns:1fr}
.luxurytrip-cookie-actions .luxurytrip-button{width:100%}
.luxurytrip-itinerary-stop{grid-template-columns:72px 1fr;gap:.7rem}
.luxurytrip-itinerary-stop::before{left:35px}
.luxurytrip-facts{grid-template-columns:1fr}
.luxurytrip-fact{border-right:0}
.luxurytrip-hero-content{padding-bottom:4rem}
.luxurytrip-adult-row{flex-direction:column}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.luxurytrip-reveal{opacity:1;transform:none;transition:none}
*{transition-duration:.01ms!important}
}
