.cwv-comp{--noir: #07090D; --noir2: #0A0E14; --panneau: #0D1420; --panneau2: #101A28; --marine: #0C3F5E; --marine-clair: #155A82; --marine-glow: #1E6FA0; --jaune: #F1E100; --blanc: #FFFFFF; --texte: #D3DBE3; --gris: #A8B4C0; --gris2: #8A97A5; --papier: #F4F6F8; --encre: #0A0E14; --encre2: #3B4856; --wa: #25D366; --bord: rgba(255, 255, 255, .1); --bord2: rgba(255, 255, 255, .2); --r: 18px; --entete: 76px; --display: 'Bebas Neue', 'Arial Narrow', Impact, sans-serif; --sans: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;}
.cwv-comp,.cwv-comp *,.cwv-comp *::before,.cwv-comp *::after{box-sizing:border-box}
.cwv-comp :where(p,h2,h3,h4,ul,ol,li,fieldset,legend,figure,table,dl,dd){margin:0;padding:0}
.cwv-comp ul,.cwv-comp ol,.et_pb_text .cwv-comp ul,.et_pb_text .cwv-comp ol{list-style:none;padding:0}
.cwv-comp p,.et_pb_text .cwv-comp p{padding-bottom:0}
.cwv-comp :where(button,input,select,textarea){font:inherit;color:inherit}
.cwv-comp img{max-width:100%;height:auto;display:block}
.cwv-comp a{color:inherit}
.cwv-comp .sr-only{position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;}
.cwv-comp .ic{width: 20px; height: 20px; flex: none;}
.cwv-comp .fiche a:focus-visible{outline-color: var(--marine-glow);}
.cwv-comp .btn{display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 10px 26px; border-radius: 999px; border: 1.5px solid transparent; font: 800 15px/1.25 var(--sans); letter-spacing: .01em; text-align: center; text-decoration: none; cursor: pointer; transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease, border-color .18s ease;}
.cwv-comp .btn .ic{width: 18px; height: 18px;}
.cwv-comp .btn--grand{min-height: 58px; padding: 12px 30px; font-size: 16px;}
.cwv-comp .btn--jaune{background: var(--jaune); color: #0B0B00; box-shadow: 0 10px 30px rgba(241, 225, 0, .18);}
.cwv-comp .btn--jaune:hover{transform: translateY(-2px); box-shadow: 0 16px 40px rgba(241, 225, 0, .28);}
.cwv-comp .btn--jaune:focus-visible{outline-color: var(--blanc);}
.cwv-comp .btn--fantome{background: rgba(255, 255, 255, .06); color: var(--blanc); border-color: var(--bord2);}
.cwv-comp .btn--fantome:hover{background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .35);}
.cwv-comp .btn--wa{background: rgba(37, 211, 102, .08); color: var(--blanc); border-color: rgba(37, 211, 102, .55);}
.cwv-comp .btn--wa .ic{color: var(--wa);}
.cwv-comp .btn--wa:hover{background: rgba(37, 211, 102, .16);}
.cwv-comp .btn--encre{background: var(--encre); color: var(--blanc); width: 100%;}
.cwv-comp .btn--encre:hover{background: var(--marine);}
.cwv-comp .btn--encre .ic{color: var(--jaune);}
.cwv-comp .lien-fleche .ic{width: 18px; height: 18px;}
.cwv-comp .surtitre .ic{width: 14px; height: 14px;}
.cwv-comp .consentement a{color: var(--jaune); text-underline-offset: 3px;}
.cwv-comp .mention-tarifs{display: flex; align-items: center; gap: 8px; margin-top: 18px; font-size: 14px; line-height: 1.45; color: var(--gris2);}
.cwv-comp .mention-tarifs .ic{width: 12px; height: 12px; color: var(--jaune);}
.cwv-comp .mention-tarifs--papier,.cwv-comp .plaque .mention-tarifs{color: var(--encre2);}
.cwv-comp .mention-tarifs--papier .ic,.cwv-comp .plaque .mention-tarifs .ic{color: var(--marine);}
.cwv-comp .menu-mobile a:not(.btn){display: flex; align-items: center; min-height: 52px; font-weight: 700; font-size: 19px; color: var(--blanc); text-decoration: none; border-bottom: 1px solid var(--bord);}
.cwv-comp .plaque .mention-tarifs{margin-top: 6px;}
.cwv-comp .fiche{position: relative; display: flex; flex-direction: column; padding: 0 28px 28px; border-radius: 8px; background: linear-gradient(180deg, #FFFFFF, var(--papier) 140px); color: var(--encre); box-shadow: 0 30px 70px rgba(0, 0, 0, .5), 0 2px 0 rgba(0, 0, 0, .25);}
.cwv-comp .fiche__bandeau .ic{width: 14px; height: 14px; color: var(--jaune);}
.cwv-comp .fiche__liste .ic{width: 18px; height: 18px; margin-top: 2px; color: var(--marine); stroke-width: 2.6;}
.cwv-comp .formule__avantage-titre .ic{width: 12px; height: 12px; color: var(--jaune);}
.cwv-comp .formule__liste .ic{width: 18px; height: 18px; margin-top: 2px; color: var(--gris2); stroke-width: 2.4;}
.cwv-comp .formule--vedette .formule__liste .ic{color: var(--jaune);}
.cwv-comp .option-carte__prix .prix-montant{display: block; font: 800 17px/1.3 var(--sans); color: var(--blanc); font-variant-numeric: tabular-nums;}
@media (max-width: 699px){.cwv-comp .option-carte__prix .prix-montant{font-size: 16px;}}
.cwv-comp .config{display: grid; grid-template-columns: minmax(0, 1fr) 400px; column-gap: 56px; align-items: start;}
.cwv-comp .config > .etape,.cwv-comp .config > .config__envoi{grid-column: 1;}
.cwv-comp .config > .fiche--live{grid-column: 2; grid-row: 1 / span 7; position: sticky; top: calc(var(--entete) + 20px); max-height: calc(100vh - var(--entete) - 40px); overflow-y: auto; overscroll-behavior: contain;}
.cwv-comp .etape{min-width: 0; margin: 0 0 20px; padding: 28px; border: 1px solid var(--bord); border-radius: var(--r); background: linear-gradient(165deg, var(--panneau2), var(--panneau));}
.cwv-comp .etape legend{float: left; width: 100%; display: flex; align-items: center; gap: 14px; margin: 0 0 18px; padding: 0; font: 400 32px/1 var(--display); letter-spacing: .02em; text-transform: uppercase; color: var(--blanc);}
.cwv-comp .etape legend + *{clear: both;}
.cwv-comp .choix{display: grid; gap: 12px;}
.cwv-comp .choix--formules,.cwv-comp .choix--options{grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));}
.cwv-comp .choix--tailles{grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 20px;}
.cwv-comp .choix--lieux{grid-template-columns: minmax(0, 1fr); margin-bottom: 18px;}
.cwv-comp .champ{display: grid; gap: 8px; align-content: start; margin: 0 0 16px;}
.cwv-comp .champ label{font-weight: 700; font-size: 15px; color: var(--blanc);}
.cwv-comp .champ input,.cwv-comp .champ textarea{width: 100%; min-height: 52px; padding: 12px 16px; border-radius: 12px; border: 1.5px solid var(--bord2); background: var(--noir2); color: var(--blanc); font: 500 17px/1.4 var(--sans); color-scheme: dark;}
.cwv-comp .champ textarea{min-height: 120px; resize: vertical;}
.cwv-comp .champ input:focus-visible,.cwv-comp .champ textarea:focus-visible{border-color: var(--jaune); outline-offset: 2px;}
.cwv-comp .champ input:user-invalid,.cwv-comp .champ textarea:user-invalid{border-color: #FF8A80;}
.cwv-comp .champs-duo{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px;}
.cwv-comp .champs-duo[data-adresse]{grid-template-columns: 150px minmax(0, 1fr);}
.cwv-comp .config__envoi .btn{width: 100%;}
.cwv-comp .fiche--live{padding-bottom: 24px;}
.cwv-comp .no-js .fiche--live{display: none;}
.cwv-comp .grilles{display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 28px; align-items: start;}
.cwv-comp .grille{width: 100%; border-collapse: separate; border-spacing: 0; border: 1px solid var(--bord); border-radius: var(--r); overflow: hidden; background: linear-gradient(165deg, var(--panneau2), var(--panneau)); font-variant-numeric: tabular-nums;}
.cwv-comp .grille th,.cwv-comp .grille td{padding: 14px 18px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--bord);}
.cwv-comp .grille tr:last-child th,.cwv-comp .grille tr:last-child td{border-bottom: 0;}
.cwv-comp .grille thead th{font: 800 14px/1.3 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--gris);}
.cwv-comp .grille thead th span{display: block; margin-top: 2px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--gris2);}
.cwv-comp .grille tbody th{font-weight: 800; color: var(--blanc);}
.cwv-comp .grille td{color: #E6EBF0; white-space: nowrap;}
.cwv-comp .pied__reseaux .ic{width: 20px; height: 20px;}
.cwv-comp .consentement{position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; padding: 16px 0 calc(16px + env(safe-area-inset-bottom)); background: #0B1520; border-top: 1px solid rgba(30, 111, 160, .55); box-shadow: 0 -20px 50px rgba(0, 0, 0, .5);}
.cwv-comp .consentement p{max-width: 760px; font-size: 15px; line-height: 1.5; color: var(--texte);}
.cwv-comp .consentement__actions .btn{min-height: 48px; padding: 8px 18px;}
@media (max-width: 999px){.cwv-comp .config{grid-template-columns: minmax(0, 1fr);}.cwv-comp .config > .fiche--live{grid-column: 1; grid-row: auto; position: static; max-height: none; overflow: visible; margin-bottom: 24px;}.cwv-comp .grilles{grid-template-columns: minmax(0, 1fr);}}
@media (max-width: 760px){.cwv-comp .etape{padding: 22px 18px;}.cwv-comp .etape legend{font-size: 28px;}.cwv-comp .choix--tailles{grid-template-columns: minmax(0, 1fr);}.cwv-comp .champs-duo{grid-template-columns: minmax(0, 1fr);}.cwv-comp .champs-duo[data-adresse]{grid-template-columns: 110px minmax(0, 1fr);}.cwv-comp .fiche{padding: 0 22px 24px;}.cwv-comp .heros__actions .btn,.cwv-comp .final__actions .btn,.cwv-comp .contact__boutons .btn,.cwv-comp .coupon__action .btn,.cwv-comp .adresse__liens .btn{width: 100%;}.cwv-comp .consentement{padding: 8px 0 calc(8px + env(safe-area-inset-bottom));}.cwv-comp .consentement .conteneur{padding-left: 16px; padding-right: 16px;}.cwv-comp .consentement p{font-size: 14px; line-height: 1.35;}.cwv-comp .consentement__actions .btn{min-height: 44px; padding: 6px 14px;}.cwv-comp .grille td{white-space: normal;}}
@media (max-width: 760px){.cwv-comp .recap .heros__actions .btn{width: 100%;}}
.cwv-comp .prix-montant{white-space: nowrap;}
.cwv-comp .prix-demande{font-weight: 600; color: var(--gris);}
.cwv-comp .grille td .prix-montant{display: block;}
.cwv-comp .grille tbody th span{display: block; margin-top: 2px; font-weight: 500; font-size: 14px; line-height: 1.4; color: var(--gris);}
.cwv-comp .grille tbody th a,.cwv-comp .grille tbody th span a{color: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--jaune);}
.cwv-comp .grille tbody th a:focus-visible{outline: 3px solid var(--jaune); outline-offset: 2px;}
.cwv-comp .grilles{grid-template-columns: repeat(2, minmax(0, 1fr));}
.cwv-comp .grille--formules{grid-column: 1 / -1;}
.cwv-comp .plaque__lignes .prix-montant{display: block; font-weight: 800; font-size: 17px;}
@media (max-width: 1099px){.cwv-comp .grilles{grid-template-columns: minmax(0, 1fr);}.cwv-comp .grille--formules thead{position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);}.cwv-comp .grille--formules,.cwv-comp .grille--formules tbody,.cwv-comp .grille--formules tr,.cwv-comp .grille--formules th,.cwv-comp .grille--formules td{display: block;}.cwv-comp .grille--formules tr{padding: 14px 18px; border-bottom: 1px solid var(--bord);}.cwv-comp .grille--formules tr:last-child{border-bottom: 0;}.cwv-comp .grille--formules th,.cwv-comp .grille--formules td{padding: 5px 0; border: 0;}.cwv-comp .grille--formules td{display: flex; justify-content: space-between; align-items: baseline; gap: 12px; white-space: normal;}.cwv-comp .grille--formules td::before{content: attr(data-label); color: var(--gris);}.cwv-comp .grille--formules td .prix{text-align: right;}}
@media (min-width: 640px) and (max-width: 1099px){.cwv-comp .grille--formules tr{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px;}.cwv-comp .grille--formules th,.cwv-comp .grille--formules td[colspan]{grid-column: 1 / -1;}}
@media (max-width: 560px){.cwv-comp .grille--options,.cwv-comp .grille--options thead,.cwv-comp .grille--options tbody,.cwv-comp .grille--options tr,.cwv-comp .grille--options th,.cwv-comp .grille--options td{display: block;}.cwv-comp .grille--options tr{padding: 12px 16px; border-bottom: 1px solid var(--bord);}.cwv-comp .grille--options tbody tr:last-child{border-bottom: 0;}.cwv-comp .grille--options th,.cwv-comp .grille--options td{padding: 0; border: 0;}.cwv-comp .grille--options thead th + th{display: none;}.cwv-comp .grille--options td{margin-top: 4px;}}
.cwv-comp .cwv-recap{white-space:pre-wrap;font:500 15px/1.6 var(--sans);background:linear-gradient(165deg,var(--panneau2),var(--panneau));border:1px solid var(--bord);border-radius:var(--r);padding:22px 24px;color:var(--texte);max-width:760px;margin-top:18px}
.cwv-comp .cwv-erreur{border:1px solid rgba(241,225,0,.55);background:rgba(241,225,0,.06);color:var(--blanc);border-radius:12px;padding:14px 18px;margin:0 0 24px}
.cwv-comp .cwv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cwv-comp .consentement{z-index:99999}
.cwv-comp .conteneur{width:100%;max-width:1248px;margin:0 auto;padding-left:24px;padding-right:24px}
.cwv-comp.cwv-config>.conteneur{max-width:none;padding-left:0;padding-right:0}
