/* ALT Site — design system on top of Flatsome. Warm dark palette from the approved mock-up. */
:root{
  --alt-bg:#141110;--alt-panel:#2B231F;--alt-panel2:#3A2F29;--alt-line:#4A3D35;--alt-line2:#5A4A40;
  --alt-text:#F2EEE7;--alt-muted:#C2B1A2;--alt-gold:#F2C46D;--alt-gold-ink:#1A1408;
  --alt-cream:#F3E7DA;--alt-tile:#F8E6D8;--alt-ink:#1E1712;--alt-ink-muted:#6B5646;--alt-cream-line:#E3D2C1;
  --alt-serif:"Cormorant Garamond",Georgia,serif;--alt-sans:"Manrope",system-ui,-apple-system,sans-serif;
  --alt-radius:22px;--alt-radius-sm:14px
}
body.alt-site{background:var(--alt-bg);color:var(--alt-text);font-family:var(--alt-sans);font-size:16px;line-height:1.6}
body.alt-site #wrapper,body.alt-site #main{background:var(--alt-bg)}
body.alt-site h1,body.alt-site h2,body.alt-site h3,body.alt-site .alt-serif{font-family:var(--alt-serif);font-weight:500;letter-spacing:-.2px;color:inherit}
body.alt-site h1{font-size:clamp(44px,6vw,84px);line-height:1}
body.alt-site h2{font-size:clamp(34px,4vw,54px);line-height:1.04}
body.alt-site h3{font-size:26px;line-height:1.15}
body.alt-site h4{font-family:var(--alt-sans);font-weight:700;font-size:18px;color:inherit}
body.alt-site a{color:var(--alt-gold)}
body.alt-site a:hover{color:#F7D79A}
body.alt-site strong,body.alt-site b{color:inherit}
body.alt-site :focus-visible{outline:2px solid var(--alt-gold);outline-offset:3px}

/* Flatsome header & footer */
body.alt-site #logo a,body.alt-site .logo a{font-family:var(--alt-serif);font-weight:500;font-size:28px;line-height:1.1;text-transform:none;letter-spacing:.01em;color:var(--alt-text);text-decoration:none;white-space:nowrap}
body.alt-site #logo a:hover{color:var(--alt-gold)}
body.alt-site header a,body.alt-site .header a,body.alt-site .nav a{text-decoration:none}

body.alt-site .header-wrapper,body.alt-site .header-main,body.alt-site .header-bottom,body.alt-site .header-top{background:var(--alt-bg)!important;color:var(--alt-text)}
body.alt-site .header-main .nav>li>a,body.alt-site .header-bottom .nav>li>a{color:var(--alt-text);font-family:var(--alt-sans);font-weight:500;font-size:14px;text-transform:none;letter-spacing:0}
body.alt-site .header-main .nav>li>a:hover,body.alt-site .header-main .nav>li.active>a{color:var(--alt-gold)}
body.alt-site .nav-dropdown{background:var(--alt-panel);border:1px solid var(--alt-line)}
body.alt-site .nav-dropdown li a{color:var(--alt-text)!important}
body.alt-site .nav-dropdown li a:hover{color:var(--alt-gold)!important;background:transparent}
body.alt-site .header-button .button,body.alt-site .button.primary{background:var(--alt-gold);color:var(--alt-gold-ink);border-radius:999px;font-weight:700;text-transform:none;letter-spacing:0;border:0}
body.alt-site .footer-wrapper,body.alt-site .absolute-footer{background:var(--alt-cream);color:var(--alt-ink)}
body.alt-site .absolute-footer{border-top:1px solid var(--alt-cream-line)}
body.alt-site .footer-wrapper a,body.alt-site .absolute-footer a{color:var(--alt-ink)}
body.alt-site .off-canvas .mfp-content,body.alt-site .off-canvas-left .mfp-content{background:var(--alt-bg)}
body.alt-site .mobile-sidebar .nav>li>a{color:var(--alt-text)}

/* Sections */
.alt-sec{padding:96px 0}
.alt-sec--tight{padding:56px 0}
.alt-dark{background:var(--alt-bg);color:var(--alt-text)}
.alt-panelbg{background:var(--alt-panel);color:var(--alt-text)}
.alt-cream{background:var(--alt-cream);color:var(--alt-ink)}
.alt-cream a{color:#7A5E2E}
.alt-cream .alt-muted{color:var(--alt-ink-muted)}
.alt-muted{color:var(--alt-muted)}
.alt-eyebrow{display:block;font-family:var(--alt-sans);font-size:12px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--alt-gold);margin-bottom:10px}
.alt-cream .alt-eyebrow{color:#7A5E2E}
.alt-lead{font-size:19px;color:#E9E3D8;max-width:640px}
.alt-cream .alt-lead{color:var(--alt-ink)}
.alt-answer{font-size:18px;max-width:760px;border-left:2px solid var(--alt-gold);padding-left:18px;margin:18px 0 26px}

/* Headings in narrow columns (Flatsome .col.large-4/5) */
body.alt-site .col.large-4 h2,body.alt-site .col.large-5 h2{font-size:clamp(30px,3vw,42px)}

/* Hero */
.alt-hero .section-content{position:relative}
.alt-hero{min-height:620px;display:flex;align-items:flex-end}
.alt-hero h1{margin:0 0 18px}
.alt-hero .alt-points{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px;color:#E9E3D8;margin-bottom:16px}

/* Buttons */
.alt-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;background:var(--alt-gold);color:var(--alt-gold-ink)!important;font-weight:700;font-size:15px;text-decoration:none;border:1px solid var(--alt-gold);cursor:pointer;line-height:1}
.alt-btn:hover{background:#F7D79A;border-color:#F7D79A}
.alt-btn--ghost{background:transparent;color:var(--alt-text)!important;border-color:var(--alt-line2)}
.alt-btn--ghost:hover{background:var(--alt-panel);border-color:var(--alt-gold)}
.alt-btn--dark{background:var(--alt-ink);color:var(--alt-text)!important;border-color:var(--alt-ink)}
.alt-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

/* Cards */
.alt-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.alt-card,body.alt-site a.alt-card{color:var(--alt-text)}
.alt-card{display:flex;flex-direction:column;gap:10px;background:var(--alt-panel);border:1px solid var(--alt-line);border-radius:var(--alt-radius);padding:26px;color:var(--alt-text);text-decoration:none;min-height:220px}
a.alt-card:hover{border-color:var(--alt-gold)}
.alt-card h3{margin:0;font-size:28px}
body.alt-site .alt-card p{margin:0;color:var(--alt-muted);font-size:15px}
body.alt-site .alt-card h3{color:inherit}
.alt-card .alt-tag{align-self:flex-start;font-size:12px;font-weight:700;color:var(--alt-gold);border:1px solid var(--alt-line2);border-radius:999px;padding:4px 10px}
.alt-card .alt-more{margin-top:auto;font-weight:700;font-size:14px;color:var(--alt-text)}
body.alt-site .alt-cream .alt-card{background:#fff;border-color:var(--alt-cream-line);color:var(--alt-ink)}
body.alt-site .alt-cream .alt-card p{color:var(--alt-ink-muted)}

/* Trust */
.alt-trust{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.alt-trust li{display:flex;gap:12px;align-items:flex-start;padding:18px;background:var(--alt-panel);border:1px solid var(--alt-line);border-radius:16px;margin:0}
.alt-trust .alt-ico{color:var(--alt-gold);flex:none;margin-top:3px}
.alt-trust strong{display:block;font-size:15px}
.alt-trust span{font-size:13px;color:var(--alt-muted)}

/* Fleet */
.alt-fleet{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.alt-vehicle{background:#fff;border:1px solid var(--alt-cream-line);border-radius:var(--alt-radius);overflow:hidden;display:flex;flex-direction:column;color:var(--alt-ink)}
.alt-vehicle .alt-vehicle__img{height:190px;background:var(--alt-tile);display:flex;align-items:center;justify-content:center;padding:14px 18px 0}
.alt-vehicle .alt-vehicle__img img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.alt-vehicle .alt-vehicle__ph{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--alt-ink-muted)}
.alt-vehicle__body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.alt-vehicle__type{font-size:12px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--alt-ink-muted)}
.alt-vehicle h3{font-family:var(--alt-sans)!important;font-size:20px!important;font-weight:700!important;margin:0}
.alt-specs{display:flex;flex-wrap:wrap;gap:8px}
.alt-specs span{display:inline-flex;align-items:center;gap:6px;background:var(--alt-cream);border-radius:999px;padding:5px 11px;font-size:13px;font-weight:600}
.alt-vehicle__foot{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.alt-vehicle__price{font-size:22px;font-weight:700}
.alt-vehicle__price small{display:block;font-size:12px;font-weight:500;color:var(--alt-ink-muted)}

/* Rates table */
.alt-tablewrap{overflow-x:auto;max-width:100%;width:100%;border:1px solid var(--alt-line);border-radius:20px}body.alt-site .col,body.alt-site .col-inner,body.alt-site .alt-fb-col{min-width:0}
.alt-rates{width:100%;min-width:560px;border-collapse:collapse;font-size:15px;margin:0}
.alt-rates th,.alt-rates td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--alt-line);color:var(--alt-text)}
.alt-rates thead th{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--alt-muted);font-weight:600}
.alt-rates tbody tr:last-child td,.alt-rates tbody tr:last-child th{border-bottom:0}
.alt-rates td{font-variant-numeric:tabular-nums}
.alt-note{font-size:13px;color:var(--alt-muted);margin-top:10px}

/* Steps */
.alt-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;counter-reset:s}
.alt-steps li{background:var(--alt-panel);border:1px solid var(--alt-line);border-radius:20px;padding:24px;margin:0;counter-increment:s}
.alt-steps li::before{content:"0" counter(s);display:block;font-family:var(--alt-serif);font-size:44px;line-height:1;color:var(--alt-gold);margin-bottom:12px}
.alt-steps h4{margin:0 0 6px}
.alt-steps p{margin:0;color:var(--alt-muted);font-size:15px}

/* FAQ */
.alt-faq{border-top:1px solid var(--alt-line)}
.alt-faq details{border-bottom:1px solid var(--alt-line)}
.alt-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:14px 0;font-size:17px;font-weight:600}
.alt-faq summary::-webkit-details-marker{display:none}
.alt-faq summary::after{content:"+";font-size:24px;color:var(--alt-gold);flex:none}
.alt-faq details[open] summary::after{content:"−"}
.alt-faq .alt-faq__a{padding:0 0 18px;color:var(--alt-muted);max-width:760px}
.alt-cream .alt-faq,.alt-cream .alt-faq details{border-color:var(--alt-cream-line)}
.alt-cream .alt-faq .alt-faq__a{color:var(--alt-ink-muted)}

/* Images */
.alt-photo{border-radius:var(--alt-radius);overflow:hidden;background:var(--alt-panel2)}
.alt-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* CTA band */
.alt-band{background:var(--alt-panel);border:1px solid var(--alt-line);border-radius:28px;padding:48px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.alt-band h2{margin:0;max-width:720px}

/* Booking widget */
.alt-booking{background:var(--alt-cream);color:var(--alt-ink);border-radius:22px;padding:16px;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.alt-booking__tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.alt-booking__tabs button{min-height:44px;padding:0 18px;border-radius:999px;font-size:14px;font-weight:700;cursor:pointer;background:#fff;color:var(--alt-ink);border:1px solid var(--alt-cream-line);margin:0;text-transform:none;letter-spacing:0}
.alt-booking__tabs button[aria-selected="true"]{background:var(--alt-ink);color:var(--alt-text);border-color:var(--alt-ink)}
.alt-booking__row{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.alt-field{flex:1 1 150px;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--alt-cream-line);border-radius:14px;padding:9px 14px;margin:0}
.alt-field--wide{flex:2 1 230px}
.alt-field span{font-size:12px;font-weight:700;color:var(--alt-ink-muted)}
.alt-booking input,.alt-booking select,.alt-booking textarea{border:0!important;box-shadow:none!important;background:transparent!important;padding:2px 0!important;margin:0!important;height:auto!important;min-height:26px;font-size:15px;font-weight:600;color:var(--alt-ink)!important;font-family:var(--alt-sans)}
.alt-booking textarea{min-height:70px;font-weight:500}
.alt-field.is-invalid{border-color:#B3261E}
.alt-booking .alt-btn{min-height:60px;border-radius:14px;flex:1 1 200px}
.alt-booking .alt-btn--dark:hover{background:#000}
.alt-booking__results{margin-top:14px;display:grid;gap:10px}
.alt-option{display:flex;flex-wrap:wrap;gap:16px;align-items:center;background:#fff;border:1px solid var(--alt-cream-line);border-radius:16px;padding:12px 16px}
.alt-option.is-selected{border:2px solid var(--alt-ink)}
.alt-option.is-disabled{opacity:.55}
.alt-option__img{width:120px;height:70px;background:var(--alt-tile);border-radius:10px;display:flex;align-items:center;justify-content:center}
.alt-option__img img{max-width:100%;max-height:100%;mix-blend-mode:multiply}
.alt-option__main{flex:1 1 200px}
.alt-option__main strong{display:block;font-size:17px}
.alt-option__main small{color:var(--alt-ink-muted);font-size:13px}
.alt-option__price{text-align:right;font-size:20px;font-weight:700;min-width:110px}
.alt-option__price small{display:block;font-size:12px;font-weight:500;color:var(--alt-ink-muted)}
.alt-option button{min-height:44px;padding:0 18px;border-radius:999px;font-weight:700;background:var(--alt-ink);color:var(--alt-text);border:0;margin:0;text-transform:none;letter-spacing:0}
.alt-booking__details{margin-top:14px;display:none}
.alt-booking__details.is-open{display:block}
.alt-booking__summary{margin-top:12px;background:var(--alt-ink);color:var(--alt-text);border-radius:16px;padding:16px 18px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}
.alt-booking__summary .alt-total{font-size:26px;font-weight:700}
.alt-booking__summary small{display:block;color:var(--alt-muted);font-size:12px}
.alt-booking__msg{margin-top:10px;font-weight:600}
.alt-booking__msg.is-error{color:#B3261E}
.alt-booking__legal{font-size:13px;color:var(--alt-ink-muted);margin-top:8px}
.alt-check{display:flex;gap:10px;align-items:center;min-height:44px;font-weight:600;font-size:15px}
.alt-check input{width:20px;height:20px;min-height:0!important}
.alt-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* Mobile bar */
.alt-mobilebar{display:none}
@media (max-width:849px){
  .alt-sec{padding:64px 0}
  .alt-hero{min-height:560px}
  .alt-band{padding:28px}
  .alt-mobilebar{display:flex;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:999;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(20,17,16,.95);border-top:1px solid var(--alt-line)}
  .alt-mobilebar .alt-btn{min-height:52px}
  .alt-mobilebar .alt-btn:last-child{flex:1}
  body.alt-site{padding-bottom:76px}
  .alt-option__price{text-align:left}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Fallback layout when Flatsome is not active (inc/compat.php) */
.alt-fb-section{position:relative;width:100%}
.alt-fb-bg{position:absolute;inset:0;overflow:hidden}
.alt-fb-bg img{width:100%;height:100%;object-fit:cover}
.alt-fb-overlay{position:absolute;inset:0}
.alt-fb-section .section-content{position:relative}
.alt-fb-row{display:flex;flex-wrap:wrap;max-width:1430px;margin:0 auto;padding:0 5px}
.alt-fb-middle{align-items:center}.alt-fb-bottom{align-items:flex-end}
.alt-fb-col{flex:0 0 calc(var(--span) / 12 * 100%);max-width:calc(var(--span) / 12 * 100%);padding:0 15px 30px}
@media (max-width:849px){.alt-fb-col{flex-basis:100%;max-width:100%}}
/* Language switcher: round flag only */
body.alt-site .lang-item a{display:inline-flex;align-items:center;gap:6px}
body.alt-site .lang-item .pll-switcher-flag{width:22px!important;aspect-ratio:1/1!important;border-radius:50%!important;box-shadow:0 0 0 1px rgba(242,238,231,.35)}
body.alt-site .lang-item img{width:22px!important;height:22px!important;border-radius:50%;object-fit:cover;vertical-align:middle}
body.alt-site .lang-item .pll-switcher-flag img{width:100%!important;height:100%!important}
body.alt-site .lang-item a:hover .pll-switcher-flag,body.alt-site .lang-item a:hover>img{box-shadow:0 0 0 2px var(--alt-gold)}
/* Footer (UX Block "ALT Footer") */
body.alt-site .absolute-footer{display:none}
body.alt-site .footer-wrapper{background:var(--alt-bg)}
body.alt-site .alt-footer{border-top:1px solid rgba(242,238,231,.1);color:var(--alt-muted);font-size:15px}
body.alt-site .alt-footer__brand{font-family:var(--alt-serif);font-size:28px;line-height:1.15;color:var(--alt-text);margin:0 0 12px}
body.alt-site .alt-footer__text{max-width:340px;margin-bottom:18px}
body.alt-site .alt-footer__title{font-family:var(--alt-sans);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--alt-gold);margin:6px 0 14px}
body.alt-site .alt-footer__links{list-style:none;margin:0;padding:0;display:block!important;columns:auto!important}
body.alt-site .alt-footer__links li{display:block!important;float:none!important;margin:0 0 9px;padding:0;line-height:1.4;width:auto!important}
body.alt-site .alt-footer a{color:var(--alt-text);text-decoration:none;overflow-wrap:anywhere}
body.alt-site .alt-footer a:hover{color:var(--alt-gold)}
body.alt-site .alt-footer .alt-btn{color:var(--alt-gold-ink)}
body.alt-site .alt-footer .alt-btn--ghost{color:var(--alt-text)}
body.alt-site .alt-footer__bottom{border-top:1px solid rgba(242,238,231,.1);padding-top:22px;margin-top:10px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px}
body.alt-site .alt-footer__legal{margin:0;font-size:13px;color:var(--alt-muted)}
body.alt-site .alt-footer__legal a{color:var(--alt-muted)}
@media (max-width:849px){body.alt-site .alt-footer__col{flex-basis:50%!important;max-width:50%!important}body.alt-site .alt-footer{padding-bottom:96px!important}}
/* Mobile header: logo shrinks, flag and Book button never do */
body.alt-site .alt-hm{display:flex;align-items:center;gap:8px;flex-shrink:0;white-space:nowrap}
body.alt-site .alt-hm__flag{display:inline-flex;flex:0 0 26px;width:26px;height:26px;line-height:0}
body.alt-site .alt-hm__flag img{display:block;flex:none;width:26px!important;height:26px!important;min-width:26px;max-width:none!important;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px rgba(242,238,231,.35)}
body.alt-site .alt-hm__book{flex:none;padding:8px 14px!important;font-size:14px!important;min-height:0!important;line-height:1.2!important;margin:0!important}
@media (max-width:849px){
body.alt-site .header-main{height:64px}
body.alt-site .header-main .flex-right,body.alt-site .header-main .flex-col:last-child{flex-shrink:0}
body.alt-site .header-main #logo{flex:1 1 auto!important;min-width:0;width:auto!important;max-width:none!important;margin:0 8px}
body.alt-site #logo a{font-size:19px!important;white-space:normal;line-height:1.1}
body.alt-site #logo img{width:auto!important;max-width:100%!important;height:auto!important;max-height:32px!important;object-fit:contain}
}
