/* Phytextra — feuille de style unique */
/* Polices auto-hébergées (conformité RGPD — aucune requête vers Google) */
@font-face{font-family:'Quicksand';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/quicksand-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Quicksand';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/quicksand-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Quicksand';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/quicksand-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/source-sans-3-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/source-sans-3-latin-400-italic.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/source-sans-3-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/source-sans-3-latin-700-normal.woff2') format('woff2')}

:root{--bleu:#323D5B;--vert:#63BA96;--vert-f:#3d8a68;--beige:#F2C691;
--texte:#3c4358;--gris:#7d8497;--filet:#dfe2ea;--fond-img:#f4f5f7}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Source Sans 3',sans-serif;color:var(--texte);background:#fff;line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:'Quicksand',sans-serif;color:var(--bleu);font-weight:600}
img{max-width:100%;display:block}
a{color:var(--bleu);text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px}
.overline{font-family:'Quicksand',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--vert-f)}
/* Header */
header{border-bottom:1px solid var(--filet);background:#fff}
.bandeau{background:var(--bleu);color:#cfd6ea;font-size:12.5px;text-align:center;padding:5px 16px;letter-spacing:.04em}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0 14px}
.nav .logo img{height:28px;width:auto}
.nav ul{display:flex;gap:32px;list-style:none;align-items:center}
.nav ul a{font-family:'Quicksand',sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--bleu);padding-bottom:3px}
.nav ul a.actif{border-bottom:2px solid var(--vert)}
.nav ul a:hover{color:var(--vert-f)}
.lang{font-family:'Quicksand',sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.1em;color:#a7adc0;white-space:nowrap}
.lang b{color:var(--bleu)}
.lang a{color:#a7adc0}.lang a:hover{color:var(--bleu)}
#burger,label.burger{display:none}
/* Fil d'Ariane */
.fil{padding:16px 0 0;font-size:13px;color:#9aa0b2}
.fil a{color:#9aa0b2}.fil a:hover{color:var(--bleu)}
.fil span{margin:0 7px;color:#cdd1dd}
.fil strong{color:var(--bleu)}
/* Hero fiche produit */
.hero{display:grid;grid-template-columns:5fr 6fr;gap:52px;padding:28px 0 22px;align-items:start}
.figure{background:linear-gradient(180deg,#f6f4f0 0%,#efece6 61.8%,#e2ddd2 62%,#ece8df 78%,#f1eee7 100%);padding:34px 30px 8px;position:relative}
.figure img{position:relative;z-index:2;margin:0 auto;max-height:430px;max-width:100%;width:auto;height:auto}
.figure figcaption{position:relative;z-index:2;font-size:12.5px;color:var(--gris);border-top:1px solid #dcd6c9;margin-top:14px;padding:10px 0;display:flex;justify-content:space-between;letter-spacing:.03em}
.hero h1{font-size:42px;font-weight:700;line-height:1.05;margin:10px 0 2px}
.actifs{font-size:17.5px;margin-bottom:16px}
.actifs em{font-style:normal;color:var(--vert-f)}
.pitch{font-size:16px;max-width:54ch;margin-bottom:22px}
dl.specs{border-top:1px solid var(--filet);margin-bottom:26px}
dl.specs div{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid var(--filet);padding:8px 0}
dl.specs dt{font-family:'Quicksand',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gris);padding-top:3px}
dl.specs dd{color:var(--bleu);font-weight:600;font-size:15.5px}
.btns{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.btn{font-family:'Quicksand',sans-serif;font-weight:700;font-size:13px;letter-spacing:.09em;text-transform:uppercase;background:var(--bleu);color:#fff;padding:13px 28px;transition:.2s;display:inline-block;border:none;cursor:pointer}
.btn:hover{background:var(--vert-f)}
.lien{font-family:'Quicksand',sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--vert);padding-bottom:3px}
/* Sections document */
.doc{padding:20px 0 6px}
.section{display:grid;grid-template-columns:210px 1fr;gap:44px;padding:30px 0;border-top:1px solid var(--filet)}
.section .num{font-family:'Quicksand',sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--bleu)}
.section .num i{display:block;font-style:normal;font-size:26px;color:#d8dbe5;font-weight:500;margin-bottom:4px}
.section h2{font-size:21px;margin-bottom:12px}
.section p{max-width:64ch}
.poso{display:flex;border:1px solid var(--filet);margin-top:18px}
.poso div{flex:1;padding:14px 18px;border-right:1px solid var(--filet)}
.poso div:last-child{border-right:none}
.poso b{font-family:'Quicksand',sans-serif;display:block;color:var(--bleu);font-size:16px;margin-bottom:1px}
.poso small{font-size:13px;color:var(--gris)}
table{width:100%;border-collapse:collapse;font-size:15px;margin-top:6px}
th{font-family:'Quicksand',sans-serif;text-align:left;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--gris);font-weight:700;padding:0 0 8px;border-bottom:2px solid var(--bleu)}
th:last-child,td:last-child{text-align:right}
td{padding:9px 0;border-bottom:1px solid var(--filet);vertical-align:top}
td b{color:var(--bleu);font-weight:600}
td small{color:var(--gris)}
.note-tab{font-size:12.5px;color:var(--gris);margin-top:12px;max-width:72ch}
ul.mentions{list-style:none;max-width:68ch}
ul.mentions li{padding:7px 0 7px 20px;position:relative;border-bottom:1px solid var(--filet);font-size:15px}
ul.mentions li::before{content:'\2014';position:absolute;left:0;color:var(--vert-f)}
ul.mentions li:last-child{border-bottom:none}
/* Bandeau qualité */
.strip{border-top:1px solid var(--filet);border-bottom:1px solid var(--filet);margin:22px 0 0;padding:26px 0}
.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.strip .s-item{padding:0 26px;border-right:1px solid var(--filet)}
.strip .s-item:first-child{padding-left:0}
.strip .s-item:last-child{border-right:none}
.strip b{font-family:'Quicksand',sans-serif;display:block;color:var(--bleu);font-size:14.5px;margin-bottom:2px}
.strip small{font-size:12.5px;color:var(--gris);line-height:1.45;display:block}
/* FAQ + liés */
.bloc{padding:8px 0}
.qa{border-bottom:1px solid var(--filet);padding:14px 0;max-width:68ch}
.qa:first-of-type{border-top:1px solid var(--filet)}
.qa h3{font-size:16px;margin-bottom:6px}
.qa p{font-size:15px}
.lies ul{list-style:none}
.lies li{border-bottom:1px solid var(--filet)}
.lies a{display:flex;justify-content:space-between;align-items:baseline;padding:12px 4px;transition:.15s;gap:18px}
.lies a:hover{background:#fafbfc;padding-left:12px}
.lies .nom{font-family:'Quicksand',sans-serif;font-weight:700;color:var(--bleu);font-size:16px;white-space:nowrap}
.lies .desc{color:var(--gris);font-size:13.5px;flex:1}
.lies .fl{color:var(--vert-f)}
.fin{padding-bottom:56px}
/* --- Accueil --- */
.h-hero{display:grid;grid-template-columns:6fr 5fr;gap:56px;align-items:center;padding:52px 0 56px}
.h-hero h1{font-size:40px;line-height:1.12;margin:12px 0 16px;font-weight:700}
.h-hero .pitch{margin-bottom:26px}
.h-photo{position:relative}
.h-photo img{width:100%;height:auto}
.h-photo::after{content:'';position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--filet);z-index:-1}
.chiffres{border-top:1px solid var(--filet);border-bottom:1px solid var(--filet);padding:28px 0}
.chiffres .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.chiffres .c{padding:0 26px;border-right:1px solid var(--filet)}
.chiffres .c:first-child{padding-left:0}
.chiffres .c:last-child{border-right:none}
.chiffres b{font-family:'Quicksand',sans-serif;display:block;color:var(--bleu);font-size:26px;font-weight:700}
.chiffres small{font-size:13px;color:var(--gris)}
.h-sec{padding:52px 0 8px}
.h-sec .head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:22px}
.h-sec h2{font-size:26px}
.grille{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--filet);border:1px solid var(--filet)}
.g-item{background:#fff;padding:26px 26px 22px;transition:.15s}
.g-item:hover{background:#fafbfc}
.g-item .g-img{background:linear-gradient(180deg,#f6f4f0 0%,#efece6 63%,#e2ddd2 63.3%,#f0ede6 100%);margin:-26px -26px 18px;padding:22px;display:flex;align-items:flex-end;justify-content:center;height:210px}
.g-item .g-img img{max-height:165px;max-width:100%;width:auto;height:auto}
.g-item h3{font-size:17.5px;letter-spacing:.02em}
.g-item .cat{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--vert-f)}
.g-item p{font-size:13.5px;color:var(--gris);margin-top:6px}
.g-vide{padding:0}
/* Bande défilante produits */
.defile{overflow:hidden;border-top:1px solid var(--filet);border-bottom:1px solid var(--filet);padding:22px 0;background:#fff}
.defile .piste{display:flex;width:max-content;animation:defiler 55s linear infinite}
.defile a{flex:none;margin-right:64px;display:flex;align-items:flex-end}
.defile img{height:120px;width:auto}
.defile:hover .piste{animation-play-state:paused}
@keyframes defiler{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){.defile .piste{animation:none}}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;padding:56px 0}
.duo img{width:100%;height:340px;object-fit:cover}
.duo h2{font-size:26px;margin:10px 0 14px}
.duo p{margin-bottom:12px}
/* --- Catalogue --- */
.cat-head{padding:40px 0 8px}
.cat-head h1{font-size:34px;margin:8px 0 10px}
.cat-head p{max-width:70ch}
.ancres{display:flex;flex-wrap:wrap;gap:10px 26px;padding:18px 0 26px;border-bottom:1px solid var(--filet)}
.ancres a{font-family:'Quicksand',sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gris);border-bottom:2px solid transparent;padding-bottom:2px}
.ancres a:hover{color:var(--bleu);border-color:var(--vert)}
.cat-sec{padding:36px 0 8px}
.cat-sec h2{font-size:22px;margin-bottom:4px}
.cat-sec .intro{color:var(--gris);font-size:14.5px;max-width:72ch;margin-bottom:20px}
/* --- Pages éditoriales --- */
.page-head{padding:44px 0 10px}
.page-head h1{font-size:36px;margin:8px 0 12px}
.page-head p.chapo{font-size:17.5px;max-width:64ch}
.edito{display:grid;grid-template-columns:210px 1fr;gap:44px;padding:34px 0;border-top:1px solid var(--filet)}
.edito .num{font-family:'Quicksand',sans-serif;font-size:12.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--bleu)}
.edito .num i{display:block;font-style:normal;font-size:26px;color:#d8dbe5;font-weight:500;margin-bottom:4px}
.edito h2{font-size:21px;margin-bottom:12px}
.edito p{max-width:64ch;margin-bottom:12px}
.edito ul.liste{list-style:none;max-width:64ch}
.edito ul.liste li{padding:6px 0 6px 20px;position:relative;border-bottom:1px solid var(--filet);font-size:15px}
.edito ul.liste li::before{content:'\2014';position:absolute;left:0;color:var(--vert-f)}
.edito ul.liste li:last-child{border-bottom:none}
.photo-large{padding:10px 0 30px}
.photo-large img{width:100%;height:380px;object-fit:cover}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:none}
.certifs{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 26px;border:1px solid var(--filet);padding:34px 30px;margin:8px 0 4px}
.certifs .c-logo{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;justify-content:flex-end}
.certifs img{height:62px;width:auto}
.certifs small{font-size:12px;color:var(--gris);line-height:1.4}
/* --- Contact --- */
.c-grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;padding:36px 0 60px}
.c-grid h2{font-size:19px;margin-bottom:14px}
.coords{list-style:none}
.coords li{padding:10px 0;border-bottom:1px solid var(--filet);font-size:15.5px}
.coords li b{font-family:'Quicksand',sans-serif;display:block;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--gris);margin-bottom:2px}
.coords li a{color:var(--bleu);font-weight:600}
form .champ{margin-bottom:16px}
form label{font-family:'Quicksand',sans-serif;display:block;font-size:11.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gris);margin-bottom:6px}
form input,form textarea{width:100%;border:1px solid var(--filet);padding:12px 14px;font-family:'Source Sans 3',sans-serif;font-size:15.5px;color:var(--texte);background:#fff}
form input:focus,form textarea:focus{outline:none;border-color:var(--vert)}
form textarea{min-height:140px;resize:vertical}
.hp{position:absolute;left:-9999px}
.rgpd{font-size:12.5px;color:var(--gris);margin:-2px 0 16px;max-width:60ch}
/* Footer */
footer{background:var(--bleu);color:#aab3cf;padding:44px 0 26px;font-size:14px;margin-top:40px}
.f-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:40px;margin-bottom:34px}
.f-grid img{height:24px;width:auto;margin-bottom:14px}
.f-grid p{font-size:13.5px;max-width:34ch}
.f-grid h5{font-family:'Quicksand',sans-serif;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:12px}
.f-grid ul{list-style:none}
.f-grid ul li{margin-bottom:7px}
.f-grid a{color:#aab3cf}.f-grid a:hover{color:#fff}
.f-bas{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;display:flex;justify-content:space-between;font-size:12px;color:#7e88a8;flex-wrap:wrap;gap:8px}
.f-bas a{color:#7e88a8}.f-bas a:hover{color:#fff}
/* Responsive */
@media(max-width:920px){
 .hero,.h-hero,.duo,.c-grid{grid-template-columns:1fr;gap:30px}
 .hero h1{font-size:34px}.h-hero h1{font-size:30px}
 .section,.edito{grid-template-columns:1fr;gap:14px}
 .strip .wrap,.chiffres .wrap{grid-template-columns:1fr 1fr;row-gap:22px}
 .strip .s-item,.chiffres .c{padding:0;border-right:none}
 .poso{flex-direction:column}
 .poso div{border-right:none;border-bottom:1px solid var(--filet)}
 .poso div:last-child{border-bottom:none}
 .grille{grid-template-columns:1fr}
 .f-grid{grid-template-columns:1fr 1fr}
 dl.specs div{grid-template-columns:120px 1fr}
 .h-photo::after{display:none}
 .nav ul{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;gap:0;border-bottom:1px solid var(--filet);padding:8px 28px 16px;z-index:60}
 .nav ul li{padding:10px 0}
 .nav{position:relative}
 #burger:checked ~ ul{display:flex}
 label.burger{display:block;font-size:22px;color:var(--bleu);cursor:pointer;order:3;margin-left:18px}
 .cols2{grid-template-columns:1fr}
 .certifs{grid-template-columns:1fr 1fr}
}
