@font-face{font-family:Vietnam;src:url('assets/fonts/BeVietnam-Regular.ttf');font-weight:400;font-display:swap}@font-face{font-family:Vietnam;src:url('assets/fonts/BeVietnam-SemiBold.ttf');font-weight:600;font-display:swap}@font-face{font-family:Playfair;src:url('assets/fonts/PlayfairDisplay-Regular.otf');font-display:swap}@font-face{font-family:Playfair;src:url('assets/fonts/PlayfairDisplay-Italic.otf');font-style:italic;font-display:swap}
:root{--black:#0b0b0b;--mint:#80e3bc;--petrol:#165a72;--line:#dce2e3;--grey:#606060}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--black);font-family:Vietnam,Arial,sans-serif;font-size:15px;line-height:1.75}img{display:block;width:100%}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--petrol);outline-offset:5px}h1,h2,h3{font-family:Playfair,Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.13;margin:0}h1{font-size:clamp(60px,6.7vw,102px)}h2{font-size:clamp(44px,4.5vw,66px)}h3{font-size:32px}p{margin:0 0 20px}em{font-weight:400}.wrap{width:min(1190px,88%);margin:auto}.top{background:var(--black);color:white;display:flex;justify-content:space-between;align-items:center;padding:24px 5%;border-bottom:1px solid #ffffff24}.brand{width:210px}.top nav{display:flex;gap:35px;font-size:12px}.top nav a{text-decoration:none}.top nav span{color:var(--mint);margin-left:8px}.top a:hover{color:var(--mint)}.hero{display:grid;grid-template-columns:49% 51%;background:var(--black);color:white;min-height:690px}.hero-copy{padding:68px 11% 55px 12%;border-top:3px solid var(--mint)}.eyebrow{font-size:10px;letter-spacing:.19em;line-height:1.8;font-weight:600;color:var(--petrol);margin-bottom:23px}.hero .eyebrow,.closing .eyebrow{color:var(--mint)}.intro{font-size:16px;line-height:1.85;color:#d4ded9;margin:28px 0 30px;max-width:440px}.trip{display:flex;gap:21px;border-top:1px solid #ffffff30;padding-top:22px;margin-bottom:32px}.trip b,.trip span{display:block;font-size:9px}.trip b{letter-spacing:.08em;font-weight:600}.trip span{color:#a9bab2;margin-top:5px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;padding:16px 24px;text-decoration:none;font-size:12px;min-height:50px;transition:background .2s}.mint{background:var(--mint);color:#10271e}.mint:hover{background:#a1efd0}.dark{background:var(--black);color:white}.dark:hover{background:var(--petrol)}.hero-note{font-size:8px;letter-spacing:.12em;color:#a9bab2;margin:27px 0 0}.hero-photo{margin:0;position:relative;overflow:hidden}.hero-photo>img{height:100%;object-fit:cover;object-position:45% center}.hero-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0007);pointer-events:none}.hero-photo figcaption{position:absolute;z-index:1;bottom:28px;left:30px;right:30px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:white}.overview{padding:90px 0 75px}.section-heading{display:flex;gap:70px;justify-content:space-between;align-items:end;margin-bottom:40px}.section-heading>p{max-width:410px;color:var(--grey);font-size:14px;margin-bottom:5px}.compare{border-top:1px solid var(--black)}.compare>a{display:flex;align-items:center;gap:28px;text-decoration:none;padding:28px 12px;border-bottom:1px solid var(--line);transition:background .2s}.compare>a:hover{background:#f1f8f5}.number{font-size:10px;letter-spacing:.1em;color:var(--petrol);align-self:flex-start;padding-top:8px}.compare h3{font-size:29px}.compare p{font-size:12px;color:var(--grey);margin:8px 0 0}.compare-total{margin-left:auto;text-align:right}.compare-total span,.compare-total b{display:block}.compare-total span{font-size:10px;color:var(--grey)}.compare-total b{font-size:23px;font-weight:400}.arrow{font-size:26px;margin-left:32px;color:var(--petrol)}.note{font-size:11px;color:var(--grey);margin-top:20px}.yacht{padding:70px 0 85px;border-top:1px solid var(--line)}.yacht-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.tag{border:1px solid #adc3cc;color:var(--petrol);padding:8px 15px;font-size:10px;border-radius:30px}.gallery{display:grid;grid-template-columns:1.65fr 1fr;grid-template-rows:230px 230px;gap:12px}.gallery button{border:0;padding:0;background:#dce2e3;position:relative;overflow:hidden;text-align:left}.gallery button img{height:100%;object-fit:cover;transition:transform .5s}.gallery button:hover img{transform:scale(1.035)}.gallery-main{grid-row:span 2}.photo-label{position:absolute;bottom:0;left:0;right:0;padding:30px 20px 17px;background:linear-gradient(transparent,#0009);color:white;display:flex;justify-content:space-between;font-size:11px}.yacht-details{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;margin-top:45px}.yacht-details h3{font-size:38px;margin-bottom:20px}.yacht-details>div>p{color:var(--grey);max-width:540px;font-size:14px}.amenities{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}.amenities span{padding:6px 10px;background:#edf4f6;color:var(--petrol);font-size:10px}.text-link{font-size:11px;color:var(--petrol)}.price-box{background:#f0f7f4;border-top:3px solid var(--mint);padding:30px 34px;align-self:start}.price-box .eyebrow{margin-bottom:12px;font-size:9px}.price{font-family:Playfair,Georgia,serif;font-size:48px;letter-spacing:-.04em;line-height:1.2}.price-box>p:not(.eyebrow){font-size:12px;color:var(--grey);margin:8px 0 24px}.price-date{border-top:1px solid #c9dcd3;padding-top:17px;font-size:11px;display:flex;flex-direction:column;gap:3px;margin-bottom:22px}.price-box .button{width:100%}.price-box small{display:block;font-size:9px;line-height:1.7;color:var(--grey);margin-top:15px}.second{background:#f3f5f4}.second .price-box{background:#fff}.experience{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:90px 0}.experience>div>p:last-child{max-width:390px;color:var(--grey);font-size:14px;margin-top:25px}.service-list article{display:flex;gap:24px;border-top:1px solid var(--line);padding:25px 0 20px}.service-list article>span{color:var(--petrol);font-size:10px;padding-top:8px}.service-list h3{font-size:26px;margin-bottom:12px}.service-list p{font-size:12px;color:var(--grey);margin:0}.closing{background:var(--black);color:white;padding:80px 0 65px}.closing h2{margin-bottom:25px}.closing>.wrap>p:not(.eyebrow){max-width:620px;color:#c7d1cd;font-size:14px}.concierge-row{display:flex;align-items:center;gap:65px;margin-top:35px}.concierge-row b,.concierge-row div>span{display:block}.concierge-row b{font-size:18px;font-weight:400}.concierge-row div>span{font-size:10px;color:#c7d1cd;margin-top:5px}.contact-links{display:flex;gap:25px;margin-top:24px;font-size:11px}.selection-note{font-size:11px!important;color:var(--mint)!important;margin-top:20px}footer{padding:35px 0 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid var(--line);margin-bottom:23px;gap:20px}.footer-top img{width:160px}.footer-top span{font-size:9px;letter-spacing:.12em;color:var(--petrol)}.footer-top a{font-size:10px}footer p{font-size:10px;color:var(--grey);max-width:950px}dialog{border:0;background:#0b0b0b;color:white;width:min(1200px,96vw);padding:20px;max-height:96vh}dialog::backdrop{background:#000d}.lightbox-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;padding-bottom:15px}dialog button{background:transparent;color:white;border:1px solid #ffffff55;min-width:44px;min-height:44px}#close-gallery{padding:8px 15px}.lightbox-image{display:flex;align-items:center;justify-content:space-between;gap:10px}.lightbox-image img{width:calc(100% - 110px);height:min(70vh,750px);object-fit:contain}#photo-count{text-align:center;font-size:11px;margin-top:12px}body.modal-open{overflow:hidden}
@media(min-width:1600px){.hero-copy{padding-left:max(12%,calc((100vw - 1190px)/2))}}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:50px 9%}h1{font-size:64px}.trip{gap:14px;flex-wrap:wrap}.yacht-details{gap:40px}.experience{gap:50px}.gallery{grid-template-rows:190px 190px}.section-heading{gap:40px}.price{font-size:42px}}
@media(max-width:680px){.top{padding:20px 6%;align-items:start;gap:22px;flex-direction:column}.brand{width:170px}.top nav{gap:23px;font-size:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 36px}h1{font-size:65px}.intro{font-size:14px;max-width:360px}.trip{gap:25px}.hero-photo{height:350px}.hero-photo>img{object-position:center 55%}.hero-photo figcaption{bottom:18px;left:20px;right:20px}.hero-note{font-size:7px}.wrap{width:88%}.overview{padding:55px 0 45px}.section-heading{display:block}.section-heading>p{margin-top:25px}.compare>a{gap:14px;padding:25px 0}.compare h3{font-size:23px}.compare-total b{font-size:19px}.compare-total span{font-size:8px}.compare p{font-size:10px}.arrow{margin-left:0;font-size:22px}.number{font-size:9px}.note{font-size:10px}.yacht{padding:45px 0 50px}.yacht-heading{gap:15px;align-items:start}.tag{font-size:8px;padding:6px 9px;margin-top:7px;white-space:nowrap}.eyebrow{font-size:8px;margin-bottom:15px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:290px 150px;gap:8px}.gallery-main{grid-row:auto;grid-column:span 2}.photo-label{font-size:9px;padding:25px 13px 12px}.yacht-details{grid-template-columns:1fr;gap:28px;margin-top:30px}.yacht-details h3{font-size:34px}.price-box{padding:25px}.price{font-size:44px}.experience{display:block;padding:55px 0}.service-list{margin-top:35px}.closing{padding:55px 0 40px}.closing h2{font-size:44px}.concierge-row{flex-direction:column;align-items:start;gap:25px}.contact-links{flex-wrap:wrap;gap:12px 24px}.footer-top{flex-wrap:wrap}.footer-top img{width:140px}.footer-top span{font-size:7px}.footer-top a{font-size:9px}.lightbox-image{gap:5px}.lightbox-image img{width:calc(100% - 90px);height:65vh}dialog{padding:12px}.lightbox-image button{min-width:38px}h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Four-yacht collection additions. */
.yacht-heading h2{max-width:820px}.extras-note{font-size:11px!important;line-height:1.8}.yacht-details>div,.section-heading>div,.compare>a>div{min-width:0}.compare h3{font-size:clamp(22px,2.6vw,32px)}
@media(max-width:680px){.yacht-heading{flex-wrap:wrap}.yacht-heading h2{font-size:40px}.compare>a{flex-wrap:wrap;gap:10px 14px}.compare>a>div:nth-child(2){flex:1;min-width:150px}.compare-total{flex:0 0 auto}.compare-total b{font-size:18px}.compare .arrow{display:none}.compare h3{font-size:22px}.compare-total span{font-size:9px}.concierge-row .button{max-width:100%;overflow-wrap:anywhere}}
/* DX Travels · Teotihuacán */
.hero{grid-template-columns:52% 48%;min-height:660px}.hero-copy{padding:66px 9% 55px 11%}.hero h1{font-size:clamp(54px,5.6vw,86px)}.hero-photo>img{object-position:42% center}.proposal-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.operator{padding:10px 0 24px}.operator>span{font-size:9px;letter-spacing:.15em;color:var(--petrol)}.operator h3{font-size:42px;margin:10px 0}.operator p{font-size:12px;color:var(--grey)}.date-list{border-top:1px solid var(--black)}.date-list>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 0;border-bottom:1px solid var(--line);font-size:11px}.date-list b{margin-right:12px;font-size:12px}.date-list strong{font-size:11px;font-weight:400;color:var(--petrol)}.date-list i{font-style:normal;margin-left:6px}.date-list>div:not(.available)>span:last-child{color:var(--grey)}.included .eyebrow{margin-bottom:10px}.included ul{list-style:none;margin:0;padding:0}.included li{font-size:13px;padding:11px 0 11px 25px;border-bottom:1px solid var(--line);position:relative;color:#454c48}.included li:before{content:'✓';position:absolute;left:0;color:var(--petrol)}.pickup{border-left:3px solid var(--mint);padding:22px 0 4px 24px;margin-top:35px}.pickup h3{font-size:28px;margin:12px 0}.pickup p{font-size:13px;margin-bottom:16px}.pickup .note{font-size:11px;line-height:1.8}.conditions{padding:75px 0}.condition-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 55px;margin-top:38px;align-items:start}.condition-grid details{border-top:1px solid #bcc8c2;padding:21px 0}.condition-grid summary{cursor:pointer;font-size:15px;font-weight:600;line-height:1.5;padding-right:15px}.condition-grid p{font-size:12px;color:#515a55;line-height:1.9;margin:17px 0 0}.price-box small{font-size:11px}.print-button{border:1px solid var(--line);background:white;padding:9px 13px;font-size:11px;color:var(--grey)}.brand img,.footer-top img{height:auto}summary:focus-visible{outline:3px solid var(--petrol);outline-offset:5px}
@media(max-width:1000px){.proposal-grid{gap:35px}.hero-copy{padding:50px 8%}.hero h1{font-size:60px}.date-list>div{flex-wrap:wrap;gap:7px}.condition-grid{gap:0 35px}}
@media(max-width:680px){.hero{grid-template-columns:1fr}.hero-copy{padding:44px 6% 35px}.hero h1{font-size:clamp(46px,11vw,64px)}.hero-photo{height:360px}.hero-photo>img{object-position:center 60%}.proposal-grid{grid-template-columns:1fr;gap:22px}.price{font-size:46px}.condition-grid{grid-template-columns:1fr}.conditions{padding:50px 0}.date-list>div{flex-wrap:nowrap;align-items:start;gap:15px;font-size:10px}.date-list b{display:block}.date-list strong{max-width:160px;text-align:right}.date-list>div>span:last-child{text-align:right;max-width:170px}.trip{gap:20px}.top nav{gap:20px}.pickup .note{font-size:11px}}
@media print{body{font-size:11px;color:#000}nav,.button,.print-button,dialog{display:none!important}.top{padding:10px 6%}.brand{width:150px}.hero{min-height:0;grid-template-columns:55% 45%}.hero-copy{padding:30px}.hero h1{font-size:42px}.hero .intro{font-size:12px}.hero-note{font-size:8px}.wrap{width:92%}.overview,.yacht,.experience,.conditions,.closing{padding-top:30px;padding-bottom:30px}h2{font-size:32px}.gallery{grid-template-rows:150px 150px}.proposal-grid,.yacht-details,.experience{gap:30px}.price{font-size:38px}.conditions details{break-inside:avoid}.closing{break-inside:avoid}img{break-inside:avoid}.price-box{break-inside:avoid}}
