/*
Luxury styles for Abu Dhabi Yacht Rentals theme v3
*/
:root{
  --bg:#0A4F8A;
  --bg-soft:#0E6BB3;
  --bg-card:rgba(255,255,255,.10);
  --line:rgba(167,220,255,.26);
  --text:#f7fbfd;
  --muted:#CFEAFA;
  --gold:#76D6FF;
  --gold-soft:#EAF8FF;
  --accent:#7DA4C7;
  --dark-grey:#33485C;
  --white:#ffffff;
  --shadow:0 20px 60px rgba(0,0,0,.20);
  --radius:24px;
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Inter',sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top right, rgba(118,214,255,.28), transparent 26%),
    radial-gradient(circle at bottom left, rgba(207,234,250,.14), transparent 20%),
    linear-gradient(180deg,#072D4F 0%, #0A4F8A 52%, #0E6BB3 100%);
  line-height:1.65;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p{margin:0 0 1rem}
h1,h2,h3,h4{
  margin:0 0 1rem;
  font-family:'Cormorant Garamond',serif;
  line-height:1.02;
  letter-spacing:.01em;
}
h1{font-size:clamp(3rem,6vw,5.6rem)}
h2{font-size:clamp(2.2rem,4vw,3.8rem)}
h3{font-size:clamp(1.5rem,2.3vw,2.2rem)}
.container{width:min(var(--container),calc(100% - 32px));margin:0 auto}
.content-narrow{max-width:820px;margin-inline:auto}
.center{text-align:center}
.align-center{align-items:center}
.justify-end{justify-content:flex-end}
.section{padding:92px 0}
.section-soft{background:linear-gradient(180deg,rgba(207,234,250,.12),rgba(255,255,255,.04))}
.section-dark{background:linear-gradient(180deg,rgba(51,72,92,.24),rgba(10,79,138,.12))}
.page-hero{padding:74px 0 30px}
.compact-hero{padding-top:72px;padding-bottom:10px}
.eyebrow,.section-kicker,.panel-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--gold-soft);
  font-size:.84rem;
  text-transform:uppercase;
  letter-spacing:.26em;
  margin-bottom:18px;
}
.eyebrow:before,.section-kicker:before,.panel-kicker:before{
  content:"";
  width:42px;height:1px;background:linear-gradient(90deg,var(--gold),transparent);
}
.site-header{
  position:sticky;top:0;z-index:30;
  backdrop-filter:blur(16px);
  background:rgba(10,79,138,.34);
  border-bottom:1px solid transparent;
  transition:.25s ease;
}
.site-header.is-scrolled{
  background:rgba(7,45,79,.88);
  border-color:rgba(255,255,255,.08);
  box-shadow:0 12px 40px rgba(0,0,0,.24);
}
.header-inner{
  min-height:86px;
  display:flex;align-items:center;justify-content:space-between;gap:28px
}
.custom-logo{max-height:56px;width:auto}
.site-title{
  font-size:1.45rem;font-weight:700;letter-spacing:.04em
}
.main-nav{margin-left:auto}
.menu,.footer-menu{
  list-style:none;margin:0;padding:0;display:flex;gap:24px;flex-wrap:wrap
}
.menu a,.footer-menu a{color:rgba(247,251,253,.84);font-weight:500}
.menu a:hover,.footer-menu a:hover{color:var(--white)}
.menu-toggle{
  display:none;background:none;border:none;padding:0;cursor:pointer;
  width:46px;height:46px;position:relative
}
.menu-toggle span{
  display:block;width:24px;height:2px;background:var(--white);margin:5px auto;border-radius:10px
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 24px;border-radius:999px;font-weight:700;
  transition:.2s ease;border:1px solid transparent;letter-spacing:.02em
}
.btn:hover{transform:translateY(-1px)}
.btn-primary:hover{background:linear-gradient(180deg,#98E4FF,#D7F3FF);box-shadow:0 18px 40px rgba(118,214,255,.36)}
.btn-outline:hover{border-color:rgba(118,214,255,.58);background:rgba(118,214,255,.14)}
.btn-gold:hover{background:rgba(118,214,255,.18);border-color:rgba(118,214,255,.32)}
.btn-primary{
  background:linear-gradient(180deg,#76D6FF,#BDEBFF);color:#06324e;box-shadow:0 14px 34px rgba(118,214,255,.30)
}
.btn-outline{
  border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.09);color:var(--white)
}
.btn-gold{
  background:rgba(118,214,255,.12);border:1px solid rgba(189,235,255,.28);color:var(--gold-soft)
}
.full{width:100%}
.hero{
  position:relative;overflow:hidden;padding:0;
  min-height:calc(100vh - 86px);
  display:flex;align-items:flex-end;
  background:linear-gradient(180deg,rgba(10,79,138,.14),rgba(7,45,79,.34));
}
.hero-media-wrap{position:absolute;inset:0;overflow:hidden}
.hero-video,
.hero-media-wrap:before{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
}
.hero-media-wrap:before{
  content:"";
  background:url('../images/hero-yacht-abu-dhabi.jpg') center/cover no-repeat;
}
.hero-video{z-index:1}
.hero-overlay{
  position:absolute;inset:0;z-index:2;
  background:
    linear-gradient(90deg,rgba(4,25,46,.78) 0%,rgba(8,48,84,.52) 44%,rgba(15,103,168,.18) 100%),
    linear-gradient(180deg,rgba(118,214,255,.08) 0%,rgba(7,45,79,.58) 100%);
  pointer-events:none
}
.hero-grid{
  position:relative;z-index:3;
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:34px;align-items:end
}
.hero-grid-minimal{min-height:calc(100vh - 86px);padding:130px 0 84px;grid-template-columns:minmax(0,740px)}
.hero-copy p{font-size:1.08rem;max-width:720px;color:#eff9ff}
.hero-copy-minimal h1{max-width:760px;text-wrap:balance;text-shadow:0 8px 28px rgba(4,25,46,.32)}
.hero-copy-minimal p{max-width:560px;font-size:1.08rem;color:rgba(245,252,255,.92)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 0}
.hero-pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.hero-pills span{
  padding:10px 16px;border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  color:var(--white);backdrop-filter:blur(8px);font-size:.94rem
}
.hero-stats{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;max-width:720px
}
.hero-stats div,.mini-card,.service-card,.stack-card,.testimonial-card,.contact-card,.contact-form-wrap,.highlight-card,.booking-side-panel{
  border-radius:var(--radius)
}
.hero-stats div{
  padding:18px 18px 16px;background:rgba(255,255,255,.10);border:1px solid rgba(189,235,255,.14)
}
.hero-stats strong{display:block;font-size:1.1rem;color:var(--gold-soft);margin-bottom:8px}
.hero-stats span{color:var(--muted);font-size:.95rem}
.glass-card{
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));
  backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:var(--shadow);
  border-radius:var(--radius)
}
.hero-panel{padding:28px}
.feature-list,.amenity-list,.spec-list{
  list-style:none;margin:0;padding:0;display:grid;gap:14px
}
.feature-list li,.amenity-list li{
  padding-left:24px;position:relative;color:#eff7fa
}
.feature-list li:before,.amenity-list li:before{
  content:"";position:absolute;left:0;top:.72em;width:10px;height:10px;border-radius:50%;
  background:linear-gradient(180deg,var(--gold-soft),var(--gold))
}
.quick-contact-box{
  margin-top:22px;padding:20px;border-radius:22px;background:rgba(4,25,46,.20);border:1px solid rgba(189,235,255,.12)
}
.quick-contact-box span{display:block;color:var(--muted);font-size:.9rem;margin-bottom:6px}
.quick-contact-box a{font-size:1.2rem;font-weight:700}
.section-intro{display:flex;flex-direction:column;gap:10px;max-width:780px;margin-bottom:34px}
.section-intro.compact{max-width:680px}
.section-intro p{color:var(--muted)}
.cards{display:grid;gap:22px}
.cards.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.mini-card,.service-card,.stack-card,.testimonial-card{
  padding:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.1)
}
.mini-card strong,.service-card h3{font-family:'Inter',sans-serif;font-size:1.08rem;margin-bottom:10px}
.mini-card span,.service-card p,.testimonial-card span{color:var(--muted)}
.two-col-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.stack-list{display:grid;gap:18px}
.stack-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.stack-card-head span{color:var(--gold-soft);font-weight:700}
.feature-checks{display:grid;gap:10px;margin:20px 0 24px}
.feature-checks span{
  padding:12px 14px;background:rgba(255,255,255,.10);border:1px solid rgba(189,235,255,.14);border-radius:16px
}
.card,.gallery-card,.faq-item,.booking-flow-shell,.quote-form-shell{
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);overflow:hidden
}
.card-media{position:relative;display:block;aspect-ratio:1.18/1;overflow:hidden}
.card-media img,.gallery-card img,.single-hero-image{width:100%;height:100%;object-fit:cover}
.card-media img,.gallery-card img{transition:transform .5s ease}
.card:hover .card-media img,.gallery-card:hover img{transform:scale(1.05)}
.card-badge{
  position:absolute;left:18px;top:18px;background:rgba(10,79,138,.88);
  color:var(--gold-soft);padding:8px 12px;border-radius:999px;font-size:.8rem;border:1px solid rgba(189,235,255,.25)
}
.card-body{padding:24px}
.meta-row,.price-row,.spec-pills,.booking-steps,.form-actions{
  display:flex;flex-wrap:wrap;gap:12px;align-items:center
}
.meta-row,.price-row{justify-content:space-between}
.meta-row span,.spec-pills span{
  color:var(--muted);font-size:.9rem;padding:9px 12px;background:rgba(255,255,255,.10);border-radius:999px;border:1px solid rgba(189,235,255,.12)
}
.spec-pills-large{margin:20px 0 24px}
.price-row strong{font-size:1.05rem;color:var(--gold-soft)}
.price-row a{color:var(--white);font-weight:700}
.testimonial-card p{font-size:1.04rem}
.stars{color:var(--gold-soft);letter-spacing:.18em;margin-bottom:14px}
.single-yacht-layout{display:grid;grid-template-columns:minmax(0,1.1fr) 380px;gap:30px;align-items:start}
.single-media-shell{aspect-ratio:1.55/1;overflow:hidden;border-radius:30px;box-shadow:var(--shadow)}
.premium-content{
  color:#eff7fa;font-size:1.02rem
}
.premium-content ul{padding-left:20px}
.amenity-panel,.booking-box,.cta-panel,.highlight-card,.booking-side-panel{padding:28px}
.spec-list li{
  display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)
}
.spec-list strong{color:var(--muted);font-weight:600}
.spec-list span{text-align:right}
.fleet-toolbar{padding:16px;margin-bottom:20px}
.filter-group{display:flex;flex-wrap:wrap;gap:12px}
.filter-btn{
  border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.09);color:var(--white);
  padding:12px 16px;border-radius:999px;cursor:pointer
}
.filter-btn.active,.filter-btn:hover{background:rgba(212,173,103,.16);border-color:rgba(212,173,103,.28);color:var(--gold-soft)}
.gallery-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gallery-card{position:relative;aspect-ratio:1/1}
.gallery-card-caption{
  position:absolute;left:14px;right:14px;bottom:14px;padding:14px 16px;
  background:rgba(8,98,124,.72);border:1px solid rgba(255,255,255,.08);border-radius:18px;backdrop-filter:blur(10px)
}
.gallery-card-caption strong{display:block}
.gallery-card-caption span{color:var(--muted);font-size:.92rem}
.faq-list{display:grid;gap:16px}
.faq-item{padding:0}
.faq-item summary{
  padding:20px 22px;cursor:pointer;font-weight:700;list-style:none
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item div{padding:0 22px 20px;color:var(--muted)}
.quote-form-shell,.booking-flow-shell{padding:28px}
.form-grid{display:grid;gap:16px;margin-bottom:16px}
.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
label span{
  display:block;font-size:.92rem;color:var(--muted);margin-bottom:9px
}
input,select,textarea{
  width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.09);color:var(--white);padding:15px 16px;font:inherit
}
select option{color:#111}
textarea{resize:vertical;min-height:120px}
.adyr-alert{
  padding:14px 16px;border-radius:16px;margin-bottom:18px;font-weight:600
}
.adyr-alert.success{background:rgba(44,162,95,.16);border:1px solid rgba(44,162,95,.28);color:#b9f3cf}
.adyr-alert.error{background:rgba(194,74,74,.16);border:1px solid rgba(194,74,74,.28);color:#ffd2d2}
.booking-steps{
  margin:18px 0 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))
}
.booking-steps .step{
  padding:16px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(189,235,255,.14)
}
.booking-steps strong{display:block;color:var(--gold-soft);margin-bottom:4px}
.booking-page-grid{align-items:start}
.contact-grid{align-items:start}
.site-footer{
  padding-top:64px;border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.18)
}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:28px;padding-bottom:32px}
.footer-grid p,.footer-grid a{color:var(--muted)}
.footer-grid a:hover{color:var(--white)}
.footer-bottom{padding:18px 0 30px;border-top:1px solid rgba(255,255,255,.08)}
.whatsapp-float{
  position:fixed;right:18px;bottom:18px;z-index:45;
  min-width:132px;padding:14px 18px;border-radius:999px;
  background:linear-gradient(180deg,#d4ad67,#c49a50);color:#191105;font-weight:800;
  box-shadow:0 18px 40px rgba(0,0,0,.28)
}
.pagination{margin-top:26px}
.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.pagination a,.pagination span{
  padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(189,235,255,.14)
}
.screen-reader-text{
  border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important
}
@media (max-width: 1080px){
  .hero-grid,.two-col-grid,.single-yacht-layout,.footer-grid{grid-template-columns:1fr}
  .cards.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 820px){
  .topbar{display:none}
  .menu-toggle{display:block}
  .main-nav{
    position:fixed;inset:86px 16px auto 16px;background:#091521;border:1px solid rgba(255,255,255,.08);
    border-radius:24px;padding:18px;display:none;box-shadow:var(--shadow)
  }
  .main-nav.is-open{display:block}
  .menu{flex-direction:column;gap:14px}
  .header-cta{display:none}
  .hero{padding:92px 0 74px}
  .hero-stats,.cards.three,.cards.two,.cards.four,.gallery-mosaic,.form-grid.two,.form-grid.three,.booking-steps{grid-template-columns:1fr}
  .hero-stats{display:grid}
  .site-header{top:0}
}

@media (max-width: 991px){
  .hero{min-height:auto}
  .hero-grid-minimal{min-height:auto;padding:138px 0 72px}
  .hero-copy-minimal h1{max-width:100%}
}
@media (max-width: 640px){
  .hero-grid-minimal{padding:124px 0 58px}
  .hero-pills span{font-size:.88rem}
}
