:root{--bg-1: #eef6fc;--bg-2: #e2eff9;--ink: #0b2a3d;--ink-soft: #3d6075;--accent: #1b86cf;--accent-2: #5db4ec;--accent-deep: #0c5e99;--glass: rgba(255, 255, 255, .42);--glass-strong: rgba(255, 255, 255, .62);--glass-border: rgba(255, 255, 255, .75);--glass-shadow: 0 18px 50px -18px rgba(12, 64, 102, .28);--radius: 26px;--ease: cubic-bezier(.22, 1, .36, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:auto}body{font-family:Manrope,system-ui,sans-serif;color:var(--ink);background:linear-gradient(160deg,var(--bg-1) 0%,var(--bg-2) 45%,#d7eaf7 100%);overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,.display{font-family:Sora,sans-serif}::selection{background:#1b86cf40}.bg-blobs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;overflow:hidden}.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}.blob.b1{width:46vw;height:46vw;top:-14vw;left:-10vw;background:radial-gradient(circle,#bfe3fa,#bfe3fa00 70%)}.blob.b2{width:40vw;height:40vw;top:24vh;right:-14vw;background:radial-gradient(circle,#9fd2f4,#9fd2f400 70%)}.blob.b3{width:34vw;height:34vw;bottom:-10vw;left:22vw;background:radial-gradient(circle,#d6ecfb,#d6ecfb00 70%)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.18'/%3E%3C/svg%3E")}.glass{background:var(--glass);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px #ffffffe6;border-radius:var(--radius);position:relative}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,#ffffff8c,#fff0 32%,#fff0 68%,#ffffff47)}.sheen{overflow:hidden}.sheen:after{content:"";position:absolute;top:-60%;left:-80%;width:55%;height:220%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.65),transparent);transform:skew(-20deg);transition:left 1s var(--ease)}.sheen:hover:after{left:140%}.sheen-auto:after{left:-80%;animation:sheen-sweep 5s var(--ease) infinite}@keyframes sheen-sweep{0%,18%{left:-80%}45%{left:140%}to{left:140%}}.bottom-banner{position:fixed;bottom:8px;left:8px;right:8px;z-index:120;max-width:min(1160px,calc(100% - 16px));margin:0 auto;border-radius:22px;padding:22px 26px;transform:translateY(calc(100% + 20px));opacity:0;visibility:hidden;pointer-events:none;transition:transform .65s var(--ease),opacity .5s var(--ease),visibility .65s}.bottom-banner.is-visible{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.bottom-banner__inner{position:relative;z-index:1;display:flex;align-items:center;gap:24px}.bottom-banner__content{flex:1;min-width:0}.bottom-banner__title{font-family:Sora,sans-serif;font-size:clamp(1.05rem,2.4vw,1.28rem);font-weight:700;letter-spacing:-.01em;line-height:1.25;margin-bottom:8px}.bottom-banner__body{color:var(--ink-soft);font-size:clamp(.82rem,1.8vw,.9rem);line-height:1.65}.bottom-banner__body a{color:var(--accent-deep);font-weight:700;text-decoration:none;white-space:nowrap}.bottom-banner__body a:hover{color:var(--accent)}.bottom-banner__actions{display:flex;flex-shrink:0;gap:10px;flex-wrap:wrap}.bottom-banner__actions .btn{padding:13px 24px;font-size:.88rem;white-space:nowrap}nav.site-nav{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:8px;padding:10px 12px 10px 20px;border-radius:99px;width:min(1060px,calc(100% - 32px));justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}.nav-logo .mark{width:38px;height:38px;border-radius:12px;flex:none;background:linear-gradient(135deg,var(--accent-2),var(--accent-deep));display:block;padding:7px;color:#fff;box-shadow:0 8px 18px -6px #0c5e9980}.nav-logo b{font-family:Sora,sans-serif;font-size:.92rem;line-height:1.15;display:block}.nav-logo span span{font-size:.68rem;color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase}.nav-links{display:flex;gap:4px;list-style:none}.nav-links a{text-decoration:none;color:var(--ink-soft);font-size:.86rem;font-weight:600;padding:9px 15px;border-radius:99px;transition:.3s}.nav-links a:hover{background:#ffffffa6;color:var(--accent-deep)}.nav-cta{text-decoration:none;background:var(--ink);color:#fff;font-weight:700;font-size:.85rem;padding:11px 20px;border-radius:99px;transition:transform .3s var(--ease),box-shadow .3s;box-shadow:0 10px 24px -8px #0b2a3d73;white-space:nowrap}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 16px 30px -8px #0b2a3d80}.burger{display:none;width:44px;height:44px;border-radius:99px;border:1px solid var(--glass-border);background:#fff9;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.burger i{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;transition:.35s var(--ease)}.burger.open i:nth-child(1){transform:translateY(7px) rotate(45deg)}.burger.open i:nth-child(2){opacity:0}.burger.open i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#eef6fcbf;backdrop-filter:blur(30px) saturate(1.4);-webkit-backdrop-filter:blur(30px) saturate(1.4);opacity:0;visibility:hidden;transition:.45s var(--ease)}.mobile-menu.open{opacity:1;visibility:visible}.mobile-menu a{font-family:Sora,sans-serif;font-size:clamp(1.6rem,7vw,2.2rem);font-weight:700;color:var(--ink);text-decoration:none;padding:10px 26px;border-radius:18px;transition:.3s;transform:translateY(18px);opacity:0}.mobile-menu.open a{transform:none;opacity:1}.mobile-menu a:nth-child(1){transition-delay:.05s}.mobile-menu a:nth-child(2){transition-delay:.1s}.mobile-menu a:nth-child(3){transition-delay:.15s}.mobile-menu a:nth-child(4){transition-delay:.2s}.mobile-menu a:nth-child(5){transition-delay:.25s}.mobile-menu a:nth-child(6){transition-delay:.3s}.mobile-menu a:hover{color:var(--accent)}.wrap{width:min(1160px,calc(100% - 40px));margin:0 auto}section{position:relative;padding:110px 0}.kicker{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--accent-deep);padding:8px 16px;border-radius:99px;background:#ffffff8c;border:1px solid var(--glass-border);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);margin-bottom:22px}.kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #1b86cf2e}.h2{font-size:clamp(2rem,5vw,3.2rem);font-weight:700;letter-spacing:-.02em;line-height:1.08}.h2 em{font-style:normal;background:linear-gradient(95deg,var(--accent-deep),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.lead{color:var(--ink-soft);font-size:1.05rem;line-height:1.7;max-width:560px;margin-top:18px}#hero{min-height:100svh;display:flex;align-items:center;padding:150px 0 90px;overflow:hidden}.hero-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.hero-canvas canvas{display:block}.hero-inner{position:relative;z-index:2;width:min(1160px,calc(100% - 40px));margin:0 auto}.hero-badge{display:inline-flex;align-items:center;gap:10px;padding:9px 18px;border-radius:99px;font-size:.8rem;font-weight:600;color:var(--ink-soft);margin-bottom:28px}.hero-badge .dot{width:8px;height:8px;border-radius:50%;background:#2ec27e;box-shadow:0 0 0 4px #2ec27e33;animation:pulse 2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 7px #2ec27e14}}h1.hero-title{font-size:clamp(2.7rem,8vw,5.6rem);font-weight:800;letter-spacing:-.03em;line-height:1.02;max-width:13ch}.hero-title .grad{background:linear-gradient(95deg,var(--accent-deep) 10%,var(--accent) 55%,var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-title .line{display:block;overflow:hidden}.hero-title .line span{display:inline-block;will-change:transform}.hero-sub{margin-top:26px;font-size:clamp(1rem,2.2vw,1.18rem);color:var(--ink-soft);max-width:54ch;line-height:1.7}.hero-ctas{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:.95rem;padding:16px 30px;border-radius:99px;transition:transform .35s var(--ease),box-shadow .35s;cursor:pointer;border:none;font-family:Manrope,sans-serif}.btn-primary{background:linear-gradient(120deg,var(--accent-deep),var(--accent));color:#fff;box-shadow:0 16px 34px -10px #0c5e998c,inset 0 1px #ffffff59}.btn-primary:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 22px 44px -12px #0c5e9999}.btn-ghost{color:var(--ink);background:#ffffff80;border:1px solid var(--glass-border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.btn-ghost:hover{transform:translateY(-3px);background:#ffffffbf}.btn svg{flex:none}.hero-stats{display:flex;gap:12px;margin-top:54px;flex-wrap:wrap}.stat-pill{padding:18px 26px;border-radius:22px;min-width:150px}.stat-pill b{font-family:Sora,sans-serif;font-size:1.7rem;font-weight:800;display:block;color:var(--accent-deep)}.stat-pill p{font-size:.78rem;color:var(--ink-soft);font-weight:600;letter-spacing:.04em}.scroll-hint{position:absolute;bottom:26px;left:50%;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ink-soft);font-size:.68rem;letter-spacing:.25em;text-transform:uppercase}.scroll-hint .wheel{width:24px;height:38px;border:2px solid rgba(61,96,117,.4);border-radius:99px;position:relative}.scroll-hint .wheel:after{content:"";position:absolute;top:7px;left:50%;width:4px;height:8px;margin-left:-2px;border-radius:99px;background:var(--accent);animation:wheel 1.8s infinite}@keyframes wheel{0%{transform:translateY(0);opacity:1}70%{transform:translateY(12px);opacity:0}to{opacity:0}}.marquee{padding:0;border-top:1px solid rgba(255,255,255,.7);border-bottom:1px solid rgba(255,255,255,.7);background:#ffffff59;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);overflow:hidden}.marquee-track{display:flex;gap:0;white-space:nowrap;width:max-content;padding:20px 0;will-change:transform}.marquee-track .marquee-item{font-family:Sora,sans-serif;font-weight:700;font-size:clamp(1rem,2.4vw,1.4rem);color:var(--ink);padding:0 28px;display:inline-flex;align-items:center;gap:12px}.marquee-track .marquee-item__img{width:clamp(28px,4vw,40px);height:clamp(28px,4vw,40px);border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid rgba(255,255,255,.85);box-shadow:0 2px 8px #0c406626}.marquee-track .marquee-item:after{content:"✦";color:var(--accent);font-size:.9em;margin-left:16px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:58px}.service-card{padding:34px 30px;transition:transform .5s var(--ease),box-shadow .5s;will-change:transform}.service-card:hover{box-shadow:0 30px 60px -20px #0c406666,inset 0 1px #ffffffe6}.service-card .icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;margin-bottom:22px;background:linear-gradient(135deg,#5db4ec4d,#0c5e9929);border:1px solid rgba(255,255,255,.8);color:var(--accent-deep);box-shadow:inset 0 1px #fff,0 8px 18px -8px #0c5e994d}.service-card h3{font-size:1.22rem;font-weight:700;margin-bottom:12px;letter-spacing:-.01em}.service-card p{color:var(--ink-soft);font-size:.92rem;line-height:1.65}.service-card .num{position:absolute;top:26px;right:28px;font-family:Sora,sans-serif;font-weight:800;font-size:.8rem;color:#0c5e9973;letter-spacing:.1em}.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;margin-top:14px}.about-visual{position:relative;min-height:420px}.about-pane{position:absolute;border-radius:28px;will-change:transform}.about-pane.p1{top:8%;right:18%;bottom:22%;left:0;background:linear-gradient(140deg,#ffffffb3,#add8f459);z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:30px}.about-pane.p2{top:0;right:0;bottom:50%;left:42%;background:linear-gradient(140deg,#ffffff8c,#8cc8f04d);z-index:1}.about-pane.p3{top:70%;right:8%;bottom:0;left:36%;background:linear-gradient(140deg,#fff9,#6cb8ea52);z-index:3;display:flex;align-items:center;justify-content:center;gap:14px;padding:20px}.about-pane .quote{font-family:Sora,sans-serif;font-weight:600;font-size:1.05rem;line-height:1.5;color:var(--ink)}.about-pane .who{margin-top:10px;font-size:.8rem;color:var(--ink-soft);font-weight:600}.about-pane.p3 b{font-family:Sora,sans-serif;font-size:1.9rem;color:var(--accent-deep)}.about-pane.p3 span{font-size:.78rem;color:var(--ink-soft);font-weight:600;line-height:1.4}.numbers{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:40px}.num-card{padding:26px 26px 22px;border-radius:22px}.num-card b{font-family:Sora,sans-serif;font-size:clamp(1.9rem,4vw,2.6rem);font-weight:800;color:var(--accent-deep);display:block;letter-spacing:-.02em}.num-card p{font-size:.84rem;color:var(--ink-soft);font-weight:600}.checklist{list-style:none;margin-top:26px;display:grid;gap:13px}.checklist li{display:flex;gap:12px;align-items:flex-start;color:var(--ink-soft);font-size:.95rem;line-height:1.55}.checklist svg{flex:none;margin-top:2px;color:var(--accent)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:58px}.step-card{padding:30px 26px;border-radius:24px}.step-card .step-num{font-family:Sora,sans-serif;font-weight:800;font-size:2.4rem;letter-spacing:-.03em;background:linear-gradient(135deg,var(--accent-deep),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:14px}.step-card h3{font-size:1.05rem;margin-bottom:10px}.step-card p{font-size:.86rem;color:var(--ink-soft);line-height:1.6}.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:230px;gap:20px;margin-top:58px}.tile{border-radius:24px;position:relative;overflow:hidden;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;align-items:flex-end;padding:22px;transition:transform .5s var(--ease)}.tile:hover{transform:translateY(-6px)}.tile.tall{grid-row:span 2}.tile .label{position:relative;z-index:2;background:#ffffff8c;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:14px;padding:10px 16px;font-family:Sora,sans-serif;font-weight:600;font-size:.86rem;color:var(--ink)}.tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,rgba(255,255,255,.4) 0%,transparent 40%)}.tile .shard{position:absolute;border-radius:30%;filter:blur(2px);opacity:.7}.t1{background:linear-gradient(135deg,#bde0f7,#7fc0ec 60%,#4a9fdd)}.t2{background:linear-gradient(150deg,#e8f4fc,#a8d4f1 70%,#6cb2e4)}.t3{background:linear-gradient(120deg,#cfe8f9,#8ec9ef 55%,#3e93d4)}.t4{background:linear-gradient(160deg,#ddeffb,#9bcef1 65%,#5aa8e0)}.t5{background:linear-gradient(130deg,#c4e2f8,#74b9e9 60%,#2f86c9)}.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:58px}.testi-card{padding:30px 28px;display:flex;flex-direction:column;gap:18px}.stars{color:#f5a623;letter-spacing:3px;font-size:.9rem}.testi-card p{color:var(--ink-soft);font-size:.93rem;line-height:1.7;flex:1}.testi-who{display:flex;align-items:center;gap:13px}.avatar{width:44px;height:44px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-family:Sora,sans-serif;font-weight:700;font-size:.9rem;color:#fff;background:linear-gradient(135deg,var(--accent-2),var(--accent-deep))}.testi-who b{font-size:.9rem;display:block}.testi-who span{font-size:.76rem;color:var(--ink-soft)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:26px;margin-top:58px}.contact-info{padding:38px 34px;display:flex;flex-direction:column;gap:8px}.info-row{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.6)}.info-row:last-of-type{border-bottom:none}.info-row .ic{width:44px;height:44px;border-radius:14px;flex:none;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#5db4ec47,#0c5e9929);color:var(--accent-deep);border:1px solid rgba(255,255,255,.8)}.info-row b{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft);display:block;margin-bottom:4px;font-weight:700}.info-row a,.info-row p{color:var(--ink);font-weight:600;text-decoration:none;font-size:1rem;line-height:1.5}.info-row a:hover{color:var(--accent)}.info-note{font-size:.82rem;color:var(--ink-soft);font-weight:500;margin-top:4px}.hours{display:flex;justify-content:space-between;font-size:.92rem;padding:6px 0;color:var(--ink)}.hours span:last-child{font-weight:700}.hours.closed span:last-child{color:#c0392b;font-weight:600}.contact-form{padding:38px 34px}.contact-form h3{font-size:1.3rem;margin-bottom:6px}.contact-form .sub{font-size:.88rem;color:var(--ink-soft);margin-bottom:24px}.field{margin-bottom:16px}.field label:not(.glass-checkbox){display:block;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px}.field input:not(.glass-checkbox__input),.field textarea,.field select{width:100%;padding:14px 18px;border-radius:16px;font-family:Manrope,sans-serif;font-size:.95rem;color:var(--ink);background:#ffffff8c;border:1px solid var(--glass-border);outline:none;transition:.3s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.field textarea{resize:vertical;min-height:110px}.field input:not(.glass-checkbox__input):focus,.field textarea:focus,.field select:focus{border-color:var(--accent);background:#ffffffd9;box-shadow:0 0 0 4px #1b86cf24}.field--invalid input:not(.glass-checkbox__input),.field--invalid textarea,.field--invalid select{border-color:#b42318;box-shadow:0 0 0 4px #b423181f}.field-hint{margin-top:6px;font-size:.78rem;line-height:1.4;color:#b42318;font-weight:600}.field--consent{margin-top:6px;margin-bottom:24px}.field--consent .field-hint{margin-top:10px}.field .glass-checkbox{display:flex;font-weight:500;color:inherit}.glass-checkbox{display:flex;align-items:flex-start;gap:16px;cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:0;letter-spacing:normal;text-transform:none}.glass-checkbox__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.field .glass-checkbox__input{width:1px;height:1px;padding:0;border-radius:0}.glass-checkbox__box{position:relative;display:inline-flex;flex:none;flex-shrink:0;width:26px;min-width:26px;height:26px;min-height:26px;margin-top:1px;border-radius:9px;overflow:hidden;background:#ffffff8c;backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(10px) saturate(1.4);border:1px solid var(--glass-border);box-shadow:inset 0 1px #ffffffeb,0 4px 12px -4px #0c40662e;transition:background .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease),transform .35s var(--ease)}.glass-checkbox__box:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#fff9,#fff0 45%,#ffffff40)}.glass-checkbox__box:after{content:"";position:absolute;top:-60%;left:-80%;width:55%;height:220%;pointer-events:none;background:linear-gradient(105deg,transparent,rgba(255,255,255,.7),transparent);transform:skew(-20deg);transition:left .85s var(--ease)}.glass-checkbox:hover .glass-checkbox__box:after{left:140%}.glass-checkbox__mark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transform:scale(.45);transition:opacity .25s var(--ease),transform .35s var(--ease)}.glass-checkbox:has(.glass-checkbox__input:checked) .glass-checkbox__box{background:linear-gradient(135deg,var(--accent-deep),var(--accent));border-color:#ffffff8c;box-shadow:inset 0 1px #ffffff59,0 8px 20px -6px #0c5e998c}.glass-checkbox:has(.glass-checkbox__input:checked) .glass-checkbox__mark{opacity:1;transform:scale(1);animation:check-pop .4s var(--ease)}@keyframes check-pop{0%{transform:scale(.45);opacity:0}55%{transform:scale(1.14);opacity:1}to{transform:scale(1);opacity:1}}.glass-checkbox:has(.glass-checkbox__input:focus-visible) .glass-checkbox__box{border-color:var(--accent);box-shadow:inset 0 1px #ffffffeb,0 0 0 4px #1b86cf24}.glass-checkbox--invalid .glass-checkbox__box,.field--invalid .glass-checkbox__box{border-color:#b42318;box-shadow:inset 0 1px #ffffffeb,0 0 0 4px #b423181f}.glass-checkbox__text{flex:1;min-width:0;font-size:.84rem;line-height:1.6;color:var(--ink-soft);font-weight:500;padding-top:2px}.glass-checkbox__text a{color:var(--accent-deep);font-weight:700;text-decoration:none}.glass-checkbox__text a:hover{color:var(--accent)}.form-note{font-size:.76rem;color:var(--ink-soft);margin-top:14px;line-height:1.5}.form-note a{color:var(--accent-deep);font-weight:700;text-decoration:none}.form-status{font-size:.84rem;margin-top:14px;line-height:1.5;font-weight:600}.form-status--success{color:#1a7f4b}.form-status--error{color:#b42318}.btn-full{width:100%;justify-content:center}.cta-band{padding:64px 50px;text-align:center;border-radius:34px}.cta-band h2{font-size:clamp(1.7rem,4.4vw,2.7rem);letter-spacing:-.02em;max-width:22ch;margin:0 auto 16px}.cta-band p{color:var(--ink-soft);max-width:48ch;margin:0 auto 32px;line-height:1.65}.section-tight{padding-top:0}footer{padding:60px 0 36px;border-top:1px solid rgba(255,255,255,.7);background:#ffffff4d;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.footer-grid{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start}.footer-grid .col p{font-size:.86rem;color:var(--ink-soft);line-height:1.7;max-width:32ch;margin-top:12px}.footer-links{list-style:none;display:grid;gap:9px;margin-top:12px}.footer-links a,.footer-links li{color:var(--ink-soft);text-decoration:none;font-size:.88rem;font-weight:600;transition:.25s}.footer-links a:hover{color:var(--accent-deep)}.footer-grid h4{font-family:Sora,sans-serif;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.copy{margin-top:44px;padding-top:22px;border-top:1px solid rgba(11,42,61,.08);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.78rem;color:var(--ink-soft)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 900px){section{padding:80px 0}.nav-links{display:none}.burger{display:flex}.services-grid,.testi-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr;gap:34px}.about-visual{min-height:360px}.contact-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}}@media (max-width: 720px){.bottom-banner{padding:18px 20px;border-radius:20px}.bottom-banner__inner{flex-direction:column;align-items:stretch;gap:18px}.bottom-banner__actions{justify-content:stretch}.bottom-banner__actions .btn{flex:1;justify-content:center;min-width:0}}@media (max-width: 580px){.services-grid,.testi-grid,.process-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-auto-rows:190px}.tile.tall{grid-row:span 1}.hero-stats{gap:10px}.stat-pill{min-width:calc(50% - 5px);padding:15px 18px}.numbers{grid-template-columns:1fr 1fr;gap:12px}.cta-band{padding:48px 24px}.contact-info,.contact-form{padding:28px 22px}nav.site-nav{top:12px}.nav-logo b{font-size:.8rem}.nav-cta,.scroll-hint{display:none}}.card-cta{display:inline-flex;align-items:center;gap:7px;margin-top:16px;font-family:Sora,sans-serif;font-size:.84rem;font-weight:700;color:var(--accent-deep);text-decoration:none;transition:gap .3s var(--ease),color .3s}.card-cta:hover{gap:11px;color:var(--accent)}.card-cta .flip,.back-link .flip{transform:rotate(180deg)}.blog-page{min-height:60vh}.blog-hero{padding:170px 0 50px}.blog-search{margin-top:34px;display:flex;align-items:center;gap:12px;padding:6px 6px 6px 20px;border-radius:99px;max-width:420px;color:var(--ink-soft)}.blog-search input{flex:1;border:none;outline:none;background:transparent;font-family:Manrope,sans-serif;font-size:.95rem;color:var(--ink);padding:12px 12px 12px 0}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{padding:30px 28px;display:flex;flex-direction:column}.post-card time{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);display:block;margin-bottom:12px}.post-card h3{font-size:1.18rem;line-height:1.3;margin-bottom:10px;letter-spacing:-.01em}.post-card h3 a{color:var(--ink);text-decoration:none;transition:color .25s}.post-card h3 a:hover{color:var(--accent-deep)}.post-card p{color:var(--ink-soft);font-size:.9rem;line-height:1.65;flex:1}.blog-empty{padding:44px 38px;text-align:center;color:var(--ink-soft)}.blog-empty h1{font-size:1.5rem;margin-bottom:10px;color:var(--ink)}.post-page{padding:170px 0 110px}.wrap-narrow{max-width:780px}.back-link{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;font-family:Sora,sans-serif;font-size:.86rem;font-weight:700;color:var(--accent-deep);text-decoration:none}.back-link:hover{color:var(--accent)}.post-body{padding:48px 46px}.post-body time{font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);display:block;margin-bottom:14px}.post-body h1{font-size:clamp(1.7rem,4.5vw,2.5rem);letter-spacing:-.02em;line-height:1.15;margin-bottom:26px}.prose{color:var(--ink-soft);line-height:1.75;font-size:1rem}.prose p{margin-bottom:18px}.prose h2{font-size:1.4rem;color:var(--ink);letter-spacing:-.01em;margin:34px 0 14px}.prose h3{font-size:1.12rem;color:var(--ink);margin:26px 0 12px}.prose ul{margin:0 0 18px 22px;display:grid;gap:8px}.prose strong{color:var(--ink)}.prose a{color:var(--accent-deep);font-weight:600}.prose code{background:#fff9;border:1px solid var(--glass-border);border-radius:6px;padding:1px 7px;font-size:.88em}@media (max-width: 900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 580px){.blog-grid{grid-template-columns:1fr}.blog-hero{padding:140px 0 30px}.post-page{padding:140px 0 80px}.post-body{padding:32px 24px}}.tile-wrap{display:block}.tile-wrap.tall{grid-row:span 2}a.tile{display:flex;height:100%;width:100%;text-decoration:none;cursor:pointer}.tile.has-img{background-size:cover;background-position:center}.tile.has-img:after{background:linear-gradient(180deg,#0b2a3d00 40%,#0b2a3d59)}.tile-go{position:absolute;top:16px;right:16px;z-index:2;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff8c;border:1px solid var(--glass-border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--accent-deep);opacity:0;transform:translateY(6px) rotate(-45deg);transition:opacity .35s var(--ease),transform .35s var(--ease)}.tile:hover .tile-go{opacity:1;transform:translateY(0) rotate(-45deg)}@media (max-width: 580px){.tile-wrap.tall{grid-row:span 1}.tile-go{opacity:1;transform:rotate(-45deg)}}.transition-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;visibility:hidden;opacity:0;pointer-events:none;overflow:hidden;background:linear-gradient(135deg,#ffffff9e,#bee0f780 50%,#ffffff94);backdrop-filter:blur(30px) saturate(1.6);-webkit-backdrop-filter:blur(30px) saturate(1.6);display:flex;align-items:center;justify-content:center;will-change:clip-path}.transition-sheen{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;pointer-events:none;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.75) 50%,transparent 70%);transform:skew(-18deg)}.transition-mark{width:76px;height:76px;border-radius:22px;display:block;padding:14px;color:var(--accent-deep);background:#ffffffb3;border:1px solid rgba(255,255,255,.9);box-shadow:0 20px 40px -12px #145a8c4d,inset 0 1px #fff}.realization-page{padding:150px 0 110px;min-height:70vh}.realization-hero{position:relative;min-height:380px;border-radius:30px;overflow:hidden;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;align-items:flex-end;padding:26px}.realization-hero.has-img{background-size:cover;background-position:center}.realization-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0b2a3d00 45%,#0b2a3d4d);pointer-events:none}.realization-hero .shard{position:absolute;border-radius:30%;filter:blur(2px);opacity:.7}.realization-hero-panel{position:relative;z-index:2;padding:24px 30px;border-radius:22px;max-width:560px}.realization-hero-panel h1{font-size:clamp(1.6rem,4.4vw,2.4rem);letter-spacing:-.02em;line-height:1.12}.realization-place{display:inline-flex;align-items:center;gap:7px;margin-top:10px;font-size:.88rem;font-weight:600;color:var(--ink-soft)}.realization-body{padding:40px 42px;margin-top:26px}.realization-gallery-head{margin-top:70px}.realization-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.gallery-thumb{display:block;width:100%;aspect-ratio:4 / 3;padding:0;cursor:zoom-in;border-radius:20px;overflow:hidden;border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);background:#fff6;transition:transform .45s var(--ease),box-shadow .45s}.gallery-thumb:hover{transform:translateY(-5px) scale(1.015)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}.gallery-thumb:hover img{transform:scale(1.06)}.realization-cta{margin-top:70px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;cursor:zoom-out;display:flex;align-items:center;justify-content:center;padding:4vmin;background:#eef6fc8c;backdrop-filter:blur(26px) saturate(1.4);-webkit-backdrop-filter:blur(26px) saturate(1.4);animation:lightbox-in .35s var(--ease)}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.lightbox img{max-width:100%;max-height:100%;border-radius:18px;border:1px solid rgba(255,255,255,.85);box-shadow:0 40px 90px -30px #0c406680}.lightbox-close{position:absolute;top:22px;right:22px;width:46px;height:46px;border-radius:50%;cursor:pointer;border:1px solid var(--glass-border);background:#ffffffa6;font-size:1rem;color:var(--ink);font-weight:700}@media (max-width: 900px){.realization-gallery{grid-template-columns:repeat(2,1fr)}}@media (max-width: 580px){.realization-page{padding:130px 0 80px}.realization-hero{min-height:280px;padding:16px}.realization-body{padding:28px 22px}.realization-gallery{grid-template-columns:1fr}}
