:root{--bg:#f5f5f2;--bg-color:#f5f5f2;--text:#0e0e0e;--muted:#6f6f6f;--line:#0e0e0e24;--surface:#ffffff7a;--surface-strong:#ffffffb8;--accent:#7ba428;--grid-line:#0e0e0e13;--grid-accent:123 164 40;--grid-size:112px;--grid-opacity:.7;--accent-opacity:.2;--signal-opacity:.34;--signal-glow:.16;--edge-shade:#0e0e0e0d;--shadow:0 18px 50px #0e0e0e14}@media (prefers-color-scheme:dark){:root{--bg:#0e0e0e;--bg-color:#0e0e0e;--text:#f5f5f2;--muted:#a1a1a1;--line:#f5f5f229;--surface:#f5f5f20d;--surface-strong:#f5f5f214;--grid-line:#f5f5f214;--grid-opacity:.82;--accent-opacity:.26;--signal-opacity:.52;--signal-glow:.28;--edge-shade:#00000057;--shadow:0 18px 50px #00000042}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg-color);color:var(--text);text-rendering:optimizelegibility;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;overflow-x:hidden}.animated-grid-background{z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 32%, rgb(var(--grid-accent) / .08), transparent 34%), radial-gradient(circle at 76% 10%, #a1a1a114, transparent 28%), linear-gradient(180deg, color-mix(in srgb, var(--bg-color) 92%, transparent), var(--bg-color));position:fixed;inset:0;overflow:hidden}.animated-grid-background:before,.animated-grid-background:after,.grid-signals{content:"";position:absolute;inset:0}.animated-grid-background:before{background:linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);background-size:var(--grid-size) var(--grid-size);opacity:var(--grid-opacity);-webkit-mask-image:radial-gradient(#000 0 58%,#0000 92%);mask-image:radial-gradient(#000 0 58%,#0000 92%)}.animated-grid-background:after{z-index:2;background:radial-gradient(ellipse at center, transparent 0 54%, var(--edge-shade) 100%)}.grid-signals{z-index:1;pointer-events:none;overflow:hidden}.grid-signal{opacity:0;pointer-events:none;will-change:transform, opacity;filter:drop-shadow(0 0 7px rgb(var(--grid-accent) / var(--signal-glow)));display:block;position:absolute}.signal-horizontal{background:linear-gradient(90deg, transparent, rgb(var(--grid-accent) / var(--signal-opacity)), transparent);width:clamp(40px,7vw,108px);height:1px;animation:signal-x var(--speed,8s) linear infinite}.signal-vertical{background:linear-gradient(180deg, transparent, rgb(var(--grid-accent) / var(--signal-opacity)), transparent);width:1px;height:clamp(40px,7vw,104px);animation:signal-y var(--speed,9s) linear infinite}.signal-1{top:calc(var(--grid-size) * 1);left:calc(var(--grid-size) * -1);--speed:7.5s}.signal-2{top:calc(var(--grid-size) * 3);right:calc(var(--grid-size) * -1);--speed:10s;animation-name:signal-x-reverse;animation-delay:-3s}.signal-3{top:calc(var(--grid-size) * 5);left:calc(var(--grid-size) * -1);--speed:11.5s;animation-delay:-6s}.signal-4{top:calc(var(--grid-size) * 7);right:calc(var(--grid-size) * -1);--speed:8.5s;animation-name:signal-x-reverse;animation-delay:-1.5s}.signal-5{top:calc(var(--grid-size) * 9);left:calc(var(--grid-size) * -1);--speed:12s;animation-delay:-8s}.signal-6{top:calc(var(--grid-size) * -1);left:calc(var(--grid-size) * 2);--speed:9s;animation-delay:-2s}.signal-7{bottom:calc(var(--grid-size) * -1);left:calc(var(--grid-size) * 5);--speed:11s;animation-name:signal-y-reverse;animation-delay:-5s}.signal-8{top:calc(var(--grid-size) * -1);left:calc(var(--grid-size) * 8);--speed:8s;animation-delay:-4s}.signal-9{bottom:calc(var(--grid-size) * -1);left:calc(var(--grid-size) * 11);--speed:10.5s;animation-name:signal-y-reverse;animation-delay:-7s}.signal-10{top:calc(var(--grid-size) * -1);left:calc(var(--grid-size) * 14);--speed:12s;animation-delay:-9s}@keyframes signal-x{0%{opacity:0;transform:translate(0,0)}12%,78%{opacity:1}to{opacity:0;transform:translate3d(calc(100vw + var(--grid-size) * 2), 0, 0)}}@keyframes signal-x-reverse{0%{opacity:0;transform:translate(0,0)}12%,78%{opacity:1}to{opacity:0;transform:translate3d(calc(-100vw - var(--grid-size) * 2), 0, 0)}}@keyframes signal-y{0%{opacity:0;transform:translate(0,0)}12%,78%{opacity:1}to{opacity:0;transform:translate3d(0, calc(100vh + var(--grid-size) * 2), 0)}}@keyframes signal-y-reverse{0%{opacity:0;transform:translate(0,0)}12%,78%{opacity:1}to{opacity:0;transform:translate3d(0, calc(-100vh - var(--grid-size) * 2), 0)}}main,.footer{z-index:1;position:relative}a{color:inherit;text-decoration:none}img{max-width:100%}.logo-image{object-fit:contain;height:auto;display:block}button,input,textarea{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.site-header{z-index:10;background:color-mix(in srgb, var(--bg) 84%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);width:100%;position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;width:min(1180px,100% - 32px);height:75px;margin:0 auto;display:flex;position:relative}.brand{align-items:center;height:42px;display:inline-flex;overflow:hidden}.brand picture,.brand img{display:block}.brand-mark{z-index:2;flex:0 0 42px;width:42px;height:42px;position:relative}.brand-mark img{object-fit:contain;width:42px;height:42px}.brand-text{z-index:1;opacity:1;width:88px;height:42px;margin-left:6px;transition:width .45s cubic-bezier(.22,1,.36,1),margin-left .45s cubic-bezier(.22,1,.36,1),opacity .35s,transform .45s cubic-bezier(.22,1,.36,1);display:block;position:relative;overflow:hidden;transform:translate(0)}.brand-text img{width:auto;max-width:none;height:42px}.brand-collapsed .brand-text{opacity:0;width:0;margin-left:0;transform:translate(-14px)}@media (hover:hover) and (pointer:fine){.brand-collapsed:hover .brand-text,.brand-collapsed:focus-visible .brand-text{opacity:1;width:88px;margin-left:6px;transform:translate(0)}}.nav{color:var(--muted);align-items:center;gap:30px;font-size:.92rem;display:flex}.nav a,.footer a,.social-links a{transition:color .16s;position:relative}.nav a:after,.footer a:after,.social-links a:after{content:"";background:var(--accent);transform-origin:100%;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-6px;left:0;transform:scaleX(0)}.nav a:hover,.footer a:hover,.social-links a:hover{color:var(--accent)}.nav a:hover:after,.footer a:hover:after,.social-links a:hover:after{transform-origin:0;transform:scaleX(1)}.menu-button{border:1px solid var(--line);background:var(--surface);width:42px;height:42px;color:var(--text);cursor:pointer;padding:0;display:none}.menu-button span{background:currentColor;width:18px;height:1px;margin:6px auto;transition:transform .16s;display:block}.section{width:min(1180px,100% - 32px);margin:0 auto;padding:108px 0}.hero{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);align-items:center;gap:clamp(44px,7vw,104px);min-height:calc(100svh - 76px);padding-top:64px;display:grid}.hero .eyebrow,.hero h1,.hero-text,.hero-actions,.hero-mark{opacity:0;animation-duration:.76s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:forwards}.hero .eyebrow{align-items:center;gap:12px;animation-name:fade-slide-left;display:inline-flex}.hero .eyebrow:before{content:"";background:var(--accent);width:34px;height:1px}.hero-mark{animation-name:fade-slide-right;animation-delay:.32s}.hero h1{max-width:780px;animation-name:fade-slide-up;animation-delay:.76s}.hero-text{animation-name:fade-slide-down;animation-delay:.76s}.hero-actions{animation-name:fade-slide-down;animation-delay:1.16s}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 18px;font-size:.76rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:0;max-width:850px;font-family:Georgia,Cambria,Times New Roman,serif;font-weight:500;line-height:1.02}h1{margin-bottom:28px;font-size:clamp(3.15rem,8vw,7.7rem)}h2{margin-bottom:22px;font-size:clamp(2.15rem,5vw,4.4rem)}h3{margin-bottom:14px;font-size:1.12rem}.hero-text,.section-heading p+h2,.story-lead,.contact-copy p{color:var(--muted)}.hero-text{max-width:620px;margin-bottom:34px;font-size:clamp(1.08rem,2vw,1.34rem)}.hero-actions,.social-links{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.button{border:1px solid var(--line);min-height:48px;color:var(--text);justify-content:center;align-items:center;padding:0 20px;transition:border-color .16s,background .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{border-color:var(--accent);background:var(--accent);color:#0e0e0e}.button-secondary:hover{border-color:var(--accent);color:var(--accent)}.hero .button-primary:hover{background:color-mix(in srgb, var(--accent) 88%, var(--bg-color));box-shadow:0 10px 28px rgb(var(--grid-accent) / .18)}.hero .button-secondary:hover{background:rgb(var(--grid-accent) / .06)}.hero-mark{border:1px solid color-mix(in srgb, var(--line) 72%, var(--accent));background:radial-gradient(circle at 50% 42%, rgb(var(--grid-accent) / .1), transparent 32%), linear-gradient(135deg, var(--surface-strong), var(--surface));min-height:440px;box-shadow:var(--shadow);border-radius:8px;place-items:center;display:grid;position:relative;overflow:hidden}.hero-mark:before{content:"";border:1px solid var(--line);background:linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);opacity:.72;background-size:54px 54px;position:absolute;inset:28px}.hero-brand-lockup{z-index:1;aspect-ratio:1;place-items:center;width:clamp(240px,50%,340px);display:grid;position:relative}.hero-brand-guide{border:1px solid color-mix(in srgb, var(--accent) 58%, transparent);place-items:center;width:100%;height:100%;display:grid;position:relative}.hero-brand-guide:before,.hero-brand-guide:after{content:"";background:color-mix(in srgb, var(--accent) 58%, transparent);height:1px;position:absolute}.hero-brand-guide:before{width:72px;top:-50px;left:-42px}.hero-brand-guide:after{width:88px;bottom:-46px;right:-32px}.hero-brand-logo{z-index:2;place-items:center;width:78%;display:grid;position:relative}.hero-brand-logo img{width:100%;height:auto}.system-lines{width:180px;position:absolute;bottom:30px;right:30px}.system-lines span{background:var(--line);height:1px;margin-top:14px;display:block}.system-lines span:nth-child(2){background:var(--accent);width:70%}.system-lines span:nth-child(3){width:42%}@keyframes fade-slide-left{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0,0)}}@keyframes fade-slide-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0,0)}}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translate(0,0)}}@keyframes fade-slide-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translate(0,0)}}@keyframes service-zoom-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes story-cursor{50%{opacity:0}}.section-heading{border-top:1px solid var(--line);grid-template-columns:.38fr 1fr;align-items:start;gap:32px;margin-bottom:42px;padding-top:24px;display:grid}.product-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}.products-eyebrow,.products-title,.products-section .product-card,.products-more{opacity:0;animation-duration:.46s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}.products-eyebrow{animation-duration:.42s;transform:translate(-14px)}.products-title{animation-duration:.48s;transform:translate(16px)}.products-section .product-card{transform:translateY(16px)}.products-section.is-visible .products-eyebrow{animation-name:fade-slide-left;animation-delay:0s}.products-section.is-visible .products-title{animation-name:fade-slide-right;animation-delay:.36s}.products-section.is-visible .product-card:first-child{animation-name:fade-slide-up;animation-delay:.78s}.products-section.is-visible .product-card:nth-child(2){animation-name:fade-slide-up;animation-delay:1.12s}.products-section.is-visible .product-card:nth-child(3){animation-name:fade-slide-up;animation-delay:1.46s}.section-more{margin-top:24px;display:flex}.products-more{transform:translateY(14px)}.products-section.is-visible .products-more{animation-name:fade-slide-up;animation-delay:1.72s}.product-card,.contact-form{border:1px solid var(--line);background:var(--surface);transition:border-color .16s,box-shadow .16s,transform .16s}.product-card{min-height:260px;padding:28px;overflow:hidden}.product-card:hover{border-color:color-mix(in srgb, var(--accent) 72%, var(--line));box-shadow:var(--shadow);transform:translateY(-2px)}.products-section .product-card:hover{background:color-mix(in srgb, var(--surface) 88%, rgb(var(--grid-accent) / .08));transform:none}.product-card span,.service-number{color:var(--accent);text-transform:uppercase;font-size:.75rem;font-weight:700}.product-card p,.service-card-detail{color:var(--muted)}.services-section{padding-top:72px}.services-eyebrow,.services-title,.services-section .service-item,.services-more{opacity:0;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}.services-eyebrow{animation-duration:.42s;transform:translate(-14px)}.services-title{animation-duration:.48s;transform:translate(16px)}.services-section .service-item{animation-duration:.42s;transform:scale(.96)}.services-section.is-visible .services-eyebrow{animation-name:fade-slide-left;animation-delay:0s}.services-section.is-visible .services-title{animation-name:fade-slide-right;animation-delay:.34s}.services-section.is-visible .service-item{animation-name:service-zoom-in}.services-section.is-visible .service-item:first-child{animation-delay:.76s}.services-section.is-visible .service-item:nth-child(2){animation-delay:.9s}.services-section.is-visible .service-item:nth-child(3){animation-delay:1.04s}.services-section.is-visible .service-item:nth-child(4){animation-delay:1.18s}.services-section.is-visible .service-item:nth-child(5){animation-delay:1.32s}.services-section.is-visible .service-item:nth-child(6){animation-delay:1.46s}.services-more{animation-duration:.46s;transform:translateY(14px)}.services-section.is-visible .services-more{animation-name:fade-slide-up;animation-delay:1.66s}.service-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.service-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);perspective:1000px;min-height:240px}.service-card{width:100%;min-height:240px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0}.service-card-inner{min-height:240px;transform-style:preserve-3d;transition:border-color .18s,box-shadow .18s,transform .6s cubic-bezier(.22,1,.36,1);display:block;position:relative}.service-card-face{background:color-mix(in srgb, var(--surface) 92%, transparent);backface-visibility:hidden;border:1px solid #0000;flex-direction:column;justify-content:space-between;padding:24px;display:flex;position:absolute;inset:0}.service-card-back,.service-item:hover .service-card-inner,.service-item:focus-within .service-card-inner{transform:rotateY(180deg)}.service-item:hover .service-card-face,.service-item:focus-within .service-card-face{border-color:color-mix(in srgb, var(--accent) 62%, var(--line));box-shadow:0 16px 34px rgb(var(--grid-accent) / .12)}.service-card:focus-visible{outline:2px solid var(--accent);outline-offset:-5px}.service-number,.service-card-title,.service-card-detail{display:block}.service-card-title{max-width:92%;color:var(--text);font-size:clamp(1.02rem,1.4vw,1.22rem);font-weight:650;line-height:1.18}.service-card-detail{max-width:96%;font-size:.98rem;line-height:1.48}@media (hover:none){.service-item.is-flipped .service-card-inner{transform:rotateY(180deg)}}.story-section,.contact-section{grid-template-columns:1fr .82fr;align-items:center;gap:clamp(36px,6vw,84px);display:grid}.story-lead,.contact-copy p{max-width:620px;font-size:1.08rem}.story-eyebrow,.story-title,.story-lead,.story-quote,.story-more,.story-window{opacity:0;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}.story-eyebrow{animation-duration:.42s;transform:translate(-14px)}.story-title,.story-lead{animation-duration:.48s;transform:translateY(-12px)}.story-quote{border-left:2px solid var(--accent);margin:38px 0 0;padding-left:22px;font-family:Georgia,Cambria,Times New Roman,serif;font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.12;animation-duration:.46s;transform:translate(-14px)}.story-window{border:1px solid color-mix(in srgb, var(--line) 82%, var(--accent));background:color-mix(in srgb, var(--surface-strong) 72%, transparent);height:640px;box-shadow:var(--shadow);border-radius:8px;animation-duration:.52s;overflow:hidden;transform:translate(18px)}.story-section.is-visible .story-eyebrow{animation-name:fade-slide-left;animation-delay:0s}.story-section.is-visible .story-title{animation-name:fade-slide-down;animation-delay:.32s}.story-section.is-visible .story-lead{animation-name:fade-slide-down;animation-delay:.68s}.story-section.is-visible .story-quote{animation-name:fade-slide-left;animation-delay:1.04s}.story-more{animation-duration:.46s;transform:translate(-14px)}.story-section.is-visible .story-more{animation-name:fade-slide-left;animation-delay:1.22s}.story-section.is-visible .story-window{animation-name:fade-slide-right;animation-delay:1.36s}.story-window-bar{border-bottom:1px solid var(--line);background:linear-gradient(90deg, rgb(var(--grid-accent) / .08), transparent 46%), color-mix(in srgb, var(--surface-strong) 88%, transparent);justify-content:space-between;align-items:center;min-height:42px;padding:0 14px 0 16px;display:flex}.story-window-title{color:var(--accent);font-size:.75rem;font-weight:700}.story-window-controls{gap:7px;display:flex}.story-window-controls span{border:1px solid color-mix(in srgb, var(--line) 68%, var(--accent));background:var(--surface);border-radius:999px;width:9px;height:9px}.story-window-controls span:last-child{background:rgb(var(--grid-accent) / .22)}.story-code{height:calc(100% - 42px);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:26px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:clamp(.76rem,1.08vw,.92rem);line-height:1.65;overflow:hidden}.story-code code{display:inline}.story-code .is-typing:after{content:"";background:var(--accent);vertical-align:-.15em;width:.56em;height:1.1em;margin-left:2px;animation:.9s step-end infinite story-cursor;display:inline-block}.detail-page{padding-bottom:72px}.detail-hero{padding-bottom:56px}.detail-hero h1{margin-bottom:0}.product-feature,.service-detail,.history-purpose{border:1px solid color-mix(in srgb, var(--line) 82%, var(--accent));background:linear-gradient(135deg, color-mix(in srgb, var(--surface-strong) 76%, transparent), var(--surface)), linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);box-shadow:var(--shadow);background-size:auto,56px 56px,56px 56px;border-radius:8px}.product-feature{grid-template-columns:.82fr 1fr;align-items:center;gap:clamp(32px,5vw,72px);padding:clamp(32px,5vw,64px);display:grid}.product-feature-logo{border:1px solid var(--line);background:rgb(var(--grid-accent) / .05);place-items:center;min-height:320px;display:grid}.product-feature-logo img{width:min(78%,360px);height:auto}.product-feature-copy p{max-width:680px;color:var(--muted);font-size:1.05rem}.product-feature-copy .button{margin-top:14px}.service-detail-list{gap:24px;display:grid}.service-detail{grid-template-columns:.72fr 1fr;align-items:stretch;gap:clamp(28px,5vw,64px);padding:clamp(24px,4vw,42px);display:grid}.service-detail.is-reverse{grid-template-columns:1fr .72fr}.service-detail.is-reverse .service-detail-visual{order:2}.service-detail-visual{border:1px solid var(--line);background:radial-gradient(circle at 50% 42%, rgb(var(--grid-accent) / .12), transparent 34%), linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px);background-size:auto,42px 42px,42px 42px;place-items:center;min-height:280px;display:grid;position:relative;overflow:hidden}.service-detail-visual:after{content:"";aspect-ratio:1;border:1px solid color-mix(in srgb, var(--accent) 56%, transparent);width:42%}.service-detail-visual span{color:color-mix(in srgb, var(--accent) 72%, var(--text));font-family:Georgia,Cambria,Times New Roman,serif;font-size:clamp(3.5rem,8vw,6rem);position:absolute}.service-detail-copy p,.history-narrative p,.history-purpose p{max-width:780px;color:var(--muted);overflow-wrap:anywhere;font-size:1.06rem;line-height:1.72}.service-detail-copy ul{flex-wrap:wrap;gap:10px;margin:26px 0 0;padding:0;list-style:none;display:flex}.service-detail-copy li{border:1px solid var(--line);color:var(--text);background:var(--surface);padding:8px 10px;font-size:.88rem}.history-narrative{gap:18px;padding-top:0;display:grid}.history-timeline{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:0;padding-top:24px;padding-bottom:24px;display:grid}.timeline-item{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;gap:28px;padding:28px 0;display:grid}.timeline-item:last-child{border-bottom:0}.timeline-item span{color:var(--accent);font-weight:700}.timeline-item p{color:var(--text);margin:0;font-size:1.08rem}.history-purpose{padding:clamp(28px,5vw,56px)}.contact-section{border-top:1px solid var(--line);align-items:start}.contact-eyebrow,.contact-title,.contact-lead,.contact-email,.contact-form{opacity:0;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}.contact-eyebrow{color:var(--accent);animation-duration:.42s;transform:translate(-14px)}.contact-title{animation-duration:.48s;transform:translateY(-12px)}.contact-lead{animation-duration:.46s;transform:translate(-14px)}.contact-email{margin:16px 0 24px;animation-duration:.44s;transform:translateY(-12px)}.contact-email:hover{box-shadow:0 8px 24px rgb(var(--grid-accent) / .16)}.contact-section.is-visible .contact-eyebrow{animation-name:fade-slide-left;animation-delay:0s}.contact-section.is-visible .contact-title{animation-name:fade-slide-down;animation-delay:.32s}.contact-section.is-visible .contact-lead{animation-name:fade-slide-left;animation-delay:.66s}.contact-section.is-visible .contact-email{animation-name:fade-slide-down;animation-delay:.98s}.contact-section.is-visible .contact-form{animation-name:fade-slide-right;animation-delay:1.28s}.contact-form{background:color-mix(in srgb, var(--surface-strong) 76%, transparent);box-shadow:var(--shadow);border-radius:8px;gap:18px;padding:28px;animation-duration:.52s;display:grid;transform:translate(18px)}.contact-form label{color:var(--muted);gap:8px;font-size:.92rem;display:grid}.contact-form input,.contact-form textarea{border:1px solid var(--line);background:var(--surface-strong);width:100%;color:var(--text);resize:vertical;border-radius:4px;outline:none;padding:13px 14px;transition:border-color .16s,box-shadow .16s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 18%, transparent)}.contact-form .button{justify-self:start}.contact-consents{gap:12px;display:grid}.contact-form .contact-consents label{color:var(--text);align-items:flex-start;gap:10px;line-height:1.45;display:flex}.contact-form .contact-consents input{width:17px;height:17px;accent-color:var(--accent);flex:0 0 17px;margin-top:2px;padding:0}.contact-consents a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.contact-form .button:disabled{cursor:not-allowed;opacity:.42;transform:none}.form-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-note{min-height:3em;color:var(--muted);margin:0;font-size:.9rem}.form-note.is-success{color:var(--accent)}.error-whatsapp-link{color:inherit;text-underline-offset:3px;font-weight:600;text-decoration:underline}.contact-whatsapp{justify-items:start;gap:10px;display:grid}.contact-whatsapp p{color:var(--muted);margin:0;font-size:.86rem}.footer{border-top:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);width:100%}.footer-inner{width:min(1180px,100% - 32px);color:var(--muted);grid-template-columns:1fr auto auto;align-items:center;gap:32px;margin:0 auto;padding:34px 0 44px;display:grid}.footer-brand{align-items:center;gap:12px;display:flex}.footer-logo img{width:34px;height:34px}.footer p{color:var(--text);margin:0}.footer-navigation,.footer nav{gap:20px;display:flex}.footer-navigation{flex-direction:column;align-items:flex-end;gap:12px}.footer .footer-legal-links{color:color-mix(in srgb, var(--muted) 82%, transparent);font-size:.82rem}.legal-content{gap:18px;padding-top:0;display:grid}.legal-intro,.legal-section{max-width:860px}.legal-intro{color:var(--muted);font-size:1.08rem;line-height:1.75}.legal-updated{color:var(--accent);text-transform:uppercase;margin-bottom:0;font-size:.82rem}.legal-section{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-strong) 72%, transparent);border-radius:6px;padding:24px}.legal-section h2{margin-bottom:10px;font-size:clamp(1.15rem,2vw,1.45rem)}.legal-section p{color:var(--muted);margin:0;line-height:1.72}@media (max-width:900px){.brand-text{opacity:0;width:0;margin-left:0;transform:translate(-14px)}.menu-button{display:block}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.5px)rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.5px)rotate(-45deg)}.nav{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);box-shadow:var(--shadow);opacity:0;pointer-events:none;gap:0;padding:10px;transition:opacity .16s,transform .16s;display:grid;position:absolute;top:calc(100% + 1px);left:0;right:0;transform:translateY(-8px)}.nav-open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav a{padding:14px 12px}.hero,.story-section,.contact-section,.section-heading,.product-feature,.service-detail,.service-detail.is-reverse{grid-template-columns:1fr}.service-detail.is-reverse .service-detail-visual{order:0}.hero{min-height:calc(100svh - 76px);padding-top:56px}.hero-mark{min-height:320px}.product-grid,.service-grid{grid-template-columns:1fr 1fr}.footer-inner{grid-template-columns:1fr}.footer-navigation{align-items:flex-start}.footer nav{flex-wrap:wrap}}@media (max-width:620px){:root{--grid-size:86px;--grid-opacity:.48;--accent-opacity:.14;--signal-opacity:.24;--signal-glow:.1}.section{padding:72px 0}.detail-page .section{width:calc(100% - 48px);max-width:1180px}.history-narrative p,.history-purpose p,.service-detail-copy p{white-space:normal;word-break:normal;overflow-wrap:break-word;width:100%;max-width:calc(100vw - 48px)}.history-narrative{display:block}h1{font-size:clamp(2.7rem,14vw,4.3rem)}.hero-actions,.hero-actions .button,.contact-copy .button{width:100%}.contact-form{padding:22px}.contact-form .button{width:100%}.product-grid,.service-grid{grid-template-columns:1fr}.product-feature-logo,.service-detail-visual{min-height:220px}.timeline-item{grid-template-columns:1fr;gap:10px}.service-item{min-height:220px}.service-number{margin-bottom:32px}.service-card,.service-card-inner{min-height:220px}.story-window{height:620px}.story-code{height:calc(100% - 42px);padding:16px;font-size:clamp(.58rem,2.3vw,.68rem);line-height:1.48}.hero-brand-lockup{width:clamp(190px,58vw,260px)}.signal-3,.signal-5,.signal-8,.signal-10{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.brand-text{transition:none}.grid-signal{opacity:0;animation:none}.signal-1,.signal-6{opacity:.18}.hero .eyebrow,.hero h1,.hero-text,.hero-actions,.hero-mark,.products-eyebrow,.products-title,.products-section .product-card,.products-more,.services-eyebrow,.services-title,.services-section .service-item,.services-more,.story-eyebrow,.story-title,.story-lead,.story-quote,.story-more,.story-window,.contact-eyebrow,.contact-title,.contact-lead,.contact-email,.contact-form{opacity:1;animation:none;transform:none}.service-item,.service-card,.service-card-inner{min-height:auto}.service-card-inner,.service-item:hover .service-card-inner,.service-item:focus-within .service-card-inner,.service-item.is-flipped .service-card-inner{transition:none;display:grid;transform:none}.service-card-face{min-height:auto;box-shadow:none;backface-visibility:visible;background:0 0;border:0;position:static;transform:none}.service-card-front{gap:28px;padding-bottom:10px}.service-card-back{padding-top:0}.service-card-back .service-number{display:none}.story-code .is-typing:after{animation:none;display:none}}
