/* Miami: real photography, sun-warmed color and distinct editorial sections. */
:root{--lagoon:#155c64;--sea-glass:#d5e7e1;--sand:#ead7b9;--coral:#e8b5a1}
.editorial-intro{background:var(--sea-glass)}
.featured-fleet{background:#f3eadc}
.destination-teaser{max-width:none;padding:72px max(22px,calc((100vw - 1280px)/2));background:var(--lagoon);color:#fff;gap:70px}
.destination-visual>img:first-child{height:570px;object-position:center 67%;border-radius:24px 80px 24px 24px}
.destination-visual figcaption{color:#d5e8e7}
.teaser-copy .eyebrow{color:#edc794}
.teaser-copy h2{font-size:clamp(36px,3.8vw,56px)}
.teaser-copy p:not(.eyebrow){color:#e0eeee}
.teaser-copy .text-link{color:#f2d5a9}
.concierge{background:#0c3041;color:#fff}
.concierge .eyebrow{color:#edc794}
.concierge .section-heading{margin-bottom:36px;gap:36px}
.concierge .section-heading p{color:#cfe0e3;max-width:340px}
.concierge-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:60px;align-items:center}
.service-photo{margin:0;position:relative;overflow:hidden;border-radius:24px 70px 24px 24px}
.service-photo img{height:540px;width:100%;object-fit:cover;object-position:center 58%}
.service-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:65px 25px 23px;color:white;background:linear-gradient(transparent,#041a29dc);font-size:15px}
.concierge-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 32px;margin:0}
.concierge-grid article{padding:24px 0 0;border:0;border-top:1px solid #8ac3c066;border-radius:0;background:none}
.concierge-grid h3{color:#f4d4a4;font-size:27px;line-height:1.23;margin-bottom:16px}
.concierge-grid p{color:#d7e6e7;font-size:16px;line-height:1.8}
.concierge .small-note{color:#b5cdd1;max-width:810px;font-size:13px;margin-top:30px}
.concierge-experience{background:#d4e5de;color:#123c42}
.concierge-experience .eyebrow{color:#38676a}
.concierge-experience .section-heading p,.concierge-experience .concierge-grid p{color:#36595d}
.concierge-experience .concierge-grid h3{color:#123c42}
.concierge-experience .concierge-grid article{border-color:#38676a40}
.concierge-experience .small-note{color:#416063}
.concierge-experience .service-photo{border-radius:70px 24px 24px 24px}
.itinerary{background:#ead7b9}
.itinerary .eyebrow{color:#71582e}
.itinerary-grid article{background:#ffffff40;border:0;border-top:2px solid #a9834f66;border-radius:0 0 20px 20px}
.itinerary-grid p{color:#4c5c5e}
.itinerary .small-note{color:#5b605a}
.gather-cta{background:#155c64}
.experience-opening{background:#0c3041;color:#fff;padding:54px 0 65px}
.experience-opening-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center}
.experience-opening .eyebrow{color:#e9c38b}
.experience-opening h1{font-size:clamp(46px,5vw,72px);line-height:1.1;letter-spacing:-.035em;margin:20px 0 28px}
.experience-opening h1 em{color:#efcea1;font-weight:400}
.experience-opening-copy>p:not(.eyebrow){max-width:450px;font-size:18px;line-height:1.85;color:#d8e6e8}
.experience-opening .text-link{color:#f2d5a9;margin-top:30px}
.opening-note{display:block;font-family:'Fraunces',serif;font-style:italic;font-size:21px;color:#b5d7d5;margin-top:44px}
.experience-opening figure{margin:0;min-width:0}
.experience-opening figure img{width:100%;height:600px;object-fit:cover;border-radius:80px 24px 24px 24px}
.experience-opening figcaption{font-size:11px;color:#bdd0d3;margin-top:12px}
.occasion-section{background:var(--sand);padding:64px 0}
.occasion-section .eyebrow{color:#70532d}
.experience-grid{gap:36px;margin-top:26px}
.experience-item{padding:0 0 0 24px;border:0;border-left:1px solid #8c714b50;border-radius:0;background:none}
.experience-item h3{font-size:29px}
.experience-item p{font-size:16px;color:#43595b}
.water-feature{margin:0;background:#0c3041}
.water-feature>.split-image{height:650px;min-height:0;object-fit:cover;object-position:45% center}
.water-feature .split-content{background:#0c3041;padding:65px 12%}
.water-feature .split-content p{color:#d1e2e5}
.water-feature h2{font-size:clamp(40px,4.4vw,62px)}
[data-page=experience] #faq{background:#f2e9dd}
[data-page=destinations] .page-heading{background:var(--paper)}
.route-section{background:#d5e7e1}
.route-card{background:#f9f3e8;border-radius:26px;overflow:hidden;border:0}
.route-card>div{padding:28px 30px 34px}
.route-card>img{border-radius:0;height:350px;width:100%;object-fit:cover}
.route-card:nth-child(3)>img{object-position:center 47%}
.route-card:nth-child(4){background:#103948;color:#fff}
.route-card:nth-child(4) p{color:#d4e3e7}
.route-card:nth-child(4) .eyebrow,.route-card:nth-child(4) .text-link{color:#efcb93}
.vessel-directory{background:#e6eeea;border:1px solid #aac5bf55;border-radius:24px;box-shadow:none}
.vessel-directory .vessel-info{padding:29px;display:flex;flex-direction:column;height:100%}
.directory-top{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:#496b6e;margin-bottom:35px}
.directory-concept{background:#ffffff80;border-radius:12px;padding:0 8px}
.vessel-directory .vessel-title{align-items:baseline;gap:20px}
.vessel-directory .vessel-title h3{font-size:32px}
.vessel-directory .vessel-title>span{font-family:'Fraunces',serif;font-size:30px;color:#376e71}
.directory-features{list-style:none;margin:24px 0 26px;padding:0;font-size:14px;color:#466469;line-height:1.95}
.vessel-directory .vessel-meta{margin-top:auto;border-color:#496b6e30;flex-wrap:wrap}
.vessel-directory:nth-child(3n+2){background:#edddc8}
.vessel-directory:nth-child(3n){background:#d7e6eb}
.vessel-directory .vessel-title a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.fleet-catalog .fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.fleet-catalog .vessel-info{padding:36px}
.fleet-catalog .vessel-title h3{font-size:39px}
.fleet-catalog .directory-top{margin-bottom:23px}
.booking-aside{background:#d5e7e1;padding:30px;border:0;border-radius:26px;align-self:start}
.booking-label{font-family:'Fraunces',serif;font-style:italic;font-size:23px;color:#376e71;padding-bottom:28px;margin-bottom:26px;border-bottom:1px solid #496b6e30}
.booking-aside .aside-note,.booking-aside .small-note{color:#466469}
@media(max-width:1050px){
 .destination-teaser{padding:60px 32px;gap:36px}.experience-opening-grid{gap:35px}
 .experience-opening figure img{height:550px}.experience-opening h1{font-size:52px}
 .concierge-layout{gap:35px;grid-template-columns:.85fr 1.2fr}.concierge-grid{gap:20px}.concierge-grid h3{font-size:24px}
}
@media(max-width:760px){
 .destination-teaser{padding:45px 22px 55px;gap:30px}.destination-visual>img:first-child{height:390px;aspect-ratio:auto;object-position:center 71%;border-radius:22px 60px 22px 22px}
 .teaser-copy h2{font-size:38px}
 .concierge-layout{grid-template-columns:1fr;gap:18px}.concierge .section-heading{gap:20px;margin-bottom:27px}
 .service-photo img{height:330px;object-position:center 56%}.concierge-grid{grid-template-columns:1fr;margin-top:8px;gap:0}
 .concierge-grid article{padding:22px 0}.concierge-grid h3{font-size:27px}.concierge-grid p{font-size:16px}
 .concierge .small-note{margin-top:12px;font-size:13px}.concierge{padding:55px 0}
 .experience-opening{padding:42px 0}.experience-opening-grid{grid-template-columns:1fr;gap:30px}
 .experience-opening h1{font-size:clamp(36px,10.6vw,52px);margin:16px 0 23px}
 .experience-opening-copy>p:not(.eyebrow){font-size:16px;line-height:1.8}
 .experience-opening .text-link{margin-top:25px}.opening-note{margin-top:25px;font-size:20px}
 .experience-opening figure img{height:auto;aspect-ratio:4/5;border-radius:60px 22px 22px 22px}
 .experience-opening figcaption{font-size:10px;line-height:1.5}
 .occasion-section{padding:44px 0}.experience-grid{grid-template-columns:1fr;gap:30px;margin-top:28px}
 .experience-item{padding:0 0 0 20px}.experience-item h3{font-size:28px}.experience-item p{font-size:16px}
 .water-feature>.split-image{height:320px}.water-feature .split-content{padding:42px 22px 50px}.water-feature h2{font-size:43px}
 .route-card>img{height:270px}.route-card:nth-child(3)>img{height:340px}
 .fleet-catalog .fleet-grid{grid-template-columns:1fr}.fleet-catalog .vessel-info,.vessel-directory .vessel-info{padding:25px}
 .vessel-directory .vessel-title h3,.fleet-catalog .vessel-title h3{font-size:31px}.directory-top{margin-bottom:22px}
 .booking-aside{padding:25px}
}
