:root{--bg:#ffffff;--bg-soft:#f5f7fa;--bg-muted:#edf0f5;--surface:#ffffff;--border:#e4e8ef;--border-strong:#d2d8e3;--text:#0f1319;--text-muted:#59616e;--text-faint:#8a919d;--accent:#3d5cff;--accent-hover:#2b47e0;--accent-soft:#eef1ff;--accent-rgb:61,92,255;--shadow-sm:0 1px 2px rgba(15,19,25,0.04),0 2px 10px rgba(15,19,25,0.04);--shadow-md:0 4px 14px rgba(15,19,25,0.05),0 14px 36px rgba(15,19,25,0.07);--shadow-lg:0 30px 70px rgba(15,19,25,0.12);--radius-sm:12px;--radius:18px;--radius-lg:28px;--font-serif:"Cormorant Garamond",Georgia,serif;--font-sans:"Inter","Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{overscroll-behavior-x:none}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:var(--font-sans);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}main{min-height:100vh}.siteMain{background:var(--bg)}.siteNavbar{position:fixed;inset:0 0 auto;z-index:120;padding:1rem 2rem;pointer-events:none}.siteNavbarInner{width:min(100%,78rem);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.85rem 1.4rem;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm);pointer-events:auto;transition:box-shadow .24s ease,background-color .24s ease}.siteNavbar.isScrolled .siteNavbarInner{background:rgba(255,255,255,.95);box-shadow:var(--shadow-md)}.navbarBrand{display:inline-flex;flex-direction:column;gap:.1rem}.navbarBrandTitle{color:var(--text);font-family:var(--font-serif);font-size:1.2rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.navbarBrandMeta{color:var(--text-faint);font-size:.58rem;letter-spacing:.22em;text-transform:uppercase}.navbarMenuButton{display:none;width:2.75rem;height:2.75rem;align-items:center;justify-content:center;gap:.28rem;flex-direction:column;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text)}.navbarMenuButton span{display:block;width:1rem;height:1.5px;border-radius:2px;background:currentColor}.navbarMobileMenu{display:none}.navbarLinks{display:flex;align-items:center;gap:clamp(.9rem,1.8vw,1.9rem);margin:0;padding:0;list-style:none}.navbarLink{position:relative;display:inline-flex;align-items:center;padding-bottom:.2rem;color:var(--text-muted);font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;transition:color .2s ease}.navbarLink:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transition:transform .22s ease}.navbarLink.isActive,.navbarLink:hover{color:var(--text)}.navbarLink.isActive{color:var(--accent)}.navbarLink.isActive:after,.navbarLink:hover:after{transform:scaleX(1)}.heroSection{position:relative}.heroSectionGeo{min-height:100vh;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:clamp(140px,18vh,200px) 10vw clamp(72px,10vh,120px);background:radial-gradient(90rem 50rem at 78% 18%,var(--accent-soft) 0,transparent 60%),linear-gradient(180deg,#ffffff 0,var(--bg-soft) 100%)}.hero3dCanvas{position:absolute;inset:0;z-index:0;pointer-events:none}.hero3dCanvas canvas{display:block;width:100%!important;height:100%!important}.heroGeoVignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(100deg,rgba(255,255,255,.92) 0,rgba(255,255,255,.7) 34%,rgba(255,255,255,0) 64%),linear-gradient(180deg,rgba(255,255,255,0) 55%,var(--bg-soft) 100%)}.heroGeoContent{position:relative;z-index:2;width:min(100%,46rem);display:grid;grid-gap:1.4rem;gap:1.4rem}.heroGeoEyebrow{color:var(--accent)}.heroGeoTitle{margin:0;color:var(--text);font-family:var(--font-serif);font-size:clamp(3rem,6.4vw,5.6rem);font-weight:500;line-height:1.02;letter-spacing:-.02em}.heroGeoLead{margin:0;max-width:34rem;color:var(--text-muted);font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75}.heroGeoActions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:.6rem}.heroGeoStats{display:flex;flex-wrap:wrap;gap:2.75rem;margin-top:2.25rem;padding-top:2rem;border-top:1px solid var(--border);max-width:42rem}.heroGeoStat{display:grid;grid-gap:.25rem;gap:.25rem}.heroGeoStatValue{color:var(--text);font-family:var(--font-serif);font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:500;line-height:1}.heroGeoStatLabel{color:var(--text-faint);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.heroGeoReveal{animation:heroFadeUp .8s ease-out both}.heroGeoRevealD1{animation-delay:.1s}.heroGeoRevealD2{animation-delay:.22s}.heroGeoRevealD3{animation-delay:.34s}.heroGeoRevealD4{animation-delay:.46s}.heroGeoRevealD5{animation-delay:.58s}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.heroGeoReveal{animation:none;opacity:1;transform:none}}.siteSection{display:flex;align-items:center;padding:clamp(72px,9vw,130px) 10vw;scroll-margin-top:92px;background:var(--bg)}.sectionContainer{width:min(100%,76rem);margin:0 auto}.sectionHeader{display:grid;grid-gap:1rem;gap:1rem}.sectionLabel{display:inline-flex;align-items:center;gap:.7rem;color:var(--accent);font-size:.68rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase}.sectionLabel:before{content:"";width:1.75rem;height:2px;border-radius:2px;background:currentColor}.sectionTitle{margin:0;color:var(--text);font-family:var(--font-serif);font-size:clamp(2.4rem,4.4vw,3.9rem);font-weight:500;line-height:1.06;letter-spacing:-.015em}.sectionLead{margin:0;color:var(--text-muted);font-size:1.02rem;line-height:1.75}.sectionLabelDark{color:var(--accent)}.sectionTitleDark{color:var(--text)}.sectionLeadDark{color:var(--text-muted)}.outlineButton,.primaryButton,.secondaryButton,.textButton{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.85rem 1.5rem;border-radius:999px;font-size:.92rem;font-weight:500;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.primaryButton{border:1px solid var(--accent);background:var(--accent);color:#ffffff;box-shadow:0 10px 24px rgba(var(--accent-rgb),.24)}.primaryButton:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.secondaryButton{border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}.secondaryButton:hover{border-color:var(--accent);color:var(--accent)}.outlineButton{border:1px solid var(--border-strong);background:transparent;color:var(--text)}.outlineButton:hover{border-color:var(--accent);color:var(--accent)}.textButton{border:1px solid transparent;background:transparent;color:var(--text-muted);padding-inline:.6rem}.textButton:hover{color:var(--accent)}.outlineButton:hover,.primaryButton:hover,.secondaryButton:hover{transform:translateY(-2px)}.aboutSection{background:var(--bg)}.aboutLayout{width:100%;display:grid;grid-template-columns:minmax(180px,300px) 1px minmax(0,1fr);align-items:center;grid-gap:clamp(2rem,5vw,4.5rem);gap:clamp(2rem,5vw,4.5rem)}.aboutLogoColumn{display:flex;justify-content:center;align-items:center}.aboutLogo{width:clamp(200px,20vw,290px);height:auto}.aboutDivider{width:1px;align-self:stretch;background:linear-gradient(to bottom,transparent,var(--border-strong),transparent)}.aboutContent{width:100%;max-width:40rem;display:grid;justify-items:start}.aboutTitle{margin-top:1.4rem;margin-bottom:2rem}.aboutText{display:grid;grid-gap:1.15rem;gap:1.15rem}.aboutText p{margin:0;color:var(--text-muted);font-size:1.02rem;line-height:1.85}.teaserStatsRow{display:flex;flex-wrap:wrap;gap:2.25rem;margin-top:2rem}.teaserStat{display:grid;grid-gap:.25rem;gap:.25rem}.teaserStatValue{color:var(--text);font-family:var(--font-serif);font-size:1.75rem;font-weight:500;line-height:1}.teaserStatLabel{color:var(--text-faint);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.aboutTeaserLink{margin-top:2rem}.statsSection{padding-block:0 clamp(48px,6vw,80px);background:var(--bg)}.statsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));grid-gap:1.5rem;gap:1.5rem;width:100%}.statCard{display:grid;grid-gap:.5rem;gap:.5rem;padding:2rem 1.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);text-align:left}.statValue{color:var(--accent);font-family:var(--font-serif);font-size:clamp(2.1rem,3.4vw,2.9rem);font-weight:500;line-height:1}.statLabel{color:var(--text-faint);font-size:.7rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.valuesSection{background:var(--bg-soft)}.valuesIntro{width:100%;margin-bottom:3rem;display:grid;grid-gap:1.2rem;gap:1.2rem;justify-items:center;text-align:center}.valuesGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1.5rem;gap:1.5rem;width:100%}.valueCard{padding:1.9rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .22s ease,box-shadow .22s ease}.valueCard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.valueTitle{margin:0 0 .7rem;color:var(--text);font-family:var(--font-serif);font-size:1.45rem;font-weight:500}.valueDescription{margin:0;color:var(--text-muted);font-size:.94rem;line-height:1.75}.processSection{background:var(--bg-soft);align-items:flex-start}.processContainer{width:100%}.processIntro{width:100%;max-width:44rem;margin:0 auto 4rem;display:grid;grid-gap:1.2rem;gap:1.2rem;justify-items:center;text-align:center}.processLabel{color:var(--accent)}.processLead{margin:0;color:var(--text-muted);font-size:1.02rem;line-height:1.75}.processTimeline{position:relative;width:100%;display:grid;grid-gap:clamp(2rem,3.5vw,3rem);gap:clamp(2rem,3.5vw,3rem);padding-left:clamp(1.75rem,4vw,3rem)}.processTimelineLine{position:absolute;left:1.35rem;top:.5rem;bottom:.5rem;width:2px;border-radius:2px;background:linear-gradient(to bottom,var(--accent),rgba(var(--accent-rgb),.08))}.processItem{position:relative;width:100%;display:grid;grid-template-columns:minmax(88px,118px) minmax(0,1fr);grid-gap:clamp(1.5rem,3vw,2.75rem);gap:clamp(1.5rem,3vw,2.75rem);align-items:start}.processMarker{position:absolute;left:calc(1.35rem - .34rem);top:.9rem;width:.7rem;height:.7rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--bg-soft),0 0 0 6px rgba(var(--accent-rgb),.2)}.processVisualWrap{display:flex;justify-content:center}.processVisual{width:clamp(88px,8vw,118px);height:clamp(88px,8vw,118px);overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;box-shadow:var(--shadow-sm)}.processVisual img{width:100%;height:100%;object-fit:cover}.processVisual span{color:var(--accent);font-family:var(--font-serif);font-size:1.5rem}.processContent{width:100%}.processStepNumber{margin-bottom:.7rem;color:var(--accent);font-size:.7rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase}.processStepTitle{margin:0 0 .85rem;color:var(--text);font-family:var(--font-serif);font-size:clamp(1.6rem,2.6vw,2.15rem);font-weight:500;line-height:1.14}.processStepText{margin:0;max-width:46rem;color:var(--text-muted);font-size:.98rem;line-height:1.85}.materialsSection{background:var(--bg);align-items:flex-start}.materialsContainer{width:100%}.materialsIntro{width:100%;max-width:44rem;margin:0 auto 4rem;display:grid;grid-gap:1.2rem;gap:1.2rem;justify-items:center;text-align:center}.materialsLabel{color:var(--accent)}.materialsGrid{display:grid;grid-template-columns:1fr;grid-gap:1.5rem;gap:1.5rem;width:100%}.materialCard{display:block;width:100%;padding:clamp(1.6rem,3vw,2.25rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.materialVisualAndContent{display:grid;grid-template-columns:minmax(96px,132px) minmax(0,1fr);grid-gap:clamp(1.25rem,3vw,2.25rem);gap:clamp(1.25rem,3vw,2.25rem);align-items:start}.materialVisualWrap{display:flex;justify-content:center}.materialVisual{width:clamp(96px,9vw,132px);height:clamp(96px,9vw,132px);overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-soft)}.materialVisual img{width:100%;height:100%;object-fit:cover}.materialTextColumn{display:grid;grid-gap:1rem;gap:1rem;min-width:0}.materialCode{color:var(--accent);font-size:.68rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase}.materialTitle{margin:0;color:var(--text);font-family:var(--font-serif);font-size:clamp(1.7rem,2.6vw,2.2rem);font-weight:500;line-height:1.12}.materialDivider{height:1px;background:var(--border)}.materialBenefit,.materialTech{margin:0}.materialTech{color:var(--text-muted);font-size:.98rem;line-height:1.85}.materialBenefitBox{padding:1.1rem 1.25rem;border-radius:var(--radius-sm);border-left:3px solid var(--accent);background:var(--accent-soft)}.materialBenefit{color:var(--text);font-size:.94rem;line-height:1.8}.materialsNote{margin-top:2.25rem;color:var(--text-faint);font-size:.85rem;line-height:1.7}.servicesSection,.servicesTeaserSection{background:var(--bg-soft);align-items:flex-start}.servicesContainer{width:100%}.servicesGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.5rem;gap:1.5rem;width:100%}.serviceCard{display:grid;grid-gap:.85rem;gap:.85rem;align-content:start;padding:2rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .22s ease,box-shadow .22s ease}.serviceCard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.serviceIcon{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent)}.serviceTitle{margin:0;color:var(--text);font-family:var(--font-serif);font-size:1.5rem;font-weight:500;line-height:1.18}.serviceSummary{margin:0;color:var(--text);font-size:.96rem;line-height:1.7}.serviceDetail{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.75}.servicesCta{margin-top:3.5rem;padding:clamp(2rem,4vw,3rem);display:grid;grid-gap:1.5rem;gap:1.5rem;justify-items:center;text-align:center;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.servicesCtaText{margin:0;max-width:38rem;color:var(--text-muted);font-size:1rem;line-height:1.75}.servicesTeaserGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1.25rem;gap:1.25rem;width:100%}.serviceTeaserCard{padding:1.6rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .22s ease,box-shadow .22s ease}.serviceTeaserCard:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.serviceTeaserTitle{margin:0 0 .55rem;color:var(--text);font-family:var(--font-serif);font-size:1.3rem;font-weight:500;line-height:1.2}.serviceTeaserSummary{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.7}.servicesTeaserFooter{display:flex;justify-content:center;margin-top:3rem}.projectsSection{background:var(--bg);align-items:flex-start}.projectsHeader{display:grid;grid-gap:1.2rem;gap:1.2rem;max-width:46rem;margin:0 auto 3.5rem;justify-items:center;text-align:center}.projectsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.75rem;gap:1.75rem}.projectCard{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.projectCard:hover{transform:translateY(-6px);border-color:var(--border-strong);box-shadow:var(--shadow-md)}.projectCardLink{display:block}.projectCardMediaButton{position:relative;display:block;width:100%;padding:0;border:0;background:var(--bg-muted);overflow:hidden}.projectCardMediaFrame{height:clamp(220px,26vw,280px);overflow:hidden}.projectCardImage{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.projectCard:hover .projectCardImage,.projectCardMediaButton:hover .projectCardImage{transform:scale(1.04)}.projectCardMediaOverlay{position:absolute;inset:auto 1rem 1rem auto;padding:.6rem 1rem;border-radius:999px;background:rgba(255,255,255,.92);color:var(--text);font-size:.68rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm)}.projectCardContent{display:grid;grid-gap:1rem;gap:1rem;padding:1.75rem}.projectEyebrow{color:var(--accent);font-size:.68rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.projectTitle{margin:.4rem 0 0;color:var(--text);font-family:var(--font-serif);font-size:1.75rem;font-weight:500;line-height:1.1}.projectCardCopy,.projectMetaLine{margin:0;color:var(--text-muted);font-size:.94rem;line-height:1.7}.projectDivider{height:1px;background:var(--border)}.contactButtonRow,.modalButtonRow,.projectActions,.projectBadges,.socialList{display:flex;flex-wrap:wrap;gap:.6rem}.projectBadge{display:inline-flex;align-items:center;justify-content:center;min-height:1.9rem;padding:.3rem .8rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.75rem;font-weight:500;letter-spacing:.06em}.projectActions{align-items:center;gap:.75rem}.projectTextButton{font-size:.85rem}.projectModalOverlay{position:fixed;inset:0;z-index:140;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:rgba(15,19,25,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.projectModalDialog{position:relative;width:min(100%,68rem);max-height:calc(100vh - 3rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-lg)}.projectModalMedia{position:relative;min-height:28rem;background:var(--bg-muted)}.projectModalPanel{display:grid;align-content:center;grid-gap:1.1rem;gap:1.1rem;padding:clamp(1.75rem,4vw,3rem);overflow-y:auto}.projectModalCopy{margin:0;color:var(--text-muted);font-size:1rem;line-height:1.75}.modalCloseButton{position:absolute;top:1rem;right:1rem;z-index:2;width:2.75rem;height:2.75rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.94);color:var(--text);font-size:1.25rem;line-height:1;box-shadow:var(--shadow-sm)}.contactSection{background:var(--bg-soft);align-items:flex-start}.contactGrid{width:100%;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:clamp(2rem,4vw,4rem);gap:clamp(2rem,4vw,4rem);align-items:start}.contactInfoStack{display:grid;grid-gap:1rem;gap:1rem}.contactInfoStack .sectionHeader{margin-bottom:.75rem}.contactCard{padding:1.35rem 1.5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.contactCardLabel{margin-bottom:.45rem;color:var(--accent);font-size:.66rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.contactCardValue{display:block;color:var(--text);font-size:1.02rem;font-weight:500;line-height:1.5;transition:color .2s ease}a.contactCardValue:hover{color:var(--accent)}.contactCardNote{margin-top:.4rem;color:var(--text-faint);font-size:.85rem;line-height:1.6}.contactMapLink{display:inline-flex;align-items:center;gap:.4rem;margin-top:.85rem;padding:.45rem .9rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.82rem;font-weight:600;transition:background-color .2s ease,color .2s ease,transform .2s ease}.contactMapLink span{font-size:.9rem;transition:transform .2s ease}.contactMapLink:hover{background:var(--accent);color:#ffffff;transform:translateY(-1px)}.contactMapLink:hover span{transform:translate(1px,-1px)}.contactActionPanel{display:grid;grid-gap:1.3rem;gap:1.3rem;padding:clamp(1.75rem,4vw,2.75rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md)}.contactActionPanel .sectionTitle{font-size:clamp(1.9rem,3vw,2.6rem)}.contactBody{margin:0;color:var(--text-muted);font-size:1rem;line-height:1.75}.socialLink{display:inline-flex;align-items:center;min-height:2.7rem;padding:.65rem 1.1rem;border:1px solid var(--border-strong);border-radius:999px;color:var(--text-muted);font-size:.85rem;transition:transform .2s ease,border-color .2s ease,color .2s ease}.socialLink:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent)}.ctaSection{background:var(--bg);padding-block:clamp(48px,7vw,96px)}.ctaContainer{display:grid;justify-items:center;text-align:center;grid-gap:1.25rem;gap:1.25rem;padding:clamp(2.5rem,6vw,4.5rem) clamp(1.5rem,5vw,4rem);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--accent) 0,#6244ff 100%);color:#ffffff;box-shadow:0 30px 70px rgba(var(--accent-rgb),.28)}.ctaContainer .sectionLabel{color:rgba(255,255,255,.8)}.ctaTitle{color:#ffffff}.ctaLead{max-width:36rem;color:rgba(255,255,255,.85)}.ctaButtonRow{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:.75rem}.ctaContainer .primaryButton{background:#ffffff;border-color:#ffffff;color:var(--accent);box-shadow:0 10px 24px rgba(15,19,25,.16)}.ctaContainer .primaryButton:hover{background:var(--bg-soft);border-color:var(--bg-soft)}.ctaContainer .secondaryButton{background:transparent;border-color:rgba(255,255,255,.6);color:#ffffff}.ctaContainer .secondaryButton:hover{background:rgba(255,255,255,.12);border-color:#ffffff;color:#ffffff}.siteFooter{background:var(--bg-muted);border-top:1px solid var(--border);padding:clamp(3rem,5vw,4rem) 10vw 2rem}.siteFooterTop{width:min(100%,76rem);margin:0 auto 2.5rem;display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(0,1fr) minmax(0,1fr);grid-gap:2.5rem;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--border-strong)}.footerBrandColumn{display:grid;grid-gap:.75rem;gap:.75rem;align-content:start}.footerBrandText{color:var(--text);font-family:var(--font-serif);font-size:1.25rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.footerBrandNote{margin:0;max-width:22rem;color:var(--text-muted);font-size:.9rem;line-height:1.7}.footerLinksColumn{display:grid;grid-gap:.6rem;gap:.6rem;align-content:start}.footerColumnTitle{margin-bottom:.35rem;color:var(--text-faint);font-size:.66rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.footerLink{color:var(--text-muted);font-size:.9rem;transition:color .2s ease}.footerLink:hover{color:var(--accent)}.footerLinkStatic{color:var(--text-faint)}.siteFooterInner{width:min(100%,76rem);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.footerText{margin:0;color:var(--text-faint);font-size:.82rem}.footerSocialRow{display:flex;gap:1.25rem}.footerSocialLink{transition:color .2s ease}.footerSocialLink:hover{color:var(--accent)}.notFoundSection{min-height:100vh;min-height:100svh;background:linear-gradient(180deg,#ffffff 0,var(--bg-soft) 100%)}.notFoundContainer{display:grid;justify-items:center;text-align:center;grid-gap:1.2rem;gap:1.2rem;max-width:34rem;margin:0 auto}.notFoundLead{color:var(--text-muted)}.notFoundButton{margin-top:.5rem}@media (max-width:900px){.heroGeoVignette{background:linear-gradient(180deg,rgba(255,255,255,.35) 0,rgba(255,255,255,.82) 45%,var(--bg-soft) 100%)}}@media (max-width:1180px){.navbarLinks{display:none}.navbarMenuButton{display:inline-flex}.navbarMobileMenu{display:grid;grid-gap:.55rem;gap:.55rem;width:min(100%,78rem);margin:.75rem auto 0;padding:0 .5rem;pointer-events:none;max-height:0;opacity:0;overflow:hidden;transition:max-height .26s ease,opacity .26s ease,padding .26s ease}.navbarMobileMenu.isOpen{max-height:32rem;opacity:1;pointer-events:auto;padding:.5rem}.navbarMobileLink{display:flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm);color:var(--text-muted);font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.navbarMobileLink.isActive{color:var(--accent);border-color:rgba(var(--accent-rgb),.4)}}@media (max-width:1120px){.projectsGrid,.servicesGrid,.servicesTeaserGrid,.valuesGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:960px){.siteNavbar{padding-inline:1rem}.aboutLayout,.contactGrid,.projectModalDialog{grid-template-columns:1fr}.aboutDivider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border-strong),transparent)}.aboutContent{max-width:none}.projectModalMedia{min-height:18rem}.siteFooterTop{grid-template-columns:1fr 1fr}.footerBrandColumn{grid-column:1/-1}}@media (max-width:720px){.siteSection{padding:72px 24px}.siteFooter{padding-inline:24px}.heroSectionGeo{padding:132px 24px 72px}.processItem,.projectsGrid,.servicesGrid,.servicesTeaserGrid,.valuesGrid{grid-template-columns:1fr}.processItem{padding-left:1.5rem}.processMarker{left:.5rem}.processTimelineLine{left:.85rem}.processVisualWrap{justify-content:flex-start}.materialVisualAndContent{grid-template-columns:1fr}.materialVisualWrap{justify-content:flex-start}.contactButtonRow,.modalButtonRow,.projectActions{flex-direction:column;align-items:stretch}.outlineButton,.primaryButton,.secondaryButton{width:100%}.siteFooterTop{grid-template-columns:1fr}.footerBrandColumn{grid-column:auto}.siteFooterInner{flex-direction:column;align-items:flex-start}}@media (max-width:560px){.siteNavbar{padding:.75rem}.siteNavbarInner{padding:.75rem 1rem}.navbarBrandTitle{font-size:1.05rem}.navbarBrandMeta{font-size:.52rem}.heroGeoStats{gap:1.75rem}}