*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#202020;background:#fff;line-height:1.5}.topbar{background:#222;color:#fff;padding:9px 5%;display:flex;justify-content:space-between;font-size:13px}.header{height:130px;display:flex;align-items:center;padding:0 5%;gap:28px;background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:20}.logo{display:flex;align-items:center;gap:10px;color:#151515;text-decoration:none;margin-right:auto}.logo-mark{font-size:36px}.logo strong{font-size:31px;letter-spacing:-2px}.logo strong span,.footer-logo span{color:#e8aa00}.logo small{display:block;font-size:9px;font-weight:700;letter-spacing:.5px}.nav{display:flex;gap:20px;align-items:center}.nav a{color:#202020;text-decoration:none;font-size:13px;font-weight:700}.member-link{color:#a36f00!important}.cart-btn{border:0;background:#f4b500;border-radius:50%;width:42px;height:42px;cursor:pointer}.menu-toggle{display:none}.hero{min-height:540px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(20,22,18,.88),rgba(20,22,18,.28)),url('photos/diaporama-uav83-1.jpg') center/cover}.hero-content{max-width:650px;margin-left:7%;color:#fff;padding:70px 20px}.eyebrow{font-size:13px;font-weight:800;letter-spacing:1px;color:#b77b00}.hero .eyebrow{color:#ffd34e}.hero h1{font-size:54px;line-height:1.05;margin:15px 0}.hero h1 em{color:#f5b900;font-style:normal}.hero p{font-size:18px;max-width:610px}.hero-actions{display:flex;gap:15px;margin-top:28px}.btn{border:0;border-radius:5px;padding:13px 22px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.primary{background:#f5b500;color:#161616}.light{background:#fff;color:#222}.dark{background:#222;color:#fff}.benefits{display:grid;grid-template-columns:repeat(4,1fr);background:#fff7df;padding:20px 5%;gap:20px}.benefits div{border-right:1px solid #e8d7a4;padding:5px 20px}.benefits div:last-child{border:0}.benefits b,.benefits span{display:block}.benefits span{font-size:12px;color:#666}.section{padding:70px 6%}.section.alt{background:#faf8f0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.section-head h2{font-size:34px;margin:4px 0}.section-head>a{color:#9c6d00;font-weight:700}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card,.news,.service-grid>div,.event{background:#fff;border:1px solid #eee;border-radius:8px;padding:24px;box-shadow:0 4px 18px rgba(0,0,0,.04)}.icon{font-size:36px}.card h3,.news h3{margin:10px 0}.card p{color:#666;min-height:70px}.card strong{display:block;margin:15px 0}.add{width:100%}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.photo{height:160px;border-radius:6px;margin:-24px -24px 18px;display:flex;align-items:center;justify-content:center;font-size:70px}.lavender{background:#d8d1a4}.hive{background:#d6a95d}.regulation{background:#ddd}.news small{background:#f5b500;padding:4px 7px;font-weight:700}.news a{color:#a56f00;font-weight:700;text-decoration:none}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-grid span{font-size:32px}.service-grid h3{margin:10px 0}.service-grid p{color:#666}.events{display:grid;gap:12px}.event{display:flex;gap:20px;align-items:center}.event>b{background:#f5b500;padding:15px;border-radius:5px;min-width:90px;text-align:center}.event h3{margin:0}.association{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:70px 10%;align-items:center;background:#222;color:#fff}.bigbee{font-size:170px;text-align:center}.association .eyebrow{color:#f5b500}.association h2{font-size:38px}.newsletter{background:#f5b500;padding:35px 8%;display:flex;justify-content:space-between;align-items:center;gap:30px}.newsletter h2{margin:0}.newsletter form{display:flex;min-width:45%}.newsletter input{flex:1;padding:15px;border:0}.footer-grid{background:#171717;color:#fff;padding:50px 7%;display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px}.footer-grid a{display:block;color:#ddd;text-decoration:none;margin:8px 0}.footer-grid h4{color:#f5b500}.footer-logo{font-size:38px;font-weight:900}.copyright{background:#111;color:#aaa;padding:16px 7%;font-size:12px}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:50;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-box{background:#fff;border-radius:10px;padding:30px;max-width:560px;width:100%;position:relative}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px;cursor:pointer}.cart-row{display:flex;justify-content:space-between;border-bottom:1px solid #eee;padding:12px 0}.cart-total{text-align:right;font-size:20px;margin:20px 0}.note{font-size:12px;color:#777;margin-top:15px}@media(max-width:950px){.nav{display:none}.menu-toggle{display:block;border:0;background:none;font-size:24px}.nav.open{display:flex;position:absolute;top:82px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;box-shadow:0 5px 15px #0002}.cards,.service-grid{grid-template-columns:repeat(2,1fr)}.benefits{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:1fr}.hero h1{font-size:42px}.newsletter{display:block}.newsletter form{margin-top:20px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.topbar{display:none}.header{height:70px}.hero{min-height:620px}.hero-content{margin:0;padding:50px 7%}.hero h1{font-size:38px}.benefits,.cards,.service-grid,.footer-grid{grid-template-columns:1fr}.section{padding:50px 6%}.section-head{display:block}.newsletter form{display:block}.newsletter input{width:100%;margin-bottom:8px}.newsletter .btn{width:100%}.association{grid-template-columns:1fr;padding:50px 7%}.bigbee{font-size:100px}}.insurance-card label{display:block;margin:10px 0 5px}.insurance-field{width:100%;padding:11px;border:1px solid #d8d8d8;border-radius:5px;background:#fff;margin-bottom:10px;font:inherit}.insurance-card small{display:block;color:#666;font-size:11px;margin:2px 0 14px}.insurance-add{width:100%}.cart-detail{display:block;color:#777;font-size:11px;margin-top:3px}

