
:root{--bg:#f7f1e8;--paper:#fffaf3;--ink:#1b1b1b;--muted:#6b645d;--line:rgba(27,27,27,.12);--emerald:#0f5c56;--emerald-2:#083a36;--sand:#d7b98c;--coral:#c96d55;--white:#fff;--shadow:0 18px 60px rgba(15,92,86,.18);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Manrope',sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--bg),#fbf7f0 40%,var(--paper) 100%)}a{text-decoration:none;color:inherit}img{display:block;max-width:100%;height:auto}.font-display,h1,h2,h3{font-family:'Cormorant Garamond',serif}.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:16px;top:16px;z-index:1000;background:#fff;padding:10px 14px;border-radius:12px}
.nav-shell{position:fixed;top:0;left:0;right:0;z-index:90;background:rgba(8,32,30,.34);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.12)}.nav-wrap{max-width:1200px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;color:#fff;min-width:0}.brand-badge{width:46px;height:46px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(215,185,140,.9),rgba(201,109,85,.7));color:#18322f;flex:none}.brand-text strong{display:block;font-size:1.2rem;line-height:1;font-family:'Cormorant Garamond',serif;white-space:nowrap}.brand-text span{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.75);white-space:nowrap}.nav-desktop{display:flex;align-items:center;gap:28px;color:#fff;font-size:.95rem;font-weight:700}.nav-link{position:relative}.nav-link:after{content:'';position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:var(--coral);transform:scaleX(0);transform-origin:left;transition:.3s}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}
.mobile-toggle{display:none;width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);align-items:center;justify-content:center;flex:none;position:relative}.mobile-toggle i,.mobile-toggle i:before,.mobile-toggle i:after{content:'';position:absolute;width:18px;height:2px;background:#fff;border-radius:10px;transition:.3s}.mobile-toggle i:before{transform:translateY(-6px)}.mobile-toggle i:after{transform:translateY(6px)}.mobile-toggle.open i{background:transparent}.mobile-toggle.open i:before{transform:rotate(45deg)}.mobile-toggle.open i:after{transform:rotate(-45deg)}.mobile-panel{display:none;background:rgba(8,32,30,.97);border-top:1px solid rgba(255,255,255,.08)}.mobile-panel.show{display:block}.mobile-inner{max-width:1200px;margin:0 auto;padding:6px 20px 18px}.mobile-panel a{display:block;padding:15px 0;color:#fff;font-weight:700;border-bottom:1px solid rgba(255,255,255,.08)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:32px}.hero-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);position:relative}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,58,54,.08),rgba(8,58,54,.7) 78%,rgba(8,58,54,.92))}.ribbon{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(8px);font-size:12px;letter-spacing:.18em;text-transform:uppercase}.section-shell{padding:96px 0}.eyebrow{letter-spacing:.25em;text-transform:uppercase;font-size:12px;color:var(--coral);font-weight:800}.section-title{font-size:clamp(2.6rem,5vw,4.8rem);line-height:.95}.editorial-panel{background:linear-gradient(180deg,var(--paper),#fff);border:1px solid rgba(27,27,27,.07);border-radius:32px;box-shadow:0 18px 45px rgba(0,0,0,.06)}.card-tilt{transition:transform .45s ease, box-shadow .45s ease}.card-tilt:hover{transform:translateY(-10px);box-shadow:0 25px 70px rgba(15,92,86,.18)}.media-wrap{overflow:hidden}.media-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.card-tilt:hover .media-wrap img,.hero-card:hover img{transform:scale(1.08)}.solid-btn,.outline-btn,.ghost-btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:800;transition:.35s}.solid-btn{background:linear-gradient(135deg,var(--emerald),var(--emerald-2));color:#fff;box-shadow:0 16px 40px rgba(15,92,86,.25)}.outline-btn{border:1px solid rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.06)}.ghost-btn{border:1px solid var(--line);background:#fff}.mosaic{display:grid;grid-template-columns:1.2fr .8fr .9fr;grid-template-rows:280px 280px;gap:18px}.mosaic .a{grid-row:1/3}.mosaic .b{grid-column:2/4}.price-chip{background:linear-gradient(135deg,var(--sand),#ecd6ac);color:#54371e;border-radius:999px;padding:8px 12px;font-weight:800;font-size:13px}.offer-panel{background:radial-gradient(circle at top right, rgba(199,161,91,.26), transparent 35%),linear-gradient(135deg,#fff7eb,#f8efe4);border:1px solid rgba(27,27,27,.08);border-radius:36px;overflow:hidden;box-shadow:var(--shadow)}.reveal{opacity:0;transform:translateY(36px);transition:opacity .8s ease, transform .8s ease}.reveal.show{opacity:1;transform:none}.grid-cards,.dest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.testimonial-track{display:flex;transition:transform .55s ease}.testimonial{min-width:100%}.footer-shell{background:linear-gradient(180deg,#102927,#081715);color:#dbe7e3}.input{width:100%;min-height:52px;border-radius:18px;border:1px solid rgba(27,27,27,.12);background:rgba(255,255,255,.72);padding:14px 16px;outline:none}textarea.input{min-height:150px}.filter-btn.active{background:var(--emerald);color:#fff;border-color:var(--emerald)}.page-hero{min-height:72vh;position:relative;overflow:hidden}.page-hero .bg,.page-hero .shade{position:absolute;inset:0}.page-hero .bg img{width:100%;height:100%;object-fit:cover}.page-hero .shade{background:linear-gradient(180deg,rgba(8,58,54,.28),rgba(8,58,54,.88))}.top-pad{padding-top:124px}
@media (max-width:1024px){.hero-grid,.grid-cards,.dest-grid{grid-template-columns:1fr}.mosaic{grid-template-columns:1fr 1fr;grid-template-rows:240px 240px 240px}.mosaic .a,.mosaic .b{grid-row:auto;grid-column:auto}}
@media (max-width:768px){.nav-desktop{display:none}.mobile-toggle{display:flex}.nav-wrap{padding:12px 16px}.brand-badge{width:40px;height:40px;border-radius:14px}.brand-text strong{font-size:1rem}.brand-text span{font-size:.58rem}.section-shell{padding:72px 0}.mosaic{grid-template-columns:1fr;grid-template-rows:220px 220px 220px 220px}.hero-grid{gap:20px}.top-pad{padding-top:96px}.page-hero{min-height:58vh}}
