@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#102b38;--orange:#f36b35;--cream:#f4f5f1;--muted:#536775}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:white;font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.12;margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.skip{position:fixed;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:0}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px max(5vw,20px);border-bottom:1px solid #dce3e7;background:white}.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-family:Manrope,sans-serif;font-size:19px;line-height:1.25}.brand-mark{display:grid;place-items:center;width:44px;height:44px;background:var(--ink);border-radius:50%;font-size:25px}.brand small{display:block;font-size:11px;letter-spacing:3px;font-weight:600;margin-top:5px}nav{display:flex;gap:28px;font-size:14px;font-weight:600}nav a:hover{color:var(--orange)}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--orange);color:#102b38;font-weight:800;padding:15px 22px;border-radius:6px;border:0;cursor:pointer;font-size:15px}.button:hover{background:#ff854e}.button.small{padding:11px 18px;font-size:14px}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:600px;background:var(--ink);color:white}.hero-copy{padding:74px 5vw 46px}.eyebrow{letter-spacing:2px;font-weight:700;font-size:12px;margin:0 0 22px;color:var(--orange)}h1{font-size:clamp(40px,4.4vw,68px);font-weight:800;letter-spacing:-2px}h1 em{font-style:normal;color:#ff9a6f}.intro{font-size:18px;color:#d7e1e5;max-width:460px;margin:26px 0 30px}.departure{display:flex;gap:12px;margin-top:40px;padding-top:24px;border-top:1px solid #ffffff2b;font-size:14px;max-width:500px}.departure p{margin:0}.departure strong,.departure small{display:block}.departure small{color:#aec2ce;font-size:12px;margin-top:5px}.hero-visual{position:relative;min-height:510px;overflow:hidden}.hero-photo{height:100%;background:linear-gradient(150deg,#1c5b68,#183449);background-size:cover;background-position:center}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#102b38bd)}.hero-ticket{position:absolute;bottom:38px;left:36px;right:36px;z-index:1;background:#ffffffed;color:var(--ink);padding:24px 28px;border-radius:8px;box-shadow:0 15px 40px #102b3840}.hero-ticket p{font-size:11px;letter-spacing:2px;margin:0 0 8px}.hero-ticket h2{font-size:36px;margin-bottom:10px}.hero-ticket span{font-size:14px}.hero-ticket div{display:flex;justify-content:space-between;align-items:center;border-top:1px dashed #b4c5ce;margin-top:17px;padding-top:16px}.hero-ticket strong{font-size:20px}.hero-ticket a{font-size:14px;font-weight:700}.section{padding:70px max(5vw,20px)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.section-top .eyebrow{margin-bottom:12px}.section h2{font-size:38px;letter-spacing:-1px}.section-top>p{color:var(--muted);font-size:14px;margin:0}.tour-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tour-card{border:1px solid #dbe3e7;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;background:white}.tour-art{height:195px;position:relative;background:var(--ink);background-size:cover;background-position:center}.tour-art.no-photo{height:126px;background:linear-gradient(110deg,#102b38,#246070)}.tour-art.no-photo .destination-name{position:absolute;bottom:18px;left:22px;color:white;font-family:Manrope;font-weight:800;font-size:27px}.tag{position:absolute;left:16px;top:16px;background:white;padding:4px 11px;border-radius:4px;font-size:12px;font-weight:700}.tour-content{padding:23px;display:flex;flex-direction:column;flex:1}.tour-content h3{font-size:22px;margin-bottom:12px}.tour-content p{font-size:14px;color:var(--muted);margin:0 0 10px}.tour-date{font-weight:700;color:var(--ink)!important}.price{margin-top:auto;padding-top:14px;border-top:1px solid #e7edef}.price strong{font-size:26px}.price span{font-size:13px;color:var(--muted)}.card-actions{display:flex;gap:10px;margin-top:18px}.card-actions a,.card-actions button{flex:1;text-align:center;padding:10px 8px;font-weight:700;font-size:14px;border-radius:5px;cursor:pointer;border:1px solid #c6d3db;background:white}.card-actions a{background:var(--ink);color:white;border-color:var(--ink)}footer{background:var(--ink);color:white;padding:48px 5vw 25px;display:grid;grid-template-columns:1.5fr 1fr;gap:25px}footer p{font-size:14px;color:#aec2ce}footer h3{font-size:17px;margin:5px 0 15px}footer a:not(.brand){display:block;font-size:14px;margin-bottom:9px}.footer-note{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:24px;font-size:12px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f36b35;outline-offset:4px}@media(max-width:950px){nav{gap:16px}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-top:50px}.hero-ticket{left:22px;right:22px;padding:22px}.tour-grid{grid-template-columns:repeat(2,1fr)}h1{font-size:45px}}@media(max-width:640px){header{padding:16px 20px;flex-wrap:wrap;gap:16px}.brand{font-size:16px}.brand small{font-size:10px}.brand-mark{width:38px;height:38px}nav{order:3;width:100%;justify-content:space-between;border-top:1px solid #edf1f3;padding-top:14px;font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 24px 32px}h1{font-size:44px;letter-spacing:-1.5px}.intro{font-size:16px}.hero-visual{min-height:360px}.hero-ticket{bottom:22px}.departure{margin-top:28px}.section{padding:46px 20px}.section-top{display:block}.section-top>p{margin-top:20px}.section h2{font-size:31px}.tour-grid{grid-template-columns:1fr}.tour-art{height:225px}footer{grid-template-columns:1fr;padding:40px 24px}.footer-note{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:root{--orange:#d661a5}.button:hover{background:#e886bd}h1 em{color:#e886bd}.hero-photo{background-image:url('images/morelia.jpg');background-position:50% 45%}.brand-mark{width:60px;height:60px;background:white;overflow:hidden;border:1px solid #d7e0e5}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.hero-ticket button{border:0;background:none;color:var(--ink);font-weight:700;font-size:14px;cursor:pointer}.filters{display:flex;align-items:center;gap:10px;margin-bottom:28px;flex-wrap:wrap}.filters button{border:1px solid #cedbe2;background:white;padding:9px 15px;border-radius:30px;color:var(--ink);font-size:14px;cursor:pointer}.filters button.selected{background:var(--ink);color:white;border-color:var(--ink)}.filters span{margin-left:auto;color:var(--muted);font-size:13px}.tour-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,#102b3820);pointer-events:none}.tag{z-index:1}.price .promo{color:#9a3471;font-size:13px;font-weight:700;margin-top:8px}.card-actions button.reserve{background:var(--ink);color:white;border-color:var(--ink)}.how{background:var(--cream)}.text-link{font-size:14px;text-decoration:underline;text-underline-offset:4px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.steps article>span,.payment-options article>span{font-family:Manrope;font-size:40px;font-weight:800;color:#b95692}.steps h3{font-size:21px;margin:16px 0}.steps p{color:var(--muted);font-size:15px}.care{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #ccd8df;margin-top:35px;padding-top:26px;font-size:14px}.care strong{font-size:16px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:60px}.faq>div>p,.payments>div>p{color:var(--muted)}.faq details{border-bottom:1px solid #dbe3e7;padding:18px 0}.faq summary{font-weight:700;cursor:pointer}.faq details p{font-size:14px;color:var(--muted)}.payments{background:#fbf1f7}.payment-options{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:28px}.payment-options h3{font-size:20px;margin-top:14px}.payment-options p{font-size:15px;color:var(--muted)}.photo-credits{grid-column:1/-1;color:#b9cdd7;font-size:12px}.photo-credits summary{cursor:pointer}.photo-credits p{font-size:12px;margin:8px 0}.photo-credits a:not(.brand){display:inline;font-size:12px;text-decoration:underline}.floating-wa{position:fixed;bottom:20px;right:22px;background:#102b38;color:white;padding:12px 18px;border:1px solid #80949f;border-radius:30px;font-weight:700;font-size:14px;box-shadow:0 6px 20px #102b3833;z-index:3}dialog{border:0;border-radius:12px;width:min(880px,calc(100% - 32px));padding:38px;max-height:90vh;color:var(--ink);box-shadow:0 20px 70px #0005}dialog::backdrop{background:#071e29b5}dialog h2{font-size:32px;padding-right:30px;line-height:1.25}dialog h3{font-size:18px;margin:20px 0 10px}dialog p,dialog li{font-size:15px;color:var(--muted)}.close-dialog{position:absolute;right:14px;top:14px;border:0;background:#edf2f4;width:36px;height:36px;border-radius:50%;cursor:pointer;color:var(--ink)}.dialog-price{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:22px 0;border-bottom:1px solid #dbe3e7;padding-bottom:22px}.dialog-price strong{font-size:28px}.dialog-price span{font-size:14px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail-columns ul{padding-left:22px}.detail-columns li{margin:7px 0}#booking{background:#f3f6f7;padding:24px;border-radius:8px;margin-top:28px}.booking-note{font-size:13px!important}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{font-weight:700;font-size:14px}.form-grid input,.form-grid select{display:block;width:100%;border:1px solid #bfced7;border-radius:5px;background:white;padding:11px;margin-top:7px;color:var(--ink);min-width:0;font-size:16px}.promo-toggle{display:block;margin-top:18px;font-size:14px}.promo-toggle input{accent-color:var(--ink)}.booking-total{border-top:1px solid #cedbe2;padding-top:20px;margin-top:20px}.booking-total div{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin-bottom:10px}.booking-total div:first-child strong{font-size:22px}.booking-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.booking-buttons .button{color:var(--ink)}[aria-disabled=true]{opacity:.5;pointer-events:none}@media(max-width:950px){.care{flex-wrap:wrap}.faq{gap:28px}.steps{gap:24px}}@media(max-width:640px){.brand-mark{width:50px;height:50px}.section-top .text-link{display:block;margin-top:22px}.steps,.payment-options{grid-template-columns:1fr;gap:12px}.steps article{border-top:1px solid #d3dfe5;padding-top:15px}.steps h3{margin-top:5px}.steps article>span,.payment-options article>span{font-size:30px}.care{display:grid;grid-template-columns:1fr}.faq{grid-template-columns:1fr;gap:16px}.floating-wa{bottom:12px;right:12px;font-size:12px;padding:10px 15px}dialog{padding:28px 20px}dialog h2{font-size:25px}.detail-columns{grid-template-columns:1fr;gap:0}#booking{padding:18px}.form-grid{grid-template-columns:1fr}.booking-total div{flex-wrap:wrap}.booking-total div:first-child strong{font-size:19px}.filters span{display:none}.card-actions button{font-size:13px}}
.boarding{background:#fbf1f7;border-left:3px solid #d661a5;padding:16px 20px;margin:20px 0}.boarding p{margin:8px 0 0}.tour-art.no-photo{min-height:160px}.destination-name{right:18px;line-height:1.2}
.brand-mark{width:88px;height:88px;background:white;border:0;padding:0;flex-shrink:0}.brand-mark img{filter:none;mix-blend-mode:normal}.brand{font-size:19px}header{padding-top:15px;padding-bottom:15px}@media(max-width:950px){header{flex-wrap:wrap}nav{order:3;width:100%;justify-content:space-around;border-top:1px solid #dce3e7;padding-top:12px}.brand-mark{width:76px;height:76px}}@media(max-width:640px){.brand-mark{width:70px;height:70px}.brand{font-size:16px}}

.memories{background:#f5f5f1}.album{background:white;border:1px solid #dce3e7;border-radius:12px;overflow:hidden}.album-heading{padding:28px;display:flex;justify-content:space-between;align-items:center;gap:30px}.album-heading p{max-width:660px;color:var(--muted);margin-bottom:0}.memory-date{font-size:11px;font-weight:700;letter-spacing:2px;color:#9f3978}.album-heading h3{font-size:28px;margin-top:10px}.memory-photos{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px}.memory-photo{padding:0;border:0;position:relative;height:330px;overflow:hidden;cursor:zoom-in;background:#102b38;color:white;text-align:left}.memory-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.memory-photo:hover img{transform:scale(1.035)}.memory-photo span{position:absolute;bottom:0;left:0;right:0;padding:35px 20px 18px;background:linear-gradient(transparent,#102b38d9);font-weight:600;font-size:14px}.video-heading{margin:45px 0 22px}.video-heading h3{font-size:28px}.video-heading p,.video-caption p{color:var(--muted)}.memory-videos{display:grid;grid-template-columns:1fr 1fr;gap:25px}.video-card{background:white;border:1px solid #dce3e7;border-radius:12px;overflow:hidden}.video-stage{min-height:320px;background:radial-gradient(ellipse at top right,#2a737b,#102b38);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:25px}.video-card:nth-child(2) .video-stage{background:radial-gradient(ellipse at top right,#953f79,#102b38)}.video-icon{display:grid;place-items:center;width:58px;height:58px;border:1px solid #ffffff70;border-radius:50%}.video-stage strong{font-family:Manrope,sans-serif;font-size:27px}.video-stage>span:not(.video-icon){font-size:13px}.video-stage iframe{width:100%;height:500px;border:0;background:white}.video-caption{padding:25px}.video-caption h3{font-size:21px}.video-caption p{margin:12px 0}.video-note{font-size:13px;color:var(--muted)}.memory-cta{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:35px;padding-top:30px;border-top:1px solid #ccd7de}.memory-cta p{color:var(--muted);margin:10px 0 0}#photo-dialog{max-width:1000px;width:94vw;padding:20px;background:#102b38;color:white}#photo-full{display:block;width:100%;max-height:75vh;object-fit:contain}#photo-caption{margin:15px 0 0}.close-photo{position:absolute;top:12px;right:12px;background:white;border:0;border-radius:50%;width:36px;height:36px;cursor:pointer;z-index:1}.brand-mark img{width:100%;height:100%;object-fit:contain}@media(max-width:640px){nav{gap:12px;flex-wrap:wrap}.album-heading,.memory-cta{flex-direction:column;align-items:flex-start}.album-heading{padding:22px}.memory-photos{grid-template-columns:1fr}.memory-photo{height:280px}.memory-videos{grid-template-columns:1fr}.video-stage{min-height:280px}.video-stage iframe{height:480px}.memory-cta .button{width:100%}}
.brand-mark{display:block}.brand-mark img{width:100%;height:100%;object-fit:contain}
