
:root{--navy:#082f4f;--gold:#c6922e;--cream:#f7f4ed;--ink:#17212a;--muted:#66717a;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);background:#fff}
img{display:block;max-width:100%}a{text-decoration:none;color:inherit}
.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:10px 5vw;position:sticky;top:0;background:rgba(255,255,255,.96);z-index:20;border-bottom:1px solid #eee}
.brand img{width:175px;height:64px;object-fit:contain}.site-header nav{display:flex;gap:28px;align-items:center;font-weight:600;font-size:14px}
.nav-cta{background:var(--navy);color:#fff;padding:13px 18px;border-radius:999px}.menu{display:none;border:0;background:transparent;font-size:28px}
.hero{height:76vh;min-height:590px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,26,43,.78),rgba(3,26,43,.26) 58%,rgba(3,26,43,.06))}
.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-50%);max-width:740px}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:700;color:#f0c46b}.eyebrow.dark{color:#9c6b15}
h1,h2,h3{font-family:"Playfair Display",serif;margin:.3em 0}h1{font-size:clamp(48px,7vw,92px);line-height:.95}h2{font-size:clamp(34px,4.3vw,58px);line-height:1.06}h3{font-size:27px}
.hero-copy p{font-size:22px;margin:16px 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:700;border:1px solid transparent;cursor:pointer}
.primary{background:var(--gold);color:#102436}.ghost{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}
.intro,.guide-feature,.section,.contact{padding:90px 7vw}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;background:var(--cream)}.intro-copy{font-size:18px;line-height:1.8;color:#4a555e}
.guide-feature{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.guide-image img{width:100%;height:620px;object-fit:cover;border-radius:24px}.guide-copy p{font-size:18px;line-height:1.8;color:#59636b}.text-link{font-weight:700;color:var(--navy)}
.section-heading{max-width:760px;margin-bottom:42px}.section-heading p{font-size:18px;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 18px 55px rgba(12,36,56,.10)}.card img{height:280px;width:100%;object-fit:cover}.card div{padding:24px}.card span{font-size:11px;letter-spacing:.15em;font-weight:700;color:#9c6b15}.card p{color:var(--muted);line-height:1.65}
.banner{position:relative;min-height:560px;color:white}.banner>img{width:100%;height:560px;object-fit:cover}.banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,37,61,.85),rgba(5,37,61,.13))}
.banner-copy{position:absolute;z-index:2;left:7vw;top:50%;transform:translateY(-50%);max-width:620px}.banner-copy p{font-size:18px;line-height:1.7}
.destinations{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.destinations div{padding:24px;border:1px solid #e4e6e8;border-radius:16px}.destinations strong{display:block;font-family:"Playfair Display",serif;font-size:24px;color:var(--navy);margin-bottom:10px}.destinations span{color:var(--muted);line-height:1.55}
.gallery-section{padding:90px 0;background:var(--cream)}.gallery-section .section-heading{padding:0 7vw}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gallery img{width:100%;height:310px;object-fit:cover}
.contact{background:var(--navy);color:white;display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw}.contact p{font-size:18px;line-height:1.7;color:#d5dde3}.contact-lines{display:flex;flex-direction:column;gap:9px;margin-top:28px;font-weight:600}
form{background:white;color:var(--ink);padding:30px;border-radius:20px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-weight:600;font-size:13px;margin-bottom:16px}input,textarea{width:100%;padding:13px;border:1px solid #d7dce0;border-radius:10px;margin-top:7px;font:inherit}textarea{resize:vertical}form small{display:block;color:#77818a;margin-top:12px;line-height:1.5}
footer{padding:34px 7vw;text-align:center;background:#051d30;color:#c9d2d9}footer img{width:180px;height:90px;object-fit:contain;margin:0 auto 12px;background:white;border-radius:10px;padding:4px}footer p{margin:7px 0;font-size:13px}
@media(max-width:900px){
.site-header nav{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:24px 5vw;flex-direction:column;align-items:flex-start;box-shadow:0 10px 30px rgba(0,0,0,.08)}.site-header nav.open{display:flex}.menu{display:block}
.hero{height:70vh;min-height:520px}.intro,.guide-feature,.contact{grid-template-columns:1fr}.guide-image img{height:460px}.cards,.destinations{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
.site-header{height:76px}.brand img{width:140px;height:54px}.site-header nav{top:76px}.hero-copy{left:6vw;right:6vw}.hero-copy p{font-size:18px}.intro,.guide-feature,.section,.contact{padding:68px 6vw}.cards,.destinations{grid-template-columns:1fr}.gallery img{height:230px}.two{grid-template-columns:1fr}.banner>img{height:540px}.banner{min-height:540px}
}
