/* Modulab 0.4.0 — minimal SaaS visual refresh, scoped to the public storefront. */
:root{--ml40-ink:#16181e;--ml40-muted:#69717f;--ml40-blue:#345bff;--ml40-line:#e5e8ed;--ml40-bg:#f8f9fc}
.site-header--40{position:sticky;top:0;left:auto;right:auto;display:flex;align-items:center;justify-content:space-between;height:72px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--ml40-line);box-shadow:none;padding:0 max(30px,calc((100vw - 1360px)/2));z-index:250;backdrop-filter:blur(16px)}
.site-header--40.is-scrolled{background:rgba(255,255,255,.97);box-shadow:0 8px 32px rgba(25,35,65,.035)}
.site-header--40 .brand{font-size:27px;letter-spacing:-.055em;color:var(--ml40-ink)}
.site-header--40 .brand span{color:var(--ml40-blue)}
.site-nav--40{display:flex;gap:35px;align-items:center;flex:1;justify-content:space-between;margin-left:clamp(45px,7vw,130px)}
.ml40-nav__main,.ml40-nav__actions{display:flex;align-items:center;gap:30px}
.site-nav--40 a{font-size:13px;font-weight:650;color:#505966;text-decoration:none;white-space:nowrap}
.site-nav--40 a:hover,.site-nav--40 a.is-current{color:var(--ml40-blue)}
.site-nav--40 .ml40-nav__cta{border-radius:999px;background:var(--ml40-ink);color:#fff;padding:13px 20px;font-weight:700}
.site-nav--40 .ml40-nav__cta:hover{background:var(--ml40-blue);color:#fff}
.site-footer--40{background:#f3f5fa;color:var(--ml40-ink);padding:72px max(24px,calc((100vw - 1320px)/2)) 24px;border-top:1px solid var(--ml40-line)}
.ml40-footer__top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:80px}
.ml40-footer__top p{font-size:15px;color:var(--ml40-muted);margin:20px 0 0;line-height:1.65}
.ml40-footer__top nav{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.ml40-footer__top nav h2{font-size:13px;font-weight:800;letter-spacing:.03em;margin:0 0 12px}
.ml40-footer__top nav a{font-size:14px;color:var(--ml40-muted)}
.ml40-footer__top nav a:hover{color:var(--ml40-blue)}
.ml40-footer__bottom{border-top:1px solid #dfe2e8;padding-top:22px;display:flex;justify-content:space-between;font-size:12px;color:var(--ml40-muted);gap:20px}
.ml40-home{font-family:Inter,Arial,Helvetica,sans-serif;background:white;color:var(--ml40-ink);line-height:1.5;overflow:hidden}
.ml40-home h1,.ml40-home h2,.ml40-home h3{color:inherit}
.ml40-home em{font-style:normal;color:var(--ml40-blue)}
.ml40-wrap{width:min(100% - 64px,1320px);margin-inline:auto}
.ml40-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:.095em;color:#5d6b88}
.ml40-dot{width:7px;height:7px;background:var(--ml40-blue);border-radius:50%;display:inline-block;flex-shrink:0}
.ml40-hero{background:radial-gradient(circle at 8% 12%,#eef2ff 0,transparent 44%),linear-gradient(165deg,#fff,#f8faff);border-bottom:1px solid var(--ml40-line)}
.ml40-hero__grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(380px,.84fr);align-items:center;gap:clamp(40px,7vw,100px);min-height:650px;padding-block:76px 86px}
.ml40-hero__copy h1{font-size:clamp(48px,5.55vw,76px);line-height:1.075;letter-spacing:-.064em;margin:26px 0 24px;font-weight:800;max-width:750px}
.ml40-hero__subtitle{font-size:18px;line-height:1.7;max-width:590px;color:#606a7a;margin:0}
.ml40-hero__subtitle strong{font-weight:700;color:#303b50}
.ml40-hero__actions{display:flex;align-items:center;gap:20px;margin-top:30px}
.ml40-link{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#4a5464;font-weight:600;text-decoration:none}
.ml40-link:hover{color:var(--ml40-blue)}
.ml40-link--bold{color:var(--ml40-blue);font-weight:800}
.ml40-hero__divider{height:18px;width:1px;background:#d9dfeb}
.ml40-hero__trust{font-size:12px;line-height:1.7;color:#7b8699;margin-top:45px}
.ml40-hero__trust span:first-child{color:#2a8a66}
.ml40-quiz{background:#fff;border:1px solid #e5eaf6;border-radius:27px;padding:30px;box-shadow:0 30px 95px rgba(31,46,93,.085)}
.ml40-quiz__top{display:flex;justify-content:space-between;align-items:start;gap:14px}
.ml40-quiz__top small{font-size:10px;font-weight:850;letter-spacing:.09em;color:#8290a6}
.ml40-quiz__top h2{font-size:22px;letter-spacing:-.04em;line-height:1.2;margin:8px 0 22px;font-weight:800}
.ml40-quiz__badge{font-size:10px;padding:7px 11px;white-space:nowrap;background:#edf2ff;color:#345bff;border-radius:99px;font-weight:800}
.ml40-progress{width:100%;height:4px;background:#e9edf7;border-radius:99px;overflow:hidden}
.ml40-progress span{display:block;height:100%;background:var(--ml40-blue);border-radius:99px;transition:width .28s ease}
.ml40-quiz__counter{font-size:10px;font-weight:800;color:#8190a5;letter-spacing:.07em;margin:18px 0 12px}
.ml40-step fieldset{border:0;padding:0;margin:0;min-width:0}
.ml40-step legend{font-size:20px;letter-spacing:-.04em;line-height:1.25;font-weight:800;margin:0 0 18px}
.ml40-step__hint{font-size:13px;color:var(--ml40-muted);margin:0 0 20px}
.ml40-step__label{display:block;font-weight:700;font-size:12px;margin-bottom:10px}
.ml40-select{width:100%;border:1px solid var(--ml40-line);background:#f9faff;color:var(--ml40-ink);border-radius:13px;min-height:54px;padding:0 16px;font:inherit}
.ml40-choice{display:flex;align-items:center;gap:14px;min-height:75px;cursor:pointer;border:1px solid #e6eaf1;border-radius:14px;padding:13px 15px;margin:9px 0;background:#fff;transition:border .18s ease,background .18s ease,transform .18s ease}
.ml40-choice:hover,.ml40-choice:focus-within{border-color:#8da5ff;background:#f9faff}
.ml40-choice:has(input:checked){border-color:var(--ml40-blue);background:#f2f5ff;box-shadow:inset 0 0 0 1px var(--ml40-blue)}
.ml40-choice input{position:absolute;width:1px;height:1px;opacity:0}
.ml40-choice:has(input:focus-visible){outline:3px solid #aac0ff;outline-offset:2px}
.ml40-choice__icon{width:37px;height:37px;display:grid;place-items:center;flex-shrink:0;border-radius:12px;color:var(--ml40-blue);background:#f0f3ff;font-size:19px;font-weight:700}
.ml40-choice>span:nth-of-type(2){display:grid;gap:3px;min-width:0}
.ml40-choice strong{font-size:13px;font-weight:800;line-height:1.3}
.ml40-choice small{font-size:11px;color:#7c8594;line-height:1.35}
.ml40-choice__tick{margin-left:auto;color:#aeb6c5;font-size:16px}
.ml40-choice:has(input:checked) .ml40-choice__tick{color:var(--ml40-blue)}
.ml40-quiz__nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:20px}
.ml40-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 21px;border-radius:99px;font-size:13px;font-weight:800;line-height:1.3;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:background .2s ease,transform .2s ease,color .2s ease}
.ml40-button:hover{transform:translateY(-2px)}
.ml40-button--primary{margin-left:auto;color:#fff;background:var(--ml40-blue)}
.ml40-button--primary:hover{background:#2246d5}
.ml40-button--dark{color:#fff;background:var(--ml40-ink);align-self:flex-start}
.ml40-button--dark:hover{background:var(--ml40-blue);color:#fff}
.ml40-button--outline{color:#fff;border-color:rgba(255,255,255,.4);background:transparent}
.ml40-button--white{background:#fff;color:var(--ml40-ink)}
.ml40-back{font-size:12px;font-weight:700;color:#626d80;border:0;background:none;padding:10px 2px;cursor:pointer}
.ml40-quiz__privacy{font-size:10px;color:#8b94a3;margin:15px 0 0;text-align:center}
.ml40-quiz__error{color:#bc3853;font-size:12px;min-height:0;margin:0}
.ml40-quiz__error:not(:empty){margin:10px 0}
.ml40-home [hidden]{display:none!important}
.ml40-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:58px 66px;gap:24px}
.ml40-benefits>div{padding-right:20px;border-right:1px solid var(--ml40-line)}
.ml40-benefits>div:last-child{border:0}
.ml40-benefits span{display:block;font-weight:800;color:var(--ml40-blue);font-size:11px;margin-bottom:14px}
.ml40-benefits strong{font-size:16px;letter-spacing:-.02em}
.ml40-benefits p{font-size:13px;color:var(--ml40-muted);margin:8px 0 0;line-height:1.55}
.ml40-section{padding-block:100px}
.ml40-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:end;margin-bottom:42px}
.ml40-heading h2,.ml40-faq h2{font-size:clamp(38px,4.2vw,60px);letter-spacing:-.055em;line-height:1.1;margin:13px 0 0;font-weight:800}
.ml40-heading>p,.ml40-heading>div:last-child p{font-size:15px;line-height:1.7;color:var(--ml40-muted);max-width:420px;margin:0}
.ml40-paths{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ml40-path{border-radius:24px;padding:38px 38px 0;min-height:550px;display:flex;flex-direction:column;overflow:hidden;position:relative;border:1px solid #e4eaf7}
.ml40-path--template{background:linear-gradient(165deg,#e9efff,#f8faff 68%)}
.ml40-path--pro{background:linear-gradient(165deg,#edf2f8,#fafbfc 68%)}
.ml40-path__copy{position:relative;z-index:2}
.ml40-path__label{font-size:10px;font-weight:850;color:#63759a;letter-spacing:.1em}
.ml40-path h3{font-size:clamp(31px,3.5vw,46px);line-height:1.1;letter-spacing:-.052em;margin:15px 0}
.ml40-path p{font-size:14px;line-height:1.7;color:#697389;max-width:500px;margin:0}
.ml40-path ul{list-style:none;margin:18px 0 25px;padding:0;display:flex;flex-wrap:wrap;gap:9px}
.ml40-path li{padding:7px 11px;background:rgba(255,255,255,.75);border:1px solid #e2e7f4;border-radius:99px;font-size:11px;font-weight:700;color:#576780}
.ml40-browser{background:#fff;border:1px solid #dfe6f2;border-radius:15px 15px 0 0;box-shadow:0 18px 55px rgba(33,50,91,.11);width:83%;height:200px;margin:36px auto -25px;transform:rotate(-3deg);overflow:hidden}
.ml40-browser--pro{transform:rotate(3deg);height:200px}
.ml40-browser__chrome{height:27px;border-bottom:1px solid #eaeef7;display:flex;align-items:center;gap:5px;padding:0 12px}
.ml40-browser__chrome i{width:5px;height:5px;border-radius:50%;background:#d6dce8}
.ml40-browser__chrome span{font-size:8px;letter-spacing:.04em;color:#9ca5b6;margin-left:auto}
.ml40-browser__content{padding:18px;display:flex;flex-direction:column;gap:12px}
.ml40-browser__nav{width:35%;height:7px;background:#9caddd;border-radius:6px}
.ml40-browser__big{height:70px;background:linear-gradient(115deg,#7a96eb,#dce7ff);border-radius:8px}
.ml40-browser--pro .ml40-browser__big{background:linear-gradient(115deg,#34415c,#9fb9ce)}
.ml40-browser__row{display:flex;gap:9px}.ml40-browser__row span{height:18px;flex:1;background:#edf1f7;border-radius:4px}
.ml40-browser__bottom{width:60%;height:7px;background:#e1e7ef;border-radius:5px}
.ml40-catalog{background:#181c28;color:#fff;padding-block:94px 108px}
.ml40-heading--light h2{color:#fff}
.ml40-heading--light .ml40-eyebrow{color:#a5b6e7}
.ml40-heading--light>div:last-child p{color:#b8becc}
.ml40-link--light{color:#fff;margin-top:18px}.ml40-link--light:hover{color:#bccaff}
.ml40-catalog__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ml40-catalog-card{background:#fff;border-radius:19px;overflow:hidden;color:var(--ml40-ink)}
.ml40-catalog-card__image{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:#eef2f9}
.ml40-catalog-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.ml40-catalog-card__image:hover img{transform:scale(1.035)}
.ml40-catalog-card__image span{position:absolute;bottom:12px;right:12px;background:#fff;border-radius:99px;padding:8px 11px;font-size:11px;font-weight:800}
.ml40-catalog-card__body{padding:19px}.ml40-catalog-card__body small{color:var(--ml40-muted);font-size:11px}.ml40-catalog-card__body h3{font-size:20px;letter-spacing:-.03em;margin:8px 0 19px}.ml40-catalog-card__body>a{font-size:12px;color:var(--ml40-blue);font-weight:800}
.ml40-catalog__empty{border:1px solid #4c5264;border-radius:20px;padding:50px 42px;max-width:790px}
.ml40-catalog__empty h3{color:#fff;font-size:26px;margin-bottom:9px}.ml40-catalog__empty p{color:#c0c6d3;line-height:1.7}
.ml40-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ml40-steps article{background:#f6f8fc;border:1px solid #e9edf6;border-radius:20px;padding:32px}
.ml40-steps b{color:var(--ml40-blue);font-size:12px}
.ml40-steps h3{font-size:25px;letter-spacing:-.04em;margin:39px 0 9px}.ml40-steps p{font-size:14px;color:var(--ml40-muted);line-height:1.7;margin:0}
.ml40-steps__link{margin-top:25px}
.ml40-inzona{background:#eef3ff;border-radius:25px;padding:62px;display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center;overflow:hidden}
.ml40-inzona h2{font-size:clamp(36px,3.5vw,50px);line-height:1.09;letter-spacing:-.05em;margin:15px 0}
.ml40-inzona p{color:#67738b;font-size:15px;line-height:1.7;max-width:600px}
.ml40-inzona__art{display:grid;place-items:center}.ml40-inzona__tile{background:#fff;box-shadow:0 22px 70px rgba(28,54,133,.12);border:1px solid #dce5fa;transform:rotate(5deg);border-radius:20px;padding:36px;width:85%;min-height:205px;display:flex;flex-direction:column;justify-content:space-between}
.ml40-inzona__tile span{font-weight:900;letter-spacing:.05em;color:var(--ml40-blue);font-size:11px}
.ml40-inzona__tile strong{font-size:28px;letter-spacing:-.04em;line-height:1.1}
.ml40-inzona__tile i{font-size:28px;font-style:normal;align-self:flex-end;color:var(--ml40-blue)}
.ml40-faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding-block:120px}
.ml40-faq__items details{border-bottom:1px solid var(--ml40-line);padding:23px 0}
.ml40-faq__items details:first-child{border-top:1px solid var(--ml40-line)}
.ml40-faq__items summary{font-weight:750;font-size:15px;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px}
.ml40-faq__items summary::-webkit-details-marker{display:none}
.ml40-faq__items summary:after{content:'+';font-size:23px;font-weight:400;color:var(--ml40-blue)}
.ml40-faq__items details[open] summary:after{content:'−'}
.ml40-faq__items p{font-size:14px;line-height:1.75;color:var(--ml40-muted);max-width:560px;margin:16px 0 0}
.ml40-end{background:#345bff;padding:96px 0;color:#fff;text-align:center}
.ml40-end .ml40-eyebrow{color:#c6d3ff}
.ml40-end h2{font-size:clamp(44px,6vw,80px);line-height:1.04;letter-spacing:-.06em;margin:20px 0}
.ml40-end p{color:#d9e3ff;font-size:16px;margin:0 0 30px}
.ml40-end>div>div{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:25px}
@media(max-width:1100px){.site-header--40{padding:0 25px}.site-nav--40{margin-left:28px;gap:20px}.ml40-nav__main,.ml40-nav__actions{gap:16px}.ml40-hero__grid{gap:35px}.ml40-hero__copy h1{font-size:clamp(45px,5vw,66px)}.ml40-quiz{padding:23px}}
@media(max-width:840px){.ml40-wrap{width:min(100% - 40px,720px)}.ml40-hero__grid{grid-template-columns:1fr;gap:40px;min-height:auto;padding-block:58px 70px}.ml40-hero__copy h1{max-width:720px}.ml40-hero__trust{margin-top:24px}.ml40-benefits{grid-template-columns:repeat(2,1fr)}.ml40-benefits>div:nth-child(2){border:0}.ml40-benefits>div:nth-child(-n+2){padding-bottom:18px}.ml40-heading{grid-template-columns:1fr;gap:18px}.ml40-paths,.ml40-faq,.ml40-inzona{grid-template-columns:1fr}.ml40-inzona__art{display:none}.ml40-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ml40-steps{grid-template-columns:1fr}.ml40-steps h3{margin-top:14px}.ml40-faq{gap:30px}.ml40-section{padding-block:75px}}
@media(max-width:780px){.site-header--40{height:64px;padding:0 20px}.site-header--40 .menu-toggle{display:block}.site-nav--40{position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--ml40-line);box-shadow:0 20px 40px rgba(20,30,50,.08);padding:16px 20px 24px;margin:0;display:none;align-items:stretch;flex-direction:column;gap:22px}.site-nav--40.is-open{display:flex}.ml40-nav__main,.ml40-nav__actions{display:flex;flex-direction:column;align-items:stretch;gap:0}.ml40-nav__main a,.ml40-nav__account{padding:12px 0;font-size:15px}.ml40-nav__actions{border-top:1px solid var(--ml40-line);padding-top:10px;gap:12px}.site-nav--40 .ml40-nav__cta{text-align:center}.ml40-footer__top{grid-template-columns:1fr 1fr}.ml40-footer__top>div:first-child{grid-column:1/-1}.site-footer--40{padding:55px 22px 25px}}
@media(max-width:600px){.ml40-wrap{width:calc(100% - 36px)}.ml40-hero__grid{padding-block:46px 54px;gap:34px}.ml40-hero__copy h1{font-size:clamp(42px,10vw,55px);letter-spacing:-.06em;margin:18px 0}.ml40-hero__subtitle{font-size:15px}.ml40-hero__actions{gap:15px}.ml40-link{font-size:13px}.ml40-hero__trust{font-size:11px}.ml40-quiz{padding:20px;border-radius:19px}.ml40-quiz__top h2{font-size:20px}.ml40-choice{min-height:71px;padding:11px}.ml40-choice small{font-size:10px}.ml40-benefits{padding-block:40px;gap:25px 15px}.ml40-benefits>div{padding-right:9px}.ml40-benefits strong{font-size:14px}.ml40-benefits p{font-size:12px}.ml40-heading h2,.ml40-faq h2{font-size:clamp(34px,9vw,45px)}.ml40-path{padding:28px 23px 0;min-height:0}.ml40-path h3{font-size:36px}.ml40-path li{font-size:10px}.ml40-browser{margin-top:28px;width:91%;height:140px}.ml40-catalog{padding-block:70px}.ml40-catalog__grid{grid-template-columns:1fr}.ml40-inzona{padding:32px 25px;border-radius:18px}.ml40-inzona h2{font-size:35px}.ml40-faq{padding-block:80px}.ml40-end{padding:70px 0}.ml40-end h2{font-size:47px}.ml40-footer__top{gap:32px 20px}.ml40-footer__bottom{flex-direction:column}.ml40-section{padding-block:65px}}
@media(prefers-reduced-motion:reduce){.ml40-home *, .site-nav--40 *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Neutralize historical footer grid rules for the new layout. */
.site-footer--40{display:block;gap:0;grid-template-columns:none}
.site-footer--40>div{display:grid;flex-direction:initial;gap:initial}
.site-footer--40 .ml40-footer__top{display:grid;gap:50px}
.site-footer--40 .ml40-footer__bottom{display:flex;gap:20px}
.site-footer--40 .brand span{color:var(--ml40-blue)}
.site-footer--40 p{opacity:1;text-align:left;font-size:15px}
.site-footer--40 a:not(.brand){opacity:1}
.ml40-how-two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:780px){.site-footer--40 .ml40-footer__top{grid-template-columns:1fr 1fr;gap:30px}.ml40-how-two{grid-template-columns:1fr}}
@media(max-width:600px){.site-footer--40 .ml40-footer__bottom{flex-direction:column}}
