:root { --ad-ink:#101827; --ad-navy:#111c30; --ad-gold:#d8b36a; --ad-gold-light:#efd394; }
body { color:var(--ad-ink); font-family:"Avenir Next",Avenir,Inter,"Helvetica Neue",Arial,sans-serif; font-kerning:normal; text-rendering:optimizeLegibility; }
h1,h2,h3,.section-title,.page-hero h1,.hero h1,.cta-box h2 { font-family:Georgia,"Times New Roman",serif; font-weight:500; letter-spacing:-.035em; }
.site-header { border-bottom:1px solid rgba(216,179,106,.12); box-shadow:0 12px 36px rgba(0,0,0,.16); backdrop-filter:blur(18px); }
.site-nav a { letter-spacing:.025em; }
.header-btn,.hero-btn,.submit-btn,.contact-form button { border-radius:10px; box-shadow:0 12px 28px rgba(216,179,106,.14); }
.page-hero { border-bottom:1px solid rgba(216,179,106,.1); }
.page-hero h1 { font-size:clamp(44px,6vw,76px); line-height:1; }
.page-hero p { max-width:760px; font-size:17px; line-height:1.75; }
.destination-card,.feature-card,.hot-tour-card,.contact-card,.booking-card,.about-card,.search-mobile-card,.villa-card { border:1px solid rgba(216,179,106,.16); box-shadow:0 22px 55px rgba(4,9,18,.18); }
.destination-card,.feature-card,.hot-tour-card,.contact-card,.about-card { transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.destination-card:hover,.feature-card:hover,.hot-tour-card:hover,.contact-card:hover,.about-card:hover { transform:translateY(-5px); border-color:rgba(216,179,106,.34); box-shadow:0 28px 64px rgba(4,9,18,.24); }
input,select,textarea,button { font-family:inherit; }
@media (max-width:768px) { .page-hero h1 { font-size:42px; } .page-hero p { font-size:15px; } }
