/*
Theme Name: Boat Theme
Description: Thème sur-mesure pour Loc Boat Azur, codé à la main sans Elementor.
Version: 1.0
Author: Dan
Text Domain: boat-theme
*/

:root{
  --color-primary:#0971B7;
  --color-nav-bg:#FFFFFF;
  --color-link:#04548c;
  --color-link-hover:#4498D3;
  --color-link-active:#32ABFF;
  --color-text:#13172B;
  --color-light:#E8E7E7;
  --font-main:'Work Sans', sans-serif;
}

*{box-sizing:border-box;}
body{margin:0;font-family:var(--font-main);color:var(--color-text);line-height:1.6;}
a{color:var(--color-link);text-decoration:none;}
a:hover{color:var(--color-link-hover);}
img{max-width:100%;height:auto;display:block;}
.container{max-width:1200px;margin:0 auto;padding:0 20px;}

/* Top bar */
.topbar{background:var(--color-primary);color:var(--color-light);font-size:12px;}
.topbar .container{display:flex;align-items:center;justify-content:space-between;padding-top:8px;padding-bottom:8px;flex-wrap:wrap;gap:8px;}
.topbar a{color:#fff;font-weight:600;text-transform:capitalize;}
.topbar .topbar-tagline{text-align:center;flex:1;}
.topbar .social-icons a{margin-left:10px;color:#fff;font-size:14px;}

/* Main nav */
.site-header{background:var(--color-nav-bg);position:sticky;top:0;z-index:50;box-shadow:0 1px 4px rgba(0,0,0,.08);}
.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px;gap:20px;}
.site-logo img{max-height:50px;}
.main-nav ul{list-style:none;display:flex;gap:24px;margin:0;padding:0;}
.main-nav a{font-weight:700;text-transform:capitalize;font-size:16px;color:var(--color-link);}
.main-nav a:hover{color:var(--color-link-hover);}
.main-nav .current-menu-item > a{color:var(--color-link-active);}
.header-actions{display:flex;align-items:center;gap:16px;}
.cart-icon{position:relative;font-size:20px;}
.cart-count{position:absolute;top:-8px;right:-10px;background:var(--color-primary);color:#fff;border-radius:50%;font-size:11px;width:18px;height:18px;display:flex;align-items:center;justify-content:center;}
.nav-toggle{display:none;background:none;border:0;font-size:24px;cursor:pointer;}

@media (max-width:900px){
  .main-nav{display:none;width:100%;}
  .main-nav.is-open{display:block;}
  .main-nav ul{flex-direction:column;gap:0;}
  .main-nav a{display:block;padding:10px 0;border-bottom:1px solid #eee;}
  .nav-toggle{display:block;}
  .site-header .container{flex-wrap:wrap;}
}

/* Footer */
.site-footer{background:#0B2340;color:#cbd5e1;padding:50px 0 20px;margin-top:60px;}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;margin-bottom:30px;}
.footer-grid h4{color:#fff;margin-top:0;margin-bottom:16px;font-size:15px;text-transform:uppercase;letter-spacing:.05em;}
.footer-grid ul{list-style:none;margin:0;padding:0;}
.footer-grid ul li{margin-bottom:8px;}
.footer-grid a{color:#cbd5e1;}
.footer-grid a:hover{color:#fff;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;font-size:13px;text-align:center;color:#94a3b8;}

/* Generic content */
.page-content{padding:50px 0;min-height:300px;}
.hero{background:linear-gradient(rgba(9,113,183,.55),rgba(9,113,183,.55)),#0971B7;color:#fff;padding:90px 0;text-align:center;}
.hero h1{font-size:2.4rem;margin-bottom:16px;}
.btn{display:inline-block;background:var(--color-primary);color:#fff;padding:12px 28px;border-radius:4px;font-weight:600;}
.btn:hover{background:var(--color-link-hover);color:#fff;}