/* SUIV-IT Studio — 2026-10-29. Small shared layer; legacy assets remain available. */
@keyframes studio-in{from{opacity:.1;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes studio-out{to{opacity:0;transform:translateY(-6px)}}
.studio{--ink:#193d33;--muted:#666258;--line:#d5ccbb;--bg:#f2eee5;--blue:#8b4c2a;--lime:#d8ac77;--max:1320px;background:var(--bg);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif}
.studio .shell{width:min(var(--max),calc(100% - 112px));margin-inline:auto}
.studio h1,.studio h2,.studio h3{font-family:"Segoe UI",Arial,sans-serif;font-weight:600;letter-spacing:-.055em;text-wrap:balance;line-height:1.04}
.studio .eyebrow{font-size:11px;letter-spacing:.13em;font-weight:650;line-height:1.6}
.studio .eyebrow::before{display:none}
.studio .site-header,.studio .site-header.scrolled{background:#f7f2e8;border-bottom:1px solid var(--line);box-shadow:none;backdrop-filter:blur(14px)}
.studio .nav{height:88px;gap:28px}
.studio .nav-links{font-size:13px;font-weight:600;gap:23px}
.studio .nav-links a{min-height:44px;display:flex;align-items:center}
.studio .nav-cta,.studio .button{border-radius:4px;font-weight:600;letter-spacing:-.015em;box-shadow:none;min-height:54px;padding:17px 23px;display:inline-flex;align-items:center;justify-content:center;gap:25px;transition:background .25s,transform .25s,color .25s}
.studio .nav-cta{min-height:46px;padding:12px 20px;font-size:13px}
.studio .button-primary,.studio .nav-cta{background:#8b4c2a;color:#fff8ef;border:1px solid #8b4c2a}
.studio .button-primary:hover,.studio .nav-cta:hover{background:#703d21;border-color:#703d21;box-shadow:none}
.studio .button span[aria-hidden]{margin:0}
.studio .link-arrow{display:inline-block;font-size:23px;font-weight:400;transition:transform .3s;line-height:1}
.studio a:hover .link-arrow{transform:translate(3px,-3px)}
.studio :is(a,button,summary,input,textarea,select):focus-visible{outline:3px solid #aa7647;outline-offset:5px}
.studio .text-link{border-bottom:1px solid currentColor;border-radius:0;gap:28px;font-weight:600;padding:8px 0;min-height:46px}
.studio .section,.studio .studio-section{padding:112px 0}
.studio .section-tight{padding:64px 0}
.studio .section-title,.studio .section-intro h2{font-size:clamp(38px,4.7vw,66px);font-weight:550}
.studio .section-intro{margin-bottom:50px}
.studio .section-intro p:not(.eyebrow){max-width:500px;color:var(--muted);font-size:17px;line-height:1.7}
.studio .section-intro h2{margin:0 0 25px}
.studio main{animation:studio-in .45s ease both}
.studio .reveal{transition:opacity .75s ease,transform .85s cubic-bezier(.2,.65,.2,1)}
.studio .js .reveal:not(.visible){transform:translateY(24px)}
.anchor-alias{display:block;scroll-margin-top:110px}

/* A typographic opening, no portrait and no slogan wall. */
.studio-home-hero{position:relative;background:#193d33;color:#f2eee5;padding:34px 0 62px;overflow:hidden;isolation:isolate}
.hero-topline{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #87957355;padding:0 0 26px;gap:20px;font-size:12px;color:#e4dfcf}
.hero-topline .eyebrow{color:#d8ac77;margin:0}
.studio-home-hero h1{font-size:clamp(60px,8.55vw,124px);line-height:1.04;margin:64px 0 52px;font-weight:500;letter-spacing:-.065em}
.studio-home-hero .title-line{display:block;animation:studio-title .95s cubic-bezier(.18,.65,.2,1) both}
.studio-home-hero .title-line:nth-child(2){animation-delay:.12s;color:#d8ac77}
@keyframes studio-title{from{opacity:0;transform:translateY(35px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
.home-hero-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:32px}
.home-hero-bottom p{font-size:18px;line-height:1.7;color:#dfdfce;margin-bottom:28px}
.hero-explore{display:flex;align-items:center;gap:44px;font-size:13px;border-bottom:1px solid #82917a;padding:14px 0;min-height:48px;flex-shrink:0}
.hero-explore span{font-size:24px}
.hero-linework{position:absolute;width:65%;right:-6%;bottom:92px;z-index:-1;opacity:.25;pointer-events:none;transform:translateY(calc(var(--studio-scroll,0)*18px))}
.hero-linework path{stroke:#d8ac77;stroke-width:1}
.hero-linework .line-travel{stroke:#f2eee5;stroke-width:2;stroke-dasharray:25 900;animation:line-travel 4.5s linear 1}
@keyframes line-travel{to{stroke-dashoffset:-925}}
.service-directory{background:#f8f4eb}
.service-routes{border-top:1px solid #cfc3ad}
.service-route{display:grid;grid-template-columns:200px 1fr 64px;align-items:center;gap:35px;padding:40px 0;border-bottom:1px solid #cfc3ad;min-height:155px}
.route-index{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#666258}
.service-route h3{font-size:clamp(29px,3.2vw,44px);margin:0 0 12px;transition:transform .4s}
.service-route p{font-size:16px;color:var(--muted);margin:0;max-width:620px;line-height:1.6}
.service-route .link-arrow{width:58px;height:58px;display:grid;place-items:center;border:1px solid #cfc3ad;border-radius:50%;font-size:30px;transition:color .3s,background .3s,transform .3s}
.service-route:hover h3{transform:translateX(7px)}
.service-route:hover .link-arrow{background:#193d33;color:#f2eee5;transform:rotate(5deg)}
.directory-local{font-size:12px;line-height:1.8;color:var(--muted);margin:30px 0 0}
.directory-local a{text-decoration:underline;text-underline-offset:5px}
.directory-local .link-arrow{font-size:14px}
.studio-home-energy{padding:100px 0;background:#e5e7da}
.home-energy-layout{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px}
.home-energy-copy h2{font-size:clamp(37px,4vw,58px);line-height:1.09;margin:15px 0 30px}
.home-energy-copy h2 span{color:#8b4c2a}
.home-house{position:relative;display:block;overflow:hidden;border-radius:3px}
.home-house img{width:100%;height:auto;transition:transform 1s cubic-bezier(.2,.65,.2,1)}
.home-house:hover img{transform:scale(1.025)}
.image-link{position:absolute;bottom:18px;right:18px;padding:14px 20px;background:#f2eee5;color:#193d33;font-size:12px;display:flex;align-items:center;gap:26px}
.studio-contact-band{padding:105px 0;background:#e8decc;text-align:left}
.studio-contact-band .shell{max-width:1050px}
.studio-contact-band h2{font-size:clamp(40px,5.8vw,80px);max-width:950px;margin:0 0 30px}
.studio-contact-band p:not(.eyebrow){max-width:660px;font-size:18px;color:#616353;line-height:1.7;margin-bottom:28px}
.studio-contact-band .quiet-link{font-size:12px!important;margin:25px 0 0!important}
.quiet-link .link-arrow{font-size:14px}

/* Professionals: one organized list instead of overlapping service cards. */
.studio-page-hero{padding:90px 0 85px;background:#f2eee5;border-bottom:1px solid var(--line)}
.studio-page-hero h1{font-size:clamp(48px,6.8vw,92px);max-width:1100px;margin:20px 0 42px;font-weight:500;line-height:1.08}
.page-hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:60px}
.page-hero-bottom .lead{font-size:20px;max-width:620px;margin:0;color:var(--muted)}
.page-hero-bottom .button{flex-shrink:0}
.editorial-services{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}
.studio .service-accordion{border-top:1px solid #d5ccbb}
.service-accordion details{border-bottom:1px solid #d5ccbb;padding:0}
.service-accordion summary{display:flex;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:24px;line-height:1.3;padding:29px 0;font-weight:550}
.service-accordion summary::-webkit-details-marker{display:none}
.service-accordion summary span:first-child{font-size:11px;color:#71695d;margin-right:6px}
.service-accordion summary span:last-child{margin-left:auto;font-size:27px;font-weight:300;transition:transform .25s}
.service-accordion details[open] summary span:last-child{transform:rotate(45deg)}
.service-accordion details>div{padding:0 0 32px 43px;max-width:610px}
.service-accordion details[open]>div{animation:studio-in .3s ease both}
.service-accordion p{font-size:17px;line-height:1.75;color:var(--muted);margin-bottom:15px}
.studio-backup{background:#193d33;color:#f2eee5;padding:100px 0}
.backup-layout{display:grid;grid-template-columns:.6fr 1.4fr;gap:65px}
.studio-backup .eyebrow{color:#d8ac77}
.studio-backup h2{font-size:clamp(35px,4.8vw,65px);line-height:1.12;margin-bottom:30px}
.studio-backup h2 span{color:#d8ac77}
.studio-backup p{max-width:680px;font-size:19px;color:#dcddc9;line-height:1.7}
.studio-backup .text-link{color:#f2eee5}

/* About: the portrait belongs to the person’s story. */
.studio .about-intro .lead{max-width:770px;font-size:22px;color:var(--muted)}
.studio.page-a-propos .split{grid-template-columns:1fr .8fr;gap:100px;align-items:center}
.studio .studio-portrait{display:block;border-radius:3px;background:#fbf8f0;overflow:hidden;box-shadow:none;margin:0}
.studio .studio-portrait img{width:100%;height:460px;object-fit:cover;object-position:50% 26%;border-radius:0}
.studio .studio-portrait figcaption{padding:25px 27px}
.studio .studio-portrait figcaption strong{font-size:21px;display:block}
.studio .studio-portrait figcaption span{font-size:12px;color:var(--muted);display:block;margin-top:6px}
.studio .studio-portrait .local-context{font-size:13px;line-height:1.7;margin:15px 0 0}
.studio .quote-panel{padding:30px 0;border:0;background:none;box-shadow:none}
.studio .quote-panel blockquote{max-width:1040px;font-size:clamp(32px,4.5vw,62px);line-height:1.17;font-weight:450;letter-spacing:-.04em;margin:0 0 30px}
.studio .quote-panel cite{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#d8ac77;font-style:normal}
.studio .cta-panel{border-radius:3px;box-shadow:none;background:#e8decc;padding:60px}

/* Advice: keep all eighteen texts and downloads, reduce the containers. */
.studio .edu-hero{background:#e9e1d2;padding:80px 0}
.studio .edu-hero h1{font-size:clamp(48px,6.4vw,89px);font-weight:500}
.studio .edu-hero-grid{gap:100px}
.studio .edu-floating{display:none}
.studio .edu-feature{border-radius:3px;box-shadow:none;padding:36px;background:#193d33}
.studio .edu-feature-title{font-size:clamp(29px,3.4vw,46px);font-weight:550}
.studio .edu-feature-title em{color:#d8ac77}
.studio .edu-feature-icon{color:#d8ac77}
.studio .edu-visual-footer{padding-inline:0}
.studio .edu-library{padding:90px 0 0}
.studio .edu-heading{margin-bottom:42px}
.studio .edu-heading h2{font-size:clamp(35px,4vw,56px);font-weight:550}
.studio .edu-search>div{border-radius:3px;background:#f8f4eb}
.studio .edu-filters{gap:5px 18px;border-bottom:1px solid var(--line);padding-bottom:17px}
.studio .edu-filters button{background:transparent;border:0;border-radius:0;padding:10px 2px;position:relative;color:#666258}
.studio .edu-filters button[aria-pressed=true]{background:transparent;color:#193d33;box-shadow:inset 0 -2px #8b4c2a}
.studio .edu-count{margin:22px 0 35px}
.studio .edu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 76px}
.studio .edu-card{border:0;border-top:1px solid #d5ccbb;border-radius:0;background:transparent;padding:27px 0 0;box-shadow:none;min-width:0}
.studio .edu-card:target{outline:2px solid #8b4c2a;outline-offset:12px}
.studio .edu-card-top{margin-bottom:15px}
.studio .edu-tag{background:transparent;padding:0;color:#71695d;font-weight:500;font-size:12px;border-radius:0}
.studio .edu-card .edu-icon{width:30px;height:30px;background:transparent;color:#8b4c2a}
.studio .edu-card .edu-topic{font-size:11px;letter-spacing:.06em;margin-bottom:12px}
.studio .edu-card h2{min-height:0;font-size:clamp(28px,2.5vw,36px);line-height:1.16;max-width:510px;margin-bottom:20px}
.studio .edu-explain-label{display:none}
.studio .edu-definition{min-height:0;font-size:16px;line-height:1.75;margin-bottom:24px}
.studio .edu-details>summary{font-size:13px;font-weight:600;border-color:var(--line)}
.studio .edu-example,.studio .edu-reflex{border-radius:3px}
.studio .edu-home{background:#f8f4eb;padding:100px 0}
.studio .edu-home-grid{gap:45px;margin-bottom:38px}
.studio .edu-home-card{padding:25px 0;border:0;border-top:1px solid #d5ccbb;border-radius:0;box-shadow:none;background:transparent}
.studio .edu-home-card:hover{transform:translateY(-3px);box-shadow:none}
.studio .edu-home-card .edu-icon{background:transparent;color:#8b4c2a;width:30px;height:30px;justify-content:start}
.studio .edu-home-card h3{font-size:29px;font-weight:550;margin-top:22px}
.studio .edu-home-card p{font-size:16px}
.studio .edu-download{border-radius:3px;background:#e5e7da;padding:42px;margin-top:75px}
.studio .edu-download h2{font-size:38px}

/* Energy Core: flows are aligned to the illustration’s own equipment. */
.studio-energy-hero{padding:70px 0 55px;background:#e4e2d0}
.energy-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;margin-bottom:54px}
.studio-energy-hero h1{font-size:clamp(46px,5.8vw,82px);font-weight:500;line-height:1.04;margin:15px 0 0}
.studio-energy-hero h1 span{color:#8b4c2a}
.energy-intro{padding-bottom:6px}
.energy-intro p{font-size:20px;line-height:1.7;margin:0 0 28px;max-width:430px;color:#616353}
.energy-house{position:relative;margin:0;border-radius:3px;overflow:hidden;isolation:isolate;background:#193d33;scroll-margin-top:110px}
.energy-house picture,.energy-house img{width:100%;display:block;margin:0;object-fit:contain;height:auto}
.energy-house .house-flows{position:absolute;inset:0;width:100%;height:100%;max-width:none;pointer-events:none}
.energy-house figcaption{position:absolute;bottom:20px;left:22px;color:white;font-size:12px;background:#193a2e;padding:9px 14px;border:1px solid #879472;max-width:calc(100% - 44px)}
.flow-bed,.flow-route{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .5s}
.flow-bed{stroke:#d5b388;stroke-width:5;filter:drop-shadow(0 0 4px #d8ac77);opacity:0}
.flow-route{stroke:#f7f0e1;stroke-width:3;stroke-dasharray:30 170;animation:flow-run 3.2s linear infinite;filter:drop-shadow(0 0 4px #d5b388)}
.energy-house .route-solar,.energy-house[data-scenario=stockage] .route-battery,.energy-house[data-scenario=vehicule] .route-car,.energy-house[data-scenario=confort] .route-water,.energy-house[data-scenario=confort] .route-pac{opacity:1}
.energy-house .flow-bed.route-solar,.energy-house[data-scenario=stockage] .flow-bed.route-battery,.energy-house[data-scenario=vehicule] .flow-bed.route-car,.energy-house[data-scenario=confort] .flow-bed.route-water,.energy-house[data-scenario=confort] .flow-bed.route-pac{opacity:.45}
@keyframes flow-run{to{stroke-dashoffset:-1000}}
.energy-house.is-paused .flow-route{animation-play-state:paused}
.house-controls{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px 0 0}
.scenario-buttons{display:flex;gap:10px;flex-wrap:wrap}
.house-controls button{background:transparent;border:1px solid #b9b89e;border-radius:3px;min-height:46px;padding:12px 16px;font-size:13px;color:#193d33;cursor:pointer;font-weight:600}
.house-controls button[aria-pressed=true]:not(.motion-toggle){background:#193d33;color:#f2eee5;border-color:#193d33}
.house-controls .motion-toggle{border:0;display:flex;gap:20px;align-items:center;font-weight:500;font-size:12px;padding-inline:0;white-space:nowrap}
.motion-toggle span{font-size:19px}
.scenario-explanation{margin:21px 0 9px;font-size:17px;line-height:1.7;min-height:30px;color:#193d33}
.house-demo-note{font-size:11px;color:#666258;margin:0;line-height:1.7}
.interface-intro{display:grid;grid-template-columns:.55fr 1.1fr .9fr;gap:60px;align-items:start}
.interface-intro h2{font-size:clamp(36px,4vw,54px)!important;margin:0!important}
.interface-intro p:not(.eyebrow){margin:0;font-size:17px}
.studio .dashboard{border:1px solid #d5ccbb;border-radius:4px;background:#f8f4eb;padding:32px;color:#193d33;box-shadow:none;max-width:100%;min-width:0}
.dash-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:24px;border-bottom:1px solid #d5ccbb}
.dash-title{display:flex;gap:10px;align-items:center;font-size:16px;font-weight:600}
.dash-title-dot{width:8px;height:8px;border-radius:50%;background:#8b4c2a}
.dash-demo{font-size:10px;color:#71695d;text-transform:uppercase;letter-spacing:.06em}
.dash-layout{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-top:25px}
.dash-card{min-width:0}
.studio .dash-card h3{font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 22px;line-height:1.6;color:#666258;font-weight:600}
.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px 15px}
.metric-label{font-size:12px;color:#666258;line-height:1.5}
.metric-value{font-size:30px;letter-spacing:-.04em;line-height:1.4}
.metric-value em{font-style:normal}
.decision{border-top:1px solid #d5ccbb;margin-top:23px;padding-top:20px}
.decision small{font-size:11px;display:block;color:#71695d}
.decision strong{display:block;font-weight:550;font-size:20px;margin:8px 0}
.decision p{font-size:14px;line-height:1.6;color:#666258;margin:0}
.chart-wrap{height:250px;display:flex;align-items:end;margin:0;max-width:100%}
.chart-svg{width:100%;height:100%;overflow:visible}
.chart-grid-line{stroke:#88957444;stroke-width:1;fill:none;opacity:.6}
.chart-area{fill:#bbc9a1;opacity:.4}
.chart-line-a{fill:none;stroke:#c69d63;stroke-width:3}
.chart-line-b{fill:none;stroke:#8b4c2a;stroke-width:2}
.chart-label{fill:#d1d5be;font:11px "Segoe UI",sans-serif}
.energy-next .shell>p:not(.eyebrow){max-width:750px}
.studio .energy-footnote{font-size:12px!important;margin-top:30px;max-width:800px!important}
.energy-interface{scroll-margin-top:100px}

/* Existing service, local, contact and legal pages keep their information. */
.studio .card,.studio .callout,.studio .case-item,.studio .intro-aside,.studio .compat-box{border-radius:3px;box-shadow:none}
.studio .card{border-width:1px;padding:32px}
.studio .contact-form{border-radius:3px;box-shadow:none}
.studio .field input,.studio .field textarea,.studio .field select{border-radius:3px;background:#f7f1e7}
.studio .site-footer{padding-top:60px;background:#193d33}
.studio .footer-tagline{font-size:15px;color:#cfcbb7}
.studio .footer-local{font-size:12px;line-height:1.9;color:#cfcbb7}
.studio .footer-local-seo{border-top:1px solid #62705277;gap:12px 28px;margin-top:35px;padding-top:25px}
.studio .footer-local-seo a{font-size:11px}
.studio .footer-local-seo strong{font-size:10px}
.studio .footer-bottom{font-size:11px;margin-top:25px}
.studio .mobile-quick-contact{border-radius:4px;box-shadow:none;background:#193d33}
.studio .mobile-quick-contact a{border-radius:2px}
.studio .mobile-menu{border-radius:3px}

@media(max-width:1200px){
 .studio .shell{width:calc(100% - 72px)}
 .studio .nav-links{display:none}.studio .menu-button{display:grid}.studio .mobile-menu{display:block;top:88px}
 .studio-home-hero h1{font-size:9.1vw}
 .home-energy-layout{gap:45px}
 .editorial-services{gap:55px;grid-template-columns:.7fr 1.3fr}
 .energy-heading{gap:50px}.interface-intro{gap:30px}
}
@media(max-width:850px){
 .studio .shell{width:calc(100% - 48px)}
 .studio .section,.studio .studio-section{padding:80px 0}
 .service-route{grid-template-columns:155px 1fr 48px;gap:24px}
 .service-route .link-arrow{width:46px;height:46px}
 .home-energy-layout{grid-template-columns:1fr;gap:45px}
 .home-energy-copy h2 br{display:none}.home-energy-copy h2 span{display:block}
 .editorial-services,.backup-layout{grid-template-columns:1fr;gap:20px}
 .studio-page-hero{padding:65px 0}
 .page-hero-bottom{align-items:start;flex-direction:column;gap:30px}
 .studio.page-a-propos .split{gap:45px;grid-template-columns:1fr 1fr}
 .studio .edu-hero-grid{gap:35px}
 .studio .edu-grid{gap:35px}
 .energy-heading{grid-template-columns:1fr;gap:32px}
 .energy-intro{display:flex;align-items:center;justify-content:space-between;gap:32px}
 .energy-intro p{font-size:18px;margin:0}
 .energy-intro .button{flex-shrink:0;font-size:13px}
 .house-controls{flex-direction:column;align-items:start;gap:10px}
 .interface-intro{grid-template-columns:1fr 1fr;gap:25px}
 .interface-intro .eyebrow{grid-column:1/-1;margin:0}
 .dash-layout{grid-template-columns:1fr;gap:35px}
 .metric-grid{grid-template-columns:repeat(4,1fr)}
 .studio .edu-home-grid{gap:22px}
}
@media(max-width:600px){
 .studio .shell{width:calc(100% - 40px)}
 .studio .nav{height:76px}.studio .mobile-menu{top:76px}.studio .nav-cta{display:none}
 .studio .brand-word{font-size:29px}.studio .brand-sub{font-size:8px}
 .studio .section,.studio .studio-section{padding:64px 0}
 .studio .section-tight{padding:40px 0}
 .studio .button{min-height:54px;padding:16px 20px;font-size:14px;gap:25px}
 .hero-topline{padding-bottom:20px;gap:12px;align-items:start;flex-direction:column;font-size:11px}
 .hero-topline .eyebrow{font-size:10px}
 .studio-home-hero{padding:26px 0 35px}
 .studio-home-hero h1{font-size:clamp(38px,9.6vw,57px);margin:45px 0 35px;letter-spacing:-.06em;line-height:1.12}
 .studio-home-hero .title-line{white-space:normal}
 .home-hero-bottom{display:block}
 .home-hero-bottom p{font-size:16px;line-height:1.7;margin-bottom:24px}
 .home-hero-bottom .button{width:100%}
 .hero-explore{justify-content:space-between;margin-top:24px;font-size:12px}
 .hero-linework{width:130%;right:-45%;bottom:130px}
 .studio .section-intro{margin-bottom:30px}
 .studio .section-title,.studio .section-intro h2{font-size:37px;line-height:1.13}
 .service-route{grid-template-columns:1fr 42px;gap:10px 20px;padding:27px 0;min-height:0}
 .route-index{grid-column:1/-1;font-size:10px;margin-bottom:7px}
 .service-route h3{font-size:29px;line-height:1.13;margin-bottom:12px}
 .service-route p{font-size:15px}
 .service-route .link-arrow{width:40px;height:40px;align-self:start}
 .directory-local{font-size:11px}
 .studio-home-energy{padding:64px 0}
 .home-energy-copy h2{font-size:37px;line-height:1.12;margin:10px 0 25px}
 .image-link{font-size:11px;bottom:10px;right:10px;padding:10px 14px}
 .studio .edu-home{padding:65px 0}
 .studio .edu-home-grid{gap:10px}
 .studio .edu-home-card{display:grid;grid-template-columns:1fr 36px;gap:0 15px;padding:26px 0}
 .studio .edu-home-card .edu-icon{grid-column:2;grid-row:1}
 .studio .edu-home-card h3{grid-row:1;grid-column:1;margin:0 0 15px;font-size:27px}
 .studio .edu-home-card p{grid-column:1/-1;margin:0 0 18px}
 .studio .edu-home-read{grid-column:1/-1;font-size:12px}
 .studio-contact-band{padding:65px 0}
 .studio-contact-band h2{font-size:43px;line-height:1.12}
 .studio-contact-band p:not(.eyebrow){font-size:16px}
 .studio-contact-band .button{width:100%}
 .studio-page-hero{padding:50px 0}
 .studio-page-hero h1{font-size:43px;line-height:1.1;margin:18px 0 28px}
 .page-hero-bottom .lead{font-size:18px}
 .page-hero-bottom .button{width:100%}
 .service-accordion summary{font-size:20px;gap:12px;padding:25px 0}
 .service-accordion summary span:first-child{margin:0}
 .service-accordion details>div{padding:0 0 25px 28px}
 .service-accordion p{font-size:16px}
 .studio-backup{padding:65px 0}.backup-layout{gap:15px}
 .studio-backup h2{font-size:36px}.studio-backup p{font-size:17px}
 .studio.page-a-propos .split{grid-template-columns:1fr;gap:35px}
 .studio .studio-portrait img{height:auto;aspect-ratio:4/4.3;object-position:50% 25%}
 .studio .about-intro .lead{font-size:19px}
 .studio .quote-panel blockquote{font-size:35px}
 .studio .cta-panel{padding:35px 25px}.studio .cta-panel h2{font-size:36px}
 .studio .edu-hero{padding:50px 0}.studio .edu-hero h1{font-size:52px}
 .studio .edu-hero-grid{gap:34px}.studio .edu-intro{font-size:18px}
 .studio .edu-feature{padding:25px}.studio .edu-feature-title{font-size:32px}
 .studio .edu-feature-title br{display:none}
 .studio .edu-library{padding-top:55px}.studio .edu-grid{grid-template-columns:1fr;gap:26px}
 .studio .edu-card{padding-top:23px}.studio .edu-card h2{font-size:30px}
 .studio .edu-definition{font-size:16px}
 .studio .edu-filters{gap:2px 15px}.studio .edu-filters button{font-size:12px;min-height:44px}
 .studio .edu-search{max-width:100%}.studio .edu-heading>p{font-size:16px}
 .studio .edu-download{padding:30px 22px}.studio .edu-download h2{font-size:33px}
 .studio-energy-hero{padding:45px 0 40px}
 .studio-energy-hero h1{font-size:45px;line-height:1.07}
 .energy-heading{gap:25px;margin-bottom:32px}
 .energy-intro{display:block}.energy-intro p{font-size:17px;margin-bottom:24px;max-width:none}
 .energy-intro .button{width:100%}
 .energy-house{margin-inline:-20px;border-radius:0}
 .energy-house figcaption{font-size:9px;padding:6px 9px;left:10px;bottom:10px;max-width:calc(100% - 20px)}
 .flow-route{stroke-width:2}.flow-bed{stroke-width:3}
 .scenario-buttons{gap:8px;width:100%}
 .scenario-buttons button{flex:1 1 130px;font-size:12px;min-height:48px;padding:12px}
 .house-controls .motion-toggle{font-size:12px;min-height:44px}
 .scenario-explanation{font-size:16px;line-height:1.65}.house-demo-note{font-size:10px}
 .interface-intro{display:block}.interface-intro h2{font-size:39px!important;margin:15px 0 25px!important}
 .studio .dashboard{padding:22px}
 .dash-top{align-items:start;flex-direction:column;gap:9px;padding-bottom:20px}
 .dash-demo{font-size:9px;line-height:1.6}
 .metric-grid{grid-template-columns:1fr 1fr;gap:20px}
 .metric-value{font-size:28px}.metric-label{font-size:11px}
 .chart-wrap{height:200px}.chart-label{font-size:10px}
 .studio .site-footer{padding-top:45px}
 .studio .footer-local-seo{gap:12px 20px}
 .studio .footer-bottom{gap:12px;font-size:11px;overflow-wrap:anywhere}
 .studio .footer-main{gap:35px}.studio .footer-links{gap:25px}
 html:not(.studio-ready) .studio .mobile-menu{position:static;visibility:visible;opacity:1;transform:none;pointer-events:auto;max-height:none;margin:0 20px 20px;padding:12px}
 html:not(.studio-ready) .studio .menu-button{display:none}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .studio *, .studio *::before,.studio *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .studio .js .reveal:not(.visible),.js .studio .reveal:not(.visible){opacity:1;transform:none}
 .flow-route{stroke-dasharray:none;opacity:.9}
 
}
@media print{.studio-home-hero{background:white;color:#193d33}.hero-linework,.house-controls,.studio .studio-contact-band,.studio .site-header{display:none!important}.studio main{animation:none}.studio .studio-section{padding:30px 0}.studio .studio-home-hero h1{font-size:45px}.studio .shell{width:100%}.energy-house figcaption{position:static;color:#193d33;background:white}.house-flows{display:none}.studio .edu-card{break-inside:avoid}.studio .studio-backup{color:#193d33;background:white}.studio .reveal{opacity:1!important;transform:none!important}}

.energy-house.offscreen .flow-route{animation-play-state:paused}
html:not(.studio-ready) .house-controls{display:none}
html:not(.studio-ready) .energy-house .flow-route{animation:none}
@media(max-width:1200px){html:not(.studio-ready) .studio .mobile-menu{position:static;visibility:visible;opacity:1;transform:none;pointer-events:auto;max-height:none;margin:0 24px 24px;padding:12px}html:not(.studio-ready) .studio .menu-button{display:none}}

/* Correction: exact original SUIV-IT surfaces and explicit text contrasts. */
.studio{--ink:#193d33;--dark:#102b24;--dark-2:#23483b;--bg:#f2eee5;--paper:#fbf8f0;--muted:#666258;--muted-2:#71695d;--green:#395a44;--green-2:#395a44;--blue:#8b4c2a;--lime:#d8ac77;--teal:#d5b388;--line:#d5ccbb;--soft-green:#e5e7da;--soft-blue:#ece2d4}
.studio .site-header,.studio .site-header.scrolled{background:#f7f2e8;color:#193d33;border-bottom-color:#cfc3ad;backdrop-filter:none}
.studio .brand-sub{color:#71695d}
.studio .button-primary,.studio .nav-cta{background:linear-gradient(115deg,#9e6236,#764222);color:#fff8ef;border-color:#98603a}
.studio .button-primary:hover,.studio .nav-cta:hover{background:linear-gradient(115deg,#965b31,#703d21);color:#fff8ef;border-color:#98603a}
.studio-home-hero{background:linear-gradient(118deg,transparent 38%,#f7dc9b0d 43%,#f7dc9b21 47%,transparent 54%),linear-gradient(118deg,transparent 61%,#f4d79913 65%,transparent 71%),radial-gradient(ellipse at 95% 0,#9b885536,transparent 65%),linear-gradient(135deg,#132f27,#244c3a 65%,#142f27);color:#f8f1e4}
.studio-home-hero h1{color:#f7f0e1}.studio-home-hero .title-line:nth-child(2){color:#dcb583}
.hero-topline{color:#e4dfcf;border-color:#87957355}.hero-topline .eyebrow{color:#d5b388}.home-hero-bottom p{color:#dfdfce}
.studio .service-directory{background:#f8f4eb;color:#193d33}
.studio .studio-home-energy{background:linear-gradient(115deg,transparent 45%,#f6d99514 51%,transparent 59%),linear-gradient(140deg,#142f27,#2b4b36);color:#f8f1e4}
.studio .studio-home-energy h2{color:#f7f0e1}.studio .studio-home-energy h2 span,.studio .studio-home-energy .eyebrow{color:#d5b388}.studio .studio-home-energy .text-link{color:#f7f0e1;border-color:#d5b388}
.studio .studio-contact-band,.studio .cta-panel{background:linear-gradient(118deg,transparent 35%,#f5d99a14 43%,transparent 56%),linear-gradient(125deg,#915d37,#73452b);color:#fff4e4;border-color:#b48b5b}
.studio .studio-contact-band h2,.studio .cta-panel h2{color:#fff4e4}
.studio .studio-contact-band .eyebrow,.studio .studio-contact-band p:not(.eyebrow),.studio .cta-panel p{color:#f1e3cf}
.studio .studio-contact-band a:not(.button),.studio .cta-panel a:not(.button){color:#fff4e4}
.studio .studio-contact-band .button,.studio .cta-panel .button{background:#f4ebd9;color:#49331f;border:1px solid #f5e2c2}
.studio .studio-contact-band .button:hover,.studio .cta-panel .button:hover{background:#fff7e8;color:#49331f;border-color:#f5e2c2}
.studio .studio-page-hero,.studio .edu-hero{background:linear-gradient(118deg,transparent 36%,#fff9e878 45%,transparent 58%),linear-gradient(135deg,#eee6d8,#ddd7c3);color:#193d33}
.studio .studio-page-hero .lead{color:#616353}
.studio .studio-backup,.studio .dark-section{background:linear-gradient(125deg,#193a2e,#234233);color:#f7f0e1}
.studio .studio-backup h2,.studio .dark-section h2,.studio .dark-section h3,.studio .dark-section blockquote{color:#f7f0e1}
.studio .studio-backup h2 span,.studio .studio-backup .eyebrow{color:#d5b388}
.studio .studio-backup p,.studio .dark-section .card p{color:#dcddc9}
.studio .studio-backup .text-link{color:#f7f0e1}
.studio .edu-home{background:#e9e1d2;color:#193d33}
.studio .edu-feature{background:linear-gradient(115deg,transparent 40%,#f5d89916 48%,transparent 60%),#193d33;color:#f6efdf}
.studio .edu-feature-title{color:#f6efdf}.studio .edu-feature-title em{color:#d8ac77}
.studio .edu-reflex{background:#193d33;color:#f6efdf}.studio .edu-reflex h3{color:#d5b388}
.studio .edu-download{background:#e0e2cb;color:#193d33;border-color:#bfc3a4}
.studio .studio-energy-hero{background:linear-gradient(118deg,transparent 40%,#fff8de80 47%,transparent 61%),linear-gradient(130deg,#e4e2d0,#d6d9c3);color:#193d33}
.studio .studio-energy-hero h1{color:#193d33}.studio .studio-energy-hero h1 span{color:#79522f}.studio .energy-intro p{color:#616353}
.studio .dashboard{background:linear-gradient(135deg,#18372b,#122b23);color:#f7f0e1;border-color:#7b876655}
.studio .dashboard .dash-title,.studio .dashboard .metric-value,.studio .dashboard .decision strong{color:#f7f0e1}
.studio .dashboard .metric-value em{color:#d8ac77}
.studio .dashboard .dash-demo,.studio .dashboard .dash-card h3,.studio .dashboard .metric-label{color:#d1d5be}
.studio .dashboard .decision small{color:#d5b388}.studio .dashboard .decision p{color:#dcddc9}
.studio .dashboard .dash-top,.studio .dashboard .decision{border-color:#88957444}
.studio .dashboard .chart-label{fill:#d1d5be}.studio .dashboard .chart-line-a{stroke:#c69d63}.studio .dashboard .chart-line-b{stroke:#bbc9a1}.studio .dashboard .chart-area{fill:#c69d63;opacity:.12}
.studio .field input,.studio .field textarea,.studio .field select{background:#f7f1e7;color:#263c2d;border-color:#bdb09a}
.studio .studio-portrait,.studio .studio-portrait figcaption{background:#fbf8f0;color:#193d33}
.studio .site-footer{background:linear-gradient(120deg,#172f25,#10251e);color:#d7d3bf}
.studio .footer-local-seo a{color:#cfcbb7}.studio .footer-local-seo strong{color:#d5b388}.studio .footer-local-seo a:hover{color:#edc596}
.studio .footer-tagline,.studio .footer-local{color:#cfcbb7}
/* Complete illustrated circuit. Quiet branches keep moving; selection emphasizes a route. */
.energy-house .flow-bed,.energy-house .flow-route{opacity:1;transition:opacity .4s,stroke-width .4s}
.energy-house .flow-bed{stroke:#d5b388;stroke-width:7;opacity:.22;filter:drop-shadow(0 0 4px #d8ac77)}
.energy-house .flow-route{stroke:#f7f0e1;stroke-width:1.8;stroke-dasharray:none;animation:none;opacity:.62;filter:none}
.energy-house .flow-packet{opacity:.75;transition:opacity .4s}
.energy-house .packet-halo{fill:#d8ac77;opacity:.24;filter:drop-shadow(0 0 6px #d5b388)}
.energy-house .packet-core{fill:#f7f0e1;filter:drop-shadow(0 0 3px #d8ac77)}
.energy-house .flow-node{fill:#f7f0e1;stroke:#d8ac77;stroke-width:2;vector-effect:non-scaling-stroke;animation:node-breathe 3.6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes node-breathe{50%{opacity:.55;transform:scale(.82)}}
.energy-house[data-scenario=maison] .flow-packet,.energy-house[data-scenario=maison] .flow-route{opacity:1}
.energy-house[data-scenario=stockage] .route-battery,.energy-house[data-scenario=stockage] .packet-battery,.energy-house[data-scenario=vehicule] .route-car,.energy-house[data-scenario=vehicule] .packet-car,.energy-house[data-scenario=confort] .route-water,.energy-house[data-scenario=confort] .route-pac,.energy-house[data-scenario=confort] .packet-water,.energy-house[data-scenario=confort] .packet-pac{opacity:1;stroke-width:3}
.energy-house.is-paused .flow-node,.energy-house.offscreen .flow-node{animation-play-state:paused}
.house-controls .motion-toggle{color:#193d33}.scenario-explanation{color:#193d33}.house-demo-note{color:#666258}
@media(prefers-reduced-motion:reduce){.energy-house .flow-node{animation:none!important}}

/* Readability on the original darker half of each gradient. */
.studio .energy-intro p,.studio .house-demo-note{color:#193d33}
.studio .studio-contact-band .eyebrow,.studio .studio-contact-band p:not(.eyebrow),.studio .cta-panel p{color:#fff4e4}
.studio .site-footer .brand-sub{color:#cfcbb7}
html:not(.studio-ready) .energy-house .flow-packet{display:none}
@media(prefers-reduced-motion:reduce){.energy-house .flow-packet{display:none}}

.studio .studio-page-hero .lead,.studio .page-hero .lead,.studio .legal-hero .lead,.studio .edu-hero-note,.studio .edu-visual-footer{color:#193d33}
.studio .cta-panel .eyebrow{color:#fff4e4}
.studio .page-hero .breadcrumb,.studio .page-hero .breadcrumb a,.studio .page-hero .breadcrumb span{color:#193d33;border-color:#8b4c2a}
.studio .legal-meta,.studio .legal-meta span{color:#71695d}
