/* Envie2Neuf — styles complémentaires à theme.json. */

/* Boutons des blocs Envie2Neuf */
.e2n-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:52px;padding:0 1.4rem;border-radius:999px;border:1.5px solid transparent;font:inherit;font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s;box-sizing:border-box}
.e2n-btn:focus-visible{outline:2px solid var(--wp--preset--color--ink);outline-offset:3px}
.e2n-btn .e2n-icon{flex:none}
.e2n-btn--primary{background:var(--wp--preset--color--accent);color:#fff}
.e2n-btn--primary:hover{background:var(--wp--preset--color--accent-dark);color:#fff}
.e2n-btn--primary[disabled]{opacity:.7;cursor:wait}
.e2n-btn--whatsapp{background:#fff;color:var(--wp--preset--color--ink);border-color:var(--wp--preset--color--ink)}
.e2n-btn--whatsapp:hover{background:var(--wp--preset--color--accent-soft);color:var(--wp--preset--color--ink)}
.e2n-btn--ghost{background:transparent;color:var(--wp--preset--color--ink);border-color:var(--wp--preset--color--line)}
.e2n-btn--ghost:hover{border-color:var(--wp--preset--color--ink);color:var(--wp--preset--color--ink)}
.e2n-cta--md .e2n-btn{min-height:44px;padding:0 1.1rem;font-size:.95rem}
.e2n-cta--dark .e2n-btn--whatsapp{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.e2n-cta--dark .e2n-btn--whatsapp:hover{background:rgba(255,255,255,.08)}
.e2n-cta--dark .e2n-btn--ghost{color:#fff;border-color:rgba(255,255,255,.35)}
.e2n-cta--dark .e2n-btn--primary{background:#fff;color:var(--wp--preset--color--ink)}
.e2n-cta--dark .e2n-btn--primary:hover{background:var(--wp--preset--color--accent-soft)}
.e2n-icon{display:inline-block;vertical-align:middle}
.e2n-admin-hint{display:inline-block;padding:.5rem .75rem;border:1px dashed #C9A227;border-radius:8px;background:#FFF8E1;color:#5C4A00;font-size:.85rem}

/* Styles de blocs du thème */
.is-style-e2n-card{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--line);border-radius:var(--wp--custom--radius--card,20px);padding:clamp(1.25rem,2.5vw,1.75rem)}
.is-style-e2n-dark{background:var(--wp--preset--color--ink);color:#E6EAE8}
.is-style-e2n-dark :where(h1,h2,h3,h4){color:#fff}
.is-style-e2n-dark a:where(:not(.e2n-btn):not(.wp-element-button)){color:#9FD8C6}
.is-style-e2n-dark .wp-block-button__link{background:#fff;color:var(--wp--preset--color--ink)}
.is-style-e2n-dark .wp-block-button__link:hover{background:var(--wp--preset--color--accent-soft);color:var(--wp--preset--color--ink)}
.wp-block-column > .is-style-e2n-card:only-child{height:100%;box-sizing:border-box}
ul.is-style-e2n-checks{list-style:none;padding-left:0}
ul.is-style-e2n-checks li{position:relative;padding-left:1.9rem;margin-bottom:.45rem}
ul.is-style-e2n-checks li::before{content:"";position:absolute;left:0;top:.2em;width:1.2rem;height:1.2rem;border-radius:50%;background:var(--wp--preset--color--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E6B57' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/70% no-repeat}
p.is-style-e2n-eyebrow{font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--accent)}
.is-style-e2n-dark p.is-style-e2n-eyebrow{color:#7FC7B2}

/* En-tête */
.e2n-header{border-bottom:1px solid var(--wp--preset--color--line)}
.e2n-logo{margin:0;font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:1.6rem;letter-spacing:-.02em;line-height:1}
.e2n-logo a{color:var(--wp--preset--color--ink);text-decoration:none}
.e2n-logo mark{background:none;color:var(--wp--preset--color--accent)}
.e2n-logo-sub{margin:.2rem 0 0;font-size:.75rem;color:var(--wp--preset--color--muted)}
@media (max-width:781px){.e2n-header .e2n-cta{display:none}}

/* Numéros d'étapes */
.e2n-num{font-family:var(--wp--preset--font-family--heading);font-weight:700;color:var(--wp--preset--color--accent)}
.e2n-step-card{border-top:3px solid var(--wp--preset--color--accent);padding-top:1.1rem}

/* Prix « à partir de » */
.e2n-price{font-weight:600}
.e2n-price strong{font-family:var(--wp--preset--font-family--heading);font-size:1.35rem}

/* FAQ */
.wp-block-details summary{cursor:pointer;font-weight:600;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:"+";flex:none;width:1.75rem;height:1.75rem;border-radius:50%;display:grid;place-items:center;background:var(--wp--preset--color--accent-soft);color:var(--wp--preset--color--accent);font-weight:600}
.wp-block-details[open] summary::after{content:"–"}
.wp-block-details[open] summary{color:var(--wp--preset--color--accent)}
.wp-block-details > :not(summary){margin-top:.6rem;color:var(--wp--preset--color--ink-soft)}

/* Barre mobile */
.e2n-bar{display:none}
@media (max-width:781px){
	body.has-e2n-bar{padding-bottom:72px}
	.e2n-bar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:flex;gap:.4rem;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--wp--preset--color--line);box-shadow:0 -4px 16px rgba(22,32,28,.08)}
	.e2n-bar a{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:52px;border-radius:12px;font-size:.78rem;font-weight:600;color:var(--wp--preset--color--ink);text-decoration:none}
	.e2n-bar a.e2n-bar__main{flex:1.5 1 0;flex-direction:row;gap:.45rem;font-size:.95rem;background:var(--wp--preset--color--accent);color:#fff}
}

/* Bandeau cookies */
.e2n-consent{position:fixed;z-index:100;left:1rem;right:1rem;bottom:1rem;max-width:560px;margin-left:auto;padding:1.1rem 1.25rem;background:var(--wp--preset--color--surface);color:var(--wp--preset--color--ink);border:1px solid var(--wp--preset--color--line);border-radius:16px;box-shadow:0 8px 32px rgba(22,32,28,.18);font-size:.92rem}
.e2n-consent[hidden]{display:none}
.e2n-consent__text{margin:0 0 .85rem}
.e2n-consent__actions{display:flex;gap:.6rem;flex-wrap:wrap}
.e2n-consent__actions .e2n-btn{flex:1 1 140px;min-height:46px}
@media (max-width:781px){.has-e2n-bar .e2n-consent{bottom:84px}}
body:not(.has-e2n-consent) .e2n-consent-open{display:none}

/* Pied de page */
.e2n-footer a{color:inherit}
.e2n-footer a:hover{color:#9FD8C6}
.e2n-footer .e2n-zone__list span,.e2n-footer .e2n-zone__list a{background:transparent;border-color:rgba(255,255,255,.2);color:#E6EAE8;min-height:34px;font-size:.85rem}
.e2n-footer .e2n-zone__label .e2n-icon{color:#7FC7B2}
.e2n-footer .e2n-zone__more{color:#C9D2CE!important;border-color:rgba(255,255,255,.3)!important}
.e2n-footer .e2n-crumbs{display:none}

/* Accessibilité */
.skip-link:focus{background:#fff;color:var(--wp--preset--color--ink);padding:.75rem 1rem;z-index:1000}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Mise en page : sections pleine largeur collées */
.wp-site-blocks > main,.wp-site-blocks > footer{margin-block-start:0}
.wp-block-post-content > .alignfull,.e2n-main > .alignfull{margin-block-start:0;margin-block-end:0}
.e2n-center{text-align:center}
.e2n-cta-band .e2n-cta{justify-content:center}
.e2n-crumbs-wrap{padding-top:var(--wp--preset--spacing--30)}
.wp-block-columns + .wp-block-columns{margin-top:var(--wp--preset--spacing--40)}

/* Pied de page */
.e2n-footer .e2n-logo a{color:#fff}
.e2n-footer__title{margin-bottom:.5rem;color:#fff}
ul.e2n-footer__links{list-style:none;padding-left:0;margin:0;display:flex;flex-direction:column;gap:.45rem;font-size:.95rem}
.e2n-footer__links a,.e2n-footer__bottom a{text-decoration:none}
.e2n-footer__bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:var(--wp--preset--spacing--30);margin-top:var(--wp--preset--spacing--50);font-size:.85rem;opacity:.85}
body:not(.has-e2n-consent) a[href="#cookies"],body:not(.has-e2n-consent) .e2n-footer__bottom p:has(> a[href="#cookies"]){display:none}

/* Navigation */
.e2n-header .wp-block-navigation .wp-block-navigation__submenu-container{border-radius:12px;border:1px solid var(--wp--preset--color--line);padding:.4rem;min-width:240px}
.e2n-header .wp-block-navigation .wp-block-navigation-item__content{padding:.35rem .5rem}

/* Largeur de lecture dans les sections larges */
.e2n-wide > :is(p,h2,h3,ul,ol,.wp-block-details){max-width:760px}
.e2n-wide > h2{max-width:22ch}
.e2n-wide > .wp-block-details{max-width:860px}

/* ---------------------------------------------------------------------------
 * v1.2 — matières, tarifs, en-tête plein cadre, journée type.
 * ------------------------------------------------------------------------- */

/* Textures des finitions (rendu indicatif, sans image). */
:root{
	--e2n-tex-chene:repeating-linear-gradient(91deg,rgba(122,84,44,.13) 0 2px,transparent 2px 9px),repeating-linear-gradient(89deg,rgba(255,255,255,.10) 0 1px,transparent 1px 15px),linear-gradient(180deg,#D6B98F,#C4A274);
	--e2n-tex-noyer:repeating-linear-gradient(91deg,rgba(30,16,8,.22) 0 2px,transparent 2px 8px),repeating-linear-gradient(88deg,rgba(255,220,180,.07) 0 1px,transparent 1px 13px),linear-gradient(180deg,#77543B,#5E412D);
	--e2n-tex-marbre:linear-gradient(118deg,transparent 38%,rgba(110,112,118,.28) 39%,transparent 41.5%),linear-gradient(64deg,transparent 60%,rgba(130,132,138,.2) 61%,transparent 64%),linear-gradient(150deg,transparent 15%,rgba(150,150,155,.14) 16%,transparent 18%),linear-gradient(180deg,#F5F4F1,#E9E8E4);
	--e2n-tex-beton:radial-gradient(rgba(0,0,0,.09) 1px,transparent 1.6px) 0 0/7px 7px,radial-gradient(rgba(255,255,255,.12) 1px,transparent 1.6px) 3px 4px/11px 11px,linear-gradient(180deg,#A6A8A3,#8F928D);
	--e2n-tex-sauge:linear-gradient(180deg,rgba(255,255,255,.06),rgba(0,0,0,.05)),#8DA08B;
	--e2n-tex-noir:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.08)),#262B28;
	--e2n-tex-verre:linear-gradient(135deg,rgba(255,255,255,.75),rgba(255,255,255,.15) 48%,rgba(255,255,255,.5) 52%,rgba(255,255,255,.1)),#B9CED2;
	--e2n-tex-solaire:linear-gradient(135deg,rgba(255,255,255,.35),transparent 55%,rgba(255,255,255,.15)),#5F6D73;
	--e2n-tex-ancien:repeating-linear-gradient(91deg,rgba(60,20,10,.16) 0 2px,transparent 2px 10px),linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0) 40%),linear-gradient(180deg,#A2593A,#8C4A2F);
}
.e2n-tex{display:inline-block;background:var(--e2n-tex-chene);box-shadow:inset 0 0 0 1px rgba(20,27,24,.08)}
.e2n-tex--chene{background:var(--e2n-tex-chene)}
.e2n-tex--noyer{background:var(--e2n-tex-noyer)}
.e2n-tex--marbre{background:var(--e2n-tex-marbre)}
.e2n-tex--beton{background:var(--e2n-tex-beton)}
.e2n-tex--sauge{background:var(--e2n-tex-sauge)}
.e2n-tex--noir{background:var(--e2n-tex-noir)}
.e2n-tex--verre{background:var(--e2n-tex-verre)}
.e2n-tex--solaire{background:var(--e2n-tex-solaire)}

/* Titres d'affiche */
:is(h1,h2).e2n-display{font-size:clamp(2.3rem,5vw,4.25rem);line-height:1;letter-spacing:-.035em;text-wrap:balance}
.e2n-hero--full h1.e2n-display{font-size:clamp(2.9rem,8.4vw,7.25rem);line-height:.94;letter-spacing:-.045em;max-width:11ch;margin-top:.35rem}
.e2n-hero .is-style-e2n-eyebrow{margin-bottom:0}
h2{text-wrap:balance}

/* En-tête plein cadre */
.e2n-hero--full .e2n-hero__text{margin-bottom:var(--wp--preset--spacing--50)}
.e2n-hero--full .e2n-hero__text .wp-block-columns{gap:clamp(1.5rem,4vw,4rem);margin-bottom:0}
.e2n-hero--full .e2n-hero__text .wp-block-column:last-child > p{margin-top:0}
.e2n-ba--hero{margin-block:0!important}
.e2n-ba--hero .e2n-ba__stage{height:clamp(420px,52vw,760px);border-radius:0}
.e2n-ba--hero .e2n-ba__tag{top:1.25rem}
.e2n-ba--hero .e2n-ba__tag--before{left:max(1rem,calc((100% - 1240px)/2))}
.e2n-ba--hero .e2n-ba__tag--after{right:max(1rem,calc((100% - 1240px)/2))}
.e2n-ba--hero .e2n-ba__caption{position:absolute;z-index:3;left:max(1rem,calc((100% - 1240px)/2));bottom:1.25rem;margin:0;padding:.45rem .9rem;border-radius:999px;background:rgba(20,27,24,.74);color:#fff;font-size:.85rem;pointer-events:none;backdrop-filter:blur(6px)}
.e2n-ba--hero .e2n-ba__handle::after{width:56px;height:56px;margin:-28px 0 0 -28px}
@media (max-width:600px){.e2n-ba--hero .e2n-ba__stage{height:min(118vw,560px)}.e2n-ba--hero .e2n-ba__caption{right:1rem;bottom:1rem;border-radius:12px}}

/* Visuels d'attente (avant les vraies photos) : façades dessinées. */
.e2n-ba__ph{--e2n-ph:var(--e2n-tex-chene);background:linear-gradient(180deg,transparent 36%,#F1EFEA 36% 48%,transparent 48%),linear-gradient(180deg,transparent 48%,#2F3532 48% 53%,transparent 53%),repeating-linear-gradient(90deg,transparent 0 calc(12.5% - 4px),rgba(20,27,24,.2) calc(12.5% - 4px) 12.5%),var(--e2n-ph)!important}
.e2n-ba__before.e2n-ba__ph{--e2n-ph:var(--e2n-tex-ancien)}
.e2n-ba__ph > span{padding:.35rem .7rem;border-radius:999px;background:rgba(255,255,255,.88);color:var(--wp--preset--color--ink);font-size:.8rem}
.e2n-ba--hero .e2n-ba__ph{align-items:flex-start;padding-top:4.25rem}
.e2n-ba--hero .e2n-ba__ph > span{display:none}

/* Nuancier */
.e2n-nuancier{display:grid;gap:1rem;--e2n-finish:var(--e2n-tex-chene)}
.e2n-nuancier__kitchen{position:relative;aspect-ratio:16/11;display:grid;grid-template-rows:34% 1fr 5% 43%;padding:6% 7% 5%;box-sizing:border-box;border-radius:var(--wp--custom--radius--card,20px);background:linear-gradient(180deg,#F7F6F2 0 60%,#ECEAE4 60%);box-shadow:0 18px 40px -24px rgba(20,27,24,.35);overflow:hidden}
.e2n-nuancier__row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;grid-row:4}
.e2n-nuancier__row--top{grid-template-columns:repeat(3,1fr);grid-row:1;width:75%}
.e2n-nuancier__row span{position:relative;border-radius:3px;background:var(--e2n-finish);box-shadow:inset 0 0 0 1px rgba(20,27,24,.07),0 2px 4px rgba(20,27,24,.12);animation:e2n-swap .35s ease}
.e2n-nuancier__row span::after{content:"";position:absolute;left:36%;right:36%;height:3px;border-radius:2px;background:linear-gradient(180deg,#E8EAE7,#9EA3A0)}
.e2n-nuancier__row--top span::after{bottom:9%}
.e2n-nuancier__row:not(.e2n-nuancier__row--top) span::after{top:9%}
.e2n-nuancier__worktop{grid-row:3;margin:0 -2%;border-radius:2px;background:linear-gradient(180deg,#3A403C,#2A2F2C);box-shadow:0 3px 6px rgba(20,27,24,.2)}
.e2n-nuancier__label{position:absolute;top:1rem;right:1rem;padding:.35rem .8rem;border-radius:999px;background:rgba(255,255,255,.92);font-size:.85rem;font-weight:600;color:var(--wp--preset--color--ink);box-shadow:0 1px 3px rgba(20,27,24,.12)}
.e2n-nuancier__swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem}
.e2n-nuancier__sw{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.45rem .3rem .5rem;border:1.5px solid transparent;border-radius:14px;background:transparent;font:inherit;color:var(--wp--preset--color--ink-soft);cursor:pointer;transition:border-color .15s,background .15s}
.e2n-nuancier__sw .e2n-tex{width:100%;aspect-ratio:1;border-radius:10px}
.e2n-nuancier__sw:hover{background:rgba(255,255,255,.55)}
.e2n-nuancier__sw[aria-pressed="true"]{border-color:var(--wp--preset--color--ink);background:var(--wp--preset--color--surface);color:var(--wp--preset--color--ink)}
.e2n-nuancier__sw:focus-visible{outline:2px solid var(--wp--preset--color--accent);outline-offset:2px}
.e2n-nuancier__name{font-size:.78rem;font-weight:600;line-height:1.2;text-align:center}
.e2n-nuancier__note{margin:0;font-size:.82rem;color:var(--wp--preset--color--muted)}
@keyframes e2n-swap{from{opacity:.4}to{opacity:1}}
@media (max-width:600px){.e2n-nuancier__swatches{grid-template-columns:repeat(3,1fr)}}

/* Tarifs */
.e2n-tarifs__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--wp--preset--color--line)}
.e2n-tarifs__list li{border-bottom:1px solid var(--wp--preset--color--line)}
.e2n-tarifs__row{display:grid;grid-template-columns:60px minmax(0,1fr) auto 1.5rem;gap:1.5rem;align-items:center;padding:1.2rem .25rem;color:var(--wp--preset--color--ink);text-decoration:none;transition:background .15s,padding .15s}
.e2n-tarifs__row:hover,.e2n-tarifs__row:focus-visible{background:var(--wp--preset--color--surface);padding-inline:1rem;color:var(--wp--preset--color--ink)}
.e2n-tarifs__row .e2n-tex{width:60px;height:60px;border-radius:12px}
.e2n-tarifs__name{display:block;font-family:var(--wp--preset--font-family--heading);font-weight:800;font-size:clamp(1.2rem,1.9vw,1.6rem);line-height:1.1;letter-spacing:-.02em}
.e2n-tarifs__desc{display:block;margin-top:.25rem;font-size:.95rem;color:var(--wp--preset--color--muted)}
.e2n-tarifs__price{display:grid;justify-items:end;text-align:right;line-height:1.15}
.e2n-tarifs__from,.e2n-tarifs__unit{font-size:.8rem;color:var(--wp--preset--color--muted)}
.e2n-tarifs__from{text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.e2n-tarifs__price strong{font-family:var(--wp--preset--font-family--heading);font-weight:800;font-size:clamp(1.35rem,2.2vw,1.85rem);letter-spacing:-.02em;white-space:nowrap}
.e2n-tarifs__arrow{font-size:1.3rem;color:var(--wp--preset--color--accent);transition:transform .15s}
.e2n-tarifs__row:hover .e2n-tarifs__arrow{transform:translateX(4px)}
.e2n-tarifs__note{margin:1.25rem 0 0;font-size:var(--wp--preset--font-size--small);color:var(--wp--preset--color--muted)}
@media (max-width:700px){
	.e2n-tarifs__row{grid-template-columns:48px minmax(0,1fr);gap:.4rem 1rem;padding-block:1rem}
	.e2n-tarifs__row .e2n-tex{width:48px;height:48px;grid-row:span 2;align-self:start}
	.e2n-tarifs__price{grid-column:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .4rem;text-align:left}
	.e2n-tarifs__arrow{display:none}
	.e2n-tarifs__row:hover{padding-inline:.25rem}
}

/* Journée type */
.e2n-journee{gap:1.5rem!important}
.e2n-journee > .wp-block-column{position:relative;border-top:1px solid rgba(255,255,255,.2);padding-top:1.4rem}
.e2n-journee > .wp-block-column::before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:#7FC7B2}
.e2n-journee > .wp-block-column:last-child::before{background:#fff;box-shadow:0 0 0 4px rgba(127,199,178,.35)}
.e2n-time{margin:0 0 .9rem;font-family:var(--wp--preset--font-family--heading);font-weight:800;font-size:clamp(2.1rem,3.6vw,3.25rem);line-height:1;letter-spacing:-.04em;color:#7FC7B2}
.e2n-journee > .wp-block-column:last-child .e2n-time{color:#fff}
.e2n-journee p:not(.e2n-time){color:#C3CDC8}
.e2n-muted-on-dark{color:#AEB9B4}
@media (max-width:781px){
	.e2n-journee{gap:0!important}
	.e2n-journee > .wp-block-column{border-top:0;border-left:1px solid rgba(255,255,255,.2);padding:0 0 1.5rem 1.4rem}
	.e2n-journee > .wp-block-column::before{top:.45rem;left:-5px}
	.e2n-time{font-size:1.9rem;margin-bottom:.35rem}
}

/* Carte prix (pages prestation) */
.e2n-price-card{border-top:4px solid var(--wp--preset--color--accent)}
.e2n-price-card .e2n-price strong{display:block;margin:.2rem 0;font-size:clamp(2rem,3.6vw,2.75rem);font-weight:800;letter-spacing:-.03em}
@media (min-width:782px){.e2n-price-card{position:sticky;top:6.5rem}}

/* Sections sombres plus profondes */
.e2n-journee-section{background:var(--wp--preset--color--dark)!important}

.e2n-footer .e2n-logo mark{color:#7FC7B2}
