:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{min-height:100%}:root{--bg:#f5f5f7;--bg-soft:#fbfbfd;--surface:#fff;--ink:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--line-strong:#b4b4ba;--blue:#0071e3;--blue-dark:#005bb5;--shadow:0 20px 45px #0f0f1414;--radius-lg:26px;--radius-md:18px;--radius-sm:12px;--max-width:min(1120px, 92vw);--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at 4% -12%, #0071e324, transparent 35%), radial-gradient(circle at 92% 18%, #508cff1f, transparent 35%), var(--bg);margin:0;font-family:SF Pro Display,SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45;overflow-x:hidden}body.cursor-enabled *{cursor:none}a{color:inherit}.container{width:var(--max-width);margin-inline:auto}.site-shell{min-height:100vh}.loading-curtain{z-index:140;pointer-events:none;position:fixed;inset:0}.loading-curtain:before,.loading-curtain:after{content:"";width:100%;height:50%;transition:transform .9s var(--ease);background:#fff;position:absolute;left:0}.loading-curtain:before{top:0}.loading-curtain:after{bottom:0}.site-shell.ready .loading-curtain:before{transform:translateY(-100%)}.site-shell.ready .loading-curtain:after{transform:translateY(100%)}.site-header{z-index:120;width:100%;transition:transform .7s var(--ease), padding .25s ease, background .25s ease, box-shadow .25s ease;padding:24px 0;position:fixed;top:0;left:0;transform:translateY(-120%)}.site-shell.ready .site-header{transform:translateY(0)}.site-header.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f5f5f7db;border-bottom:1px solid #d2d2d7bf;padding:14px 0;box-shadow:0 10px 30px #00000014}.header-inner{justify-content:space-between;align-items:center;gap:18px;display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;border-radius:0;place-items:center;width:42px;height:42px;font-size:.95rem;font-weight:650;display:grid}.brand-copy strong{font-size:.96rem;line-height:1.1;display:block}.brand-copy small{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;display:block}.menu-button{background:#0071e31f;border:0;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;display:none}.menu-button span{background:#1f1f24;border-radius:999px;width:18px;height:2px;display:block}.site-nav{align-items:center;gap:18px;display:flex}.site-nav a{color:#3f3f46;letter-spacing:.09em;text-transform:uppercase;font-size:.76rem;text-decoration:none;position:relative}.site-nav a:after{content:"";background:#1f1f24;width:0;height:1px;transition:width .25s;position:absolute;bottom:-5px;left:0}.site-nav a:hover:after,.site-nav a.active:after{width:100%}.nav-social{color:#0d56a6!important}.nav-cta{background:var(--blue);border-radius:999px;padding:10px 14px;transition:background .22s,transform .22s;color:#fff!important;font-size:.71rem!important}.nav-cta:after{display:none}.nav-cta:hover{background:var(--blue-dark);transform:translateY(-1px)}.hero-section{place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.hero-backdrop{pointer-events:none;background:linear-gradient(#ffffffd1,#f5f5f7f2),radial-gradient(circle at 18% 12%,#0071e329,#0000 34%),radial-gradient(circle at 84% 24%,#49a0ff1f,#0000 35%);position:absolute;inset:0}.orb{filter:blur(2px);border-radius:999px;animation:8s ease-in-out infinite orbFloat;position:absolute}.orb-one{background:radial-gradient(circle,#0071e33b,#0071e300);width:240px;height:240px;top:12%;right:9%}.orb-two{background:radial-gradient(circle,#5fb5ff45,#5fb5ff00);width:210px;height:210px;animation-delay:1.4s;bottom:8%;left:8%}.hero-content{z-index:2;padding:150px 0 108px;position:relative}.pill{letter-spacing:.16em;text-transform:uppercase;color:#3f3f46;background:#ffffffad;border:1px solid #0071e340;border-radius:999px;margin-bottom:18px;padding:8px 14px;font-size:.66rem;display:inline-block}h1{letter-spacing:-.03em;max-width:920px;margin:0;font-size:clamp(2rem,5vw,4.25rem);font-weight:640;line-height:1.03}.hero-text{color:#494950;max-width:760px;margin:18px 0 0;font-size:clamp(1rem,1.6vw,1.18rem)}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.btn-primary,.btn-ghost{letter-spacing:.1em;text-transform:uppercase;min-height:48px;transition:transform .24s var(--ease), background .24s ease, border-color .24s ease;border-radius:999px;place-items:center;padding:0 24px;font-size:.75rem;text-decoration:none;display:inline-grid}.btn-primary{color:#fff;background:var(--blue);box-shadow:0 16px 32px #0071e347}.btn-primary:hover{background:var(--blue-dark);transform:translateY(-2px)}.btn-ghost{color:#303036;border:1px solid var(--line-strong);background:#ffffffb3}.btn-ghost:hover{border-color:#8d8d94;transform:translateY(-2px)}.social-grid{grid-template-columns:repeat(3,minmax(140px,1fr));gap:14px;max-width:900px;margin:34px 0 0;padding:0;list-style:none;display:grid}.social-item{list-style:none}.social-card{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);min-height:94px;transition:transform .28s var(--ease), border-color .28s ease, box-shadow .28s ease;animation:7s ease-in-out infinite socialPulse;animation-delay:var(--social-delay,0s);background:#ffffffc7;border:1px solid #d2d2d7e0;align-content:center;padding:16px 18px;text-decoration:none;display:grid}.social-card:hover{border-color:#237ddd8c;transform:translateY(-4px);box-shadow:0 14px 32px #0050a01f}.social-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:.66rem;display:block}.social-card strong{letter-spacing:-.02em;font-size:clamp(1rem,1.5vw,1.08rem);line-height:1.3;display:block}.hero-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.hero-gallery-card{border:1px solid #a2bcdcb3;border-radius:16px;min-height:160px;animation:8s ease-in-out infinite floatCard;position:relative;overflow:hidden;box-shadow:0 18px 36px #1c365a29}.hero-gallery-card-2{animation-delay:.8s}.hero-gallery-card-3{animation-delay:1.6s}.hero-gallery-card img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.hero-gallery-card:after{content:"";background:linear-gradient(#0f12190d,#0a0e12ad);position:absolute;inset:0}.hero-gallery-card span{z-index:2;text-transform:uppercase;letter-spacing:.1em;color:#fff;font-size:.72rem;position:absolute;bottom:12px;left:14px}.hero-gallery-card:hover img{transform:scale(1.06)}.section{padding:clamp(70px,8vw,120px) 0}.section-soft{background:linear-gradient(#ffffff8c,#ffffffe0)}.kicker{color:#3c87dd;text-transform:uppercase;letter-spacing:.18em;margin:0 0 10px;font-size:.68rem}h2{letter-spacing:-.02em;max-width:760px;margin:0;font-size:clamp(1.7rem,3.6vw,3rem);line-height:1.08}.section-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;display:flex}.section-copy{max-width:580px;color:var(--muted);margin:0}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.process-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);padding:20px}.step-number{color:#0d56a6;letter-spacing:.1em;background:#0071e324;border-radius:13px;place-items:center;width:44px;height:44px;margin-bottom:14px;font-size:.86rem;display:inline-grid}.process-card strong{margin-bottom:8px;font-size:1.05rem;display:block}.process-card p{color:var(--muted);margin:0}.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.service-card{border:1px solid var(--line);border-radius:var(--radius-md);transition:transform .28s var(--ease), box-shadow .28s var(--ease), border-color .28s ease;background:#fffc;padding:22px}.service-card:hover{transform:perspective(1200px) translate3d(0, calc(var(--horizon-shift,0px) - 6px), 0) rotateX(var(--horizon-tilt,0deg)) scale(var(--horizon-scale,1));border-color:#95bce8;box-shadow:0 18px 36px #004d9b1f}.service-card strong{margin-bottom:7px;font-size:1.06rem;display:block}.service-card p{color:var(--muted);margin:0}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-card{border-radius:var(--radius-lg);min-height:340px;transition:transform .35s var(--ease), box-shadow .35s var(--ease);position:relative;overflow:hidden;box-shadow:0 20px 45px #0d0d1229}.project-card:hover{transform:perspective(1200px) translate3d(0, calc(var(--horizon-shift,0px) - 4px), 0) rotateX(var(--horizon-tilt,0deg)) scale(var(--horizon-scale,1));box-shadow:0 26px 52px #0d0d1236}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease);animation:11s ease-in-out infinite projectImageDrift}.project-card:nth-child(2n) img{animation-delay:1s}.project-card:nth-child(3n) img{animation-delay:2.1s}.project-card:hover img{animation:none;transform:scale(1.07)}.project-card:after{content:"";z-index:1;background:linear-gradient(#0a0a0c0d,#0a0a0cb8);position:absolute;inset:0}.project-content{color:#fff;z-index:2;position:absolute;bottom:18px;left:18px;right:18px}.project-content span{letter-spacing:.14em;text-transform:uppercase;background:#ffffff1f;border:1px solid #ffffff59;border-radius:999px;margin-bottom:8px;padding:6px 10px;font-size:.63rem;display:inline-block}.project-content strong{margin-bottom:5px;font-size:1.18rem;display:block}.project-content p{color:#ffffffdb;margin:0}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.price-card{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#fff;gap:12px;padding:24px;display:grid}.price-card header h3{margin:0 0 6px;font-size:1.2rem}.price-card header p{color:var(--muted);margin:0;font-size:.9rem}.price-values{gap:4px;display:grid}.price-original{color:#83838f;font-size:1.2rem;text-decoration:line-through;text-decoration-thickness:1.5px}.price-standard{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:1.3rem}.price-offer{color:#1d8f45;letter-spacing:-.01em;margin:0;font-size:1.34rem}.price-offer-label{color:#0f6a2e;letter-spacing:.09em;text-transform:uppercase;background:#1d8f4521;border:1px solid #1d8f4547;border-radius:999px;width:fit-content;padding:5px 10px;font-size:.62rem;font-weight:700}.price-card ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.price-card li{color:#3d3d44;padding-left:22px;position:relative}.price-card li:before{content:"";background:#0071e329;border:1px solid #0071e370;border-radius:999px;width:12px;height:12px;position:absolute;top:7px;left:0}.contact-section{background:radial-gradient(circle at 83% 10%,#0071e340,#0000 36%),linear-gradient(130deg,#eef4ff,#f4f8ff 50%,#f9fbff)}.contact-grid{grid-template-columns:1fr .95fr;align-items:start;gap:clamp(18px,3vw,34px);display:grid}.contact-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.contact-card{border-radius:var(--radius-sm);background:#ffffffbd;border:1px solid #0071e338;padding:14px}.contact-card strong{color:#0d56a6;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px;font-size:.67rem;display:block}.contact-card span{color:#3f3f46;font-size:.93rem}.contact-card a{color:#0d56a6;word-break:break-word;font-size:.93rem;text-decoration:none}.contact-card a:hover{text-decoration:underline}.quote-form{border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#ffffffd6;border:1px solid #0071e33d;gap:10px;padding:clamp(20px,3vw,28px);animation:9s ease-in-out .6s infinite floatCard;display:grid}.quote-form:hover,.quote-form:focus-within{animation-play-state:paused}.quote-form label{text-transform:uppercase;letter-spacing:.14em;color:#4e4e55;font-size:.68rem}.quote-form input,.quote-form select,.quote-form textarea{min-height:46px;font:inherit;color:#1f1f24;background:#fff;border:1px solid #c6d9f0;border-radius:12px;padding:10px 12px}.quote-form textarea{resize:vertical;min-height:130px}.quote-form button{color:#fff;background:var(--blue);letter-spacing:.12em;text-transform:uppercase;border:0;border-radius:999px;min-height:48px;margin-top:4px;font-size:.75rem;transition:background .22s,transform .22s}.quote-form button:hover{background:var(--blue-dark);transform:translateY(-1px)}.quote-form button:disabled{cursor:not-allowed;opacity:.7;transform:none}.form-note{margin:2px 0 0;font-size:.85rem}.form-note.is-success{color:#1459aa}.form-note.is-error{color:#ab2323}.quote-success-overlay{z-index:220;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:quoteOverlayIn .36s var(--ease);background:#eef5ff47;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.quote-success-card{text-align:center;width:min(680px,92vw);animation:quoteCardPop .52s var(--ease);background:linear-gradient(145deg,#fffffff2,#f1f8fff2);border:1px solid #5f9be161;border-radius:24px;padding:clamp(28px,4vw,46px);box-shadow:0 22px 58px #102b5442}.quote-success-card p{color:#165cae;text-transform:uppercase;letter-spacing:.11em;margin:0 0 8px;font-size:clamp(1.05rem,2vw,1.35rem)}.quote-success-card strong{color:#102945;letter-spacing:-.02em;margin:0;font-size:clamp(1.4rem,3.8vw,2.6rem);line-height:1.15;display:block}.site-footer{background:#f8f8faf0;border-top:1px solid #d2d2d7e6;padding:24px 0}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.footer-inner p{color:#4f4f56;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.76rem}.footer-links{flex-wrap:wrap;gap:14px;display:flex}.footer-links a{color:#0d56a6;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;text-decoration:none}.footer-links a:hover{text-decoration:underline}.reveal{--horizon-shift:0px;--horizon-tilt:0deg;--horizon-scale:1;--horizon-opacity:1;opacity:0;transform:perspective(1200px) translate3d(0, calc(24px + var(--horizon-shift)), 0) rotateX(var(--horizon-tilt)) scale(var(--horizon-scale));transform-origin:50%;will-change:transform, opacity;transition:opacity .8s var(--ease), transform .8s var(--ease);transition-delay:var(--reveal-delay,0s)}.reveal.is-visible{opacity:var(--horizon-opacity);transform:perspective(1200px) translate3d(0, var(--horizon-shift), 0) rotateX(var(--horizon-tilt)) scale(var(--horizon-scale))}.custom-cursor-ring,.custom-cursor-dot{pointer-events:none;z-index:9999;position:fixed;top:0;left:0}.custom-cursor-ring{background:#0071e30a;border:1.6px solid #0071e35c;border-radius:999px;width:30px;height:30px;transition:width .2s,height .2s,border-color .2s,background .2s}.custom-cursor-dot{background:#0071e3f5;border-radius:999px;width:7px;height:7px;transition:transform .15s,background .2s}.custom-cursor-ring.is-active{background:#0071e31a;border-color:#0071e394;width:46px;height:46px}.custom-cursor-dot.is-active{background:#0060bff2}.custom-cursor-ring.is-down{transform:scale(.85)}@keyframes orbFloat{0%,to{transform:translate(0,0)}50%{transform:translateY(-18px)}}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes socialPulse{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes projectImageDrift{0%,to{transform:scale(1.02)translate(0,0)}50%{transform:scale(1.06)translateY(-10px)}}@keyframes quoteOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes quoteCardPop{0%{opacity:0;transform:translateY(22px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1140px){.process-grid,.services-grid,.project-grid,.pricing-grid,.social-grid,.hero-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=940px){.menu-button{display:inline-flex}.site-nav{opacity:0;pointer-events:none;background:#ffffffeb;border:1px solid #d2d2d7f2;border-radius:18px;gap:12px;padding:14px;transition:opacity .24s,transform .24s;display:grid;position:fixed;top:80px;left:4vw;right:4vw;transform:translateY(-14px);box-shadow:0 18px 40px #0000001a}.site-nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-cta{justify-content:center;width:100%}.section-head{display:block}.section-copy{margin-top:12px}.contact-grid{grid-template-columns:1fr}.contact-grid>*,.quote-form-wrap,.quote-form{min-width:0}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-width:0}.quote-form select{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}@media (width<=720px){.hero-content{padding:122px 0 76px}.social-grid,.contact-cards{grid-template-columns:1fr}.hero-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.hero-actions .btn-primary,.hero-actions .btn-ghost{letter-spacing:.08em;width:100%;min-height:46px;padding:0 14px;font-size:.66rem}.process-grid,.services-grid,.project-grid,.pricing-grid{grid-template-columns:1fr}.project-card{min-height:280px}.quote-form{padding:18px}.price-card{padding:20px}.price-original,.price-standard,.price-offer{overflow-wrap:anywhere}.price-offer-label{white-space:normal;max-width:100%;line-height:1.25}}@media (width<=520px){.hero-gallery{grid-template-columns:1fr}}@media (hover:none),(pointer:coarse){body{cursor:auto}.custom-cursor-ring,.custom-cursor-dot{display:none}}@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{opacity:1!important;transform:none!important}.hero-gallery-card,.social-card,.quote-form,.project-card img,.quote-success-overlay,.quote-success-card{animation:none!important}}
