@property --glow{syntax:"<color>";inherits:true;initial-value:#007AFF}:root{--blue:#007AFF;--blue-deep:#0064DB;--ink:#07173A;--paper:#F3F7FF;--line:#DCE6F7;--night:#050B22;--text:#44536F;--wa:#25D366;--fold:#A3A1A2;--display:"Bricolage Grotesque",system-ui,sans-serif;--body:"Instrument Sans",system-ui,sans-serif;--k:.47}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{margin:0;font-family:var(--body);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance}a{color:inherit;text-decoration:none}svg{display:block}.wrap{max-width:1160px;margin:0 auto;padding:0 24px}:focus-visible{outline:3px solid #FFD23F;outline-offset:3px;border-radius:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:14px;font:600 16px/1 var(--body);white-space:nowrap;transition:transform .15s ease,background .15s ease}.btn:active{transform:scale(.97)}.btn svg{width:22px;height:22px;flex:none}.btn-white{background:#fff;color:var(--ink)}.btn-white svg{fill:var(--wa)}.btn-ghost{color:#fff;box-shadow:inset 0 0 0 1.5px #ffffff8c}.btn-ghost:hover{background:#ffffff1f}.btn-wa{background:var(--wa);color:#04331a}.btn-wa svg{fill:#fff}.head{position:fixed;inset:0 0 auto;z-index:20;color:#fff;transition:background .25s,color .25s,box-shadow .25s}.head .wrap{display:flex;align-items:center;height:68px;gap:28px}.brand{display:flex;align-items:center;gap:10px;font:700 21px/1 var(--display);letter-spacing:-.02em;margin-right:auto}.brand svg{width:36px;height:36px;border-radius:10px}.nav{display:flex;gap:24px;font-weight:500;font-size:15.5px}.nav a{opacity:.9}.nav a:hover{opacity:1;text-decoration:underline;text-underline-offset:6px}.head .btn{height:42px;padding:0 16px;border-radius:12px;font-size:15px}.head.scrolled{background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);box-shadow:0 1px 0 var(--line)}.hero{position:relative;min-height:min(100svh,900px);display:flex;align-items:center;color:#fff;overflow:hidden;background:var(--night);--gx:-999px;--gy:-999px;--sx:74%;--sy:44%;--glow:#007AFF}.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(320px circle at var(--gx) var(--gy),rgba(120,170,255,.13),transparent 70%),radial-gradient(560px circle at var(--sx) var(--sy),color-mix(in srgb,var(--glow) 36%,transparent),transparent 70%);transition:--glow .8s}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:linear-gradient(#000,transparent 85%);mask-image:linear-gradient(#000,transparent 85%)}.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;cursor:pointer;touch-action:pan-y}.hero .wrap{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;padding-top:110px;padding-bottom:70px;pointer-events:none}.hero .wrap a,.hero .wrap button{pointer-events:auto}.hero h1{font-size:clamp(2.6rem,1.2rem + 5.2vw,5rem);font-weight:800;line-height:.98}.hero .copy>p{margin-top:22px;max-width:30em;font-size:clamp(1.05rem,1rem + .35vw,1.25rem);line-height:1.5;color:#c9d4ee}.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.copy>*{opacity:0;transform:translateY(14px);animation:rise .7s cubic-bezier(.2,.7,.2,1) forwards}.copy>*:nth-child(2){animation-delay:.1s}.copy>*:nth-child(3){animation-delay:.2s}.copy>*:nth-child(4){animation-delay:.3s}@keyframes rise{to{opacity:1;transform:none}}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.chip{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 15px 0 6px;border-radius:999px;cursor:pointer;font:600 14.5px/1 var(--body);color:#fff;background:#ffffff12;border:1px solid rgba(255,255,255,.16);transition:background .2s,color .2s,transform .15s}.chip img{width:30px;height:30px;border-radius:50%;display:block}.chip:hover{background:#ffffff29}.chip:active{transform:scale(.96)}.chip.on{background:#fff;color:var(--ink);border-color:#fff}.stage{justify-self:center;width:min(100%,430px);display:grid;gap:14px}.stage .box{aspect-ratio:1/1}.caption{display:grid;justify-items:center;gap:4px;text-align:center;animation:rise .5s .15s cubic-bezier(.2,.7,.2,1) both;transform:translateY(10px)}.caption b{font:700 1.6rem/1.1 var(--display);letter-spacing:-.02em}.caption span{color:#c9d4ee;max-width:22em}.caption a{margin-top:6px;display:inline-flex;align-items:center;gap:6px;font-weight:600;color:#fff;border-bottom:1.5px solid rgba(255,255,255,.4);padding-bottom:2px}.caption a:hover{border-color:#fff}.caption a svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.sec{padding:96px 0}.sec h2{font-size:clamp(1.9rem,1.3rem + 2.4vw,3rem);font-weight:800;line-height:1.05}.sec .sub{margin-top:12px;color:var(--text);font-size:1.1rem;max-width:34em}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}.prod{position:relative;display:flex;flex-direction:column;min-height:330px;padding:24px;border-radius:26px;color:#fff;overflow:hidden;background:var(--bg);transition:transform .25s cubic-bezier(.2,.7,.2,1)}.prod:hover{transform:translateY(-6px)}.prod .logo{width:54px;height:54px;border-radius:14px;overflow:hidden;display:grid;place-items:center;font:800 26px/1 var(--display);background:var(--accent);color:var(--bg);box-shadow:0 0 0 1.5px #ffffff24}.prod .logo img,.prod .logo svg{width:100%;height:100%}.prod h3{margin-top:22px;font-size:1.7rem;font-weight:700}.prod p{margin-top:8px;max-width:17em;font-size:1.05rem;line-height:1.45;opacity:.86}.prod .go{margin-top:auto;padding-top:26px;font-weight:600;display:inline-flex;align-items:center;gap:8px;position:relative;z-index:1}.prod .go i{width:30px;height:30px;border-radius:50%;background:var(--accent);display:grid;place-items:center;transition:transform .25s}.prod .go i svg{width:14px;height:14px;stroke:var(--bg);fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.prod:hover .go i{transform:translate(5px)}.prod .t{position:absolute;right:-18px;bottom:-34px;width:120px;height:150px;background:var(--accent);opacity:.9;clip-path:polygon(0 37.6%,100% 0,100% 62.4%,0 100%);transition:transform .45s cubic-bezier(.2,.7,.2,1)}.prod .t.b{right:112px;bottom:-96px;opacity:.35}@media(max-width:1100px)and (min-width:901px){.products{grid-template-columns:repeat(2,1fr)}}@media(min-width:1101px){.prod .t{width:96px;height:120px;right:-16px;bottom:-30px}.prod .t.b{right:88px;bottom:-78px}}.prod:hover .t{transform:translate(-8px,-18px)}.prod:hover .t.b{transform:translate(-4px,-34px)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}.reveal.on{opacity:1;transform:none}.prod.reveal.on:hover{transform:translateY(-6px)}.services{background:var(--paper)}.svc{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:44px;border-top:1.5px solid var(--line)}.svc li{list-style:none;padding:26px 22px 4px 0}.svc li+li{padding-left:22px;border-left:1.5px solid var(--line)}.svc .tile{width:26px;height:34px;background:var(--blue);clip-path:polygon(0 36%,100% 0,100% 64%,0 100%)}.svc h3{margin-top:16px;font-size:1.25rem;font-weight:700}.svc p{margin-top:6px;color:var(--text);line-height:1.45}ul{margin:0;padding:0}.contact{position:relative;background:linear-gradient(100deg,var(--blue-deep),var(--blue));color:#fff;text-align:center;overflow:hidden}.contact:before,.contact:after{content:"";position:absolute;width:220px;height:280px;background:#fff;opacity:.08;clip-path:polygon(0 37%,100% 0,100% 63%,0 100%)}.contact:before{left:-60px;top:40px}.contact:after{right:-50px;bottom:-40px;opacity:.12}.contact .wrap{position:relative}.contact h2{font-size:clamp(2.2rem,1.3rem + 3.6vw,4rem)}.phones{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:36px}.phones .btn{height:64px;padding:0 28px;border-radius:18px;font:700 clamp(1.05rem,.9rem + .8vw,1.35rem)/1 var(--display);letter-spacing:0}.phones .btn svg{width:28px;height:28px}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:start}.lead{margin-top:18px;font-size:clamp(1.15rem,1rem + .7vw,1.5rem);line-height:1.45;color:var(--ink);max-width:24em}.points{display:grid;gap:0;border-top:1.5px solid var(--line)}.points li{list-style:none;display:grid;grid-template-columns:26px 1fr;gap:4px 16px;padding:18px 0;border-bottom:1.5px solid var(--line)}.points .tile{width:22px;height:29px;margin-top:2px;background:var(--blue);clip-path:polygon(0 36%,100% 0,100% 64%,0 100%);grid-row:span 2}.points h3{font-size:1.15rem;font-weight:700}.points p{color:var(--text);line-height:1.45}.visit-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px 56px;align-items:center}.place{border-radius:26px;overflow:hidden;aspect-ratio:4/3;background:var(--blue)}.place svg{width:100%;height:100%}.place .pin{transform-origin:280px 208px;animation:pin 2.6s ease-in-out infinite}@keyframes pin{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.where{margin-top:18px;display:grid;gap:2px}.where b{font:700 clamp(1.5rem,1.2rem + 1.2vw,2.1rem)/1.1 var(--display);letter-spacing:-.02em}.where span{color:var(--text);font-size:1.1rem}.btn-blue{background:var(--blue);color:#fff}.btn-blue svg{stroke:#fff;fill:none}.photos{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photos:empty{display:none}.photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;display:block}.foot{background:#18181b;color:#f4f4f5;padding-top:80px;font-family:"DM Sans",var(--body);font-size:16px}.foot a:hover{text-decoration:underline}.foot-top{display:grid;grid-template-columns:1fr .5fr .5fr .5fr;gap:40px;padding-bottom:80px}.foot-brand>*+*{margin-top:20px}.foot-name{font-size:24px;font-weight:600;color:#fafafa}.foot-text{color:#d4d4d8;line-height:1.5;max-width:26em}.foot-rows>div{display:flex;align-items:center;gap:10px}.foot-rows>div+div{margin-top:12px}.foot-rows svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.foot-h{font-weight:600;color:#fff;margin-bottom:16px}.foot li{list-style:none}.foot li+li{margin-top:12px}.foot-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:24px 0 32px;border-top:1px solid #52525c;color:#fff}.social{display:flex;align-items:center;gap:6px}.social a{display:grid;place-items:center;width:32px;height:32px;transition:color .15s}.social a:hover{color:#4da3ff}.social svg{width:22px;height:22px;fill:currentColor}.fab{position:fixed;right:18px;bottom:18px;z-index:30;width:58px;height:58px;border-radius:50%;background:var(--wa);display:grid;place-items:center;box-shadow:0 10px 26px #043c1e59;transform:scale(0);transition:transform .3s cubic-bezier(.3,1.4,.5,1)}.fab.show{transform:scale(1)}.fab svg{width:30px;height:30px;fill:#fff}@media(max-width:900px){.nav{display:none}.hero{min-height:0;--sx:50%;--sy:68%}.hero .wrap{grid-template-columns:1fr;gap:26px;padding-top:104px;padding-bottom:48px}.stage{width:min(78vw,320px)}.products{grid-template-columns:1fr}.prod{min-height:0;padding:24px}.prod .go{padding-top:36px}.svc{grid-template-columns:1fr 1fr}.svc li{padding:22px 16px 6px 0}.svc li:nth-child(odd){padding-left:0;border-left:0}.svc li:nth-child(n+3){border-top:1.5px solid var(--line);margin-top:18px}.sec{padding:68px 0}.about-grid,.visit-grid{grid-template-columns:1fr;gap:28px}.foot-top{grid-template-columns:1fr 1fr;padding-bottom:56px}.foot-brand{grid-column:1/-1}}@media(max-width:480px){.wrap{padding:0 18px}.cta .btn,.phones .btn{width:100%}.head .btn span{display:none}.head .btn{padding:0 12px}.chip{flex:1 1 40%;justify-content:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.copy>*,.caption{animation:none;opacity:1;transform:none}.reveal{opacity:1;transform:none;transition:none}.place .pin{animation:none}}
