:root{--cream:#EAE1CB;--sand:#D1BE97;--gold:#D2A432;--slate:#797E8C;--brown:#563B1E;--orange:#BC5727;--blue:#A8C9E8;--blue-tint:#E2E6E3;--ink:#563B1E;--taupe:#563B1E;--light:#F3EDDF;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:300 17px/1.7 var(--sans)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.15;margin:.2em 0 .5em}
h2{font-size:clamp(2rem,4vw,2.8rem)}a{color:inherit}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:99}
.wrap{max-width:1120px;margin:auto;padding:5rem 1.5rem}.narrow{max-width:760px}.center{text-align:center}
.eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.78rem;font-weight:500;color:var(--brown);margin:0}.eyebrow::after{content:"";display:block;width:2.5rem;height:2px;background:var(--orange);margin:.6rem 0 0}.center .eyebrow::after,.eyebrow.center::after,.hero .eyebrow::after{margin:.6rem auto 0}
.nav{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:rgba(234,225,203,.95);backdrop-filter:blur(6px);border-bottom:1px solid var(--sand)}
.logo{font-family:var(--serif);font-size:1.5rem;text-decoration:none;letter-spacing:.12em;text-transform:uppercase}
.nav nav{display:flex;gap:1.8rem;align-items:center}.nav nav a{text-decoration:none;font-size:.9rem;letter-spacing:.1em;text-transform:uppercase}
.menu-btn{display:none;background:none;border:0;font-size:1.6rem;cursor:pointer;color:var(--ink)}
.btn,.btn-sm{display:inline-block;background:var(--ink);color:var(--cream)!important;text-decoration:none;text-transform:uppercase;letter-spacing:.2em;font:400 .85rem var(--sans);padding:1rem 2.2rem;border:1px solid var(--ink);cursor:pointer;transition:.3s}
.btn-sm{padding:.55rem 1.1rem;letter-spacing:.12em}
.btn:hover,.btn-sm:hover{background:var(--orange);border-color:var(--orange);color:#fff!important}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.hero{min-height:min(88vh,760px);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:4rem 1.5rem;color:var(--cream);
background:linear-gradient(rgba(86,59,30,.5),rgba(86,59,30,.65)),var(--hero-img,radial-gradient(ellipse at 80% 15%,rgba(168,201,232,.35),transparent 55%),radial-gradient(ellipse at 20% 20%,rgba(210,164,50,.4),transparent 60%),linear-gradient(160deg,#563B1E 0%,#797E8C 60%,#D1BE97 100%)) center/cover}
.hero h1{font-size:clamp(3rem,9vw,6.5rem);letter-spacing:.12em;text-transform:uppercase;margin:.3em 0 .1em}
.hero .tagline{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,3vw,1.9rem);margin:0 0 2.5rem}
.hero .eyebrow{color:var(--gold)}.hero .eyebrow::after{background:var(--gold)}.hero .btn{background:var(--cream);color:var(--ink)!important;border-color:var(--cream)}.hero .btn:hover{background:var(--orange);border-color:var(--orange);color:#fff!important}
.lead{font-family:var(--serif);font-size:clamp(1.4rem,2.6vw,2rem);text-align:center;max-width:820px;margin:auto;line-height:1.5}
.benefits{background:var(--sand)}.intro{background:none}.services-band{background:linear-gradient(180deg,var(--cream),#DCE3E6 100%);border-top:1px solid var(--blue)}.two{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem;align-items:center}
.perks{list-style:none;padding:0;margin:0}.perks li{padding:1rem 0 1rem 2rem;border-bottom:1px solid rgba(86,59,30,.25);position:relative}
.perks li::before{content:"✦";position:absolute;left:0;color:var(--orange)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:2.5rem}
.card{min-height:230px;padding:1.6rem;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;transition:transform .4s;background:linear-gradient(to top,rgba(86,59,30,.92),rgba(86,59,30,.15) 70%),var(--img,var(--grad)) center/cover;border-bottom:3px solid var(--gold)}
.card:nth-child(4),.card:nth-child(6){border-bottom-color:var(--blue)}.card:hover{transform:translateY(-4px)}.card h3{font-size:1.6rem;margin:0 0 .3rem}.card p{margin:0;font-size:.92rem;opacity:.9}
.g1{--grad:linear-gradient(160deg,#D2A432,#563B1E)}.g2{--grad:linear-gradient(160deg,#D1BE97,#797E8C)}.g3{--grad:linear-gradient(160deg,#797E8C,#563B1E)}.g4{--grad:linear-gradient(160deg,#A8C9E8,#797E8C 55%,#3f4350)}.g5{--grad:linear-gradient(160deg,#D1BE97,#BC5727)}.g6{--grad:linear-gradient(160deg,#A8C9E8,#797E8C)}.g7{--grad:linear-gradient(160deg,#BC5727,#563B1E)}.g8{--grad:linear-gradient(160deg,#D2A432,#BC5727)}
.about{background:var(--ink);color:var(--cream)}.about{background:var(--brown)}.about .eyebrow{color:var(--gold)}.about .eyebrow::after{background:var(--orange)}
form{margin-top:2rem}.row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
label{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:1.25rem}
input,select,textarea{display:block;width:100%;margin-top:.4rem;padding:.8rem;font:300 1rem var(--sans);background:var(--light);border:1px solid var(--slate);color:var(--ink)}
.err{color:#9b2c2c;min-height:1.2em}form .btn{width:100%}
.footer{text-align:center;padding:4rem 1.5rem;background:var(--sand);border-top:3px solid var(--gold)}.small{font-size:.8rem;color:var(--taupe);letter-spacing:.08em}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr;gap:2rem}}
@media(max-width:640px){.menu-btn{display:block}.nav nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--cream);padding:1.5rem;border-bottom:1px solid var(--sand)}.nav nav.open{display:flex}
.grid,.row{grid-template-columns:1fr}.card{min-height:170px}.wrap{padding:3.5rem 1.25rem}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ===== PHOTO SLOTS: uncomment & set paths when photos arrive (e.g. images/hero.jpg) =====
.hero{--hero-img:url('images/hero.jpg')}
.g1{--img:url('images/bespoke-travel.jpg')}   .g2{--img:url('images/hotels.jpg')}
.g3{--img:url('images/villas.jpg')}           .g4{--img:url('images/yachts.jpg')}
.g5{--img:url('images/wellness.jpg')}         .g6{--img:url('images/aviation.jpg')}
.g7{--img:url('images/dining.jpg')}           .g8{--img:url('images/events.jpg')}
*/

.perks li::before{color:var(--orange)}.perks li{border-bottom-color:rgba(86,59,30,.25)}
.about{background:var(--brown);border-top:3px solid var(--blue)}.about .eyebrow{color:var(--gold)}.about .eyebrow::after{background:var(--blue)}
.footer{background:var(--sand);border-top:3px solid var(--blue)}
input,select,textarea{border-color:var(--slate)}
/* Hero photo (enabled) */
.hero{background:radial-gradient(ellipse 60% 45% at 50% 52%,rgba(30,40,48,.42),transparent 75%),linear-gradient(180deg,rgba(86,59,30,.28) 0%,rgba(30,45,55,.12) 45%,rgba(86,59,30,.38) 100%),url('images/hero.jpg') center 60%/cover,#797E8C}
.hero h1,.hero .tagline,.hero .eyebrow{text-shadow:0 2px 18px rgba(20,25,30,.55)}
/* Perks photo */
.perks-layout{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:4rem;align-items:center}
.perks-img{margin:0;padding:10px;border:1px solid var(--gold);border-radius:4px}
.perks-img img{display:block;width:100%;height:auto;aspect-ratio:736/981;object-fit:cover;border-radius:2px}
.perks-text p{margin-bottom:1.5rem}
@media(max-width:900px){.perks-layout{grid-template-columns:1fr;gap:2.5rem}.perks-img{max-width:440px;margin:0 auto}}
/* About portrait */
.about-layout{display:grid;grid-template-columns:340px 1fr;gap:4rem;align-items:center;max-width:960px}
.about-img{margin:0;padding:8px;border:1px solid var(--gold);border-radius:4px}
.about-img img{display:block;width:100%;height:auto;border-radius:2px}
.about-text .eyebrow::after{margin:.6rem 0 0}
@media(max-width:760px){.about-layout{grid-template-columns:1fr;gap:2rem;text-align:center}.about-img{max-width:300px;margin:0 auto}.about-text .eyebrow::after{margin:.6rem auto 0}}
/* Partner strip */
.partners{background:var(--cream);border-top:1px solid rgba(86,59,30,.15)}
.partners .wrap{padding-top:4rem;padding-bottom:4rem}
.partner-list{list-style:none;padding:0;margin:2rem auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:1.4rem 2.6rem;max-width:1000px}
.partner-list li{font-family:var(--serif);font-size:1.35rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brown);white-space:nowrap}
.partner-list li:not(:last-child)::after{content:"·";color:var(--gold);margin-left:2.6rem}
.partner-note{text-align:center;font-size:.8rem;letter-spacing:.06em;margin-top:2rem;color:var(--brown)}
@media(max-width:640px){.partner-list{gap:.9rem 1.4rem}.partner-list li{font-size:1.05rem}.partner-list li::after{display:none}}
/* Plan My Trip background */
.inquire input,.inquire select,.inquire textarea{background:rgba(243,237,223,.9)}
.inquire{position:relative}
/* Partner logo grid */
.partners{background:linear-gradient(180deg,var(--cream),#E3D7BC)}
.partner-grid{list-style:none;padding:0;margin:2.5rem auto 0;max-width:1080px;display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid rgba(86,59,30,.14);border-left:1px solid rgba(86,59,30,.14)}
.partner-grid li{display:flex;align-items:center;justify-content:center;height:120px;padding:1.2rem;border-right:1px solid rgba(86,59,30,.14);border-bottom:1px solid rgba(86,59,30,.14)}
.partner-grid img{max-width:100%;max-height:62px;width:auto;height:auto;object-fit:contain;opacity:.92;transition:opacity .3s}
.partner-grid li:hover img{opacity:1}
@media(max-width:1000px){.partner-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:640px){.partner-grid{grid-template-columns:repeat(3,1fr)}.partner-grid li{height:92px;padding:.8rem}.partner-grid img{max-height:46px}}
.js-anim .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;transition-delay:calc(var(--i,0)*55ms)}
.js-anim .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js-anim .reveal{opacity:1;transform:none;transition:none}}
/* Free-floating logos (no cells) */
.partner-grid{border:0;gap:2.2rem 2.5rem;margin-top:3rem}
.partner-grid li{border:0;height:96px;padding:.4rem}
@media(max-width:640px){.partner-grid{gap:1.4rem 1.2rem}.partner-grid li{height:72px;padding:.2rem}}
/* Partners as continuation of perks band */
.partners{background:var(--sand);border-top:0}
.partners .wrap{padding-top:0;padding-bottom:4.5rem}
.partner-grid{margin-top:0;padding-top:3rem;border-top:1px solid rgba(86,59,30,.2)!important}
.hero h1{margin-top:0}
.partner-grid{grid-template-columns:repeat(6,1fr)}
@media(max-width:1000px){.partner-grid{grid-template-columns:repeat(3,1fr)}}
/* Begin Your Journey: deep water background */
.inquire-band{background:linear-gradient(rgba(20,34,44,.45),rgba(20,34,44,.6)),url('images/plan-water.jpg') center/cover;border-top:3px solid var(--gold)}
.inquire,.inquire h2,.inquire p,.inquire label{color:var(--cream)}
.inquire .eyebrow{color:var(--gold)}.inquire .eyebrow::after{background:var(--blue)}
.inquire h2{text-shadow:0 2px 14px rgba(0,0,0,.35)}
.inquire input,.inquire select,.inquire textarea{background:rgba(243,237,223,.94);border-color:rgba(234,225,203,.6);color:var(--brown)}
.inquire .btn{background:var(--cream);border-color:var(--cream);color:var(--brown)!important}
.inquire .btn:hover{background:var(--orange);border-color:var(--orange);color:#fff!important}
.inquire .err{color:#F2C1A8}
/* Inquiry form v2 */
.inquire fieldset{border:0;margin:0;padding:0;min-width:0}
.inquire .group{margin-top:2.4rem;padding-top:2rem;border-top:1px solid rgba(234,225,203,.25)}
.inquire .group[hidden]{display:none}
.inquire legend{font-family:var(--serif);font-size:1.6rem;color:var(--cream);margin-bottom:1.2rem;padding:0}
.inquire .svc legend{display:block;width:100%;text-align:center;font-size:1.3rem;font-style:italic}
.pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}
.pill,.chip{position:relative;margin:0;cursor:pointer;text-transform:none;letter-spacing:.04em}
.pill input,.chip input{position:absolute;opacity:0;width:1px;height:1px}
.pill span{display:block;padding:.85rem 1.6rem;border:1px solid rgba(234,225,203,.7);border-radius:999px;font-size:.85rem;letter-spacing:.16em;text-transform:uppercase;transition:.25s}
.pill input:checked+span{background:var(--cream);color:var(--brown);border-color:var(--cream)}
.pill:hover span{border-color:var(--gold)}
.inquire .sub legend{font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.7rem}
.inquire .sub{margin-bottom:1.25rem}
.chips{display:flex;flex-wrap:wrap;gap:.55rem}
.chip span{display:block;padding:.5rem 1rem;border:1px solid rgba(234,225,203,.5);border-radius:999px;font-size:.88rem;transition:.2s}
.chip input:checked+span{background:rgba(210,164,50,.9);border-color:var(--gold);color:var(--brown)}
.pill input:focus-visible+span,.chip input:focus-visible+span{outline:2px solid var(--gold);outline-offset:3px}
.row.three{grid-template-columns:1fr 1.3fr 1.3fr}
.inquire .btn{margin-top:1rem}
@media(max-width:640px){.row.three{grid-template-columns:1fr}.pill span{padding:.75rem 1.1rem;font-size:.75rem}.pills{flex-direction:column;align-items:stretch;text-align:center}}
