/* Gold Water Yachts : thème « mer et ciel » (clair, bleu mer, ciel).
   Chargé après light.css : il redéfinit les jetons et remplace l'or par le bleu mer.
   Les animations sont dans js/sea.js (GSAP + ScrollTrigger). */

:root {
    --sea-sky: #eef8fd;
    --sea-foam: #dff1fa;
    --sea-mist: #f6fbfe;
    --sea-surface: #ffffff;
    --sea-blue: #0f86c4;
    --sea-deep: #0a5a8c;
    --sea-navy: #0a2f4a;
    --sea-aqua: #27c4d8;
    --sea-sun: #ffc247;
    --sea-ink: #0b2b40;
    --sea-ink-2: #3f6177;
    --sea-ink-3: #6f8a9c;
    --sea-line: rgba(10, 90, 140, 0.14);
    --sea-radius: 22px;
    --sea-shadow: 0 24px 50px -30px rgba(10, 70, 110, 0.45);
    --sea-ease: cubic-bezier(0.23, 1, 0.32, 1);

    /* les jetons du thème clair pointent maintenant vers la palette mer */
    --lt-page: var(--sea-sky);
    --lt-surface: #ffffff;
    --lt-sand: var(--sea-foam);
    --lt-line: var(--sea-line);
    --lt-ink: var(--sea-ink);
    --lt-ink-2: var(--sea-ink-2);
    --lt-ink-3: var(--sea-ink-3);
    --lt-gold: var(--sea-aqua);
    --lt-gold-deep: var(--sea-deep);
}

