/* ASPRO-AKB-004: only applies inside the two route-isolated landing bodies. */
.akb-landing { --akb-mint:#35b39d; --akb-mint-bright:#66dec8; --akb-green:#008a6d; --akb-ink:#0c1714; --akb-mist:#edf3f1; --akb-line:#d5e0dc; --akb-text:#17211e; --akb-muted:#65746f; color:var(--akb-text); font-family:inherit; overflow:hidden; }
.akb-landing *, .akb-landing *:before, .akb-landing *:after { box-sizing:border-box; }
.akb-landing__container { width:min(calc(100% - 40px), 1180px); margin:0 auto; }
.akb-landing__hero { position:relative; min-height:600px; color:#fff; background:radial-gradient(circle at 72% 29%, rgba(62,178,151,.22), transparent 29%), linear-gradient(120deg, #0c1714, #10221d 72%, #0c1714); }
.akb-landing__hero:before { position:absolute; inset:0; background-image:linear-gradient(rgba(126,189,172,.09) 1px, transparent 1px), linear-gradient(90deg, rgba(126,189,172,.09) 1px, transparent 1px); background-size:52px 52px; content:""; opacity:.34; pointer-events:none; }
.akb-landing__hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.03fr .97fr; gap:55px; align-items:center; padding:82px 0 88px; }
.akb-landing__hero-copy, .akb-landing__visual, .akb-landing__work-heading { min-width:0; }
.akb-landing__eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 17px; color:var(--akb-mint-bright); font-size:11px; font-weight:800; letter-spacing:1.4px; line-height:1.2; text-transform:uppercase; }
.akb-landing__eyebrow > span { width:25px; height:1px; background:currentColor; }
.akb-landing__eyebrow--dark { color:var(--akb-green); }
.akb-landing h1, .akb-landing h2, .akb-landing h3, .akb-landing p { max-width:none; }
.akb-landing h1 { max-width:790px; margin:0; color:#fff; font-size:clamp(44px, 4.5vw, 64px); font-weight:800; letter-spacing:-3.3px; line-height:.99; overflow-wrap:break-word; hyphens:auto; }
.akb-landing h2 { margin:0; color:var(--akb-text); font-size:clamp(31px, 3.6vw, 51px); font-weight:800; letter-spacing:-2px; line-height:1.06; }
.akb-landing__lead { max-width:720px!important; margin:24px 0 0!important; color:#bdcac6!important; font-size:18px!important; line-height:1.7!important; }
.akb-landing__hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.akb-landing__button { min-height:52px; display:inline-flex!important; align-items:center; justify-content:center; padding:14px 21px!important; border:1px solid transparent!important; border-radius:7px!important; box-shadow:none!important; cursor:pointer; font-family:inherit; font-size:12px!important; font-weight:800!important; line-height:1.2!important; text-align:center; text-decoration:none!important; transition:transform .18s ease, background .18s ease, border-color .18s ease; }
.akb-landing__button:hover, .akb-landing__button:focus { transform:translateY(-1px); text-decoration:none!important; }
.akb-landing__button:focus-visible { outline:3px solid var(--akb-mint-bright); outline-offset:3px; }
.akb-landing__button--primary { color:#04100c!important; background:var(--akb-mint-bright)!important; }
.akb-landing__button--phone { color:#fff!important; border-color:#53645e!important; background:transparent!important; }
.akb-landing__viber-offer { max-width:620px; margin-top:14px; padding:13px 14px; border:1px solid #36584d; border-radius:9px; background:rgba(255,255,255,.035); }
.akb-landing__viber-offer[hidden] { display:none!important; }
.akb-landing__viber-offer p { margin:0 0 10px!important; color:#c5d5d0!important; font-size:13px!important; line-height:1.5!important; }
.akb-landing__button--viber { min-height:42px; padding:10px 15px!important; color:#05221a!important; background:#8ee6cb!important; font-size:11px!important; }
.akb-landing__button--dark { flex:0 0 auto; color:#fff!important; background:var(--akb-ink)!important; }
.akb-landing__catalog-card .akb-landing__button:focus-visible { outline-color:#006a57; }
.akb-landing__chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:29px; }
.akb-landing__chips span { padding:9px 12px; color:#c9d7d3; border:1px solid #344740; border-radius:999px; font-size:11px; line-height:1.1; }
.akb-landing__visual { overflow:hidden; margin:0; border:1px solid #345249; border-radius:16px; background:#14231f; box-shadow:0 30px 70px rgba(0,0,0,.27); }
.akb-landing__visual-media { position:relative; aspect-ratio:3 / 2; overflow:hidden; background:#edf1ef; }
.akb-landing__visual-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.akb-landing__visual-label { position:absolute; top:14px; left:14px; padding:7px 9px; color:#fff; border:1px solid rgba(255,255,255,.28); border-radius:6px; background:rgba(8,16,14,.78); font-size:11px; font-weight:750; letter-spacing:.7px; text-transform:uppercase; }
.akb-landing__visual figcaption { padding:14px 29px 0; color:#b4c8c1; font-size:13px; line-height:1.5; }
.akb-landing__panel { padding:17px 29px 28px; }
.akb-landing__panel-label { margin:0; color:var(--akb-mint-bright); font-size:10px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; }
.akb-landing__panel h2 { margin:11px 0 17px; color:#fff; font-size:24px; letter-spacing:-.8px; line-height:1.15; }
.akb-landing__panel ol { display:grid; grid-template-columns:repeat(2, 1fr); gap:8px; padding:0; margin:0; list-style:none; }
.akb-landing__panel li { min-height:76px; padding:11px; border:1px solid #2c423b; border-radius:8px; background:rgba(12,27,23,.36); }
.akb-landing__panel li > span { display:block; color:var(--akb-mint-bright); font-size:10px; font-weight:800; letter-spacing:.8px; }
.akb-landing__panel li p { margin:7px 0 0!important; color:#c3d0cc!important; font-size:11px!important; line-height:1.4!important; }
.akb-landing__panel-hint { margin:17px 0 0!important; color:#9db0aa!important; font-size:12px!important; line-height:1.5!important; }
.akb-landing__action-note { max-width:620px; margin:12px 0 0!important; color:#a9bdb6!important; font-size:13px!important; line-height:1.55!important; }
.akb-landing__intake { padding:80px 0; color:#fff; background:#0e1b17; }
.akb-landing__intake-grid { display:grid; grid-template-columns:1.08fr .88fr auto; gap:43px; align-items:center; }
.akb-landing__intake h2 { margin:0 0 14px; color:#fff; font-size:clamp(30px, 3vw, 43px); }
.akb-landing__intake p { max-width:585px; margin:0; color:#b6c7c1; font-size:15px; line-height:1.7; }
.akb-landing__next-steps { display:grid; gap:9px; padding:0; margin:0; list-style:none; }
.akb-landing__next-steps li { display:flex; align-items:center; gap:10px; color:#d5e1dc; font-size:13px; font-weight:700; }
.akb-landing__next-steps li:before { width:24px; height:24px; display:grid; place-items:center; color:#082019; border-radius:50%; background:var(--akb-mint-bright); content:counter(list-item); font-size:11px; }
.akb-landing__catalog { padding:72px 0; background:var(--akb-mist); }
.akb-landing__catalog-card { display:flex; align-items:center; justify-content:space-between; gap:48px; padding:36px 42px; border:1px solid #cbdad5; border-radius:16px; background:#fff; box-shadow:0 15px 42px rgba(12,23,20,.06); }
.akb-landing__catalog-card h2 { max-width:590px; margin:13px 0 10px; font-size:clamp(28px, 3.2vw, 40px); letter-spacing:-1.6px; }
.akb-landing__catalog-card p { max-width:640px; margin:0; color:var(--akb-muted); font-size:14px; line-height:1.7; }
.akb-landing__section { padding:98px 0; background:#fff; }
.akb-landing__section--muted { background:var(--akb-mist); }
.akb-landing__work-grid { display:grid; grid-template-columns:.62fr 1.38fr; gap:100px; }
.akb-landing__work-heading p { margin:19px 0 0; color:var(--akb-muted); font-size:14px; line-height:1.7; }
.akb-landing__feature-list { display:grid; gap:12px; }
.akb-landing__feature-list article { display:grid; grid-template-columns:48px 1fr; gap:18px; padding:25px; border:1px solid var(--akb-line); border-radius:12px; background:#fff; }
.akb-landing__feature-list article > span { width:45px; height:45px; display:grid; place-items:center; color:var(--akb-green); border:1px solid #a9d0c5; border-radius:50%; font-size:11px; font-weight:800; }
.akb-landing__feature-list h3 { margin:1px 0 7px; color:var(--akb-text); font-size:18px; font-weight:800; line-height:1.3; }
.akb-landing__feature-list p { margin:0; color:var(--akb-muted); font-size:14px; line-height:1.65; }
.akb-landing__section-heading { max-width:690px; margin-bottom:38px; }
.akb-landing__symptom-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:13px; }
.akb-landing__symptom-grid article { min-height:170px; padding:26px; border:1px solid #cbd8d4; border-radius:12px; background:rgba(255,255,255,.62); }
.akb-landing__symptom-grid small { color:var(--akb-green); font-size:11px; font-weight:800; }
.akb-landing__symptom-grid h3 { margin:28px 0 0; color:var(--akb-text); font-size:18px; font-weight:800; line-height:1.3; }
.akb-landing__scope-note { margin:24px 0 0; padding:19px 21px; border-left:3px solid var(--akb-mint); color:#4b5955; background:#e3eeea; font-size:13px; line-height:1.65; }
.akb-landing__faq-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:90px; }
.akb-landing__faq-list { border-top:1px solid var(--akb-line); }
.akb-landing__faq-list details { border-bottom:1px solid var(--akb-line); }
.akb-landing__faq-list summary { position:relative; padding:24px 46px 24px 0; color:var(--akb-text); cursor:pointer; font-size:17px; font-weight:750; list-style:none; }
.akb-landing__faq-list summary::-webkit-details-marker { display:none; }
.akb-landing__faq-list summary:after { position:absolute; top:20px; right:5px; color:var(--akb-green); content:"+"; font-size:26px; font-weight:400; }
.akb-landing__faq-list details[open] summary:after { content:"−"; }
.akb-landing__faq-list p { margin:-5px 45px 24px 0; color:var(--akb-muted); font-size:14px; line-height:1.7; }
.order_services_frame[data-akb-form-context="Y"] .akb-native-form__optional-toggle { display:inline-flex; align-items:center; min-height:34px; margin:3px 0 18px; padding:0; color:#008a6d; border:0; background:transparent; cursor:pointer; font:700 13px/1.45 inherit; text-decoration:underline; text-underline-offset:3px; }
.order_services_frame[data-akb-form-context="Y"] .akb-native-form__optional-toggle:focus-visible { outline:3px solid #66dec8; outline-offset:3px; }
@media (min-width:1051px) and (max-height:800px) { .akb-landing__hero-grid { align-items:start; padding-top:58px; padding-bottom:70px; } .akb-landing h1 { font-size:clamp(42px, 4vw, 56px); letter-spacing:-2.7px; } .akb-landing__lead { margin-top:16px!important; font-size:16px!important; line-height:1.55!important; } .akb-landing__hero-actions { margin-top:20px; } .akb-landing__chips { margin-top:20px; } }
@media (min-width:1180px) { .akb-landing__hero-grid { padding-right:80px; } }
@media (max-width:1050px) { .akb-landing__hero-grid, .akb-landing__intake-grid, .akb-landing__work-grid, .akb-landing__faq-grid { grid-template-columns:1fr; gap:42px; } .akb-landing__visual { width:min(620px, 100%); } .akb-landing__catalog-card { align-items:flex-start; flex-direction:column; gap:25px; } }
@media (max-width:760px) { .akb-landing__container { width:min(calc(100% - 28px), 1180px); } .akb-landing__hero-grid { padding:63px 0 72px; gap:40px; } .akb-landing h1 { font-size:47px; letter-spacing:-2.5px; } .akb-landing__lead { font-size:16px!important; } .akb-landing__hero-actions { display:grid; } .akb-landing__hero-actions .akb-landing__button, .akb-landing__viber-offer .akb-landing__button, .akb-landing__intake-grid > .akb-landing__button, .akb-landing__catalog-card .akb-landing__button { width:100%; } .akb-landing__visual-media { aspect-ratio:auto; } .akb-landing__visual-media img { height:auto; aspect-ratio:3 / 2; } .akb-landing__visual figcaption, .akb-landing__panel { padding-left:21px; padding-right:21px; } .akb-landing__panel ol { grid-template-columns:1fr; } .akb-landing__intake, .akb-landing__section { padding:72px 0; } .akb-landing__catalog { padding:52px 0; } .akb-landing__catalog-card { padding:28px 23px; } .akb-landing__symptom-grid { grid-template-columns:1fr; } .akb-landing__faq-grid { gap:35px; } .akb-landing__faq-grid h2, .akb-landing__work-heading h2, .akb-landing__section-heading h2 { font-size:37px; letter-spacing:-1.7px; } }
@media (max-width:420px) { .akb-landing h1 { font-size:39px; letter-spacing:-2.4px; } }
@media (prefers-reduced-motion:reduce) { .akb-landing *, .akb-landing *:before, .akb-landing *:after { transition-duration:.01ms!important; animation-duration:.01ms!important; } }
