:root{--paper:#142621;--surface:#1d3831;--ink:#ffffff;--muted:#cbd7d3;--accent:#c7f55d;--purple:#57bf9c;--border-color:#628277;--line:rgba(152,178,169,.45);--glass:rgba(255,255,255,.05);--font-family:Manrope,Arial,sans-serif;--font-size-13:1.3rem;--font-size-16:1.6rem;--font-size-17:1.7rem;--font-size-18:1.8rem;--font-size-20:2rem;--font-size-22:2.2rem;--font-size-24:2.4rem;--font-size-30:3rem;--font-size-49:4.9rem;--font-size-55:5.5rem;--space-5:.5rem;--space-10:1rem;--space-15:1.5rem;--space-20:2rem;--space-25:2.5rem;--space-30:3rem;--space-35:3.5rem;--space-40:4rem;--space-45:4.5rem;--space-50:5rem;--space-55:5.5rem;--space-60:6rem;--space-75:7.5rem;--space-95:9.5rem;--radius-6:.6rem;--radius-16:1.6rem;--radius-24:2.4rem;--radius-30:3rem;--radius-44:4.4rem;--thin:.1rem;--white:#ffffff;--ui-paper:#182f29;--ui-ink:#ffffff;--ui-surface:#1e3b33;--shadow:rgba(199,245,93,.24)}
*{box-sizing:border-box}html{font-size:.625vw;scroll-behavior:smooth;scroll-padding-top:var(--space-30)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-family);font-size:var(--font-size-22);line-height:1.2;overflow-x:clip}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img,svg{display:block;max-width:100%;height:auto}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:.3rem solid var(--accent);outline-offset:.4rem}::selection{background:var(--accent);color:var(--white)}.container{width:129rem;max-width:calc(100% - 12rem);margin-inline:auto}.header,.main,.footer{position:relative;z-index:1}.b-stage{position:relative;isolation:isolate;min-height:240rem;overflow:clip}.b-skip{clip-path:inset(100%);position:fixed;z-index:300;top:var(--space-10);left:var(--space-10);padding:var(--space-15);background:var(--accent);transform:translateY(-200%)}.b-skip:focus{clip-path:none;transform:none}.b-logo{display:inline-flex;align-items:center;gap:var(--space-15);font-size:var(--font-size-30);font-weight:800;white-space:nowrap;letter-spacing:-.1rem}.b-logo__mark{display:block;width:5rem;height:5rem;flex-shrink:0}.b-logo__mark>svg{width:100%;height:100%}.b-header{height:14rem;display:flex;align-items:center;gap:var(--space-40);width:135rem}.b-header__nav{display:flex;gap:var(--space-50);margin-inline:auto;font-size:var(--font-size-16);font-weight:600}.b-header__nav a:hover,.b-footer a:hover,.b-footer button:hover,.b-footer__bottom a:hover{color:var(--accent)}.b-phone{display:inline-flex;align-items:center;gap:var(--space-15);font-size:var(--font-size-18);font-weight:700;white-space:nowrap}.b-phone svg{width:2.2rem;height:2.2rem}.b-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-20);min-height:7rem;padding:var(--space-20) var(--space-40);border:var(--thin) solid var(--accent);border-radius:var(--radius-44);background:var(--accent);color:var(--white);font-size:var(--font-size-22);font-weight:700;box-shadow:0 .7rem 3rem var(--shadow);transition:transform .25s,box-shadow .25s,background .25s;cursor:pointer}.b-button svg{width:2.4rem;height:2.4rem;flex-shrink:0}.b-button:hover{background:#cbf569;border-color:#cff674;box-shadow:0 0 4rem var(--shadow);transform:translateY(-.3rem)}.b-button.is-compact{min-height:5.6rem;padding:var(--space-15) var(--space-25);font-size:var(--font-size-16);gap:var(--space-10)}.b-button.is-compact svg{width:1.8rem;height:1.8rem}.b-title{font-size:var(--font-size-49);font-weight:800;letter-spacing:-.15rem;line-height:1.14}.b-text{font-size:var(--font-size-22);line-height:1.35}.b-eyebrow{display:inline-flex;align-items:center;gap:var(--space-15);padding:var(--space-15) var(--space-20);border:var(--thin) solid var(--line);border-radius:var(--radius-30);background:linear-gradient(100deg,#1c3730,#1e3932);font-size:var(--font-size-18);font-weight:600;line-height:1.2}.b-eyebrow>span{display:block;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--accent);box-shadow:0 0 2rem var(--accent)}
.b-hero__inner{position:relative;min-height:70.5rem;padding:var(--space-75) var(--space-20) 0}.b-hero__copy{position:relative;z-index:2;max-width:90rem;pointer-events:none}.b-hero__copy button{pointer-events:auto}.b-hero__title{font-size:var(--font-size-55);font-weight:800;line-height:1.08;letter-spacing:-.15rem}.b-hero__scene{position:absolute;width:49rem;height:34.5rem;right:1.5rem;top:22.5rem;pointer-events:none;transform:translate3d(calc(var(--mx,0)*1.2rem),calc(var(--my,0)*.8rem),0);transition:transform .7s ease-out}.b-hero__scene>svg{width:100%;height:100%}.b-hero__scene::after{content:'';position:absolute;inset:65% -10% -10%;z-index:-1;background:radial-gradient(ellipse,rgba(99,196,164,.4),transparent 65%);filter:blur(1rem);animation:glow-breathe 8s ease-in-out infinite alternate}.b-hero__actions{display:flex;align-items:center;gap:var(--space-50)}.b-gift{display:flex;align-items:center;gap:var(--space-20);padding-left:var(--space-45);border-left:var(--thin) solid #607f75;font-size:var(--font-size-18)}.b-gift__image{width:8rem;height:9rem;flex-shrink:0;animation:gift-float 7s ease-in-out infinite}.b-gift__image>svg{width:100%;height:100%}.b-gift p{white-space:nowrap}.b-gift strong{color:var(--accent);font-size:var(--font-size-20)}
.b-guarantee{position:relative;display:grid;grid-template-columns:60rem 1fr;align-items:center;min-height:58.5rem;padding:var(--space-50) var(--space-75) var(--space-40);border:var(--thin) solid var(--border-color);border-radius:var(--radius-44);background:linear-gradient(130deg,rgba(35,68,58,.95),rgba(23,45,39,.96));margin-bottom:var(--space-95)}.b-guarantee__copy{position:relative;z-index:1;max-width:60rem}.b-note{display:flex;align-items:flex-start;gap:var(--space-30);padding:var(--space-20) var(--space-25);border:var(--thin) solid #73968a;border-radius:var(--radius-24);background:linear-gradient(130deg,#284e43,#1f3c34);font-size:var(--font-size-17);line-height:1.35}.b-note>img{width:5.3rem;height:5.3rem;flex-shrink:0}.b-note__title{font-size:var(--font-size-20);font-weight:800;line-height:1.4}.b-contract{position:absolute;right:4rem;top:5.5rem;width:51.5rem;height:47rem;pointer-events:none}.b-contract__layer{position:absolute;inset:0}.b-contract__layer>svg{width:100%;height:100%}.b-benefits{padding-bottom:var(--space-30)}.b-benefits .b-title{font-size:var(--font-size-55)}.b-benefits__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-30)}.b-card{position:relative;isolation:isolate;overflow:clip;min-width:0;min-height:28.8rem;padding:var(--space-30) var(--space-45) var(--space-20);border:var(--thin) solid var(--border-color);border-radius:var(--radius-30);background:linear-gradient(135deg,#24463c,#1a332c);transform:perspective(100rem) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s ease-out,border-color .3s,box-shadow .3s}.b-card::before{content:'';position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(circle at var(--bx,50%) var(--by,50%),rgba(199,245,93,.13),transparent 65%);transition:opacity .3s}.b-card:hover{border-color:#76988d;box-shadow:0 0 3rem rgba(105,140,128,.18)}.b-card:hover::before{opacity:1}.b-card__head{display:flex;align-items:center;gap:var(--space-30);margin-bottom:var(--space-25)}.b-card__icon{display:grid;place-items:center;width:7.5rem;height:7.5rem;flex-shrink:0;border:var(--thin) solid #6b8e82;border-radius:var(--radius-24);background:linear-gradient(130deg,#4b645c,#25483e)}.b-card__icon img{width:5rem;height:5rem}.b-card__title{font-size:var(--font-size-22);font-weight:800;line-height:1.4}.b-card__text{font-size:var(--font-size-18);line-height:1.31}
.b-backdrop{position:absolute;z-index:0;inset:0;overflow:clip;pointer-events:none;background:radial-gradient(ellipse at 75% 15%,#203e3588,transparent 35%),radial-gradient(ellipse at 20% 65%,#1c372f88,transparent 45%)}.b-backdrop__bloom{position:absolute;width:80rem;height:65rem;border-radius:50%;background:radial-gradient(ellipse,rgba(77,187,150,.28),transparent 65%);filter:blur(2rem);mix-blend-mode:screen;animation:fluid-purple 16s ease-in-out infinite alternate}.b-backdrop__bloom.is-purple{top:14rem;right:-10rem}.b-backdrop__bloom.is-coral{top:38rem;left:-50rem;background:radial-gradient(ellipse,rgba(199,245,93,.16),transparent 65%);animation:fluid-coral 19s ease-in-out infinite alternate}.b-backdrop__bloom.is-bottom{bottom:-35rem;right:-20rem;background:radial-gradient(ellipse,rgba(199,245,93,.25),transparent 65%);animation:fluid-coral 15s ease-in-out infinite alternate-reverse}
.footer{padding-block:var(--space-60) var(--space-30);border-top:var(--thin) solid var(--line);background:#0f1d19}.b-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-50);padding-bottom:var(--space-50)}.b-footer__nav,.b-footer__contacts{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-20);font-size:var(--font-size-18)}.b-footer__nav button,.b-motion,.b-quiz__back{border:0;padding:0;background:none;color:inherit;text-align:left;cursor:pointer}.b-footer__contacts>span{font-size:var(--font-size-16)}.b-footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:var(--space-20);padding-top:var(--space-25);border-top:var(--thin) solid var(--line);color:var(--muted);font-size:var(--font-size-16)}
.b-modal{backdrop-filter:blur(1rem);background:rgba(9,17,15,.8);color:var(--white)}.b-modal__pop-up{width:min(72rem,100%);padding:var(--space-50);border:var(--thin) solid var(--line);border-radius:var(--radius-30);background:linear-gradient(130deg,#1d3931,#162a24);box-shadow:0 0 10rem rgba(73,97,89,.25)}.b-modal .b-title{font-size:var(--font-size-49)}.b-modal .b-text{font-size:var(--font-size-20)}.b-modal__close{top:var(--space-15);right:var(--space-15);width:4.5rem;height:4.5rem;font-size:var(--font-size-30)}.b-input{min-height:6rem;padding:var(--space-15) var(--space-20);border:var(--thin) solid var(--line);border-radius:var(--radius-16);background:var(--glass);color:var(--white);resize:vertical}.b-input::placeholder{color:var(--muted)}.b-form__hint{color:var(--muted);font-size:var(--font-size-16);line-height:1.4}.b-quiz{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-15);padding:0;border:0}.b-quiz__option{position:relative;cursor:pointer}.b-quiz__option input{position:absolute;left:var(--space-15);top:50%;transform:translateY(-50%);width:1.8rem;height:1.8rem;margin:0;accent-color:var(--accent)}.b-quiz__option span{display:flex;align-items:center;min-height:8rem;padding:var(--space-20) var(--space-15) var(--space-20) var(--space-45);border:var(--thin) solid var(--line);border-radius:var(--radius-16);font-size:var(--font-size-18)}.b-quiz__option input:checked+span{border-color:var(--accent);background:var(--glass)}.b-quiz__option input:focus-visible+span{outline:.3rem solid var(--accent)}.b-quiz__back{display:block;padding-block:var(--space-20);font-size:var(--font-size-18);color:var(--muted)}
@keyframes fluid-purple{0%{transform:translate(0,0) scale(1,.85);opacity:.5;filter:blur(2rem) hue-rotate(-15deg)}50%{opacity:1}100%{transform:translate(-15rem,10rem) scale(1.2,1.1);filter:blur(3rem) hue-rotate(30deg);opacity:.8}}@keyframes fluid-coral{0%{transform:translate(0,0) scale(.8,1);opacity:.4;filter:blur(2rem) hue-rotate(0)}100%{transform:translate(12rem,-8rem) scale(1.2,.8);opacity:.9;filter:blur(3rem) hue-rotate(-30deg)}}@keyframes gift-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-.7rem)}}@keyframes glow-breathe{from{opacity:.4;transform:scale(.85)}to{opacity:1;transform:scale(1.12)}}.is-motion [data-reveal]{opacity:0;translate:0 2rem;transition:opacity .65s,translate .65s}.is-motion [data-reveal].is-visible{opacity:1;translate:0 0}.is-paused *,.is-paused *::before,.is-paused *::after{animation-play-state:paused!important}.is-paused .b-hero__scene,.is-paused .b-card{transform:none!important}
.b-backdrop__canvas{position:fixed;inset:0;width:100%;height:100svh;opacity:0;mix-blend-mode:normal;transition:opacity 1s}.b-backdrop.is-webgl .b-backdrop__canvas{opacity:.82}.b-backdrop__fallback{position:absolute;inset:0;perspective:100rem;overflow:clip}.b-backdrop.is-webgl .b-backdrop__fallback{display:none}.b-backdrop__fallback>span{position:absolute;right:-12rem;top:12rem;width:70rem;height:70rem;border-radius:50%;background:conic-gradient(from 0deg,#4b635b,#c3f451,#6c8f83,#1d3831,#bef344,#4b635b);mask-image:radial-gradient(ellipse,transparent 40%,#000000 44%,#000000 55%,transparent 62%);filter:blur(.3rem);opacity:.6;animation:volume-spin 20s linear infinite}.b-backdrop__fallback>span:nth-child(2){right:auto;left:-45rem;top:45rem;width:80rem;height:80rem;animation-duration:26s;animation-direction:reverse}.b-backdrop__fallback>span:nth-child(3){right:-25rem;top:70rem;width:60rem;height:60rem;animation-duration:23s}@keyframes volume-spin{0%{transform:rotateX(35deg) rotateY(-30deg) rotateZ(0deg)}50%{transform:rotateX(-25deg) rotateY(45deg) rotateZ(180deg)}100%{transform:rotateX(35deg) rotateY(-30deg) rotateZ(360deg)}}

@media(max-width:991px){html{font-size:.8vw}.container{max-width:calc(100% - 8rem)}.b-header{gap:var(--space-25)}.b-header__nav{gap:var(--space-25)}.b-logo{font-size:var(--font-size-24)}.b-header .b-phone{font-size:var(--font-size-16)}.b-header .b-button{font-size:var(--font-size-13);padding-inline:var(--space-20)}.b-hero__inner{min-height:75rem;padding-top:var(--space-60)}.b-hero__title{font-size:4.8rem}.b-hero__scene{right:-5rem;top:30rem;width:43rem}.b-hero__copy{max-width:82rem}.b-guarantee{padding:var(--space-50);min-height:60rem;grid-template-columns:1.2fr 1fr}.b-guarantee__copy{max-width:61rem}.b-title{font-size:4.5rem}.b-contract{right:-2rem;top:12rem;width:45rem;height:41rem}.b-note{gap:var(--space-20);padding:var(--space-20)}.b-card{padding:var(--space-25);min-height:32rem}.b-card__head{gap:var(--space-20)}.b-card__title{font-size:var(--font-size-20)}.b-card__icon{width:6rem;height:6rem}.b-card__icon img{width:4rem;height:4rem}.b-card__text{font-size:var(--font-size-18)}.b-benefits .b-title{font-size:4.8rem}.b-footer{gap:var(--space-30)}}
@media(max-width:767px){html{font-size:1.2vw}.container{max-width:calc(100% - 6rem)}.b-header{height:12rem;justify-content:space-between}.b-header__nav{display:none}.b-header .b-button{display:none}.b-header .b-phone{margin-left:auto;font-size:var(--font-size-18)}.b-stage{min-height:0}.b-hero__inner{padding-block:var(--space-35) var(--space-50);min-height:0;display:grid;grid-template-columns:minmax(0,1fr)}.b-hero__copy{max-width:none;pointer-events:auto}.b-hero__title{font-size:4.8rem}.b-hero__scene{position:relative;inset:auto;grid-row:2;justify-self:end;width:50rem;height:35rem;max-width:85%}.b-hero__actions{gap:var(--space-30)}.b-gift{gap:var(--space-15);padding-left:var(--space-25);font-size:var(--font-size-16)}.b-gift__image{width:7rem;height:8rem}.b-guarantee{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:var(--space-40);margin-bottom:var(--space-60)}.b-guarantee__copy{max-width:none}.b-contract{position:relative;inset:auto;align-self:center;width:50rem;height:45.5rem;max-width:100%}.b-title{font-size:4.8rem}.b-benefits{padding-bottom:var(--space-60)}.b-benefits__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-20)}.b-card{padding:var(--space-30);min-height:0}.b-card__head{gap:var(--space-20)}.b-card__text{font-size:var(--font-size-20)}.b-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.b-footer__contacts{grid-column:1/-1}.b-footer__bottom{flex-wrap:wrap;justify-content:flex-start;gap:var(--space-20) var(--space-30)}.b-modal__pop-up{padding:var(--space-40)}.b-backdrop__bloom{opacity:.5;filter:blur(1rem)}}
@media(max-width:479px){html{font-size:2.77vw}.container{max-width:calc(100% - 3rem)}.b-header{height:8rem;gap:var(--space-10)}.b-logo{gap:var(--space-5);font-size:var(--font-size-18);letter-spacing:-.05rem}.b-logo__mark{width:3rem;height:3rem}.b-header .b-phone{font-size:1.15rem;gap:var(--space-5)}.b-phone svg{width:1.5rem;height:1.5rem}.b-hero__inner{padding:var(--space-25) 0 var(--space-30)}.b-eyebrow{font-size:1.1rem;padding:var(--space-10);gap:var(--space-10)}.b-eyebrow>span{width:.8rem;height:.8rem}.b-hero__title{font-size:3.3rem;letter-spacing:-.1rem}.b-hero__title br{display:none}.b-text{font-size:var(--font-size-16)}.b-button{min-height:5rem;padding:var(--space-15) var(--space-25);font-size:var(--font-size-16);gap:var(--space-15)}.b-button svg{width:1.8rem;height:1.8rem}.b-hero__actions{flex-direction:column;align-items:flex-start;gap:var(--space-25)}.b-gift{padding:0;border:0;font-size:var(--font-size-13);gap:var(--space-15)}.b-gift__image{width:5.5rem;height:6rem}.b-gift strong{font-size:var(--font-size-16)}.b-hero__scene{width:30rem;height:21rem;max-width:100%}.b-guarantee{padding:var(--space-30) var(--space-20) var(--space-20);border-radius:var(--radius-24);margin-bottom:var(--space-50)}.b-title,.b-benefits .b-title{font-size:3rem;letter-spacing:-.08rem}.b-guarantee .b-text{font-size:var(--font-size-16)}.b-note{padding:var(--space-15);gap:var(--space-15);font-size:1.2rem;border-radius:var(--radius-16)}.b-note>img{width:3rem;height:3rem}.b-note__title{font-size:var(--font-size-13);line-height:1.4}.b-contract{width:29rem;height:26.4rem}.b-benefits__grid{grid-template-columns:minmax(0,1fr);gap:var(--space-20)}.b-card{padding:var(--space-25);border-radius:var(--radius-24)}.b-card__title{font-size:var(--font-size-18)}.b-card__text{font-size:var(--font-size-16)}.b-card__head{gap:var(--space-25);margin-bottom:var(--space-20)}.b-card__icon{width:5.5rem;height:5.5rem;border-radius:var(--radius-16)}.b-card__icon img{width:3.8rem;height:3.8rem}.footer{padding-block:var(--space-40) var(--space-25)}.b-footer{gap:var(--space-30) var(--space-20);padding-bottom:var(--space-30)}.b-footer__nav,.b-footer__contacts{font-size:var(--font-size-13)}.b-footer .b-text{font-size:var(--font-size-13)}.b-footer .b-phone{font-size:var(--font-size-18)}.b-footer__contacts>span,.b-footer__bottom{font-size:var(--font-size-13)}.b-modal{padding:var(--space-10)}.b-modal__pop-up{padding:var(--space-30) var(--space-20);border-radius:var(--radius-24)}.b-modal .b-title{font-size:var(--font-size-30)}.b-modal .b-text{font-size:var(--font-size-16)}.b-modal__close{top:var(--space-10);right:var(--space-10);width:3rem;height:3rem;font-size:var(--font-size-24)}.b-modal .b-phone,.b-form{font-size:var(--font-size-16)}.b-input{min-height:4.8rem;padding:var(--space-15);border-radius:var(--radius-6)}.b-form__hint{font-size:var(--font-size-13)}.b-quiz{grid-template-columns:1fr}.b-quiz__option span{font-size:var(--font-size-16);min-height:5rem}.b-quiz__option input{width:1.5rem;height:1.5rem}.b-quiz__back{font-size:var(--font-size-13)}.b-backdrop__bloom{width:45rem;height:45rem}.b-backdrop__bloom.is-purple{top:20rem;right:-25rem}.b-backdrop__bloom.is-coral{left:-30rem;top:60rem}.b-backdrop__bloom.is-bottom{bottom:-20rem;right:-25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.b-hero__scene,.b-card{transform:none!important}.is-motion [data-reveal]{opacity:1;translate:none}}
/* The original pen remains a separate layer; its tip is the animation origin. */
.b-contract__signature{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.b-contract__layer.is-pen{z-index:2;transform-origin:70% 92.67%;will-change:transform}
/* Soft grounding beneath the laptop, instead of a polygon cut from the backdrop. */
.b-hero__scene::before{content:'';position:absolute;z-index:-1;left:0;right:-4%;bottom:0;height:20%;border-radius:50%;background:radial-gradient(ellipse,#9ad9c455 0%,#58bf9d3a 35%,transparent 72%);filter:blur(.7rem);transform:rotate(-3deg)}
.b-hero__scene::after{inset:81% 3% 0;background:radial-gradient(ellipse,#09110faa,transparent 68%);filter:blur(.5rem);animation:none}
.b-contract__layer.is-pen{transform-origin:70% 92.67%}
.b-hero__scene::before{left:-12%;right:-15%;bottom:-5%;height:28%;background:radial-gradient(ellipse at 55% 45%,#b1e1d177 0%,#7a9a8f44 28%,#4a615922 50%,transparent 72%);filter:blur(.9rem)}
.b-hero__scene::after{inset:86% 4% -1%;background:radial-gradient(ellipse,#070d0bcc 10%,#0d1a1688 38%,transparent 70%);filter:blur(.4rem)}
.b-guarantee{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--space-40);align-items:start}
.b-guarantee>.b-contract{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:330/300;align-self:center}
.b-guarantee>.b-note{grid-column:1/-1;width:100%;align-items:center}
.b-guarantee>.b-note .b-note__title br{display:none}
.b-guarantee>.b-note .b-note__title .g-tcolor_accent{margin-left:.5rem}
@media(max-width:767px){.b-guarantee{gap:var(--space-25)}.b-guarantee>.b-contract{width:50rem;max-width:100%;align-self:center}.b-guarantee>.b-note{align-items:flex-start}}
@media(max-width:479px){.b-guarantee>.b-contract{width:29rem}}
.b-backdrop__fallback>span{mask-image:radial-gradient(ellipse,#000000 25%,#0009 55%,transparent 70%);background:radial-gradient(ellipse at 65% 30%,#c7f55d88,#57bf9c77 35%,#22433933 65%,transparent 73%);animation:petal-drift 16s ease-in-out infinite alternate}
@keyframes petal-drift{from{transform:rotate(-25deg) scale(1,.75);border-radius:45% 55% 65% 35%}to{transform:rotate(12deg) scale(1.12,.9);border-radius:65% 35% 45% 55%}}
/* Restrained fallback size and the same downward fade as the WebGL petals. */
.b-backdrop__fallback>span{width:48rem;height:44rem;mask-image:linear-gradient(#000000 10%,#0009 40%,transparent 90%)}
.b-backdrop__fallback>span:nth-child(2){width:52rem;height:48rem;left:-30rem}
.b-backdrop__fallback>span:nth-child(3){width:46rem;height:43rem;right:-20rem}
/* Portfolio uses the site's existing palette and spacing scale. */
.s-section{padding-block:var(--space-60)}
.b-portfolio{position:relative;isolation:isolate;overflow:clip}
.b-portfolio__filters{display:flex;flex-wrap:wrap;gap:var(--space-15)}
.b-portfolio__filter{padding:var(--space-15) var(--space-25);border:var(--thin) solid var(--border-color);border-radius:var(--radius-44);background:var(--glass);color:var(--ink);font-size:var(--font-size-18);cursor:pointer;transition:background .3s,border-color .3s,transform .3s}
.b-portfolio__filter:hover{border-color:var(--accent);transform:translateY(-.2rem)}
.b-portfolio__filter[aria-pressed=true]{background:var(--accent);border-color:var(--accent);font-weight:700}
.b-portfolio__stage{position:relative;isolation:isolate;width:160rem;max-width:100%;aspect-ratio:1600/730;margin:var(--space-60) auto 0}
.b-portfolio__project{position:absolute;left:1.4%;top:13%;z-index:1;width:33.4%;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:zoom-in;transition:transform .65s cubic-bezier(.22,.7,.25,1),filter .65s;transform:translateY(0);-webkit-tap-highlight-color:transparent}
.b-portfolio__project:nth-child(2){left:26.4%;top:0;width:42.5%;z-index:3}
.b-portfolio__project:nth-child(3){left:65.7%;top:12%;width:32.9%;z-index:2}
.b-portfolio__project:hover,.b-portfolio__project:focus-visible{transform:translateY(-1rem);z-index:4}
.b-portfolio__panel{position:relative;z-index:1;width:100%;height:auto;filter:drop-shadow(0 0 .8rem var(--purple)) drop-shadow(0 1rem 1.5rem var(--paper));transition:filter .5s}
.b-portfolio__project:hover .b-portfolio__panel{filter:drop-shadow(0 0 1rem var(--purple)) drop-shadow(0 0 .4rem var(--accent))}
.b-portfolio__reflection{position:absolute;top:96%;left:0;right:0;height:30%;overflow:hidden;opacity:.19;filter:blur(.6rem);mask-image:linear-gradient(#0009,transparent 90%);pointer-events:none}
.b-portfolio__reflection img{width:100%;height:auto;transform:scaleY(-1)}
.b-portfolio__project::before{content:'';position:absolute;left:4%;right:4%;bottom:-5%;height:12%;border-radius:50%;background:var(--purple);filter:blur(2rem);opacity:.3;pointer-events:none}
.b-portfolio__caption{position:absolute;z-index:2;left:8%;right:auto;top:calc(100% + .5rem);max-width:84%;display:flex;justify-content:space-between;align-items:center;gap:var(--space-10);padding:var(--space-10) var(--space-15);border:var(--thin) solid var(--line);border-radius:var(--radius-16);background:var(--surface);font-size:var(--font-size-16);opacity:0;transform:translateY(.5rem);transition:opacity .3s,transform .3s}
.b-portfolio__project:focus-visible{outline:none}.b-portfolio__project:focus-visible .b-portfolio__caption{outline:.2rem solid var(--accent);outline-offset:.4rem}
.b-portfolio__caption>svg{width:1.8rem;height:1.8rem;flex-shrink:0}
.b-portfolio__project:hover .b-portfolio__caption,.b-portfolio__project:focus-visible .b-portfolio__caption{opacity:1;transform:none}
.b-portfolio__empty{text-align:center;font-size:var(--font-size-22);color:var(--muted);padding:var(--space-60) var(--space-30)}
.b-portfolio__stage.is-filtered{display:flex;align-items:flex-start;justify-content:center;gap:var(--space-30);width:129rem;aspect-ratio:auto;min-height:45rem;padding-bottom:var(--space-75)}
.b-portfolio__stage.is-filtered .b-portfolio__project{position:relative;inset:auto;width:45%;max-width:60rem}
.b-portfolio__stage.is-filtered .b-portfolio__project::before{bottom:0}
.b-project-preview{width:min(130rem,100%)}
.b-project-preview img{width:100%;height:auto;border-radius:var(--radius-16)}
@media(max-width:767px){.b-portfolio__filter{font-size:var(--font-size-16);padding:var(--space-15) var(--space-20)}.b-portfolio__stage{margin-top:var(--space-40)}.b-portfolio__stage.is-filtered{width:100%;padding-inline:var(--space-30);gap:var(--space-15)}}
@media(max-width:479px){.b-portfolio__filters{gap:var(--space-10)}.b-portfolio__filter{font-size:var(--font-size-13);padding:var(--space-10) var(--space-15)}.b-portfolio__stage,.b-portfolio__stage.is-filtered{display:flex;flex-direction:column;align-items:center;gap:var(--space-40);aspect-ratio:auto;width:100%;padding:0 var(--space-15) var(--space-40);min-height:0}.b-portfolio__project,.b-portfolio__project:nth-child(2),.b-portfolio__project:nth-child(3),.b-portfolio__stage.is-filtered .b-portfolio__project{position:relative;inset:auto;width:100%;max-width:35rem}.b-portfolio__project:nth-child(2){order:-1}.b-portfolio__caption{position:relative;inset:auto;opacity:1;transform:none;margin:var(--space-10) var(--space-15) 0;font-size:var(--font-size-13)}.b-portfolio__reflection{top:84%;opacity:.1}.b-portfolio__empty{font-size:var(--font-size-16);padding:var(--space-30) var(--space-15)}.b-project-preview .b-title{font-size:var(--font-size-24)}}
@media(prefers-reduced-motion:reduce){.b-portfolio__project,.b-portfolio__filter,.b-portfolio__caption{transition:none}.b-portfolio__project:hover,.b-portfolio__project:focus-visible{transform:none}}
/* Our approach: source copy stays HTML, the transparent portrait is independent. */
.b-approach{background:radial-gradient(ellipse at 90% 70%,color-mix(in srgb,var(--purple) 13%,transparent),transparent 50%)}
.b-approach__inner{position:relative;width:135rem;padding-top:var(--space-20);padding-bottom:var(--space-40)}
.b-approach .b-title{position:relative;z-index:2}
.b-approach__list{position:relative;z-index:2;display:grid;gap:var(--space-35);width:87rem;max-width:100%;list-style:none;margin:0;padding:0}
.b-approach__item{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:var(--space-60);align-items:start}
.b-approach__icon{width:9rem;height:9rem;transition:filter .5s,transform .5s}
.b-approach__item:hover .b-approach__icon{filter:drop-shadow(0 0 1rem color-mix(in srgb,var(--accent) 35%,transparent));transform:translateY(-.3rem)}
.b-approach__copy{position:relative;font-size:var(--font-size-20);line-height:1.35}
.b-approach__copy::before{content:'';position:absolute;left:-3.5rem;top:0;bottom:calc(-1 * var(--space-35));width:var(--thin);background:var(--line)}
.b-approach__item:last-child .b-approach__copy::before{bottom:0}
.b-approach__copy::after{content:'';position:absolute;left:-3.85rem;top:var(--space-30);width:.8rem;height:.8rem;border-radius:50%;background:var(--accent);box-shadow:0 0 1.5rem var(--accent);animation:approach-pulse 4s ease-in-out infinite alternate}
.b-approach__lead{font-size:var(--font-size-22);font-weight:800}
.b-approach__lead span{color:var(--accent)}
.b-approach__visual{position:absolute;right:-7.5rem;bottom:0;width:58rem;pointer-events:none}
.b-approach__visual>img{position:relative;width:100%;height:auto;clip-path:url(#approach-portrait-wave)}
.b-approach__mask-defs{position:absolute;pointer-events:none}
.b-approach__foreground{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000000 15%,#000000 85%,transparent),linear-gradient(#000000 0%,#000000 93%,transparent 100%);mask-composite:intersect}.b-approach__wave-fill{fill:var(--paper)}
.b-approach__orbit{position:absolute;inset:10% -5% 5%;width:110%;height:85%;overflow:visible;pointer-events:none}.b-approach__orbit path{fill:none;stroke:url(#approach-orbit-color);stroke-linejoin:round}.b-approach__orbit-line{stroke-width:2.6;opacity:1;filter:drop-shadow(0 0 4px #8fd5be);animation:approach-orbit-light 4.5s ease-in-out infinite alternate}.b-approach__orbit-glow{stroke-width:17;filter:blur(12px);opacity:.8}@keyframes approach-orbit-light{from{filter:drop-shadow(0 0 4px #8fd5be);stroke-opacity:.75}to{filter:drop-shadow(0 0 9px #c7f55d);stroke-opacity:1}}
.b-approach__cta{position:relative;z-index:2;width:87rem;max-width:100%;margin-top:var(--space-50);font-size:var(--font-size-20);text-align:left;justify-content:space-between}
.b-approach__cta>svg{width:3rem;height:3rem;flex-shrink:0}
@keyframes approach-pulse{from{opacity:.55;box-shadow:0 0 .7rem var(--accent)}to{opacity:1;box-shadow:0 0 1.7rem var(--accent)}}
@keyframes approach-orbit{from{transform:rotate(17deg) scale(.98,1)}to{transform:rotate(25deg) scale(1.02,.98)}}
@media(max-width:991px){.b-approach__list{width:81rem}.b-approach__item{grid-template-columns:7.5rem minmax(0,1fr);gap:var(--space-50)}.b-approach__icon{width:7.5rem;height:7.5rem}.b-approach__copy{font-size:var(--font-size-18)}.b-approach__lead{font-size:var(--font-size-20)}.b-approach__visual{right:-12rem;width:52rem;opacity:.8}.b-approach__cta{width:81rem}}
@media(max-width:767px){.b-approach__list{width:100%}.b-approach__visual{position:relative;inset:auto;width:45rem;max-width:80%;margin:var(--space-40) auto 0}.b-approach__inner{display:flex;flex-direction:column}.b-approach .b-title{order:0}.b-approach__list{order:1}.b-approach__cta{order:2;width:100%;font-size:var(--font-size-18)}.b-approach__visual{order:3;opacity:1}.b-approach__copy{font-size:var(--font-size-20)}.b-approach__lead{font-size:var(--font-size-22)}}
@media(max-width:479px){.b-approach__inner{padding-top:0;padding-bottom:0}.b-approach__list{gap:var(--space-30)}.b-approach__item{grid-template-columns:4.5rem minmax(0,1fr);gap:var(--space-25)}.b-approach__icon{width:4.5rem;height:4.5rem}.b-approach__copy{font-size:var(--font-size-16)}.b-approach__lead{font-size:var(--font-size-16);margin-bottom:var(--space-5)}.b-approach__copy::before{left:-1.5rem;bottom:calc(-1 * var(--space-30))}.b-approach__copy::after{left:-1.75rem;top:var(--space-15);width:.6rem;height:.6rem}.b-approach__cta{font-size:var(--font-size-16);margin-top:var(--space-30);padding:var(--space-20)}.b-approach__visual{max-width:85%;width:27rem;margin-top:var(--space-30)}}
@media(prefers-reduced-motion:reduce){.b-approach__icon{transition:none}.b-approach__item:hover .b-approach__icon{transform:none}}




/* The asset floats independently of the pointer-controlled scene. */
.b-hero__laptop{width:100%;height:100%;object-fit:contain;animation:laptop-breathe 7s ease-in-out infinite;filter:drop-shadow(0 1.5rem 1.5rem #162c2628)}
.b-hero__scene{transform:perspective(100rem) translate3d(calc(var(--mx,0)*2rem),calc(var(--my,0)*1.2rem),0) rotateY(calc(var(--mx,0)*9deg)) rotateX(calc(var(--my,0)*-6deg));transition:transform .9s cubic-bezier(.2,.7,.2,1)}
@keyframes laptop-breathe{0%,100%{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-1rem) rotate(.5deg)}}
@media(prefers-reduced-motion:reduce){.b-hero__laptop{animation:none}.b-hero__scene{transform:none;transition:none}}
.b-portfolio__panel{display:block;isolation:isolate}
.b-portfolio__frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.b-portfolio__screen{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;transform-origin:0 0;border-radius:2.4rem;z-index:1}
.b-approach__icon{display:grid;place-items:center;padding:0;background:linear-gradient(130deg,#4b645c,#25483e);border:var(--thin) solid #6b8e82;border-radius:2.25rem}
.b-approach__icon>img{width:100%;height:100%;object-fit:contain}
[data-theme=light] .b-approach__icon{background:linear-gradient(130deg,#edf1f0,#e4e9e7);border-color:var(--border-color)}
/* Forms fit the available height; only genuinely small screens need internal scrolling. */
.b-modal{padding:2rem}
.b-modal__pop-up:not(.b-project-preview){width:min(74rem,100%);max-height:calc(100dvh - 4rem);overflow:auto;padding:3rem}
.b-modal__pop-up:not(.b-project-preview) .b-title{font-size:3.4rem;line-height:1.12;margin-bottom:1.5rem}
.b-modal__pop-up:not(.b-project-preview) .b-title br{display:none}
.b-modal__pop-up:not(.b-project-preview) .b-text{font-size:1.7rem;line-height:1.35;margin-bottom:2rem}
.b-modal .b-eyebrow{padding:.8rem 1.3rem;font-size:1.5rem;margin-bottom:1.5rem}
.b-modal .b-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.b-modal .b-form__field{display:grid;gap:.6rem;font-size:1.6rem}
.b-modal .b-form__field:nth-child(n+3),.b-modal .b-form>p,.b-modal .b-form>.b-button{grid-column:1/-1}
.b-modal .b-input{min-height:4.8rem;padding:1rem 1.4rem;font-size:1.6rem}
.b-modal textarea.b-input{height:9rem;min-height:7rem}
.b-modal .b-button{min-height:5rem;padding:1.2rem 2rem;font-size:1.7rem}
.b-modal .b-form__hint{font-size:1.3rem}
.b-modal .b-quiz__back{padding-block:1rem;font-size:1.5rem}
[data-theme=light] .b-modal__pop-up{background:var(--surface);color:var(--ink)}
@media(max-width:479px){.b-modal{padding:1rem}.b-modal__pop-up:not(.b-project-preview){padding:2.2rem 1.6rem;max-height:calc(100dvh - 2rem)}.b-modal .b-form{grid-template-columns:1fr;gap:1rem}.b-modal .b-form__field{grid-column:1/-1}.b-modal__pop-up:not(.b-project-preview) .b-title{font-size:2.6rem;padding-right:2rem}}
.b-backdrop.is-lightweight .b-backdrop__fallback>span{background:radial-gradient(ellipse at 65% 30%,#c7f55d88,#57bf9c77 35%,#22433933 65%,transparent 73%);mask-image:linear-gradient(#000000,transparent 85%);filter:none;animation:lightweight-drift 18s ease-in-out infinite alternate}
@keyframes lightweight-drift{from{transform:translate3d(0,0,0) rotate(-10deg)}to{transform:translate3d(-2rem,3rem,0) rotate(10deg)}}
@media(prefers-reduced-motion:reduce){.b-backdrop.is-lightweight .b-backdrop__fallback>span{animation:none}}
