:root{--bg:#101216;--ink:#f1f0ec;--muted:#a4a6ad;--line:#303239;--blue:#75a5ff;--action:#2764d8;--font:'DM Sans',Arial,sans-serif;color-scheme:dark;font-family:var(--font);background:var(--bg);color:var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:6px}button:disabled{cursor:default}::selection{background:var(--blue);color:var(--bg)}.skip-link{position:fixed;top:10px;left:10px;z-index:10;padding:12px;background:var(--ink);color:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{height:106px;margin:0 auto;padding:0 5%;max-width:1680px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-size:25px;letter-spacing:-1px;font-weight:700;line-height:1}.wordmark-second{font-weight:400}.brand-dot{color:var(--blue);margin:0 2px}.site-header nav{display:flex;gap:34px;margin-left:auto;margin-right:80px;font-size:14px}.site-header nav a{padding:12px 0;position:relative}.site-header nav a:after{content:'';position:absolute;bottom:4px;left:0;width:100%;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav a:hover:after{transform:scaleX(1)}.header-contact{font-size:14px;display:flex;align-items:center;gap:36px;padding:12px 0}.header-contact span{font-size:24px;color:var(--blue)}.hero{max-width:1680px;margin:auto;padding:76px 5% 0;display:grid;grid-template-columns:1.02fr 1fr;column-gap:24px;position:relative;overflow:hidden}.hero-heading{position:relative;z-index:2;pointer-events:none}.hero-heading a{pointer-events:auto}h1{margin:0;font-weight:500;letter-spacing:-3.3px;text-wrap:balance}.local-line{display:block;font-size:12px;line-height:1.8;letter-spacing:.02em;font-weight:400;color:#c3c5cb;margin-bottom:29px}.location{white-space:nowrap}.location>span{color:var(--blue);padding:0 5px}.headline-line{display:block;font-size:clamp(60px,6.65vw,106px);line-height:1.02;white-space:nowrap}.headline-accent{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(78px,8.65vw,138px);color:var(--blue);letter-spacing:-3.6px;margin-top:-3px;margin-left:-4px}.headline-period{color:var(--ink)}.headline-support{display:block;font-size:26px;letter-spacing:-.5px;margin-top:25px;line-height:1.35;font-weight:400}.intro{font-size:16px;line-height:1.75;color:var(--muted);max-width:415px;margin:20px 0 27px;text-wrap:pretty}.hero-actions{display:flex;align-items:center;gap:28px}.primary-action{display:flex;align-items:center;justify-content:space-between;gap:33px;background:var(--action);color:#fff;padding:17px 20px;font-size:15px;border-radius:3px;transition:background .2s}.primary-action:hover{background:#3472ea}.action-arrow{font-size:23px;line-height:1;transition:transform .25s}.primary-action:hover .action-arrow{transform:translate(3px,-3px)}.phone-action{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);padding:4px 0}.phone-action strong{font-size:15px;font-weight:500;color:var(--ink)}.phone-action:hover strong{color:var(--blue)}.work-stage{min-width:0;align-self:start;position:relative;padding-top:0;margin-top:4px}.stage-heading{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#bfc0c8;padding:0 0 0 37px;letter-spacing:.02em}.stage-icon{font-size:28px;color:var(--blue);font-weight:400}.portfolio-scene{position:relative;height:405px;margin:0 -30px 0 -35px;isolation:isolate}.scene-guide{position:absolute;width:88%;height:55%;border:1px solid #252831;transform:rotate(-13deg);left:11%;top:22%;z-index:-1}.project-image-link{display:block;position:absolute;inset:0;outline-offset:-12px!important}.fallback-stack{position:absolute;inset:0;transition:opacity .3s}.fallback-stack img{position:absolute;width:77%;height:auto;border-radius:3px;box-shadow:0 16px 40px #0005;transform:perspective(1100px) rotateY(-17deg) rotateX(8deg) rotateZ(-7deg);object-fit:cover}.front-project{left:7%;top:18%;z-index:3}.back-project-near{left:15%;top:12%;filter:brightness(.55);z-index:2}.back-project-far{left:23%;top:6%;filter:brightness(.3);z-index:1}#work-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .3s;pointer-events:none}.webgl-ready #work-canvas{opacity:1}.webgl-ready .fallback-stack{opacity:0}.visit-cursor{position:absolute;left:50%;top:50%;border-radius:50%;width:84px;height:84px;background:var(--blue);color:#101216;display:grid;place-items:center;font-size:12px;opacity:0;transform:translate(-50%,-50%) scale(.8);transition:opacity .2s,transform .2s;pointer-events:none}.project-image-link:hover .visit-cursor{opacity:1;transform:translate(-50%,-50%) scale(1)}.scene-note{position:absolute;bottom:6px;right:28px;font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-size:21px;color:#999ca5;pointer-events:none}.project-caption{border-top:1px solid var(--line);padding:21px 0 0 0;margin-left:37px;display:flex;align-items:center;justify-content:space-between;gap:15px}.project-info{min-width:0}.project-type{font-size:11px;color:var(--muted);display:block;margin-bottom:7px}.project-info>a{font-size:16px;display:block;text-wrap:balance}.project-info>a span{color:var(--blue);margin-left:6px}.project-controls{display:flex;gap:8px}.project-controls button{border:1px solid #474b55;border-radius:50%;background:transparent;width:40px;height:40px;font-size:20px;transition:background .2s,color .2s}.project-controls button:hover{background:var(--ink);color:var(--bg)}.project-tabs{display:flex;gap:0;margin:5px 0 0 37px}.project-tabs button{width:36px;height:33px;border:0;background:transparent;padding:14px 4px;display:block}.project-tabs button span{display:block;height:2px;background:#484c55;transition:background .3s}.project-tabs button[aria-pressed=true] span{background:var(--blue)}.hero-footer{grid-column:1/-1;border-top:1px solid var(--line);margin-top:63px;padding:27px 0 30px;display:flex;align-items:center;justify-content:space-between;gap:30px}.hero-footer p{margin:0;color:var(--muted);font-size:15px;text-wrap:pretty}.hero-footer p span{color:var(--ink)}.hero-footer ul{display:flex;gap:33px;list-style:none;padding:0;margin:0;font-size:12px;color:#c3c5cb}.hero-footer li{display:flex;gap:9px;align-items:center}.hero-footer li:before{content:'+';color:var(--blue);font-size:17px}.hero-footer button{display:flex;align-items:center;gap:8px;padding:10px 0;border:0;background:transparent;color:var(--muted);font-size:11px}.hero-footer button:hover{color:var(--ink)}
@media(min-width:1600px){.portfolio-scene{height:460px}.hero{padding-top:88px}.hero-footer{margin-top:80px}}
@media(max-width:1150px){.site-header nav{margin-right:45px;gap:24px}.hero{column-gap:12px;padding-top:55px}.local-line{font-size:11px;max-width:350px}.location{display:block}.location>span{display:none}.headline-line{font-size:6.5vw}.headline-accent{font-size:8.5vw}.portfolio-scene{height:370px;margin-left:-20px;margin-right:-20px}.stage-heading,.project-caption,.project-tabs{margin-left:15px;padding-left:0}.intro{max-width:375px;font-size:15px}.hero-actions{gap:20px}.hero-footer ul{gap:18px}.hero-footer{margin-top:55px}.project-caption{padding-top:18px}.project-info>a{font-size:14px}.stage-heading{margin-top:19px}.headline-support{font-size:23px}.scene-note{font-size:19px}.project-controls button{width:36px;height:36px}}
@media(max-width:850px){.site-header{height:88px}.wordmark{font-size:23px}.site-header nav{gap:21px;margin-right:35px;font-size:13px}.header-contact{gap:16px}.hero{grid-template-columns:1fr;padding-top:48px}.hero-heading{max-width:650px}.local-line{font-size:12px;max-width:none;margin-bottom:25px}.location{display:inline}.location>span{display:inline}.headline-line{font-size:78px;letter-spacing:-2.5px}.headline-accent{font-size:101px;letter-spacing:-2.8px}.headline-support{font-size:25px;margin-top:20px}.intro{font-size:16px;max-width:500px;margin-top:18px}.hero-actions{gap:30px}.work-stage{margin-top:48px;max-width:650px;width:100%;justify-self:center}.stage-heading{margin:0 0 0 15px}.portfolio-scene{height:430px;margin:0}.project-caption{margin-left:15px;margin-right:15px}.project-tabs{margin-left:12px}.project-info>a{font-size:17px}.hero-footer{margin-top:35px;flex-wrap:wrap;padding:24px 0;gap:20px}.hero-footer ul{order:3;flex-basis:100%;gap:24px}.scene-note{right:15px}.project-controls button{width:44px;height:44px}.project-tabs button{height:44px}}
@media(max-width:560px){.site-header{padding:0 6%;height:80px}.wordmark{font-size:22px}.site-header nav{display:none}.header-contact{font-size:13px;gap:13px}.hero{padding:35px 6% 0}.local-line{font-size:11px;line-height:1.8;margin-bottom:22px;max-width:310px}.location{display:block}.location>span{display:none}.headline-line{font-size:clamp(44px,11.1vw,62px);letter-spacing:-1.8px}.headline-accent{font-size:clamp(61px,14.5vw,81px);letter-spacing:-2px;margin-left:-2px}.headline-support{font-size:21px;margin-top:18px}.intro{font-size:14px;line-height:1.8;max-width:360px;margin:17px 0 25px}.hero-actions{gap:22px}.primary-action{font-size:14px;gap:24px;padding:16px}.phone-action{font-size:11px}.phone-action strong{font-size:13px}.work-stage{margin-top:41px}.stage-heading{font-size:11px;margin-left:0}.stage-icon{font-size:23px}.portfolio-scene{height:280px;margin:0 -21px}.fallback-stack img{width:79%}.scene-note{font-size:17px;right:22px;bottom:12px}.project-caption{padding-top:17px;margin:0;gap:10px}.project-type{font-size:10px;line-height:1.5;max-width:200px}.project-info>a{font-size:14px;max-width:225px;line-height:1.5}.project-controls{gap:6px}.project-controls button{width:40px;height:40px}.project-tabs{margin-left:-4px;margin-top:0}.hero-footer{margin-top:17px;gap:14px;padding:22px 0 25px}.hero-footer p{font-size:13px}.hero-footer ul{font-size:11px;gap:16px}.hero-footer li{gap:6px}.hero-footer button{font-size:10px}.hero-footer button svg{width:10px}.visit-cursor{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.project-controls button{min-width:44px;min-height:44px}.project-tabs button{width:44px;min-height:44px}.project-type,.stage-heading,.local-line,.hero-footer button,.phone-action,.hero-footer ul{font-size:max(12px,.75rem)}.hero-footer button{min-height:44px}.hero-footer button svg{width:13px}.phone-action{min-height:44px;justify-content:center}

/* The atmosphere spans the composition. Text and controls remain native HTML. */
:root{--bg:#050912;--ink:#f2f6ff;--muted:#a4b2c9;--line:#7ea7ef29;--blue:#7fb5ff}
body{isolation:isolate;background:var(--bg)}
.atmosphere{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#050912}
.ambient-light{position:absolute;inset:-10%;background:radial-gradient(ellipse at 79% 40%,#173f864a 0%,transparent 49%),radial-gradient(ellipse at 18% 95%,#1551ad3d 0%,transparent 47%)}
#atmosphere-canvas{width:100%;height:100%;position:absolute;inset:0}
.atmosphere-shade{position:absolute;inset:0;background:linear-gradient(90deg,#05091250,transparent 65%),linear-gradient(0deg,#05091255,transparent 22%)}
.site-header{position:relative;border-bottom-color:#8aaff62b}
.wordmark{font-family:'Space Grotesk',Arial,sans-serif;letter-spacing:-1.2px}
.hero{padding-top:76px}
h1{font-family:'Space Grotesk',Arial,sans-serif}
.headline-line,.headline-accent{font-family:'Space Grotesk',Arial,sans-serif;font-style:normal;font-weight:700;text-transform:uppercase;font-size:clamp(48px,5.7vw,94px);line-height:1.09;letter-spacing:-.055em;color:var(--ink);margin:0;position:relative}
.headline-accent{color:#8fbaff}
.headline-period{color:inherit}
.headline-support{font-family:var(--font);font-size:24px;letter-spacing:-.45px;font-weight:400;margin-top:30px;color:#dce8fb}
.local-line{font-family:var(--font);color:#bbcce6;letter-spacing:.025em;margin-bottom:35px}
.intro{line-height:1.8;margin-top:21px;margin-bottom:31px}
.scene-note{font-family:'Space Grotesk',Arial,sans-serif;font-style:normal;font-size:13px;letter-spacing:.035em;color:#aac1e6}
.scene-guide{border-color:#508bd826;box-shadow:0 0 80px #216def0d}
.work-stage{padding-top:5px}
.hero-footer{margin-top:67px;border-top-color:#8aaff62b}
.project-caption{border-top-color:#8aaff637}
.project-controls button{background:#0b193275;border-color:#6197e94f;box-shadow:inset 0 0 12px #4773d014;transition:background .2s,box-shadow .2s,border-color .2s}
.project-controls button:hover{background:#102b51;color:#d9ebff;border-color:#93c2ff;box-shadow:0 0 20px #387ef850,inset 0 0 14px #4786ee28}
.illuminated{--light-x:50%;--light-y:50%;position:relative;isolation:isolate;border:1px solid #88b6ff68;border-radius:7px;box-shadow:0 0 22px #2871f53d,inset 0 1px 0 #c5ddff29;transition:box-shadow .25s,background .25s,border-color .25s}
.illuminated::before{content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--border-angle),transparent 0deg,transparent 230deg,#558fff 275deg,#d6eeff 307deg,transparent 335deg);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;pointer-events:none;animation:border-orbit 5s linear infinite}
.illuminated::after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(130px circle at var(--light-x) var(--light-y),#a2cdff45,transparent 75%);opacity:0;transition:opacity .2s;pointer-events:none;z-index:-1}
.illuminated:hover,.illuminated:focus-visible{border-color:#aed1ff;box-shadow:0 0 16px #4b8eff66,0 0 45px #2871f547,inset 0 0 24px #5f9aff1f}
.illuminated:hover::after,.illuminated:focus-visible::after{opacity:1}
.primary-action{background:linear-gradient(130deg,#1e5ac4,#123570);padding:18px 23px;gap:38px}
.primary-action:hover{background:linear-gradient(130deg,#2665d2,#174384)}
.header-contact{padding:11px 19px;gap:29px;background:#0b1c3680;font-size:14px;box-shadow:0 0 18px #2871f51a}
.header-contact::before{animation-delay:-2.5s}
.header-contact span{color:#a2caff}
.hero-actions{gap:30px}
.phone-action strong{color:#d8e8ff}
.phone-action:hover strong{text-shadow:0 0 18px #669fff;color:#fff}
@property --border-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
@keyframes border-orbit{to{--border-angle:360deg}}
.motion-paused .illuminated::before{animation-play-state:paused}
.motion-paused .illuminated::after{transition:none}
@media(max-width:1150px){.hero{padding-top:58px}.headline-line,.headline-accent{font-size:5.7vw;letter-spacing:-.055em}.headline-support{font-size:23px}.primary-action{padding:17px 20px;gap:28px}.hero-actions{gap:22px}.site-header nav{margin-right:32px}}
@media(max-width:850px){.hero{padding-top:48px}.headline-line,.headline-accent{font-size:70px;letter-spacing:-.055em}.headline-support{font-size:24px;margin-top:24px}.local-line{margin-bottom:28px}.hero-footer{margin-top:35px}.scene-note{font-size:12px}.site-header nav{gap:20px;margin-right:25px}.header-contact{gap:17px}}
@media(max-width:560px){.hero{padding-top:39px}.headline-line,.headline-accent{font-size:clamp(36px,10.2vw,55px);line-height:1.12;letter-spacing:-.045em}.local-line{margin-bottom:26px}.headline-support{font-size:21px;margin-top:23px}.intro{margin-top:17px;margin-bottom:27px}.hero-actions{gap:22px}.primary-action{padding:16px;gap:23px}.header-contact{padding:10px 13px;font-size:12px;gap:14px}.wordmark{font-size:21px}.hero-footer{margin-top:20px}.scene-note{font-size:11px}.atmosphere-shade{background:linear-gradient(90deg,#05091255,transparent)}.ambient-light{background:radial-gradient(ellipse at 65% 25%,#16377277,transparent 70%)}.illuminated::before{animation:none}}
@media(prefers-reduced-motion:reduce){.illuminated::before{animation:none}.illuminated::after{transition:none}}

.services-section{max-width:1680px;margin:0 auto;padding:0 5% 72px;scroll-margin-top:24px;position:relative}
.section-entry{height:96px;display:flex;align-items:flex-start;padding-left:2px;overflow:hidden}
.section-entry>span{position:relative;display:block;width:1px;height:75px;background:linear-gradient(#80b8ff6b,transparent)}
.section-entry>span:after{content:'';position:absolute;left:-1px;top:0;width:3px;height:23px;background:linear-gradient(transparent,#a5d0ff,transparent);box-shadow:0 0 14px #649dff;animation:entry-pulse 3s ease-in-out infinite}
@keyframes entry-pulse{0%{transform:translateY(-20px);opacity:0}30%{opacity:1}100%{transform:translateY(75px);opacity:0}}
.services-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:clamp(32px,5vw,82px);align-items:center}
.section-eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:#9fc4ff;margin:0 0 22px}
.section-eyebrow>span{width:22px;height:1px;background:#92bdff;box-shadow:0 0 12px #76acff}
#services-title{font-family:'Space Grotesk',Arial,sans-serif;font-size:clamp(38px,4.05vw,64px);font-weight:600;letter-spacing:-.055em;line-height:1.12;margin:0 0 29px;text-wrap:balance}
.service-name{font:500 19px/1.5 'Space Grotesk',Arial,sans-serif;margin:0 0 13px;color:#cfdef5}
.services-lead{font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 29px;max-width:540px;text-wrap:pretty}
.build-benefits{padding:0;margin:0;list-style:none;border-top:1px solid #7da4e52b}
.build-benefits li{border-bottom:1px solid #7da4e52b}
.build-choice{width:100%;display:flex;align-items:center;gap:20px;padding:21px 3px;border:0;text-align:left;background:transparent;position:relative;transition:background .3s}
.build-choice:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#407dd919,transparent 85%);opacity:0;transition:opacity .3s}
.build-choice[aria-pressed=true]:before,.build-choice:hover:before{opacity:1}
.feature-marker{color:#7185a5;flex:0 0 26px;display:flex;transition:color .3s,filter .3s}
.feature-marker svg{width:26px;height:26px}
.feature-text{display:flex;flex-direction:column;gap:6px;position:relative;flex:1}
.feature-text strong{font:500 20px/1.3 'Space Grotesk',Arial,sans-serif;color:#c7d3e9;transition:color .25s}
.feature-text>span{font-size:13px;line-height:1.6;color:#94a6c1;max-width:330px;text-wrap:pretty}
.feature-arrow{font-size:22px;color:#778cab;padding-right:10px;transition:transform .3s,color .3s}
.build-choice[aria-pressed=true] .feature-marker{color:#9accff;filter:drop-shadow(0 0 8px #5392ff88)}
.build-choice[aria-pressed=true] .feature-text strong{color:#eef5ff}
.build-choice[aria-pressed=true] .feature-arrow{color:#a1caff;transform:rotate(45deg)}
.build-choice:hover .feature-text strong{color:#fff}
.build-explorer{min-width:0;padding-top:70px}
.explorer-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px;color:#b7c8e3;letter-spacing:.025em}
.explorer-instruction{font-size:11px;color:#899dbb;display:flex;align-items:center;gap:11px}
.explorer-instruction>span{font-size:23px;color:#8ebcff}
.build-diagram{height:460px;perspective:1200px;position:relative;isolation:isolate;overflow:clip}
.diagram-halo{position:absolute;inset:10% -10% -5%;background:radial-gradient(ellipse at center,#185acb32,transparent 65%);pointer-events:none}
.layer-assembly{--spread:1;position:absolute;width:76%;max-width:450px;aspect-ratio:960/691;left:50%;top:50%;transform:translate(-50%,-50%) rotateX(51deg) rotateZ(-27deg);transform-style:preserve-3d}
.build-layer{position:absolute;inset:0;border:1px solid #7db4ff77;backface-visibility:hidden;transition:filter .55s,box-shadow .55s,border-color .55s;transform-style:preserve-3d}
.design-layer{transform:translateZ(calc(112px * var(--spread)));background:#0b182b;box-shadow:0 18px 35px #0007;overflow:hidden}
.design-layer img{width:100%;height:100%;display:block;object-fit:cover}
.design-shine{position:absolute;inset:0;background:linear-gradient(130deg,#9fcfff24,transparent 45%);pointer-events:none}
.structure-layer{transform:translateZ(0px);background:#091b32e8;box-shadow:0 10px 35px #0005}
.structure-layer>div{position:absolute;border:1px solid #4c85c68c;background:#3277c913}
.structure-top{top:7%;left:6%;width:88%;height:9%}
.structure-heading{top:25%;left:6%;width:41%;height:20%}
.structure-copy{top:50%;left:6%;width:41%;height:13%;background:repeating-linear-gradient(0deg,transparent 0 7px,#4c85c661 7px 8px)!important;border:0!important}
.structure-image{top:25%;right:6%;width:37%;height:49%;background:linear-gradient(35deg,transparent 49.7%,#4c85c670 50%,transparent 50.3%),linear-gradient(-35deg,transparent 49.7%,#4c85c670 50%,transparent 50.3%)!important}
.structure-action{top:68%;left:6%;width:22%;height:8%;background:#4189e25e!important}
.structure-footer{bottom:8%;left:6%;width:88%;height:8%}
.source-layer{transform:translateZ(calc(-92px * var(--spread)));background:#081426f5;box-shadow:0 12px 50px #061123}
.source-grid{position:absolute;inset:0;background-image:linear-gradient(#437db523 1px,transparent 1px),linear-gradient(90deg,#437db523 1px,transparent 1px);background-size:25px 25px}
.source-bracket{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);font:500 60px/1 'Space Grotesk',Arial,sans-serif;letter-spacing:-5px;color:#79b8ff;text-shadow:0 0 22px #4294ff55}
.layer-stamp{position:absolute;left:6%;bottom:9%;font:500 11px/1.5 'Space Grotesk',Arial,sans-serif;letter-spacing:.06em;color:#84afe6}
.diagram-label{position:absolute;font:400 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.055em;color:#7891b6;display:flex;align-items:center;gap:8px;transition:color .4s}
.diagram-label:before{content:'';width:24px;height:1px;background:currentColor}
.design-label{right:1%;top:19%}.structure-label{right:0;top:51%}.source-label{left:3%;bottom:9%}
.build-explorer[data-active=design] .design-layer{border-color:#afdbff;box-shadow:0 0 28px #4088ef66,0 18px 35px #0007}
.build-explorer[data-active=design] .design-label,.build-explorer[data-active=performance] .structure-label,.build-explorer[data-active=ownership] .source-label{color:#cae5ff}
.build-explorer[data-active=performance] .design-layer,.build-explorer[data-active=ownership] .design-layer{filter:brightness(.5) saturate(.5)}
.build-explorer[data-active=performance] .structure-layer{border-color:#b4ddff;box-shadow:0 0 35px #3d94f899}
.build-explorer[data-active=ownership] .source-layer{border-color:#b4ddff;box-shadow:0 0 38px #3d94f899}
.build-explorer[data-active=ownership] .structure-layer{filter:brightness(.6)}
.explorer-detail{border-top:1px solid #7da4e53a;padding-top:23px;min-height:142px;max-width:500px;margin:0 auto}
.explorer-detail>span{font:500 18px/1.4 'Space Grotesk',Arial,sans-serif;color:#d5e6ff}
.explorer-detail p{font-size:14px;line-height:1.8;color:#98accb;max-width:440px;margin:10px 0 0;text-wrap:pretty}
.build-live-link{display:flex;gap:18px;align-items:center;max-width:500px;margin:14px auto 0;font-size:12px;color:#adc9f0;min-height:44px}
.build-live-link span{font-size:20px;color:#7faef1;transition:transform .2s}
.build-live-link:hover{color:#fff}.build-live-link:hover span{transform:translate(3px,-3px)}
.repair-note{margin-top:78px;border-top:1px solid #7da4e52b;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:36px;padding:27px 0 0}
.repair-label{font:500 16px/1.5 'Space Grotesk',Arial,sans-serif;color:#b5c6e1}
.repair-note p{max-width:650px;margin:0;font-size:12px;line-height:1.85;color:#879bb9;text-wrap:pretty}
.repair-note>a{display:flex;align-items:center;gap:17px;color:#a9c9f5;font-size:13px;min-height:44px}
.repair-note>a:hover{color:#fff}
.motion-paused .section-entry>span:after{animation-play-state:paused}
.motion-paused .build-layer,.motion-paused .build-choice *{transition:none}
@media(min-width:1600px){.build-diagram{height:520px}}
@media(max-width:1150px){.services-layout{gap:32px;grid-template-columns:1fr 1fr}.build-diagram{height:420px}.build-explorer{padding-top:90px}.explorer-instruction{font-size:10px}.diagram-label{font-size:9px}.diagram-label:before{width:13px}.feature-text strong{font-size:19px}.feature-text>span{font-size:12px}.build-choice{gap:15px}.services-lead{font-size:14px}.repair-note{gap:25px}.repair-label{max-width:135px}}
@media(max-width:850px){.services-layout{grid-template-columns:1fr;gap:35px}.services-content{max-width:660px}#services-title{font-size:55px}.services-lead{max-width:610px;font-size:16px}.build-benefits{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #7da4e52b}.build-benefits li{border-bottom:0}.build-choice{flex-wrap:wrap;align-items:flex-start;gap:14px;padding:24px 15px 24px 0;min-height:185px;height:100%}.feature-text{flex-basis:100%}.feature-text strong{font-size:19px}.feature-arrow{position:absolute;right:15px;top:20px}.feature-text>span{max-width:190px;font-size:13px}.build-explorer{padding-top:0;max-width:630px;width:100%;justify-self:center}.build-diagram{height:460px}.diagram-label{font-size:11px}.diagram-label:before{width:23px}.explorer-instruction{font-size:12px}.explorer-detail{max-width:none;min-height:125px}.explorer-detail p{max-width:540px}.build-live-link{max-width:none}.repair-note{margin-top:45px;grid-template-columns:1fr auto;gap:12px 24px}.repair-label{max-width:none;grid-column:1/-1}.section-entry{height:83px}.repair-note p{font-size:13px}}
@media(max-width:560px){.services-section{padding:0 6% 40px}.section-entry{height:68px}.section-entry>span{height:48px}.section-eyebrow{margin-bottom:19px;font-size:11px}#services-title{font-size:38px;margin-bottom:24px}.service-name{font-size:18px}.services-lead{font-size:14px;line-height:1.85;margin-bottom:24px}.build-benefits{display:block;border-bottom:0}.build-benefits li{border-bottom:1px solid #7da4e52b}.build-choice{flex-wrap:nowrap;align-items:center;min-height:0;padding:19px 0;gap:16px}.feature-text{flex-basis:auto}.feature-text strong{font-size:19px}.feature-text>span{font-size:12px;max-width:240px}.feature-arrow{position:static;padding:0}.feature-marker,.feature-marker svg{width:23px;flex-basis:23px}.services-layout{gap:36px}.explorer-heading{font-size:11px}.explorer-instruction{font-size:10px;gap:6px}.build-diagram{height:335px;margin:0 -10px}.layer-assembly{width:75%}.design-layer{transform:translateZ(calc(77px * var(--spread)))}.source-layer{transform:translateZ(calc(-68px * var(--spread)))}.source-bracket{font-size:43px}.layer-stamp{font-size:8px}.diagram-label{font-size:9px;gap:5px}.diagram-label:before{width:13px}.design-label{top:17%;right:1%}.structure-label{top:50%;right:0}.source-label{left:0;bottom:10%}.explorer-detail{padding-top:19px;min-height:160px}.explorer-detail>span{font-size:17px}.explorer-detail p{font-size:13px;line-height:1.8}.build-live-link{font-size:11px;gap:12px;margin-top:4px}.repair-note{grid-template-columns:1fr;gap:10px;padding-top:23px;margin-top:37px}.repair-note p{font-size:12px}.repair-note>a{justify-self:start}.repair-label{font-size:15px}}
@media(prefers-reduced-motion:reduce){.section-entry>span:after{animation:none}.build-layer,.build-choice *{transition:none}}

/* A vector brush accent stays sharp at every headline size. */
.headline-accent{width:fit-content;max-width:100%}
.headline-replay{display:block;font:inherit;letter-spacing:inherit;text-transform:inherit;line-height:inherit;color:inherit;background:none;border:0;padding:0;margin:0;pointer-events:auto;cursor:pointer;text-align:left}
.headline-replay:focus-visible{outline:1px solid #7fb5ff;outline-offset:8px;border-radius:2px}
.headline-brush{position:absolute;left:-1%;bottom:-.26em;width:99%;height:.46em;overflow:visible;pointer-events:none;filter:drop-shadow(0 0 4px #287dff66) drop-shadow(0 0 13px #2369e638)}
.brush-body{fill:#2864cb}
.brush-grain{fill:none;stroke:#071c49;stroke-width:1.15;stroke-linecap:round;opacity:.65}
.brush-edge{fill:none;stroke:#719ff3;stroke-width:.9;stroke-linecap:round;opacity:.58}
.headline-support{margin-top:43px}
@media(max-width:850px){.headline-support{margin-top:36px}}
@media(max-width:560px){.headline-support{margin-top:29px}.headline-brush{filter:drop-shadow(0 0 3px #287dff66) drop-shadow(0 0 8px #2369e638)}}

/* Match the HTML first paint to the 34 degree, 8.8 unit WebGL camera. */
.portfolio-scene{container-name:project-preview;container-type:size}
.fallback-stack{--project-scale:.95;--scene-unit:calc(100cqh * .185843898777508 * var(--project-scale));perspective:calc(100cqh * 1.63542630924207);perspective-origin:50% 50%;transform-style:preserve-3d}
.fallback-stack img{left:50%;top:50%;width:calc(100cqh * .975680468581917 * var(--project-scale));height:auto;box-sizing:content-box;border:calc(var(--scene-unit) * .03) solid #353941;border-radius:0;box-shadow:none;transform:translate(-50%,-50%) translate3d(calc(var(--px) * var(--scene-unit)),calc(var(--py) * var(--scene-unit) * -1),calc(var(--pz) * var(--scene-unit))) rotateX(calc(var(--rx) * -1rad)) rotateY(calc(var(--ry) * 1rad)) rotateZ(calc(var(--rz) * -1rad));transform-origin:50% 50%;backface-visibility:hidden}
.front-project{--px:-.20;--py:-.20;--pz:.3;--rx:.07;--ry:-.2;--rz:.075;z-index:3}
.back-project-near{--px:.30;--py:.23;--pz:-.8;--rx:.09;--ry:-.2;--rz:.11;filter:brightness(.8);z-index:2}
.back-project-far{--px:.80;--py:.70;--pz:-1.9;--rx:.1;--ry:-.2;--rz:.145;filter:brightness(.8);z-index:1}
@container project-preview (aspect-ratio < 6/5){.fallback-stack{--project-scale:.83}}

.why-section{position:relative;max-width:1680px;margin:10px auto 0;padding:75px 5% 85px;scroll-margin-top:0}
.why-section:before{content:'';position:absolute;top:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,#70a8fa5c,#70a8fa19 70%,transparent)}
.why-topline{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:27px}
.why-topline .section-eyebrow{margin:0}
.why-location{font-size:12px;color:#9db3d4;letter-spacing:.025em}
#why-title{font:500 clamp(42px,4.8vw,77px)/1.09 'Space Grotesk',Arial,sans-serif;letter-spacing:-.055em;color:#edf4ff;margin:0;max-width:1120px;text-wrap:balance}
.why-intro{color:#9fb2d1;font-size:17px;line-height:1.7;margin:24px 0 0;text-wrap:pretty}
.why-story{display:grid;grid-template-columns:.98fr 1fr;gap:clamp(50px,8vw,136px);align-items:center;margin-top:73px}
.experience-art{--experience-fill:0%;--career-progress:1;position:relative;min-width:0;max-width:560px;isolation:isolate;padding-right:15px}
.experience-art:before{content:'';position:absolute;inset:4% -10% 5% -20%;z-index:-1;background:radial-gradient(ellipse at center,#1b56bd24,transparent 64%);pointer-events:none}
.experience-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.02em;color:#91a9ce;padding-bottom:22px;border-bottom:1px solid #639aee30}
.experience-top>span:last-child{font-size:25px;color:#9bc6ff}
.experience-number{position:relative;margin:17px 0 1px;font:600 clamp(145px,16.7vw,265px)/1 'Space Grotesk',Arial,sans-serif;letter-spacing:-.095em;height:1.03em;white-space:nowrap}
.experience-number>span:not(.experience-scan){display:block}
.experience-number>span>span{font-size:.47em;letter-spacing:-.06em;display:inline-block;vertical-align:top;margin-top:.27em;margin-left:.055em}
.experience-outline{color:#0c1e39;-webkit-text-stroke:1px #72a7ed70}
.experience-fill{position:absolute;inset:0;color:#75aaff;background:linear-gradient(180deg,#d7eaff 0%,#8abbff 36%,#2c68ce 94%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;clip-path:inset(var(--experience-fill) -10% -10% -10%);filter:drop-shadow(0 0 18px #397dfb28)}
.experience-scan{position:absolute;height:1px;background:linear-gradient(90deg,transparent,#86baffc9,transparent);left:0;right:0;top:var(--experience-fill);box-shadow:0 0 12px #3d8aff;opacity:.6;pointer-events:none}
.experience-caption{font:400 22px/1.5 'Space Grotesk',Arial,sans-serif;color:#dceaff;letter-spacing:-.035em;margin:13px 0 31px}
.experience-caption>span{color:#8ea6ca;font-size:17px;letter-spacing:-.01em}
.experience-track{display:flex;justify-content:space-between;position:relative;padding-top:24px;font-size:11px;letter-spacing:.04em;color:#8299bd}
.track-base,.track-progress{position:absolute;left:0;right:0;top:0;height:1px;background:#42679870}
.track-progress{transform:scaleX(var(--career-progress));transform-origin:left;background:#82b5ff;box-shadow:0 0 10px #3d83ff70}
.track-dot{position:absolute;top:-3px;left:calc(var(--career-progress) * 100%);width:7px;height:7px;margin-left:-4px;background:#c3ddff;border-radius:50%;box-shadow:0 0 14px #418bff}
.track-label{position:relative}.track-label:before{content:'';position:absolute;left:0;top:-28px;width:1px;height:8px;background:#5f87c17a}.track-label:last-child:before{left:auto;right:0}
.kevin-story h3{font:500 29px/1.3 'Space Grotesk',Arial,sans-serif;letter-spacing:-.04em;margin:0 0 21px;color:#e2eeff}
.kevin-story>p{font-size:15px;line-height:1.9;color:#a1b3cf;margin:0 0 19px;max-width:560px;text-wrap:pretty}
.kevin-story>p:last-of-type{color:#c4d3e9}
.kevin-signoff{display:flex;align-items:center;gap:16px;border-top:1px solid #6a9ce638;padding-top:22px;margin-top:27px}
.kevin-monogram{font:600 29px/1 'Space Grotesk',Arial,sans-serif;letter-spacing:-2px;flex-shrink:0;color:#d5e7ff}.kevin-monogram>span{color:#6c9eea}
.kevin-signoff>span:nth-child(2){display:flex;flex-direction:column;gap:5px}
.kevin-signoff strong{font:500 14px/1.4 'Space Grotesk',Arial,sans-serif;color:#ccdcf6}
.kevin-signoff>span:nth-child(2)>span{font-size:11px;line-height:1.5;color:#829aba}
.kevin-call{display:flex;align-items:center;justify-content:center;flex:0 0 44px;height:44px;border:1px solid #699ae659;border-radius:50%;margin-left:auto;color:#a9cbff;transition:box-shadow .25s,border-color .25s}
.kevin-call:hover{border-color:#b7d7ff;box-shadow:0 0 22px #448cff50}
.ownership-promise{margin-top:74px;display:flex;align-items:center;justify-content:space-between;gap:35px;border-top:1px solid #7eaaea35;border-bottom:1px solid #7eaaea35;padding:32px 0}
.ownership-copy{display:flex;align-items:center;gap:23px}
.ownership-mark{font:400 37px/1 'Space Grotesk',Arial,sans-serif;color:#88b6ff;text-shadow:0 0 22px #317ef370}
.ownership-copy h3{font:500 21px/1.4 'Space Grotesk',Arial,sans-serif;letter-spacing:-.03em;color:#cfdef6;margin:0 0 7px}
.ownership-copy p{font-size:13px;line-height:1.7;color:#94a9ca;max-width:670px;margin:0;text-wrap:pretty}
.ownership-contact{font-size:13px;display:flex;align-items:center;gap:19px;min-height:44px;white-space:nowrap;color:#a4c9ff}
.ownership-contact>span{font-size:23px;transition:transform .2s}.ownership-contact:hover{color:#fff}.ownership-contact:hover>span{transform:translate(3px,-3px)}
@media(max-width:1150px){.why-story{gap:60px;margin-top:57px}.experience-number{font-size:17.5vw}.kevin-story>p{font-size:14px}.kevin-story h3{font-size:25px}.ownership-promise{gap:24px}.ownership-copy p{max-width:470px}.ownership-copy{gap:17px}.ownership-contact{font-size:12px;gap:12px}}
@media(max-width:850px){.why-section{padding-top:55px;padding-bottom:58px}.why-story{gap:43px;grid-template-columns:.82fr 1fr;align-items:start}#why-title{font-size:48px}.experience-number{font-size:19vw}.experience-top{font-size:10px;gap:12px}.experience-caption{font-size:20px}.experience-caption>span{font-size:14px}.kevin-story h3{font-size:24px}.kevin-signoff{gap:12px;flex-wrap:wrap}.kevin-signoff>span:nth-child(2){max-width:175px}.kevin-call{margin-left:0}.ownership-promise{align-items:flex-start;flex-direction:column;gap:13px;margin-top:52px}.ownership-contact{margin-left:51px}.ownership-copy p{max-width:600px}.why-location{font-size:10px}}
@media(max-width:560px){.why-section{padding:42px 6% 46px;margin-top:0}.why-section:before{left:6%;right:6%}.why-topline{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:23px}.why-location{font-size:11px}#why-title{font-size:35px;line-height:1.14;letter-spacing:-.055em}.why-intro{font-size:14px;margin-top:19px;max-width:290px}.why-story{grid-template-columns:1fr;gap:40px;margin-top:37px}.experience-art{padding-right:0;max-width:380px}.experience-top{font-size:11px;padding-bottom:16px}.experience-number{font-size:clamp(165px,48vw,245px);margin-top:13px}.experience-caption{margin-top:3px;margin-bottom:27px;font-size:21px}.experience-caption>span{font-size:15px}.experience-track{font-size:11px}.kevin-story h3{font-size:26px;margin-bottom:18px}.kevin-story>p{font-size:14px;line-height:1.85;margin-bottom:18px}.kevin-signoff{flex-wrap:nowrap;gap:15px}.kevin-signoff>span:nth-child(2){max-width:200px}.kevin-signoff>span:nth-child(2)>span{font-size:10px}.kevin-call{margin-left:auto}.ownership-promise{margin-top:40px;padding:25px 0;gap:14px}.ownership-copy{align-items:flex-start;gap:14px}.ownership-mark{font-size:29px;padding-top:3px}.ownership-copy h3{font-size:20px}.ownership-copy p{font-size:12px;line-height:1.8}.ownership-contact{margin-left:39px;font-size:12px}}

.experience-art{max-width:430px;padding-right:0}
.experience-top{border-bottom:0;padding-bottom:19px}
.kevin-portrait{position:relative;margin:0;width:100%;max-width:400px;aspect-ratio:1;background:#090e17;box-shadow:0 0 0 1px #5e92de38,0 0 48px #1f5db91a}
.kevin-portrait img{display:block;width:100%;height:100%;object-fit:cover}
.kevin-portrait:before,.kevin-portrait:after{content:'';position:absolute;width:36px;height:36px;pointer-events:none;border-color:#86b9ffaa;border-style:solid;z-index:1;filter:drop-shadow(0 0 6px #438eff55)}
.kevin-portrait:before{left:-1px;top:-1px;border-width:1px 0 0 1px}
.kevin-portrait:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0}
.experience-summary{display:flex;align-items:center;gap:26px;max-width:400px;margin:25px 0 29px}
.experience-number{font-size:78px;margin:0;flex-shrink:0;min-width:132px;line-height:1;height:1.03em}
.experience-caption{font-size:17px;letter-spacing:-.02em;margin:0;line-height:1.55}
.experience-caption>span{font-size:12px;letter-spacing:0}
.experience-track{max-width:400px}
.why-story{align-items:center}
@media(max-width:1150px){.experience-summary{gap:19px}.experience-number{font-size:70px;min-width:118px}.experience-caption{font-size:16px}.experience-caption>span{font-size:11px}}
@media(max-width:850px){.why-story{align-items:center;gap:35px}.experience-summary{gap:13px;align-items:flex-start}.experience-number{font-size:57px;min-width:95px}.experience-caption{font-size:14px}.experience-caption>span{font-size:11px}.experience-top{font-size:11px}}
@media(max-width:560px){.why-story{gap:39px}.experience-art{max-width:400px}.experience-summary{gap:24px;margin:22px 0 26px;align-items:center}.experience-number{font-size:74px;min-width:123px}.experience-caption{font-size:17px}.experience-caption>span{font-size:12px}.kevin-portrait{max-width:360px}.experience-track{font-size:11px}}

.project-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-left:37px}
.project-bottom .project-tabs{margin:5px 0 0}
.demos-link{display:flex;align-items:center;gap:11px;font-size:14px;color:#9db7dc;min-height:44px}
.demos-link>span{font-size:18px;color:#86b5f5;transition:transform .2s}
.demos-link:hover{color:#e1edff}.demos-link:hover>span{transform:translate(2px,-2px)}
.reviews-section{position:relative;max-width:1680px;margin:0 auto;padding:24px 5% 74px;scroll-margin-top:28px}
.reviews-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}
.reviews-heading .section-eyebrow{margin-bottom:22px}
#reviews-title{font:500 clamp(40px,4.4vw,70px)/1.12 'Space Grotesk',Arial,sans-serif;letter-spacing:-.055em;margin:0;color:#e9f2ff}
.google-rating{display:flex;align-items:center;gap:19px;padding:5px 0 8px}
.rating-value{font:500 66px/1 'Space Grotesk',Arial,sans-serif;letter-spacing:-.055em;color:#dbeaff}
.rating-context{display:flex;flex-direction:column;gap:7px;font-size:14px;color:#9eb3d3}
.review-stars{font-family:Arial,sans-serif;font-size:15px;letter-spacing:3px;color:#e9c78a;margin:0}
.rating-context>span:last-child>span{margin-left:14px;color:#9ac4ff}
.google-rating:hover .rating-value{color:#fff}
.featured-review{position:relative;margin:0;display:grid;grid-template-columns:85px 1fr;gap:21px;border-top:1px solid #81aae72e;padding:42px 0 44px}
.review-quotation{font:500 140px/.8 'Space Grotesk',Arial,sans-serif;letter-spacing:-.06em;color:#487aca;opacity:.65;transform:translateY(6px);text-shadow:0 0 45px #326ddd30}
.featured-review-body{max-width:1120px}
.featured-review .review-text{font:400 clamp(25px,2.42vw,38px)/1.52 'Space Grotesk',Arial,sans-serif;letter-spacing:-.027em;color:#d1def2;margin:0;text-wrap:pretty}
.quote-highlight{--quote-progress:100%;background:linear-gradient(90deg,#3a78d34f,#3a78d34f) 0 96%/var(--quote-progress) 43% no-repeat;box-decoration-break:clone;-webkit-box-decoration-break:clone;color:#eef6ff}
.review-author{display:flex;align-items:center;gap:17px;margin-top:29px}
.author-line{width:28px;height:1px;background:#749edb;box-shadow:0 0 11px #527ee333}
.review-author>div{display:flex;flex-direction:column;gap:5px}
.review-author cite{font:500 15px/1.4 'Space Grotesk',Arial,sans-serif;font-style:normal;color:#c9dcf8}
.review-author>div>span{font-size:14px;color:#869fbe;line-height:1.4}
.supporting-reviews{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #81aae72e;border-bottom:1px solid #81aae72e}
.supporting-review{margin:0;padding:33px 54px 34px 0;display:flex;flex-direction:column;align-items:flex-start}
.supporting-review+.supporting-review{padding:33px 0 34px 54px;border-left:1px solid #81aae72e}
.supporting-review .review-text{font:400 21px/1.7 'Space Grotesk',Arial,sans-serif;letter-spacing:-.015em;color:#adc2e0;margin:20px 0 26px;max-width:530px;text-wrap:pretty}
.supporting-review .review-author{margin-top:auto}
.supporting-review .review-stars{font-size:14px;letter-spacing:3px}
.reviews-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px 0 0;font-size:14px;color:#819abb}
.reviews-bottom a{display:flex;align-items:center;gap:17px;color:#a9c7ee;min-height:44px}
.reviews-bottom a>span{font-size:22px;transition:transform .2s}.reviews-bottom a:hover{color:#fff}.reviews-bottom a:hover>span{transform:translate(3px,-3px)}
@media(max-width:1150px){.project-bottom{margin-left:15px}.featured-review{grid-template-columns:64px 1fr;gap:17px}.review-quotation{font-size:115px}.supporting-review{padding-right:35px}.supporting-review+.supporting-review{padding-left:35px}.supporting-review .review-text{font-size:19px}.rating-value{font-size:58px}.google-rating{gap:15px}}
@media(max-width:850px){.project-bottom{margin-right:15px}.reviews-section{padding-top:14px;padding-bottom:50px}.reviews-heading{margin-bottom:33px;gap:25px}.google-rating{gap:12px}.rating-value{font-size:48px}.rating-context{font-size:14px}.rating-context .review-stars{font-size:14px;letter-spacing:2px}#reviews-title{font-size:45px}.featured-review{grid-template-columns:42px 1fr;gap:18px;padding:34px 0}.review-quotation{font-size:90px}.featured-review .review-text{font-size:27px}.supporting-review{padding:27px 25px 28px 0}.supporting-review+.supporting-review{padding:27px 0 28px 25px}.supporting-review .review-text{font-size:18px}.review-author cite{font-size:14px}.reviews-bottom{font-size:14px}}
@media(max-width:560px){.project-bottom{margin:0;gap:12px}.demos-link{font-size:14px;gap:8px}.reviews-section{padding:6px 6% 40px}.reviews-heading{align-items:flex-start;flex-direction:column;gap:23px;margin-bottom:27px}.reviews-heading .section-eyebrow{margin-bottom:18px;font-size:14px}#reviews-title{font-size:38px}.google-rating{padding:0;gap:17px}.rating-value{font-size:47px}.rating-context{gap:5px;font-size:14px}.featured-review{display:block;padding:28px 0 30px}.review-quotation{font-size:76px;line-height:.7;display:block;height:42px;transform:none}.featured-review .review-text{font-size:23px;line-height:1.55;letter-spacing:-.025em}.review-author{margin-top:23px;gap:13px}.author-line{width:23px}.supporting-reviews{display:block}.supporting-review,.supporting-review+.supporting-review{padding:27px 0;border-left:0}.supporting-review+.supporting-review{border-top:1px solid #81aae72e}.supporting-review .review-text{font-size:18px;line-height:1.7;margin-top:17px;margin-bottom:23px}.reviews-bottom{flex-direction:column;align-items:flex-start;gap:5px;padding-top:21px;font-size:14px}}
.section-anchor{position:absolute;top:0;left:0}
.answers-section{max-width:1680px;margin:auto;padding:70px 5% 105px;display:grid;grid-template-columns:1fr 1.8fr;gap:8%;scroll-margin-top:35px}
.answers-intro{align-self:start;position:sticky;top:45px}
#faq-title{font:500 clamp(42px,4.6vw,70px)/1.08 'Space Grotesk',Arial,sans-serif;letter-spacing:-.05em;color:#e9f2ff;margin:25px 0}
.question-contact{display:inline-flex;align-items:center;gap:17px;min-height:44px;color:#a9c7ee;font-size:14px;line-height:1.6}
.question-contact>span{font-size:23px;color:#8db6fa}
.answer-item{border-top:1px solid #82aae533;transition:border-color .25s}
.answer-item:last-child{border-bottom:1px solid #82aae533}
.answer-item summary{list-style:none;display:grid;grid-template-columns:28px 1fr 23px;gap:19px;padding:27px 0;cursor:pointer;align-items:start;min-height:74px}
.answer-item summary::-webkit-details-marker{display:none}
.answer-item summary:focus-visible{outline:2px solid #8db6fa;outline-offset:5px;border-radius:2px}
.answer-number{font:400 13px/1.8 'Space Grotesk',Arial,sans-serif;color:#90a8c9;padding-top:2px}
.answer-question{font:500 clamp(18px,1.45vw,23px)/1.5 'Space Grotesk',Arial,sans-serif;color:#cbdaf0}
.answer-icon{position:relative;width:20px;height:24px;margin-top:3px;color:#79aafa}
.answer-icon:before,.answer-icon:after{content:'';position:absolute;left:3px;top:11px;width:14px;height:1px;background:currentColor;transition:transform .25s,box-shadow .25s}
.answer-icon:after{transform:rotate(90deg)}
.answer-item[open]{border-top-color:#6da5f5}
.answer-item[open] .answer-icon:after{transform:rotate(0)}
.answer-item[open] .answer-icon:before{box-shadow:0 0 12px #79aafa}
.answer-item[open] .answer-question,.answer-item summary:hover .answer-question{color:#f0f6ff}
.answer-item p{margin:0 42px 28px 47px;font-size:16px;line-height:1.85;color:#a9bcd7;max-width:680px}
.answer-item p a{color:#c4dcff;text-decoration:underline;text-decoration-color:#79aafa80;text-underline-offset:4px}
.answer-item p a:hover{color:#fff}
.contact-section{position:relative;isolation:isolate;max-width:1680px;margin:0 auto;padding:92px 5% 100px;scroll-margin-top:15px}
.contact-horizon{position:absolute;z-index:-1;pointer-events:none;inset:0 5%;background:radial-gradient(ellipse at 50% 42%,#2564d51a,transparent 68%)}
.contact-horizon:before{content:'';position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#6c9bdf55 35%,#6c9bdf55 65%,transparent)}
.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:start;padding:24px 28px 0}
#contact-title{font:500 clamp(56px,6.2vw,98px)/1.02 'Space Grotesk',Arial,sans-serif;letter-spacing:-.055em;margin:28px 0 24px;color:#e9f2ff}
#contact-title>span{color:#83aff4}
.contact-sub{font-size:16px;line-height:1.8;color:#a9bcd7;max-width:405px;margin:0}
.contact-direct{display:flex;flex-direction:column;align-items:flex-start;font-style:normal;margin-top:42px;gap:7px}
.contact-side-title{font-size:14px;color:#c2d4ee;margin-bottom:5px}
.contact-phone{display:inline-flex;align-items:center;gap:24px;font:500 clamp(23px,2.3vw,34px)/1.4 'Space Grotesk',Arial,sans-serif;color:#afcfff;min-height:44px;letter-spacing:-.025em}
.contact-phone>span{color:#7daafa;font-size:25px}
.contact-email{font-size:16px;min-height:44px;display:flex;align-items:center;overflow-wrap:anywhere;max-width:100%;color:#c1d1e9}
.contact-map{font-size:14px;color:#9dbdea;display:flex;align-items:center;gap:15px;min-height:44px}
.contact-map>span{font-size:21px}
.contact-direct a:hover{color:#fff}
.contact-side-note{font-size:14px;color:#91a7c6;line-height:1.6}
.contact-form-wrap{padding-top:10px;min-width:0}
.contact-form{display:flex;flex-direction:column;gap:27px}
.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
.contact-form label{display:flex;flex-direction:column;gap:12px;min-width:0}
.contact-form label>span{font-size:14px;color:#c3d1e7;line-height:1.6}
.contact-form label small{font-size:12px;color:#93a7c4;margin-left:8px}
.required-mark{color:#83aff4;margin-left:3px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;max-width:100%;font:400 16px/1.5 var(--font);color:#e9f2ff;background:#0d1622a6;border:1px solid #6684ad61;border-radius:4px;padding:14px 15px;transition:border-color .2s,box-shadow .2s,background .2s;outline-offset:3px}
.contact-form select{min-height:54px;padding-right:10px}
.contact-form select option{background:#111d2d;color:#e9f2ff}
.contact-form textarea{min-height:174px;resize:vertical}
.contact-form :is(input,select,textarea):hover{border-color:#80a4d399}
.contact-form :is(input,select,textarea):focus{outline:2px solid #8eb9ff;border-color:#8eb9ff;box-shadow:0 0 24px #387bd520;background:#111e30}
.contact-submit{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.contact-submit .primary-action{min-width:180px;border:1px solid #72a4ee70;min-height:58px;justify-content:space-between}
.contact-submit>span{font-size:13px;color:#96abc8}
.site-footer{position:relative;max-width:1680px;margin:0 auto;padding:0 5% 35px;color:#96abc8;font-size:14px}
.footer-areas{display:flex;align-items:center;gap:12px 26px;flex-wrap:wrap;padding:28px 0;border-top:1px solid #6684ad38;border-bottom:1px solid #6684ad38}
.footer-areas>span{margin-right:15px;color:#c5d4e9}
.footer-areas a,.footer-links a{display:inline-flex;align-items:center;gap:12px;min-height:44px;line-height:1.5;overflow-wrap:anywhere}
.site-footer a:hover{color:#e9f2ff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:24px}
.footer-left p{margin:0;line-height:1.8;color:#b2c5df}
.footer-left .footer-trust{font-size:13px;color:#91a4c0;margin-top:4px}
.footer-links{display:flex;justify-content:flex-end;gap:12px 23px;flex-wrap:wrap}
.footer-links a:last-child{color:#c3d9fa}
@media(max-width:1100px){.answers-section{gap:5%;grid-template-columns:1fr 1.65fr}.contact-layout{gap:6%}.form-row{gap:16px}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-links{justify-content:flex-start}}
@media(max-width:850px){.answers-section{grid-template-columns:1fr;padding-top:45px;padding-bottom:65px;gap:30px}.answers-intro{position:static;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:10px 30px}.answers-intro .section-eyebrow{width:100%;margin-bottom:0}#faq-title{font-size:48px;margin:16px 0}#faq-title br{display:none}.contact-section{padding-top:62px;padding-bottom:65px}.contact-layout{grid-template-columns:1fr;gap:45px}.contact-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:start}.contact-intro>.section-eyebrow{grid-column:1/-1}#contact-title{font-size:64px;margin-top:24px;grid-column:1}.contact-sub{grid-column:1}.contact-direct{grid-column:2;grid-row:2/4;margin-top:25px}.contact-phone{font-size:26px}.contact-email{font-size:15px}.contact-form-wrap{padding-top:0}.contact-form textarea{min-height:150px}}
@media(max-width:560px){.answers-section{padding:38px 6% 55px;gap:20px}.answers-intro{display:block}#faq-title{font-size:40px;margin:22px 0 10px}.answer-item summary{gap:12px;grid-template-columns:22px 1fr 19px;padding:23px 0}.answer-question{font-size:18px}.answer-number{font-size:12px}.answer-item p{margin:0 0 24px 34px;font-size:16px;line-height:1.75}.contact-section{padding:55px 6% 55px}.contact-horizon{left:6%;right:6%}.contact-intro{display:block}#contact-title{font-size:62px;margin:24px 0}.contact-direct{margin-top:28px}.contact-phone{font-size:28px}.contact-layout{gap:38px}.form-row{grid-template-columns:1fr;gap:24px}.contact-form{gap:24px}.contact-form textarea{min-height:160px}.site-footer{padding:0 6% 25px}.footer-areas{gap:6px 22px;padding:24px 0}.footer-areas>span{width:100%;margin:0 0 7px}.footer-links{gap:4px 24px}.footer-links a[href^="mailto:"]{flex-basis:100%;order:1}.footer-links a:last-child{order:2}.contact-submit{gap:17px}}
@media(prefers-reduced-motion:reduce){.answer-item,.answer-icon:before,.answer-icon:after,.contact-form input,.contact-form select,.contact-form textarea{transition:none}}
.motion-paused .answer-icon:before,.motion-paused .answer-icon:after{transition:none}
@media(max-width:850px){.contact-layout{padding:10px 0 0}}