.legal-card{background:#fff;border:1px solid #eadcae;border-radius:10px;padding:28px;box-shadow:0 4px 18px rgba(0,0,0,.04)}
.legal-card h3{margin-bottom:4px;color:#6f4c00}.legal-card a{color:#8a5e00;font-weight:700;overflow-wrap:anywhere}
.membership-form small{display:block;font-size:11px;color:#666;margin-top:4px}
.cart-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;margin-top:14px}.continue-shopping{border:1px solid #ddd}
.legal-modal{max-width:820px;max-height:92vh;overflow:hidden;display:flex;flex-direction:column}
.legal-scroll{overflow:auto;border:1px solid #e5e5e5;background:#fffdf6;border-radius:7px;padding:18px;margin:10px 0 16px;max-height:55vh}
.legal-scroll h3{color:#755000}.legal-scroll a{color:#8a5e00;font-weight:700;overflow-wrap:anywhere}
.legal-scroll ul{padding-left:22px}.mandate-section{border-top:3px solid #f5b500;margin-top:20px;padding-top:15px}
.mandate-section label{display:block;font-weight:700;margin:12px 0}.mandate-section input[type=text],.mandate-section input[type=date]{width:100%;padding:11px;border:1px solid #ccc;border-radius:5px;margin-top:5px}
.mandate-identity{background:#fff3c8;padding:12px;border-radius:6px;margin:12px 0}.legal-actions{display:flex;justify-content:flex-end;gap:10px}
.social-block h4{color:#f5b500}.social-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.social-links a{display:flex;align-items:center;gap:8px;margin:0;padding:8px;border:1px solid #333;border-radius:6px}.social-links i{width:18px;text-align:center;font-size:18px}
.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1.5fr 2fr}
@media(max-width:950px){.footer-grid{grid-template-columns:1fr 1fr}.cart-actions{grid-template-columns:1fr}}
@media(max-width:600px){.legal-modal{padding:20px}.legal-scroll{max-height:58vh}.legal-actions{display:grid;grid-template-columns:1fr}.social-links{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}}


/* === UAV83 : panier adapté à la hauteur de l'écran === */
#cartModal {
  padding: 12px !important;
  align-items: center !important;
}

#cartModal .modal-box {
  width: min(760px, 96vw) !important;
  max-height: 92vh !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  padding: 22px !important;
}

/* La zone de validation reste accessible en bas du panier */
#cartModal .cart-actions {
  position: sticky;
  bottom: -22px;
  z-index: 5;
  background: #fff;
  padding: 14px 0 22px;
  margin-bottom: -22px;
  border-top: 1px solid #e5e5e5;
}

#cartModal .checkout-btn,
#cartModal .continue-shopping {
  min-height: 48px;
}

@media (max-width: 600px) {
  #cartModal {
    padding: 0 !important;
    align-items: stretch !important;
  }
  #cartModal .modal-box {
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border-radius: 0 !important;
    padding: 18px !important;
    overflow-y: auto !important;
  }
  #cartModal .cart-actions {
    bottom: -18px;
    margin-bottom: -18px;
    padding-bottom: 18px;
    grid-template-columns: 1fr !important;
  }
}

/* === UAV83 mise à jour contenu 27/08/2026 === */
.why-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center}
.why-visual img{width:100%;height:auto;display:block;border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.why-points{display:grid;gap:9px;margin:20px 0}.why-points p{margin:0;padding:10px 12px;background:#fff8df;border-left:4px solid #f5b500;border-radius:6px}
.featured-news{display:grid;grid-template-columns:120px 1fr;gap:24px;background:#fff;border:1px solid #eadcae;border-radius:16px;padding:28px;box-shadow:0 6px 22px rgba(0,0,0,.06)}
.featured-icon{font-size:64px;display:grid;place-items:center;background:#fff3c8;border-radius:14px}
.featured-news h3{font-size:28px;margin:5px 0 10px}.featured-news small{font-weight:800;color:#a33}
.content-page{max-width:1100px;margin:0 auto;padding:55px 24px;min-height:70vh}.content-page h1{font-size:42px;line-height:1.1}.content-page h2{margin-top:30px;color:#6d4c00}.content-page h3{color:#6d4c00}
.sub-header{position:sticky;top:0;z-index:20}.page-nav{margin-left:auto}.simple-footer{background:#181818;color:#eee;padding:30px 24px;text-align:center}.simple-footer a{color:#f5b500}
.alert-box,.important-box,.join-box{padding:20px 22px;border-radius:10px;margin:22px 0}.alert-box{background:#fff0e8;border-left:5px solid #c84b31}.important-box{background:#fff7d7;border-left:5px solid #f5b500}.join-box{background:#fff4bf;text-align:center}.legal-note{font-size:13px;color:#666;border-top:1px solid #ddd;padding-top:15px;margin-top:30px}
.link-grid,.law-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.link-card,.law-card{background:#fff;border:1px solid #e6d8a7;border-radius:12px;padding:22px;text-decoration:none;color:inherit;box-shadow:0 4px 14px rgba(0,0,0,.04)}.link-card:hover{transform:translateY(-2px)}.link-card span{font-size:34px}.link-card h2,.law-card h2{margin:8px 0}.link-card b{color:#8a5e00}
.article-page{max-width:900px}.article-page ul{padding-left:24px}.article-page li{margin:8px 0}
.copyright a{color:#f5b500}
@media(max-width:800px){.why-layout,.link-grid,.law-grid,.featured-news{grid-template-columns:1fr}.featured-icon{min-height:90px}.content-page h1{font-size:34px}.page-nav{display:none}}


/* UAV83 - ajustement section Pourquoi adhérer */
#pourquoi-adherer .section-head {
  margin-bottom: 8px !important;
  padding-bottom: 0 !important;
}
#pourquoi-adherer .why-layout {
  margin-top: 0 !important;
}
#pourquoi-adherer .why-text > p:nth-of-type(1),
#pourquoi-adherer .why-text > p:nth-of-type(2) {
  font-weight: 700 !important;
  margin-top: 6px !important;
  margin-bottom: 10px !important;
}
/* Texte Pourquoi adhérer sur toute la largeur */
#pourquoi-adherer .why-layout{
    display:block !important;
}

#pourquoi-adherer .why-text{
    width:100% !important;
    max-width:none !important;
}
/* ===== SIGNATURE MANUSCRITE UAV83 ===== */

.hero-slider{
    position:relative;
}

.signature-var{
    position:absolute;
    left:62%;
    top:46%;
    z-index:5;
    color:#fff;
    transform:rotate(-4deg);
    text-shadow:0 2px 7px rgba(0,0,0,.65);
    pointer-events:none;
    white-space:nowrap;
}

.signature-titre{
    font-family:"Caveat",cursive;
    font-size:72px;
    font-weight:600;
}

.signature-titre span{
    color:#f5b500;
    font-size:40px;
}

.signature-sous-titre{
    color:#fff;
    font-family:"Caveat",cursive;
    font-size:34px;
    font-weight:600;
}

.signature-trait{
    width:78%;
    height:3px;
    margin:10px auto 0;
    background:#f5b500;
    border-radius:50%;
    transform:rotate(-3deg);
}
/* ===== SIGNATURE UAV83 SUR TELEPHONE ===== */
@media(max-width:600px){

    .signature-var{
        left:50%;
        right:auto;
        top:auto;
        bottom:25px;
        width:90%;
        transform:translateX(-50%) rotate(-3deg);
        text-align:center;
        white-space:normal;
    }

    .signature-titre{
        font-size:27px;
        line-height:1.05;
    }

    .signature-sous-titre{
        font-size:23px;
        line-height:1.05;
        margin-top:4px;
    }

    .signature-trait{
        width:65%;
        margin:8px auto 0;
    }
}
/* ===== FOOTER UAV83 SUR TELEPHONE ===== */
@media(max-width:600px){

    .footer-grid{
        grid-template-columns:1fr;
        padding:35px 7%;
        gap:25px;
    }

    .footer-grid > div{
        width:100%;
        min-width:0;
    }

    .footer-grid p,
    .footer-grid a{
        overflow-wrap:anywhere;
        word-break:normal;
    }

    .footer-logo{
        font-size:32px;
    }
}
/* ===== BOUTON ASSOCIATION UAV83 ===== */
.nav a[href="espace-uav83.php"]{
    background:#4f7d32 !important;
    color:#fff !important;
    padding:10px 16px !important;
    border-radius:8px !important;
}
/* ===== MON COMPTE CONNECTÉ EN VERT ===== */
.nav a.member-connected{
    background:#4f7d32 !important;
    color:#fff !important;
    padding:10px 16px !important;
    border-radius:8px !important;
}
/* ===== POPUP POURQUOI ADHERER UAV83 ===== */
.why-popup{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.65);
    z-index:9999;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.why-popup.open{
    display:flex;
}

.why-popup-box{
    position:relative;
    width:90%;
    max-width:650px;
}

.why-popup-box img{
    display:block;
    width:auto;
    max-width:100%;
    max-height:75vh;
    margin:auto;
    border-radius:10px;
}

.why-popup-close{
    position:absolute;
    top:-18px;
    right:-12px;
    width:38px;
    height:38px;
    border:0;
    border-radius:50%;
    background:#fff;
    font-size:28px;
    line-height:38px;
    cursor:pointer;
}

.why-popup-trigger{
    cursor:pointer;
}
/* ===== NOUVEAU LOGO UAV83 ===== */
.nouveau-logo-uav83{
    display:block;
    width:auto;
    height:125px;
    max-width:600px;
    object-fit:contain;
}
/* ===== NOUVEAU LOGO UAV83 SUR TELEPHONE ===== */
@media(max-width:600px){

    .header{
        height:auto !important;
        min-height:82px;
    }

    .nouveau-logo-uav83{
        width:100% !important;
        max-width:290px !important;
        height:auto !important;
    }

    .logo{
        max-width:calc(100% - 55px);
        min-width:0;
    }
}

/* =========================================================
   UAV83 - Correction débordement signature biodiversité
   01/10/2026
   Correction ciblée : écrans > 600 px uniquement.
   Le bloc reste ancré à droite du bandeau et sa taille
   s'adapte à la largeur disponible.
   ========================================================= */
@media (min-width:601px){

    .hero-slider{
        overflow-x:clip;
    }

    .signature-var{
        left:auto;
        right:4%;
        max-width:58%;
        transform-origin:right center;
        white-space:nowrap;
    }

    .signature-titre{
        font-size:clamp(34px,4vw,72px);
        line-height:1.05;
    }

    .signature-titre span{
        font-size:clamp(26px,2.5vw,40px);
    }

    .signature-sous-titre{
        font-size:clamp(20px,2vw,34px);
        line-height:1.05;
    }

    .signature-trait{
        max-width:100%;
    }
}

/* Ajustement supplémentaire pour tablettes / fenêtres étroites */
@media (min-width:601px) and (max-width:950px){

    .signature-var{
        right:3%;
        max-width:55%;
    }

    .signature-titre{
        font-size:clamp(30px,4.2vw,40px);
    }

    .signature-sous-titre{
        font-size:clamp(18px,2.4vw,24px);
    }
}


/* =========================================================
   UAV83 - Correction responsive en-tête / Mon compte /
   Favoris / Panier - 01/10/2026
   ========================================================= */

/* Le bouton Favoris contient du texte : il ne doit pas
   être enfermé dans le cercle de 42 px réservé au panier. */
.header > button.cart-btn[type="button"]{
    width:auto;
    min-width:76px;
    height:42px;
    padding:0 12px;
    border-radius:21px;
    white-space:nowrap;
    flex:0 0 auto;
}

/* Le panier reste compact et parfaitement rond. */
.header > button.cart-btn:not([type="button"]){
    width:42px;
    min-width:42px;
    height:42px;
    padding:0;
    flex:0 0 42px;
}

/* Empêche les éléments de l'en-tête de forcer la largeur
   générale de la page. */
.header{
    max-width:100%;
}

/* Entre 951 et 1250 px, le menu complet n'a plus assez
   de place. On utilise donc le menu mobile déjà existant. */
@media (min-width:951px) and (max-width:1250px){

    .header{
        gap:14px;
        padding-left:3%;
        padding-right:3%;
    }

    .nav{
        display:none;
    }

    .menu-toggle{
        display:block;
        border:0;
        background:none;
        font-size:24px;
        cursor:pointer;
        flex:0 0 auto;
    }

    .nav.open{
        display:flex;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:#fff;
        padding:20px;
        flex-direction:column;
        align-items:stretch;
        gap:8px;
        box-shadow:0 5px 15px #0002;
        max-height:calc(100vh - 100%);
        overflow-y:auto;
    }

    .nav.open a{
        width:100%;
        text-align:left;
    }

    .logo{
        min-width:0;
    }

    .nouveau-logo-uav83{
        max-width:min(520px,55vw);
        height:auto;
        max-height:125px;
    }
}

/* Sécurité : aucune largeur d'écran ne doit être agrandie
   par l'en-tête. */
html,
body{
    max-width:100%;
    overflow-x:clip;
}


/* =========================================================
   UAV83 - RESPONSIVE V3 - 01/10/2026
   Correction réelle de l'en-tête + signature
   (annule les masquages de débordement précédents)
   ========================================================= */

/* Ne plus masquer un éventuel débordement de la page :
   tous les éléments sont maintenant dimensionnés pour tenir. */
html,
body{
    max-width:none;
    overflow-x:visible;
}

/* Le bandeau photo peut, lui, couper uniquement ce qui lui appartient. */
.hero-slider{
    overflow:hidden;
}

/* ---------------------------------------------------------
   1) GRAND ÉCRAN : menu complet mais plus compact
   --------------------------------------------------------- */
@media (min-width:1451px){

    .header{
        padding-left:2%;
        padding-right:2%;
        gap:12px;
    }

    .logo{
        margin-right:auto;
        min-width:0;
        flex:0 1 280px;
    }

    .nouveau-logo-uav83{
        width:100%;
        max-width:270px;
        height:auto;
        max-height:118px;
    }

    .nav{
        gap:10px;
        min-width:0;
    }

    .nav a{
        font-size:12px;
        line-height:1.25;
    }

    .nav a[href="essaim.html"]{
        padding:8px 10px !important;
    }

    .nav a.member-connected,
    .nav a[href="espace-uav83.php"]{
        padding:8px 10px !important;
    }

    .header > button.cart-btn[type="button"]{
        min-width:72px;
        padding:0 10px;
    }
}

/* ---------------------------------------------------------
   2) ÉCRANS INTERMÉDIAIRES :
   on passe au vrai bouton "☰ Menu" avant que ça déborde
   --------------------------------------------------------- */
@media (max-width:1450px){

    .header{
        padding-left:5%;
        padding-right:5%;
        gap:18px;
    }

    .nav{
        display:none;
    }

    .menu-toggle{
        display:flex;
        align-items:center;
        justify-content:center;
        gap:7px;
        min-width:88px;
        height:44px;
        padding:0 13px;
        border:1px solid #e2e2e2;
        border-radius:8px;
        background:#fff;
        font-size:0;
        font-weight:700;
        cursor:pointer;
        flex:0 0 auto;
    }

    .menu-toggle::before{
        content:"☰";
        font-size:25px;
        line-height:1;
    }

    .menu-toggle::after{
        content:"Menu";
        font-size:14px;
        line-height:1;
    }

    .nav.open{
        display:flex;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        z-index:100;
        background:#fff;
        padding:16px 5% 20px;
        flex-direction:column;
        align-items:stretch;
        gap:4px;
        box-shadow:0 7px 20px rgba(0,0,0,.16);
        max-height:calc(100vh - 90px);
        overflow-y:auto;
    }

    .nav.open a{
        width:100%;
        padding:10px 12px !important;
        text-align:left;
        border-radius:6px;
        font-size:14px;
    }

    .logo{
        min-width:0;
        margin-right:auto;
    }

    .nouveau-logo-uav83{
        width:100%;
        max-width:300px;
        height:auto;
        max-height:115px;
    }

    .header > button.cart-btn[type="button"]{
        min-width:76px;
    }
}

/* ---------------------------------------------------------
   3) TABLETTES / FENÊTRES MOYENNES :
   la signature descend sous le texte principal
   --------------------------------------------------------- */
@media (min-width:601px) and (max-width:1200px){

    .hero{
        min-height:700px;
        align-items:flex-start;
    }

    .hero-content{
        max-width:720px;
        margin-left:7%;
        padding-top:70px;
        padding-bottom:190px;
    }

    .signature-var{
        left:50%;
        right:auto;
        top:auto;
        bottom:38px;
        width:86%;
        max-width:760px;
        transform:translateX(-50%) rotate(-3deg);
        transform-origin:center center;
        text-align:right;
        white-space:normal;
    }

    .signature-titre{
        font-size:clamp(32px,5.2vw,52px);
        line-height:1;
    }

    .signature-titre span{
        font-size:clamp(25px,3.3vw,36px);
    }

    .signature-sous-titre{
        font-size:clamp(20px,3vw,29px);
        line-height:1.05;
        margin-top:5px;
    }

    .signature-trait{
        width:68%;
        max-width:520px;
        margin:9px 0 0 auto;
    }
}

/* ---------------------------------------------------------
   4) PETITS ÉCRANS : en-tête clair et signature séparée
   --------------------------------------------------------- */
@media (max-width:700px){

    .header{
        min-height:96px;
        padding:10px 4%;
        gap:10px;
        flex-wrap:nowrap;
    }

    .logo{
        max-width:none;
        flex:1 1 auto;
    }

    .nouveau-logo-uav83{
        max-width:245px !important;
    }

    .menu-toggle{
        min-width:46px;
        width:46px;
        padding:0;
    }

    .menu-toggle::after{
        display:none;
    }

    /* Sur les écrans vraiment étroits, "Menu" est indiqué
       sous le symbole sans prendre de largeur supplémentaire. */
    .menu-toggle{
        height:50px;
        flex-direction:column;
        gap:0;
    }

    .menu-toggle::before{
        font-size:23px;
    }

    .menu-toggle::after{
        content:"Menu";
        display:block;
        font-size:9px;
        margin-top:2px;
    }

    .header > button.cart-btn[type="button"]{
        min-width:0;
        width:48px;
        height:48px;
        padding:0;
        font-size:0;
        border-radius:50%;
    }

    .header > button.cart-btn[type="button"]::before{
        content:"☆";
        font-size:22px;
    }

    .header > button.cart-btn:not([type="button"]){
        width:48px;
        min-width:48px;
        height:48px;
        flex-basis:48px;
    }

    .hero{
        min-height:720px;
        align-items:flex-start;
    }

    .hero-content{
        margin:0;
        max-width:none;
        width:100%;
        padding:55px 7% 205px;
    }

    .signature-var{
        left:50%;
        right:auto;
        top:auto;
        bottom:34px;
        width:90%;
        max-width:none;
        transform:translateX(-50%) rotate(-3deg);
        text-align:center;
        white-space:normal;
    }

    .signature-titre{
        font-size:clamp(28px,7vw,38px);
        line-height:1;
    }

    .signature-sous-titre{
        font-size:clamp(18px,5vw,25px);
        line-height:1.05;
        margin-top:5px;
    }

    .signature-trait{
        width:68%;
        margin:9px auto 0;
    }
}

/* Très petits écrans : le logo reste prioritaire sans pousser
   les boutons hors de la fenêtre. */
@media (max-width:520px){

    .header{
        padding-left:3%;
        padding-right:3%;
        gap:7px;
    }

    .nouveau-logo-uav83{
        max-width:190px !important;
    }

    .menu-toggle,
    .header > button.cart-btn[type="button"],
    .header > button.cart-btn:not([type="button"]){
        width:42px;
        min-width:42px;
        height:42px;
        flex-basis:42px;
    }
}

/* =========================================================
   UAV83 - BANDEAU D'INFORMATION ADMINISTRABLE
   01/10/2026
   ========================================================= */
.uav-info-banner{
    --uav-info-bg:#f5b500;
    --uav-info-color:#161616;
    --uav-info-size:18px;
    --uav-info-speed:24s;
    width:100%;
    max-width:100%;
    background:var(--uav-info-bg);
    color:var(--uav-info-color);
    border-top:1px solid rgba(0,0,0,.08);
    border-bottom:1px solid rgba(0,0,0,.10);
    overflow:hidden;
    position:relative;
    z-index:10;
}
.uav-info-viewport{
    width:100%;
    overflow:hidden;
    padding:clamp(7px,1vw,12px) 0;
}
.uav-info-track{
    display:flex;
    align-items:center;
    width:max-content;
    min-width:100%;
    will-change:transform;
}
.uav-info-content{
    font-size:clamp(13px,1.2vw,var(--uav-info-size));
    line-height:1.35;
    padding:0 clamp(14px,3vw,42px);
    white-space:nowrap;
}
.uav-info-content p,
.uav-info-content div{
    display:inline;
    margin:0;
}
.uav-info-content a{
    color:inherit;
    text-decoration:underline;
    font-weight:700;
}
.uav-info-banner--defilant .uav-info-track{
    animation:uavInfoDefile var(--uav-info-speed) linear infinite;
}
.uav-info-banner--defilant:hover .uav-info-track{
    animation-play-state:paused;
}
.uav-info-banner--fixe .uav-info-track{
    width:100%;
    justify-content:center;
}
.uav-info-banner--fixe .uav-info-content{
    width:100%;
    text-align:center;
    white-space:normal;
}
@keyframes uavInfoDefile{
    from{transform:translateX(100vw)}
    to{transform:translateX(-100%)}
}
@media(max-width:700px){
    .uav-info-viewport{padding:7px 0}
    .uav-info-content{
        font-size:clamp(12px,3.8vw,18px);
        padding:0 16px;
    }
    .uav-info-banner--fixe .uav-info-content{
        padding:0 5%;
    }
}
@media(prefers-reduced-motion:reduce){
    .uav-info-banner--defilant .uav-info-track{
        animation:none;
        width:100%;
        justify-content:center;
    }
    .uav-info-banner--defilant .uav-info-content{
        width:100%;
        text-align:center;
        white-space:normal;
    }
}


/* =========================================================
   UAV83 - VISUEL TEMPORAIRE SUR LA PHOTO D'ACCUEIL
   Piloté depuis /admin/visuel_accueil.php
   ========================================================= */
.uav-hero-temp-visual{
    --uav-hero-visual-max:260px;
    position:absolute;
    z-index:6;
    right:7%;
    top:9%;
    width:min(var(--uav-hero-visual-max),26vw);
    max-width:var(--uav-hero-visual-max);
    display:flex;
    justify-content:center;
    align-items:center;
    pointer-events:auto;
}

.uav-hero-temp-visual a{
    display:block;
    max-width:100%;
    text-decoration:none;
}

.uav-hero-temp-visual img{
    display:block;
    width:auto;
    height:auto;
    max-width:100%;
    max-height:clamp(90px,13vw,190px);
    object-fit:contain;
    filter:drop-shadow(0 4px 10px rgba(0,0,0,.25));
}

/* Tablette / fenêtre moyenne :
   le visuel reste au-dessus de la signature placée en bas. */
@media (min-width:601px) and (max-width:1200px){
    .uav-hero-temp-visual{
        top:auto;
        right:5%;
        bottom:165px;
        width:min(var(--uav-hero-visual-max),25vw);
        max-width:240px;
    }

    .uav-hero-temp-visual img{
        max-height:120px;
    }
}

/* Téléphone : centré juste au-dessus de "Le Var, terre..." */
@media (max-width:700px){
    .uav-hero-temp-visual{
        left:50%;
        right:auto;
        top:auto;
        bottom:145px;
        transform:translateX(-50%);
        width:min(var(--uav-hero-visual-max),56vw);
        max-width:260px;
    }

    .uav-hero-temp-visual img{
        max-height:95px;
    }
}

@media (max-width:520px){
    .uav-hero-temp-visual{
        bottom:135px;
        width:min(var(--uav-hero-visual-max),60vw);
        max-width:220px;
    }

    .uav-hero-temp-visual img{
        max-height:82px;
    }
}

