:root{--text:#4b5b56;--text-h:#111827;--bg:#f4f4fb;--surface:#fff;--paper:#fff;--border:#dce5e1;--ink:#10201c;--accent:#087f72;--accent-2:#2563eb;--tag-bg:#e7f3f0;--tag-text:#075f56;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/150% var(--sans);letter-spacing:0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}#root{min-height:100svh}body,p{margin:0}a{text-underline-offset:4px}::selection{background:#20928433}*{box-sizing:border-box}.site-shell{width:min(1120px,100% - 32px);margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:24px;min-height:76px;display:flex}.brand,.topbar nav,.hero-actions,.project-card-header{align-items:center;display:flex}.brand{color:var(--text-h);gap:10px;font-weight:700;text-decoration:none;position:relative}.brand-mark{background:var(--ink);width:36px;height:36px;color:var(--paper);border-radius:8px;place-items:center;font-size:.92rem;display:grid}.topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:8px}.topbar nav a,.project-card a{color:var(--text);font-size:.88rem;font-weight:650;text-decoration:none;transition:color .22s ease-out;position:relative}.topbar nav a{border-radius:6px;padding:8px 10px}.topbar nav a:hover,.project-card a:hover{color:var(--accent)}.topbar nav a:after,.project-card a:after,.brand:after{content:"";transform-origin:0;background:currentColor;height:2px;transition:transform .24s ease-out;position:absolute;bottom:5px;left:10px;right:10px;transform:scaleX(0)}.project-card a:after,.brand:after{bottom:-4px;left:0;right:0}.topbar nav a:hover:after,.project-card a:hover:after,.brand:hover:after{transform:scaleX(1)}.hero{grid-template-columns:minmax(0,1fr) minmax(300px,440px);align-items:center;gap:64px;min-height:calc(92svh - 76px);padding:46px 0 74px;display:grid}.hero-copy{max-width:720px}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:800}.hero h1{letter-spacing:0;margin:0;font-size:clamp(4rem,11vw,7.6rem);line-height:.92}.lede{max-width:680px;color:var(--text-h);margin-top:24px;font-size:clamp(1.35rem,3vw,2.15rem);font-weight:720;line-height:1.12}.byline{border:1px solid var(--border);background:var(--surface);width:fit-content;color:var(--accent);border-radius:999px;margin-top:14px;padding:7px 12px;font-size:.9rem;font-weight:760}.intro{max-width:650px;color:var(--text);margin-top:22px;font-size:1.02rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px}.button,.contact-link{will-change:transform;border-radius:7px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:760;text-decoration:none;transition:transform .22s ease-out,background-color .22s ease-out,border-color .22s ease-out,color .22s ease-out,box-shadow .22s ease-out;display:inline-flex}.button-primary{background:var(--accent);color:#fff}.button-secondary,.contact-link{border:1px solid var(--border);color:var(--text-h);background:var(--surface)}.button:hover,.contact-link:hover{transform:scale(1.03);box-shadow:0 12px 26px #0f172a1a}.button-primary:hover{background:#066b60}.button-secondary:hover,.contact-link:hover{color:var(--accent);border-color:#087f7252}.button:active,.contact-link:active{transform:scale(.98)}.hero-visual{border-radius:8px;place-items:center;min-height:450px;display:grid;position:relative;overflow:hidden}.hero-visual img{will-change:transform;border-radius:8px;width:min(100%,520px);transition:transform .5s ease-out;transform:scale(1)}.hero-visual:hover img{transform:scale(1.035)}.signal-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#17211f;text-align:left;background:#ffffffb8;border:1px solid #ffffff85;border-radius:8px;gap:4px;padding:16px;display:grid;position:absolute;bottom:22px;left:22px;right:22px}.signal-panel span{color:#52615d;text-transform:uppercase;font-size:.76rem;font-weight:760}.signal-panel strong{font-size:1.1rem}.project-band,.details-band,.contact-band{border-top:1px solid var(--border);padding:76px 0}.section-heading,.details-band,.contact-band{grid-template-columns:minmax(0,.85fr) minmax(280px,1fr);align-items:start;gap:34px;display:grid}.section-heading{margin-bottom:28px}h2,h3{color:var(--text-h);letter-spacing:0;margin:0;line-height:1.04}h2{font-size:clamp(1.9rem,4vw,3.2rem)}h3{font-size:1.15rem}.project-grid{grid-template-columns:minmax(0,560px);gap:14px;display:grid}.project-card{border:1px solid var(--border);background:var(--surface);will-change:transform;border-radius:8px;flex-direction:column;gap:24px;min-height:250px;padding:30px;transition:transform .24s ease-out,box-shadow .24s ease-out,border-color .24s ease-out;display:flex;position:relative;box-shadow:0 18px 50px #0f172a0f}.project-card:hover{border-color:#087f7247;transform:translateY(-4px);box-shadow:0 26px 64px #0f172a1c}.product-logo{justify-content:flex-start;align-items:center;min-height:68px;padding-right:84px;display:flex}.product-logo img{object-fit:contain;object-position:left center;will-change:transform;width:min(100%,230px);max-height:52px;transition:transform .26s ease-out}.project-card:hover .product-logo img{transform:scale(1.025)}.project-card>a{margin-top:auto}.project-card-header{position:absolute;top:30px;right:30px}.project-card-header span{background:var(--tag-bg);color:var(--tag-text);border-radius:999px;flex:none;padding:4px 9px;font-size:.72rem;font-weight:800}.project-card p,.contact-band p{color:var(--text)}.detail-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.detail-list li{border-left:4px solid var(--accent);background:var(--surface);color:var(--text-h);border-radius:6px;padding:16px 18px;font-weight:680;transition:transform .22s ease-out,box-shadow .22s ease-out}.detail-list li:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0f172a12}.contact-band{align-items:center;padding-bottom:96px}.contact-copy p{color:var(--text);margin-top:12px}.contact-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;justify-self:end;gap:16px;width:min(100%,420px);padding:22px;transition:transform .24s ease-out,box-shadow .24s ease-out,border-color .24s ease-out;display:grid;box-shadow:0 18px 50px #0f172a0f}.contact-card:hover{border-color:#087f7242;transform:translateY(-3px);box-shadow:0 26px 64px #0f172a1a}.contact-card span{color:var(--text-h);font-weight:720}.contact-link{overflow-wrap:anywhere;text-align:center;width:100%}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .52s ease-out,transform .52s ease-out;transform:translateY(18px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero-reveal{opacity:0;animation:.56s ease-out forwards heroReveal}.hero-reveal:first-child{animation-delay:40ms}.hero-reveal:nth-child(2){animation-delay:.11s}.hero-reveal:nth-child(3){animation-delay:.18s}.hero-reveal:nth-child(4){animation-delay:.25s}.hero-reveal:nth-child(5){animation-delay:.32s}.hero-visual.hero-reveal{animation-delay:.22s}@keyframes heroReveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes softGradientShift{0%{background-position:0%}to{background-position:100%}}@media (width<=820px){.site-shell{width:min(100% - 24px,680px)}.topbar{justify-content:space-between;align-items:center;min-height:auto;padding:18px 0 12px}.topbar nav{gap:2px}.hero,.section-heading,.details-band,.contact-band{grid-template-columns:1fr}.hero{gap:28px;min-height:auto;padding:36px 0 58px}.hero h1{font-size:clamp(3.4rem,18vw,5.8rem)}.lede{max-width:560px}.intro{max-width:620px}.hero-visual{min-height:auto}.hero-visual img{width:min(100%,620px)}.project-grid{grid-template-columns:1fr}.project-card{min-height:220px;padding:24px}.project-card-header{top:24px;right:24px}.contact-card{justify-self:stretch}}@media (width<=560px){.site-shell{width:min(100% - 20px,440px)}.topbar{align-items:stretch;gap:14px}.brand,.topbar nav{justify-content:center}.topbar nav a{padding:7px 8px;font-size:.82rem}.hero{gap:24px;padding:28px 0 48px}.hero h1{font-size:clamp(3rem,19vw,4.4rem)}.lede{margin-top:18px;font-size:clamp(1.25rem,7vw,1.75rem)}.byline{border-radius:8px;max-width:100%;font-size:.84rem}.intro{margin-top:18px;font-size:.98rem}.hero-actions{grid-template-columns:1fr;margin-top:26px;display:grid}.button,.contact-link{width:100%;min-height:48px}.project-band,.details-band,.contact-band{padding:54px 0}.section-heading{margin-bottom:18px}h2{font-size:clamp(1.65rem,9vw,2.25rem);line-height:1.08}.project-card{gap:20px;min-height:auto;padding:22px}.product-logo{min-height:58px;padding-right:72px}.product-logo img{width:min(100%,190px)}.project-card-header{top:22px;right:22px}.project-card p{font-size:.96rem}.detail-list li,.contact-card{padding:18px}}@media (width<=380px){.topbar nav a{padding-inline:6px}.hero h1{font-size:clamp(2.7rem,18vw,3.6rem)}.product-logo{padding-top:34px;padding-right:0}.product-logo img{width:min(100%,170px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.reveal,.hero-reveal{opacity:1;transform:none}}
