/* Official logo palette: green for actions, blue for detail, warm orange for emphasis. */
:root { --forest:#087238; --forest-dark:#07582d; --sage:#edf6ee; --accent:#ba570b; --accent-dark:#974206; --ink:#203b36; --muted:#62766e; --line:#dce8e1; --cream:#fafbf8; --blue:#0c6089; --sky:#edf5f9; --warm:#fff3e3; }
body { background:var(--cream); }
.site-header { height:112px; background:#fff; }
.nav-wrap { height:112px; }
.brand { display:block; position:relative; width:152px; height:108px; overflow:hidden; flex-shrink:0; }
.brand .brand-logo { position:absolute; width:152px; height:152px; max-width:none; left:0; top:-16px; object-fit:contain; }
#navigation>a:not(.nav-cta),#navigation>a:not(.nav-cta):hover,#navigation>a.active:not(.nav-cta) { background:transparent; border-radius:0; }
#navigation>a:not(.nav-cta) { transition:color .18s; }
#navigation>a:not(.nav-cta):hover { color:var(--forest); }
#navigation>a:not(.nav-cta)::after { background:var(--forest); border-radius:0; }
.official-footer-brand { display:block; width:190px; height:145px; border-radius:12px; overflow:hidden; background:#fff; position:relative; margin-bottom:22px; }
.official-footer-brand img { position:absolute; width:190px; height:190px; max-width:none; top:-19px; left:0; }
.demo-strip { background:#f4f1e7; }
.home-introduction .home-intro-points span:nth-child(2) { color:var(--blue); }
.home-introduction .home-intro-points span:nth-child(3) { color:var(--accent); }
.experience-band { background:var(--sky); }
.experience-band h2 { color:#164b65; }
.value-icon { color:var(--forest); background:var(--sage); }
.values>div:nth-child(2) .value-icon { color:var(--blue); background:var(--sky); }
.values>div:nth-child(3) .value-icon { color:var(--accent); background:var(--warm); }
.final-cta { background:#0b6040; }
.card-meta { color:var(--blue); }
.card-amenities { color:var(--forest); }
.card-cta { background:var(--sky); color:var(--blue); }
.journey-navigation { top:112px; background:#ffffffed; }
.feature-icon { background:var(--sage); color:var(--forest); }
.journey-feature:nth-child(2) .feature-icon,.journey-feature:nth-child(3) .feature-icon { background:var(--sky); color:var(--blue); }
.journey-feature:nth-child(4) .feature-icon { background:var(--warm); color:var(--accent); }
.highlight-panel { background:var(--sky); border-color:#dcebf3; }
.highlight-panel .icon { color:var(--blue); }
.booking-panel .price-summary { background:var(--warm); border-color:#f1e1c8; }
.journey-sidebar .booking-panel { border-top:3px solid var(--forest); }
.booking-steps li>span { background:var(--sky); color:var(--blue); }
.personal-trip { background:var(--sky); }
.personal-trip>.feature-icon { background:#deedf5; color:var(--blue); }
.itinerary-jump-links { display:flex; gap:9px; flex-wrap:wrap; margin:23px 0 30px; }
.itinerary-jump-links a { font-size:12px; padding:8px 2px; margin-right:12px; color:var(--blue); text-decoration:underline; text-underline-offset:5px; }
.itinerary-jump-links a:hover { color:var(--forest); }
.itinerary-timeline .itinerary-panels { display:grid; gap:25px; padding-left:22px; border-left:2px solid #d6e8df; margin-left:16px; }
.itinerary-timeline .day-panel { position:relative; margin:0; border-color:var(--line); background:#fff; scroll-margin-top:210px; animation:none; }
.itinerary-timeline .day-panel::before { content:''; position:absolute; width:10px; height:10px; border:3px solid #fff; border-radius:50%; background:var(--forest); left:-31px; top:32px; box-shadow:0 0 0 2px #d6e8df; }
.day-number { background:var(--sky); color:var(--blue); }
.day-experience p { font-size:14px; line-height:1.9; color:#4b6258; }
.day-logistics { background:#f5f9f5; }
.meal-chip.is-included { color:#175e34; border-color:#bedfc8; background:#e9f5eb; }
.itinerary-print { font-size:12px; display:flex; align-items:center; gap:8px; white-space:nowrap; }
.practical-grid,.about-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.practical-grid article,.about-card { padding:26px; background:#fff; border:1px solid var(--line); border-radius:14px; }
.practical-grid article>.icon,.about-card>.icon { width:28px; height:28px; color:var(--blue); margin-bottom:16px; }
.practical-grid h3,.about-card h3 { font-size:20px; margin-bottom:12px; }
.practical-grid p,.about-card p { font-size:13px; line-height:1.85; margin:0; }
.contact-actions { display:flex; gap:16px; flex-wrap:wrap; margin-top:24px; }
.contact-heading { margin-top:40px; }
.flight-process { padding:24px 0; }
.flight-process h3 { font-size:22px; }
.flight-process p { font-size:13px; line-height:1.85; }
.page-story { max-width:900px; margin-inline:auto; }
.page-story p { line-height:1.9; }
.explore-notes { margin-top:40px; }
.destination-tile .destination-description { font-size:12px; line-height:1.6; max-width:340px; }
.destination-tile { min-height:350px; }
.settings-shell { max-width:850px; }
.settings-shell>.eyebrow { display:block; margin-top:32px; }
.settings-shell .form-panel { margin:30px 0; }
.whatsapp-contact { position:fixed; bottom:24px; right:24px; z-index:15; display:flex; align-items:center; gap:10px; background:#087238; color:#fff; border:1px solid #ffffff80; border-radius:50px; padding:14px 18px; font-size:12px; font-weight:650; box-shadow:0 6px 20px #173b3428; transition:background .2s; }
.whatsapp-contact:hover { background:#07582d; }
.whatsapp-contact .icon { width:24px; height:24px; }
.whatsapp-card>.icon { color:var(--forest); margin-bottom:16px; }
.availability-page { display:grid; min-height:100svh; place-items:center; padding:30px 20px; background:var(--sky); }
.availability-card { max-width:600px; background:#fff; border:1px solid var(--line); border-radius:18px; padding:35px; text-align:center; }
.availability-card>img { width:160px; height:160px; object-fit:contain; margin:0 auto 25px; }
.availability-card h1 { font-size:clamp(30px,5vw,45px); margin:20px 0; }
.availability-card p { font-size:14px; line-height:1.85; }
.availability-card .button { margin-top:15px; }
@media(max-width:850px) { .site-header,.nav-wrap { height:96px; } .brand { width:126px; height:92px; } .brand .brand-logo { width:126px; height:126px; top:-12px; } .journey-navigation { top:96px; } #navigation { top:96px; background:#fff; } .journey-section { scroll-margin-top:175px; } .itinerary-print { display:none; } .itinerary-timeline .day-panel { scroll-margin-top:180px; } .package-page .whatsapp-contact { bottom:92px; } }
@media(max-width:560px) { .site-header,.nav-wrap { height:90px; } .brand { width:116px; height:88px; } .brand .brand-logo { width:116px; height:116px; top:-10px; } #navigation { top:90px; } .journey-navigation { top:90px; } .official-footer-brand { width:165px; height:124px; } .official-footer-brand img { width:165px; height:165px; top:-17px; } .itinerary-timeline .itinerary-panels { padding-left:14px; margin-left:6px; gap:20px; } .itinerary-timeline .day-panel::before { left:-23px; top:26px; width:8px; height:8px; } .itinerary-timeline .day-panel { padding:20px 16px; } .day-experience p { font-size:13px; } .practical-grid,.about-grid { grid-template-columns:1fr; } .practical-grid article,.about-card { padding:23px; } .whatsapp-contact { right:16px; bottom:16px; padding:12px; } .whatsapp-contact span { display:none; } .contact-actions .button { width:100%; justify-content:center; } }
@media(prefers-reduced-motion:reduce) { .whatsapp-contact { transition:none; } }
