@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#090a0c;--surface:#101216;--surface2:#15171b;--text:#f7f7f5;--muted:#a4a8ae;--line:#292c31;--red:#e31c2d;--heading:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}::selection{background:#aa2431;color:white}.container{width:min(1220px,calc(100% - 96px));margin-inline:auto}.skip{position:absolute;top:-100px;left:8px;z-index:100;background:white;color:#111;padding:8px}.skip:focus{top:8px}.header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(48px,calc((100vw - 1220px)/2));border-bottom:1px solid #ffffff13;position:absolute;inset:0 0 auto;z-index:10;background:#0b0c0f8c;backdrop-filter:blur(22px)}.brand{display:flex;gap:13px;align-items:center;flex:none}.brand-icon{border:1px solid #5b5d62;width:40px;height:40px;display:grid;place-items:center;font:800 24px var(--heading);letter-spacing:-5px;padding-right:6px}.brand-red{color:var(--red)}.brand-word{font:800 18px/.98 var(--heading);letter-spacing:.20em}.brand-word small{display:block;font-size:9px;letter-spacing:.48em;margin-top:7px;color:#d4d5d9}.nav{display:flex;gap:32px;align-items:center}.nav>a{font-size:12px;font-weight:700;letter-spacing:.03em;color:#c9cbd0;transition:color .2s}.nav>a:hover,.langs a:hover{color:white}.nav .nav-contact{padding:11px 17px;border:1px solid #777b84;color:white}.nav-contact span{color:var(--red)}.langs{display:flex;gap:8px;border-left:1px solid var(--line);padding-left:20px}.langs a{font-size:10px;color:#71747a;font-weight:800}.langs [aria-current=true]{color:white}.menu-toggle{display:none}.hero{min-height:770px;height:min(850px,100svh);position:relative;overflow:hidden;background:radial-gradient(circle at 66% 47%,#292b30 0,#0b0c0e 46%,#07080a 81%)}.hero-art{position:absolute;inset:0 0 0 35%;display:flex;align-items:center;justify-content:center}.hero-art img{height:100%;width:100%;object-fit:cover;object-position:center;filter:contrast(1.18) brightness(.70) grayscale(1);opacity:.88;mix-blend-mode:screen;mask-image:linear-gradient(90deg,transparent 0,#000 34%,#000 85%,transparent 100%)}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#08090be8 0%,#08090bc9 33%,#08090b28 68%,#08090b5e 100%),linear-gradient(0deg,#08090b 0%,transparent 32%)}.hero-noise{position:absolute;inset:0;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.23'/%3E%3C/svg%3E");pointer-events:none}.hero-content{position:relative;z-index:2;min-height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-top:100px}.kicker,.section-kicker{font-size:11px;font-weight:800;letter-spacing:.24em;color:#c1c4c9;text-transform:uppercase}.kicker{display:flex;align-items:center;gap:14px}.kicker i{width:7px;height:7px;background:var(--red);display:inline-block;box-shadow:0 0 18px #ea283a}.hero h1{font:800 clamp(44px,5.4vw,78px)/1.13 var(--heading);max-width:800px;letter-spacing:-.061em;margin:26px 0}.hero h1 em{font-style:normal;color:#aeb3b9}.hero p{max-width:485px;color:#b3b7bd;font-size:17px;line-height:1.85;margin:0}.hero-actions{display:flex;gap:32px;align-items:center;margin-top:36px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid transparent;padding:15px 22px;font-weight:800;font-size:13px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--red);color:white}.btn-primary:hover{background:#f1243a}.btn span,.link-arrow span{font-size:18px}.link-arrow{font-size:13px;font-weight:700;border-bottom:1px solid #6a6e75;padding-bottom:9px}.link-arrow span{padding-left:10px}.hero-bottom{position:absolute;bottom:40px;left:0;right:0;display:flex;align-items:center;gap:20px;font-size:10px;letter-spacing:.16em;color:#989ca1}.hero-bottom .line{width:75px;height:1px;background:#9b9b9b}.hero-bottom .swiss{margin-left:auto}.cross{color:#fff;background:#e31c2d;padding:2px 4px;font-size:11px;margin-right:8px}.hero-side{position:absolute;right:28px;bottom:130px;color:#777a80;font-size:10px;letter-spacing:.25em;writing-mode:vertical-rl}.ticker{background:#121418;border-top:1px solid #25282d;border-bottom:1px solid #25282d;color:#868a93;padding:22px 0;text-align:center;font-size:12px;font-weight:800;letter-spacing:.23em}.ticker .container{display:flex;justify-content:space-between;align-items:center}.diamond{font-size:8px;color:var(--red)}.section{padding-block:130px;scroll-margin-top:30px}.section-header{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:48px}.section h2,.legal h1{font:800 clamp(32px,4.1vw,56px)/1.2 var(--heading);letter-spacing:-.055em;margin:20px 0 0}.section-kicker{color:var(--red)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.service-card{border:1px solid var(--line);background:linear-gradient(160deg,#14161a,#0d0e11);min-height:340px;padding:32px;display:flex;flex-direction:column;position:relative;overflow:hidden}.service-card:before{content:"";width:100%;height:2px;position:absolute;left:0;top:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s}.service-card:hover:before{transform:scaleX(1)}.card-top{display:flex;justify-content:space-between;align-items:center;color:#868c94;font-size:13px}.card-icon{font-size:40px;line-height:1;color:#50545d}.service-card h3{font:800 23px/1.2 var(--heading);letter-spacing:-.035em;margin:70px 0 14px}.service-card p{color:#a4a8ae;margin:0;font-size:14px;line-height:1.8}.card-bottom{position:absolute;bottom:23px;right:29px;color:#777;font-size:20px}.approach{background:#101216;border-block:1px solid #24272c}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.approach-visual{aspect-ratio:1;position:relative;overflow:hidden;background:radial-gradient(circle at 60% 45%,#2a2d32,#070809 68%);border:1px solid #24272c}.approach-visual img{width:100%;height:100%;object-fit:cover;object-position:center;filter:contrast(1.35) brightness(.8);mix-blend-mode:screen;mask-image:radial-gradient(circle,#000 46%,transparent 78%)}.visual-caption{position:absolute;bottom:24px;left:24px;font-size:10px;color:#8d939a;letter-spacing:.14em}.approach-content{display:flex;flex-direction:column;justify-content:center}.approach-lead{font-size:17px;color:#adb1b8;line-height:1.9;max-width:540px}.values{margin-top:30px}.values>div{display:grid;grid-template-columns:165px 1fr;gap:20px;border-top:1px solid #34373e;padding:21px 0}.values b{font-size:13px}.values span{font-size:13px;color:#8e949c}.manifesto{padding:100px 0 110px;text-align:center}.manifesto>span{color:var(--red);font:800 100px/1 var(--heading)}.manifesto blockquote{font:700 clamp(25px,3.2vw,45px)/1.35 var(--heading);letter-spacing:-.04em;max-width:850px;margin:-14px auto 0}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;border-top:1px solid var(--line)}.contact-intro>p{color:#b2b5bb;line-height:1.9}.contact-line{width:55px;height:2px;background:var(--red);margin:55px 0 30px}.contact-intro small{color:#888e97;font-size:12px}.email-link{display:block;margin-top:12px;font-weight:800;font-size:19px}.contact-form{display:flex;flex-direction:column;gap:22px}.contact-form label:not(.checkbox){display:flex;flex-direction:column;gap:9px;font-size:12px;color:#c9cdd4;font-weight:700}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form input:not([type=checkbox]),.contact-form textarea{background:#111318;color:white;border:1px solid #363a41;outline:none;border-radius:0;padding:14px 15px;min-width:0;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:#c33e4a;box-shadow:0 0 0 2px #a9223529}.checkbox{display:flex;align-items:flex-start;gap:12px;font-size:12px;color:#b1b6be}.checkbox input{accent-color:var(--red);margin-top:5px}.contact-form button{align-self:flex-start}.muted{color:#767c86;font-size:11px}.hp{position:absolute!important;left:-99999px!important}.form-msg{padding:12px 14px;border:1px solid}.form-msg.ok{background:#163b2b;color:#bce9c8;border-color:#316844}.form-msg.error{background:#3c1b22;color:#ffd9de;border-color:#72313d}.footer{background:#050607;border-top:1px solid #24262b;padding:55px 0 20px}.footer-content{display:flex;justify-content:space-between;align-items:start;gap:24px}.footer-brand{font:800 32px var(--heading);letter-spacing:.12em}.footer-content p{color:#8a8f97;font-size:13px}.footer-links{display:flex;gap:30px;font-size:12px;color:#afb3ba}.footer-end{display:flex;justify-content:space-between;border-top:1px solid #24262b;padding-top:22px;margin-top:60px;color:#757a82;font-size:10px;letter-spacing:.14em}.legal{padding:180px 0 150px;min-height:70vh;max-width:870px}.legal p{color:#b1b5bd;font-size:17px;line-height:1.9;margin:28px 0}.legal dl{display:grid;grid-template-columns:150px 1fr;gap:12px;padding-top:20px;border-top:1px solid var(--line)}.legal dt{color:#888}.legal dd{margin:0}.nav a:focus-visible,.btn:focus-visible,.langs a:focus-visible{outline:2px solid white;outline-offset:3px}@media(max-width:1080px){.header{padding-inline:28px}.nav{gap:17px}.container{width:calc(100% - 56px)}.hero-art{inset:0 0 0 26%}.hero h1{font-size:clamp(42px,6vw,70px)}}@media(max-width:760px){.header{height:73px}.menu-toggle{display:flex;flex-direction:column;gap:7px;background:transparent;border:0;padding:10px}.menu-toggle span{width:23px;height:2px;background:white}.nav{display:none;position:absolute;top:73px;left:0;right:0;background:#0c0e11;border-bottom:1px solid #41444b;flex-direction:column;align-items:stretch;gap:0;padding:15px 28px 26px}.nav.open{display:flex}.nav>a{padding:12px 0}.nav .nav-contact{padding:12px}.langs{padding:20px 0 0;border:0;gap:20px}.langs a{font-size:13px}.container{width:calc(100% - 40px)}.hero{height:auto;min-height:780px}.hero-content{padding-top:165px;justify-content:flex-end;padding-bottom:110px}.hero-art{inset:65px -20% 22% 2%;opacity:.5}.hero-vignette{background:linear-gradient(0deg,#08090b 0%,#08090baa 48%,#08090b36 100%),linear-gradient(90deg,#08090b9e,transparent)}.hero h1{font-size:clamp(38px,8.5vw,59px)}.hero p{font-size:15px}.hero-actions{flex-wrap:wrap;gap:25px}.hero-bottom{bottom:28px}.hero-side{display:none}.ticker{font-size:9px;letter-spacing:.1em}.section{padding-block:75px}.section-header{display:block}.service-grid{grid-template-columns:1fr}.service-card{min-height:265px}.service-card h3{margin-top:40px}.approach-grid{grid-template-columns:1fr;gap:40px}.approach-visual{max-width:560px}.manifesto{padding-block:75px}.contact{grid-template-columns:1fr;gap:45px}.contact-line{margin:25px 0}.footer-content{flex-direction:column}.footer-links{flex-wrap:wrap}.footer-end{gap:20px}.legal{padding-top:125px}}@media(max-width:420px){.brand-word{font-size:15px}.hero h1{font-size:37px}.form-row{grid-template-columns:1fr}.hero-bottom .line{width:25px}.hero-bottom .swiss{font-size:8px}.values>div{grid-template-columns:1fr;gap:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* A5 OBSIDIENNE v0.2: cinematic, progressive enhancement */
.hero-obsidian{min-height:790px;height:100svh;max-height:1100px;isolation:isolate;background:#070809}
.hero-obsidian .hero-art{inset:0 0 0 27%;z-index:-1;align-items:center;justify-content:flex-end}
.hero-obsidian .hero-art img{object-fit:cover;object-position:48% center;width:100%;height:100%;opacity:.98;filter:brightness(.67) contrast(1.32) grayscale(1);mix-blend-mode:normal;mask-image:linear-gradient(90deg,transparent 0%,#000 16%,#000 100%);animation:lion-enter 1.7s cubic-bezier(.2,.7,.2,1) both}
.hero-red-beam{position:absolute;top:0;right:7.6%;height:69%;width:2px;background:linear-gradient(180deg,transparent 8%,#ca2730 37%,#ff3540 54%,transparent 94%);box-shadow:0 0 18px #b9102066,0 0 58px #9f152c55;z-index:1;pointer-events:none;animation:beam-enter 2.2s ease-out both}
.hero-red-halo{position:absolute;right:-13%;top:3%;width:61%;height:88%;pointer-events:none;background:radial-gradient(ellipse at 68% 49%,#95121b22,transparent 58%);z-index:0}
.hero-obsidian .hero-vignette{z-index:1;background:linear-gradient(90deg,#070809 0%,#070809fa 23%,#070809a0 48%,#07080900 77%),linear-gradient(0deg,#070809 0%,transparent 29%,#0708092b 100%)}
.hero-grid{position:absolute;inset:0;z-index:1;opacity:.11;pointer-events:none;background-image:linear-gradient(90deg,#c7c7c71a 1px,transparent 1px);background-size:calc(100% / 12) 100%;mask-image:linear-gradient(90deg,#000,transparent 68%)}
.hero-obsidian .hero-content{z-index:3;padding-top:115px}
.hero-obsidian h1{max-width:660px;font-size:clamp(48px,6.5vw,99px);line-height:1.07;letter-spacing:-.073em;text-wrap:balance;animation:copy-enter 1s .12s ease-out both}
.hero-obsidian h1 em{color:#b4b5b9}
.hero-obsidian .kicker,.hero-obsidian .hero-content>p,.hero-obsidian .hero-actions{animation:copy-enter 1s .23s ease-out both}
.hero-obsidian .hero-content>p{max-width:435px}
.hero-scroll{position:absolute;z-index:4;bottom:36px;right:max(64px,calc((100vw - 1220px)/2));font-size:9px;letter-spacing:.23em;color:#a5a6ab;display:flex;gap:13px;align-items:center}
.hero-scroll span{display:block;width:22px;height:34px;border:1px solid #777a8099;border-radius:20px;position:relative}
.hero-scroll span:after{content:'';position:absolute;width:2px;height:7px;background:var(--red);top:7px;left:9px;animation:scroll-cue 1.8s infinite}
.hero-obsidian .hero-bottom{right:auto}.hero-obsidian .hero-bottom .swiss{display:none}
.service-card{transition:transform .35s ease,background .35s ease,border-color .35s ease}.service-card:hover{transform:translateY(-5px);background:#17191e;border-color:#6d343b}
.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.js-motion .reveal.is-visible{opacity:1;transform:none}
@keyframes lion-enter{from{opacity:0;transform:scale(1.065) translateX(18px)}to{opacity:.98;transform:scale(1) translateX(0)}}
@keyframes copy-enter{from{opacity:0;transform:translateY(19px)}to{opacity:1;transform:translateY(0)}}
@keyframes beam-enter{from{opacity:0;transform:scaleY(.6);transform-origin:top}to{opacity:1;transform:scaleY(1);transform-origin:top}}
@keyframes scroll-cue{0%,100%{transform:translateY(0);opacity:1}55%{transform:translateY(11px);opacity:.15}}
@media(max-width:1000px){.hero-obsidian .hero-art{inset:0 -12% 0 20%}.hero-obsidian h1{font-size:clamp(47px,7vw,76px)}}
@media(max-width:760px){.hero-obsidian{min-height:790px;height:100svh;max-height:none}.hero-obsidian .hero-art{inset:73px -22% 27% -3%}.hero-obsidian .hero-art img{object-position:56% center;mask-image:linear-gradient(0deg,transparent 0,#000 24%,#000 100%)}.hero-obsidian .hero-vignette{background:linear-gradient(0deg,#070809 4%,#070809e5 20%,#07080955 63%,transparent 100%),linear-gradient(90deg,#07080988,transparent)}.hero-obsidian .hero-content{padding-top:390px;padding-bottom:105px;justify-content:flex-end}.hero-obsidian h1{font-size:clamp(39px,8.8vw,60px);margin:17px 0}.hero-obsidian .hero-content>p{font-size:14px;line-height:1.65}.hero-obsidian .hero-actions{margin-top:22px}.hero-red-beam{right:11%;height:48%;opacity:.65}.hero-scroll{display:none}.hero-obsidian .hero-bottom{bottom:25px}}
@media(max-width:390px){.hero-obsidian .hero-content{padding-top:300px}.hero-obsidian h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){.hero-obsidian .hero-art img,.hero-red-beam,.hero-obsidian h1,.hero-obsidian .kicker,.hero-obsidian .hero-content>p,.hero-obsidian .hero-actions,.hero-scroll span:after{animation:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* Obsidienne 0.3 — cinematic product ecosystem */
:root{scroll-behavior:smooth} .hero-obsidian{min-height:min(950px,100svh);isolation:isolate} .hero-art{overflow:hidden} .hero-art img{filter:brightness(.66) contrast(1.15) saturate(.65);transform:scale(1.035);transition:filter 1.2s ease,transform 2s cubic-bezier(.2,.7,.2,1)} .hero-obsidian:hover .hero-art img{filter:brightness(.83) contrast(1.12);transform:scale(1.075)} .hero-content{z-index:4}.hero-vignette{pointer-events:none}.hero-red-beam{opacity:.62} .products-section{position:relative;background:radial-gradient(ellipse at 80% 8%,rgba(149,18,24,.11),transparent 42%),#0b0c10;overflow:hidden} .products-section:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.024) 50%,transparent 50.1%);background-size:110px 110px;pointer-events:none} .products-heading{display:flex;align-items:end;justify-content:space-between;gap:4rem}.products-heading>p{max-width:360px;color:#9b9ca5;line-height:1.8}.products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:3.2rem}.product-tile{position:relative;min-height:325px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:linear-gradient(143deg,#202126,#111216 65%);border:1px solid #35363b;transition:transform .35s,border-color .35s,background .35s;overflow:hidden}.product-tile:before{content:"";position:absolute;inset:auto -60px -95px auto;width:210px;height:210px;background:radial-gradient(circle,rgba(203,34,44,.17),transparent 68%);pointer-events:none}.product-tile:hover{transform:translateY(-7px);border-color:#a03740;background:linear-gradient(145deg,#2c2529,#111216 70%)}.product-top,.product-foot{display:flex;justify-content:space-between;align-items:center;gap:12px}.product-index,.product-foot{font-size:.67rem;letter-spacing:.13em;color:#a3a4aa;text-transform:uppercase}.product-sigil{font-size:1.5rem;color:#ac343e}.product-wordmark{display:block;color:#f8f8fa;font-size:clamp(1.5rem,2.5vw,2.5rem);letter-spacing:.08em;font-weight:800}.product-inner p{max-width:22ch;margin-top:14px;line-height:1.6;color:#b0b0b7;font-size:.92rem}.product-foot{border-top:1px solid #424248;padding-top:15px}.product-foot span:last-child{color:#f06b70;font-size:1rem}.products-disclaimer{font-size:.78rem;color:#86878e;line-height:1.6;margin-top:22px}section[id]{scroll-margin-top:84px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #ff6469;outline-offset:4px}@media(max-width:1050px){.products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.products-heading{align-items:start;flex-direction:column;gap:1rem}}@media(max-width:600px){.products-grid{grid-template-columns:1fr}.product-tile{min-height:245px}.hero-obsidian{min-height:90svh}.hero-art img{filter:brightness(.6) contrast(1.15)}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.hero-art img,.product-tile{transition:none}.hero-obsidian:hover .hero-art img{transform:none}}

/* v0.4: signature vectorielle originale et cohérence de marque */
.brand{display:flex;align-items:center;gap:13px}.brand-emblem{width:43px;height:43px;flex:none;filter:invert(1);transition:transform .35s ease}.brand:hover .brand-emblem{transform:translateY(-2px)}
.footer-brand{display:flex;align-items:center;gap:10px}.footer-emblem{filter:invert(1);width:37px;height:37px}
.identity-mark{position:absolute;right:18px;bottom:30px;display:flex;align-items:center;gap:9px;padding:12px;background:rgba(8,9,12,.78);border:1px solid #35363b;backdrop-filter:blur(8px)}
.identity-mark img{filter:invert(1);width:56px;height:56px}.identity-mark span{font-size:9px;letter-spacing:.14em;color:#aeb0b8;max-width:78px;line-height:1.6}
@media(max-width:760px){.brand-emblem{width:37px;height:37px}.identity-mark{display:none}}

/* A5 Obsidienne v0.5 — architectural identity and product differentiation */
:root{--red:#d82335;--focus:#fb6b77}
.header{transition:background .25s,border-color .25s}.header.is-scrolled{position:fixed;background:rgba(7,8,10,.94);border-bottom-color:#45474b;box-shadow:0 16px 40px #0006}
.hero-obsidian{background:radial-gradient(ellipse at 80% 47%,#22242a 0%,#090a0d 53%,#060708 82%)}
.hero-obsidian .hero-art{inset:0 -2% 0 32%}.hero-obsidian .hero-art img{object-position:center 45%;opacity:1;filter:brightness(.75) contrast(1.25) grayscale(1)}
.hero-obsidian .hero-vignette{background:linear-gradient(90deg,#070809 2%,#070809fa 20%,#070809cf 42%,#07080908 82%),linear-gradient(0deg,#070809 0%,transparent 27%)}
.hero-red-beam{right:17%;width:1px;opacity:.5;box-shadow:0 0 24px #e31c2d99,0 0 65px #e31c2d55}
.hero-mark{position:absolute;right:8%;top:20%;z-index:3;display:flex;align-items:center;gap:11px;writing-mode:vertical-rl;font:700 9px var(--heading);letter-spacing:.24em;color:#a4a4ae}
.hero-mark-rule{display:block;width:1px;height:76px;background:linear-gradient(transparent,#9f2b39,transparent)}
.hero-obsidian .hero-content{padding-top:140px}.hero-obsidian h1{max-width:730px;letter-spacing:-.067em}
.section-header h2{max-width:720px}.products-section{background:radial-gradient(ellipse at 85% 15%,#40121a35,transparent 42%),#090b0f}
.product-tile{min-height:395px;border-color:#333941;background:linear-gradient(155deg,#1b1e24 0%,#101217 65%,#0a0c10 100%);padding:30px;isolation:isolate}
.product-tile:after{position:absolute;content:"";z-index:-1;width:280px;height:280px;border:1px solid #ffffff0b;border-radius:50%;top:15%;right:-52%;box-shadow:0 0 0 39px #ffffff05,0 0 0 82px #ffffff03}
.product-tile:nth-child(2){background:linear-gradient(155deg,#211a1e,#101216 64%)}
.product-tile:nth-child(3){background:linear-gradient(155deg,#192027,#0d1217 64%)}
.product-tile:nth-child(4){background:linear-gradient(155deg,#242022,#121215 64%)}
.product-top{align-items:start}.product-sigil{display:grid;place-items:center;height:88px;width:88px;border:1px solid #ffffff26;transform:rotate(-7deg);font:800 60px/1 var(--heading);color:#e4e6eb;letter-spacing:-.1em;text-shadow:3px 5px 0 #ffffff16}
.sigil-fixly{border-radius:50%;transform:rotate(10deg);color:#e67c80}.sigil-quitly{border-radius:0 35% 0 35%;transform:rotate(0deg);color:#a3bfce}.sigil-snapflat{border-radius:15%;transform:rotate(7deg);color:#c7abb1}
.product-overline{display:block;font-size:10px;color:#b4a0a5;letter-spacing:.22em;font-weight:700;text-transform:uppercase;margin-bottom:13px}
.product-wordmark{font-size:clamp(1.45rem,2.4vw,2.3rem);letter-spacing:.015em;overflow-wrap:anywhere}.product-inner p{min-height:70px;max-width:28ch}
.product-bridge{display:flex;align-items:center;gap:22px;padding:29px 0;margin-top:25px;border-top:1px solid #373a40;border-bottom:1px solid #373a40}.product-bridge p{margin:0;flex:1;color:#b8bbc2;font-size:14px}.bridge-dot{width:9px;height:9px;background:var(--red);box-shadow:0 0 0 6px #d8233521;border-radius:50%}.bridge-link{font-weight:800;font-size:12px;white-space:nowrap}.bridge-link span{color:#ef6870;margin-left:10px}
.approach-visual{border-color:#383940;box-shadow:0 35px 90px #0005}.approach-visual:after{content:"";position:absolute;inset:0;border:17px solid #ffffff06;pointer-events:none}.approach-visual img{filter:grayscale(1) contrast(1.26) brightness(.9)}
.service-card:hover,.product-tile:hover{box-shadow:0 25px 60px #0008}.brand-emblem,.footer-emblem{filter:invert(1)}
@media(max-width:1000px){.hero-obsidian .hero-art{inset:0 -15% 0 20%}.hero-mark{right:4%}.product-tile{min-height:330px}}
@media(max-width:760px){.header.is-scrolled{position:fixed}.hero-obsidian .hero-art{inset:70px -25% 20% -5%}.hero-obsidian .hero-vignette{background:linear-gradient(0deg,#070809 7%,#070809eb 26%,#07080940 72%,transparent 100%)}.hero-obsidian .hero-content{padding-top:350px}.hero-mark{display:none}.product-bridge{flex-wrap:wrap;gap:15px}.product-bridge p{flex-basis:calc(100% - 36px)}.bridge-link{margin-left:28px}.product-tile{min-height:300px}.product-sigil{height:75px;width:75px;font-size:50px}}
@media(max-width:420px){.hero-obsidian .hero-content{padding-top:290px}.product-tile{min-height:275px;padding:24px}}
@media(prefers-reduced-motion:reduce){.hero-obsidian .hero-art img{animation:none;transition:none}.header,.service-card,.product-tile{transition:none}}

/* v0.6 product landing and accessibility */
.product-link{display:inline-flex;align-items:center;gap:1rem;text-decoration:none;color:inherit;font-weight:700;letter-spacing:.03em;padding:.5rem 0}.product-link:hover,.product-link:focus-visible{color:#e55b59}.product-detail{padding-top:clamp(8rem,13vw,13rem);padding-bottom:8rem;min-height:80vh}.product-back{color:#a9abb2;text-decoration:none;display:inline-block;margin-bottom:3rem}.product-back:hover{color:#fff}.product-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(200px,.7fr);gap:3rem;align-items:center;min-height:460px;border-bottom:1px solid #383a42}.product-hero h1{font-size:clamp(4.5rem,12vw,11rem);line-height:1;letter-spacing:-.07em;margin:.6rem 0 1rem}.product-hero h2{font-size:clamp(1.7rem,3vw,3rem);max-width:19ch;line-height:1.1}.product-hero p{max-width:55ch;color:#b2b5be;font-size:1.15rem;line-height:1.6;margin:1.8rem 0 2rem}.product-hero-sigil{font-size:clamp(12rem,30vw,27rem);text-align:center;font-weight:900;letter-spacing:-.15em;color:#18191e;text-shadow:1px 1px 0 #35353c,-2px 0 40px #4c111920;user-select:none}.detail-lower{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:5rem 0}.detail-lower h2{font-size:clamp(1.9rem,3vw,3.25rem);max-width:16ch}.detail-lower ul{list-style:none;padding:0;margin:0}.detail-lower li{padding:1.3rem 0;border-bottom:1px solid #37383c;color:#e4e4e8}.detail-lower li::before{content:'↗';color:#e25c5d;margin-right:1rem}.product-detail .products-disclaimer{margin-top:0}.product-detail a:focus-visible,.product-link:focus-visible{outline:2px solid #f46b6d;outline-offset:5px}@media(max-width:740px){.product-hero,.detail-lower{grid-template-columns:1fr}.product-hero-sigil{display:none}.product-hero{min-height:0;padding-bottom:4rem}.detail-lower{gap:1.5rem;padding:3rem 0}.product-detail{padding-top:8rem}}


/* v0.7.0-op — architectural product world and refined hero */
.hero-obsidian{background:#07080b;overflow:hidden}.hero-art-frame{position:absolute;z-index:1;inset:10% 17% 9% 7%;border:1px solid #ffffff0b;pointer-events:none;box-shadow:0 0 0 25px #ffffff02}.hero-ruler{position:absolute;z-index:4;right:24px;bottom:85px;display:flex;gap:28px;writing-mode:vertical-rl;color:#9e9fa6;font-size:9px;letter-spacing:.2em}.hero-art img{max-width:none}.hero-obsidian .hero-red-halo{filter:blur(30px)}.hero-mark{color:#b7a5a8}.product-tile{min-height:440px;padding-top:210px;transition:transform .3s ease,border-color .3s ease;contain:paint}.product-visual{position:absolute;inset:0 0 auto;height:205px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#36343e 0%,#161820 57%,#111319 100%);border-bottom:1px solid #ffffff17;isolation:isolate}.product-visual-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:26px 26px;transform:perspective(240px) rotateX(34deg) scale(1.25);opacity:.6}.product-visual-symbol{position:absolute;inset:0;display:grid;place-items:center;font:900 158px/1 var(--heading);letter-spacing:-.12em;color:#c8c8d120;filter:drop-shadow(0 6px 22px #0007);transform:translateY(-5px)}.product-tile-nexikos .product-visual{background:radial-gradient(ellipse at 65% 53%,#34434d,#121820 68%)}.product-tile-fixly .product-visual{background:radial-gradient(ellipse at 65% 53%,#4b2934,#191319 68%)}.product-tile-quitly .product-visual{background:radial-gradient(ellipse at 65% 53%,#293d4d,#10161b 68%)}.product-tile-snapflat .product-visual{background:radial-gradient(ellipse at 65% 53%,#40353f,#17131b 68%)}.product-tile-nexikos .product-visual-symbol{clip-path:polygon(0 0,100% 0,100% 83%,0 100%)}.product-tile-fixly .product-visual-symbol{transform:rotate(-18deg)}.product-tile-quitly .product-visual-symbol{font-style:italic}.product-tile-snapflat .product-visual-symbol{font-weight:600;transform:scaleX(.76)}.product-top{position:relative;z-index:1}.product-tile .product-sigil{height:54px;width:54px;font-size:36px;opacity:.7}.product-inner{position:relative;z-index:1;padding-top:26px}.product-inner p{min-height:85px}.product-foot{position:relative;z-index:1}.detail-visual{position:relative;aspect-ratio:1/1;width:100%;max-width:410px;display:grid;place-items:center;overflow:hidden;border:1px solid #ffffff18;background:radial-gradient(ellipse at 52% 42%,#303842,#10131b 68%);box-shadow:0 36px 90px #0009}.detail-fixly{background:radial-gradient(ellipse at 52% 42%,#482630,#161017 68%)}.detail-quitly{background:radial-gradient(ellipse at 52% 42%,#243d4e,#10151d 68%)}.detail-snapflat{background:radial-gradient(ellipse at 52% 42%,#41323f,#161017 68%)}.detail-visual-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:34px 34px;transform:perspective(250px) rotateX(20deg) scale(1.4)}.detail-visual-monogram{position:relative;color:#ffffff24;font:900 clamp(150px,21vw,290px)/1 var(--heading);text-shadow:0 16px 35px #0009;letter-spacing:-.13em}.detail-visual-label{position:absolute;bottom:22px;left:23px;letter-spacing:.17em;font:700 9px var(--heading);color:#b2b3bc}.product-hero-sigil{display:flex;align-items:center;justify-content:center}.product-hero .btn{margin-bottom:1rem}.product-tile:focus-within{border-color:#e26972}.product-tile:focus-within .product-visual{filter:brightness(1.18)}@media(max-width:1100px){.product-tile{min-height:400px}.product-inner p{min-height:0}}@media(max-width:760px){.hero-ruler{display:none}.hero-art-frame{inset:10% 3% 29% 3%}.product-tile{min-height:365px;padding-top:195px}.product-visual{height:185px}.product-hero-sigil{display:flex;justify-content:flex-start}.detail-visual{max-width:330px}.product-hero{gap:1rem}.product-hero-copy{order:1}.product-hero-sigil{order:0}}@media(prefers-reduced-motion:reduce){.product-tile,.product-visual{transition:none!important}}

/* v0.8 / Swiss editorial corporate page */
.about-hero{padding-top:clamp(9rem,15vw,14rem);padding-bottom:7rem;min-height:75vh}.about-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:4rem;align-items:center}.about-layout h1{font-size:clamp(3.5rem,7.5vw,7rem);line-height:1.02;letter-spacing:-.065em;max-width:12ch;margin:1.5rem 0}.about-lead{font-size:clamp(1.3rem,2vw,1.8rem);color:#e4e4eb;max-width:38ch;line-height:1.4}.about-text{color:#a9abb4;max-width:63ch;line-height:1.8;margin:1.7rem 0 2rem}.about-emblem{display:grid;place-items:center;aspect-ratio:1;background:radial-gradient(circle at 50% 45%,#252730,#090a0d 69%);border:1px solid #303138;border-radius:2px}.about-emblem img{max-width:76%;height:auto;filter:invert(1)}.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;border-top:1px solid #393940;margin-top:7rem;padding-top:2rem}.about-values div{padding:1.5rem;border:1px solid #303139;background:#111218}.about-values span{color:#e2606a;font-size:.8rem;letter-spacing:.2em}.about-values h2{font-size:1.2rem;line-height:1.4;margin:1rem 0 0}.official-product-link{display:inline-flex;margin:0 0 1rem 1.4rem;font-size:.9rem;color:#ecebf0;text-underline-offset:5px}.official-product-link:hover{color:#ef6473}@media(max-width:800px){.about-layout{grid-template-columns:1fr;gap:2rem}.about-emblem{max-width:420px}.about-values{grid-template-columns:1fr;margin-top:4rem}.official-product-link{margin-left:0;display:flex}}

/* v0.9: editorial corporate positioning */
.house-section{padding-top:110px;padding-bottom:110px;border-top:1px solid rgba(255,255,255,.08)}
.house-intro{max-width:820px}.house-intro h2{font-size:clamp(2.3rem,5vw,5rem);line-height:1.06;letter-spacing:-.045em;margin:24px 0}.house-intro p{color:#a8acb5;max-width:670px;font-size:1.12rem;line-height:1.8}
.house-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:55px;border-top:1px solid #34363c;border-bottom:1px solid #34363c}.house-principles article{padding:32px 30px 34px 0}.house-principles article+article{border-left:1px solid #34363c;padding-left:30px}.principle-index{font-family:monospace;color:#c14242;font-size:.75rem;letter-spacing:.15em}.house-principles h3{font-size:1.3rem;margin:22px 0 12px}.house-principles p{color:#a4a8b1;line-height:1.7;margin:0}.corporate-disclaimer{border-left:2px solid #b23b3b;padding-left:18px!important;font-size:.95rem!important;color:#a8acb5!important}.corporate-product{min-height:72vh}
@media(max-width:720px){.house-section{padding-top:70px;padding-bottom:70px}.house-principles{grid-template-columns:1fr}.house-principles article,.house-principles article+article{padding:26px 0;border-left:0}.house-principles article+article{border-top:1px solid #34363c}}

/* Signature de version : discrète et stable sur mobile */
.footer-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.site-version{font:400 9px/1.4 var(--body);letter-spacing:.04em;color:#646970;white-space:nowrap}@media(max-width:760px){.footer-meta{gap:10px}.site-version{font-size:9px}}

/* Leo Software v1.0.4 — identité corporate */
.site-version{opacity:.48;font-size:9px;letter-spacing:.09em}
.product-card .product-name,.detail-visual-label{letter-spacing:.11em}
.brand-preview{margin:54px auto 18px;max-width:1060px;background:#0b0c0f;border:1px solid rgba(255,255,255,.12);border-radius:20px;overflow:hidden}
.brand-preview img{width:100%;height:auto;display:block}
