/* ==========================================================================
   VITEAM – feuille de style commune (sources d'intégration, octobre 2026)
   Couleurs charte : ivoire #FBFAF6 · vert #ABD47B · violet #87518B · anthracite #353334
   Les styles de mise en page sont portés par les attributs style des pages
   (copie fidèle de la maquette validée). Ce fichier regroupe : polices, base,
   FAQ, formulaires, bandeau cookies.
   ========================================================================== */
@font-face{font-family:'Nexa Black';src:url(../fonts/nexa-black.woff2) format('woff2');font-weight:900;font-display:swap}
@font-face{font-family:'Myriad';src:url(../fonts/myriad-regular.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Myriad';src:url(../fonts/myriad-semibold.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Myriad';src:url(../fonts/myriad-bold.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Myriad Light SC';src:url(../fonts/myriad-light-semicondensed.woff2) format('woff2');font-weight:300;font-display:swap}

:root{--v-ivoire:#FBFAF6;--v-vert:#ABD47B;--v-violet:#87518B;--v-violet-fonce:#6A3F6D;--v-anthracite:#353334;--v-gris:#5F5B5D;--v-filet:#E6E3DB}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Myriad',sans-serif;background:#FBFAF6;color:#353334;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:#87518B}a:hover{color:#6A3F6D}
input,select,textarea,button{font-family:'Myriad',sans-serif}
input[type=checkbox]{accent-color:#87518B}
:focus-visible{outline:3px solid #87518B;outline-offset:2px}
.v-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* FAQ : flèche violette, ouverte par défaut */
summary{cursor:pointer}
details>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px}
details>summary::-webkit-details-marker{display:none}
details>summary::after{content:'';flex-shrink:0;width:11px;height:11px;margin-right:6px;border-right:3px solid #87518B;border-bottom:3px solid #87518B;transform:translateY(-3px) rotate(45deg);transition:transform .2s}
details[open]>summary::after{transform:translateY(3px) rotate(-135deg)}

/* Formulaires */
input:not([type=checkbox]):focus,textarea:focus{outline:none;border-color:#87518B!important;box-shadow:0 0 0 3px rgba(135,81,139,.18)}
.v-form-error{display:none;padding:10px 14px;border-radius:6px;background:#F7EDF7;color:#6A3F6D;font-size:15px;font-weight:600}
.v-form-error.is-visible{display:block}

/* Devis : état coché des cartes de choix (remplace la logique de la maquette) */
.v-choice--vendange:has(input:checked){background:#ABD47B!important}
.v-choice--vendange:has(input:checked) .v-choice__title{color:#353334!important}
.v-choice--vendange:has(input:checked) .v-choice__badge{background:#87518B!important;color:#FBFAF6!important}
.v-choice--saison:has(input:checked){background:#ABD47B!important;border-style:solid!important}
.v-choice--saison:has(input:checked) .v-choice__title{color:#353334!important}
.v-choice--item:has(input:checked){background:#ABD47B!important;border-color:#ABD47B!important}
.v-choice--item:has(input:checked) .v-choice__hint{color:#353334!important}

/* Bandeau cookies */
.v-cookie{position:fixed;left:0;right:0;bottom:0;z-index:1000;padding:16px;box-sizing:border-box;pointer-events:none}
.v-cookie[hidden]{display:none}
.v-cookie>div{pointer-events:auto;box-shadow:0 8px 32px rgba(53,51,52,.18)}
.v-cookie [hidden]{display:none!important}

@media (max-width:640px){
  /* grilles 2 colonnes des formulaires en 1 colonne sur mobile */
  .v-grid-2{grid-template-columns:minmax(0,1fr)!important}
  /* badge des cartes de choix : passe à la ligne sous le texte */
  .v-choice{flex-wrap:wrap}
  .v-choice>span:not(.v-choice__badge){flex:1 1 0!important;min-width:0}
  .v-choice__badge{margin-left:36px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}details>summary::after{transition:none}}

/* En-tête et menu mobile (sous 960 px) */
.v-mob{display:none;align-items:center;gap:8px}
.v-mob__tel{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:6px;border:2px solid #87518B;color:#87518B;box-sizing:border-box}
.v-mob__devis{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:6px;background:#87518B;color:#FBFAF6!important;text-decoration:none;font-weight:700;font-size:15px}
.v-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:6px;background:#353334;cursor:pointer}
.v-burger__bars,.v-burger__bars::before,.v-burger__bars::after{display:block;width:20px;height:2px;background:#FBFAF6;border-radius:2px;position:relative;transition:transform .2s}
.v-burger__bars::before,.v-burger__bars::after{content:'';position:absolute;left:0}
.v-burger__bars::before{top:-6px}.v-burger__bars::after{top:6px}
.v-burger[aria-expanded=true] .v-burger__bars{background:transparent}
.v-burger[aria-expanded=true] .v-burger__bars::before{transform:translateY(6px) rotate(45deg)}
.v-burger[aria-expanded=true] .v-burger__bars::after{transform:translateY(-6px) rotate(-45deg)}
@media (max-width:960px){
  header{position:sticky;top:0;z-index:50}
  header img{height:40px!important}
  header>div{padding:10px 16px!important;gap:10px!important}
  .v-mob{display:flex}
  .v-nav{display:none!important}
  .v-nav.is-open{display:flex!important;flex-direction:column;align-items:stretch!important;gap:0!important;width:100%;padding:4px 0 8px}
  .v-nav.is-open a{padding:13px 4px;border-top:1px solid #E6E3DB;font-size:17px}
  .v-nav.is-open a[href="tel:0326094196"],.v-nav.is-open a:last-child{display:none!important}
}
@media (max-width:380px){.v-mob__devis{padding:0 10px;font-size:14px}}
@media (max-width:640px){
  h1{font-size:38px!important}
  [style*="grid-template-columns: 220px"]{grid-template-columns:minmax(0,1fr)!important;gap:2px 0!important}
}

/* Champ anti-spam invisible (ne pas supprimer) */
.v-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
