/* SGH preview: extends existing glass components; space-fx remains untouched. */
.volume-section{padding:64px 0}.volume-section h2{font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:24px}.section-intro{max-width:65ch;color:var(--ink-soft);margin-bottom:30px}.volume-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.volume-card{min-width:0;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow-sm);border-radius:var(--radius);padding:28px;backdrop-filter:blur(16px) saturate(150%)}.volume-card h3{margin-bottom:14px;line-height:1.3}.volume-card p{color:var(--ink-soft);margin-bottom:18px}.volume-card ul{padding-left:20px;margin:18px 0 26px}.volume-card li{padding:5px 0}.solution-card{display:flex;flex-direction:column}.solution-card .btn{margin-top:auto;align-self:flex-start}.ic{color:var(--green-700)}.overline{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:800;color:var(--green-700);margin-bottom:12px}.product-status{display:inline-block;color:#0b6f4f;background:#ecfaf3;border:1px solid #c1e7d3;border-radius:30px;padding:5px 10px;font-size:.78rem;font-weight:700;margin-bottom:10px}.timeline{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;counter-reset:step;position:relative}.timeline:before{content:'';position:absolute;top:36px;left:20px;right:20px;height:2px;background:var(--green-200)}.timeline .volume-card{padding:22px 18px;position:relative}.step-number{display:flex;align-items:center;justify-content:space-between;font-size:1.4rem;font-weight:800;color:var(--green-700);margin-bottom:24px}.timeline h3{font-size:1rem}.timeline p{font-size:.85rem;margin:0}.split-panels{display:grid;grid-template-columns:1fr 1fr;gap:26px}.split-panels .volume-section{padding:0}.split-panels .volume-card{height:100%}.segment-hero{padding:70px 0 36px}.segment-hero .cta-box{text-align:left;padding:48px;display:grid;grid-template-columns:1.4fr .6fr;gap:36px;align-items:center}.segment-hero h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1.1;margin:16px 0 24px}.segment-hero .lead{font-size:1.1rem;max-width:58ch;margin-bottom:26px}.faq{max-width:900px;margin:auto}.faq details{border-bottom:1px solid #bdcec4;padding:22px 0}.faq summary{font-weight:800;cursor:pointer;padding-right:20px}.faq details p{padding:18px 0 0;color:var(--ink-soft);max-width:75ch}.bottom-cta{text-align:center;padding:42px}.bottom-cta p{max-width:60ch;margin:18px auto 28px}.foot-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:48px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;align-content:start}.footer-links>a{display:block;line-height:1.5;padding:5px 0}.footer-links p{grid-column:1/-1}footer p{margin:12px 0}.preview{padding:10px;text-align:center;background:#fff3ce;color:#5a4200;font-size:.85rem;font-weight:700}.nav-links details{position:relative}.nav-links details[open]>a{padding:10px;display:block;background:#fff}.nav-links details[open]{z-index:10}.nav-links summary{font-weight:700;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #0b6f4f;outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #0b6f4f;outline-offset:2px}.quote-heading{max-width:1100px;margin:0 auto 32px}.quote-heading h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:18px}form{max-width:1100px;margin:auto}fieldset.step-card{background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-radius:24px;padding:30px;margin:28px 0;box-shadow:var(--glass-shadow-sm);min-width:0;backdrop-filter:blur(16px)}legend{font-size:1.2rem;font-weight:800;padding:0 10px;color:var(--green-700)}label{display:block;font-size:.87rem;font-weight:700;margin:10px 0}input,select,textarea{display:block;width:100%;padding:12px;border:1px solid #99aba1;border-radius:10px;background:#fff;color:#17181c;font:inherit;margin-top:7px;min-width:0}input[type=checkbox]{display:inline;width:auto;margin-right:8px}textarea{min-height:120px}.product-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px}.product-row{display:flex;align-items:center;gap:12px;background:rgba(236,250,243,.75);border:1px solid #bed8c9;border-radius:16px;padding:18px;margin:18px 0}.product-row .product-fields{flex:1;grid-template-columns:1fr 1.4fr .8fr .8fr 1fr .9fr .7fr;gap:10px}.product-row label{font-size:.72rem;margin:0}.product-row input,.product-row select{padding:10px 7px;font-size:.82rem}.remove-product{font-size:.8rem;min-width:70px;padding:10px!important}button{font:inherit;cursor:pointer}.status{padding:16px;white-space:pre-line}.form-progress{display:flex;gap:10px;flex-wrap:wrap;list-style:none;margin:24px 0}.form-progress li{background:rgba(255,255,255,.7);border:1px solid #bed8c9;border-radius:30px;padding:8px 16px;font-size:.8rem;font-weight:700}.consent-label{padding:18px 0}.btn{white-space:normal;text-align:center}.quote-section{padding-top:48px}#privacy p{max-width:85ch}.fx-glare,.fx-shade{pointer-events:none}
@media(max-width:1000px){.timeline{grid-template-columns:repeat(3,minmax(0,1fr))}.product-row .product-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-links{gap:12px}.volume-grid{gap:18px}.volume-card{padding:24px}}
@media(max-width:720px){.volume-grid,.split-panels,.foot-grid{grid-template-columns:1fr}.volume-section{padding:38px 0}.timeline{grid-template-columns:1fr;gap:18px}.timeline:before{top:20px;bottom:20px;left:26px;right:auto;width:2px;height:auto}.timeline .volume-card{padding:22px 24px 22px 70px}.step-number{position:absolute;left:18px;top:20px;font-size:1.1rem;display:block}.segment-hero{padding:38px 0 12px}.segment-hero .cta-box{padding:28px;grid-template-columns:1fr;gap:12px}.segment-hero h1{font-size:2.1rem}.product-fields{grid-template-columns:1fr 1fr}.product-row{align-items:stretch;flex-direction:column}.product-row .product-fields{grid-template-columns:1fr 1fr}.product-row .remove-product{align-self:flex-end}.step-card{padding:20px!important}.footer-links{gap:14px}.foot-grid{gap:24px}.hero-grid{gap:26px}.nav-cta{gap:10px}.nav-cta .btn{padding:10px 13px;font-size:.75rem}.brand-logo{max-width:150px}.nav-links details[open]>a{font-size:.85rem}.bottom-cta{padding:30px 22px}.quote-heading{padding:0}.form-progress{gap:8px}.form-progress li{font-size:.72rem;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep active forms still while users type or tab between their fields. */
fieldset.step-card:focus-within{animation:none!important;transform:none!important}

.hero-actions small{display:block;font-size:.72rem;font-weight:500;margin-top:5px}.product-row .product-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.nav-links{gap:14px}.nav-links>a,.nav-links summary{font-size:.8rem}.nav-cta .btn{font-size:.78rem;padding:10px 12px}#repair-notice{max-width:1100px;margin:0 auto;padding:20px;background:var(--glass-bg);border-radius:16px}@media(max-width:720px){.product-row .product-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Hero: two audience buttons, label above sub-label */
.hero-actions .btn{flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.2;text-align:center}
.hero-actions .btn small{display:block;font-size:.74em;font-weight:500;opacity:.78}
/* Phone nav: keep Devis + menu; the pro-account button stays in the hero */
@media (max-width:600px){.nav-cta .btn-glass{display:none}}

/* Round four: equal customer routes, shared multi-page navigation and footer. */
.clients-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.clients-grid .volume-card{padding:24px;display:flex;flex-direction:column}.client-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--green-50);color:var(--green-700);font-size:1.7rem;margin-bottom:22px}.clients-grid h3{font-size:1.12rem;margin-bottom:0}.clients-grid ul{margin-top:14px}.client-actions{display:flex;flex-direction:column;gap:16px;margin-top:auto}.client-actions .btn{width:100%;align-self:stretch}.text-link{font-weight:700;color:var(--green-700);text-decoration:underline;text-underline-offset:4px}.volume-section>.wrap>.btn{margin-top:28px}.footer-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-bottom:32px}.footer-columns h2{font-size:1rem;margin-bottom:16px}.footer-columns a{display:block;padding:7px 0;color:var(--ink-soft)}.category-panel p{font-size:1.12rem}.category-panel .hero-actions{margin-bottom:0}.nav{max-width:1400px;width:calc(100% - 40px);padding:0 20px;gap:20px}.nav-links{gap:16px}.nav-links>a,.solutions-toggle{font-size:.78rem;font-weight:700}.nav-links .btn{padding:11px 12px;font-size:.76rem}.brand-logo img{height:32px;width:150px;max-width:150px}.solutions-menu{position:relative}.solutions-toggle{background:transparent;border:0;color:var(--ink-soft);padding:12px 0;white-space:nowrap}.solution-links{position:absolute;top:100%;left:0;min-width:290px;background:#fff;border:1px solid var(--green-100);border-radius:16px;padding:10px;box-shadow:var(--glass-shadow);z-index:180}.solution-links a{display:block;padding:12px!important;font-size:.9rem;border-radius:10px}.solution-links a:hover{background:var(--green-50)}.nav-links a:after{display:none}.segment-hero .hero-actions .btn{margin:0}.volume-card>.ic{display:block;font-size:1.5rem;margin-bottom:16px}.volume-card>.btn{margin:12px 8px 0 0}.faq{background:rgba(255,255,255,.5);border-radius:24px;padding:6px 28px;border:1px solid var(--glass-border)}.volume-section[id]{scroll-margin-top:120px}
@media(max-width:1200px){.nav-links{display:none}.menu-toggle{display:grid;place-items:center;margin-left:auto;flex-shrink:0}.nav.open .nav-links{display:flex;position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;align-items:stretch;gap:4px;background:#fff;padding:16px;border-radius:18px;box-shadow:var(--glass-shadow);max-height:calc(100dvh - 170px);overflow-y:auto}.nav-links>a{padding:12px;font-size:.9rem}.solutions-toggle{width:100%;text-align:left;padding:12px;font-size:.9rem}.solution-links{position:static;box-shadow:none;min-width:0;background:var(--green-50)}.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.clients-grid,.footer-columns{grid-template-columns:1fr}.clients-grid h3{min-height:0}.clients-grid .client-actions{margin-top:0}.nav{width:calc(100% - 32px);padding:0 16px}.footer-columns{gap:28px}.footer-columns a{padding:9px 0}.segment-hero .cta-box{padding:26px 22px}.segment-hero h1{overflow-wrap:anywhere}.hero-actions .btn{max-width:100%}.faq{padding:6px 20px}.volume-card{overflow-wrap:anywhere}}

/* Round-four visual review fixes: segment hero alignment, FAQ width, bottom CTA, category panels, product buttons. */
.segment-hero .cta-box p{margin:0 0 26px;max-width:58ch;text-align:left}
.segment-hero .cta-box .hero-actions{justify-content:flex-start;margin:0}
.faq{max-width:none;margin:0}
.bottom-cta{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px}
.bottom-cta p{flex:0 0 100%;margin:0 auto 14px}
.volume-section:has(.category-panel){padding:30px 0}
.category-panel{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;padding:22px 28px}
.category-panel .client-icon{margin:0;flex:none}
.category-panel p{flex:1 1 260px;margin:0}
.category-panel .hero-actions{flex:none;margin:0;justify-content:flex-end}
@media(max-width:720px){.category-panel{padding:22px}.category-panel .hero-actions{flex:1 1 100%;justify-content:flex-start}.category-panel .hero-actions .btn{flex:1 1 100%}}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.category-grid .category-panel{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;scroll-margin-top:120px}.category-grid .client-icon{margin:0 0 22px}.category-grid .category-panel p{flex:0 0 auto;margin:0 0 20px}.category-grid h2{font-size:1.35rem;line-height:1.3;margin-bottom:14px}.category-grid .category-panel .hero-actions{flex:0 0 auto;margin-top:auto;display:flex;flex-direction:column;flex-wrap:nowrap;gap:12px}.category-grid .hero-actions .btn{flex:none;width:100%;margin:0}.category-status{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.category-status .product-status{margin:0}@media(max-width:1000px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.category-grid{grid-template-columns:1fr}}

/* Catalogue brand grid and existing-device renewal workflow. */
.catalogue-brands .brand-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.catalogue-brands .brand-cell{display:grid;place-items:center;min-width:0;height:128px;padding:8px;background:#fff;border:1px solid var(--green-100);border-radius:18px}.catalogue-brands img{width:100%;height:112px;object-fit:contain}.reprise-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.reprise-intro{margin-top:24px;max-width:72ch}.equipment-options .volume-card{display:flex;flex-direction:column}.equipment-options .btn{align-self:flex-start;margin-top:auto}.reprise-checkbox{margin-top:24px}#trade-in-details[hidden]{display:none!important}@media(max-width:1000px){.reprise-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.catalogue-brands .brand-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.catalogue-brands .brand-cell{height:76px;padding:4px;border-radius:12px}.catalogue-brands img{height:68px}.reprise-steps{grid-template-columns:1fr}}
.equipment-options > .volume-card{display:flex;flex-direction:column;align-items:flex-start}
.equipment-options > .volume-card > .btn{margin-top:auto;white-space:normal;text-align:center}
.equipment-options > .volume-card > .text-link{margin-top:auto;margin-bottom:12px}
.equipment-options > .volume-card > br{display:none}
.reprise-steps .step-number{width:100%;align-self:flex-start}

.quote-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}@media(max-width:600px){.quote-heading{gap:12px}}
@media(min-width:1001px){.reprise-steps .volume-card h3{min-height:2.6em}}
@media(max-width:720px){}



.segment-hero .wrap + .wrap > p{margin:26px 0 0;max-width:80ch;color:var(--ink-soft);font-size:.95rem}

/* Round nine: original pastel emoji badges and shared bulb summary cards. */
.client-icon,.volume-card>.ic{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:#d6f4e6;font-size:1.5rem;line-height:1.2;flex:none}
.step-number{width:48px;min-height:48px;border-radius:11px;background:#fff3ce;padding:6px;font-size:1.15rem;gap:6px}
.segment-hero .cta-box{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
.segment-hero .hero-visual{max-width:462px}.segment-hero .hv-item .t span{display:block;font-size:.8rem;line-height:1.5}.segment-hero .hv-card{padding:24px}
.quote-heading{align-items:start}.quote-heading>.hero-visual{flex:0 1 440px}.quote-heading>div:first-child{flex:1;min-width:0}
@media(max-width:720px){.segment-hero .cta-box{grid-template-columns:minmax(0,1fr)}.quote-heading{flex-direction:column}.quote-heading>.hero-visual{flex:auto;width:100%;margin:auto}.hv-card{width:100%}.step-number{display:flex;flex-direction:column;width:42px}}

/* Subpage summaries keep their original bulb SVG above the text. */
.segment-hero .hv-card,.quote-heading .hv-card{display:flex;height:auto;padding:24px;--gl-cy:116px}
.segment-hero .hv-orb,.quote-heading .hv-orb{position:relative;inset:auto;margin:0;width:184px;height:184px}
.segment-hero .hv-list,.quote-heading .hv-list{position:relative;inset:auto;display:flex;flex-direction:column;gap:11px;pointer-events:auto}
.segment-hero .hv-item,.quote-heading .hv-item{position:relative;inset:auto;width:100%;max-width:none}
.segment-hero .hv-3d .hv-orb,.quote-heading .hv-3d .hv-orb{opacity:1;scale:1}
.segment-hero .hv-gl,.segment-hero .hv-gl-shadow,.segment-hero .hv-gl-glow,.quote-heading .hv-gl,.quote-heading .hv-gl-shadow,.quote-heading .hv-gl-glow{display:none}
/* QA9: devis hero — h1 + lead stacked left, hero-visual right (markup is a flat 3-child flex row) */
@media(min-width:721px){.quote-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);grid-template-rows:auto 1fr;column-gap:48px;row-gap:0;align-items:start}.quote-heading>.seo-h1{grid-column:1;grid-row:1;margin-bottom:16px}.quote-heading>.lead{grid-column:1;grid-row:2;margin:0}.quote-heading>.hero-visual{grid-column:2;grid-row:1 / span 2;flex:none;width:100%}}
/* Contact reuses the quote form controls and cards at full grid width. */
#formulaire{grid-column:1/-1;scroll-margin-top:110px}

/* Contact form: static card (no float/tilt while typing), fields in two columns */
.contact-card{grid-column:1/-1;background:var(--glass-bg-strong);border:1px solid var(--glass-border);border-top:3px solid var(--green-500);border-radius:var(--radius);padding:34px 36px;box-shadow:var(--glass-shadow-sm)}
.contact-card fieldset.step-card{background:none;border:0;box-shadow:none;backdrop-filter:none;padding:0;margin:0}
.contact-card legend{font-family:"Sora","Manrope",sans-serif;font-size:1.4rem;color:var(--ink);padding:0;margin-bottom:6px}
.contact-intro{color:var(--ink-soft);margin:0 0 14px}
.contact-card .product-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-card .product-fields>label:last-child{grid-column:1/-1}
@media(max-width:720px){.contact-card{padding:24px 18px}.contact-card fieldset.step-card{padding:0!important}.contact-card .product-fields{grid-template-columns:1fr}}
