:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-dark:#07111f;--color-primary:#1746d6;--color-accent:#2474ff;--color-cyan:#14c8dd;--color-light:#f4f7fa;--color-muted:#667283;--color-white:#fff;--color-line:#d8e0ea;--shadow:0 24px 70px #07111f29;--section-x:clamp(20px, 4vw, 64px);--header-height:88px;--header-offset:120px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-offset)}section{scroll-margin-top:var(--header-offset)}body{background:linear-gradient(180deg, #edf3f8 0%, #f8fafc 34%, #eef3f8 100%), var(--color-light);color:var(--color-dark);margin:0}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh;padding-top:var(--header-height);overflow:hidden}.header{z-index:100;min-height:var(--header-height);padding:8px var(--section-x);color:var(--color-white);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(90deg,#07111ffa,#0a1b36f2),#07111ff5;border-bottom:1px solid #14c8dd3d;justify-content:space-between;align-items:center;gap:22px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 16px 42px #07111f3d}.brand{flex:none;align-items:center;gap:20px;min-width:405px;display:inline-flex}.brand-logo{object-fit:contain;width:auto;max-width:260px;height:clamp(56px,5vw,68px);display:block}.brand-tagline{color:#ffffffd1;border-left:1px solid #14c8dd6b;max-width:245px;padding:10px 0 10px 18px;font-size:13px;font-weight:760;line-height:1.35;position:relative}.brand-tagline:before{background:var(--color-cyan);content:"";width:3px;height:22px;position:absolute;top:9px;left:-2px;box-shadow:0 0 18px #14c8ddb8}.nav{color:#ffffffc2;white-space:nowrap;justify-content:center;align-items:center;gap:clamp(12px,1.7vw,26px);font-size:13px;font-weight:760;display:flex}.nav a{transition:color .18s;position:relative}.nav a:after{background:linear-gradient(90deg, var(--color-accent), var(--color-cyan));content:"";width:0;height:2px;transition:width .18s;position:absolute;bottom:-8px;left:0}.nav a:hover{color:var(--color-white)}.nav a:hover:after{width:100%}.header-cta,.button{border:1px solid #0000;justify-content:center;align-items:center;gap:10px;min-height:46px;font-weight:850;transition:transform .18s,border-color .18s,background .18s,color .18s,box-shadow .18s;display:inline-flex}.header-cta{color:var(--color-white);background:#ffffff14;border-color:#14c8dd47;flex:none;padding:0 16px}.button{padding:0 22px}.button:hover,.header-cta:hover{transform:translateY(-1px)}.primary{background:linear-gradient(135deg, var(--color-primary), var(--color-accent));color:var(--color-white);box-shadow:0 18px 36px #1746d647}.primary:hover{box-shadow:0 20px 46px #14c8dd33}.secondary{background:var(--color-white);border-color:var(--color-line);color:var(--color-dark)}.secondary.ghost{color:var(--color-white);background:#ffffff1a;border-color:#ffffff47}.secondary:hover{color:var(--color-primary);border-color:#14c8dd85}.secondary.ghost:hover{color:var(--color-white);background:#ffffff29}.full{width:100%}.section{padding:clamp(62px, 8vw, 108px) var(--section-x);scroll-margin-top:var(--header-offset);position:relative}.hero{min-height:calc(100vh - var(--header-height));padding:clamp(78px, 9vw, 118px) var(--section-x) clamp(118px, 11vw, 168px);color:var(--color-white);scroll-margin-top:var(--header-offset);background:radial-gradient(circle at 78% 28%,#14c8dd33,#0000 32%),linear-gradient(135deg,#08111f,#0c1f3e 48%,#07111f);align-items:center;display:grid;position:relative;overflow:hidden}.hero-video{object-fit:cover;opacity:.52;width:100%;height:100%;animation:18s ease-in-out infinite alternate slowDrift;position:absolute;inset:0;transform:scale(1.04)}.hero-overlay{background:linear-gradient(90deg,#07111ff5 0%,#07111fc7 45%,#07111fb8 100%),radial-gradient(circle at 72% 36%,#14c8dd29,#0000 34%),linear-gradient(#07111f14,#07111fe6);position:absolute;inset:0}.hero-visual{z-index:1;aspect-ratio:1.15;opacity:.58;pointer-events:none;background:radial-gradient(circle at 68% 34%,#14c8dd1a,#0000 46%),#07111f14;width:min(45vw,620px);position:absolute;top:50%;right:clamp(28px,5vw,88px);overflow:hidden;transform:translateY(-42%);box-shadow:0 30px 95px #00000029;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 18% 82%,#0000 100%),linear-gradient(#0000 0%,#000 18% 82%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 18% 82%,#0000 100%),linear-gradient(#0000 0%,#000 18% 82%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.hero-visual:after{content:"";background:linear-gradient(90deg,#07111fb8,#07111f14 42%,#07111f8f),linear-gradient(#07111f9e,#0000 34%,#07111fb8),radial-gradient(circle at 75% 28%,#14c8dd1a,#0000 34%);position:absolute;inset:-1px}.hero-visual img{object-fit:cover;width:100%;height:100%;display:block}.hero-content{z-index:2;max-width:900px;padding:clamp(20px,3vw,34px) 0;position:relative}.hero-dock{right:var(--section-x);z-index:3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07111f94;border:1px solid #14c8dd38;grid-template-columns:repeat(3,minmax(120px,1fr));width:min(560px,100% - 40px);display:grid;position:absolute;bottom:34px}.hero-dock div{border-right:1px solid #ffffff1a;padding:18px}.hero-dock div:last-child{border-right:0}.hero-dock strong,.hero-dock span{display:block}.hero-dock strong{color:var(--color-white);margin-bottom:8px;font-size:30px;line-height:1}.hero-dock span{color:#ffffffb3;font-size:13px}.eyebrow{color:var(--color-primary);letter-spacing:0;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 16px;font-size:13px;font-weight:850;display:inline-flex}.hero-eyebrow{color:var(--color-cyan)}.eyebrow:before{background:var(--color-cyan);content:"";width:28px;height:2px;display:inline-block}h1,h2,h3,h4,p{margin-top:0}h1{max-width:950px;color:var(--color-white);letter-spacing:0;margin-bottom:20px;font-size:clamp(48px,7.4vw,98px);line-height:.98}h2{color:var(--color-dark);letter-spacing:0;margin-bottom:20px;font-size:clamp(34px,4.8vw,62px);line-height:1.03}h3{color:var(--color-dark);margin-bottom:12px;font-size:22px;line-height:1.2}.hero-subtitle{color:#ffffffe6;max-width:780px;margin-bottom:18px;font-size:clamp(20px,2.6vw,29px);font-weight:740;line-height:1.24}.hero-kicker{color:var(--color-cyan);background:#14c8dd1c;border:1px solid #14c8dd4d;margin-bottom:24px;padding:10px 14px;font-size:clamp(18px,2vw,24px);font-weight:850;line-height:1.2;display:inline-flex}.hero-text{color:#ffffffb8;max-width:720px;font-size:16px;line-height:1.75}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.section-heading{max-width:920px;margin-bottom:42px}.section-heading.wide{max-width:1040px}.section-heading p,.about-copy p,.focus-card p,.prestation-card,.complementary-card p,.process-step p,.reference-card p,.domain-card p,.value-item p,.contact-section p{color:var(--color-muted);font-size:17px;line-height:1.7}.about-section,.approach-section{background:linear-gradient(180deg, #fffffff5, #f6fafdf5), var(--color-white)}.about-section{padding-top:clamp(48px,6vw,84px)}.about-grid{grid-template-columns:minmax(0,1fr) minmax(300px,430px);align-items:start;gap:clamp(28px,5vw,72px);display:grid}.about-copy{max-width:850px}.identity-panel{gap:14px;display:grid}.identity-panel div,.focus-card,.prestation-card,.complementary-card,.process-step,.reference-card,.domain-card,.value-item{background:#ffffffdb;border:1px solid #d8e0eaeb;box-shadow:0 14px 38px #07111f0f}.identity-panel div{padding:24px}.identity-panel svg,.focus-card svg,.complementary-card svg,.process-step svg,.value-item svg{color:var(--color-cyan)}.identity-panel svg{margin-bottom:22px}.identity-panel span,.reference-card span,.project-environments span{color:var(--color-primary);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:850;display:block}.identity-panel strong{color:var(--color-dark);font-size:20px;line-height:1.3;display:block}.telecom-core-section{background:radial-gradient(circle at 82% 16%,#14c8dd1f,#0000 28%),linear-gradient(#eef5fb,#f9fbfd)}.activity-visual-panel{background:#ffffffe6;border:1px solid #14c8dd33;gap:0;margin-bottom:22px;display:grid;overflow:hidden;box-shadow:0 20px 56px #07111f14}.telecom-visual-panel{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);margin-bottom:28px}.activity-visual{background:linear-gradient(135deg, #07111ff5, #0c2248f5), var(--color-dark);min-height:330px;position:relative}.activity-visual:after,.complementary-visual:after{content:"";background:linear-gradient(#07111f0a,#07111f29),linear-gradient(90deg,#14c8dd14,#0000 38%);position:absolute;inset:0}.activity-visual img,.complementary-visual img{object-fit:cover;width:100%;height:100%;display:block}.telecom-activity-visual img{min-height:330px}.activity-visual-copy{background:linear-gradient(135deg, #07111ffa, #0a1f3ffa), var(--color-dark);color:var(--color-white);flex-direction:column;justify-content:center;padding:clamp(26px,4vw,42px);display:flex}.activity-visual-copy span{color:var(--color-cyan);text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:850}.activity-visual-copy strong{margin-bottom:14px;font-size:clamp(24px,3.2vw,38px);line-height:1.08}.activity-visual-copy p{color:#ffffffb8;margin:0;font-size:16px;line-height:1.65}.focus-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.focus-card{min-height:250px;padding:28px;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.focus-card:after{content:"";border:1px solid #14c8dd2e;width:110px;height:110px;position:absolute;bottom:-42px;right:-36px}.focus-card svg{margin-bottom:26px}.focus-card:hover,.prestation-card:hover,.complementary-card:hover,.process-step:hover,.value-item:hover,.ftth-step:hover,.project-logo-card:hover{box-shadow:var(--shadow);border-color:#14c8dd5c;transform:translateY(-3px)}.ftth-chain-panel{background:linear-gradient(135deg, #fffffff2, #eff7fff2), var(--color-white);box-shadow:var(--shadow);border:1px solid #2474ff33;grid-template-columns:minmax(0,.86fr) minmax(420px,1.14fr);align-items:start;gap:22px;margin-top:clamp(34px,5vw,64px);padding:clamp(24px,4vw,42px);display:grid}.ftth-chain-copy{position:sticky;top:118px}.ftth-chain-copy h3{max-width:620px;margin-bottom:16px;font-size:clamp(30px,4vw,48px)}.ftth-chain-copy p:last-child{color:var(--color-muted);font-size:17px;line-height:1.72}.ftth-chain-visual{background:linear-gradient(135deg, #07111ff5, #0c2248f5), var(--color-dark);border:1px solid #14c8dd33;min-height:360px;position:relative;overflow:hidden}.ftth-chain-visual img{object-fit:contain;background:var(--color-white);width:100%;height:100%;min-height:360px;display:block}.ftth-chain-visual.missing-image{place-items:center;display:grid}.ftth-chain-visual.missing-image img,.contact-photo.missing-image img,.project-logo-card.missing-image img,.activity-visual.missing-image img,.complementary-visual.missing-image img{display:none}.activity-visual.missing-image,.complementary-visual.missing-image{place-items:center;display:grid}.activity-visual.missing-image:before,.complementary-visual.missing-image:before{color:#ffffffb8;text-align:center;content:"Visuel premium à ajouter dans le dossier public.";border:1px solid #14c8dd38;max-width:420px;padding:22px;font-size:14px;line-height:1.55}.ftth-chain-visual.missing-image:before{color:#ffffffbd;text-align:center;content:"Ajoutez public/ftth-chain.png pour afficher ici la grande image explicative de la chaîne d’études FTTH.";background:#ffffff0f;border:1px solid #14c8dd3d;max-width:520px;padding:28px;font-size:15px;line-height:1.6}.ftth-step-grid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.ftth-step{background:#ffffffdb;border:1px solid #d8e0eaeb;min-height:260px;padding:24px;transition:transform .18s,border-color .18s,box-shadow .18s}.ftth-step span{color:var(--color-primary);margin-bottom:14px;font-size:13px;font-weight:850;display:inline-flex}.ftth-step h4{color:var(--color-dark);margin:0 0 12px;font-size:clamp(18px,2vw,22px);line-height:1.22}.ftth-step p{color:var(--color-muted);margin:0;font-size:15px;line-height:1.62}.ftth-step-featured{background:linear-gradient(135deg, #07111ffa, #0b244ef5), var(--color-dark);box-shadow:var(--shadow);border-color:#14c8dd57;grid-column:1/-1;grid-template-columns:minmax(0,.94fr) minmax(280px,.58fr);column-gap:28px;display:grid}.ftth-step-featured span,.ftth-step-featured h4,.ftth-step-featured p{color:var(--color-white)}.ftth-step-featured>span{color:var(--color-cyan)}.ftth-step-featured h4,.ftth-step-featured>p:first-of-type{grid-column:1}.ftth-badge{max-width:320px;color:var(--color-cyan);text-align:right;background:#14c8dd1a;border:1px solid #14c8dd5c;grid-area:1/2/span 2;place-self:start end;padding:16px 18px;font-size:clamp(18px,2.4vw,28px);line-height:1.12;box-shadow:0 18px 42px #14c8dd1f}.ftth-highlight{border-left:3px solid var(--color-cyan);background:#ffffff12;grid-column:2;margin-top:18px;padding:18px;color:#ffffffc7!important;font-size:14px!important}.prestations-section{background:linear-gradient(135deg, #07111ff7, #0a1f3ff7), var(--color-dark);color:var(--color-white)}.prestations-section h2{color:var(--color-white)}.prestations-section .section-heading p{color:#ffffffb3}.prestations-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.prestation-card{color:#ffffffc7;background:#fff1;border-color:#14c8dd29;align-items:flex-start;gap:11px;min-height:74px;padding:15px;font-size:14px;font-weight:750;line-height:1.35;display:flex}.prestation-card svg{color:var(--color-cyan);flex:none;margin-top:2px}.value-added,.quality-panel,.transparency-note{background:#14c8dd12;border:1px solid #14c8dd38;margin-top:24px;padding:24px}.value-added strong,.quality-panel strong{color:inherit;margin-bottom:10px;font-size:18px;display:block}.value-added p,.quality-panel p{margin-bottom:0}.prestations-section .value-added p{color:#ffffffb8}.complementary-section{background:#f8fbfd;padding-bottom:clamp(48px,6vw,82px)}.complementary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.complementary-card{min-height:520px;padding:0 32px 32px;position:relative;overflow:hidden}.complementary-visual{background:linear-gradient(135deg, #07111ff2, #0c2248f2), var(--color-dark);height:220px;margin:0 -32px 28px;position:relative;overflow:hidden}.complementary-card svg{margin-bottom:26px}.clean-list{gap:10px;margin:22px 0 0;padding:0;list-style:none;display:grid}.clean-list li{color:var(--color-muted);align-items:flex-start;gap:10px;font-size:14px;line-height:1.45;display:flex}.clean-list svg{color:var(--color-cyan);flex:none;margin-top:2px}.process-timeline{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid;position:relative}.process-timeline:before{background:linear-gradient(90deg, var(--color-primary), var(--color-cyan));content:"";opacity:.32;height:1px;position:absolute;top:34px;left:24px;right:24px}.process-step{min-height:250px;padding:26px;position:relative}.step-index{background:var(--color-dark);width:42px;height:42px;color:var(--color-white);border:1px solid #14c8dd47;justify-content:center;align-items:center;margin-bottom:22px;font-weight:850;display:inline-flex}.process-step svg{position:absolute;top:30px;right:24px}.quality-panel{max-width:920px}.references-section{background:radial-gradient(circle at 18% 12%,#2474ff1f,#0000 26%),#edf3f8}.reference-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px;display:grid}.reference-card{flex-direction:column;padding:32px;display:flex}.reference-card:not(.featured){border-color:#14c8dd42;box-shadow:inset 0 3px #14c8dd57,0 18px 48px #07111f17}.reference-card.featured{background:linear-gradient(135deg, #07111ffa, #0b1f3ef5), var(--color-dark);color:var(--color-white)}.reference-card.featured span{color:var(--color-cyan)}.reference-card.featured p{color:#ffffffb8}.reference-logo-box{background:#fff;border:1px solid #0f172a14;justify-content:center;align-items:center;height:96px;margin-bottom:22px;padding:16px 22px;display:flex}.reference-logo-box img{object-fit:contain;max-width:240px;max-height:64px;display:block}.reference-card:not(.featured) .reference-logo-box{padding:12px 18px}.reference-card:not(.featured) .reference-logo-box img{max-width:250px;max-height:72px;transform:scale(1.08)}.reference-card strong{margin-bottom:16px;font-size:clamp(30px,3.7vw,48px);line-height:1;display:block}.reference-note{color:var(--color-muted);border-top:1px solid #14c8dd33;margin-top:14px;padding-top:16px;font-size:15px!important}.reference-card.featured .reference-note{color:#ffffffb8}.project-environments{background:#ffffffdb;border:1px solid #d8e0eaeb;grid-template-columns:1fr;gap:18px;margin-bottom:18px;padding:clamp(24px,4vw,42px);display:grid;box-shadow:0 14px 38px #07111f0f}.project-environments h3{font-size:clamp(24px,3vw,34px)}.project-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-logo-card{border:1px solid var(--color-line);background:var(--color-white);place-items:center;min-height:clamp(360px,32vw,520px);transition:transform .18s,border-color .18s,box-shadow .18s;display:grid;overflow:hidden}.project-logo-card img{object-fit:contain;width:100%;height:100%;min-height:clamp(360px,32vw,520px);padding:clamp(12px,2vw,24px);transition:transform .26s;display:block}.project-logo-card:hover img{transform:scale(1.035)}.project-logo-card.missing-image:before{color:var(--color-muted);content:"Visuel à ajouter";font-size:13px;font-weight:750}.transparency-note{color:#334155;grid-column:1/-1;margin:18px 0 0;font-weight:750}.domain-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.domain-card{padding:24px}.values-section{background:radial-gradient(circle at 84% 20%,#14c8dd1a,#0000 26%),linear-gradient(#f8fbfd,#eef4fa)}.values-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.value-item{align-items:flex-start;gap:14px;min-height:176px;padding:24px;display:flex}.value-item h3{margin-bottom:8px;font-size:20px}.value-item p{color:var(--color-muted);margin-bottom:0;font-size:15px;line-height:1.55}.contact-section{background:linear-gradient(135deg, #07111ffa, #091f44fa), var(--color-dark);color:var(--color-white);grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);align-items:center;gap:clamp(30px,7vw,96px);display:grid}.contact-section h2{color:var(--color-white)}.contact-section p{color:#ffffffb8;max-width:660px}.contact-section .eyebrow{color:var(--color-cyan)}.contact-copy{max-width:720px}.contact-visual-card{background:#ffffff12;border:1px solid #14c8dd33;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);min-height:460px;display:grid;overflow:hidden;box-shadow:0 26px 80px #00000042}.contact-photo{background:linear-gradient(135deg,#14c8dd29,#1746d62e),#0a1b36;min-height:460px;position:relative}.contact-photo:after{content:"";background:linear-gradient(90deg,#0000,#07111f38);position:absolute;inset:0}.contact-photo img{object-fit:cover;width:100%;height:100%;min-height:460px;display:block}.contact-photo.missing-image{place-items:center;display:grid}.contact-photo.missing-image:before{color:#ffffffb8;text-align:center;content:"Ajoutez public/contact-handshake.jpg pour afficher la photo de relation client.";border:1px solid #14c8dd38;max-width:320px;padding:22px;font-size:14px;line-height:1.55}.contact-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:0 solid #14c8dd33;border-left-width:1px;flex-direction:column;justify-content:center;padding:clamp(26px,4vw,38px);display:flex}.contact-card>span{color:var(--color-cyan);text-transform:uppercase;margin-bottom:18px;font-size:13px;font-weight:850;display:block}.contact-line{color:#ffffffe0;border-bottom:1px solid #ffffff1f;align-items:flex-start;gap:14px;padding:18px 0;line-height:1.5;display:flex}.contact-line svg{color:var(--color-cyan);flex:none}.contact-note{border-bottom:1px solid #ffffff1f;margin:0;padding:14px 0 18px;color:#ffffffb8!important;font-size:14px!important;line-height:1.55!important}.contact-card .button{margin-top:22px}.legal-section{padding:clamp(46px, 6vw, 76px) var(--section-x);scroll-margin-top:var(--header-offset);background:#f6f9fc}.legal-inner{max-width:1180px;margin:0 auto}.legal-section h2{font-size:clamp(28px,3.4vw,42px)}.legal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.legal-grid div{border:1px solid var(--color-line);background:#ffffffd1;padding:20px}.legal-grid span{color:var(--color-primary);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:850;display:block}.legal-grid p{color:var(--color-muted);margin:0;font-size:14px;line-height:1.55}.legal-note{color:var(--color-muted);background:#14c8dd0f;border:1px solid #14c8dd2e;margin:18px 0 0;padding:18px 20px;font-size:14px;font-weight:750}.footer{padding:26px var(--section-x);color:#ffffffad;background:#07111f;border-top:1px solid #14c8dd24;justify-content:space-between;align-items:center;gap:20px;font-size:14px;display:flex}.footer-brand{align-items:center;gap:16px;display:inline-flex}.footer-brand img{object-fit:contain;background:var(--color-white);width:auto;max-width:150px;height:38px;display:block}.footer-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:18px;display:inline-flex}.footer-links a{color:#ffffffdb;font-weight:750;transition:color .18s}.footer-links a:hover{color:var(--color-cyan)}@supports (animation-timeline:view()){.reveal{animation:both reveal;animation-timeline:view();animation-range:entry 12% cover 28%}.contact-section.reveal{animation:none}}@keyframes reveal{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes slowDrift{0%{transform:scale(1.04)translate(0,0)}to{transform:scale(1.09)translate(-1.5%,1%)}}@keyframes nodeGlow{0%,to{opacity:.72;transform:scale(1)}50%{opacity:1;transform:scale(1.18)}}@keyframes dataFlow{0%{opacity:0;transform:translate(-120px)}18%,72%{opacity:1}to{opacity:0;transform:translate(210px)}}@media (width<=1180px){:root{--header-height:126px;--header-offset:150px}.header{flex-wrap:wrap;align-items:center}.brand{min-width:0}.nav{order:3;justify-content:flex-start;width:100%;padding-bottom:2px;overflow-x:auto}.focus-grid,.ftth-step-grid,.domain-cards,.values-list,.prestations-grid,.process-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.about-grid,.complementary-grid,.ftth-chain-panel,.telecom-visual-panel,.reference-layout,.project-environments,.contact-section,.contact-visual-card{grid-template-columns:1fr}.hero{min-height:auto;padding-bottom:220px}.hero-visual{opacity:.32;width:min(76vw,440px);top:62%;right:18px}.hero-dock{left:var(--section-x);right:var(--section-x);width:auto}.focus-grid,.ftth-step-grid,.prestations-grid,.process-timeline,.domain-cards,.values-list{grid-template-columns:1fr}.process-timeline:before{display:none}.ftth-chain-copy{position:static}.ftth-step-featured{grid-template-columns:1fr}.ftth-badge,.ftth-highlight{text-align:left;grid-column:1;justify-self:stretch}.contact-card{border-width:1px 0 0}}@media (width<=620px){:root{--header-height:126px;--header-offset:calc(var(--header-height) + 18px)}.header{padding:12px 18px}.brand-logo{max-width:190px;height:50px}.brand-tagline,.header-cta{display:none}.section{padding:64px 18px}.hero{padding:72px 18px 250px}.hero-visual{display:none}.hero-actions,.button{width:100%}.hero-dock{grid-template-columns:1fr;left:18px;right:18px}.hero-dock div{border-bottom:1px solid #ffffff1a;border-right:0}.hero-dock div:last-child{border-bottom:0}.project-logo-grid,.legal-grid{grid-template-columns:1fr}.project-logo-card,.project-logo-card img{min-height:260px}.focus-card,.ftth-chain-panel,.ftth-step,.prestation-card,.process-step,.reference-card,.project-environments,.domain-card,.value-item,.identity-panel div,.contact-card{padding:24px}.complementary-card{padding:0 24px 24px}.complementary-visual{height:190px;margin:0 -24px 24px}.footer,.footer-brand,.footer-links{flex-direction:column;justify-content:flex-start;align-items:flex-start}}