/* ---------- Base ---------- */
html:not([lang="ar"]) body,
html:not([lang="ar"]) button,
html:not([lang="ar"]) input,
html:not([lang="ar"]) select,
html:not([lang="ar"]) textarea { font-family: "Manrope", "Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif; }
/* le thème d'origine impose Rufina / Cormorant avec !important : on le remplace partout sauf pour les polices d'icônes et l'arabe */
html:not([lang="ar"]) body :where(h1, h2, h3, h4, h5, h6, p, a, li, span, div, label, strong, em, small, b, td, th, blockquote, figcaption, button, input, textarea, select, s):not(.fa, .fas, .far, .fab, .bi, [class*="bi-"], [class*="fa-"], [class*="icon"]) { font-family: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif !important; }
html:not([lang="ar"]) h1, html:not([lang="ar"]) h2, html:not([lang="ar"]) h3, html:not([lang="ar"]) h4,
html:not([lang="ar"]) .flet-title, html:not([lang="ar"]) .jet-title, html:not([lang="ar"]) .activity-title,
html:not([lang="ar"]) .faqs-title, html:not([lang="ar"]) .faqs2-title, html:not([lang="ar"]) .partners-title,
html:not([lang="ar"]) .gw-card__title { font-weight: 800; letter-spacing: -0.025em; }

html { background: #f4fafe; }
body {
    color: var(--sea-ink);
    background-color: #f4fafe;
    background-image:
        radial-gradient(1200px 520px at 12% -6%, rgba(39, 196, 216, 0.16), transparent 70%),
        radial-gradient(900px 480px at 100% 4%, rgba(15, 134, 196, 0.12), transparent 70%),
        linear-gradient(180deg, #eaf7fd 0, #f4fafe 1100px);
    background-repeat: no-repeat;
}
main { background: transparent; }
a { color: var(--sea-blue); }
a:hover, a:focus { color: var(--sea-deep); }
::selection { background: var(--sea-aqua); color: #fff; }
h1, h2, h3, h4, h5, h6 { color: var(--sea-ink); }

/* barre de progression de lecture (GSAP) */
.sea-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 2000; pointer-events: none; transform-origin: 0 50%; transform: scaleX(0); background: linear-gradient(90deg, var(--sea-aqua), var(--sea-blue), var(--sea-sun)); }
html[dir="rtl"] .sea-progress { transform-origin: 100% 50%; }

/* ---------- Boutons ---------- */
.explore-btn, .book-btn, .btn-explore, a.btn_1.inverse, .btn_1.inverse {
    background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 16px 30px -16px rgba(15, 134, 196, 0.8);
    font-weight: 700;
    letter-spacing: 0.01em;
    transition: transform 300ms var(--sea-ease), box-shadow 300ms var(--sea-ease);
}
.explore-btn:hover, .book-btn:hover, .btn-explore:hover { box-shadow: 0 22px 36px -16px rgba(15, 134, 196, 0.9); transform: translateY(-2px); color: #fff !important; }
.btn-arrow { border-color: #fff; }

/* ---------- En-tête : verre blanc teinté de bleu ---------- */
html body header.fixed_header > .container,
html body header.fixed_header.headroom--top > .container,
html body header.fixed_header.headroom--not-top > .container {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(255, 255, 255, 0.85);
    border-radius: 999px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.9) inset, 0 20px 44px -26px rgba(10, 90, 140, 0.55);
}
html body header.fixed_header.headroom--not-top > .container { background: rgba(255, 255, 255, 0.88); }
html body header.fixed_header nav ul li a,
html body header.fixed_header.headroom--top nav ul li a,
html body header.fixed_header.headroom--not-top nav ul li a { color: var(--sea-ink) !important; font-weight: 600; }
html body header.fixed_header #mainNav > ul > li > a::after { background: linear-gradient(90deg, var(--sea-blue), var(--sea-aqua)) !important; height: 2px; }
html body header.fixed_header #mainNav > ul > li.active > a,
html body header.fixed_header #mainNav > ul > li > a[aria-current] { color: var(--sea-blue) !important; }
html body header.fixed_header .hamburger__inner,
html body header.fixed_header .hamburger__inner::before,
html body header.fixed_header .hamburger__inner::after { background-color: var(--sea-ink) !important; }
html body header.fixed_header .btn_Header {
    background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)) !important;
    border: 0 !important;
    color: #fff !important;
    border-radius: 999px !important;
    font-weight: 700;
    box-shadow: 0 12px 24px -12px rgba(15, 134, 196, 0.9) !important;
}
@media (hover: hover) and (pointer: fine) {
    html body header.fixed_header .btn_Header:hover { background: linear-gradient(135deg, var(--sea-deep), var(--sea-blue)) !important; }
}
.submenu_version .main-menu ul ul { border-top: 2px solid var(--sea-aqua); border-radius: 0 0 14px 14px; }
.submenu_version .main-menu ul ul li:hover > a { background-color: var(--sea-foam); color: var(--sea-deep) !important; }
@media (max-width: 991px) {
    html body header.fixed_header,
    html body header.fixed_header.headroom--top,
    html body header.fixed_header.headroom--not-top { background: rgba(255, 255, 255, 0.86) !important; border-bottom: 1px solid var(--sea-line) !important; }
    html body header.fixed_header > .container { border-radius: 0; }
    html body header .hamburger_2 { background: var(--sea-foam) !important; box-shadow: inset 0 0 0 1px var(--sea-line) !important; }
}
@media (max-width: 991px) { .main-menu, .logo_panel { background: #fff; } }

/* ---------- Hero d'accueil : vidéo, voile marin, vagues ---------- */
.hero.home-search { background: var(--sea-navy); -webkit-clip-path: inset(20px round 32px); clip-path: inset(20px round 32px); }
.hero .wrapper.opacity-mask { background: linear-gradient(180deg, rgba(6, 60, 98, 0.46) 0%, rgba(8, 84, 128, 0.28) 45%, rgba(10, 47, 74, 0.62) 100%) !important; }
.hero .best { background: rgba(255, 255, 255, 0.2); border: 1px solid rgba(255, 255, 255, 0.7); color: #fff; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 999px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.hero h1 { color: #fff; text-shadow: 0 6px 40px rgba(6, 50, 80, 0.45); }
.hero h1 .w { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: 0.12em; }
.hero h1 .w > span { display: inline-block; will-change: transform; }
.hero p { color: rgba(255, 255, 255, 0.94); }
.hero-features-list { margin-bottom: 64px; }
.hero-features-list li { color: #fff; background: rgba(255, 255, 255, 0.16); border: 1px solid rgba(255, 255, 255, 0.4); border-radius: 999px; padding: 8px 16px; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.hero-features-list svg { color: var(--sea-sun); }
.sea-waves { position: absolute; left: 0; right: 0; bottom: -1px; height: 120px; z-index: 6; pointer-events: none; overflow: hidden; }
.sea-waves svg { position: absolute; left: 0; bottom: 0; width: 200%; height: 100%; }
.sea-waves .wv1 { fill: rgba(255, 255, 255, 0.28); }
.sea-waves .wv2 { fill: rgba(255, 255, 255, 0.5); }
.sea-waves .wv3 { fill: var(--sea-sky); }

/* bannières photo des autres pages */
.pdp-hero, .landing-hero, .jc-hero, .bk-hero { border-radius: 32px; }
.pdp-hero::after { background: linear-gradient(180deg, rgba(6, 60, 98, 0.5) 0%, rgba(8, 84, 128, 0.2) 40%, rgba(10, 47, 74, 0.8) 100%); }
.landing-hero { background: linear-gradient(180deg, rgba(6, 60, 98, 0.5), rgba(10, 47, 74, 0.72)), var(--hero) center/cover; }
.jc-hero { background: linear-gradient(180deg, rgba(6, 60, 98, 0.42) 0%, rgba(10, 47, 74, 0.7) 60%, rgba(10, 47, 74, 0.84) 100%), var(--hero) center/cover; }
.bk-hero { background: linear-gradient(180deg, rgba(6, 60, 98, 0.5), rgba(10, 47, 74, 0.78)), var(--bk-bg) center/cover; }
.pdp-hero .pdp-from strong, .bk-hero .bk-eyebrow { color: var(--sea-sun); }

/* ---------- Sections ---------- */
.flet, .activity, .routes, .faqs-2, .partners { background: transparent; }
.our-fleet-badge, .activity-badge, .routes-badge, .faqs2-badge, .partners-badge, .faqs-label {
    background: var(--sea-foam);
    border: 1px solid var(--sea-line);
    color: var(--sea-deep);
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.flet-title, .jet-title, .activity-title, .routes-title, .faqs2-title, .partners-title, .flet-title-hero { color: var(--sea-ink); }
.flet-description, .activity-description, .routes-description, .faqs2-description, .partners-description { color: var(--sea-ink-2); }

/* ---------- Cartes produit : carte claire, photo en haut ---------- */
.gw-card {
    --gwc-ink: 255, 255, 255;
    aspect-ratio: auto;
    min-height: 0;
    justify-content: flex-start;
    border-radius: var(--sea-radius);
    background: var(--sea-surface);
    color: var(--sea-ink) !important;
    border: 1px solid var(--sea-line);
    box-shadow: var(--sea-shadow);
    transition: transform 380ms var(--sea-ease), box-shadow 380ms var(--sea-ease);
}
@media (hover: hover) and (pointer: fine) {
    .gw-card:hover { box-shadow: 0 34px 60px -28px rgba(15, 134, 196, 0.55); }
    .gw-card:hover .gw-card__img { transform: scale(1.07); }
}
.yacht-grid { perspective: 1200px; }
.gw-card::before { display: none; }
.gw-card::after { display: none; }
.gw-card__img {
    position: relative;
    inset: auto;
    z-index: 0;
    flex: 0 0 auto;
    height: auto;
    aspect-ratio: 4 / 3;
    background: linear-gradient(135deg, var(--sea-foam), #bfe6f6);
}
/* le cadre de la photo coupe le zoom */
.gw-card { overflow: hidden; }
.gw-card__tags { top: 14px; inset-inline-start: 14px; }
.gw-card__tag { background: rgba(255, 255, 255, 0.92); color: var(--sea-deep) !important; border: 0; border-radius: 999px; font-weight: 700; box-shadow: 0 8px 18px -10px rgba(10, 70, 110, 0.5); backdrop-filter: blur(6px); }
.gw-card .gw-card__tag--promo { background: var(--sea-sun); color: #4a2f00 !important; }
.gw-card__body { position: relative; padding: 18px 20px 20px; inset: auto; background: transparent; flex: 1 1 auto; display: flex; flex-direction: column; }
.gw-card__body::before { display: none; }
.gw-card .gw-card__title { color: var(--sea-ink); font-size: 1.35rem; text-shadow: none; }
.gw-card .gw-card__specs { color: var(--sea-blue); font-weight: 700; letter-spacing: 0.06em; }
.gw-card__rule { background: linear-gradient(90deg, var(--sea-aqua), transparent); height: 2px; width: 44px; }
.gw-card .gw-card__text { color: var(--sea-ink-2); }
.gw-card__more { display: none; }
.gw-card__foot { margin-top: auto; border-top: 1px dashed var(--sea-line); padding-top: 14px; }
.gw-card .gw-card__price strong { color: var(--sea-ink); font-weight: 800; }
.gw-card .gw-card__price small, .gw-card .gw-card__price em { color: var(--sea-ink-3); }
.gw-card .gw-card__price s { color: #9ab0bf; }
.gw-card .gw-card__cta { color: #fff; background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)); border-radius: 999px; padding: 9px 16px; font-weight: 700; letter-spacing: 0.02em; text-transform: none; gap: 8px; }
.gw-card--vip { border-color: rgba(255, 194, 71, 0.6); }

/* ---------- Comment ça marche : panneau clair ---------- */
.faqs { background: linear-gradient(135deg, rgba(223, 241, 250, 0.9), rgba(255, 255, 255, 0.92)), url("../images/home/luxury-yacht-bg.webp") left center / cover no-repeat; border-radius: 32px; margin: 40px 20px; overflow: hidden; }
.faqs-title { color: var(--sea-ink); }
.faqs-description { color: var(--sea-ink-2); }
.faqs-label { color: var(--sea-deep); }
.hiw-item { border-top: 1px solid var(--sea-line); }
.hiw-item:last-child { border-bottom: 1px solid var(--sea-line); }
.hiw-trigger h3 { color: var(--sea-ink); }
.hiw-trigger h3:hover, .hiw-item.active .hiw-trigger h3 { color: var(--sea-blue); }
.hiw-number { color: var(--sea-aqua); }
.hiw-chevron { border-right-color: var(--sea-blue); border-bottom-color: var(--sea-blue); }
.hiw-content p { color: var(--sea-ink-2); }

/* ---------- Activités ---------- */
.activity-image-wrapper { overflow: hidden; border-radius: var(--sea-radius); box-shadow: var(--sea-shadow); }
.activity-image-wrapper img { transition: transform 900ms var(--sea-ease); }
@media (hover: hover) and (pointer: fine) { .activity-item:hover .activity-image-wrapper img { transform: scale(1.06); } }
.activity-item-title { color: var(--sea-ink); font-weight: 700; }
.activity-item-title:hover { color: var(--sea-blue); }

/* ---------- Avis ---------- */
.greviews { background: transparent; }
.greviews__score { background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)); color: #fff; border: 0; box-shadow: 0 18px 36px -18px rgba(15, 134, 196, 0.8); }
.greviews__score b, .greviews__score span { color: #fff; }
.greviews__rate { color: var(--sea-blue); }
.greview { border-radius: var(--sea-radius); border: 1px solid var(--sea-line); box-shadow: 0 18px 40px -30px rgba(10, 70, 110, 0.5); }
.greview--img { background-color: var(--sea-navy); }
.greview [class*="star"], .greview .stars, .greview__stars { color: var(--sea-sun); }

/* ---------- FAQ ---------- */
.faq2-item { background: #fff; border: 1px solid var(--sea-line); border-radius: 16px; box-shadow: 0 14px 30px -26px rgba(10, 70, 110, 0.5); }
.faq2-question { color: var(--sea-ink); font-weight: 700; }
.faq2-item.active { border-color: var(--sea-aqua); }
.faq2-item.active .faq2-question { color: var(--sea-blue); }
.faq2-arrow { border-color: var(--sea-blue); }
.faq2-content, .faq2-content p { color: var(--sea-ink-2); }

/* ---------- Fil d'Ariane, onglets, langues, promo ---------- */
.crumbs a { color: var(--sea-blue); }
.fleet-tabs a { border-radius: 999px; border: 1px solid var(--sea-line); background: #fff; }
.fleet-tabs a:hover { border-color: var(--sea-aqua); }
.fleet-tabs a.is-on { background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)); border-color: transparent; color: #fff; }
.lang-switcher__item.lang-flag.is-current { border-color: var(--sea-aqua); box-shadow: 0 0 0 3px rgba(39, 196, 216, 0.25); }
.promo-bar__badge, .promo-pill b, .promo-pop__badge { background: linear-gradient(135deg, #ffe08a, var(--sea-sun)); color: #4a2f00; }
.promo-bar__digits b { background: var(--sea-foam); border-color: var(--sea-line); }
.promo-bar__digits i, .promo-pill em, .promo-pop__cd, .promo-ticket__code code { color: var(--sea-deep); }
.promo-ticket__go, .promo-pop__go, .promo-ticket__code button { background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)); color: #fff; }
.promo-ticket__go:hover, .promo-ticket__code button:hover { background: var(--sea-deep); color: #fff; }
.promo-ticket__stub { background: radial-gradient(circle at 25% 15%, #bdeefa 0%, #5fd0e3 48%, #0f86c4 100%); color: #052a40; }
.promo-ticket__code { border-color: rgba(15, 134, 196, 0.5); background: var(--sea-mist); }
.promo-pop__box { background: radial-gradient(120% 90% at 50% 0%, rgba(39, 196, 216, 0.2), transparent 60%), #fff; }

/* ---------- Pied de page : mer profonde ---------- */
footer.footer { background: linear-gradient(180deg, #0b4d7a 0%, var(--sea-navy) 100%); color: rgba(255, 255, 255, 0.82); position: relative; margin-top: 90px; border-top: 0; }
footer.footer a { color: rgba(255, 255, 255, 0.86); }
footer.footer a:hover { color: var(--sea-aqua); }
footer.footer .footer-title, footer.footer h4, footer.footer p.footer-title { color: #fff; }
footer.footer p, footer.footer .footer-info-text, footer.footer .newsletter-text, footer.footer .privacy-text, footer.footer .copyright-text { color: rgba(255, 255, 255, 0.74); }
footer.footer .footer-logo img { filter: brightness(0) invert(1); }
footer.footer .newsletter-input { background: rgba(255, 255, 255, 0.12); border: 1px solid rgba(255, 255, 255, 0.28); color: #fff; border-radius: 999px; }
footer.footer .newsletter-input::placeholder { color: rgba(255, 255, 255, 0.6); }
footer.footer .newsletter-btn { background: linear-gradient(135deg, var(--sea-aqua), var(--sea-blue)); color: #fff; border: 0; border-radius: 999px; font-weight: 700; }
footer.footer .footer-socials a { background: rgba(255, 255, 255, 0.12); color: #fff; border-radius: 50%; }
footer.footer .footer-socials a:hover { background: var(--sea-aqua); color: #fff; }
footer.footer .footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.18); }
.sea-footwave { position: absolute; left: 0; right: 0; top: -89px; height: 90px; overflow: hidden; pointer-events: none; }
.sea-footwave svg { position: absolute; left: 0; bottom: -1px; width: 200%; height: 100%; }
.sea-footwave .wv1 { fill: rgba(11, 77, 122, 0.4); }
.sea-footwave .wv2 { fill: #0b4d7a; }

/* ---------- Accessibilité : mouvements réduits ---------- */
@media (prefers-reduced-motion: reduce) {
    .sea-progress, .sea-waves, .sea-footwave { display: none; }
    .gw-card, .gw-card__img, .explore-btn { transition: none; }
}

/* ---------- Ajustements ---------- */
.flet-title, .jet-title, .activity-title, .routes-title, .faqs2-title, .partners-title, .faqs-title, .greviews h2 { font-weight: 800 !important; letter-spacing: -0.025em; }
.hero h1 { font-weight: 800 !important; letter-spacing: -0.03em; }
.greviews .greviews__rate { color: var(--sea-blue); }
.greviews, .greviews p, .greviews h2 { color: var(--sea-ink); }
.greviews__head p { color: var(--sea-ink-2); }
.greviews .greviews__rate { color: var(--sea-blue) !important; font-weight: 700; }
.partners-dot { background-color: var(--sea-blue) !important; }
.partner-logo img { mix-blend-mode: multiply; border-radius: 16px; opacity: 0.9; }

/* ---------- FAQ générale de la fiche produit (fond noir d'origine) ---------- */
.pdp-faqcol .faqs2-col { width: 100%; max-width: none; }
.pdp-faqcol .faq2-item { background: #fff; border: 1px solid var(--sea-line); }
.pdp-faqcol .faq2-item.active { border-color: var(--sea-aqua); }
.faq2-content p, .faq2-content li { color: var(--sea-ink-2); }
.faq2-content b, .faq2-content strong { color: var(--sea-ink); }
.faq2-question { color: var(--sea-ink) !important; }
.faq2-item.active .faq2-question { color: var(--sea-blue) !important; }

/* ---------- Page Activités : colonnes régulières (la règle d'origine .flet-container .col-6 donnait 40 % / 47 % / auto) ---------- */
.activities-page .row > .col-6, .activities-page .row > .col-6:first-child, .activities-page .row > .col-6:last-child { flex: 0 0 50% !important; max-width: 50%; }
@media (min-width: 768px) { .activities-page .row > .col-6, .activities-page .row > .col-6:first-child, .activities-page .row > .col-6:last-child { flex: 0 0 25% !important; max-width: 25%; } }
.activity-img-wrapper { border-radius: var(--sea-radius) !important; box-shadow: var(--sea-shadow); }
.activity-img-wrapper img { transition: transform 900ms var(--sea-ease); }
@media (hover: hover) and (pointer: fine) { .activity-card:hover .activity-img-wrapper img { transform: scale(1.06); } }
.activity-card-title, .activity-card-title a { color: var(--sea-ink) !important; font-weight: 700 !important; }
.activity-card-title a:hover { color: var(--sea-blue) !important; }
.hub-intro, .hub-faq { background: transparent; }

/* ---------- Réservation : dégradé vert WhatsApp ---------- */
:root { --wa-grad: linear-gradient(135deg, #25d366 0%, #128c7e 100%); --wa-shadow: 0 16px 30px -16px rgba(18, 140, 126, 0.85); }
html body header.fixed_header .btn_Header,
.gw-card .gw-card__cta, .book-btn, .bk-btn--gold, .pdp-btn--gold, .bcta:not(.bcta--call):not(.bcta--link), .bc__go,
.promo-ticket__go, .promo-pop__go {
    background: var(--wa-grad) !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: var(--wa-shadow) !important;
}
@media (hover: hover) and (pointer: fine) {
    html body header.fixed_header .btn_Header:hover, .gw-card:hover .gw-card__cta, .book-btn:hover, .bk-btn--gold:hover:not(:disabled), .pdp-btn--gold:hover, .bcta:hover:not(.bcta--call):not(.bcta--link), .bc__go:hover {
        background: linear-gradient(135deg, #1ebe5a 0%, #0e7468 100%) !important;
    }
}
.bk-btn--gold small { color: rgba(255, 255, 255, 0.9); }

/* ---------- « Changer de yacht » : lisible au repos et au survol ---------- */
.bk-change {
    display: inline-flex; align-items: center; gap: 6px;
    margin: 4px 0 14px; padding: 8px 16px;
    font-size: 15px; font-weight: 700; line-height: 1.2;
    color: var(--sea-deep) !important;
    background: var(--sea-foam) !important;
    border: 1px solid rgba(15, 134, 196, 0.35) !important;
    border-radius: 999px;
    text-decoration: none;
    transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}
.bk-change:hover, .bk-change:focus-visible { color: #fff !important; background: var(--sea-blue) !important; border-color: var(--sea-blue) !important; outline: none; }

/* ---------- Bouton Book Now des cartes yacht : plus grand ---------- */
.gw-card .gw-card__cta { padding: 14px 26px; font-size: 16px; font-weight: 800; gap: 10px; min-height: 50px; }
.gw-card .gw-card__cta svg { width: 20px; height: 20px; }
.gw-card .gw-card__price strong { font-size: 1.45rem; }
@media (max-width: 480px) { .gw-card .gw-card__cta { padding: 13px 20px; font-size: 15px; } }

/* ---------- Bannière de consentement ---------- */
.gw-consent[hidden] { display: none !important; }
.gw-consent {
    position: fixed; z-index: 8800; inset-inline: 16px; bottom: 16px; margin-inline: auto; max-width: 820px;
    display: flex; align-items: center; gap: 18px; padding: 16px 20px;
    background: rgba(255, 255, 255, 0.94); -webkit-backdrop-filter: blur(16px) saturate(180%); backdrop-filter: blur(16px) saturate(180%);
    border: 1px solid var(--sea-line); border-radius: 20px; box-shadow: 0 26px 60px -24px rgba(10, 70, 110, 0.55);
    color: var(--sea-ink);
}
.gw-consent p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--sea-ink-2); flex: 1; }
.gw-consent p a { color: var(--sea-blue); text-decoration: underline; }
.gw-consent__btns { display: flex; gap: 10px; flex: 0 0 auto; }
.gw-consent button { min-height: 44px; padding: 0 22px; border-radius: 999px; font-weight: 700; font-size: 15px; cursor: pointer; border: 1.5px solid var(--sea-line); background: #fff; color: var(--sea-ink); }
.gw-consent button.is-primary { border: 0; color: #fff; background: linear-gradient(135deg, var(--sea-blue), var(--sea-aqua)); box-shadow: 0 12px 24px -12px rgba(15, 134, 196, 0.9); }
@media (max-width: 640px) { .gw-consent { flex-direction: column; align-items: stretch; inset-inline: 10px; bottom: 10px; } .gw-consent__btns button { flex: 1; } }
