/* Edelmesh — couche commerciale, sans suppression des composants ni des démonstrations de Claude */
html.theme-nuit { --signal:#5b9bf9; --focus:#78b8ff; }
.em-brand{display:inline-flex!important;align-items:center;gap:.55rem;white-space:nowrap;text-decoration:none;letter-spacing:.14em;font-family:var(--body);font-weight:700!important;font-size:1rem!important}
.em-brand img{width:42px;height:42px;object-fit:contain;flex-shrink:0}
.em-hero{background:radial-gradient(ellipse at 72% 32%,rgba(37,99,235,.17),transparent 60%)}
.em-eyebrow{font:600 .71rem/1.5 var(--mono);letter-spacing:.11em;text-transform:uppercase;color:#86b4ff;margin-bottom:1.3rem}
.em-hero .hero-lead{max-width:620px}
.em-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.em-proofline{font-size:.8rem;letter-spacing:.02em;opacity:.7;margin-top:1.3rem}
.em-entry,.em-method{background:#081120;color:#eaf3ff}
.em-entry .sec-head p,.em-method .sec-head p{color:#b2c4db}
.em-entry .sec-head h2,.em-method .sec-head h2{color:#f5f8ff}
.em-doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}
.em-door{padding:clamp(22px,3vw,38px);border:1px solid #243a5b;background:linear-gradient(150deg,#12203a 0%,#081120 85%);min-height:340px;display:flex;flex-direction:column;transition:transform .22s,border-color .22s}
.em-door:hover{transform:translateY(-3px);border-color:#569efa}
.em-n{font:600 .7rem/1.3 var(--mono);letter-spacing:.1em;color:#75afff}
.em-door h3{margin:2rem 0 .8rem;font:600 clamp(1.45rem,2.35vw,2.1rem)/1.15 var(--display);color:#fff}
.em-door p{color:#a9bdd6;margin-bottom:1.5rem;font-size:.95rem}
.em-links{margin-top:auto;border-top:1px solid #283953;display:flex;flex-direction:column;gap:0}
.em-links a{display:flex;justify-content:space-between;align-items:center;padding:.72rem .05rem;color:#edf4ff;text-decoration:none;border-bottom:1px solid #283953;font-size:.91rem}
.em-links a:hover{color:#8dc4ff}
.em-help{margin-top:1.5rem!important;color:#c6d5eb!important;font-size:.88rem}.em-help a{color:#91c6ff;text-underline-offset:4px}
.em-demo-section{background:#0b1728;color:#fff}
.em-demo-section .sec-head p{color:#afc1da}.em-demo-section .sec-head h2{color:#fff}
.em-demo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.em-demo{border:1px solid #273954;background:#111f35;overflow:hidden;display:flex;flex-direction:column}
.em-demo-img{display:block;aspect-ratio:16/10;overflow:hidden;background:#172741}
.em-demo-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.em-demo-img:hover img{transform:scale(1.025)}
.em-demo-body{padding:25px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:1}
.em-demo-body h3{font:600 1.6rem/1.17 var(--display);color:white}.em-demo-body p{color:#adbed4;flex:1}
.em-secondary{font-size:.86rem;color:#9dc7fa;margin-top:.1rem}
.em-demo-bottom{margin-top:1.8rem;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.em-demo-bottom p{color:#b1c4dc;font-size:.83rem}
.em-process{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem}
.em-process-step{border-top:2px solid #5398f8;padding:24px 10px 22px 0}
.em-process-step h3{font:600 1.25rem/1.2 var(--body);color:#fff;margin:22px 0 11px}
.em-process-step p{font-size:.88rem;color:#aec2dd}
.em-budget{background:radial-gradient(ellipse at 100% 0,rgba(50,95,190,.2),transparent 65%),#0d1b30;color:#fff}
.em-budget-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(25px,5vw,90px);align-items:center}
.em-budget h2{font:600 clamp(2.1rem,3.5vw,3.5rem)/1.12 var(--display);margin-bottom:1rem;color:#fff}
.em-budget p:not(.em-eyebrow){color:#b9c9de;margin-bottom:1.6rem}
.em-prices{display:grid;border-top:1px solid #35506d}
.em-prices>div{border-bottom:1px solid #35506d;padding:1.2rem 0;display:flex;justify-content:space-between;gap:1rem;align-items:center;color:#d3e5f7}
.em-prices b{white-space:nowrap;color:#fff}
.em-more-fields{border:1px solid var(--line);padding:1rem;margin:1rem 0}.em-more-fields summary{cursor:pointer;font-weight:600}.em-more-fields .row2{margin-top:1rem}
.em-family-price{margin:1rem 0;color:#d5e4f7!important;font-size:.92rem}.em-family-price strong{font-size:1.2rem;color:#fff}.em-family-price small{display:block;margin-top:.3rem;opacity:.65}
@media(max-width:980px){.em-doors,.em-demo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.em-process{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.em-doors,.em-demo-grid,.em-process,.em-budget-grid{grid-template-columns:1fr}.em-door{min-height:auto}.em-demo-body{padding:21px}.em-budget-grid{gap:25px}.em-proofline{line-height:1.7}.em-brand{font-size:.86rem!important}.em-brand img{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.em-door,.em-demo-img img{transition:none!important;transform:none!important}}

/* Edelmesh V7 — editorial direction / mobile-first. Only overrides the commercial layer.
   Signature typefaces retained: Redaction, Host Grotesk, Martian Mono. */
:root{--em-blue:#568bf3;--em-ice:#a6c8f1}
html.theme-nuit { --signal:#629ef5;--focus:#9bc6ff;--paper:#050916;--paper-2:#0b152a;--line:#263550;--ink:#f3f6fc;--ink-2:#b3c0d5; }
html.theme-nuit body{
 background:linear-gradient(174deg,#05101e 0%,#040711 35%,#04060d 100%);
 color:#eff4fd;
}
html.theme-nuit .top{background:rgba(4,9,21,.87);border-bottom:1px solid rgba(173,208,255,.12)}
html.theme-nuit .hero{padding-block:clamp(62px,7vw,120px) clamp(44px,7vw,100px);position:relative;isolation:isolate;
 background:linear-gradient(122deg,#071528 5%,#0d2550 40%,#102d52 59%,#081a30 78%,#040814 100%);
}
html.theme-nuit .hero::before{background:radial-gradient(ellipse at 88% 15%,rgba(109,155,213,.19),transparent 54%),radial-gradient(ellipse at 10% 95%,rgba(5,19,59,.37),transparent 65%);filter:none;animation:none;opacity:1;inset:0}
html.theme-nuit .hero::after{background:linear-gradient(180deg,transparent 40%,#071426 100%)}
.em-hero .hero-grid{align-items:center;gap:clamp(28px,4.5vw,68px)}
.em-hero .hero-text{min-width:0;max-width:100%;position:relative;z-index:2}
.em-hero .hero-title{font-family:var(--display);font-size:clamp(3.2rem,5.5vw,6.45rem);font-weight:400;line-height:1.025;letter-spacing:-.028em;text-wrap:balance;max-width:14ch}
.em-hero .hero-title .hl{white-space:normal!important;overflow-wrap:normal;word-break:normal;width:auto!important;max-width:100%!important;margin-right:0!important;padding-right:0!important;animation:none!important;}
html.theme-nuit .em-hero .hero-title .hl:last-child{background:linear-gradient(105deg,#f4f8fd 0%,#afd0fa 42%,#7da7e7 84%);-webkit-background-clip:text;background-clip:text;color:transparent}
.em-hero .hero-lead{font-size:clamp(1.04rem,1.35vw,1.24rem);line-height:1.65;max-width:36rem;color:#cfdbeb;margin:clamp(24px,3vw,36px) 0 0}
.em-eyebrow{font:500 .71rem/1.65 var(--mono);letter-spacing:.09em;color:#a5c9e9;margin-bottom:clamp(22px,3vw,36px)}
.em-actions{gap:12px;margin-top:clamp(24px,3vw,32px)}
html.theme-nuit .btn,html.theme-ultra .btn{border-radius:9px;box-shadow:none}
html.theme-nuit .btn-accent{background:linear-gradient(115deg,#478ee1,#2652a2);border:1px solid rgba(207,226,255,.2);color:#fff;box-shadow:0 9px 28px rgba(7,20,45,.24)}
html.theme-nuit .btn-line,html.theme-nuit .btn-ghost{background:transparent;border:1px solid rgba(204,226,255,.37);color:#e6edf7}
html.theme-nuit .btn-line:hover,html.theme-nuit .btn-ghost:hover{background:rgba(176,213,255,.1)}
.em-proofline{font:400 .78rem/1.65 var(--mono);color:#9db5d2;opacity:.85;margin-top:1.7rem}
.em-brand{font-family:var(--body)!important;font-weight:500!important;font-size:1.02rem!important;letter-spacing:.09em!important;gap:.58rem}
.em-brand img{width:40px;height:40px}
.em-entry{background:linear-gradient(180deg,#071426,#081326 58%,#09152b 100%);color:#eef4fe}
.em-demo-section{background:linear-gradient(180deg,#09152b,#0c1d35 40%,#091426 100%)}
.em-method{background:linear-gradient(180deg,#091426,#080f20)}
.em-budget{background:linear-gradient(135deg,#0b1830,#132c4a 50%,#0a1930 100%)}
.em-door{border:1px solid rgba(131,172,222,.19);border-radius:3px;background:linear-gradient(145deg,rgba(37,66,104,.38),rgba(7,17,34,.66) 74%);min-height:290px;padding:clamp(23px,3vw,34px)}
.em-door h3{font:400 clamp(1.8rem,2.3vw,2.35rem)/1.12 var(--display);margin:2.1rem 0 .9rem;letter-spacing:-.015em}
.em-door p{line-height:1.63}
.em-links a{color:#deeafa}
.em-demo{background:linear-gradient(155deg,#14253c,#0b182b);border:1px solid rgba(122,164,210,.22);border-radius:3px}
.em-demo-img{aspect-ratio:16/10;border-bottom:1px solid rgba(160,196,237,.13)}
.em-demo-body{padding:clamp(20px,2.4vw,31px);gap:0}
.em-demo-kind,.em-gallery-kind{font:600 .65rem/1.45 var(--mono);letter-spacing:.095em;color:#91c3ff;text-transform:uppercase}
.em-demo-body h3{font:400 clamp(1.8rem,2.2vw,2.35rem)/1.08 var(--display);color:#f9fbff;margin:13px 0 6px;letter-spacing:-.01em}
.em-demo-sector{font:400 .76rem/1.5 var(--mono);color:#95b2d0;margin-bottom:13px}
.em-demo-description{font:400 .96rem/1.55 var(--body);color:#c2d1e3;flex:1;margin-bottom:23px}
.em-demo-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 17px;margin-top:auto}
.em-demo-cta .btn{font-size:.88rem;min-height:44px;padding-inline:15px}
.em-demo-cta .em-secondary{font-size:.82rem;white-space:nowrap;color:#afd0f6;text-decoration:underline;text-decoration-color:rgba(175,208,246,.4);text-underline-offset:4px}
.em-other-demos{padding:clamp(26px,3vw,38px) 0 0}
.em-other-title{font:500 .72rem/1.5 var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#9cbad7;margin:0 0 13px}
.em-other-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.em-other-link{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:18px 16px;border:1px solid rgba(154,188,224,.23);background:rgba(10,29,54,.48);text-decoration:none;align-items:center}
.em-other-link span{grid-column:1;font:500 .67rem/1.5 var(--mono);color:#9dbdda}
.em-other-link strong{grid-column:1;font:500 1.1rem/1.23 var(--body);color:#f3f7fc}
.em-other-link b{grid-column:2;grid-row:1/3;font-size:1rem;color:#b0cbef}
.em-other-link:hover{background:#172943;border-color:#86b0e0}
.em-demo-bottom{margin-top:25px;padding-top:22px;border-top:1px solid rgba(174,199,231,.14)}
.em-demo-bottom p{max-width:550px;line-height:1.6}
.em-process-step{border-top:1px solid #75a8ed}
.em-budget .em-prices>div{border-bottom-color:rgba(165,196,228,.26)}
.em-budget .em-prices{border-top-color:rgba(165,196,228,.26)}
.em-gallery-service,.em-detail-link{color:#b5cde7;font-size:.93rem;line-height:1.5}
.em-gallery-service{text-underline-offset:3px}
.em-gallery-service strong{font-weight:600;color:#dcecff}
.drow-text .em-gallery-kind{color:#9fc7ff}
.dhead .em-gallery-kind{margin:0 0 14px}
.em-detail-link{margin:14px 0 8px}
.em-detail-link a{color:#9bc6f8;text-decoration:underline;text-underline-offset:4px}
/* Responsive typography and layout at 320, 360, 390, 430px */
@media(max-width:1080px){.em-brand{letter-spacing:.075em!important}}
@media(max-width:860px){.em-hero .hero-title{font-size:clamp(2.65rem,8.2vw,4.5rem);max-width:15ch}.em-hero .hero-grid{gap:18px}}
@media(max-width:680px){
 html.theme-nuit .hero{padding-block:42px 54px}
 .em-hero .hero-title{font-size:clamp(2.5rem,8.4vw,3.65rem);line-height:1.065;letter-spacing:-.025em;max-width:100%}
 .em-hero .hero-lead{font-size:1rem;line-height:1.62;max-width:100%;margin-top:23px}
 .em-eyebrow{font-size:.63rem;line-height:1.6;letter-spacing:.065em;margin-bottom:20px;overflow-wrap:anywhere}
 .em-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:24px}
 .em-actions .btn{width:100%;max-width:100%;min-height:50px;white-space:normal;padding:10px 13px;font-size:.94rem}
 .em-proofline{font-size:.67rem;line-height:1.65;margin-top:21px;overflow-wrap:anywhere}
 .em-hero .hero-scn{max-width:100%;min-width:0;overflow:hidden}
 .em-door{min-height:0;padding:24px 21px}
 .em-door h3{font-size:1.9rem;margin:1.1rem 0 .65rem}
 .em-demo-body{padding:20px}
 .em-other-grid{grid-template-columns:1fr;gap:8px}
 .em-demo-cta{align-items:stretch;flex-direction:column;gap:12px;width:100%}
 .em-demo-cta .btn{width:100%;font-size:.9rem}
 .em-demo-cta .em-secondary{align-self:flex-start}
 .em-demo-bottom .btn{width:100%}
 .em-brand img{width:34px;height:34px}
 .em-brand{font-size:.87rem!important;letter-spacing:.07em!important}
 html.theme-nuit .sec-head h2{font-size:clamp(2.15rem,9.1vw,3.4rem);line-height:1.06;overflow-wrap:normal}
 .em-budget h2{font-size:clamp(2rem,8.5vw,3.15rem)}
}
@media(max-width:365px){
 .em-hero .hero-title{font-size:clamp(2.18rem,8.5vw,2.6rem)}
 .em-hero .hero-lead{font-size:.95rem}
 .em-brand{font-size:.79rem!important}
 .em-brand img{width:32px;height:32px}
 .em-door h3{font-size:1.72rem}
}
@media (prefers-reduced-motion:reduce){html.theme-nuit .hero::before{animation:none!important}}
