@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--wine:#402236;--wine2:#5b3048;--terra:#c86149;--cream:#f4eadc;--paper:#fffaf3;--sage:#71816e;--ink:#282522;--muted:#766e65;--line:#dfd2c2;--shadow:0 18px 55px #40223618}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 "DM Sans",sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.top{background:var(--wine);color:#f8eee7;font-size:12px}.top .wrap{display:flex;justify-content:space-between;gap:15px;padding:8px 0}.header{background:var(--paper);border-bottom:1px solid var(--line)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{font-size:24px;font-weight:800;color:var(--wine);letter-spacing:-1px}.logo b{color:var(--terra)}.logo small{display:block;font-size:8px;letter-spacing:2px;color:var(--muted);line-height:1;text-transform:uppercase}.links{display:flex;gap:23px;font-weight:700;font-size:14px}.links a{padding:28px 0;border-bottom:3px solid transparent}.links a.active,.links a:hover{color:var(--terra);border-color:var(--terra)}.phone{font-weight:800;color:var(--wine)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;padding:12px 19px;border-radius:4px;font-weight:800;cursor:pointer}.terra{background:var(--terra);color:#fff}.wine{background:var(--wine);color:#fff}.light{background:var(--cream);color:var(--wine);border:1px solid var(--line)}.menu{display:none;border:0;background:none;font-size:28px;color:var(--wine)}
h1,h2,h3{font-family:"Playfair Display",serif;line-height:1.12;font-weight:600}h1{font-size:clamp(45px,7vw,80px)}h2{font-size:clamp(34px,5vw,55px)}h3{font-size:24px}.eyebrow{font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:800;color:var(--terra)}.muted{color:var(--muted)}
/* home */
.homehero{display:grid;grid-template-columns:44% 56%;background:var(--cream);min-height:610px}.homecopy{padding:85px 7vw 75px 0;display:flex;align-items:center}.homecopy p{font-size:19px;color:#625a52}.heroimg{background:url('https://images.unsplash.com/photo-1494783367193-149034c05e8f?auto=format&fit=crop&w=1500&q=85') center/cover;min-height:610px;position:relative}.heroimg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--cream),transparent 22%)}.hero-card{position:absolute;z-index:2;right:30px;bottom:30px;background:var(--paper);padding:22px;width:285px;border-left:5px solid var(--terra);box-shadow:var(--shadow)}
.lookup{background:var(--wine);padding:17px 0;color:#fff}.lookup .wrap{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:10px}.lookup input,.lookup select{width:100%;background:#503044;color:#fff;border:1px solid #765568;padding:12px}.lookup label{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#dbcbd3;display:block}
.band{padding:105px 0}.leadgrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.lead{font:30px/1.4 "Playfair Display";color:var(--wine)}
.services{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:90px 1fr 1fr;gap:30px;padding:29px 0;border-bottom:1px solid var(--line)}.num{font:45px "Playfair Display";color:#b6a698}.service p{color:var(--muted)}
.mosaic{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:250px 250px;gap:12px}.mosaic div{background-size:cover;background-position:center}.big{grid-row:span 2}.sage{background:var(--sage);color:#fff;padding:100px 0}.sagegrid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.quote{font:38px/1.3 "Playfair Display"}.sage p{color:#edf1ea;font-size:18px}.cta{background:var(--terra);color:#fff;padding:90px 0}.ctain{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer{background:#241a21;color:#d9cdd2;padding-top:55px}.footgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px}.footer h4{color:#fff}.footer a{display:block;font-size:14px;margin:6px 0}.footer p{font-size:14px}.disclaimer{background:#1a1217;color:#eadfe4;font-size:11px;line-height:1.5;padding:15px 0}.footbottom{border-top:1px solid #493740;margin-top:35px;padding:16px 0;display:flex;justify-content:space-between;font-size:12px}.mobilecta{display:none}
/* about */
.aboutHero{padding:105px 0 80px;background:#e9e1d4}.aboutHero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.aboutStory{padding:90px 0}.aboutStory .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin-top:35px}.stat{padding:20px;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{font:44px "Playfair Display";color:var(--wine)}
/* contact */
.contactHero{background:var(--wine);color:#fff;padding:85px 0}.contactGrid{display:grid;grid-template-columns:.75fr 1.25fr;gap:25px;margin-top:45px;margin-bottom:100px}.contactInfo{background:var(--cream);padding:35px}.contactInfo .item{padding:18px 0;border-bottom:1px solid var(--line)}.contactInfo strong{display:block;color:var(--wine)}.formbox{background:#fff;padding:35px;box-shadow:var(--shadow)}form{display:grid;grid-template-columns:1fr 1fr;gap:14px}form .full{grid-column:1/-1}form input,form select,form textarea{width:100%;padding:13px;border:1px solid var(--line);background:var(--paper)}form textarea{min-height:150px}
/* destinations */
.destHero{padding:90px 0 45px;background:#e4eadf}.destGrid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px;padding:35px 0 100px}.dest{min-height:310px;background-size:cover;background-position:center;position:relative}.dest:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#21161ccc)}.dest span{position:absolute;z-index:2;left:20px;bottom:16px;color:#fff;font:29px "Playfair Display"}.dest:nth-child(1),.dest:nth-child(6){grid-column:span 7}.dest:nth-child(2),.dest:nth-child(7){grid-column:span 5}.dest:nth-child(3),.dest:nth-child(4),.dest:nth-child(5){grid-column:span 4}
/* faq */
.faqHero{text-align:center;padding:90px 0;background:var(--cream)}.faqs{max-width:850px;margin:60px auto 100px}.faq{border-top:1px solid var(--line)}.faq button{width:100%;border:0;background:none;padding:23px 0;text-align:left;font-weight:700;font-size:18px;color:var(--wine);display:flex;justify-content:space-between}.answer{display:none;color:var(--muted);padding:0 30px 22px 0}.faq.open .answer{display:block}
/* legal */
.legalHero{padding:85px 0;background:#2d1825;color:#fff}.legalLayout{display:grid;grid-template-columns:230px 1fr;gap:65px;padding:75px 0 100px}.legalNav{border-left:3px solid var(--terra);padding-left:18px;height:max-content}.legalNav a{display:block;padding:8px 0;color:var(--muted);font-weight:700}.legalContent{max-width:820px}.legalContent h2{font-size:31px;margin-top:40px}.legalContent p,.legalContent li{color:#625d57}
/* responsive */
@media(max-width:1000px){.links{gap:12px}.phone{display:none}.lookup .wrap{grid-template-columns:1fr 1fr}.footgrid{grid-template-columns:1fr 1fr}.homehero{grid-template-columns:1fr}.homecopy{padding:70px 0 45px}.heroimg{min-height:430px}.service{grid-template-columns:70px 1fr}.service p{grid-column:2}.aboutHero .wrap,.aboutStory .wrap,.leadgrid,.sagegrid{grid-template-columns:1fr;gap:35px}}
@media(max-width:760px){body{font-size:16px;padding-bottom:67px}.wrap{width:calc(100% - 28px)}.top .wrap{justify-content:center;text-align:center}.top .wrap span{display:none}.top .wrap span:first-child{display:block}.nav{height:70px}.links{display:none}.menu{display:block}.logo{font-size:21px}.homecopy{padding:60px 0 40px}.homecopy h1{font-size:47px}.heroimg{min-height:340px}.hero-card{right:14px;bottom:14px;width:245px}.lookup .wrap{grid-template-columns:1fr}.lookup input,.lookup select{min-height:47px}.band{padding:70px 0}.leadgrid{gap:20px}.lead{font-size:27px}.service{grid-template-columns:45px 1fr;gap:13px}.service p{grid-column:2}.service h3{font-size:21px}.mosaic{grid-template-columns:1fr 1fr;grid-template-rows:190px 190px}.quote{font-size:29px}.ctain{display:block}.ctain .btn{margin-top:15px}.aboutHero{padding:65px 0}.contactHero{padding:65px 0}.contactGrid{grid-template-columns:1fr;margin-top:0;padding:45px 0 75px}.form{grid-template-columns:1fr}.form .full{grid-column:auto}.destGrid{display:grid;grid-template-columns:1fr;padding-bottom:70px}.dest,.dest:nth-child(n){grid-column:auto;min-height:275px}.faqHero{padding:65px 0}.faqs{margin:45px auto 70px}.legalLayout{grid-template-columns:1fr;gap:30px;padding:55px 0 75px}.legalNav{position:static}.footgrid{grid-template-columns:1fr 1fr}.footbottom{display:block}.mobilecta{display:flex;position:fixed;z-index:99;left:0;right:0;bottom:0;background:#fff;padding:7px;gap:7px;box-shadow:0 -8px 25px #0002}.mobilecta a{flex:1;text-align:center;padding:10px 4px;border-radius:3px;font-size:13px;font-weight:800}.mobilecta a:first-child{background:var(--terra);color:#fff}.mobilecta a:last-child{background:var(--wine);color:#fff}}

/* Additional production responsive fixes */
@media (max-width:760px){
  .header{position:relative}
  .links.mobile-nav{display:flex!important;position:absolute;left:14px;right:14px;top:70px;z-index:80;
    background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);
    padding:14px;gap:0;flex-direction:column}
  .links.mobile-nav a{padding:11px 8px;border-bottom:1px solid var(--line)}
  .links.mobile-nav a:last-child{border-bottom:0}
  .hero-card{max-width:calc(100% - 28px)}
  .lookup{position:relative}
  .lookup .wrap{width:calc(100% - 24px)}
  .lookup .btn{min-height:48px}
  .legalContent{min-width:0}
  .legalContent h2{font-size:27px;line-height:1.2;margin-top:34px}
  .legalContent h3{font-size:21px}
  .legalContent p,.legalContent li{font-size:15.5px;line-height:1.75}
  .legalNav{background:var(--cream);padding:15px 15px 15px 18px}
  .legalNav a{font-size:14px}
  .footgrid{gap:20px}
}

/* Header mobile CTA fix */
.nav > div:last-of-type{display:flex;align-items:center;gap:10px;min-width:0}
.nav > div:last-of-type .btn{white-space:nowrap;flex:0 0 auto}
@media(max-width:760px){
  .nav{height:70px;gap:8px}
  .logo{font-size:20px;line-height:1;white-space:nowrap;min-width:0;flex:1 1 auto}
  .logo small{font-size:7px;letter-spacing:1.6px;margin-top:4px}
  .nav > div:last-of-type{flex:0 0 auto;gap:0}
  .nav > div:last-of-type .phone{display:none}
  .nav > div:last-of-type .btn{padding:10px 12px;font-size:13px;line-height:1.15;min-height:40px;border-radius:4px}
  .menu{flex:0 0 36px;width:36px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;font-size:25px}
}
@media(max-width:390px){
  .nav{gap:5px}
  .logo{font-size:18px}
  .logo small{font-size:6.5px;letter-spacing:1.25px}
  .nav > div:last-of-type .btn{padding:9px 10px;font-size:12px}
  .menu{flex-basis:32px;width:32px;font-size:23px}
}
