.home-page {
    --ink:#172033; --muted:#667286; --line:#e3e7ee; --soft:#f6f7fa;
    --primary:#6366f1; --primary-soft:#eef2ff; --success:#07825e;
    margin:0; min-width:320px; color:var(--ink); background:#fff;
    font-family:"DM Sans",sans-serif; -webkit-font-smoothing:antialiased; overflow-x:clip;
}
.home-page *{box-sizing:border-box}.home-page [hidden]{display:none!important}.home-page a{color:inherit;text-decoration:none}.home-page h1,.home-page h2,.home-page h3,.home-page p{margin-top:0;font-family:"DM Sans",sans-serif}.home-page p{color:var(--muted)}.home-page :where(button,input){font:inherit}.home-page.modal-open{overflow:hidden}.home-page a:focus-visible,.home-page button:focus-visible,.home-page summary:focus-visible{outline:3px solid rgba(99,102,241,.3);outline-offset:3px}
.home-container{width:min(100%,1120px);margin:0 auto;padding-inline:24px}.home-section{padding:96px 0;scroll-margin-top:90px}.home-skip-link{position:fixed;z-index:1000;top:8px;left:10px;padding:10px 15px;border-radius:9px;color:#fff!important;background:var(--ink);transform:translateY(-150%)}.home-skip-link:focus{transform:none}

/* Navigation */
.home-header{position:fixed;inset:14px 0 auto;z-index:100;transition:transform .2s ease}.home-header.is-hidden{transform:translateY(-120%)}.home-nav{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:60px;padding:7px 8px 7px 17px;border:1px solid rgba(226,232,240,.92);border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 14px 38px -27px rgba(15,23,42,.45);backdrop-filter:blur(16px)}.home-logo{display:inline-flex;align-items:center;justify-self:start;gap:8px;width:max-content;color:var(--ink);font-size:1.35rem;font-weight:800;letter-spacing:-.04em}.home-logo img{width:22px;height:22px}.home-logo span span{color:var(--primary)}.home-nav-links{display:flex;gap:2px;padding:4px;border-radius:999px;background:#f3f5f8}.home-nav-links a{padding:8px 14px;border-radius:999px;color:#58657a;font-size:.86rem;font-weight:650}.home-nav-links a:hover{color:var(--ink);background:#fff}.home-nav-actions{justify-self:end}.home-nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 20px;border:0;border-radius:999px;color:#fff!important;background:var(--ink);box-shadow:0 10px 22px -18px rgba(17,26,46,.9);font-size:.89rem;font-weight:800;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.home-nav-cta:hover{background:#090f1e;box-shadow:0 15px 27px -17px rgba(17,26,46,.95);transform:translateY(-2px)}.home-nav-cta:active{box-shadow:0 8px 18px -16px rgba(17,26,46,.9);transform:translateY(0)}.home-menu-toggle{display:none;width:43px;height:43px;align-items:center;justify-content:center;border:0;border-radius:50%;color:var(--ink);background:#f2f4f7;cursor:pointer}.home-mobile-menu{position:absolute;top:calc(100% + 9px);right:0;left:0;display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 24px 55px -22px rgba(15,23,42,.35)}.home-mobile-menu a,.home-mobile-menu>button{padding:12px 14px;border:0;border-radius:10px;color:#4d5a6f;background:transparent;font-weight:700;text-align:left;cursor:pointer}.home-mobile-menu>button{color:#fff;background:var(--ink);font-weight:800;text-align:center}

/* Shared */
.home-eyebrow,.home-kicker{display:inline-flex;align-items:center;gap:8px;color:#5046e5;font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.home-eyebrow{padding:7px 12px;border:1px solid #d9ddff;border-radius:999px;background:#fff}.home-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px rgba(99,102,241,.1)}.home-kicker::before{content:"";width:20px;height:2px;border-radius:99px;background:var(--primary)}.home-section-heading{max-width:680px;margin:0 auto 42px;text-align:center}.home-section-heading h2,.home-install-copy h2,.home-faq-intro h2{margin:12px 0 8px;color:var(--ink);font-size:clamp(2rem,3.5vw,2.75rem);font-weight:750;line-height:1.08;letter-spacing:-.045em}.home-section-heading p{margin:0;font-size:.98rem}.home-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:13px 22px;border:0;border-radius:999px;font-size:.93rem;font-weight:800;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.home-button:hover{transform:translateY(-1px)}.home-button-primary{color:#fff!important;background:var(--ink);box-shadow:0 12px 25px -15px rgba(15,23,42,.8)}.home-button-secondary{border:1px solid #d8dee8;color:var(--ink);background:#fff}

/* Hero */
.home-hero{position:relative;padding:140px 0 88px;background:linear-gradient(180deg,#fbfcff,#f7f8fb)}.home-hero::before{content:"";position:absolute;inset:0;opacity:.45;background-image:linear-gradient(rgba(99,102,241,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(99,102,241,.05) 1px,transparent 1px);background-size:96px 96px;mask-image:linear-gradient(#000,transparent 85%);pointer-events:none}.home-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,.93fr) minmax(430px,1.07fr);align-items:center;gap:70px}.home-hero-copy{max-width:570px}.home-hero-copy h1{margin:21px 0 18px;color:var(--ink);font-size:clamp(3rem,4.7vw,4.15rem);font-weight:750;line-height:1.01;letter-spacing:-.06em}.home-hero-copy h1 span{color:var(--primary)}.home-hero-copy>p{max-width:520px;margin-bottom:20px;font-size:1.03rem;line-height:1.6}.home-hero-price{margin-bottom:23px}.home-hero-price>div{display:flex;align-items:baseline;gap:9px}.home-hero-price strong{font-size:2rem;line-height:1;letter-spacing:-.05em}.home-hero-price span{color:#354157;font-size:1.05rem;font-weight:750}.home-hero-price small{display:block;margin-top:7px;color:#778398;font-size:.7rem;font-weight:650}.home-hero-actions{display:flex;align-items:flex-start;gap:10px}.home-hero-actions>div{display:grid;gap:7px}.home-hero-actions>div>small{color:#778398;font-size:.66rem;font-weight:650;text-align:center}
.home-site-card,.home-install-visual{overflow:hidden;border:7px solid #fff;border-radius:24px;background:#fff;box-shadow:0 28px 60px -35px rgba(15,23,42,.38)}.home-browser-bar{display:flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-bottom:1px solid #e6e9ee;background:#f7f8fa}.home-browser-bar i{width:8px;height:8px;border-radius:50%;background:#fb7185}.home-browser-bar i:nth-child(2){background:#fbbf24}.home-browser-bar i:nth-child(3){background:#34d399}.home-browser-bar span{width:45%;margin:0 auto;padding:5px 8px;border:1px solid #dce1e8;border-radius:7px;color:#9aa5b4;background:#fff;font-size:.63rem;text-align:center}.home-site-hero{position:relative;min-height:410px;padding:27px 25px;overflow:hidden;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.8) 43%,rgba(255,255,255,.08) 70%),url("images/backdrop.webp") center/cover}.home-site-top{display:flex;justify-content:space-between;gap:15px;color:#6d788b;font-size:.58rem}.home-site-top strong{color:var(--ink);font-size:.66rem;letter-spacing:.08em}.home-site-message{display:flex;flex-direction:column;align-items:flex-start;width:55%;padding:72px 0 0 9px}.home-site-message small{color:#b96712;font-weight:800;letter-spacing:.1em}.home-site-message strong{margin:13px 0 21px;color:var(--ink);font-size:2.25rem;line-height:1.02;letter-spacing:-.055em}.home-site-message>span{padding:10px 15px;border-radius:8px;color:#fff;background:#c56f14;font-size:.7rem;font-weight:800}.home-widget-card{position:absolute;right:14px;bottom:14px;width:47%;padding:18px;border:1px solid #e3e7ed;border-radius:18px;background:#fff;box-shadow:0 22px 46px -24px rgba(15,23,42,.42)}.home-widget-card>div{display:flex;align-items:center;gap:7px;margin-bottom:17px;font-size:.72rem}.home-widget-card img{width:17px;height:17px}.home-widget-card p{margin:0 0 11px;color:var(--ink);font-size:.85rem;font-weight:750}.home-widget-card>span{display:block;margin-top:7px;padding:9px;border:1px solid #dce1e9;border-radius:8px;color:#687589;font-size:.63rem;font-weight:650}.home-widget-card>span:first-of-type{border-color:var(--primary);color:#3d389c;background:#f5f6ff}

/* Products */
.home-products-section{background:#fff}.home-products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.home-product-card{display:flex;flex-direction:column;align-items:flex-start;padding:27px 25px;border:1px solid var(--line);border-radius:21px;background:#fff;box-shadow:0 24px 50px -42px rgba(15,23,42,.5)}.home-product-card>.home-kicker{margin-bottom:14px}.home-product-card>strong{color:#5046e5;font-size:1.25rem;letter-spacing:-.03em}.home-product-card>p{flex:1;margin:11px 0 21px;color:#5d6a7f;font-size:.85rem;line-height:1.6}

/* Three steps */
.home-flow-section{background:var(--soft)}.home-flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.home-flow-card{position:relative;padding:13px 13px 24px;border:1px solid var(--line);border-radius:21px;background:#fff}.home-step-number{position:absolute;z-index:2;top:25px;left:25px;display:grid;width:33px;height:33px;place-items:center;border-radius:9px;color:#fff;background:var(--ink);font-size:.68rem;font-weight:800}.home-flow-visual{display:flex;min-height:205px;margin-bottom:21px;padding:55px 23px 22px;overflow:hidden;border-radius:15px;flex-direction:column;justify-content:center}.home-flow-card h3{margin:0 10px 7px;font-size:1.08rem;letter-spacing:-.025em}.home-flow-card>p{margin:0 10px;font-size:.83rem;line-height:1.55}.home-flow-click{align-items:flex-start;background:linear-gradient(140deg,#f6eee5,#fff)}.home-flow-click small,.home-flow-result small{color:#ad681f;font-size:.58rem;font-weight:800}.home-flow-click strong{margin:10px 0 16px;font-size:1.08rem}.home-flow-click span{padding:8px 11px;border-radius:7px;color:#fff;background:#c26f18;font-size:.65rem;font-weight:800}.home-flow-questions{background:linear-gradient(145deg,#f0f2ff,#fff)}.home-flow-questions small{color:#7e89a0;font-size:.57rem;font-weight:800}.home-flow-questions strong{margin:10px 0 13px;font-size:1.04rem}.home-flow-questions>span{padding:11px;border:1px solid #cfd4ff;border-radius:9px;color:#3b3697;background:#fff;font-size:.72rem;font-weight:800}.home-flow-questions i{height:4px;margin-top:18px;border-radius:99px;background:#dce1ea}.home-flow-questions b{display:block;width:44%;height:100%;border-radius:inherit;background:var(--primary)}.home-flow-result{color:#fff;background:var(--ink)}.home-flow-result small{color:#aab5c6}.home-flow-result>strong{margin:9px 0 18px;color:#fff;font-size:1.15rem}.home-flow-result div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.home-flow-result div span{padding:8px 3px;border:1px solid rgba(255,255,255,.1);border-radius:7px;color:#d8dfeb;background:rgba(255,255,255,.05);font-size:.55rem;text-align:center}

/* Existing website */
.home-install-section{background:#fff}.home-install-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:center;gap:85px}.home-install-site{position:relative;min-height:370px;padding:48px 35px;background:linear-gradient(140deg,#fbf7f2,#efe7df)}.home-install-site>small{color:#ad6417;font-size:.65rem;font-weight:800;letter-spacing:.09em}.home-install-site>strong{display:block;margin:18px 0 24px;font-size:2.2rem;line-height:1.02;letter-spacing:-.05em}.home-install-site>span{display:inline-flex;padding:10px 15px;border-radius:8px;color:#fff;background:#c66f15;font-size:.7rem;font-weight:800}.home-install-site>div{position:absolute;right:17px;bottom:17px;width:47%;padding:18px;border-radius:18px;background:#fff;box-shadow:0 22px 46px -24px rgba(15,23,42,.4)}.home-install-site>div img{width:16px;height:16px;margin-right:6px;vertical-align:middle}.home-install-site>div b{font-size:.7rem}.home-install-site>div p{margin:17px 0 10px;color:var(--ink);font-size:.82rem;font-weight:750}.home-install-site>div em{display:block;padding:10px;border:1px solid #cfd4ff;border-radius:8px;color:#8a849c;font-size:.62rem;font-style:normal}.home-install-copy>p{margin:18px 0 23px;font-size:.98rem;line-height:1.65}.home-install-copy ul{display:grid;gap:13px;margin:0;padding:0;list-style:none;color:#4d5a6f;font-size:.88rem;font-weight:650}.home-install-copy li::before{content:"✓";display:inline-grid;width:22px;height:22px;margin-right:9px;place-items:center;border-radius:50%;color:var(--primary);background:var(--primary-soft);font-size:.68rem}.home-install-copy aside{margin-top:25px;padding:15px 17px;border-left:3px solid var(--primary);border-radius:0 9px 9px 0;color:#657186;background:#f7f8fb;font-size:.8rem;line-height:1.5}

/* Price — intentionally retained */
.home-pricing-section{background:var(--soft)}.home-pricing-card{display:grid;grid-template-columns:minmax(245px,.75fr) minmax(0,1.25fr);max-width:850px;margin:0 auto;overflow:hidden;border:1px solid #dce1ec;border-radius:26px;background:#fff;box-shadow:0 30px 60px -44px rgba(15,23,42,.42)}.home-pricing-summary{position:relative;display:flex;padding:40px;flex-direction:column;justify-content:center;border-right:1px solid #e5e8ef;background:linear-gradient(150deg,#f6f7ff,#fff)}.home-pricing-summary::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(var(--primary),#a855f7)}.home-pricing-summary>span{color:#5046e5;font-size:.71rem;font-weight:800;letter-spacing:.12em}.home-pricing-summary>strong{margin-top:16px;font-size:2.35rem;line-height:1;letter-spacing:-.05em}.home-pricing-summary>small{margin-top:7px;color:#738096;font-size:.74rem;font-weight:650}.home-pricing-summary hr{width:100%;margin:22px 0;border:0;border-top:1px solid #dfe4ed}.home-pricing-summary .home-monthly{margin-top:0;font-size:1.45rem}.home-pricing-summary b{margin-top:14px;color:var(--success);font-size:.74rem}.home-pricing-included{padding:38px 42px}.home-pricing-included h3{margin:0 0 19px;font-size:1.1rem}.home-pricing-included ul{display:grid;grid-template-columns:1fr 1fr;gap:12px 17px;margin:0 0 27px;padding:0;list-style:none;color:#536075;font-size:.8rem}.home-pricing-included li{display:grid;grid-template-columns:19px 1fr;gap:8px}.home-pricing-included li::before{content:"✓";display:grid;width:19px;height:19px;place-items:center;border-radius:50%;color:var(--primary);background:var(--primary-soft);font-size:.64rem;font-weight:900}.home-pricing-reassurance{display:block;margin-top:10px;color:#7d899d;font-size:.69rem;font-weight:650}.home-pricing-alternative{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:.75rem}.home-pricing-alternative a{color:#5046e5;font-weight:750;text-decoration:underline;text-underline-offset:3px}

.home-pricing-alternative button{display:inline;padding:0;border:0;background:none;color:#5046e5;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

/* FAQ, final and footer */
.home-faq-layout{display:grid;grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr);align-items:start;gap:85px}.home-faq-intro p{margin-top:17px;font-size:.9rem}.home-faq-intro a{color:#5046e5;font-weight:750}.home-faq-list{border-top:1px solid var(--line)}.home-faq-list details{border-bottom:1px solid var(--line)}.home-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:21px 1px;color:#293449;cursor:pointer;font-size:.93rem;font-weight:700;list-style:none}.home-faq-list summary::-webkit-details-marker{display:none}.home-faq-list summary span{font-size:1.2rem;font-weight:400;transition:transform .15s}.home-faq-list details[open] summary span{transform:rotate(45deg)}.home-faq-list details p{margin:-6px 32px 21px 1px;font-size:.84rem;line-height:1.6}.home-final-section{padding:0 0 82px}.home-final-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:38px 42px;border:1px solid var(--line);border-radius:23px;background:#fafbfc}.home-final-inner h2{margin:0 0 7px;font-size:1.65rem;letter-spacing:-.035em}.home-final-inner p{margin:0;font-size:.89rem}.home-final-inner>div:last-child{display:flex;gap:9px;flex:0 0 auto}.home-footer{padding:34px 0;border-top:1px solid var(--line);background:#f8f9fb}.home-footer>.home-container{display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px}.home-footer .home-logo{font-size:1.1rem}.home-footer .home-logo img{width:18px;height:18px}.home-footer div>div{display:flex;gap:18px;color:#6d798c;font-size:.73rem}.home-footer small{grid-column:1/-1;padding-top:19px;border-top:1px solid #e2e6ed;color:#929cab;font-size:.7rem}

.home-reveal{opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease}.home-reveal.is-visible{opacity:1;transform:none}.home-delay-1{transition-delay:.07s}.home-delay-2{transition-delay:.13s}

/* Shared lead and booking flow */
.home-page .lead-modal{--indigo:var(--primary);--indigo-soft:var(--primary-soft);--green:var(--success);position:fixed;z-index:2147483620;inset:0;display:grid;place-items:center;padding:18px}.lead-backdrop{position:absolute;inset:0;background:rgba(10,16,29,.68);backdrop-filter:blur(6px)}.lead-panel{position:relative;width:min(700px,100%);max-height:calc(100dvh - 24px);overflow:hidden;padding:34px 38px 36px;border-radius:23px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28)}.lead-panel[data-current-step="calendar"]{width:min(1000px,100%);padding:0}.lead-close{position:absolute;z-index:2;top:17px;right:17px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#657086;font-size:24px;line-height:1;cursor:pointer}.lead-progress{position:absolute;top:0;right:0;left:0;height:4px;background:#edf0f5}.lead-progress i{width:50%;height:100%;display:block;background:var(--indigo);transition:width .2s ease}.lead-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--indigo);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.lead-eyebrow::before{width:18px;height:2px;background:var(--indigo);content:""}.lead-panel h2{max-width:580px;margin:12px 45px 8px 0;font-size:36px;line-height:1.05;letter-spacing:-.045em}.lead-panel [data-lead-step]>p{margin-bottom:20px;color:var(--muted);font-size:13px}.lead-form{display:grid;gap:13px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.lead-form>label,.field-row label{display:grid;gap:6px;color:#46536a;font-size:11px;font-weight:800}.lead-form label small{color:#909aac;font-weight:600}.lead-form input:not([type="hidden"]){width:100%;min-height:47px;padding:0 13px;border:1px solid #cfd6e1;border-radius:9px;outline:0;font-size:14px}.lead-form input:focus{border-color:var(--indigo);box-shadow:0 0 0 3px rgba(95,88,245,.1)}.interest-selector{min-width:0;display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:0;padding:0;border:0}.interest-selector legend{margin-bottom:7px;color:#46536a;font-size:11px;font-weight:800}.interest-selector label{position:relative;min-width:0;cursor:pointer}.interest-selector input{position:absolute;opacity:0;pointer-events:none}.interest-selector span{min-height:43px;display:grid;place-items:center;padding:7px 8px;border:1px solid #cfd6e1;border-radius:9px;color:#526078;font-size:10px;font-weight:750;line-height:1.25;text-align:center;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease}.interest-selector input:checked+span{border-color:var(--indigo);background:var(--indigo-soft);color:#413bc7;box-shadow:inset 0 0 0 1px rgba(95,88,245,.3)}.interest-selector input:focus-visible+span{outline:3px solid rgba(95,88,245,.3);outline-offset:2px}.lead-primary{min-height:49px;display:inline-flex;align-items:center;justify-content:center;padding:11px 22px;border:0;border-radius:999px;background:var(--ink);color:#fff;font-weight:750;cursor:pointer}.form-submit{position:relative;width:100%;margin-top:2px;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.form-submit .button-label{transition:opacity .16s ease,transform .16s ease}.button-spinner{position:absolute;top:50%;left:50%;width:19px;height:19px;margin:-9.5px 0 0 -9.5px;opacity:0;border:2px solid rgba(255,255,255,.34);border-top-color:#fff;border-radius:50%;transform:scale(.75);transition:opacity .16s ease,transform .16s ease}.form-submit.is-loading .button-label{opacity:0;transform:scale(.96)}.form-submit.is-loading .button-spinner{opacity:1;transform:scale(1);animation:lead-spin .7s linear infinite}.form-submit:disabled{cursor:wait}.form-microcopy{color:#8c96a8;font-size:9px;text-align:center}.form-error{min-height:0;margin:0!important;color:#c9372c!important;font-size:11px!important;font-weight:700}.form-error:empty{display:none}.calendar-step{display:grid;grid-template-columns:290px minmax(0,1fr);min-height:635px}.booking-summary{display:flex;flex-direction:column;padding:55px 35px 36px;border-right:1px solid var(--line);background:linear-gradient(145deg,#f2f2ff,#fafbfe)}.booking-summary h2{margin:18px 0 14px;font-size:34px}.booking-summary>p{color:var(--muted);font-size:14px;line-height:1.55}.booking-summary ul{display:grid;gap:16px;margin:25px 0 0;padding:24px 0 0;border-top:1px solid #dfe2ed;list-style:none}.booking-summary li{display:flex;align-items:center;gap:11px;color:#374359;font-size:13px}.booking-summary li>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--indigo);font-size:13px}.booking-host{display:flex;align-items:center;gap:11px;margin-top:auto;padding-top:25px}.booking-host>span{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font-weight:800}.booking-host div{display:grid;gap:2px}.booking-host small{color:#7c879b;font-size:11px}.booking-host strong{font-size:13px}.booking-calendar{min-width:0;padding:48px 42px 34px}.booking-calendar h2{margin:12px 45px 7px 0;font-size:38px}.booking-calendar>p{margin-bottom:22px;color:var(--muted);font-size:14px}.calendar-frame{min-height:397px;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff}.calendar-loading{min-height:397px;display:flex;align-items:center;justify-content:center;gap:9px;color:#778399;font-size:14px}.calendar-loading span{width:15px;height:15px;border:2px solid #dce1e9;border-top-color:var(--indigo);border-radius:50%;animation:lead-spin .7s linear infinite}.calendar-fallback{min-height:330px;display:grid;place-items:center;padding:25px;text-align:center}.calendar-fallback p{color:var(--muted)}.calendar-retry{min-height:44px;padding:0 17px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--indigo);font-weight:800;cursor:pointer}.native-calendar{padding:20px}.calendar-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px;font-size:13px}.calendar-heading span{color:#8a95a7;font-size:11px;font-weight:700}.calendar-days{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.calendar-day{min-height:57px;display:grid;place-items:center;padding:7px 4px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#4b5870;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}.calendar-day span{font-size:12px;font-weight:800}.calendar-day.is-selected{border-color:#7670f7;background:var(--indigo-soft);color:#403bc5;box-shadow:inset 0 0 0 1px rgba(95,88,245,.72),0 7px 18px -15px rgba(95,88,245,.7)}.calendar-time-heading{margin-top:19px}.calendar-slot-group{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.calendar-slot{min-height:45px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#344157;font-size:13px;font-weight:800;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.calendar-slot.is-selected{border-color:var(--indigo);background:linear-gradient(135deg,#655ef7,#554df0);color:#fff;box-shadow:0 9px 20px -13px rgba(79,70,229,.9);transform:translateY(-1px)}.calendar-day:active,.calendar-slot:active{transform:scale(.975);transition-duration:.08s}.calendar-selection{min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;padding:7px 7px 7px 15px;border-radius:11px;background:var(--ink);color:#fff}.calendar-selection span{font-size:12px;font-weight:800}.calendar-selection button{min-height:43px;padding:0 17px;border:0;border-radius:8px;background:#fff;color:var(--ink);font-size:12px;font-weight:800;cursor:pointer}.calendar-selection button:disabled{background:rgba(255,255,255,.12);color:#aeb7c7;cursor:default}.contact-instead{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:5px 15px;border-radius:10px;background:var(--soft);color:#657188;font-size:12px}.contact-instead button{min-height:38px;border:0;background:none;color:var(--indigo);font-weight:800;cursor:pointer}.lead-success{padding:30px 0 15px;text-align:center}.success-icon{width:55px;height:55px;display:grid;place-items:center;margin:auto;border-radius:50%;background:#e7f7f1;color:var(--green);font-size:23px;font-weight:800}.lead-success .lead-eyebrow{margin-top:16px;justify-content:center}.lead-success h2{margin-inline:auto}.booking-details{margin:17px auto 22px;padding:13px;border-radius:10px;background:var(--soft);font-size:12px;font-weight:700}@keyframes lead-spin{to{transform:rotate(360deg)}}
@media(hover:hover){.calendar-day:hover:not(.is-selected),.calendar-slot:hover:not(.is-selected){border-color:#c4c2fb;background:#f8f8ff;color:#4842cc;box-shadow:0 7px 18px -16px rgba(79,70,229,.7);transform:translateY(-1px)}}

/* Typography and control sizing follow /maler exactly. Keep this block after the
   legacy homepage rules so style.css cannot reintroduce the old scale. */
body.home-page,
body.home-page button,
body.home-page input,
body.home-page .lead-modal {
    font-family: "DM Sans", system-ui, sans-serif;
}

body.home-page {
    line-height: normal;
}

@media (min-width: 561px) {
    body.home-page .home-hero-copy h1 {
        max-width: 520px;
        font-size: clamp(45px, 4.55vw, 60px);
        font-weight: 800;
        line-height: 1.02;
        letter-spacing: -.055em;
    }
}

body.home-page .home-section-heading h2,
body.home-page .home-install-copy h2,
body.home-page .home-faq-intro h2 {
    font-size: clamp(34px, 4vw, 49px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.048em;
}

body.home-page .lead-panel h2,
body.home-page .booking-summary h2,
body.home-page .booking-calendar h2 {
    font-family: "DM Sans", system-ui, sans-serif;
    font-weight: 700;
}

body.home-page .lead-primary {
    min-height: 46px;
    padding: 11px 20px;
    font-size: 16px;
    font-weight: 750;
    line-height: 1.1;
}

body.home-page .lead-primary.form-submit {
    min-height: 54px;
    padding-inline: 24px;
}

@media(max-width:900px){.home-nav{grid-template-columns:1fr auto}.home-nav-links,.home-nav-cta{display:none}.home-menu-toggle{display:inline-flex}.home-hero-grid,.home-install-grid{grid-template-columns:1fr}.home-hero-grid{gap:43px}.home-hero-copy{max-width:650px}.home-site-card,.home-install-visual{max-width:680px}.home-products-grid{grid-template-columns:1fr 1fr}.home-product-card:last-child{grid-column:1/-1}.home-flow-grid{grid-template-columns:1fr 1fr}.home-flow-card:last-child{grid-column:1/-1}.home-install-copy{grid-row:1;max-width:650px}.home-install-visual{grid-row:2}.home-faq-layout{gap:50px}.lead-panel[data-current-step="calendar"]{width:min(720px,100%);overflow-y:auto}.calendar-step{grid-template-columns:1fr}.booking-summary{display:block;padding:34px 35px 28px;border-right:0;border-bottom:1px solid var(--line)}.booking-summary h2{margin-block:12px 8px}.booking-summary>p{margin-bottom:0}.booking-summary ul,.booking-host{display:none}}
@media(max-width:700px){.home-container{padding-inline:17px}.home-section{padding:76px 0}.home-products-grid{grid-template-columns:1fr}.home-product-card:last-child{grid-column:auto}.home-flow-grid{grid-template-columns:1fr}.home-flow-card:last-child{grid-column:auto}.home-pricing-card{grid-template-columns:1fr}.home-pricing-summary{border-right:0;border-bottom:1px solid #e5e8ef}.home-pricing-included ul{grid-template-columns:1fr}.home-faq-layout{grid-template-columns:1fr;gap:27px}.home-final-inner{align-items:stretch;flex-direction:column}.home-final-inner>div:last-child{flex-direction:column}.home-footer>.home-container{grid-template-columns:1fr}.home-footer div>div{flex-wrap:wrap}.home-footer small{grid-column:auto}}
@media(max-width:560px){.home-header{inset:max(8px,env(safe-area-inset-top)) 0 auto}.home-header .home-container{padding-inline:9px}.home-nav{min-height:55px;padding:6px 7px 6px 14px}.home-logo{font-size:1.23rem}.home-logo img{width:20px;height:20px}.home-hero{padding:101px 0 60px}.home-hero-copy h1{max-width:355px;margin:18px 0 16px;font-size:clamp(2.25rem,10.4vw,2.75rem);line-height:1.02}.home-hero-copy>p{max-width:360px;margin-bottom:17px;font-size:.94rem;line-height:1.52}.home-hero-price{margin-bottom:18px}.home-hero-price strong{font-size:1.8rem}.home-hero-price span{font-size:.94rem}.home-hero-actions{display:grid;grid-template-columns:1fr 1fr}.home-hero-actions .home-button{width:100%;padding-inline:14px}.home-hero-actions>div{min-width:0}.home-site-card,.home-install-visual{border-width:5px;border-radius:20px}.home-browser-bar{min-height:35px}.home-site-hero{min-height:330px;padding:20px 15px}.home-site-top span{display:none}.home-site-message{width:72%;padding:43px 0 0 3px}.home-site-message strong{font-size:1.75rem}.home-widget-card{right:9px;bottom:9px;width:65%;padding:14px}.home-section-heading{text-align:left}.home-section-heading .home-kicker{justify-content:flex-start}.home-section-heading h2,.home-install-copy h2,.home-faq-intro h2{font-size:2rem}.home-flow-visual{min-height:195px}.home-install-site{min-height:320px;padding:35px 24px}.home-install-site>strong{font-size:1.75rem}.home-install-site>div{width:59%;padding:14px}.home-pricing-summary,.home-pricing-included{padding:30px 26px}.home-pricing-included .home-button{width:100%}.home-final-inner{padding:29px 23px}.home-final-inner .home-button{width:100%}.home-page .lead-modal{align-items:end;padding:0}.lead-panel{width:100%;max-height:calc(100dvh - 8px);padding:27px 16px max(17px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.lead-panel[data-current-step="calendar"]{width:100%;padding:0}.lead-close{top:12px;right:12px}.lead-panel h2{margin-top:9px;font-size:29px}.lead-panel [data-lead-step]>p{margin-bottom:14px;font-size:12px}.lead-form{gap:10px}.field-row{gap:8px}.lead-form>label,.field-row label{font-size:9px}.lead-form input:not([type="hidden"]){min-height:44px;padding-inline:10px;font-size:13px}.interest-selector{grid-template-columns:1fr;gap:6px}.interest-selector span{min-height:39px}.calendar-step{min-height:0}.booking-summary{display:none}.booking-calendar{padding:22px 16px max(17px,env(safe-area-inset-bottom))}.booking-calendar>.lead-eyebrow{display:none}.booking-calendar h2{margin-top:0;font-size:28px}.booking-calendar>p{margin-bottom:14px;font-size:13px}.calendar-frame,.calendar-loading{min-height:325px}.native-calendar{padding:11px}.calendar-heading{font-size:12px}.calendar-heading span{font-size:10px}.calendar-days{grid-template-columns:repeat(3,1fr)}.calendar-day:nth-child(n+7){display:none}.calendar-day{min-height:51px}.calendar-day span{font-size:11px}.calendar-slot-group{grid-template-columns:repeat(6,1fr);gap:5px}.calendar-slot{min-height:42px;font-size:12px}.calendar-selection{padding:6px}.calendar-selection span{padding-left:4px;font-size:11px}.calendar-selection button{min-height:40px}}
@media(max-width:340px){.lead-panel{overflow-y:auto}.field-row{grid-template-columns:1fr}}
@media(max-width:560px){body.home-page .home-hero-copy h1{font-size:clamp(36px,9.6vw,41px);font-weight:800;line-height:1.03;letter-spacing:-.05em}body.home-page .home-section-heading h2,body.home-page .home-install-copy h2,body.home-page .home-faq-intro h2{font-size:34px}body.home-page .lead-primary.form-submit{min-height:49px}}
@media(prefers-reduced-motion:reduce){.home-page *{scroll-behavior:auto!important;transition-duration:.01ms!important}.home-reveal{opacity:1;transform:none}}

/* --------------------------------------------------------------------------
   Premium multi-product homepage (2026-08)
   Kept page-scoped so the dedicated /maler funnel remains independent.
   -------------------------------------------------------------------------- */

html {
    scroll-behavior: smooth;
}

body.home-page {
    --ink: #101522;
    --ink-soft: #1a2131;
    --muted: #647084;
    --line: rgba(16, 21, 34, .12);
    --paper: #f4f3ee;
    --soft: #f7f7f4;
    --primary: #625af6;
    --primary-deep: #4f46e5;
    --primary-soft: #ecebff;
    --lime: #d9f26f;
    --coral: #ff9b73;
    --aqua: #77ded2;
    --success: #07825e;
    margin: 0;
    min-width: 320px;
    color: var(--ink);
    background: #fff;
    font-family: "DM Sans", system-ui, sans-serif;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    overflow-x: clip;
}

body.home-page::before,
body.home-page::after {
    display: none;
}

.home-page *,
.home-page *::before,
.home-page *::after {
    box-sizing: border-box;
}

.home-page [hidden] {
    display: none !important;
}

.home-page :where(h1, h2, h3, p, ul, figure) {
    margin: 0;
}

.home-page :where(ul) {
    padding: 0;
    list-style: none;
}

.home-page :where(a) {
    color: inherit;
    text-decoration: none;
}

.home-page :where(button, input) {
    font: inherit;
}

.home-page :where(button) {
    -webkit-tap-highlight-color: transparent;
}

.home-page.modal-open {
    overflow: hidden;
}

.home-page :where(a, button, summary):focus-visible {
    outline: 3px solid rgba(98, 90, 246, .35);
    outline-offset: 4px;
}

.home-container {
    width: min(100%, 1240px);
    margin-inline: auto;
    padding-inline: 28px;
}

.home-section {
    padding: 124px 0;
    scroll-margin-top: 96px;
}

.home-skip-link {
    position: fixed;
    z-index: 2147483647;
    top: 8px;
    left: 10px;
    padding: 11px 16px;
    border-radius: 10px;
    color: #fff !important;
    background: var(--ink);
    transform: translateY(-150%);
}

.home-skip-link:focus {
    transform: none;
}

/* Navigation */
.home-header {
    position: fixed;
    z-index: 100;
    inset: 16px 0 auto;
    transition: transform .32s cubic-bezier(.2, .8, .2, 1);
}

.home-header.is-hidden {
    transform: translateY(-135%);
}

.home-nav {
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    min-height: 64px;
    padding: 8px 9px 8px 20px;
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 999px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 18px 50px -36px rgba(16, 21, 34, .5);
    backdrop-filter: blur(18px) saturate(1.2);
    transition: border-color .25s ease, box-shadow .25s ease, background-color .25s ease;
}

.home-header.is-scrolled .home-nav {
    border-color: rgba(16, 21, 34, .09);
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 18px 55px -31px rgba(16, 21, 34, .42);
}

.home-logo {
    display: inline-flex;
    align-items: center;
    justify-self: start;
    gap: 9px;
    width: max-content;
    color: var(--ink);
    font-size: 1.38rem;
    font-weight: 800;
    letter-spacing: -.05em;
}

.home-logo img {
    width: 24px;
    height: 24px;
}

.home-logo > span > span {
    color: var(--primary);
}

.home-nav-links {
    display: flex;
    align-items: center;
    gap: 3px;
}

.home-nav-links a {
    position: relative;
    padding: 10px 13px;
    border-radius: 999px;
    color: #596579;
    font-size: .82rem;
    font-weight: 700;
    transition: color .2s ease, background-color .2s ease;
}

.home-nav-links a:hover {
    color: var(--ink);
    background: rgba(16, 21, 34, .045);
}

.home-nav-actions {
    justify-self: end;
}

.home-nav-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 10px 21px;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: var(--ink);
    box-shadow: 0 13px 25px -17px rgba(16, 21, 34, .9);
    font-size: .84rem;
    font-weight: 800;
    cursor: pointer;
    transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.home-nav-cta:hover {
    background: var(--primary-deep);
    box-shadow: 0 16px 30px -17px rgba(79, 70, 229, .75);
    transform: translateY(-1px);
}

.home-menu-toggle {
    display: none;
    width: 45px;
    height: 45px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    color: var(--ink);
    background: #f0f1f4;
    cursor: pointer;
}

.home-mobile-menu {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    left: 0;
    display: grid;
    gap: 3px;
    padding: 12px;
    border: 1px solid rgba(16, 21, 34, .1);
    border-radius: 22px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 28px 65px -30px rgba(16, 21, 34, .42);
}

.home-mobile-menu a,
.home-mobile-menu > button {
    min-height: 46px;
    padding: 12px 14px;
    border: 0;
    border-radius: 12px;
    color: #4f5b6f;
    background: transparent;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
}

.home-mobile-menu > button {
    margin-top: 4px;
    color: #fff;
    background: var(--ink);
    text-align: center;
}

/* Shared typography and controls */
.home-eyebrow,
.home-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--primary-deep);
    font-size: .71rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.home-eyebrow {
    padding: 8px 12px;
    border: 1px solid rgba(98, 90, 246, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .62);
}

.home-eyebrow::before {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--primary);
    box-shadow: 0 0 0 5px rgba(98, 90, 246, .1);
    content: "";
}

.home-kicker::before {
    width: 24px;
    height: 2px;
    border-radius: 99px;
    background: currentColor;
    content: "";
}

.home-section-heading {
    max-width: 780px;
    margin: 0 auto 56px;
    text-align: center;
}

.home-section-heading-split {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, .72fr);
    align-items: end;
    gap: 80px;
    max-width: none;
    text-align: left;
}

.home-section-heading h2,
.home-estimas-copy h2,
.home-faq-intro h2 {
    margin-top: 15px;
    color: var(--ink);
    font-size: clamp(2.4rem, 4.2vw, 3.7rem);
    font-weight: 800;
    line-height: .99;
    letter-spacing: -.062em;
}

body.home-page .home-section-heading h2,
body.home-page .home-faq-intro h2 {
    font-size: clamp(2.4rem, 4.2vw, 3.7rem);
    font-weight: 800;
    line-height: .99;
    letter-spacing: -.062em;
}

.home-section-heading > p,
.home-section-heading-split > p {
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.72;
}

.home-section-heading:not(.home-section-heading-split) > p {
    margin-top: 17px;
}

.home-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 56px;
    padding: 14px 23px;
    border: 0;
    border-radius: 999px;
    font-size: .91rem;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease;
}

.home-button > span {
    display: inline-grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 50%;
    font-size: .85rem;
}

.home-button:hover {
    transform: translateY(-2px);
}

.home-button-primary {
    color: #fff !important;
    background: var(--ink);
    box-shadow: 0 17px 30px -20px rgba(16, 21, 34, .88);
}

.home-button-primary > span {
    background: rgba(255, 255, 255, .12);
}

.home-button-primary:hover {
    background: var(--primary-deep);
    box-shadow: 0 18px 32px -18px rgba(79, 70, 229, .65);
}

.home-button-secondary {
    border: 1px solid rgba(16, 21, 34, .13);
    color: var(--ink);
    background: rgba(255, 255, 255, .55);
}

.home-button-secondary:hover {
    border-color: rgba(16, 21, 34, .24);
    background: #fff;
}

/* Hero */
.home-hero {
    position: relative;
    overflow: hidden;
    padding: 148px 0 0;
    background:
        radial-gradient(circle at 89% 13%, rgba(119, 222, 210, .19), transparent 25%),
        radial-gradient(circle at 8% 50%, rgba(255, 155, 115, .16), transparent 22%),
        linear-gradient(180deg, #f7f6f1 0%, #f2f1eb 100%);
}

.home-hero::before {
    position: absolute;
    inset: 0;
    opacity: .38;
    background-image: linear-gradient(rgba(16, 21, 34, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(16, 21, 34, .04) 1px, transparent 1px);
    background-size: 78px 78px;
    mask-image: linear-gradient(to bottom, #000, transparent 76%);
    pointer-events: none;
    content: "";
}

.home-hero-shape {
    position: absolute;
    border: 1px solid rgba(98, 90, 246, .15);
    pointer-events: none;
}

.home-hero-shape-one {
    top: 18%;
    left: -110px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
}

.home-hero-shape-two {
    right: -80px;
    bottom: 15%;
    width: 180px;
    height: 300px;
    border-radius: 90px 0 0 90px;
}

.home-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(590px, 1.22fr);
    align-items: center;
    gap: 62px;
    min-height: 630px;
}

.home-hero-copy {
    position: relative;
    z-index: 2;
    max-width: 510px;
    padding-bottom: 34px;
}

body.home-page .home-hero-copy h1 {
    max-width: 540px;
    margin: 23px 0 22px;
    color: var(--ink);
    font-size: clamp(2.75rem, 3.6vw, 3.55rem);
    font-weight: 800;
    line-height: .98;
    letter-spacing: -.06em;
}

.home-hero-copy h1 span {
    color: var(--primary);
}

.home-hero-copy > p {
    max-width: 520px;
    color: #596579;
    font-size: 1.06rem;
    line-height: 1.7;
}

.home-hero-offer {
    display: flex;
    align-items: center;
    gap: 17px;
    width: max-content;
    max-width: 100%;
    margin-top: 25px;
    padding: 13px 16px 13px 0;
    border-top: 1px solid rgba(16, 21, 34, .13);
    border-bottom: 1px solid rgba(16, 21, 34, .13);
}

.home-hero-offer > div {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.home-hero-offer span,
.home-hero-offer small {
    color: #687487;
    font-size: .72rem;
    font-weight: 700;
}

.home-hero-offer strong {
    color: var(--ink);
    font-size: 1.5rem;
    letter-spacing: -.045em;
}

.home-hero-offer > small {
    padding-left: 17px;
    border-left: 1px solid rgba(16, 21, 34, .13);
}

.home-hero-actions {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 24px;
}

.home-hero-trust {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 22px;
    width: min(100%, 470px);
    margin-top: 21px;
    color: #667285;
    font-size: .72rem;
    font-weight: 700;
}

.home-hero-trust li {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 0;
    padding: 2px 0;
}

.home-hero-trust li > span {
    display: grid;
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    color: var(--primary-deep);
    background: #fff;
    font-size: .58rem;
    box-shadow: 0 5px 13px -9px rgba(16, 21, 34, .7);
}

.home-hero-visual {
    position: relative;
    min-width: 0;
}

.home-concept-label {
    position: absolute;
    z-index: 5;
    top: -12px;
    right: 29px;
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid rgba(16, 21, 34, .1);
    border-radius: 999px;
    color: #657185;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 14px 30px -22px rgba(16, 21, 34, .45);
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    backdrop-filter: blur(12px);
}

.home-concept-label i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--success);
    box-shadow: 0 0 0 4px rgba(7, 130, 94, .1);
}

.home-hero-stage {
    position: relative;
    min-height: 570px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 40px;
    background:
        radial-gradient(circle at 88% 8%, rgba(119, 222, 210, .18), transparent 29%),
        linear-gradient(145deg, #202c2c 0%, #111821 72%);
    box-shadow: 0 46px 90px -55px rgba(16, 21, 34, .72), inset 0 1px rgba(255, 255, 255, .08);
}

.home-hero-stage::before {
    position: absolute;
    inset: 0;
    opacity: .1;
    background-image: linear-gradient(rgba(255, 255, 255, .16) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .16) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(135deg, #000, transparent 82%);
    pointer-events: none;
    content: "";
}

.home-browser {
    overflow: hidden;
    border: 5px solid rgba(255, 255, 255, .94);
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 35px 70px -34px rgba(0, 0, 0, .62);
}

.home-hero-browser {
    position: absolute;
    z-index: 2;
    top: 38px;
    left: 4%;
    width: 92%;
    transform: none;
}

.home-browser-bar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    min-height: 37px;
    padding: 0 11px;
    border-bottom: 1px solid #e7e9ed;
    background: #f5f6f8;
}

.home-browser-bar > div {
    display: flex;
    gap: 5px;
}

.home-browser-bar i {
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ff806e;
}

.home-browser-bar i:nth-child(2) {
    background: #f5c451;
}

.home-browser-bar i:nth-child(3) {
    background: #55c78d;
}

.home-browser-bar > span {
    width: auto;
    min-width: 145px;
    margin: 0;
    padding: 5px 18px;
    border: 1px solid #e0e3e8;
    border-radius: 999px;
    color: #8d96a4;
    background: #fff;
    font-size: .56rem;
    text-align: center;
}

.home-browser-bar > b {
    justify-self: end;
    width: 12px;
    height: 12px;
    border: 1px solid #d0d5dc;
    border-radius: 50%;
}

.home-mock-site {
    min-height: 468px;
    padding: 18px;
    color: #122129;
    background: #f5f2ea;
}

.home-mock-nav {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    min-height: 31px;
}

.home-mock-nav > strong {
    font-size: .75rem;
    letter-spacing: -.04em;
}

.home-mock-nav > strong span {
    color: #cf5e38;
}

.home-mock-nav > div {
    display: flex;
    gap: 17px;
}

.home-mock-nav > div span {
    color: #66706f;
    font-size: .46rem;
    font-weight: 700;
}

.home-mock-nav > em {
    justify-self: end;
    padding: 7px 10px;
    border-radius: 5px;
    color: #fff;
    background: #122129;
    font-size: .47rem;
    font-style: normal;
    font-weight: 800;
}

.home-mock-hero {
    position: relative;
    display: block;
    align-items: center;
    min-height: 342px;
    margin-top: 13px;
    overflow: hidden;
    border-radius: 13px;
    background: #24312e;
}

.home-mock-photo,
.home-mock-photo-shade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.home-mock-photo {
    object-fit: cover;
    object-position: center 49%;
}

.home-mock-photo-shade {
    z-index: 1;
    background: linear-gradient(90deg, rgba(10, 20, 19, .9) 0%, rgba(10, 20, 19, .69) 35%, rgba(10, 20, 19, .12) 68%, transparent 100%);
}

.home-mock-copy {
    position: relative;
    z-index: 2;
    width: 58%;
    padding: 50px 0 38px 32px;
    color: #fff;
}

.home-mock-copy small {
    color: #d7e7bc;
    font-size: .46rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.home-mock-copy > strong {
    display: block;
    margin: 11px 0 18px;
    font-size: 2.05rem;
    line-height: .98;
    letter-spacing: -.055em;
}

.home-mock-copy > p {
    max-width: 255px;
    margin: -5px 0 18px;
    color: rgba(255, 255, 255, .72);
    font-size: .58rem;
    line-height: 1.55;
}

.home-mock-copy > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 11px;
    border-radius: 6px;
    color: #17221f;
    background: #edf2dc;
    font-size: .51rem;
    font-weight: 800;
}

.home-mock-copy > span b {
    font-size: .6rem;
}

.home-mock-footer {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    padding-top: 11px;
}

.home-mock-footer span {
    display: grid;
    gap: 2px;
    padding: 9px 10px;
    border: 1px solid rgba(18, 33, 41, .11);
    border-radius: 7px;
    background: rgba(255, 255, 255, .34);
}

.home-mock-footer b {
    color: #293634;
    font-size: .49rem;
}

.home-mock-footer small {
    color: #78817e;
    font-size: .38rem;
}

.home-trade-strip {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 37px;
    margin-top: 55px;
    padding-block: 28px;
    border-top: 1px solid rgba(16, 21, 34, .1);
}

.home-trade-strip p {
    color: #808a99;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.home-trade-strip > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-width: 0;
    color: #394355;
    font-size: .77rem;
    font-weight: 750;
}

.home-trade-strip i {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--primary);
}

/* Product bento */
.home-solutions-section {
    position: relative;
    background: #fff;
}

.home-solutions-section::before {
    position: absolute;
    top: 0;
    left: 50%;
    width: min(100% - 56px, 1184px);
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(16, 21, 34, .11), transparent);
    transform: translateX(-50%);
    content: "";
}

.home-products-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 22px;
}

.home-product-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 650px;
    padding: 38px;
    overflow: hidden;
    border: 1px solid rgba(16, 21, 34, .08);
    border-radius: 34px;
    flex-direction: column;
    align-items: stretch;
    box-shadow: 0 38px 75px -62px rgba(16, 21, 34, .48), inset 0 1px rgba(255, 255, 255, .62);
    transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease;
}

.home-product-card:hover {
    box-shadow: 0 44px 82px -55px rgba(16, 21, 34, .46), inset 0 1px rgba(255, 255, 255, .72);
    transform: translateY(-5px);
}

.home-product-website {
    grid-column: span 7;
    background:
        radial-gradient(circle at 100% 0, rgba(255, 255, 255, .86), transparent 34%),
        #ece8df;
}

.home-product-shop {
    grid-column: span 5;
    color: #fff;
    background:
        radial-gradient(circle at 100% 30%, rgba(98, 90, 246, .28), transparent 35%),
        #131a29;
    box-shadow: 0 38px 75px -56px rgba(16, 21, 34, .78), inset 0 1px rgba(255, 255, 255, .08);
}

.home-product-estimas {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: minmax(330px, .83fr) minmax(450px, 1.17fr);
    align-items: center;
    gap: 60px;
    min-height: 485px;
    background:
        radial-gradient(circle at 90% 5%, rgba(255, 255, 255, .82), transparent 27%),
        linear-gradient(135deg, #e8e5ff, #f2f0ff);
}

.home-product-copy {
    position: relative;
    z-index: 3;
    display: flex;
    width: 100%;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
}

.home-product-topline {
    display: flex;
    align-items: center;
    gap: 10px;
}

.home-product-topline > span {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border: 1px solid rgba(16, 21, 34, .13);
    border-radius: 50%;
    color: #697486;
    background: rgba(255, 255, 255, .42);
    font-size: .59rem;
    font-weight: 800;
}

.home-product-topline > b {
    color: #5e697c;
    font-size: .65rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.home-product-card h3 {
    max-width: 480px;
    margin: 22px 0 13px;
    color: var(--ink);
    font-size: clamp(2rem, 3.2vw, 3.15rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.055em;
}

.home-product-card .home-product-copy > p {
    max-width: 500px;
    color: #5e697b;
    font-size: .91rem;
    line-height: 1.62;
}

.home-product-card ul {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 18px;
}

.home-product-card li {
    padding: 7px 10px;
    border: 1px solid rgba(16, 21, 34, .1);
    border-radius: 999px;
    color: #5a6677;
    background: rgba(255, 255, 255, .46);
    font-size: .64rem;
    font-weight: 700;
}

.home-product-bottom {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin-top: auto;
    padding-top: 25px;
}

.home-product-bottom > div {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 8px;
}

.home-product-bottom small {
    width: 100%;
    color: #798496;
    font-size: .59rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.home-product-bottom strong {
    color: var(--ink);
    font-size: 1.38rem;
    line-height: 1;
    letter-spacing: -.04em;
}

.home-product-bottom em {
    color: #667285;
    font-size: .67rem;
    font-style: normal;
    font-weight: 700;
}

.home-card-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 43px;
    padding: 7px 8px 7px 15px;
    border: 1px solid rgba(16, 21, 34, .11);
    border-radius: 999px;
    color: var(--ink);
    background: rgba(255, 255, 255, .64);
    font-size: .72rem;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
}

.home-card-link > span {
    display: grid;
    width: 27px;
    height: 27px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--ink);
}

.home-card-link:hover {
    border-color: rgba(16, 21, 34, .2);
    background: #fff;
    transform: translateY(-1px);
}

.home-product-art {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.home-website-art {
    width: 100%;
    height: 300px;
    flex: 0 0 300px;
    margin: 28px -9px -38px 13px;
}

.home-art-browser {
    position: absolute;
    inset: 10px 0 -9px 0;
    overflow: hidden;
    border: 6px solid #fff;
    border-radius: 19px 19px 0 0;
    background: #fff;
    box-shadow: 0 28px 55px -34px rgba(16, 21, 34, .65);
    transform: rotate(-1.5deg);
}

.home-art-bar {
    display: flex;
    align-items: center;
    gap: 5px;
    height: 31px;
    padding: 0 10px;
    border-bottom: 1px solid #eaecf0;
    background: #f5f6f8;
}

.home-art-bar > i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ff8f74;
}

.home-art-bar > i:nth-child(2) {
    background: #f0c354;
}

.home-art-bar > i:nth-child(3) {
    background: #57c691;
}

.home-art-bar > span {
    width: 40%;
    height: 10px;
    margin: auto;
    border: 1px solid #e1e4e8;
    border-radius: 8px;
    background: #fff;
}

.home-art-web-nav {
    display: flex;
    align-items: center;
    gap: 18px;
    min-height: 38px;
    padding: 0 17px;
    background: #f4f1e8;
}

.home-art-web-nav b {
    margin-right: auto;
    color: #25453f;
    font-size: .57rem;
    letter-spacing: .06em;
}

.home-art-web-nav span {
    width: 29px;
    height: 3px;
    border-radius: 5px;
    background: rgba(37, 69, 63, .22);
}

.home-art-web-nav em {
    width: 42px;
    height: 15px;
    border-radius: 4px;
    background: #25453f;
}

.home-art-web-body {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    min-height: 220px;
    color: #18312e;
    background: #e8e3d7;
}

.home-art-web-body > div {
    padding: 35px 0 25px 29px;
}

.home-art-web-body small {
    color: #a85535;
    font-size: .41rem;
    font-weight: 800;
    letter-spacing: .11em;
}

.home-art-web-body strong {
    display: block;
    margin: 10px 0 21px;
    font-size: 1.62rem;
    line-height: .95;
    letter-spacing: -.06em;
}

.home-art-web-body > div i {
    display: inline-block;
    width: 47px;
    height: 17px;
    margin-right: 5px;
    border-radius: 4px;
    background: #25453f;
}

.home-art-web-body > div i + i {
    border: 1px solid rgba(37, 69, 63, .25);
    background: transparent;
}

.home-art-web-body figure {
    position: relative;
    overflow: hidden;
    background: #25453f;
}

.home-art-web-body figure span:nth-child(1) {
    position: absolute;
    top: 28px;
    right: 25px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--coral);
}

.home-art-web-body figure span:nth-child(2) {
    position: absolute;
    right: 23px;
    bottom: 0;
    width: 82%;
    height: 62%;
    background: #bfc9b7;
    clip-path: polygon(0 100%, 42% 0, 100% 100%);
}

.home-art-web-body figure span:nth-child(3) {
    position: absolute;
    right: 39px;
    bottom: 0;
    width: 65%;
    height: 38%;
    background: #f2ede3;
}

.home-art-web-body figure span:nth-child(4) {
    position: absolute;
    right: 67px;
    bottom: 0;
    width: 24px;
    height: 63px;
    border: 5px solid #25453f;
    background: #9bb6b0;
}

.home-art-score {
    position: absolute;
    right: -12px;
    bottom: 21px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 12px;
    border: 1px solid rgba(16, 21, 34, .08);
    border-radius: 13px;
    background: rgba(255, 255, 255, .95);
    box-shadow: 0 19px 35px -23px rgba(16, 21, 34, .65);
}

.home-art-score > span {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 8px;
    color: #fff;
    background: var(--success);
    font-size: .65rem;
}

.home-art-score > div {
    display: grid;
    gap: 1px;
}

.home-art-score small {
    color: #8993a2;
    font-size: .44rem;
    font-weight: 700;
    text-transform: uppercase;
}

.home-art-score strong {
    font-size: .55rem;
}

.home-product-shop .home-product-topline > span {
    border-color: rgba(255, 255, 255, .13);
    color: #b8c1d0;
    background: rgba(255, 255, 255, .06);
}

.home-product-shop .home-product-topline > b,
.home-product-shop .home-product-copy > p,
.home-product-shop .home-product-bottom small,
.home-product-shop .home-product-bottom em {
    color: #9da8ba;
}

.home-product-shop h3,
.home-product-shop .home-product-bottom strong {
    color: #fff;
}

.home-product-shop li {
    border-color: rgba(255, 255, 255, .1);
    color: #bdc5d2;
    background: rgba(255, 255, 255, .055);
}

.home-product-shop .home-card-link {
    border-color: rgba(255, 255, 255, .12);
    color: #fff;
    background: rgba(255, 255, 255, .07);
}

.home-product-shop .home-card-link > span {
    color: var(--ink);
    background: var(--lime);
}

.home-product-shop .home-card-link:hover {
    background: rgba(255, 255, 255, .13);
}

.home-shop-art {
    width: auto;
    height: 305px;
    flex: 0 0 305px;
    margin: 28px -38px -38px;
    padding: 24px 27px 0;
    background: linear-gradient(155deg, rgba(255, 255, 255, .035), rgba(98, 90, 246, .16));
}

.home-shop-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
}

.home-shop-head strong {
    color: #fff;
    font-size: .66rem;
    letter-spacing: .09em;
}

.home-shop-head span {
    padding: 6px 9px;
    border-radius: 999px;
    color: var(--ink);
    background: var(--lime);
    font-size: .45rem;
    font-weight: 800;
}

.home-shop-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 13px 10px;
    padding-top: 15px;
}

.home-shop-grid > div {
    display: grid;
    min-width: 0;
    grid-template-columns: 1fr auto;
    gap: 3px 5px;
}

.home-shop-grid figure {
    position: relative;
    grid-column: 1 / -1;
    height: 74px;
    overflow: hidden;
    border-radius: 9px;
    background: #e6dfd1;
}

.home-shop-grid > div:nth-child(2) figure {
    background: #d4d8d8;
}

.home-shop-grid > div:nth-child(3) figure {
    background: #c7b49b;
}

.home-shop-grid > div:nth-child(4) figure {
    background: #e6b9a5;
}

.home-shop-grid figure i {
    position: absolute;
    top: 18px;
    left: 22%;
    width: 58%;
    height: 38px;
    border-radius: 3px;
    background: #8a6948;
    transform: skewX(-9deg);
}

.home-shop-grid > div:nth-child(2) figure i {
    top: 16px;
    left: 30%;
    width: 40%;
    height: 43px;
    background: #263238;
}

.home-shop-grid > div:nth-child(3) figure i {
    top: 13px;
    left: 38%;
    width: 24%;
    height: 49px;
    border-radius: 50% 50% 5px 5px;
    background: #f0e6d7;
}

.home-shop-grid > div:nth-child(4) figure i {
    top: 17px;
    left: 29%;
    width: 42%;
    height: 40px;
    border-radius: 50%;
    background: #734436;
}

.home-shop-grid figure i + i {
    top: auto;
    bottom: 11px;
    left: 27%;
    width: 5px;
    height: 27px;
    box-shadow: 58px 0 currentColor;
}

.home-shop-grid figure i + i + i {
    top: 29px;
    bottom: auto;
    left: 44%;
    width: 3px;
    height: 29px;
    box-shadow: none;
    background: #667579;
}

.home-shop-grid span {
    overflow: hidden;
    color: #c5ccd7;
    font-size: .48rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-shop-grid b {
    color: #fff;
    font-size: .48rem;
}

.home-shop-toast {
    position: absolute;
    right: 17px;
    bottom: 17px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 11px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 12px;
    background: rgba(21, 27, 43, .9);
    box-shadow: 0 18px 35px -24px #000;
    backdrop-filter: blur(12px);
}

.home-shop-toast > span {
    display: grid;
    width: 27px;
    height: 27px;
    place-items: center;
    border-radius: 8px;
    color: var(--ink);
    background: var(--lime);
    font-size: .6rem;
}

.home-shop-toast > div {
    display: grid;
    gap: 1px;
}

.home-shop-toast small {
    color: #8f9aac;
    font-size: .4rem;
    font-weight: 700;
    text-transform: uppercase;
}

.home-shop-toast strong {
    color: #fff;
    font-size: .5rem;
}

.home-estimas-art {
    min-height: 390px;
}

.home-estimas-art::before,
.home-estimas-art::after {
    position: absolute;
    border-radius: 999px;
    background: rgba(98, 90, 246, .15);
    transform: rotate(-13deg);
    content: "";
}

.home-estimas-art::before {
    top: 8px;
    right: -70px;
    width: 360px;
    height: 70px;
}

.home-estimas-art::after {
    right: -20px;
    bottom: 13px;
    width: 280px;
    height: 58px;
}

.home-chat-window {
    position: absolute;
    z-index: 2;
    top: 12px;
    left: 2%;
    width: 72%;
    min-height: 340px;
    padding: 20px;
    border: 5px solid #fff;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 35px 65px -42px rgba(48, 40, 135, .58);
    transform: rotate(-2deg);
}

.home-chat-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 15px;
    border-bottom: 1px solid #e8e9ee;
}

.home-chat-head > div {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: .65rem;
}

.home-chat-head img {
    width: 18px;
    height: 18px;
}

.home-chat-head > span {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--success);
    font-size: .47rem;
    font-weight: 800;
}

.home-chat-head > span::before {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--success);
    content: "";
}

.home-chat-body {
    padding-top: 17px;
}

.home-chat-body p {
    width: max-content;
    max-width: 82%;
    margin: 0 0 9px;
    padding: 10px 11px;
    border-radius: 5px 11px 11px 11px;
    color: #49556a;
    background: #f0f1f5;
    font-size: .56rem;
    line-height: 1.4;
}

.home-chat-body > div {
    display: flex;
    gap: 6px;
    margin: 2px 0 13px;
}

.home-chat-body > div span {
    padding: 8px 10px;
    border: 1px solid #d6d5ff;
    border-radius: 8px;
    color: #4f47c9;
    background: #f5f4ff;
    font-size: .5rem;
    font-weight: 800;
}

.home-chat-body p.is-answer {
    margin-left: auto;
    border-radius: 11px 5px 11px 11px;
    color: #fff;
    background: var(--primary);
}

.home-lead-preview {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 13px;
    width: 51%;
    padding: 19px;
    border: 1px solid rgba(255, 255, 255, .52);
    border-radius: 20px;
    color: #fff;
    background: rgba(17, 23, 38, .94);
    box-shadow: 0 30px 55px -35px rgba(16, 21, 34, .9);
    backdrop-filter: blur(14px);
    transform: rotate(2.5deg);
}

.home-lead-preview > small {
    color: #9ba6b8;
    font-size: .48rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.home-lead-preview > strong {
    display: block;
    margin: 9px 0 14px;
    font-size: .85rem;
}

.home-lead-preview > div {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.home-lead-preview > div span {
    padding: 6px 7px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 6px;
    color: #c6cdd8;
    background: rgba(255, 255, 255, .06);
    font-size: .44rem;
    font-weight: 700;
}

/* Done-for-you process */
.home-process-section {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0, rgba(98, 90, 246, .28), transparent 30%),
        radial-gradient(circle at 0 100%, rgba(119, 222, 210, .11), transparent 28%),
        #111724;
}

.home-process-section::before {
    position: absolute;
    inset: 0;
    opacity: .16;
    background-image: linear-gradient(rgba(255, 255, 255, .13) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .13) 1px, transparent 1px);
    background-size: 76px 76px;
    mask-image: radial-gradient(circle at 80% 20%, #000, transparent 68%);
    pointer-events: none;
    content: "";
}

.home-process-shape {
    position: absolute;
    top: -195px;
    right: -100px;
    width: 520px;
    height: 520px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 50%;
}

.home-process-shape::before,
.home-process-shape::after {
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 50%;
    content: "";
}

.home-process-shape::before {
    inset: 75px;
}

.home-process-shape::after {
    inset: 150px;
}

.home-process-section > .home-container {
    position: relative;
    z-index: 1;
}

.home-section-heading-light h2 {
    color: #fff;
}

.home-section-heading-light .home-kicker {
    color: #aaa5ff;
}

.home-section-heading-light > p {
    color: #aeb7c6;
}

.home-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 17px;
}

.home-process-card {
    position: relative;
    min-height: 380px;
    padding: 27px 27px 30px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 27px;
    background: rgba(255, 255, 255, .045);
    box-shadow: inset 0 1px rgba(255, 255, 255, .055);
    transition: background-color .3s ease, border-color .3s ease, transform .3s ease;
}

.home-process-card:hover {
    border-color: rgba(255, 255, 255, .17);
    background: rgba(255, 255, 255, .07);
    transform: translateY(-4px);
}

.home-process-number {
    position: absolute;
    top: 25px;
    right: 25px;
    color: rgba(255, 255, 255, .22);
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .1em;
}

.home-process-icon {
    position: relative;
    width: 128px;
    height: 128px;
    margin-bottom: 29px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 32px;
    background: linear-gradient(145deg, rgba(119, 222, 210, .14), rgba(255, 255, 255, .025));
}

.home-process-icon > i {
    position: absolute;
    border-radius: 999px;
    background: var(--aqua);
}

.home-process-icon > i:nth-child(1) {
    top: 33px;
    left: 29px;
    width: 69px;
    height: 14px;
}

.home-process-icon > i:nth-child(2) {
    top: 56px;
    left: 29px;
    width: 49px;
    height: 14px;
    opacity: .72;
}

.home-process-icon > i:nth-child(3) {
    bottom: 28px;
    left: 29px;
    width: 30px;
    height: 14px;
    opacity: .42;
}

.home-process-build {
    background: linear-gradient(145deg, rgba(98, 90, 246, .25), rgba(255, 255, 255, .025));
}

.home-process-build > i {
    width: 46px !important;
    height: 46px !important;
    border-radius: 10px !important;
    background: #8f88ff;
}

.home-process-build > i:nth-child(1) {
    top: 27px;
    left: 27px;
}

.home-process-build > i:nth-child(2) {
    top: 50px;
    left: 52px;
    opacity: .7;
}

.home-process-build > i:nth-child(3) {
    top: 68px;
    left: 31px;
    opacity: .38;
}

.home-process-launch {
    background: linear-gradient(145deg, rgba(217, 242, 111, .13), rgba(255, 255, 255, .025));
}

.home-process-launch > i:nth-child(1) {
    top: 29px;
    left: 34px;
    width: 59px;
    height: 59px;
    border: 1px solid rgba(217, 242, 111, .4);
    border-radius: 50%;
    background: transparent;
}

.home-process-launch > i:nth-child(2) {
    top: 49px;
    left: 54px;
    width: 19px;
    height: 10px;
    border-radius: 0;
    border-bottom: 3px solid var(--lime);
    border-left: 3px solid var(--lime);
    background: transparent;
    transform: rotate(-45deg);
}

.home-process-launch > i:nth-child(3) {
    top: 20px;
    left: 96px;
    width: 8px;
    height: 8px;
    background: var(--lime);
    box-shadow: -78px 74px rgba(217, 242, 111, .42);
}

.home-process-card > small {
    color: #858fa1;
    font-size: .61rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.home-process-card h3 {
    margin: 7px 0 9px;
    color: #fff;
    font-size: 1.75rem;
    letter-spacing: -.045em;
}

.home-process-card p {
    max-width: 290px;
    color: #aeb7c6;
    font-size: .84rem;
    line-height: 1.65;
}

.home-process-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    margin-top: 18px;
    padding: 24px 27px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 20px;
    background: rgba(255, 255, 255, .035);
}

.home-process-footer > strong {
    color: #fff;
    font-size: .8rem;
}

.home-process-footer > div {
    display: flex;
    align-items: center;
    gap: 17px;
    color: #9ea8b8;
    font-size: .69rem;
    font-weight: 700;
}

.home-process-footer i {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #5f6878;
}

/* Multi-trade design directions */
.home-directions-section {
    background: var(--paper);
}

.home-direction-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 17px;
}

.home-direction-card {
    position: relative;
    min-height: 440px;
    padding: 25px;
    overflow: hidden;
    border-radius: 28px;
    box-shadow: 0 30px 60px -49px rgba(16, 21, 34, .45);
    transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s ease;
}

.home-direction-card:hover {
    box-shadow: 0 34px 65px -44px rgba(16, 21, 34, .44);
    transform: translateY(-5px);
}

.home-direction-meta {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.home-direction-meta > span {
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.home-direction-meta > b {
    font-size: .67rem;
}

.home-direction-card > p {
    position: absolute;
    z-index: 3;
    right: 25px;
    bottom: 23px;
    left: 25px;
    font-size: .67rem;
    font-weight: 700;
}

.home-direction-art {
    position: absolute;
    inset: 70px 23px 62px;
}

.home-direction-build {
    color: #f5eee2;
    background: #23443f;
}

.home-direction-build .home-direction-meta > span,
.home-direction-build > p {
    color: #a5bcb5;
}

.home-direction-build .home-direction-art {
    overflow: hidden;
    border-radius: 180px 180px 14px 14px;
    background: #d0b99d;
}

.home-direction-build .home-direction-art i:nth-child(1) {
    position: absolute;
    top: 30px;
    right: 31px;
    width: 61px;
    height: 61px;
    border-radius: 50%;
    background: var(--coral);
}

.home-direction-build .home-direction-art i:nth-child(2) {
    position: absolute;
    right: 13px;
    bottom: 69px;
    width: 88%;
    height: 55%;
    background: #f0e7d9;
    clip-path: polygon(0 100%, 50% 0, 100% 100%);
}

.home-direction-build .home-direction-art i:nth-child(3) {
    position: absolute;
    right: 36px;
    bottom: 0;
    width: 76%;
    height: 44%;
    background: #f6f1e8;
}

.home-direction-build .home-direction-art i:nth-child(4) {
    position: absolute;
    right: 48%;
    bottom: 0;
    width: 44px;
    height: 88px;
    border: 7px solid #23443f;
    background: #93aca8;
}

.home-direction-service {
    color: #fff;
    background: #5d56df;
}

.home-direction-service .home-direction-meta > span,
.home-direction-service > p {
    color: #c7c4ff;
}

.home-direction-service .home-direction-art {
    border-radius: 18px;
    background:
        linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px),
        rgba(18, 24, 39, .19);
    background-size: 35px 35px;
}

.home-direction-service .home-direction-art i {
    position: absolute;
    border: 16px solid #b8b4ff;
}

.home-direction-service .home-direction-art i:nth-child(1) {
    top: 22px;
    left: 29px;
    width: 130px;
    height: 85px;
    border-right: 0;
    border-bottom: 0;
    border-radius: 60px 0 0;
}

.home-direction-service .home-direction-art i:nth-child(2) {
    top: 91px;
    left: 143px;
    width: 130px;
    height: 120px;
    border-top: 0;
    border-left: 0;
    border-radius: 0 0 60px;
}

.home-direction-service .home-direction-art i:nth-child(3),
.home-direction-service .home-direction-art i:nth-child(4),
.home-direction-service .home-direction-art i:nth-child(5) {
    width: 34px;
    height: 34px;
    border: 7px solid #e4e2ff;
    border-radius: 50%;
    background: #5d56df;
}

.home-direction-service .home-direction-art i:nth-child(3) {
    top: 7px;
    left: 17px;
}

.home-direction-service .home-direction-art i:nth-child(4) {
    top: 75px;
    left: 127px;
}

.home-direction-service .home-direction-art i:nth-child(5) {
    right: 13px;
    bottom: 30px;
}

.home-direction-craft {
    color: #392317;
    background: #f0b899;
}

.home-direction-craft .home-direction-meta > span,
.home-direction-craft > p {
    color: #7f5140;
}

.home-direction-craft .home-direction-art {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    grid-template-rows: 1fr 1fr;
    gap: 10px;
}

.home-direction-craft .home-direction-art i {
    position: relative;
    overflow: hidden;
    border-radius: 13px;
    background: #f7e5d9;
}

.home-direction-craft .home-direction-art i:nth-child(1) {
    grid-row: 1 / -1;
    background: #67483a;
}

.home-direction-craft .home-direction-art i:nth-child(1)::before {
    position: absolute;
    top: 20%;
    left: 20%;
    width: 60%;
    height: 58%;
    border: 10px solid #dca67e;
    border-radius: 50% 50% 8px 8px;
    content: "";
}

.home-direction-craft .home-direction-art i:nth-child(2)::before {
    position: absolute;
    inset: 24px 17px;
    border-radius: 6px;
    background: #aa7054;
    box-shadow: inset 0 -8px rgba(57, 35, 23, .16);
    content: "";
}

.home-direction-craft .home-direction-art i:nth-child(3) {
    background: #cf7e5c;
}

.home-direction-craft .home-direction-art i:nth-child(3)::before,
.home-direction-craft .home-direction-art i:nth-child(4)::before {
    position: absolute;
    inset: 27px 31px;
    border: 8px solid #f7e5d9;
    border-radius: 50%;
    content: "";
}

.home-direction-craft .home-direction-art i:nth-child(4) {
    display: none;
}

.home-concept-disclaimer {
    margin-top: 15px;
    color: #8992a0;
    font-size: .62rem;
    text-align: right;
}

/* Estimas optional upgrade */
.home-estimas-section {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(rgba(98, 90, 246, .045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(98, 90, 246, .045) 1px, transparent 1px),
        #efedff;
    background-size: 74px 74px;
}

.home-estimas-glow {
    position: absolute;
    top: -230px;
    left: -170px;
    width: 650px;
    height: 650px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .68);
    filter: blur(3px);
}

.home-estimas-grid {
    position: relative;
    display: grid;
    grid-template-columns: minmax(340px, .82fr) minmax(530px, 1.18fr);
    align-items: center;
    gap: 80px;
}

.home-estimas-copy h2 {
    max-width: 590px;
    margin-bottom: 22px;
}

.home-estimas-copy > p {
    max-width: 570px;
    color: #5e6980;
    font-size: .97rem;
    line-height: 1.75;
}

.home-estimas-copy > ul {
    display: grid;
    gap: 15px;
    margin-top: 27px;
}

.home-estimas-copy > ul li {
    display: grid;
    grid-template-columns: 34px 1fr;
    align-items: center;
    gap: 12px;
}

.home-estimas-copy > ul li > span {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid rgba(98, 90, 246, .2);
    border-radius: 10px;
    color: var(--primary-deep);
    background: rgba(255, 255, 255, .55);
    font-size: .57rem;
    font-weight: 800;
}

.home-estimas-copy > ul li > div {
    display: grid;
    gap: 2px;
}

.home-estimas-copy > ul strong {
    color: #282f40;
    font-size: .83rem;
}

.home-estimas-copy > ul small {
    color: #7a8496;
    font-size: .69rem;
}

.home-estimas-offer {
    display: flex;
    align-items: center;
    gap: 19px;
    width: max-content;
    max-width: 100%;
    margin-top: 29px;
    padding: 14px 17px;
    border: 1px solid rgba(98, 90, 246, .14);
    border-radius: 16px;
    background: rgba(255, 255, 255, .55);
}

.home-estimas-offer > div {
    display: grid;
    gap: 2px;
}

.home-estimas-offer small {
    color: #7b8496;
    font-size: .55rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.home-estimas-offer strong {
    color: var(--ink);
    font-size: .96rem;
    letter-spacing: -.03em;
}

.home-estimas-offer > i {
    width: 1px;
    height: 37px;
    background: rgba(98, 90, 246, .15);
}

.home-estimas-actions {
    display: grid;
    justify-items: start;
    gap: 9px;
    margin-top: 20px;
}

.home-estimas-actions > small {
    padding-left: 10px;
    color: #7b8597;
    font-size: .62rem;
    font-weight: 700;
}

.home-estimas-visual {
    position: relative;
    min-width: 0;
    min-height: 640px;
}

.home-estimas-visual::before,
.home-estimas-visual::after {
    position: absolute;
    border-radius: 999px;
    background: rgba(98, 90, 246, .16);
    transform: rotate(-12deg);
    content: "";
}

.home-estimas-visual::before {
    top: 15px;
    right: -135px;
    width: 510px;
    height: 94px;
}

.home-estimas-visual::after {
    right: -55px;
    bottom: 28px;
    width: 420px;
    height: 76px;
}

.home-estimas-browser {
    position: absolute;
    z-index: 2;
    top: 38px;
    right: 0;
    width: 91%;
    overflow: hidden;
    border: 7px solid #fff;
    border-radius: 25px;
    background: #fff;
    box-shadow: 0 42px 75px -47px rgba(55, 45, 160, .54);
    transform: rotate(1.4deg);
}

.home-browser-bar-dark {
    border-bottom-color: #2c3342;
    background: #181f2d;
}

.home-browser-bar-dark > span {
    border-color: rgba(255, 255, 255, .07);
    color: #818c9f;
    background: rgba(255, 255, 255, .045);
}

.home-browser-bar-dark > b {
    border-color: rgba(255, 255, 255, .14);
}

.home-estimas-site {
    position: relative;
    display: grid;
    grid-template-columns: .88fr 1.12fr;
    align-items: center;
    min-height: 470px;
    padding: 40px 32px;
    overflow: hidden;
    background:
        radial-gradient(circle at 10% 10%, rgba(119, 222, 210, .18), transparent 23%),
        #131a28;
}

.home-estimas-site::before {
    position: absolute;
    top: -65px;
    right: -25px;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    box-shadow: 0 0 0 58px rgba(255, 255, 255, .018), 0 0 0 116px rgba(255, 255, 255, .018);
    content: "";
}

.home-estimas-site-copy {
    position: relative;
    z-index: 1;
}

.home-estimas-site-copy small {
    color: var(--aqua);
    font-size: .52rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.home-estimas-site-copy strong {
    display: block;
    margin: 12px 0 19px;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
    letter-spacing: -.05em;
}

.home-estimas-site-copy > span {
    display: inline-flex;
    padding: 9px 12px;
    border-radius: 7px;
    color: var(--ink);
    background: var(--lime);
    font-size: .54rem;
    font-weight: 800;
}

.home-estimas-widget {
    position: relative;
    z-index: 2;
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, .74);
    border-radius: 20px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 27px 54px -30px rgba(0, 0, 0, .72);
}

.home-estimas-widget > div {
    display: grid;
    grid-template-columns: 39px 1fr;
    align-items: center;
    gap: 10px;
    margin-bottom: 17px;
}

.home-estimas-widget > div > span {
    display: grid;
    width: 39px;
    height: 39px;
    place-items: center;
    border-radius: 11px;
    background: var(--primary-soft);
}

.home-estimas-widget img {
    width: 21px;
    height: 21px;
}

.home-estimas-widget p {
    display: grid;
    gap: 3px;
}

.home-estimas-widget p strong {
    color: var(--ink);
    font-size: .69rem;
}

.home-estimas-widget p small {
    color: #7b8596;
    font-size: .51rem;
}

.home-estimas-widget > button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 39px;
    margin-top: 7px;
    padding: 8px 10px;
    border: 1px solid #e0e3e9;
    border-radius: 8px;
    color: #5a6577;
    background: #fff;
    font-size: .55rem;
    font-weight: 700;
}

.home-estimas-widget > button:first-of-type {
    border-color: #c8c5ff;
    color: #4b43c2;
    background: #f4f3ff;
}

.home-estimas-widget > button span {
    font-size: .8rem;
}

.home-estimas-result {
    position: absolute;
    z-index: 4;
    right: -9px;
    bottom: 18px;
    width: 53%;
    padding: 23px;
    border: 1px solid rgba(16, 21, 34, .08);
    border-radius: 22px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 32px 60px -38px rgba(16, 21, 34, .55);
    backdrop-filter: blur(16px);
    transform: rotate(-2.4deg);
}

.home-result-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 17px;
}

.home-result-head span {
    color: #7b8597;
    font-size: .51rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.home-result-head b {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px 7px;
    border-radius: 999px;
    color: var(--success);
    background: #e8f7f1;
    font-size: .45rem;
}

.home-result-head b::before {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--success);
    content: "";
}

.home-estimas-result > strong {
    display: block;
    color: var(--ink);
    font-size: .9rem;
}

.home-estimas-result > p {
    margin: 7px 0 14px;
    color: #6a7587;
    font-size: .59rem;
    line-height: 1.55;
}

.home-estimas-result > div:nth-of-type(2) {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
}

.home-estimas-result > div:nth-of-type(2) span {
    padding: 8px 5px;
    border: 1px solid #e4e6eb;
    border-radius: 8px;
    color: #697486;
    background: #fafafb;
    font-size: .45rem;
    font-weight: 700;
    text-align: center;
}

.home-estimas-result > div:nth-of-type(2) i {
    margin-right: 2px;
    color: var(--primary);
    font-style: normal;
}

.home-estimas-result > small {
    display: block;
    margin-top: 14px;
    color: #9ba3af;
    font-size: .45rem;
}

/* Pricing */
.home-pricing-section {
    background: #fff;
}

.home-pricing-board {
    display: grid;
    grid-template-columns: minmax(0, 1.64fr) minmax(290px, .72fr);
    gap: 18px;
    max-width: 1120px;
    margin: 0 auto;
}

.home-pricing-main {
    display: grid;
    grid-template-columns: minmax(255px, .75fr) minmax(0, 1.25fr);
    overflow: hidden;
    border: 1px solid rgba(16, 21, 34, .09);
    border-radius: 30px;
    background: #fff;
    box-shadow: 0 35px 70px -55px rgba(16, 21, 34, .42);
}

.home-pricing-summary {
    position: relative;
    display: flex;
    padding: 42px 35px;
    overflow: hidden;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0, rgba(119, 222, 210, .18), transparent 30%),
        #151c2a;
}

.home-pricing-summary::before,
.home-pricing-summary::after {
    position: absolute;
    right: -64px;
    width: 250px;
    height: 44px;
    border-radius: 999px;
    background: rgba(98, 90, 246, .32);
    transform: rotate(-14deg);
    content: "";
}

.home-pricing-summary::before {
    top: 42px;
}

.home-pricing-summary::after {
    top: 108px;
    right: -95px;
    opacity: .5;
}

.home-pricing-summary > * {
    position: relative;
    z-index: 1;
}

.home-pricing-summary > span {
    color: #aaa6ff;
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.home-pricing-summary > small {
    margin-top: 43px;
    color: #8f99aa;
    font-size: .6rem;
    font-weight: 700;
}

.home-pricing-summary > strong {
    margin-top: 5px;
    color: #fff;
    font-size: 3.15rem;
    line-height: 1;
    letter-spacing: -.065em;
}

.home-pricing-summary > strong sup {
    font-size: .9rem;
    letter-spacing: -.02em;
    vertical-align: 1.2rem;
}

.home-pricing-summary > p {
    margin-top: 11px;
    color: #a8b1c0;
    font-size: .73rem;
    line-height: 1.5;
}

.home-pricing-summary > div {
    display: grid;
    gap: 3px;
    margin-top: 27px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

.home-pricing-summary > div small {
    color: #8f99aa;
    font-size: .55rem;
    font-weight: 700;
    text-transform: uppercase;
}

.home-pricing-summary > div b {
    color: #fff;
    font-size: 1.02rem;
}

.home-pricing-summary > em {
    margin-top: 11px;
    color: #8792a4;
    font-size: .55rem;
    font-style: normal;
    font-weight: 700;
}

.home-pricing-included {
    display: flex;
    padding: 42px 38px;
    flex-direction: column;
    align-items: flex-start;
}

.home-pricing-included > span,
.home-pricing-options > span {
    color: #737e90;
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.home-pricing-included ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 17px 19px;
    width: 100%;
    margin: 25px 0 31px;
}

.home-pricing-included li {
    display: grid;
    grid-template-columns: 25px 1fr;
    align-items: center;
    gap: 9px;
    color: #465266;
    font-size: .69rem;
    font-weight: 700;
}

.home-pricing-included li::before {
    content: none;
}

.home-pricing-included li b {
    display: grid;
    width: 25px;
    height: 25px;
    place-items: center;
    border-radius: 8px;
    color: var(--primary-deep);
    background: var(--primary-soft);
    font-size: .48rem;
}

.home-pricing-included .home-button {
    margin-top: auto;
}

.home-pricing-reassurance {
    margin: 10px 0 0 12px;
    color: #8791a1;
    font-size: .56rem;
    font-weight: 700;
}

.home-pricing-options {
    display: flex;
    padding: 29px 26px 25px;
    border: 1px solid rgba(16, 21, 34, .09);
    border-radius: 30px;
    flex-direction: column;
    background: var(--paper);
}

.home-pricing-options > div {
    display: grid;
    grid-template-columns: 1fr 42px;
    align-items: center;
    gap: 14px;
    padding: 24px 0;
    border-bottom: 1px solid rgba(16, 21, 34, .1);
}

.home-pricing-options > div:first-of-type {
    margin-top: 4px;
}

.home-pricing-options > div > div {
    min-width: 0;
}

.home-pricing-options small {
    color: var(--primary-deep);
    font-size: .57rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.home-pricing-options strong {
    display: block;
    margin-top: 4px;
    color: var(--ink);
    font-size: .94rem;
    letter-spacing: -.025em;
}

.home-pricing-options > div p {
    margin-top: 7px;
    color: #707b8d;
    font-size: .63rem;
    line-height: 1.5;
}

.home-pricing-options > div > button {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgba(16, 21, 34, .1);
    border-radius: 50%;
    color: #fff;
    background: var(--ink);
    font-weight: 800;
    cursor: pointer;
    transition: transform .2s ease, background-color .2s ease;
}

.home-pricing-options > div > button:hover {
    background: var(--primary-deep);
    transform: translateY(-2px);
}

.home-pricing-note {
    margin-top: auto;
    padding-top: 20px;
    color: #8992a1;
    font-size: .56rem;
    line-height: 1.55;
}

/* FAQ */
.home-faq-section {
    background: var(--paper);
}

.home-faq-layout {
    display: grid;
    grid-template-columns: minmax(300px, .68fr) minmax(0, 1.32fr);
    align-items: start;
    gap: 105px;
}

.home-faq-intro {
    position: sticky;
    top: 115px;
}

.home-faq-intro > p {
    max-width: 340px;
    margin-top: 22px;
    color: #687487;
    font-size: .85rem;
    line-height: 1.65;
}

.home-faq-intro a {
    color: var(--primary-deep);
    font-weight: 800;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.home-faq-list {
    border-top: 1px solid rgba(16, 21, 34, .13);
}

.home-faq-list details {
    border-bottom: 1px solid rgba(16, 21, 34, .13);
}

.home-faq-list summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 24px 2px;
    color: #283142;
    font-size: .92rem;
    font-weight: 750;
    list-style: none;
    cursor: pointer;
}

.home-faq-list summary::-webkit-details-marker {
    display: none;
}

.home-faq-list summary span {
    display: grid;
    width: 31px;
    height: 31px;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid rgba(16, 21, 34, .11);
    border-radius: 50%;
    color: #667184;
    font-size: 1.08rem;
    font-weight: 400;
    transition: color .2s ease, background-color .2s ease, transform .2s ease;
}

.home-faq-list details[open] summary span {
    color: #fff;
    background: var(--primary);
    transform: rotate(45deg);
}

.home-faq-list details > p {
    max-width: 650px;
    margin: -5px 50px 25px 2px;
    color: #697486;
    font-size: .82rem;
    line-height: 1.68;
}

/* Final CTA and footer */
.home-final-section {
    padding: 22px 0 92px;
    background: var(--paper);
}

.home-final-inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    min-height: 370px;
    padding: 65px 70px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 38px;
    color: #fff;
    background:
        radial-gradient(circle at 85% 25%, rgba(98, 90, 246, .36), transparent 27%),
        #111724;
    box-shadow: 0 42px 80px -58px rgba(16, 21, 34, .65);
}

.home-final-inner::before {
    position: absolute;
    inset: 0;
    opacity: .17;
    background-image: linear-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .12) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(90deg, transparent, #000);
    content: "";
}

.home-final-inner > div:not(.home-final-shape) {
    position: relative;
    z-index: 2;
}

.home-final-inner .home-kicker {
    color: #a9a4ff;
}

.home-final-inner h2 {
    margin-top: 16px;
    color: #fff;
    font-size: clamp(2.45rem, 4vw, 3.65rem);
    line-height: .99;
    letter-spacing: -.06em;
}

.home-final-inner h2 span {
    color: #aaa6ff;
}

.home-final-inner p {
    max-width: 560px;
    margin-top: 17px;
    color: #aeb7c7;
    font-size: .87rem;
}

.home-final-actions {
    display: grid;
    flex: 0 0 auto;
    justify-items: center;
    gap: 10px;
}

body.home-page .home-final-inner > div.home-final-actions {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
}

.home-button-light {
    color: var(--ink);
    background: #fff;
    box-shadow: 0 20px 35px -23px rgba(0, 0, 0, .7);
}

.home-button-light > span {
    color: #fff;
    background: var(--primary);
}

.home-button-light:hover {
    background: var(--lime);
}

.home-final-actions > small {
    grid-column: 1;
    color: #929daf;
    font-size: .57rem;
    font-weight: 700;
    text-align: center;
}

.home-final-shape {
    position: absolute;
    z-index: 1;
    border-radius: 999px;
    pointer-events: none;
    transform: rotate(-14deg);
}

.home-final-shape-one {
    top: -27px;
    right: -105px;
    width: 430px;
    height: 76px;
    background: rgba(119, 222, 210, .3);
}

.home-final-shape-two {
    right: -25px;
    bottom: 19px;
    width: 350px;
    height: 65px;
    background: rgba(98, 90, 246, .4);
}

.home-footer {
    padding: 45px 0 32px;
    border-top: 1px solid rgba(16, 21, 34, .09);
    background: #fff;
}

.home-footer > .home-container {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 25px 40px;
}

.home-footer .home-logo {
    font-size: 1.12rem;
}

.home-footer .home-logo img {
    width: 20px;
    height: 20px;
}

.home-footer > .home-container > p {
    color: #8490a1;
    font-size: .69rem;
}

.home-footer > .home-container > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 11px 18px;
    color: #667285;
    font-size: .68rem;
    font-weight: 650;
}

.home-footer > .home-container > div a:hover {
    color: var(--primary-deep);
}

.home-footer > .home-container > small {
    grid-column: 1 / -1;
    padding-top: 24px;
    border-top: 1px solid rgba(16, 21, 34, .08);
    color: #98a1af;
    font-size: .63rem;
}

/* Reveal motion */
.home-reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .65s cubic-bezier(.2, .8, .2, 1), transform .65s cubic-bezier(.2, .8, .2, 1);
}

.home-reveal.is-visible {
    opacity: 1;
    transform: none;
}

.home-delay-1 {
    transition-delay: .09s;
}

.home-delay-2 {
    transition-delay: .17s;
}

/* Responsive layout */
@media (max-width: 1120px) {
    .home-hero-grid {
        grid-template-columns: minmax(0, .78fr) minmax(510px, 1.22fr);
        gap: 44px;
    }

    body.home-page .home-hero-copy h1 {
        font-size: clamp(2.65rem, 4.2vw, 3.2rem);
    }

    .home-hero-stage {
        min-height: 535px;
    }

    .home-hero-browser {
        left: 4%;
    }

    .home-product-card {
        padding: 33px;
    }

    .home-shop-art {
        margin-right: -33px;
        margin-bottom: -33px;
        margin-left: -33px;
    }

    .home-estimas-grid {
        gap: 50px;
    }

    .home-pricing-board {
        grid-template-columns: minmax(0, 1fr) 290px;
    }

    .home-pricing-included {
        padding-inline: 31px;
    }

    .home-faq-layout {
        gap: 70px;
    }

    .home-final-inner {
        padding-inline: 52px;
    }
}

@media (max-width: 1060px) {
    .home-nav {
        grid-template-columns: 1fr auto;
    }

    .home-nav-links,
    .home-nav-cta {
        display: none;
    }

    .home-menu-toggle {
        display: inline-flex;
    }

    .home-hero {
        padding-top: 135px;
    }

    .home-hero-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .home-hero-copy {
        max-width: 760px;
        padding-bottom: 0;
    }

    body.home-page .home-hero-copy h1 {
        max-width: 680px;
        font-size: clamp(2.75rem, 5.2vw, 3.35rem);
    }

    .home-hero-copy > p {
        max-width: 670px;
    }

    .home-hero-visual {
        width: min(100%, 840px);
        margin-left: auto;
    }

    .home-hero-stage {
        min-height: 570px;
    }

    .home-trade-strip {
        margin-top: 43px;
    }

    .home-section-heading-split {
        grid-template-columns: minmax(0, 1fr) minmax(290px, .68fr);
        gap: 46px;
    }

    .home-product-website,
    .home-product-shop {
        grid-column: span 6;
    }

    .home-product-card {
        min-height: 630px;
    }

    .home-product-estimas {
        grid-template-columns: minmax(300px, .85fr) minmax(390px, 1.15fr);
        min-height: 490px;
    }

    .home-process-card {
        min-height: 360px;
    }

    .home-process-icon {
        width: 112px;
        height: 112px;
    }

    .home-process-build > i:nth-child(1) {
        top: 21px;
        left: 21px;
    }

    .home-process-build > i:nth-child(2) {
        top: 44px;
        left: 46px;
    }

    .home-process-build > i:nth-child(3) {
        top: 62px;
        left: 25px;
    }

    .home-process-launch > i:nth-child(1) {
        top: 24px;
        left: 26px;
    }

    .home-process-launch > i:nth-child(2) {
        top: 44px;
        left: 46px;
    }

    .home-process-icon:not(.home-process-build):not(.home-process-launch) > i:nth-child(1),
    .home-process-icon:not(.home-process-build):not(.home-process-launch) > i:nth-child(2),
    .home-process-icon:not(.home-process-build):not(.home-process-launch) > i:nth-child(3) {
        left: 21px;
    }

    .home-estimas-grid {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .home-estimas-copy {
        max-width: 720px;
    }

    .home-estimas-visual {
        width: min(100%, 780px);
        margin-left: auto;
    }

    .home-pricing-board {
        grid-template-columns: 1fr;
    }

    .home-pricing-options {
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 30px;
    }

    .home-pricing-options > span,
    .home-pricing-note {
        grid-column: 1 / -1;
    }

    .home-pricing-options > div {
        margin-top: 4px;
    }

    .home-final-inner {
        align-items: flex-start;
        flex-direction: column;
    }

    .home-final-actions {
        justify-items: start;
    }
}

@media (max-width: 820px) {
    .home-container {
        padding-inline: 22px;
    }

    .home-section {
        padding: 96px 0;
    }

    .home-section-heading-split {
        grid-template-columns: 1fr;
        gap: 21px;
    }

    .home-section-heading h2,
    .home-estimas-copy h2,
    .home-faq-intro h2 {
        font-size: clamp(2.35rem, 7vw, 3.25rem);
    }

    .home-trade-strip {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .home-trade-strip > div {
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    .home-product-website,
    .home-product-shop {
        grid-column: 1 / -1;
    }

    .home-product-card {
        min-height: 620px;
    }

    .home-product-estimas {
        grid-template-columns: 1fr;
        gap: 25px;
        min-height: 820px;
    }

    .home-product-estimas .home-product-copy {
        min-height: 350px;
    }

    .home-estimas-art {
        min-height: 370px;
    }

    .home-process-grid {
        grid-template-columns: 1fr;
    }

    .home-process-card {
        display: grid;
        grid-template-columns: 130px 1fr;
        grid-template-rows: auto auto auto;
        column-gap: 25px;
        min-height: 0;
        padding: 26px;
    }

    .home-process-icon {
        grid-row: 1 / 4;
        margin: 0;
    }

    .home-process-card > small {
        align-self: end;
    }

    .home-process-card h3 {
        margin-block: 5px;
    }

    .home-process-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 15px;
    }

    .home-process-footer > div {
        flex-wrap: wrap;
    }

    .home-direction-grid {
        grid-template-columns: 1fr 1fr;
    }

    .home-direction-card:last-child {
        grid-column: 1 / -1;
    }

    .home-direction-card:last-child .home-direction-art {
        right: 16%;
        left: 16%;
    }

    .home-estimas-visual {
        min-height: 600px;
    }

    .home-pricing-main {
        grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr);
    }

    .home-pricing-included ul {
        grid-template-columns: 1fr;
    }

    .home-faq-layout {
        grid-template-columns: 1fr;
        gap: 37px;
    }

    .home-faq-intro {
        position: static;
    }

    .home-faq-intro h2 br {
        display: none;
    }

    .home-final-inner {
        min-height: 390px;
        padding: 50px 42px;
    }

    .home-footer > .home-container {
        grid-template-columns: auto 1fr;
    }

    .home-footer > .home-container > div {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }
}

@media (max-width: 620px) {
    .home-container {
        padding-inline: 18px;
    }

    .home-header {
        inset: max(8px, env(safe-area-inset-top)) 0 auto;
    }

    .home-header .home-container {
        padding-inline: 9px;
    }

    .home-nav {
        min-height: 56px;
        padding: 6px 7px 6px 14px;
    }

    .home-logo {
        font-size: 1.22rem;
    }

    .home-logo img {
        width: 21px;
        height: 21px;
    }

    .home-menu-toggle {
        width: 43px;
        height: 43px;
    }

    .home-section {
        padding: 82px 0;
    }

    .home-hero {
        padding-top: 105px;
    }

    .home-hero-grid {
        gap: 26px;
    }

    .home-hero-copy {
        max-width: 100%;
    }

    body.home-page .home-hero-copy h1 {
        max-width: 470px;
        margin: 18px 0 17px;
        font-size: clamp(2.35rem, 10.1vw, 2.8rem);
        line-height: .99;
        letter-spacing: -.058em;
    }

    .home-hero-copy > p {
        font-size: .94rem;
        line-height: 1.62;
    }

    .home-eyebrow {
        padding: 7px 10px;
        font-size: .62rem;
    }

    .home-hero-offer {
        align-items: flex-start;
        width: 100%;
        margin-top: 21px;
        padding-block: 11px;
        padding-right: 0;
        flex-direction: column;
        gap: 8px;
    }

    .home-hero-offer > small {
        padding-left: 0;
        border-left: 0;
    }

    .home-hero-actions {
        align-items: stretch;
        margin-top: 19px;
        flex-direction: column;
    }

    .home-hero-actions .home-button {
        width: 100%;
    }

    .home-hero-trust {
        gap: 8px 12px;
        margin-top: 17px;
        font-size: .68rem;
    }

    .home-hero-trust li {
        min-height: 0;
        padding: 2px 0;
    }

    .home-concept-label {
        top: -9px;
        right: 17px;
    }

    .home-hero-stage {
        min-height: 438px;
        border-radius: 29px;
    }

    .home-hero-browser {
        top: 36px;
        left: 4%;
        width: 92%;
        border-width: 4px;
        border-radius: 14px;
    }

    .home-browser-bar {
        min-height: 28px;
        padding-inline: 8px;
    }

    .home-browser-bar i {
        width: 5px;
        height: 5px;
    }

    .home-browser-bar > span {
        min-width: 94px;
        padding: 3px 10px;
        font-size: .4rem;
    }

    .home-browser-bar > b {
        width: 8px;
        height: 8px;
    }

    .home-mock-site {
        min-height: 281px;
        padding: 12px;
    }

    .home-mock-nav {
        min-height: 22px;
    }

    .home-mock-nav > strong {
        font-size: .49rem;
    }

    .home-mock-nav > div {
        display: none;
    }

    .home-mock-nav > em {
        padding: 4px 6px;
        font-size: .34rem;
    }

    .home-mock-hero {
        min-height: 205px;
        margin-top: 9px;
    }

    .home-mock-copy {
        width: 66%;
        padding: 20px 0 20px 16px;
    }

    .home-mock-copy small {
        font-size: .32rem;
    }

    .home-mock-copy > strong {
        margin-block: 7px 10px;
        font-size: 1.08rem;
    }

    .home-mock-copy > p {
        display: none;
    }

    .home-mock-copy > span {
        padding: 6px 7px;
        font-size: .34rem;
    }

    .home-mock-footer {
        gap: 4px;
        padding-top: 7px;
    }

    .home-mock-footer span {
        padding: 6px 5px;
    }

    .home-mock-footer b {
        font-size: .34rem;
    }

    .home-mock-footer small {
        display: none;
    }

    .home-trade-strip {
        margin-top: 30px;
        padding-block: 23px;
    }

    .home-trade-strip > div {
        gap: 9px 11px;
        font-size: .68rem;
    }

    .home-section-heading {
        margin-bottom: 37px;
        text-align: left;
    }

    .home-section-heading h2,
    .home-estimas-copy h2,
    .home-faq-intro h2 {
        margin-top: 12px;
        font-size: clamp(2.1rem, 9.2vw, 2.65rem);
    }

    body.home-page .home-section-heading h2,
    body.home-page .home-faq-intro h2 {
        font-size: clamp(2.1rem, 9.2vw, 2.65rem);
        line-height: .99;
        letter-spacing: -.06em;
    }

    .home-page .interest-selector {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-section-heading > p,
    .home-section-heading-split > p {
        font-size: .89rem;
        line-height: 1.65;
    }

    .home-products-grid {
        gap: 14px;
    }

    .home-product-card {
        min-height: 0;
        padding: 26px 23px;
        border-radius: 27px;
    }

    .home-product-card h3 {
        margin-block: 18px 11px;
        font-size: 2.3rem;
    }

    .home-product-card .home-product-copy > p {
        font-size: .84rem;
    }

    .home-product-card ul {
        gap: 6px;
        margin-top: 15px;
    }

    .home-product-card li {
        padding: 6px 8px;
        font-size: .57rem;
    }

    .home-product-bottom {
        align-items: flex-start;
        margin-top: 26px;
        flex-direction: column;
        gap: 15px;
    }

    .home-card-link {
        min-height: 45px;
    }

    .home-website-art {
        height: 260px;
        flex-basis: 260px;
        margin: 25px -5px -26px 2px;
    }

    .home-art-web-body {
        min-height: 188px;
    }

    .home-art-web-body > div {
        padding: 28px 0 20px 20px;
    }

    .home-art-web-body strong {
        font-size: 1.24rem;
    }

    .home-art-score {
        right: -6px;
        bottom: 15px;
    }

    .home-product-shop {
        min-height: 650px;
    }

    .home-shop-art {
        height: 300px;
        margin: 28px -23px -26px;
        padding-inline: 20px;
    }

    .home-product-estimas {
        grid-column: 1 / -1;
        gap: 5px;
        min-height: 780px;
    }

    .home-product-estimas .home-product-copy {
        min-height: 390px;
    }

    .home-estimas-art {
        min-height: 340px;
    }

    .home-chat-window {
        left: 0;
        width: 82%;
        min-height: 295px;
        padding: 15px;
        border-width: 4px;
    }

    .home-lead-preview {
        right: -4px;
        bottom: 6px;
        width: 60%;
        padding: 15px;
    }

    .home-process-card {
        display: block;
        padding: 23px;
    }

    .home-process-icon {
        width: 112px;
        height: 112px;
        margin-bottom: 25px;
    }

    .home-process-footer {
        padding: 21px 22px;
    }

    .home-process-footer > div {
        gap: 10px;
        font-size: .62rem;
    }

    .home-direction-grid {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .home-direction-card,
    .home-direction-card:last-child {
        grid-column: auto;
        min-height: 410px;
        border-radius: 25px;
    }

    .home-direction-card:last-child .home-direction-art,
    .home-direction-art {
        right: 22px;
        left: 22px;
    }

    .home-concept-disclaimer {
        text-align: left;
    }

    .home-estimas-copy > p {
        font-size: .89rem;
    }

    .home-estimas-copy > ul li {
        grid-template-columns: 32px 1fr;
    }

    .home-estimas-offer {
        width: 100%;
        justify-content: space-between;
    }

    .home-estimas-actions .home-button {
        width: 100%;
    }

    .home-estimas-actions {
        justify-items: stretch;
    }

    .home-estimas-actions > small {
        padding: 0;
        text-align: center;
    }

    .home-estimas-visual {
        min-height: 470px;
    }

    .home-estimas-browser {
        top: 17px;
        right: 0;
        width: 100%;
        border-width: 5px;
        border-radius: 19px;
    }

    .home-estimas-site {
        grid-template-columns: 1fr;
        min-height: 340px;
        padding: 23px;
    }

    .home-estimas-site-copy {
        display: none;
    }

    .home-estimas-widget {
        width: 88%;
        margin: 0 auto;
        padding: 17px;
    }

    .home-estimas-result {
        right: -3px;
        bottom: 0;
        width: 73%;
        padding: 17px;
    }

    .home-pricing-main {
        grid-template-columns: 1fr;
        border-radius: 27px;
    }

    .home-pricing-summary,
    .home-pricing-included {
        padding: 34px 27px;
    }

    .home-pricing-summary > small {
        margin-top: 34px;
    }

    .home-pricing-included ul {
        gap: 14px;
    }

    .home-pricing-included .home-button {
        width: 100%;
        padding-inline: 17px;
    }

    .home-pricing-reassurance {
        width: 100%;
        margin-left: 0;
        text-align: center;
    }

    .home-pricing-options {
        display: flex;
        padding: 26px 23px;
        border-radius: 27px;
    }

    .home-faq-list summary {
        padding-block: 21px;
        font-size: .84rem;
    }

    .home-faq-list details > p {
        margin-right: 40px;
        font-size: .76rem;
    }

    .home-final-section {
        padding-bottom: 70px;
    }

    .home-final-inner {
        min-height: 430px;
        padding: 39px 28px;
        border-radius: 28px;
    }

    .home-final-inner h2 {
        font-size: 2.55rem;
    }

    .home-final-inner p {
        font-size: .8rem;
    }

    .home-final-actions,
    .home-final-actions .home-button {
        width: 100%;
    }

    .home-footer > .home-container {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .home-footer > .home-container > div {
        grid-column: auto;
        gap: 10px 16px;
    }

    .home-footer > .home-container > small {
        grid-column: auto;
    }
}

@media (max-width: 700px) {
    .home-products-grid > .home-product-estimas {
        grid-column: 1 / -1;
    }
}

@media (hover: none) {
    .home-product-card:hover,
    .home-direction-card:hover {
        transform: none;
    }
}

@media (max-width: 370px) {
    body.home-page .home-hero-copy h1 {
        font-size: 2.25rem;
    }

    .home-hero-stage {
        min-height: 410px;
    }

    .home-product-card {
        padding-inline: 20px;
    }

    .home-product-estimas {
        min-height: 790px;
    }

    .home-estimas-result {
        width: 82%;
    }

    .home-estimas-result > div:nth-of-type(2) {
        grid-template-columns: 1fr;
    }

    .home-final-inner h2 {
        font-size: 2.3rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    .home-page * {
        scroll-behavior: auto !important;
        animation: none !important;
        transition-duration: .01ms !important;
    }

    .home-reveal {
        opacity: 1;
        transform: none;
    }
}
