:root{--bg:#0a0512;--bg2:#0d0817;--card:#150c1f;--card2:#1a1026;--amber:#ff7a1a;--amber2:#ffb347;--amber-solid:#d9600a;--white:#fff;--text:#cbc7d4;--muted:#8b839a;--border:rgba(255,255,255,.08);--shadow:0 20px 60px rgba(0,0,0,.35);--radius:20px;--max:1180px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:"Inter",sans-serif;background:var(--bg);color:var(--white);line-height:1.6;overflow-x:hidden}body::before{content:"";position:fixed;width:500px;height:500px;top:-200px;left:-150px;background:radial-gradient(circle,rgba(255,122,26,.16),transparent 65%);pointer-events:none;z-index:-1}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 40px));margin:auto}header{position:fixed;top:0;left:0;width:100%;z-index:1000;border-bottom:1px solid transparent;transition:.3s}header.scrolled{background:rgba(10,5,18,.88);backdrop-filter:blur(18px);border-color:var(--border)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px}.logo-mark{display:flex;align-items:center;gap:8px}.logo-mark .logo-icon-img{height:40px;width:auto}.logo-mark .logo-word-img{height:20px;width:auto}.logo-mark-lg{flex-direction:column;gap:18px}.logo-mark-lg .logo-icon-img{height:170px}.logo-mark-lg .logo-word-img{height:44px}.nav-actions{display:flex;align-items:center;gap:14px}.nav-cta-btn{font-size:13px;padding:11px 18px}.menu-toggle{position:relative;z-index:60;width:46px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.04);cursor:pointer}.menu-toggle-bar{display:block;width:20px;height:2px;background:var(--white);border-radius:2px;transition:transform .3s,opacity .3s}.menu-toggle[aria-expanded="true"] .menu-toggle-bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle-bar:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] .menu-toggle-bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.review-fab{position:fixed;top:100px;right:24px;z-index:500;display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:999px;border:1px solid rgba(255,122,26,.35);background:linear-gradient(145deg,rgba(255,122,26,.14),rgba(255,255,255,.03));backdrop-filter:blur(16px);box-shadow:0 15px 40px -12px rgba(0,0,0,.55),inset 0 1px 1px rgba(255,255,255,.08);color:#fff;font-size:13px;font-weight:700;transition:transform .25s,border-color .25s,box-shadow .25s;opacity:0;pointer-events:none;transform:translateY(-16px) scale(.9)}.review-fab.is-visible{pointer-events:auto;animation:reviewFabPop .6s cubic-bezier(.34,1.4,.64,1) forwards}@keyframes reviewFabPop{0%{opacity:0;transform:translateY(-16px) scale(.9)}100%{opacity:1;transform:translateY(0) scale(1)}}.review-fab:hover{border-color:var(--amber);box-shadow:0 20px 50px -12px rgba(255,122,26,.3),inset 0 1px 1px rgba(255,255,255,.15);transform:translateY(-2px)}.review-fab.is-visible:hover{transform:translateY(-2px)}.review-fab-star{width:17px;height:17px;color:var(--amber);transition:transform .4s;flex-shrink:0}.review-fab:hover .review-fab-star{transform:rotate(72deg) scale(1.15)}@media(max-width:700px){.review-fab{top:90px;right:14px;padding:11px 16px;font-size:12px}.review-fab span{display:none}}@media(prefers-reduced-motion:reduce){.review-fab.is-visible{animation:none;opacity:1;transform:none}}.panel-backdrop{position:fixed;inset:0;background:rgba(5,2,10,.6);backdrop-filter:blur(3px);z-index:45;opacity:0;pointer-events:none;transition:opacity .5s}.panel-backdrop.is-open{opacity:1;pointer-events:auto}.curved-panel{position:fixed;top:0;right:0;z-index:50;width:min(440px,100vw);height:100dvh;background:#000;border-left:1px solid var(--border);transform:translateX(calc(100% + 140px));transition:transform .8s cubic-bezier(.76,0,.24,1)}.curved-panel.is-open{transform:translateX(0)}.curve-wrap{position:absolute;top:0;left:-99px;width:100px;height:100%;overflow:hidden;pointer-events:none}.curve-svg{width:100px;height:100%;fill:#000;display:block}#curvePath{transition:d .8s cubic-bezier(.76,0,.24,1)}.curved-panel-inner{height:100%;display:flex;flex-direction:column;justify-content:center;gap:44px;padding:100px 40px 40px}.curved-panel-label{text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--muted);padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:10px}.curved-panel-links{display:flex;flex-direction:column}.curved-panel-links a{position:relative;display:flex;align-items:baseline;gap:12px;padding:16px 0;border-bottom:1px solid var(--border);font-size:clamp(22px,4.5vw,30px);font-weight:300;text-transform:uppercase;letter-spacing:-1px;color:var(--white);overflow:hidden}.curved-panel-links a::before{counter-increment:navcount;content:counter(navcount) ".";font-size:16px;font-weight:400;color:var(--muted)}.curved-panel-links{counter-reset:navcount}.curved-panel-links a:hover{color:#00b7ff}.curved-panel-links .letter{display:inline-block;transition:transform .3s ease,color .3s ease}.curved-panel-links a:hover .letter{transform:translateY(-6px)}.curved-panel-footer{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--text);padding-top:20px;border-top:1px solid var(--border)}.curved-panel-footer a:hover{color:#00b7ff}.curved-panel-socials{display:flex;gap:12px;margin-bottom:6px}.social-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.06);transition:transform .25s,background .25s}.social-icon img{width:18px;height:18px}a.social-icon:hover{background:#08d;transform:translateY(-3px)}.social-icon.is-disabled{opacity:.35;cursor:default}body.panel-open{overflow:hidden}@media(max-width:600px){.nav-cta-btn{display:none}.curved-panel{width:100vw}.curved-panel-inner{padding:90px 26px 30px}}@media(prefers-reduced-motion:reduce){.curved-panel,.panel-backdrop,#curvePath,.menu-toggle-bar,.curved-panel-links .letter{transition:none !important}}.hero{min-height:100vh;display:flex;align-items:center;padding:140px 0 90px;position:relative;overflow:hidden}.hero::after{content:"";position:absolute;width:650px;height:650px;right:-250px;top:80px;border-radius:50%;background:radial-gradient(circle,rgba(255,179,71,.18),transparent 65%);z-index:-1}.hero-shader-bg{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:.5;pointer-events:none;z-index:-1;mask-image:radial-gradient(ellipse at 60% 40%,#000 0,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 60% 40%,#000 0,transparent 75%)}.hero-circuit-bg{position:absolute;inset:0;width:100%;height:100%;opacity:.09;pointer-events:none;z-index:0}.hero-circuit-bg path{fill:none;stroke:var(--amber2);stroke-width:1.5}.hero-circuit-bg circle{fill:var(--amber2)}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px}.hero-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.hero-badge{display:flex;align-items:center;justify-content:center;width:108px;height:62px;border-radius:14px;background:#fff;box-shadow:0 12px 28px -10px rgba(0,0,0,.5);padding:8px}.hero-badge img{max-width:100%;max-height:100%;object-fit:contain}.badge{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(255,122,26,.3);background:rgba(255,122,26,.08);color:#ffd9ac;border-radius:100px;font-size:12px;font-weight:700;margin-bottom:24px}.dot{width:7px;height:7px;background:#28e18b;border-radius:50%;box-shadow:0 0 12px #28e18b}h1{font-size:clamp(42px,6vw,76px);line-height:.98;letter-spacing:-4px;max-width:760px;margin-bottom:25px;text-wrap:balance}h1 .gradient{background:linear-gradient(90deg,#fff,var(--amber2));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-text{max-width:610px;color:var(--text);font-size:17px;margin-bottom:35px}.buttons{display:flex;flex-wrap:wrap;gap:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 21px;border-radius:11px;font-size:14px;font-weight:700;transition:.25s;border:1px solid var(--border)}.btn-primary{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--amber),var(--amber-solid));box-shadow:0 10px 35px rgba(255,122,26,.25)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 15px 45px rgba(255,122,26,.4)}.btn-primary::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .65s ease;pointer-events:none}.btn-primary:hover::after{left:130%}@media(prefers-reduced-motion:reduce){.btn-primary::after{transition:none;display:none}}.btn-secondary{background:rgba(255,255,255,.04)}.btn-secondary:hover{background:rgba(255,255,255,.08)}.hero-card{position:relative;min-height:480px;border:1px solid var(--border);background:linear-gradient(145deg,rgba(24,15,32,.95),rgba(10,6,15,.96));border-radius:28px;box-shadow:var(--shadow);overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-card::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:rgba(0,0,0,.35);filter:blur(70px)}@property --border-angle{syntax:'<angle>';inherits:false;initial-value:0}.hero-card::after,.tesla-canvas-wrap::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:conic-gradient(from var(--border-angle),transparent 0,rgba(255,122,26,.7) 6%,transparent 16%,transparent 84%,rgba(88,175,250,.55) 94%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:borderAngleSpin 5s linear infinite}@keyframes borderAngleSpin{to{--border-angle:360deg}}@media(prefers-reduced-motion:reduce){.hero-card::after,.tesla-canvas-wrap::after{animation:none}}.hero-illustration{position:relative;width:92%;max-width:400px;height:auto;filter:drop-shadow(0 20px 30px rgba(0,0,0,.45));animation:floatY 4s ease-in-out infinite}@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(prefers-reduced-motion:reduce){.hero-illustration{animation:none}}.floating{position:absolute;padding:14px 17px;border:1px solid var(--border);background:rgba(10,6,17,.86);backdrop-filter:blur(10px);border-radius:14px;box-shadow:var(--shadow);font-size:13px;font-weight:700}.floating.one{top:35px;left:30px}.floating.two{right:25px;bottom:35px}.tesla-showcase{padding:70px 0;background:#070310;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.tesla-showcase-inner{display:grid;grid-template-columns:.8fr 1fr;align-items:center;gap:50px}.tesla-canvas-wrap{position:relative;aspect-ratio:1 / 1;max-width:380px;border-radius:28px;border:1px solid var(--border);background:radial-gradient(circle at 50% 40%,rgba(255,122,26,.1),transparent 65%),#0a0512;overflow:hidden}.tesla-canvas-wrap canvas{width:100%;height:100%;display:block;touch-action:none}.tesla-caption h3{font-size:clamp(24px,3vw,34px);letter-spacing:-1px;line-height:1.15;margin-bottom:14px;text-wrap:balance}.tesla-caption p{color:var(--text);max-width:480px}@media(max-width:900px){.tesla-showcase-inner{grid-template-columns:1fr;text-align:center}.tesla-canvas-wrap{margin:0 auto}.tesla-caption p{margin-left:auto;margin-right:auto}}section{padding:110px 0}.section-head{max-width:680px;margin-bottom:50px}.eyebrow{color:var(--amber2);text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:800;margin-bottom:13px}h2{font-size:clamp(32px,4vw,50px);line-height:1.05;letter-spacing:-2px;margin-bottom:15px;text-wrap:balance}.section-head p{color:var(--text)}.section-head.centered{margin-left:auto;margin-right:auto;text-align:center}#realisations{padding-bottom:70px}.showcase-video{max-width:600px;margin:0 auto 50px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);box-shadow:0 20px 50px rgba(0,0,0,.35);background:#000}.showcase-video video{width:100%;height:auto;display:block}.gallery-app{display:flex;flex-direction:column;gap:26px;padding:0 20px}.gallery-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.gallery-tab{display:inline-flex;align-items:center;gap:9px;padding:11px 20px 11px 16px;border-radius:999px;border:1px solid var(--border);background:linear-gradient(145deg,var(--card),var(--card2));color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;transition:.25s;white-space:nowrap}.gallery-tab svg{width:17px;height:17px;flex-shrink:0;transition:transform .3s}.gallery-tab:hover{border-color:rgba(255,122,26,.4);color:var(--text);transform:translateY(-2px)}.gallery-tab:hover svg{transform:scale(1.12)}.gallery-tab.is-active{background:linear-gradient(135deg,var(--amber),var(--amber-solid));border-color:transparent;color:#1a0f00;box-shadow:0 10px 28px rgba(255,122,26,.3)}.gallery-tab.is-active:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(255,122,26,.4)}.embla{position:relative}.embla__viewport{overflow:hidden}.embla__container{display:flex;gap:16px;touch-action:pan-y}.embla__slide{flex:0 0 auto;width:220px}.embla__slide-btn{position:relative;display:block;width:100%;aspect-ratio:3 / 4;border-radius:14px;overflow:hidden;border:1px solid var(--border);background:var(--card2);padding:0;cursor:pointer;transition:transform .3s,border-color .3s,box-shadow .3s}.embla__slide-btn:hover{transform:translateY(-4px);border-color:rgba(255,122,26,.5);box-shadow:0 18px 40px rgba(0,0,0,.35)}.embla__slide-btn img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;user-select:none;transition:transform .4s}.embla__slide-btn:hover img{transform:scale(1.06)}.embla__progress{max-width:320px;margin:22px auto 0;height:4px;border-radius:999px;background:var(--border);overflow:hidden}.embla__progress__bar{width:100%;height:100%;background:linear-gradient(90deg,var(--amber),var(--amber2));transform:translateX(-100%);will-change:transform}.gallery-lightbox{position:fixed;inset:0;z-index:1100;background:rgba(2,1,5,.98);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:80px 96px}.gallery-lightbox[hidden]{display:none}.lb-stage{position:relative;max-width:900px;max-height:100%;width:100%;display:flex;flex-direction:column;align-items:center}.lb-stage img{max-width:100%;max-height:70vh;border-radius:12px;border:1px solid var(--border);box-shadow:0 30px 70px rgba(0,0,0,.5);object-fit:contain;cursor:pointer}.lb-caption{margin-top:16px;color:#fff;font-size:14px;font-weight:600;text-align:center}.lb-close{position:absolute;top:22px;right:22px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.25s;z-index:3}.lb-close:hover{border-color:var(--amber);background:var(--amber);color:#1a0f00}.lb-close svg{width:18px;height:18px}.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;cursor:pointer;transition:.25s;z-index:3}.lb-arrow:hover{border-color:var(--amber);background:var(--amber);color:#1a0f00;transform:translateY(-50%) scale(1.08)}.lb-arrow svg{width:22px;height:22px}.lb-prev{left:18px}.lb-next{right:18px}.lb-counter{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);padding:6px 14px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font-size:12px;font-weight:600}@media(max-width:700px){.gallery-app{padding:0 14px}.embla__slide{width:168px}.gallery-lightbox{padding:56px 52px}.lb-close{top:14px;right:14px}.lb-arrow{width:36px;height:36px}.lb-arrow svg{width:18px;height:18px}.lb-prev{left:8px}.lb-next{right:8px}}#fournisseurs{padding:90px 0}.logo-carousel{display:flex;justify-content:center;gap:16px;margin-top:50px;flex-wrap:wrap}.logo-column{width:200px;height:96px;border-radius:var(--radius);border:1px solid var(--border);background:#fff;overflow:hidden;position:relative;box-shadow:0 15px 35px rgba(0,0,0,.2)}.logo-slot{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px 26px;transition:opacity .4s ease,transform .4s cubic-bezier(.22,.68,.36,1),filter .4s ease}.logo-slot.is-leaving{opacity:0;transform:translateY(-14px);filter:blur(4px)}.brand-logo{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}@media(max-width:900px){.logo-column{width:150px;height:80px}.logo-slot{padding:14px 18px}}@media(max-width:600px){.logo-carousel{gap:10px}.logo-column{width:44%}}@media(prefers-reduced-motion:reduce){.logo-slot{transition:none}}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service{position:relative;min-height:250px;padding:28px;border-radius:var(--radius);background:linear-gradient(145deg,var(--card),#0c0714);border:1px solid var(--border);overflow:hidden;transition:.3s;--mx:50%;--my:50%}.service:hover{transform:translateY(-5px);border-color:rgba(255,122,26,.4);box-shadow:0 20px 50px rgba(0,0,0,.25)}.service::before{content:"";position:absolute;inset:0;background:radial-gradient(340px circle at var(--mx) var(--my),rgba(255,122,26,.14),transparent 62%);opacity:0;transition:opacity .4s;pointer-events:none}.service:hover::before{opacity:1}.service-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:rgba(255,122,26,.1);border:1px solid rgba(255,122,26,.15);font-size:25px;margin-bottom:28px}.service h3{font-size:19px;margin-bottom:9px}.service p{color:var(--muted);font-size:13px}.service-number{position:absolute;right:20px;bottom:12px;font-size:65px;font-weight:900;color:rgba(255,255,255,.025)}.service-icon-phone{position:relative;color:var(--amber)}.service-icon-phone .phone-ring{position:absolute;inset:0;margin:auto;width:100%;height:100%;opacity:0;transform:scale(.3)}.service-icon-phone .phone-glyph{position:relative;width:24px;height:24px;display:block}.service:hover .service-icon-phone .phone-ring{animation:phonePulse .9s ease-out}.service:hover .service-icon-phone .phone-glyph path{animation:phoneWiggle .9s ease-in-out;transform-box:fill-box;transform-origin:center}@keyframes phoneWiggle{0%{transform:rotate(0)}20%{transform:rotate(-8deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(6deg)}100%{transform:rotate(0)}}@keyframes phonePulse{0%{opacity:0;transform:scale(.3)}30%{opacity:.25}100%{opacity:0;transform:scale(1.5)}}.service-icon-globe{color:var(--amber)}.service-icon-globe .globe-svg{width:24px;height:24px;display:block;transform-box:fill-box;transform-origin:center}.service-icon-globe .globe-orbit{stroke-dasharray:var(--len,1px);stroke-dashoffset:0}.service:hover .service-icon-globe .globe-svg{animation:globeSpin 1.4s cubic-bezier(.33,1,.68,1)}.service:hover .service-icon-globe .globe-orbit{animation:globeOrbitDraw .4s ease-out}@keyframes globeSpin{0%{transform:scale(1) rotate(0)}9%{transform:scale(1.03) rotate(32deg)}18%{transform:scale(1) rotate(65deg)}100%{transform:scale(1) rotate(360deg)}}@keyframes globeOrbitDraw{0%{stroke-dashoffset:var(--len,1px);opacity:.5}100%{stroke-dashoffset:0;opacity:1}}.service-icon-zap{color:var(--amber)}.service-icon-zap .zap-svg{width:24px;height:24px;display:block;transform-box:fill-box;transform-origin:center}.service-icon-zap .zap-bolt{stroke-dasharray:var(--len,1px);stroke-dashoffset:0}.service:hover .service-icon-zap .zap-svg{animation:zapWobble .6s ease-out}.service:hover .service-icon-zap .zap-bolt{animation:zapDraw .45s ease-out,zapFade .25s linear}@keyframes zapWobble{0%{transform:scale(.92) rotate(0)}35%{transform:scale(1.08) rotate(-4deg)}70%{transform:scale(1) rotate(2deg)}100%{transform:scale(1) rotate(0)}}@keyframes zapDraw{0%{stroke-dashoffset:var(--len,1px)}100%{stroke-dashoffset:0}}@keyframes zapFade{0%{opacity:.4}100%{opacity:1}}.service-icon-camera{color:var(--amber)}.service-icon-camera .camera-svg{width:24px;height:24px;display:block}.service-icon-camera .camera-lens{transform-box:fill-box;transform-origin:center}.service:hover .service-icon-camera .camera-lens{animation:cameraSnap .8s cubic-bezier(.34,1.4,.64,1)}@keyframes cameraSnap{0%{transform:scale(1)}30%{transform:scale(.45)}65%{transform:scale(1.15)}100%{transform:scale(1)}}.service-icon-evcharger{color:var(--amber)}.service-icon-evcharger svg{width:24px;height:24px;display:block}.service:hover .service-icon-evcharger .ev-bolt{animation:evPulse 1s ease-in-out infinite}@keyframes evPulse{0%,100%{opacity:1}50%{opacity:.4}}.service-icon-domotique{color:var(--amber)}.service-icon-domotique svg{width:24px;height:24px;display:block;transform-box:fill-box;transform-origin:center}.service:hover .service-icon-domotique svg{animation:domotiqueSpin .7s ease-in-out}@keyframes domotiqueSpin{0%{transform:scale(1) rotate(0)}40%{transform:scale(1.1) rotate(90deg)}100%{transform:scale(1) rotate(360deg)}}.service-icon-plug{color:var(--amber)}.service-icon-plug svg{width:24px;height:24px;display:block;transform-box:fill-box;transform-origin:center}.service:hover .service-icon-plug svg{animation:plugSnap .6s ease-in-out}@keyframes plugSnap{0%{transform:scale(1) rotate(0)}25%{transform:scale(.85) rotate(-8deg)}55%{transform:scale(1.1) rotate(6deg)}80%{transform:scale(.97) rotate(-2deg)}100%{transform:scale(1) rotate(0)}}.contact-item-icon svg{width:22px;height:22px;display:block;transform-box:fill-box;transform-origin:center}.contact-item:hover .contact-item-icon{box-shadow:0 0 22px rgba(0,170,255,.35);border-color:#33c3ff}.contact-item:hover .icon-phone-glyph path{animation:phoneWiggle .9s ease-in-out;transform-box:fill-box;transform-origin:center}.contact-item:hover .icon-whatsapp-glyph{animation:waPop .5s ease-out}.contact-item:hover .icon-mail-glyph{animation:mailBounce .6s ease-out}.contact-item:hover .icon-pin-glyph{animation:pinDrop .6s cubic-bezier(.34,1.4,.64,1)}@keyframes waPop{0%{transform:scale(1)}40%{transform:scale(1.18)}70%{transform:scale(.94)}100%{transform:scale(1)}}@keyframes mailBounce{0%{transform:translateY(0) rotate(0)}30%{transform:translateY(-3px) rotate(-4deg)}60%{transform:translateY(0) rotate(3deg)}100%{transform:translateY(0) rotate(0)}}@keyframes pinDrop{0%{transform:translateY(-5px) scale(.9)}55%{transform:translateY(0) scale(1.08)}80%{transform:translateY(-2px) scale(.97)}100%{transform:translateY(0) scale(1)}}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.about-box{min-height:0;padding:44px;border-radius:28px;border:1px solid var(--border);background:radial-gradient(circle at 30% 20%,rgba(255,122,26,.2),transparent 35%),linear-gradient(145deg,#170d20,#0a0512);display:grid;place-items:center;position:relative;overflow:hidden}.city-illustration{position:relative;width:100%}.city-bg{width:100%;height:auto;display:block}.city-car{position:absolute;top:84.5%;width:9%;height:auto;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}.city-car-a{transform:scaleX(-1);left:-12%;animation:drive-right 9s linear infinite}.city-car-b{left:112%;animation:drive-left 11s linear infinite;animation-delay:2.5s}@keyframes drive-right{from{left:-12%}to{left:112%}}@keyframes drive-left{from{left:112%}to{left:-12%}}@media(prefers-reduced-motion:reduce){.city-car-a{animation:none;left:22%}.city-car-b{animation:none;left:68%}}.about-content p{color:var(--text);margin-bottom:25px}.check-list{display:grid;gap:13px;margin-bottom:30px}.check{display:flex;align-items:center;gap:12px;font-size:14px;color:#dce2e9}.check-icon{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:rgba(255,122,26,.15);color:var(--amber2);font-size:11px}.process{background:#0a0611}.process-grid-wrap{position:relative;padding-top:22px}.process-line{position:absolute;top:0;left:0;width:100%;height:22px;overflow:visible}.process-line path{fill:none;stroke:var(--amber);stroke-width:2;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.4s ease}.process-line circle{fill:var(--amber2);opacity:0;transition:opacity .4s ease;transition-delay:1.2s}.process-grid-wrap.in-view .process-line path{stroke-dashoffset:0}.process-grid-wrap.in-view .process-line circle{opacity:1}@media(prefers-reduced-motion:reduce){.process-line path,.process-line circle{transition:none;stroke-dashoffset:0;opacity:1}}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.step{padding:30px 24px;border:1px solid var(--border);border-radius:var(--radius);background:rgba(255,255,255,.02)}.step-number{color:var(--amber2);font-size:12px;font-weight:900;margin-bottom:25px}.step h3{margin-bottom:9px}.step p{color:var(--muted);font-size:13px}.cta{padding-top:80px}.cta-box{padding:65px;border-radius:30px;border:1px solid rgba(255,122,26,.25);background:radial-gradient(circle at 85% 20%,rgba(255,179,71,.16),transparent 30%),radial-gradient(circle at 10% 90%,rgba(255,122,26,.13),transparent 35%),#170d1f;display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-box h2{max-width:650px}.cta-box p{color:var(--text);max-width:600px}#contact{position:relative;overflow:hidden}#contact::before{content:"";position:absolute;width:500px;height:500px;background:#009dff;filter:blur(180px);opacity:.08;right:-150px;top:100px;pointer-events:none}.contact-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.contact-left{padding-right:10px}.contact-eyebrow{color:#00b7ff;font-size:13px;font-weight:700;letter-spacing:4px;text-transform:uppercase;margin-bottom:16px}.contact-left .contact-description{color:#c9d8e5;font-size:16px;line-height:1.7;max-width:520px;margin:14px 0 32px}.contact-info{display:flex;flex-direction:column;gap:22px;margin-bottom:32px;border:0;background:0;padding:0;border-radius:0}.contact-item{display:flex;align-items:center;gap:18px;padding:0;border-bottom:0}.contact-item-icon{width:52px;height:52px;border:1px solid #0af;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:21px;color:#00b7ff;background:0;box-shadow:0 0 15px rgba(0,170,255,.15);flex-shrink:0}.contact-item small{display:block;color:#00b7ff;font-size:13px;margin-bottom:4px}.contact-item strong{display:block;font-size:15px;margin-bottom:2px}.contact-item span{color:#91a7b8;font-size:12px}.contact-quote-box{border:1px solid #008dff;border-radius:15px;padding:22px;background:rgba(0,15,28,.65);box-shadow:0 0 30px rgba(0,150,255,.08);max-width:520px}.contact-quote-box h3{font-size:18px;margin-bottom:8px}.contact-quote-box h3 span{color:#00b7ff}.contact-quote-box p{color:#a9bac8;font-size:14px;line-height:1.6}.contact-form{position:relative;z-index:2;background:rgba(2,10,18,.9);border:1px solid #009dff;border-radius:25px;padding:36px;box-shadow:0 0 50px rgba(0,153,255,.10),inset 0 0 40px rgba(0,153,255,.02);backdrop-filter:blur(15px)}.contact-form-title{display:flex;gap:13px;align-items:center;margin-bottom:8px}.contact-form-title .bolt{font-size:30px;color:#00b7ff}.contact-form-title h3{font-size:24px;margin-bottom:0}.contact-form-subtitle{color:#9db0c0;font-size:14px;margin-bottom:26px;line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{color:#aeb7c4;font-size:12px;font-weight:600}input,textarea,select{width:100%;border:1px solid var(--border);background:#0f0a16;color:white;border-radius:10px;padding:13px 14px;font-family:inherit;outline:0;transition:.2s}input:focus,textarea:focus,select:focus{border-color:rgba(255,122,26,.7);box-shadow:0 0 0 3px rgba(255,122,26,.1)}#contact input,#contact textarea,#contact select{background:#061321;border-color:#245274}#contact input:focus,#contact textarea:focus,#contact select:focus{border-color:#0af;box-shadow:0 0 15px rgba(0,170,255,.15)}#contact input::placeholder,#contact textarea::placeholder{color:#60778a}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--amber2);outline-offset:2px}#contact input:focus-visible,#contact textarea:focus-visible,#contact select:focus-visible{outline-color:#0af}textarea{min-height:130px;resize:vertical}.contact-upload{border:1px dashed #0af;border-radius:12px;padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;margin-bottom:20px;transition:.25s}.contact-upload:hover{background:rgba(0,170,255,.05)}.contact-upload-icon{font-size:26px;color:#0af;flex-shrink:0}.contact-upload strong{display:block;margin-bottom:3px;font-size:14px}.contact-upload span{color:#71889b;font-size:12px}.contact-upload input{display:none}.form-submit{margin-top:4px;width:100%;cursor:pointer;border:0;border-radius:12px;padding:16px;background:linear-gradient(90deg,#08c4ff,#006cff);color:white;font-size:15px;font-weight:700;transition:.3s;box-shadow:0 0 20px rgba(0,140,255,.25)}.form-submit:hover{transform:translateY(-2px);box-shadow:0 0 30px rgba(0,170,255,.45)}.contact-security{text-align:center;color:#71889b;font-size:12px;margin-top:14px}.success{display:none;margin-top:15px;padding:12px;border-radius:10px;background:rgba(0,170,255,.08);color:#00c8ff;font-size:13px;text-align:center;font-weight:600}.legal-page{padding:160px 0 100px}.legal-back{display:inline-flex;align-items:center;gap:8px;color:var(--amber2);font-weight:700;font-size:14px;margin-bottom:34px}.legal-back:hover{color:var(--white)}.legal-page h2{font-size:clamp(30px,4vw,44px);letter-spacing:-1.5px;margin-bottom:30px;text-wrap:balance}.legal-page h3{font-size:19px;letter-spacing:-.3px;margin-top:36px;margin-bottom:12px}.legal-page p{color:var(--text);font-size:15px;max-width:720px;margin-bottom:6px}.legal-page a{color:var(--amber2);text-decoration:underline;text-decoration-color:rgba(255,179,71,.4)}.cinematic-footer{position:relative;overflow:hidden;background:var(--bg);border-top:1px solid var(--border);padding:90px 6% 40px;isolation:isolate}.footer-aurora{position:absolute;left:50%;top:45%;width:80vw;height:60vh;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(255,122,26,.16) 0,rgba(88,175,250,.10) 45%,transparent 70%);filter:blur(80px);pointer-events:none;z-index:0;animation:footer-breathe 8s ease-in-out infinite alternate}@keyframes footer-breathe{0%{transform:translate(-50%,-50%) scale(1);opacity:.6}100%{transform:translate(-50%,-50%) scale(1.1);opacity:1}}.footer-bg-grid{position:absolute;inset:0;z-index:0;pointer-events:none;background-size:60px 60px;background-image:linear-gradient(to right,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.03) 1px,transparent 1px);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 80%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 25%,#000 80%,transparent)}.footer-giant-text{position:absolute;left:50%;bottom:-4vh;transform:translateX(-50%);z-index:0;white-space:nowrap;pointer-events:none;user-select:none;font-size:18vw;line-height:.75;font-weight:900;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.05);background:linear-gradient(180deg,rgba(255,255,255,.10) 0,transparent 60%);-webkit-background-clip:text;background-clip:text}.footer-marquee-wrap{position:relative;z-index:2;overflow:hidden;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:rgba(10,6,17,.6);backdrop-filter:blur(10px);padding:14px 0;transform:rotate(-1.4deg) scale(1.04);box-shadow:var(--shadow);margin-bottom:70px}.footer-marquee-track{display:flex;width:max-content;animation:footer-marquee 32s linear infinite;font-size:12px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--muted);white-space:nowrap}@keyframes footer-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}.footer-marquee-item{display:flex;align-items:center;gap:48px;padding:0 24px}.footer-marquee-item .dot{color:var(--amber2)}.footer-main{position:relative;z-index:2;max-width:900px;margin:0 auto;text-align:center}.footer-heading{font-size:clamp(36px,7vw,76px);font-weight:900;letter-spacing:-2px;margin-bottom:44px;background:linear-gradient(180deg,#fff 0,rgba(255,255,255,.45) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 25px rgba(255,255,255,.12))}.footer-pills-primary{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:22px}.footer-pill{display:inline-flex;align-items:center;gap:11px;border-radius:100px;border:1px solid var(--border);background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.015));box-shadow:0 10px 30px -10px rgba(0,0,0,.5),inset 0 1px 1px rgba(255,255,255,.08);backdrop-filter:blur(16px);transition:transform .12s ease-out,background .3s,border-color .3s,box-shadow .3s,color .3s;color:var(--white);will-change:transform}.footer-pill:hover{background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.02));border-color:rgba(255,255,255,.22);box-shadow:0 18px 40px -10px rgba(0,0,0,.6),inset 0 1px 1px rgba(255,255,255,.15)}.footer-pill.is-tapped{animation:footerPillTap .42s cubic-bezier(.34,1.56,.64,1)}@keyframes footerPillTap{0%{transform:scale(1)}40%{transform:scale(.9)}70%{transform:scale(1.06)}100%{transform:scale(1)}}.footer-pill-primary{padding:17px 34px;font-weight:800;font-size:15px}.footer-pill-primary .emoji{font-size:17px}.footer-pills-secondary{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:60px}.footer-pill-secondary{padding:11px 22px;font-size:13px;font-weight:600;color:var(--muted)}.footer-pill-secondary:hover{color:var(--white)}.footer-bottom-bar{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding-top:26px;border-top:1px solid var(--border)}.footer-copyright{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;order:2}.footer-credit{order:1;padding:12px 22px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px;cursor:default}.footer-credit .heart{color:#ff5470;animation:footer-heartbeat 2s cubic-bezier(.25,1,.5,1) infinite;font-size:15px}@keyframes footer-heartbeat{0%,100%{transform:scale(1);filter:drop-shadow(0 0 5px rgba(255,84,112,.5))}15%,45%{transform:scale(1.2);filter:drop-shadow(0 0 10px rgba(255,84,112,.8))}30%{transform:scale(1)}}.footer-totop{order:3;width:46px;height:46px;padding:0;justify-content:center}.footer-totop svg{width:18px;height:18px;transition:transform .3s}.footer-totop:hover svg{transform:translateY(-3px)}@media(prefers-reduced-motion:reduce){.footer-aurora,.footer-marquee-track,.footer-credit .heart{animation:none}}@media(max-width:700px){.cinematic-footer{padding:70px 20px 30px}.footer-giant-text{font-size:22vw}.footer-bottom-bar{flex-direction:column;text-align:center}.footer-copyright,.footer-credit,.footer-totop{order:0}}@media(max-width:900px){.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-card{min-height:350px}.services-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.process-line{display:none}.process-grid-wrap{padding-top:0}.cta-box{flex-direction:column;align-items:flex-start;padding:40px 28px}}@media(max-width:600px){.container{width:min(var(--max),calc(100% - 28px))}section{padding:75px 0}h1{font-size:46px;letter-spacing:-2.5px}.hero{padding-top:120px}.hero-card{min-height:300px}.hero-illustration{max-width:280px}.services-grid,.process-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}
/* Multipage navigation */
.curved-panel-links a[aria-current="page"]{color:var(--amber2)}
.footer-pill[aria-current="page"]{color:var(--white);border-color:rgba(255,122,26,.45);background:rgba(255,122,26,.10)}
.page-main>section:first-child:not(.hero){padding-top:160px}
.service-link{position:relative;z-index:2;display:inline-flex;align-items:center;gap:8px;margin-top:20px;color:var(--amber2);font-size:13px;font-weight:800}
.service-link span{transition:transform .25s}.service-link:hover span{transform:translateX(5px)}
.service-page-hero{min-height:72vh;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 82% 25%,rgba(255,122,26,.17),transparent 28%)}
.service-page-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,#000,transparent)}
.service-page-hero-grid{position:relative;display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:center}
.service-page-hero h1,.contact-page-simple h1{font-size:clamp(42px,6vw,72px);line-height:1.02;letter-spacing:-3px;margin-bottom:24px}
.service-page-lead{max-width:720px;color:var(--text);font-size:18px;margin-bottom:34px}
.service-page-summary{padding:36px;border:1px solid rgba(255,122,26,.28);border-radius:26px;background:linear-gradient(145deg,rgba(26,16,38,.95),rgba(10,5,18,.94));box-shadow:var(--shadow)}
.service-page-summary span{display:block;color:var(--amber2);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:2px;margin-bottom:18px}
.service-page-summary strong{display:block;font-size:28px;line-height:1.1;margin-bottom:18px}.service-page-summary p{color:var(--text)}
.service-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.service-detail-card{min-height:175px;padding:26px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,var(--card),#0c0714);transition:.25s}
.service-detail-card:hover{transform:translateY(-4px);border-color:rgba(255,122,26,.42)}
.service-detail-card span{display:block;color:var(--amber2);font-size:12px;font-weight:900;margin-bottom:30px}.service-detail-card h3{font-size:18px;line-height:1.25}
.service-page-reasons{background:#08040e}.service-page-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.service-page-split>div:first-child>p{color:var(--text);max-width:520px}
.service-checks{display:grid;gap:14px}.service-check{display:flex;gap:15px;align-items:center;padding:20px;border:1px solid var(--border);border-radius:15px;background:rgba(255,255,255,.025)}.service-check span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,122,26,.14);color:var(--amber2);flex:0 0 auto}.service-check p{color:var(--text)}
.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid var(--border);border-radius:15px;background:var(--card);overflow:hidden}.faq-list summary{list-style:none;cursor:pointer;padding:20px 48px 20px 20px;font-weight:700;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:20px;color:var(--amber2);font-size:22px;top:14px}.faq-list details[open] summary::after{content:"−"}.faq-list details p{padding:0 20px 20px;color:var(--text)}
.related-services{background:#0a0611}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related-grid a{display:flex;min-height:180px;flex-direction:column;justify-content:space-between;padding:26px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,var(--card),#0c0714);transition:.25s}.related-grid a:hover{border-color:rgba(255,122,26,.45);transform:translateY(-4px)}.related-grid span{font-size:11px;color:var(--amber2);letter-spacing:2px}.related-grid strong{font-size:21px}.related-grid em{font-style:normal;color:var(--muted);font-size:13px}
.contact-page-simple{min-height:82vh}.contact-direct-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}.contact-card{--contact-accent:#ff9c4a;position:relative;display:flex;min-height:255px;flex-direction:column;overflow:hidden;padding:24px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:radial-gradient(circle at 75% 10%,color-mix(in srgb,var(--contact-accent) 16%,transparent),transparent 42%),linear-gradient(145deg,rgba(27,20,31,.98),rgba(9,7,12,.98));box-shadow:0 18px 45px rgba(0,0,0,.2);isolation:isolate;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.contact-card::before{content:"";position:absolute;inset:auto -45px -75px auto;width:155px;height:155px;border-radius:50%;background:var(--contact-accent);filter:blur(70px);opacity:.09;transition:opacity .35s ease}.contact-card:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--contact-accent) 55%,transparent);box-shadow:0 24px 60px rgba(0,0,0,.34)}.contact-card:hover::before{opacity:.18}.contact-card--whatsapp{--contact-accent:#43d784}.contact-card--mail{--contact-accent:#65a9ff}.contact-card-top{display:flex;align-items:center;justify-content:space-between}.contact-card-label{color:var(--contact-accent);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800}.contact-card-arrow{display:grid;width:30px;height:30px;place-items:center;border:1px solid color-mix(in srgb,var(--contact-accent) 35%,transparent);border-radius:50%;color:var(--contact-accent);font-size:16px;transition:transform .35s ease,background .35s ease}.contact-card:hover .contact-card-arrow{transform:rotate(45deg);background:color-mix(in srgb,var(--contact-accent) 13%,transparent)}.contact-card-icon{position:relative;display:grid;width:78px;height:78px;place-items:center;margin:27px 0 23px;border:1px solid color-mix(in srgb,var(--contact-accent) 32%,transparent);border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--contact-accent) 15%,transparent),rgba(255,255,255,.025));box-shadow:inset 0 1px rgba(255,255,255,.08),0 12px 30px color-mix(in srgb,var(--contact-accent) 10%,transparent);transition:transform .35s ease}.contact-card-icon::before{content:"";position:absolute;inset:-1px;border-radius:24px;background:conic-gradient(from 180deg,transparent 0 55%,var(--contact-accent),transparent 78%);opacity:.45;z-index:-1;animation:contactHalo 5s linear infinite}.contact-card-icon svg{width:38px;height:38px;overflow:visible;fill:none;stroke:var(--contact-accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:2}.contact-card--phone .contact-card-icon svg{fill:var(--contact-accent);stroke:none;animation:contactPhone 2.8s ease-in-out infinite}.contact-ring{position:absolute;inset:10px;border:1px solid var(--contact-accent);border-radius:22px;opacity:0;animation:contactRing 2.8s ease-out infinite}.contact-ring--two{animation-delay:.45s}.contact-card--whatsapp .contact-card-icon{animation:contactFloat 3s ease-in-out infinite}.chat-dot{fill:var(--contact-accent);stroke:none;transform-origin:center;animation:contactDot 1.5s ease-in-out infinite}.chat-dot--two{animation-delay:.16s}.chat-dot--three{animation-delay:.32s}.contact-card--mail .mail-flap{transform-origin:24px 15px;animation:contactMail 3s ease-in-out infinite}.contact-card--mail .mail-spark{opacity:0;animation:contactSpark 3s ease-in-out infinite}.contact-card-copy{display:flex;flex-direction:column;margin-top:auto}.contact-direct-grid strong{font-size:21px;margin:0 0 8px;line-height:1.2}.contact-direct-grid em{font-style:normal;color:var(--muted);font-size:13px}.contact-card:hover .contact-card-icon{transform:scale(1.04)}
@keyframes contactHalo{to{transform:rotate(360deg)}}@keyframes contactPhone{0%,72%,100%{transform:rotate(0)}76%{transform:rotate(-10deg)}80%{transform:rotate(9deg)}84%{transform:rotate(-7deg)}88%{transform:rotate(4deg)}}@keyframes contactRing{0%,68%{transform:scale(.72);opacity:0}72%{opacity:.45}94%{transform:scale(1.32);opacity:0}100%{opacity:0}}@keyframes contactFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes contactDot{0%,35%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(-4px);opacity:1}}@keyframes contactMail{0%,58%,100%{transform:translateY(0)}68%,82%{transform:translateY(-4px)}}@keyframes contactSpark{0%,58%,100%{opacity:0;transform:translate(-3px,3px) scale(.7)}68%,82%{opacity:1;transform:translate(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.contact-card-icon::before,.contact-card--phone .contact-card-icon svg,.contact-ring,.contact-card--whatsapp .contact-card-icon,.chat-dot,.contact-card--mail .mail-flap,.contact-card--mail .mail-spark{animation:none}}
.contact-page-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px;border:1px solid rgba(255,122,26,.28);border-radius:20px;background:rgba(255,122,26,.06)}.contact-page-cta h2{font-size:28px;margin:0}.contact-page-cta p{color:var(--text);max-width:480px}
.legal-page h1{font-size:clamp(30px,4vw,44px);line-height:1.05;letter-spacing:-1.5px;margin-bottom:30px}
#devis-page{position:relative;overflow:hidden}#devis-page::before{content:"";position:absolute;width:500px;height:500px;background:#009dff;filter:blur(180px);opacity:.08;right:-150px;top:100px;pointer-events:none}#devis-page input,#devis-page textarea,#devis-page select{background:#061321;border-color:#245274}#devis-page input:focus,#devis-page textarea:focus,#devis-page select:focus{border-color:#0af;box-shadow:0 0 15px rgba(0,170,255,.15)}
@media(max-width:900px){.service-page-hero-grid,.service-page-split{grid-template-columns:1fr}.service-detail-grid{grid-template-columns:repeat(2,1fr)}.related-grid,.contact-direct-grid{grid-template-columns:1fr}.contact-page-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.page-main>section:first-child:not(.hero){padding-top:125px}.service-page-hero h1,.contact-page-simple h1{font-size:42px;letter-spacing:-2px}.service-detail-grid{grid-template-columns:1fr}.service-page-hero-grid,.service-page-split{gap:36px}}

/* Barre de navigation visible — remplace le bouton hamburger */
.menu-toggle,.panel-backdrop,.curve-wrap,.curved-panel-label,.curved-panel-footer{display:none!important}
.curved-panel,.curved-panel.is-open{
  position:fixed;
  top:16px;
  left:50%;
  right:auto;
  z-index:1100;
  width:auto;
  height:auto;
  border:0;
  background:transparent;
  transform:translateX(-50%)!important;
  transition:none;
}
.curved-panel-inner{
  height:auto;
  padding:0;
  display:block;
}
.curved-panel-links{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:3px;
  padding:5px;
  border:1px solid rgba(255,122,26,.24);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(24,14,34,.94),rgba(8,5,14,.94));
  backdrop-filter:blur(18px);
  box-shadow:0 14px 38px rgba(0,0,0,.38),0 0 24px rgba(255,122,26,.08),inset 0 1px 0 rgba(255,255,255,.06);
  counter-reset:none;
  white-space:nowrap;
}
.curved-panel-links a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0;
  padding:9px 12px;
  border:0;
  border-radius:9px;
  overflow:hidden;
  color:#f6f2fa;
  font-size:13px;
  font-weight:700;
  line-height:1;
  letter-spacing:0;
  text-transform:uppercase;
  isolation:isolate;
  transition:color .3s ease;
}
.curved-panel-links a::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-top:2px solid var(--amber);
  border-bottom:2px solid var(--amber);
  opacity:0;
  transform:scaleY(1.8);
  transition:transform .3s ease,opacity .3s ease;
}
.curved-panel-links a::after{
  content:"";
  position:absolute;
  inset:2px 0 0;
  z-index:-2;
  background:linear-gradient(135deg,var(--amber),var(--amber-solid));
  opacity:0;
  transform:scale(0);
  transform-origin:top center;
  transition:transform .3s ease,opacity .3s ease;
}
.curved-panel-links a:hover,.curved-panel-links a:focus-visible{color:#190c00}
.curved-panel-links a:hover::before,.curved-panel-links a:focus-visible::before{opacity:1;transform:scaleY(1)}
.curved-panel-links a:hover::after,.curved-panel-links a:focus-visible::after{opacity:1;transform:scale(1)}
.curved-panel-links a[aria-current="page"]{color:#190c00;background:linear-gradient(135deg,var(--amber2),var(--amber))}
.curved-panel-links .letter{display:inline-block;transition:none}
.curved-panel-links a:hover .letter{transform:none}
body.panel-open{overflow:auto}

@media(max-width:1050px){
  .nav-cta-btn{display:none}
}
@media(max-width:700px){
  header.scrolled{padding-bottom:55px}
  .curved-panel,.curved-panel.is-open{
    top:70px;
    width:calc(100% - 16px);
    overflow-x:auto;
    scrollbar-width:none;
  }
  .curved-panel::-webkit-scrollbar{display:none}
  .curved-panel-inner{width:max-content;min-width:100%;}
  .curved-panel-links{width:max-content;min-width:100%;justify-content:center}
  .curved-panel-links a{padding:10px 9px;font-size:11px}
  .hero{padding-top:185px}
  .page-main>section:first-child:not(.hero){padding-top:190px}
  .review-fab{top:130px}
}
@media(max-width:430px){
  .curved-panel-links{justify-content:flex-start}
  .curved-panel-links a{padding:10px 8px;font-size:10px}
}
