
/* Desktop-first nav: visible by default */
.nav-toggle{display:none}
.nav-list{display:flex !important; gap:clamp(8px,2vw,18px); list-style:none; margin:0; padding:0; overflow-x:auto}


:root{--brand:#0f6ab8;--dark:#011a3a;--ink:#1e293b;--bg:#f6f9fc}
*{box-sizing:border-box}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.8}

/* NAV */
.site-nav{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px clamp(12px,3vw,24px)}
.nav-list{display:flex;gap:clamp(8px,2vw,18px);list-style:none;margin:0;padding:0;overflow-x:auto}
.nav-list a{display:block;padding:6px 12px;border-radius:8px;color:var(--ink);font-weight:600;line-height:1;transition:transform .18s ease, background-color .18s ease, color .18s ease}
.nav-list a:hover{background:#f1f5f9;color:var(--brand);transform:translateY(-1px)}
.nav-list a[aria-current="page"],.nav-list a.active{background:var(--brand);color:#fff;box-shadow:0 2px 6px rgba(15,106,184,.15)}
.nav-toggle{display:none;border:0;background:transparent}

  .nav-toggle{display:block;padding:8px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 12px rgba(2,6,23,.08)}
  .nav-list{display:flex !important}
  .site-nav[data-open="true"] .nav-list{display:flex}
}

/* FOOTER */
footer{background:#0a3d62;color:rgba(255,255,255,.92);padding:18px 16px;font-size:.9rem;line-height:1.6;margin-top:30px}
.footer-container{max-width:1100px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}
.footer-col{flex:1 1 220px}
.footer-col h3{font-size:1rem;margin-bottom:10px;color:#e6f0fa;font-weight:700}
.footer-nav{list-style:none;padding:0;margin:0}.footer-nav li{margin-bottom:6px}.footer-nav a{color:#cfe8ff}
footer small{display:block;text-align:center;margin-top:14px;color:#94a3b8;font-size:.85rem}

/* SUBHERO 50/50 (non-index) */
.subhero{background:linear-gradient(90deg,#0f6ab8 50%,#ffffff 50%);color:#fff;height:180px;padding:0 20px;display:flex;align-items:center}
.subhero .wrap{max-width:1100px;margin:0 auto;width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}
.subhero .subhero-left{flex:0 0 50%;max-width:50%;padding-right:16px}
.subhero .subhero-right{flex:0 0 50%;max-width:50%;display:flex;align-items:center;justify-content:center}
.subhero h1{margin:0 0 6px;color:#fff;font-size:clamp(22px,3vw,32px)}
.subhero p{margin:0;color:#e6f0fa;font-size:clamp(14px,1.6vw,16px)}
.subhero img{max-height:100%;width:auto;object-fit:contain}
@media(max-width:900px){
  .subhero{background:#0f6ab8;height:auto;padding:28px 20px}
  .subhero .wrap{flex-direction:column;text-align:center;height:auto}
  .subhero .subhero-left,.subhero .subhero-right{max-width:100%;flex:1 1 auto;padding:0}
  .subhero img{margin-top:12px;max-height:120px}
}

/* Sections / Cards / Buttons */
.section{max-width:1100px;margin:40px auto;padding:30px;background:#fff;border-radius:12px;box-shadow:0 8px 28px rgba(2,6,23,.06)}
.section h2{margin-bottom:14px;color:#0a3d62}.section p{margin-bottom:14px}
.card{border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 8px 28px rgba(2,6,23,.06);padding:22px}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:10px;border:1px solid #e2e8f0;font-weight:700;text-decoration:none}
.btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.btn.secondary{background:#fff;color:var(--brand)}

/* Sticky CTA cluster bottom-left with gradients; smaller offerte on mobile */

.sticky-cta{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:12px 18px;border-radius:999px;font-weight:700;text-decoration:none;box-shadow:0 8px 22px rgba(2,6,23,.18);border:1px solid transparent}
.sticky-cta.book{background:linear-gradient(180deg,#0b2b55 0%,#011a3a 100%);color:#fff;border-color:#011a3a}
.sticky-cta.offerte{background:linear-gradient(180deg,#1180d8 0%,#0f6ab8 100%);color:#fff;border-color:#0f6ab8}
.sticky-cta:hover{filter:brightness(.98);transform:translateY(-1px);transition:transform .15s ease,filter .15s ease}
@media(max-width:640px){.sticky-cta.offerte{padding:10px 14px;font-size:.95rem}}

/* Motion text spacing */
.motion-text span{display:inline-block;margin-right:.25em;will-change:transform,opacity}

/* Sticky CTA cluster bottom-right; below nav/chat; compact on mobile */
.sticky-cta-wrap{
  position:fixed; right:16px; bottom:16px; display:flex; flex-direction:column; gap:10px;
  z-index:5000; /* nav > sticky; chat widget can sit above if it uses higher z-index */
}
.sticky-cta{display:inline-flex; align-items:center; justify-content:center; white-space:nowrap;
  padding:12px 18px; border-radius:999px; font-weight:700; text-decoration:none;
  box-shadow:0 8px 22px rgba(2,6,23,.18); border:1px solid transparent}
.sticky-cta.book{background:linear-gradient(180deg,#0b2b55 0%,#011a3a 100%); color:#fff; border-color:#011a3a}
.sticky-cta.offerte{background:linear-gradient(180deg,#1180d8 0%,#0f6ab8 100%); color:#fff; border-color:#0f6ab8}
.sticky-cta:hover{filter:brightness(.98); transform:translateY(-1px); transition:transform .15s ease, filter .15s ease}
@media(max-width:640px){
  .sticky-cta{padding:9px 12px; font-size:.9rem}
  .sticky-cta.offerte{padding:8px 10px; font-size:.85rem}
}
/* Ensure nav sits above for clicks */
.site-nav{z-index:12000}

/* Place hamburger button at far right on mobile */

  .site-nav .nav-toggle{margin-left:auto}
}


@media(max-width:900px){
  .subhero{background:#0f6ab8;}
  .subhero .subhero-right picture, .subhero .subhero-right img{max-height:120px}
}

  .nav-list{display:flex !important}
  .nav-toggle{display:block; margin-left:auto; background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:8px 14px}
}

  .nav-toggle{display:block;margin-left:auto;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:8px 14px}
  .nav-list{display:flex !important}
  .site-nav[data-open="true"] .nav-list{display:flex}
}


/* Uniform subhero logo sizing/position */
.subhero .subhero-right img{width:240px;max-width:100%;height:auto;display:block;margin:0 auto;}
@media(max-width:900px){
  .subhero .subhero-right img{max-height:120px;width:auto}
}

@media(max-width:700px){
  .nav-toggle{display:block}
  .nav-list{display:none !important; position:absolute; left:0; right:0; top:100%;
            flex-direction:column; gap:8px; background:#f1f5f9; border-bottom:1px solid #e2e8f0; padding:8px 12px}
  .site-nav[data-open="true"] .nav-list{display:flex !important}
}
