@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url(../assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb54C-s0.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url(../assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb94C-s0.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url(../assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPbF4Cw.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg-main:#0d0f14;--bg-secondary:#131620;--bg-card:rgba(255, 255, 255, 0.02);--text-primary:#ffffff;--text-secondary:#b0b3bc;--accent:#d91b24;--accent-hover:#b31217;--accent-gradient:linear-gradient(135deg, #e52d27 0%, #a80f14 100%);--border-color:rgba(255, 255, 255, 0.08);--glow-blue:rgba(26, 68, 168, 0.12);--glow-red:rgba(220, 48, 70, 0.08);--glow-ambient:rgba(255, 255, 255, 0.03);--font-main:'Space Grotesk',sans-serif;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:8rem;--section-spacing-y:5rem;--transition-fast:0.2s ease;--transition-normal:0.4s cubic-bezier(0.25, 1, 0.5, 1);--header-h-scrolled:90px;--logo-h-scrolled:60px}body,html{max-width:100%;overflow-x:clip}body{font-family:var(--font-main);background-color:var(--bg-main);color:var(--text-primary);margin:0;padding:0;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overflow-wrap:break-word;background-image:radial-gradient(ellipse 80% 50% at 85% 15%,var(--glow-blue) 0,transparent 70%),radial-gradient(ellipse 65% 45% at 15% 45%,var(--glow-red) 0,transparent 65%),radial-gradient(ellipse 75% 55% at 80% 75%,var(--glow-blue) 0,transparent 70%),radial-gradient(ellipse 65% 50% at 20% 95%,var(--glow-red) 0,transparent 65%);background-attachment:fixed;background-repeat:no-repeat}#a-propos,section[id]{scroll-margin-top:85px}*,::after,::before{box-sizing:border-box}h1,h2,h3,h4,p{margin:0;padding:0}ul{list-style:none;margin:0;padding:0}a{text-decoration:none;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}img{max-width:100%;display:block}.container{width:100%;padding:0 5%;max-width:1400px;margin:0 auto}.accent{color:var(--text-primary)}.ruler-divider{width:100%;height:16px;margin-bottom:-16px;background:linear-gradient(90deg,transparent 10%,rgba(255,255,255,.08) 25%,rgba(255,255,255,.28) 50%,rgba(255,255,255,.08) 75%,transparent 90%) left top/100% 1px no-repeat;position:relative;z-index:2;overflow:visible}.ruler-divider::before{content:'';position:absolute;left:0;top:1px;width:100%;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 16' width='36' height='16'%3E%3Cpath d='M4.75,0 v6 a1.25,1.25 0 0,0 2.5,0 v-6 z' fill='%23ffffff' fill-opacity='0.25'/%3E%3Cpath d='M16.75,0 v13 a1.25,1.25 0 0,0 2.5,0 v-13 z' fill='%23ffffff' fill-opacity='0.45'/%3E%3Cpath d='M28.75,0 v6 a1.25,1.25 0 0,0 2.5,0 v-6 z' fill='%23ffffff' fill-opacity='0.25'/%3E%3C/svg%3E");background-size:36px 16px;background-repeat:repeat-x;background-position:center top;-webkit-mask-image:linear-gradient(90deg,transparent 10%,rgba(0,0,0,0.3) 25%,black 45%,black 55%,rgba(0,0,0,0.3) 75%,transparent 90%);mask-image:linear-gradient(90deg,transparent 10%,rgba(0,0,0,0.3) 25%,black 45%,black 55%,rgba(0,0,0,0.3) 75%,transparent 90%)}.project-number{display:flex;align-items:center;gap:.6rem;font-size:.7rem;font-weight:500;color:var(--text-secondary);letter-spacing:2px;font-variant-numeric:tabular-nums;margin-bottom:.5rem}.project-number::before{content:'';display:inline-block;width:2px;height:14px;background:repeating-linear-gradient(180deg,var(--accent) 0,var(--accent) 3px,transparent 3px,transparent 5px);opacity:.6}.section-title{display:flex;align-items:center;font-size:clamp(.75rem, 1.2vw, .85rem);margin-bottom:var(--spacing-lg);font-weight:500;text-transform:uppercase;letter-spacing:3px;color:var(--text-secondary)}.section-title .section-title-dot{width:.52em;height:.52em;margin-right:.4em;flex-shrink:0;display:inline-block}.btn{display:inline-block;padding:1rem 2.5rem;font-weight:500;border-radius:0;transition:var(--transition-normal);cursor:pointer;border:1px solid var(--text-primary);font-size:.85rem;font-family:var(--font-main);text-transform:uppercase;letter-spacing:2px;background:0 0;color:var(--text-primary)}.btn-primary{background-color:transparent;color:var(--text-primary);border:1px solid var(--text-primary)}.btn-primary:hover{background-color:var(--accent);color:var(--text-primary);border-color:var(--accent);transform:none;box-shadow:none}.btn-visit-site{display:inline-flex;align-items:center;gap:.65rem;padding:.75rem 1.6rem;border-radius:9999px;background:linear-gradient(135deg,#f07038 0,#c83e68 100%);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:.78rem;font-family:var(--font-main);font-weight:600;text-transform:uppercase;letter-spacing:1.8px;box-shadow:0 4px 20px rgba(240,112,56,.35),0 2px 8px rgba(200,62,104,.2);transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast);text-decoration:none;cursor:pointer}.btn-visit-site:hover{filter:brightness(1.08);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 28px rgba(240,112,56,.55),0 4px 15px rgba(200,62,104,.35);color:#fff}.btn-visit-site:active{transform:translateY(0) scale(.99)}.btn-visit-site svg{color:#fff;stroke:currentColor;transition:transform .25s cubic-bezier(.25, 1, .5, 1)}.btn-visit-site:hover svg{transform:translate(2px,-2px)}.header{position:fixed;top:0;left:0;width:100%;background:linear-gradient(180deg,rgba(25,30,42,.55) 0,rgba(13,15,20,.42) 100%);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);z-index:1000;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 15px 35px -10px rgba(0,0,0,.45),inset 0 1px 0 0 rgba(255,255,255,.12);transition:background var(--transition-normal),border-color var(--transition-normal),box-shadow var(--transition-normal)}.header.scrolled{background:linear-gradient(180deg,rgba(22,26,36,.72) 0,rgba(13,15,20,.62) 100%);border-bottom-color:rgba(255,255,255,.15);box-shadow:0 20px 45px -10px rgba(0,0,0,.6),inset 0 1px 0 0 rgba(255,255,255,.14)}.header-content{display:flex;justify-content:space-between;align-items:center;height:130px;transition:height var(--transition-normal)}.header.scrolled .header-content{height:90px}.logo{display:flex;align-items:center;height:100%}.logo img{height:88px;width:auto;transition:height var(--transition-normal),transform var(--transition-normal);transform-origin:center center}.header.scrolled .logo img{height:60px}.logo:hover img{transform:scale(1.04)}.nav-list{display:flex;gap:3.5rem}.nav-list a{display:inline-block;color:var(--text-secondary);font-weight:500;font-size:1.15rem;text-transform:uppercase;letter-spacing:2.5px;transition:color var(--transition-fast),transform var(--transition-fast);position:relative;padding:.5rem 0}.nav-list a::after{content:'';position:absolute;bottom:0;left:0;width:0%;height:2px;background:var(--text-primary);transition:width var(--transition-normal)}.nav-list a.accent,.nav-list a:hover{color:var(--text-primary)}.nav-list a.accent::after,.nav-list a:hover::after{width:100%;background:var(--accent)}.hero{min-height:100vh;display:flex;align-items:center;padding-top:130px;background:0 0;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:20%;right:5%;width:620px;height:620px;background:radial-gradient(circle,rgba(30,80,190,.22) 0,rgba(220,48,70,.1) 45%,transparent 70%);filter:blur(90px);pointer-events:none;z-index:0;border-radius:50%}.hero-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:clamp(2rem,4vw,5rem)}.hero-text{flex:1 1 56%;max-width:760px}.hero-content h1,.hero-title{margin-bottom:var(--spacing-md);line-height:1}.hero-title-img{width:100%;max-width:740px;height:auto;display:block;filter:drop-shadow(0 10px 25px rgba(0, 0, 0, .3))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-content p{font-size:clamp(1rem, 1.4vw, 1.15rem);color:var(--text-secondary);max-width:520px;margin-bottom:var(--spacing-lg);font-weight:300;line-height:1.8}.hero-image-wrap{flex:0 0 clamp(340px,32vw,470px);max-width:470px;width:100%;position:relative;cursor:pointer;scroll-margin-top:140px;transition:transform .5s cubic-bezier(.25, 1, .5, 1);will-change:transform}.hero-image-wrap::before{content:'';position:absolute;inset:-15px;background:radial-gradient(circle at center,rgba(217,27,36,.42) 0,rgba(217,27,36,.18) 50%,transparent 75%);filter:blur(35px);opacity:0;pointer-events:none;z-index:0;transition:opacity .5s cubic-bezier(.25, 1, .5, 1)}.hero-image-wrap:hover{transform:translateY(-6px)}.hero-image-wrap:hover::before{opacity:.7}.hero-image-frame{position:relative;z-index:1;width:100%;aspect-ratio:896/1093;border-radius:20px;overflow:hidden;background-color:var(--bg-secondary);box-shadow:0 25px 50px -12px rgba(0,0,0,.7),0 0 35px rgba(26,68,168,.15);transition:box-shadow .5s cubic-bezier(.25, 1, .5, 1);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.hero-image-frame::after{content:'';position:absolute;inset:0;border:1px solid var(--border-color);border-radius:inherit;pointer-events:none;z-index:5;transition:border-color .5s cubic-bezier(.25, 1, .5, 1)}.hero-image-wrap:hover .hero-image-frame{box-shadow:14px 18px 30px -4px rgba(0,0,0,.65),26px 34px 55px -8px rgba(0,0,0,.5),0 0 35px 2px rgba(217,27,36,.26)}.hero-image-wrap:hover .hero-image-frame::after{border-color:rgba(255,255,255,.18);border-right-color:rgba(255,255,255,.05);border-bottom-color:rgba(255,255,255,.05)}.hero-about-overlay{position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.08) 0,rgba(13,16,23,.72) 28%,rgba(8,10,15,.84) 100%);backdrop-filter:blur(20px) saturate(190%) contrast(110%);-webkit-backdrop-filter:blur(20px) saturate(190%) contrast(110%);box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.18),inset 0 0 25px rgba(0,0,0,.45);display:flex;flex-direction:column;justify-content:center;padding:clamp(1.35rem,4.5%,2.2rem);opacity:0;pointer-events:none;transition:opacity .5s cubic-bezier(.25, 1, .5, 1);z-index:2;border-radius:inherit;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.hero-about-overlay::-webkit-scrollbar{display:none}.hero-about-overlay.active-focus,.hero-image-wrap:hover .hero-about-overlay{opacity:1;pointer-events:auto}.hero-about-overlay .about-text-content{transform:translateY(-15px);opacity:0;transition:transform .8s cubic-bezier(.25, 1, .5, 1) .1s,opacity .6s .1s}.hero-about-overlay.active-focus .about-text-content,.hero-image-wrap:hover .hero-about-overlay .about-text-content{transform:translateY(0);opacity:1}.hero-about-overlay .section-title{color:var(--text-primary);margin-bottom:var(--spacing-sm);font-size:1.5rem;text-shadow:0 2px 12px rgba(0,0,0,.7)}.hero-about-overlay p{color:var(--text-secondary);line-height:1.68;font-size:clamp(.9rem, 1.05vw, .98rem);font-weight:300;margin-bottom:0;text-shadow:0 1px 8px rgba(0,0,0,.6)}.hero-about-overlay p+p{margin-top:.8rem}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;border-radius:inherit;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .8s cubic-bezier(.25, 1, .5, 1)}.hero-image-wrap:hover .hero-photo{transform:scale(1.03) translateZ(0)}.hero-sticky-track{display:contents}.marquee-divider{position:relative;width:100%;overflow:hidden;background-color:rgba(255,255,255,.01);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:1.2rem 0}.marquee-content{display:flex;width:max-content;animation:60s linear infinite scroll-marquee}.marquee-content span{font-size:.8rem;font-weight:400;letter-spacing:5px;text-transform:uppercase;color:var(--text-secondary);padding:0;white-space:nowrap;display:flex;align-items:center}.logo-dot{display:inline-block;flex-shrink:0;width:8px;height:8px;margin:0 20px 0 15px}@keyframes scroll-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}.projets{padding:var(--spacing-xl) 0 var(--section-spacing-y) 0;background-color:transparent;border-top:none;border-bottom:none}.projets .section-title{font-size:clamp(2rem, 4vw, 3.2rem);font-weight:600;letter-spacing:-1px;text-transform:none;color:var(--text-primary);margin-bottom:2.5rem}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.project-card{display:flex;flex-direction:column;background-color:transparent;border-radius:0;overflow:visible;transition:opacity var(--transition-normal);border:none;position:relative;cursor:pointer;box-shadow:none}.project-card:hover{transform:none;box-shadow:none;border-color:transparent;z-index:10}.image-wrapper{position:relative;overflow:hidden;border-radius:18px;aspect-ratio:16/10;background-color:var(--bg-secondary);box-shadow:0 10px 30px rgba(0,0,0,.25);transition:box-shadow .4s;transform:translateZ(0)}.image-wrapper::after{content:'';position:absolute;inset:0;border:1px solid var(--border-color);border-radius:inherit;pointer-events:none;z-index:5;transition:border-color var(--transition-normal)}.image-wrapper img{width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform .8s cubic-bezier(.25, 1, .5, 1)}.project-card:hover .image-wrapper{box-shadow:0 20px 45px rgba(0,0,0,.6),0 0 30px 2px rgba(255,255,255,.22),0 0 60px 4px rgba(255,255,255,.1)}.project-card:hover .image-wrapper::after{border-color:rgba(255,255,255,.25)}.project-card:hover .image-wrapper img{transform:scale(1.03)}.project-card[href*=charlene-somatopathie] .image-wrapper img{object-position:center center}.project-card[href*=charlene-somatopathie]:hover .image-wrapper,.project-card[href*=elodie]:hover .image-wrapper,.project-card[href*=human-mane]:hover .image-wrapper,.project-card[href*=laurea]:hover .image-wrapper,.project-card[href*=mila]:hover .image-wrapper,.project-card[href*=solstice]:hover .image-wrapper{box-shadow:0 20px 45px rgba(0,0,0,.62),0 0 32px 4px rgba(255,255,255,.36),0 0 68px 8px rgba(255,255,255,.18)}.project-card[href*=jo-bakehouse]:hover .image-wrapper{box-shadow:0 20px 45px rgba(0,0,0,.6),0 0 35px 3px rgba(255,255,255,.26),0 0 70px 5px rgba(255,255,255,.12)}.project-card[href*=solarite]:hover .image-wrapper{box-shadow:0 20px 45px rgba(0,0,0,.6),0 0 33px 2px rgba(255,255,255,.24),0 0 66px 4px rgba(255,255,255,.11)}.project-card[href*=human-mane] .image-wrapper img{object-position:center 45%}.project-card[href*=jo-bakehouse] .image-wrapper img,.project-card[href*=laurea] .image-wrapper img,.project-card[href*=mila] .image-wrapper img,.project-card[href*=ritual] .image-wrapper img,.project-card[href*=solarite] .image-wrapper img{object-position:center center}.project-info{padding:1.2rem 0 0;display:flex;justify-content:space-between;align-items:baseline;background-color:transparent;border-top:none}.project-info h3{font-size:.8rem;font-weight:500;color:var(--text-primary);letter-spacing:2px;text-transform:uppercase;transition:color var(--transition-fast)}.project-card:hover .project-info h3{color:var(--accent)}.tarifs{padding:var(--section-spacing-y) 0;background-color:transparent;border-top:none;border-bottom:none}.tarifs .section-title{font-size:clamp(1.8rem, 3vw, 2.6rem);font-weight:600;letter-spacing:-1px;text-transform:none;color:var(--text-primary);margin-bottom:clamp(1.4rem,2.5vh,2rem)}.pricing-carousel-wrapper{position:relative;width:100%}.pricing-dots{display:none}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:stretch}@media (max-width:1200px){.pricing-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width:768px){:root{--section-spacing-y:3.5rem}.pricing-carousel-wrapper{margin:0 -5vw;width:calc(100% + 10vw)}.avis-grid,.lab-grid,.pricing-grid,.retainer-grid,.standards-grid{display:flex;flex-direction:row;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;gap:1.25rem;padding:1.8rem 5vw 1.25rem;scrollbar-width:none;align-items:stretch}.avis-grid::-webkit-scrollbar,.lab-grid::-webkit-scrollbar,.pricing-grid::-webkit-scrollbar,.retainer-grid::-webkit-scrollbar,.standards-grid::-webkit-scrollbar{display:none}.avis-card,.lab-grid .pricing-card,.pricing-card,.retainer-card,.standards-grid .pricing-card{flex:0 0 calc(100vw - 10vw);width:calc(100vw - 10vw);max-width:480px;min-width:0;scroll-snap-align:center;scroll-snap-stop:always;height:auto}.pricing-card{padding:1.8rem 1.35rem}.pricing-desc{min-height:auto}.migration-rescue-banner,.pricing-card.migration-rescue-banner{width:100%;max-width:100%;flex:none;margin-top:1.75rem;padding:1.6rem 1.3rem;box-sizing:border-box}.migration-rescue-content{flex-direction:column;align-items:stretch;gap:1.4rem}.migration-rescue-cta{width:100%}.migration-rescue-cta .btn{width:100%;text-align:center}.pricing-dots{display:flex;justify-content:center;align-items:center;gap:.65rem;margin-top:.5rem;margin-bottom:0;padding:.2rem 0}.pricing-dot{width:8px;height:8px;border-radius:4px;background:rgba(255,255,255,.22);border:none;padding:0;cursor:pointer;transition:width .35s cubic-bezier(.25, 1, .5, 1),background-color .35s,box-shadow .35s;-webkit-tap-highlight-color:transparent}.pricing-dot.active{width:26px;background-color:var(--accent);box-shadow:0 0 12px rgba(217,27,36,.55)}}.pricing-card{background:linear-gradient(145deg,rgba(255,255,255,.07) 0,rgba(19,23,34,.62) 25%,rgba(10,12,18,.78) 100%);backdrop-filter:blur(18px) saturate(170%) contrast(108%);-webkit-backdrop-filter:blur(18px) saturate(170%) contrast(108%);border:1px solid rgba(255,255,255,.1);border-top:1px solid rgba(255,255,255,.24);border-left:1px solid rgba(255,255,255,.16);border-radius:18px;padding:clamp(1.6rem,2.2vh,2rem) clamp(1.2rem,1.4vw,1.6rem);display:flex;flex-direction:column;position:relative;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.15),inset 0 0 25px rgba(0,0,0,.35),0 12px 30px -10px rgba(0,0,0,.5);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal),background var(--transition-normal)}@media (hover:hover) and (pointer:fine){.pricing-card:hover{transform:translateY(-6px);background:linear-gradient(145deg,rgba(255,255,255,.1) 0,rgba(24,29,44,.72) 25%,rgba(13,16,24,.85) 100%);border-color:rgba(255,255,255,.22);border-top-color:rgba(255,255,255,.38);border-left-color:rgba(255,255,255,.28);box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.25),inset 0 0 30px rgba(0,0,0,.45),0 20px 45px -10px rgba(0,0,0,.65),0 0 25px 1px rgba(255,255,255,.07)}}.pricing-card.mobile-active{transform:translateY(-6px);background:linear-gradient(145deg,rgba(255,255,255,.1) 0,rgba(24,29,44,.72) 25%,rgba(13,16,24,.85) 100%);border-color:rgba(255,255,255,.22);border-top-color:rgba(255,255,255,.38);border-left-color:rgba(255,255,255,.28);box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.25),inset 0 0 30px rgba(0,0,0,.45),0 20px 45px -10px rgba(0,0,0,.65),0 0 25px 1px rgba(255,255,255,.07)}.pricing-card h3{font-size:1.05rem;font-weight:500;color:var(--text-primary);margin-bottom:.35rem;letter-spacing:1px;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.5)}.pricing-price{font-size:clamp(1.9rem, 2.2vw, 2.3rem);font-weight:700;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-1px;text-shadow:0 2px 10px rgba(0,0,0,.6)}.pricing-ruler-tick{width:100%;height:2px;background:repeating-linear-gradient(90deg,var(--border-color) 0,var(--border-color) 3px,transparent 3px,transparent 6px);margin-bottom:1rem;opacity:.6}.pricing-desc{font-size:.82rem;color:var(--text-secondary);margin-bottom:1.3rem;line-height:1.45;min-height:2.4rem}.pricing-features{margin-bottom:1.5rem;flex-grow:1}.pricing-features li{font-size:.82rem;color:var(--text-secondary);margin-bottom:.65rem;position:relative;padding-left:1.15rem;line-height:1.55}.pricing-features li::before{content:'';position:absolute;left:0;top:.52em;width:5px;height:5px;background-color:var(--accent);border-radius:1px}.pricing-features li strong{color:var(--text-primary);font-weight:600}.btn-pricing-accent,.btn-pricing-outline{display:inline-block;width:100%;text-align:center;padding:.8rem;border-radius:0;font-weight:500;text-transform:uppercase;letter-spacing:2px;font-size:.82rem;transition:var(--transition-normal);cursor:pointer;font-family:var(--font-main)}.btn-pricing-outline{background-color:rgba(255,255,255,.03);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.35);color:var(--text-primary)}.btn-pricing-outline:hover{background-color:var(--text-primary);border-color:var(--text-primary);color:var(--bg-main);box-shadow:0 6px 20px rgba(255,255,255,.15)}.btn-pricing-accent{background-color:var(--accent);border:1px solid var(--accent);color:#fff}.btn-pricing-accent:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 5px 15px rgba(217,27,36,.4)}.pricing-card-featured{background:linear-gradient(145deg,rgba(217,27,36,.14) 0,rgba(24,20,29,.68) 25%,rgba(12,10,16,.82) 100%);border-color:rgba(217,27,36,.45);border-top-color:rgba(255,100,110,.65);border-left-color:rgba(217,27,36,.55);box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.22),inset 0 0 30px rgba(217,27,36,.15),0 15px 35px -10px rgba(0,0,0,.6),0 0 35px rgba(217,27,36,.18)}@media (hover:hover) and (pointer:fine){.pricing-card-featured:hover{border-color:rgba(217,27,36,.7);border-top-color:rgba(255,120,130,.85);border-left-color:rgba(217,27,36,.75);background:linear-gradient(145deg,rgba(217,27,36,.18) 0,rgba(28,22,34,.75) 25%,rgba(15,12,20,.88) 100%);box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.32),inset 0 0 35px rgba(217,27,36,.22),0 22px 50px -10px rgba(0,0,0,.7),0 0 45px rgba(217,27,36,.28)}}.pricing-card-featured.mobile-active{border-color:rgba(217,27,36,.7);border-top-color:rgba(255,120,130,.85);border-left-color:rgba(217,27,36,.75);background:linear-gradient(145deg,rgba(217,27,36,.18) 0,rgba(28,22,34,.75) 25%,rgba(15,12,20,.88) 100%);box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.32),inset 0 0 35px rgba(217,27,36,.22),0 22px 50px -10px rgba(0,0,0,.7),0 0 45px rgba(217,27,36,.28)}.pricing-badge{position:absolute;top:-12px;right:20px;background-color:var(--accent);color:#fff;font-size:.75rem;font-weight:600;padding:.3rem 1rem;border-radius:12px;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 10px rgba(217,27,36,.3)}.migration-rescue-banner{margin-top:2rem;padding:2rem 2.2rem;width:100%}.migration-rescue-content{display:flex;justify-content:space-between;align-items:center;gap:2rem;width:100%}.migration-rescue-text{flex:1}.migration-rescue-text h3{font-size:clamp(1.05rem, 1.35vw, 1.25rem);font-weight:600;color:var(--text-primary);margin:.4rem 0 .75rem;letter-spacing:.5px;line-height:1.35}.migration-rescue-text .pricing-desc{margin-bottom:0;min-height:auto;font-size:.88rem;line-height:1.6;color:var(--text-secondary)}.migration-rescue-text .pricing-desc strong{color:var(--text-primary)}.migration-rescue-cta{flex-shrink:0}.migration-rescue-cta .btn{white-space:nowrap;padding:.85rem 1.6rem;font-size:.82rem}.u-migration-badge{margin-bottom:.6rem}.retainer-section{margin-top:var(--section-spacing-y);padding-top:var(--section-spacing-y);border-top:1px solid var(--border-color)}.retainer-header{max-width:720px;margin-bottom:2.2rem}.retainer-title{font-size:clamp(1.35rem, 2.2vw, 1.85rem);font-weight:600;color:var(--text-primary);margin:.6rem 0 .75rem;letter-spacing:-.5px}.retainer-subtitle{font-size:.95rem;color:var(--text-secondary);line-height:1.65;font-weight:300}@media (min-width:769px){.retainer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;align-items:stretch}}.retainer-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.2rem}.retainer-card-head .pricing-price{margin-bottom:.5rem;white-space:nowrap}.retainer-card-head .pricing-price span{font-size:.9rem;font-weight:400;color:var(--text-secondary);letter-spacing:0;margin-left:.15rem}.retainer-tag{font-size:.76rem;color:var(--text-secondary);margin-bottom:.6rem}@media (max-width:900px) and (min-width:769px){.retainer-grid{grid-template-columns:1fr}}@media (max-width:768px){.retainer-card-head{flex-direction:column;gap:.25rem}}.contact{position:relative;z-index:1;padding:var(--section-spacing-y) 0 var(--spacing-xl) 0;background-color:rgba(19,22,32,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:none}.contact .section-title{font-size:clamp(2rem, 4vw, 3.2rem);font-weight:600;letter-spacing:-1px;text-transform:none;color:var(--text-primary);margin-bottom:.8rem}.contact-subtitle{font-size:1rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg);font-weight:300}.contact-form{max-width:600px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:400;font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px}.form-group input,.form-group textarea{width:100%;padding:1.2rem;background-color:rgba(255,255,255,.02);border:1px solid var(--border-color);border-radius:0;color:var(--text-primary);font-family:var(--font-main);font-size:1rem;transition:border-color var(--transition-fast)}.form-group input::placeholder,.form-group textarea::placeholder{color:#7a7d8c}.form-group input:focus-visible,.form-group textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent);box-shadow:0 0 15px rgba(217,27,36,.15)}.form-group input.error,.form-group textarea.error{border-color:#e53e3e;box-shadow:0 0 10px rgba(229,62,62,.15)}.form-group .error-message{color:#e53e3e;font-size:.75rem;margin-top:.3rem;letter-spacing:.5px}.form-honey{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden;pointer-events:none}.form-status{margin-top:1.5rem;padding:1.2rem;font-size:.85rem;letter-spacing:1px;text-transform:uppercase;font-weight:400;border:1px solid var(--border-color);display:none}.form-status.success{display:block;color:#48bb78;border-color:rgba(72,187,120,.3);background-color:rgba(72,187,120,.05)}.form-status.error{display:block;color:#e53e3e;border-color:rgba(229,62,62,.3);background-color:rgba(229,62,62,.05)}.btn.loading{opacity:.6;pointer-events:none;cursor:wait}.footer{padding:1.35rem 0;background:linear-gradient(180deg,rgba(14,16,23,.5) 0,rgba(9,10,13,.92) 100%);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.06);position:relative;z-index:10}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.25rem}.footer p{color:var(--text-secondary);font-size:.75rem;letter-spacing:.5px;margin:0}.social-links{display:flex;gap:.6rem;align-items:center}.social-links a{color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;min-height:38px;border-radius:50%;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);transition:color var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast);position:relative}.social-links a::after{content:"";position:absolute;top:-5px;bottom:-5px;left:-5px;right:-5px}.social-links a:hover{color:var(--accent);border-color:rgba(217,27,36,.35);background-color:rgba(217,27,36,.08);transform:translateY(-2px)}.social-links svg{width:17px;height:17px;display:block}.footer-legal{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}.footer-legal a{color:var(--text-secondary);font-size:.72rem;letter-spacing:.8px;text-transform:uppercase;padding:.3rem .5rem;display:inline-block;border-radius:4px;transition:color var(--transition-fast),opacity var(--transition-fast);opacity:.85}.footer-legal a:hover{color:var(--text-primary);opacity:1}.legal-content p{font-size:1rem;color:var(--text-secondary);line-height:1.8;margin-bottom:1.5rem;font-weight:300}.legal-content strong{color:var(--text-primary);font-weight:500}.legal-content ul{list-style:disc;padding-left:1.5rem;margin-bottom:1.5rem}.legal-content ul li{font-size:1rem;color:var(--text-secondary);line-height:1.8;font-weight:300;margin-bottom:.5rem}.legal-content a{color:var(--accent);transition:color var(--transition-fast)}.legal-content a:hover{color:var(--text-primary)}.project-page-main{padding-top:160px;padding-bottom:var(--spacing-xl);min-height:100vh;background:0 0}.back-nav{margin-bottom:2.2rem;display:flex;align-items:center}.back-nav .all-projects-link{grid-area:auto;justify-self:auto;margin-top:0}.back-link{display:inline-flex;align-items:center;gap:.6rem;color:var(--text-secondary);font-size:.8rem;font-weight:400;text-transform:uppercase;letter-spacing:2px;transition:color var(--transition-fast),transform var(--transition-fast)}.back-link:hover{color:var(--text-primary);transform:translateX(-4px)}.project-hero-header{margin-bottom:3.5rem;max-width:900px}.project-category-tag{display:none;background:0 0;color:var(--accent);border:1px solid var(--accent);padding:.4rem 1rem;border-radius:0;font-size:.75rem;font-weight:400;text-transform:uppercase;letter-spacing:2px;margin-bottom:1.5rem}.project-hero-header h1{font-size:clamp(1.85rem, 6vw, 5rem);line-height:1.08;font-weight:700;margin-bottom:1.5rem;letter-spacing:-1.5px;color:var(--text-primary);overflow-wrap:break-word;hyphens:auto}.project-description{font-size:1.1rem;color:var(--text-secondary);line-height:1.8;margin-bottom:2rem;font-weight:300}.project-meta-pills{display:flex;flex-wrap:wrap;gap:1rem}.meta-pill{background-color:transparent;border:1px solid var(--border-color);padding:.6rem 1.2rem;border-radius:0;font-size:.8rem;color:var(--text-secondary);box-shadow:none}.meta-pill strong{color:var(--text-primary);margin-right:.4rem}.project-section{margin-top:4rem}.project-section-header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2.5rem;flex-wrap:wrap}.project-section-header .project-section-title{margin-bottom:0}.project-section-header .all-projects-link{grid-area:auto;justify-self:auto;margin-top:0}.section-label-sub{font-size:.75rem;text-transform:uppercase;letter-spacing:3px;color:var(--text-secondary);font-weight:400;margin-bottom:.5rem;display:block}.project-section-title{font-size:clamp(1.5rem, 3vw, 2rem);font-weight:400;margin-bottom:2.5rem;color:var(--text-primary);letter-spacing:-.5px;width:-moz-fit-content;width:fit-content;padding-bottom:.8rem;border-bottom:2px solid var(--accent)}.section-title-dot{width:.5em;height:.5em;display:inline-block;vertical-align:.08em;margin-right:.7rem;flex-shrink:0}.logos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;margin-bottom:3.5rem}.logos-grid:has(.logo-display-card:only-child){max-width:580px}.logo-display-card{border-radius:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border-color);background-color:transparent;box-shadow:none;transition:border-color var(--transition-normal)}.logo-display-card:hover{transform:none;box-shadow:none;border-color:rgba(255,255,255,.25)}.logo-canvas{height:280px;display:flex;align-items:center;justify-content:center;text-align:center;padding:2.5rem 3rem;position:relative;cursor:pointer;touch-action:manipulation}.logo-canvas picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;margin:0 auto}.logo-canvas img{max-height:165px;max-width:78%;width:auto;margin:0 auto;object-fit:contain;transition:transform .6s cubic-bezier(.25, 1, .5, 1);touch-action:manipulation}.logo-display-card:hover .logo-canvas img{transform:scale(1.05)}.logo-canvas.dark-variant{background-color:#0e1017}.logo-canvas.light-variant{background-color:#fff;border-bottom:1px solid var(--border-color)}.logo-canvas.full-bleed{padding:0;overflow:hidden}.logo-canvas.full-bleed img{max-height:100%;max-width:100%;width:100%;height:100%;object-fit:cover;object-position:center}.logo-info-footer{display:none}.logo-info-footer span{font-size:.8rem;font-weight:400;color:var(--text-secondary);letter-spacing:1px}.logo-badge-format{font-size:.7rem;color:var(--text-secondary);background-color:rgba(255,255,255,.05);padding:.2rem .6rem;border-radius:0;text-transform:uppercase;font-weight:400;letter-spacing:1px}.mockups-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.mockups-grid.two-cols{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));max-width:1000px;margin:0 auto}.mockups-grid.three-cols{grid-template-columns:repeat(3,1fr);gap:1.5rem}.mockup-item{background-color:transparent;border-radius:0;overflow:hidden;border:none;cursor:pointer;position:relative;box-shadow:none;transition:opacity var(--transition-normal);touch-action:manipulation}.mockup-item.featured{grid-column:1/-1}.mockup-item:hover{transform:none;box-shadow:none;border-color:transparent}.mockup-item .mockup-img-wrap{aspect-ratio:16/10;overflow:hidden;position:relative;background-color:var(--bg-secondary);box-shadow:0 10px 30px rgba(0,0,0,.25);transition:box-shadow var(--transition-normal);transform:translateZ(0);touch-action:manipulation}.mockup-item .mockup-img-wrap::after{content:'';position:absolute;inset:0;border:1px solid var(--border-color);pointer-events:none;z-index:5;transition:border-color var(--transition-normal)}.mockup-item:hover .mockup-img-wrap{box-shadow:0 20px 45px rgba(0,0,0,.4),0 0 35px rgba(26,68,168,.12)}.mockup-item:hover .mockup-img-wrap::after{border-color:rgba(255,255,255,.18)}.mockup-item.featured .mockup-img-wrap{aspect-ratio:16/10}.mockup-item.portrait .mockup-img-wrap{aspect-ratio:4/5}.mockup-item.tall-portrait .mockup-img-wrap{aspect-ratio:9/16}.mockup-item.square .mockup-img-wrap{aspect-ratio:1/1}.mockup-item.square-featured{grid-column:1/-1;max-width:750px;margin:0 auto;width:100%}.mockup-item.square-featured .mockup-img-wrap{aspect-ratio:1/1}.mockup-item img{width:100%;height:100%;object-fit:cover;object-position:center center;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .8s cubic-bezier(.25, 1, .5, 1);touch-action:manipulation}.mockup-item-overlay{position:absolute;inset:0;background:rgba(5,5,5,.4);backdrop-filter:blur(2px);display:none;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.zoom-btn{background-color:rgba(13,15,20,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:.75rem 1.4rem;border-radius:0;border:1px solid rgba(255,255,255,.3);font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:2px;display:inline-flex;align-items:center;gap:.65rem;box-shadow:0 4px 20px rgba(0,0,0,.35);transform:translateY(10px);transition:transform var(--transition-normal),border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.zoom-btn::after{content:'';display:inline-block;width:14px;height:14px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5.5V2h3.5M14 5.5V2h-3.5M2 10.5V14h3.5M14 10.5V14h-3.5M8 6.5v3M6.5 8h3'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5.5V2h3.5M14 5.5V2h-3.5M2 10.5V14h3.5M14 10.5V14h-3.5M8 6.5v3M6.5 8h3'/%3E%3C/svg%3E") no-repeat center/contain;transition:transform var(--transition-fast)}@media (hover:hover) and (pointer:fine) and (min-width:992px){.mockup-item-overlay{display:flex}.mockup-item:hover img{transform:scale(1.03) translateZ(0)}.mockup-item:hover .mockup-item-overlay{opacity:1}.mockup-item:hover .zoom-btn{transform:translateY(0)}.zoom-btn:hover{border-color:#fff;background-color:rgba(255,255,255,.15);color:#fff}.zoom-btn:hover::after{transform:scale(1.15)}}@media (hover:none),(pointer:coarse),(max-width:991px){.mockup-item-overlay,.zoom-btn{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}}.project-nav-pagination{margin-top:6rem;padding-top:3rem;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.project-nav-pagination.has-carousel,.project-nav-pagination:has(.projects-carousel-container){display:block;width:100%}.project-nav-link{display:flex;flex-direction:column;gap:.35rem;text-decoration:none;transition:transform var(--transition-fast),color var(--transition-fast)}.project-nav-link.next{align-items:flex-end;text-align:right}.project-nav-link.prev{align-items:flex-start;text-align:left}.nav-direction-label{font-size:.7rem;text-transform:uppercase;letter-spacing:1.8px;color:var(--text-secondary);font-weight:400}.nav-project-name{font-size:1.35rem;font-weight:700;color:var(--text-primary);transition:color var(--transition-fast);letter-spacing:-.3px}.project-nav-link:hover .nav-project-name{color:var(--accent)}.project-nav-link.prev:hover{transform:translateX(-4px)}.project-nav-link.next:hover{transform:translateX(4px)}.all-projects-link{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.6rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;font-size:.72rem;font-weight:400;color:var(--text-secondary);background:rgba(255,255,255,.03);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-transform:uppercase;letter-spacing:2px;text-decoration:none;transition:var(--transition-normal);white-space:nowrap}.all-projects-link::before{content:"⊞";margin-right:.5rem;font-size:.85rem;opacity:.7;transition:transform var(--transition-fast)}.all-projects-link:hover{color:var(--text-primary);border-color:rgba(217,27,36,.4);background:rgba(217,27,36,.08);transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.25)}.all-projects-link:hover::before{transform:rotate(90deg)}.projects-carousel-container{width:100%;display:flex;flex-direction:column;gap:1.5rem}.projects-carousel-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem}.projects-carousel-title-wrap{display:flex;flex-direction:column;gap:.3rem}.projects-carousel-label{font-size:.68rem;letter-spacing:2px;text-transform:uppercase;color:var(--text-secondary);font-weight:400}.projects-carousel-title{font-size:clamp(1.35rem, 2.4vw, 1.75rem);font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.6rem;margin:0;letter-spacing:-.4px}.projects-carousel-actions{display:flex;align-items:center;gap:1rem}.carousel-nav-arrows{display:flex;align-items:center;gap:.5rem}.carousel-nav-btn{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .25s cubic-bezier(.25, 1, .5, 1),border-color .25s cubic-bezier(.25, 1, .5, 1),transform .25s cubic-bezier(.25, 1, .5, 1),box-shadow .25s,opacity .25s;-webkit-tap-highlight-color:transparent}.carousel-nav-btn:hover:not(.disabled){background:rgba(217,27,36,.2);border-color:rgba(217,27,36,.55);color:#fff;transform:scale(1.08);box-shadow:0 0 16px rgba(217,27,36,.3)}.carousel-nav-btn.disabled{opacity:.32;cursor:default;pointer-events:none;border-color:rgba(255,255,255,.06);box-shadow:none;transform:none!important}.carousel-nav-btn:active:not(.disabled){transform:scale(.94)}.carousel-nav-btn svg{display:block;width:16px;height:16px;stroke:currentColor}.projects-carousel-track-wrapper{position:relative;width:100%;overflow:hidden}.projects-carousel-track{position:relative;display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden;scroll-snap-type:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior-x:contain;gap:1.25rem;padding:.6rem .2rem .8rem;scrollbar-width:none;outline:0;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cg filter='drop-shadow(0 1.5px 3px rgba(0,0,0,0.8))'%3E%3Cpath d='M11 14V6.5a1.5 1.5 0 0 1 3 0V12m0-6a1.5 1.5 0 0 1 3 0V12m0-5.5a1.5 1.5 0 0 1 3 0v6m0-4.5a1.5 1.5 0 0 1 3 0v7c0 4.97-4.03 9-9 9h-.5c-4.14 0-7.5-3.36-7.5-7.5v-3.2c0-1 .7-1.8 1.7-1.8 1.3 0 2.4.8 2.8 2v-4z' fill='%23ffffff' stroke='%230e1017' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 12 12,grab;user-select:none;-webkit-user-select:none}.projects-carousel-track.is-dragging,.projects-carousel-track.is-dragging *,.projects-carousel-track.is-dragging .projects-carousel-card{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cg filter='drop-shadow(0 1.5px 3px rgba(0,0,0,0.8))'%3E%3Cpath d='M10 14.5a1.5 1.5 0 0 1 3 0v1m0-1a1.5 1.5 0 0 1 3 0v1m0-1a1.5 1.5 0 0 1 3 0v1.5m0-1a1.5 1.5 0 0 1 3 0v3.5c0 4.5-3.5 8-8 8h-.5c-4 0-7-3-7-7v-3c0-.9.7-1.6 1.6-1.6 1.4 0 2.5.9 2.9 2.1V14.5z' fill='%23ffffff' stroke='%230e1017' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 12 12,grabbing!important}.projects-carousel-track::-webkit-scrollbar{display:none}.projects-carousel-card{flex:0 0 clamp(260px,32vw,340px);display:flex;flex-direction:column;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;touch-action:pan-x pan-y;-webkit-tap-highlight-color:transparent;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cg filter='drop-shadow(0 1.5px 3px rgba(0,0,0,0.8))'%3E%3Cpath d='M11 14V6.5a1.5 1.5 0 0 1 3 0V12m0-6a1.5 1.5 0 0 1 3 0V12m0-5.5a1.5 1.5 0 0 1 3 0v6m0-4.5a1.5 1.5 0 0 1 3 0v7c0 4.97-4.03 9-9 9h-.5c-4.14 0-7.5-3.36-7.5-7.5v-3.2c0-1 .7-1.8 1.7-1.8 1.3 0 2.4.8 2.8 2v-4z' fill='%23ffffff' stroke='%230e1017' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 12 12,grab;background:linear-gradient(145deg,rgba(255,255,255,.06) 0,rgba(19,23,34,.65) 30%,rgba(10,12,18,.9) 100%);border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;text-decoration:none;transition:transform .45s cubic-bezier(.2, .8, .2, 1),border-color .4s;will-change:transform}.projects-carousel-card img{pointer-events:none;user-select:none;-webkit-user-drag:none}.projects-carousel-card:hover{transform:translateY(-6px) scale(1.012);border-color:rgba(217,27,36,.45);box-shadow:none}.projects-carousel-thumb{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:#0d0f15}.projects-carousel-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2, .8, .2, 1)}.projects-carousel-card:hover .projects-carousel-thumb img{transform:scale(1.06)}.projects-carousel-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.4rem}.projects-carousel-name{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3;transition:color var(--transition-fast)}.projects-carousel-card:hover .projects-carousel-name{color:var(--accent)}.projects-carousel-link-text{font-size:.72rem;letter-spacing:.8px;color:var(--text-secondary);display:flex;align-items:center;gap:.35rem;transition:color .3s}.projects-carousel-link-text span{display:inline-block;transition:transform .3s cubic-bezier(.25, 1, .5, 1)}.projects-carousel-card:hover .projects-carousel-link-text{color:var(--text-primary)}.projects-carousel-card:hover .projects-carousel-link-text span{transform:translateX(4px)}.lightbox{position:fixed;inset:0;background-color:rgba(6,7,10,.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:3000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s;outline:0;user-select:none;-webkit-user-select:none;touch-action:none}.lightbox.active{opacity:1;pointer-events:auto}.lightbox-content{position:relative;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:visible;touch-action:none}.lightbox-media-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;max-width:100%;max-height:74vh;touch-action:none}.lightbox-img{max-width:100%;max-height:74vh;object-fit:contain;border-radius:0;box-shadow:none;transition:transform .22s cubic-bezier(.25, 1, .5, 1),opacity .22s;will-change:transform,opacity;touch-action:none;user-select:none;-webkit-user-select:none;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cg filter='drop-shadow(0px 1.5px 2.5px rgba(0,0,0,0.85))'%3E%3Ccircle cx='12' cy='12' r='7' stroke='%23ffffff' stroke-width='2.2' fill='rgba(15,18,25,0.45)'/%3E%3Cline x1='12' y1='9' x2='12' y2='15' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round'/%3E%3Cline x1='9' y1='12' x2='15' y2='12' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round'/%3E%3Cline x1='17.5' y1='17.5' x2='25' y2='25' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round'/%3E%3C/g%3E%3C/svg%3E") 12 12,zoom-in}.lightbox.is-zoomed .lightbox-caption,.lightbox.is-zoomed .lightbox-nav-btn{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s}.lightbox.is-zoomed .lightbox-img{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cg filter='drop-shadow(0 1.5px 3px rgba(0,0,0,0.8))'%3E%3Cpath d='M11 14V6.5a1.5 1.5 0 0 1 3 0V12m0-6a1.5 1.5 0 0 1 3 0V12m0-5.5a1.5 1.5 0 0 1 3 0v6m0-4.5a1.5 1.5 0 0 1 3 0v7c0 4.97-4.03 9-9 9h-.5c-4.14 0-7.5-3.36-7.5-7.5v-3.2c0-1 .7-1.8 1.7-1.8 1.3 0 2.4.8 2.8 2v-4z' fill='%23ffffff' stroke='%230e1017' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 12 12,grab;touch-action:none}.lightbox.is-panning,.lightbox.is-panning *,.lightbox.is-panning .lightbox-img{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cg filter='drop-shadow(0 1.5px 3px rgba(0,0,0,0.8))'%3E%3Cpath d='M10 14.5a1.5 1.5 0 0 1 3 0v1m0-1a1.5 1.5 0 0 1 3 0v1m0-1a1.5 1.5 0 0 1 3 0v1.5m0-1a1.5 1.5 0 0 1 3 0v3.5c0 4.5-3.5 8-8 8h-.5c-4 0-7-3-7-7v-3c0-.9.7-1.6 1.6-1.6 1.4 0 2.5.9 2.9 2.1V14.5z' fill='%23ffffff' stroke='%230e1017' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E") 12 12,grabbing!important;user-select:none;-webkit-user-select:none}.lightbox-img.slide-out-left{transform:translateX(-65px);opacity:0}.lightbox-img.slide-in-right,.lightbox-img.slide-out-right{transform:translateX(65px);opacity:0}.lightbox-img.slide-in-left{transform:translateX(-65px);opacity:0}.lightbox-img.lightbox-logo-mode{width:min(80vw,820px);height:min(62vh,520px);object-fit:contain;padding:3.5rem 4.5rem;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.7);transition:.25s}.lightbox-img.lightbox-light-bg{background-color:#fff}.lightbox-img.lightbox-dark-bg{background-color:#0e1017;border:1px solid rgba(255,255,255,.12)}@media (max-width:900px){.lightbox-img.lightbox-logo-mode{width:min(88vw,640px);height:min(56vh,440px);padding:2.5rem 3rem}}@media (max-width:600px){.lightbox-img.lightbox-logo-mode{width:92vw;height:min(50vh,320px);padding:1.5rem 1.75rem}}.lightbox-caption{margin-top:1.15rem;display:flex;flex-direction:column;align-items:center;gap:.45rem;max-width:min(90vw,650px);padding:0 1rem;text-align:center;transition:opacity .2s,transform .2s}.lightbox-caption.lightbox-changing{opacity:0;transform:translateY(4px)}.lightbox-caption-title{color:#e5e8f2;font-size:.82rem;font-weight:500;letter-spacing:.8px;text-transform:uppercase;line-height:1.35;text-wrap:balance}.lightbox-counter{display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:#9295a6;letter-spacing:1px;white-space:nowrap;padding:.2rem .65rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:999px;backdrop-filter:blur(8px)}.lightbox-close{position:absolute;top:1.5rem;right:1.8rem;background:rgba(14,16,23,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.75);width:38px;height:38px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.65;transition:opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);z-index:3010;padding:0}.lightbox-close:hover{opacity:1;background-color:rgba(217,27,36,.25);border-color:rgba(217,27,36,.5);color:#fff;transform:scale(1.08)}.lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(14,16,23,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.7);width:38px;height:38px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.65;transition:opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);z-index:3010;padding:0}.lightbox-nav-btn::before{content:'';position:absolute;top:-8px;bottom:-8px;left:-8px;right:-8px}.lightbox-nav-btn:hover{opacity:1;background:rgba(217,27,36,.25);border-color:rgba(217,27,36,.5);color:#fff;transform:translateY(-50%) scale(1.08)}.lightbox-nav-btn:active{transform:translateY(-50%) scale(.95);opacity:1}.lightbox-nav-btn svg{display:block;width:17px;height:17px;stroke:currentColor;transition:transform var(--transition-fast)}.lightbox-prev:hover svg{transform:translateX(-1px)}.lightbox-next:hover svg{transform:translateX(1px)}.lightbox-prev{left:12px}.lightbox-next{right:12px}@media (min-width:900px){.lightbox-prev{left:-52px}.lightbox-next{right:-52px}}.nav-toggle{display:none;background:0 0;border:none;cursor:pointer;padding:0;z-index:1010;position:relative;width:44px;height:44px;flex-shrink:0;-webkit-tap-highlight-color:transparent}.nav-toggle-bar{display:block;width:26px;height:2px;background-color:var(--text-primary);border-radius:2px;position:absolute;left:9px;transition:transform .35s cubic-bezier(.25, 1, .5, 1),opacity .25s,top .35s cubic-bezier(.25, 1, .5, 1)}.nav-toggle-bar:first-child{top:12px}.nav-toggle-bar:nth-child(2){top:21px}.nav-toggle-bar:nth-child(3){top:30px}.nav-toggle.active .nav-toggle-bar:first-child{top:21px;transform:rotate(45deg)}.nav-toggle.active .nav-toggle-bar:nth-child(2){opacity:0;transform:translateX(10px)}.nav-toggle.active .nav-toggle-bar:nth-child(3){top:21px;transform:rotate(-45deg)}.nav-mobile-overlay{display:none}@media (max-width:1024px){:root{--header-h-scrolled:75px;--logo-h-scrolled:52px}.header-content{height:105px}.header.scrolled .header-content{height:80px}.logo img{height:72px}.header.scrolled .logo img{height:52px}.nav-list{gap:2rem}.nav-list a{font-size:1rem;letter-spacing:2px}.hero{min-height:auto;padding-top:clamp(190px,20vh,230px);padding-bottom:clamp(4rem,7vh,6rem)}.hero-content{gap:2.5rem}.hero-image-wrap{flex:0 0 clamp(320px,36vw,380px);max-width:380px}.hero-about-overlay{padding:clamp(1.2rem,3.2vw,1.55rem) clamp(1.1rem,2.8vw,1.4rem)}.hero-about-overlay .section-title{font-size:1.25rem;margin-bottom:.5rem}.hero-about-overlay p{font-size:clamp(.8rem, 1.05vw, .86rem);line-height:1.55}.hero-about-overlay p+p{margin-top:.5rem}.projects-carousel-header{margin-bottom:.35rem}.carousel-nav-btn{width:44px;height:44px}.projects-carousel-track{gap:1.25rem;padding:.6rem .25rem .9rem;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.projects-carousel-card{flex:0 0 clamp(280px,37vw,340px);touch-action:pan-x pan-y}}@media (orientation:portrait) and (min-width:769px){.hero{min-height:auto;padding-top:clamp(190px,20vh,230px);padding-bottom:clamp(4rem,7vh,6rem)}}@media (max-width:900px) and (min-width:769px){.hero-content{gap:1.8rem}.hero-image-wrap{flex:0 0 clamp(310px,38vw,360px);max-width:360px}.hero-about-overlay{padding:1.15rem 1.05rem}.hero-about-overlay .section-title{font-size:1.15rem;margin-bottom:.35rem}.hero-about-overlay p{font-size:.77rem;line-height:1.48}.hero-about-overlay p+p{margin-top:.4rem}}@media (max-width:768px){:root{--header-h-scrolled:75px;--logo-h-scrolled:42px}.header{z-index:1020}body.menu-open .header{background:rgba(13,15,20,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom-color:rgba(255,255,255,.08);box-shadow:none}.header-content,.header.scrolled .header-content{flex-direction:row;justify-content:space-between;align-items:center;height:70px;padding-left:max(1.25rem,env(safe-area-inset-left));padding-right:max(1.25rem,env(safe-area-inset-right))}.logo{display:flex;align-items:center;height:100%}.header.scrolled .logo img,.logo img{height:42px;width:auto;transform:none}.nav-toggle{display:block}.nav{display:none}.nav-mobile-overlay{display:block;position:fixed;inset:0;background:linear-gradient(180deg,rgba(13,15,20,.97) 0,rgba(10,12,18,.99) 100%);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);z-index:1005;opacity:0;pointer-events:none;transition:opacity .4s cubic-bezier(.25, 1, .5, 1);overflow-y:auto;-webkit-overflow-scrolling:touch}.nav-mobile-overlay.open{opacity:1;pointer-events:auto}.nav-mobile-overlay .mobile-nav-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:100px 2rem max(3rem,calc(2rem + env(safe-area-inset-bottom)));gap:0}.nav-mobile-overlay .mobile-nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:0;width:100%}.nav-mobile-overlay .mobile-nav-list li{width:100%;text-align:center;border-bottom:1px solid rgba(255,255,255,.06);transform:translateY(20px);opacity:0;transition:transform .45s cubic-bezier(.25, 1, .5, 1),opacity .4s}.nav-mobile-overlay.open .mobile-nav-list li{transform:translateY(0);opacity:1}.nav-mobile-overlay.open .mobile-nav-list li:first-child{transition-delay:80ms}.nav-mobile-overlay.open .mobile-nav-list li:nth-child(2){transition-delay:0.14s}.nav-mobile-overlay.open .mobile-nav-list li:nth-child(3){transition-delay:0.20s}.nav-mobile-overlay.open .mobile-nav-list li:nth-child(4){transition-delay:0.26s}.nav-mobile-overlay.open .mobile-nav-list li:nth-child(5){transition-delay:0.32s}.nav-mobile-overlay .mobile-nav-list a{display:block;padding:1.3rem 1rem;font-size:1.3rem;font-weight:500;text-transform:uppercase;letter-spacing:4px;color:var(--text-secondary);transition:color .25s,background-color .25s}.nav-mobile-overlay .mobile-nav-list a.accent,.nav-mobile-overlay .mobile-nav-list a:hover{color:var(--text-primary);background-color:rgba(255,255,255,.03)}.nav-mobile-overlay .mobile-nav-list a.accent::after{content:'';display:block;width:24px;height:2px;background:var(--accent);margin:.5rem auto 0}.hero{padding-top:110px;padding-bottom:3.5rem;min-height:auto;text-align:center;overflow:visible}.hero-content{flex-direction:column;align-items:center;gap:2.5rem}.hero-text{max-width:100%;display:flex;flex-direction:column;align-items:center}.hero-title-img{max-width:88%;margin:0 auto}.hero-content p{margin-left:auto;margin-right:auto}.hero-sticky-track{display:block;width:100%;height:640px;position:relative;margin:0 auto;scroll-margin-top:75px}.hero-image-wrap{position:-webkit-sticky;position:sticky;top:max(75px,calc(50dvh - 195px));width:100%;max-width:320px;margin:0 auto;flex:none;z-index:10;display:flex;flex-direction:column;align-items:center;will-change:transform}@media (max-height:520px){.hero-sticky-track{height:auto;min-height:auto}.hero-image-wrap{position:relative;top:0}}.hero-image-wrap:hover,.hero-image-wrap:hover .hero-photo{transform:none}.hero-image-wrap:hover::before{opacity:0}.hero-about-overlay{opacity:1;pointer-events:auto;transition:none;will-change:transform;transform:translateY(100%);padding:1.2rem;justify-content:center;border-top:1px solid rgba(255,255,255,.22);overflow:hidden;touch-action:pan-y}.hero-about-overlay .about-text-content{opacity:1;transform:none;transition:none}.hero-about-overlay .section-title{font-size:1.2rem;margin-bottom:.5rem}.hero-about-overlay p{font-size:.82rem;line-height:1.5}.hero-about-overlay p+p{margin-top:.5rem}.project-page-main{padding-top:110px}.projets{padding:var(--section-spacing-y) 0}.portfolio-grid{grid-template-columns:repeat(2,1fr)!important;gap:1.2rem .85rem}.project-card .image-wrapper{border-radius:12px}.project-number{font-size:.65rem;gap:.4rem;margin-bottom:.35rem}.project-number::before{height:11px}.project-info{padding:.65rem 0 0}.project-info h3{font-size:.72rem;letter-spacing:1.2px;line-height:1.35}.section-title{justify-content:flex-start;text-align:left}.tarifs .section-title{justify-content:center;text-align:center}.about-text p,.contact-subtitle{text-align:left}.footer{padding:1.35rem 0 max(1rem,calc(.75rem + env(safe-area-inset-bottom)));border-top:1px solid rgba(255,255,255,.05)}.footer-content{flex-direction:column;text-align:center;gap:.75rem}.footer-content .social-links{order:1;margin-bottom:.1rem}.footer-legal{order:2;justify-content:center;gap:.45rem;flex-wrap:wrap}.footer-legal a{font-size:.68rem;letter-spacing:.6px;padding:.2rem .4rem;color:#9295a3;position:relative}.footer-legal a:not(:last-child)::after{content:"•";margin-left:.5rem;opacity:.35;color:var(--text-secondary);pointer-events:none}.footer-content p{order:3;font-size:.68rem;letter-spacing:.35px;color:#6e7180;margin-top:.1rem}.logos-grid{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2.5rem}.logo-canvas{height:240px;padding:2rem}.logo-canvas img{max-height:140px;max-width:82%}.mockups-grid,.mockups-grid.three-cols{grid-template-columns:1fr}.mockup-item.featured .mockup-img-wrap{aspect-ratio:16/10}.project-nav-pagination{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"prev next" "all all";gap:1.1rem .75rem;align-items:stretch;margin-top:3.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.07)}.project-nav-pagination.has-carousel,.project-nav-pagination:has(.projects-carousel-container){display:block;grid-template-columns:none;width:100%;margin-top:3.5rem;padding-top:2rem}.project-nav-link{padding:.95rem .85rem;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;justify-content:center;min-height:80px;min-width:0;transition:transform var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.project-nav-link.prev{grid-area:prev;align-items:flex-start;text-align:left}.project-nav-link.next{grid-area:next;align-items:flex-end;text-align:right}.project-nav-link .nav-direction-label{font-size:.62rem;letter-spacing:.8px;color:#8b8e9e;display:inline-block;white-space:nowrap}.project-nav-link .nav-project-name{font-size:1rem;font-weight:600;line-height:1.25;margin-top:.2rem;word-break:break-word}.project-nav-link:active{background:rgba(255,255,255,.06);border-color:rgba(217,27,36,.4);transform:scale(.98)}.all-projects-link{padding:.65rem 1.4rem;font-size:.68rem;letter-spacing:1.5px;border-radius:999px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);white-space:nowrap}.project-nav-pagination .all-projects-link{grid-area:all;justify-self:center;margin-top:.15rem}.project-section-header .all-projects-link{grid-area:auto;justify-self:auto;margin-top:0}.projects-carousel-header{flex-direction:row;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.85rem;width:100%}.projects-carousel-actions{width:auto;display:flex;align-items:center}.carousel-nav-arrows{display:none!important}.projects-carousel-track-wrapper{margin-left:-5vw;margin-right:-5vw;width:calc(100% + 10vw)}.projects-carousel-track{gap:.95rem;padding:.4rem 5vw 1rem;margin-left:0;margin-right:0;width:100%;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;scroll-behavior:auto;scroll-snap-type:x proximity}.projects-carousel-card{flex:0 0 78vw;max-width:300px;min-width:250px;scroll-snap-align:center;scroll-snap-stop:normal;touch-action:pan-x pan-y}.lightbox-nav-btn{width:32px;height:32px;opacity:.55;background:rgba(10,12,18,.4);border:1px solid rgba(255,255,255,.07)}.lightbox-nav-btn svg{width:15px;height:15px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{top:1rem;right:1rem;width:36px;height:36px;opacity:.65}.lightbox-close svg{width:16px;height:16px}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}.marquee-content{animation:none!important}}.skip-link{position:absolute;top:-50px;left:0;background:var(--accent);color:#fff;padding:10px 20px;z-index:10000;transition:top var(--transition-fast);font-weight:500;letter-spacing:1px;text-transform:uppercase;font-size:.8rem}.skip-link:focus-visible{top:0;outline:0}.section-badge{display:inline-block;background:var(--accent-gradient);color:#fff;font-size:.75rem;font-weight:700;font-family:inherit;line-height:1.4;padding:.4rem 1.2rem;border-radius:20px;letter-spacing:2px;text-transform:uppercase;box-shadow:0 4px 15px rgba(217,27,36,.45);margin:0 0 1.5rem}.standards{padding:var(--section-spacing-y) 0;background-color:transparent}.standards-grid .pricing-card h3{color:var(--accent);font-size:1.1rem;margin-bottom:.8rem;font-weight:600;text-shadow:none}.lab-section{margin-top:5rem;padding-top:4rem;border-top:1px solid rgba(255,255,255,.08)}.lab-header{margin-bottom:2.5rem}.lab-header h3{font-size:clamp(1.6rem, 2.5vw, 2.2rem);font-weight:600;margin-bottom:1rem}.lab-header p{color:var(--text-secondary);font-size:.95rem;max-width:700px}@media (min-width:769px){.standards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.standards-grid .pricing-card{max-width:100%;min-width:0;height:100%;padding:1.8rem;justify-content:flex-start}.lab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.lab-grid .pricing-card{max-width:100%;min-width:0;height:100%;justify-content:flex-start;padding:2rem}}.lab-grid .pricing-card h3{color:var(--text-primary);font-size:1.2rem;font-weight:500;margin-bottom:.5rem}.u-lab-badge{position:static;display:inline-block;margin-bottom:.8rem;width:-moz-fit-content;width:fit-content;max-width:100%;font-size:.7rem;padding:.25rem .75rem;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lab-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.8rem;min-height:32px}.lab-card-header .u-lab-badge{margin-bottom:0}.lab-card-logo{width:32px;height:32px;object-fit:contain;flex-shrink:0;transition:transform .3s cubic-bezier(.16, 1, .3, 1),filter .3s}.lab-card-logo .prisme-facet-accent{fill:#d91b24;transition:fill .3s}.lab-card-logo .prisme-facet-base{fill:#ffffff;opacity:.95;transition:fill .3s}.pricing-card:hover .lab-card-logo{transform:scale(1.08) rotate(3deg);filter:drop-shadow(0 4px 12px rgba(217, 27, 36, .45))}.u-lab-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:auto;padding-top:1.25rem}.u-lab-btn{flex:1 1 auto;text-align:center}.prisme-showcase-card{display:flex;flex-direction:column}.prisme-card-highlights{list-style:none;padding:0;margin:1.15rem 0 1.25rem;display:flex;flex-direction:column;gap:.5rem}.prisme-highlight-item{font-size:.82rem;color:var(--text-secondary);display:flex;align-items:center;gap:.55rem;line-height:1.4}.prisme-highlight-bullet{color:#d91b24;font-weight:700;font-size:.85rem;flex-shrink:0}@media (max-width:768px){.lab-grid .pricing-card .pricing-desc,.standards-grid .pricing-card .pricing-desc{margin-bottom:.85rem;line-height:1.5}.lab-grid .pricing-card{justify-content:flex-start}.lab-carousel-wrapper{margin-top:1rem}}.project-info h3{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.project-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;padding:.25rem .6rem;border-radius:4px;white-space:nowrap}.badge-client{background:rgba(255,255,255,.1);color:var(--text-primary);border:1px solid rgba(255,255,255,.2)}.badge-concept{background:rgba(255,255,255,.05);color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}picture{display:block;width:100%;height:100%}.project-case-study{max-width:800px;margin:0 auto 4rem;padding:2rem;background:var(--bg-card);border-radius:12px;border:1px solid var(--border-color)}.case-study-intro{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.case-study-intro h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.case-study-intro ul{list-style:none;padding:0;color:var(--text-secondary);line-height:1.8}.case-study-intro strong{color:var(--text-primary)}.case-study-content{color:var(--text-secondary);line-height:1.8}.case-study-content h3{color:var(--text-primary);font-size:1.25rem;margin:2rem 0 1rem}.case-study-content p{margin-bottom:1rem}.case-study-content ul{padding-left:1.5rem;margin-bottom:1.5rem}.case-study-content ul.disc{list-style-type:disc}.case-study-content ul.circle{list-style-type:circle;margin-top:.5rem}.case-study-content li.spaced{margin-bottom:.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width:600px){.form-row{grid-template-columns:1fr}}.form-group select{width:100%;padding:.8rem 1rem;background-color:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;font-family:inherit;font-size:1rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none;background-image:url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E');background-repeat:no-repeat;background-position:right 1rem top 50%;background-size:.65rem auto;cursor:pointer}.form-group select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(217,27,36,.15)}.form-group select option{background-color:#fff;color:#121212}html{scroll-behavior:smooth}@supports (animation-timeline:scroll()){.header{animation:linear both header-bg-scrolled;animation-timeline:scroll();animation-range:0 100px}.header-content{animation:linear both header-height-scrolled;animation-timeline:scroll();animation-range:0 100px}.logo img{animation:linear both logo-height-scrolled;animation-timeline:scroll();animation-range:0 100px}@keyframes header-bg-scrolled{to{background:linear-gradient(180deg,rgba(22,26,36,.72) 0,rgba(13,15,20,.62) 100%);border-bottom-color:rgba(255,255,255,.15);box-shadow:0 20px 45px -10px rgba(0,0,0,.6),inset 0 1px 0 0 rgba(255,255,255,.14)}}@keyframes header-height-scrolled{to{height:var(--header-h-scrolled)}}@keyframes logo-height-scrolled{to{height:var(--logo-h-scrolled)}}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.header,.hero-about-overlay{animation:none!important;transform:none!important;opacity:1!important}}.u-lock-scroll{overflow:hidden!important}.u-offer-highlight{box-shadow:0 0 0 3px rgba(217,27,36,.3)!important;transition:box-shadow .3s!important}.u-hidden{display:none!important}.u-csp-1{margin-bottom:.5rem}.u-csp-2{font-size:1.1rem;color:var(--text-primary);font-weight:500;margin-bottom:1rem}.u-csp-3{display:flex;gap:1rem;flex-wrap:wrap}.u-csp-4{border:1px solid var(--border-color);background:rgba(255,255,255,.05)}.btn.u-csp-4:hover{background-color:var(--text-primary);border-color:var(--text-primary);color:var(--bg-main);box-shadow:0 6px 20px rgba(255,255,255,.15)}.u-csp-5{color:var(--text-secondary);margin-bottom:2.5rem;font-size:.95rem}.u-csp-6{color:var(--text-primary);text-decoration:underline;text-underline-offset:4px}.u-csp-7{font-size:.8rem;color:var(--text-secondary);margin-top:1rem;text-align:center}.u-csp-8{color:var(--text-primary);text-decoration:underline;text-underline-offset:3px}.u-csp-9{min-height:70vh;display:flex;align-items:center;justify-content:center;text-align:center;padding-top:120px}.u-csp-10{max-width:600px;padding:3rem 1.5rem}.u-csp-11{font-size:7rem;font-weight:700;line-height:1;color:var(--accent);margin-bottom:1rem;font-family:var(--font-main);letter-spacing:-2px}.u-csp-12{font-size:2.2rem;margin-bottom:1rem;font-weight:600}.u-csp-13{color:var(--text-secondary);margin-bottom:2.5rem;font-size:1.1rem;line-height:1.6}.u-csp-14{display:inline-block}.u-csp-15{object-position:center 20%}.u-csp-16{object-position:70% 40%}.u-csp-17{object-position:center 30%}.u-csp-18{object-position:center 20%}.u-csp-19{object-position:40% 100%}@media (hover:none){.all-projects-link:hover,.btn-pricing-accent:hover,.btn-pricing-outline:hover,.btn-primary:hover,.btn-visit-site:hover,.btn:hover,.carousel-nav-btn:hover,.lightbox-close:hover,.lightbox-nav-btn:hover,.project-card:hover,.project-nav-link:hover,.zoom-btn:hover{transform:none!important;box-shadow:none!important}.btn-primary:hover{background-color:transparent!important;color:var(--text-primary)!important;border-color:var(--text-primary)!important}.btn-pricing-outline:hover{background-color:transparent!important;color:var(--text-primary)!important}.btn.u-csp-4:hover{background-color:rgba(255,255,255,.05)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important}.btn-pricing-accent:hover{background-color:var(--accent)!important;color:#fff!important}.carousel-nav-btn:hover:not(.disabled){background:0 0!important;border-color:rgba(255,255,255,.15)!important}.btn,.btn-visit-site,.carousel-nav-btn,.project-card,.project-nav-link,.zoom-btn{transition:transform .15s,opacity .15s,background-color .15s,border-color .15s!important}.btn-visit-site:active,.btn:active,.carousel-nav-btn:active,.project-card:active,.project-nav-link:active,.zoom-btn:active{transform:scale(.96)!important;opacity:.75}}.avis{padding:var(--section-spacing-y) 0}.avis-header{text-align:center;max-width:720px;margin:0 auto 3rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.avis-rating-summary{display:inline-flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.avis-stars{display:flex;gap:.35rem;color:#ffb400}.avis-stars svg{width:20px;height:20px;fill:currentColor}.avis-score{font-size:.88rem;color:#d1d4dc;letter-spacing:.02em}.avis-score strong{color:#fff;font-weight:700}.avis-section-subtitle{color:#9da1ad;font-size:1.05rem;line-height:1.65;margin:.5rem 0 0}@media (min-width:769px){.avis-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:3rem}}.avis-card{background:linear-gradient(180deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.015) 100%);border:1px solid rgba(255,255,255,.09);padding:2.75rem 2.5rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:transform .3s cubic-bezier(.25, 1, .5, 1),border-color .3s,box-shadow .3s}.avis-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.2);box-shadow:0 16px 36px -12px rgba(0,0,0,.5)}.avis-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.avis-card-top .avis-stars svg{width:17px;height:17px}.avis-badge-source{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#8f94a3;padding:.3rem .65rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:4px}.avis-quote{color:#e2e4ea;font-size:1rem;line-height:1.72;margin:0 0 2rem;position:relative;font-style:normal;flex-grow:1}.avis-author-wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08)}.avis-author-meta{display:flex;flex-direction:column;gap:.25rem}.avis-author-name{font-size:1.05rem;font-weight:600;color:#fff;letter-spacing:.01em}.avis-author-role{font-size:.85rem;color:#9297a5}.avis-case-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent,#d91b24);font-size:.82rem;font-weight:600;text-decoration:none;letter-spacing:.04em;text-transform:uppercase;transition:color .2s,transform .2s;white-space:nowrap}.avis-case-link:hover{color:#ff4752;transform:translateX(3px)}.avis-actions{display:flex;gap:1.25rem;flex-wrap:wrap;justify-content:center;width:100%}.btn-google{background:#fff;color:#000;border:1px solid #fff;padding:1.15rem 2.25rem;font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;transition:transform .2s,background .2s,color .2s;width:auto}.btn-google:hover{transform:translateY(-2px);background:0 0;color:#fff}.btn-google-outline{background:0 0;color:#fff;border:1px solid rgba(255,255,255,.2);padding:1.15rem 2.25rem;font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;transition:.2s;width:auto}.btn-google-outline:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.5);transform:translateY(-2px)}@media (max-width:900px) and (min-width:769px){.avis-grid{grid-template-columns:1fr;gap:1.5rem}}@media (max-width:768px){.avis{padding:var(--section-spacing-y) 0}.avis-grid{margin-bottom:0}.avis-card{padding:2rem 1.5rem}.avis-card.mobile-active{border-color:rgba(255,255,255,.22);box-shadow:0 16px 36px -12px rgba(0,0,0,.5)}.avis-carousel-wrapper .pricing-dots{margin-bottom:2rem}.avis-author-wrap{flex-direction:column;align-items:flex-start;gap:.85rem}.btn-google,.btn-google-outline,.u-csp-3 .btn,.u-csp-3 .btn-pricing-outline{width:100%;justify-content:center;text-align:center}}