/* The product catalogue identifies AESTRA. Other tenant storefronts keep their theme. */
.store-shell.aestra-store {
    --background:#101b29; --surface:#162334; --border:#334254; --line:#334254;
    --text:#f3f6fa; --muted:#b9c5d2; --brand:#80c9e5; --brand-accent:#a7def1;
    --button-text:#10202d; --brand-fill:#80c9e5; --surface-fill:#162334; --page-fill:#101b29;
    background:#101b29; color:#f3f6fa; font-family:"Segoe UI",Arial,sans-serif;
    font-size:16px; line-height:1.6;
}
.aestra-store :is(h1,h2,h3,.brand-mark,.button,button,input,textarea,select) { font-family:"Segoe UI",Arial,sans-serif; }
.aestra-store :is(h1,h2,h3) { font-weight:600; letter-spacing:-.025em; text-wrap:balance; }
.aestra-store .store-header { height:84px; padding-inline:max(28px,calc((100vw - 1224px)/2)); background:#101b29; border-bottom:1px solid #334254; backdrop-filter:none; box-shadow:none; }
.aestra-store .brand-mark { color:var(--text); font-size:1.4rem; font-weight:600; letter-spacing:.12em; }
.aestra-store .brand-logo { width:48px; height:48px; }
.aestra-store .store-header nav { gap:26px; font-size:.9rem; }
.aestra-store .store-header .nav-demo { color:var(--text); text-decoration:underline; text-underline-offset:6px; }
.aestra-store .cart-link { font-size:.8rem; }
.aestra-store .cart-link span { border-radius:4px; background:#26384c; color:var(--text); }
.aestra-store .eyebrow { color:var(--brand); font-size:.76rem; letter-spacing:.08em; font-weight:600; line-height:1.6; }
.aestra-store .landing-hero.aestra-hero { max-width:1280px; padding:76px 28px; gap:58px; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); min-height:0; }
.aestra-store .aestra-hero::before,.aestra-store .product-visual::before { display:none; }
.aestra-store .aestra-hero h1 { margin:18px 0 24px; font-size:clamp(2.2rem,3.5vw,3.4rem); line-height:1.12; letter-spacing:-.035em; }
.aestra-store .aestra-hero p { font-size:1.05rem; line-height:1.75; max-width:55ch; margin-bottom:24px; }
.aestra-store .aestra-hero .hero-offer-choice { color:var(--text); font-size:.9rem; margin-top:0; }
.aestra-store .aestra-hero .landing-reassurance { color:var(--muted); font-size:.8rem; line-height:1.6; margin-top:20px; }
.aestra-store .button { min-height:46px; border-radius:5px; font-size:.9rem; font-weight:600; box-shadow:none; transition:background-color .15s,border-color .15s; }
.aestra-store .button.primary { background:#80c9e5; color:#10202d; box-shadow:none; border-color:#80c9e5; }
.aestra-store .button.primary:hover { background:#a7def1; border-color:#a7def1; transform:none; }
.aestra-store .button:not(.primary) { background:transparent; border-color:#65778b; }
.aestra-store .button:not(.primary):hover { background:#223246; }
.aestra-store :is(a,button,input,textarea,select,summary):focus-visible { outline:3px solid #a7def1; outline-offset:4px; }
.aestra-store .product-frame { border:1px solid #52647a; border-radius:7px; background:#162334; box-shadow:0 16px 32px #0002; }
.aestra-store .product-frame-heading { padding:12px 16px; letter-spacing:0; font-size:.8rem; }
.aestra-store .product-preview { aspect-ratio:1270 / 950; }
.aestra-store .product-caption { padding:16px; }
.aestra-store .product-caption :is(strong,small) { color:var(--text); }
.aestra-store .product-caption small { color:var(--muted); font-size:.75rem; }
.aestra-store .preview-zoom { border-radius:4px; font-family:inherit; box-shadow:none; }
.aestra-store .product-use-cases { justify-content:flex-start; gap:16px; margin-top:14px; }
.aestra-store .product-use-cases span { padding:0; border:0; border-radius:0; background:none; color:var(--muted); font-size:.75rem; }
.aestra-store .capture-symbol { display:none; }
.aestra-store .landing-section { max-width:1280px; padding:64px 28px; }
.aestra-store .landing-section + .landing-section { border-top:1px solid var(--line); }
.aestra-store .section-title { margin-bottom:32px; }
.aestra-store .section-title h2 { font-size:clamp(1.65rem,2.5vw,2.3rem); line-height:1.25; margin:10px 0 16px; }
.aestra-store .section-title p { max-width:76ch; line-height:1.7; }
.aestra-store .usage-grid { gap:28px; }
.aestra-store .usage-grid article { padding:24px 0; border:0; border-top:2px solid #52647a; border-radius:0; background:transparent; }
.aestra-store .usage-grid h3 { font-size:1.2rem; line-height:1.4; }
.aestra-store .usage-grid p { line-height:1.7; }
.aestra-store .usage-path span { padding:0; border-radius:0; background:transparent; }
.aestra-store .usage-path { gap:10px; }
.aestra-store .business-case { gap:36px; padding:32px; border:1px solid var(--line); border-radius:6px; background:var(--surface); }
.aestra-store .case-scope { padding:0 0 0 28px; border-left:1px solid var(--line); border-radius:0; background:none; }
.aestra-store .explainer { margin:48px 0; padding:32px 0; border-block:1px solid var(--line); }
.aestra-store .explainer-heading h2 { font-size:1.7rem; }
.aestra-store .duration { border-radius:4px; background:none; color:var(--muted); border-color:var(--line); }
.aestra-store .video-frame { max-width:960px; margin-inline:auto; border-radius:6px; border-color:var(--line); box-shadow:none; }
.aestra-store .landing-modules { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 36px; grid-auto-rows:auto; }
.aestra-store .landing-modules .landing-pack-card { padding:28px 0; border:0; border-top:1px solid var(--line); border-radius:0; background:none; box-shadow:none; }
.aestra-store .landing-pack-card h3 { font-size:1.25rem; margin:10px 0 16px; }
.aestra-store .landing-pack-card .landing-pack-description { min-height:0; line-height:1.7; }
.aestra-store .included-activities { line-height:1.7; }
.aestra-store .pack-prices { border:0; background:var(--surface); padding:12px 16px; }
.aestra-store .pack-prices strong { color:var(--text); }
.aestra-store .pack-roadmap { border-radius:4px; }
.aestra-store .landing-pack-actions a { font-size:.9rem; text-underline-offset:4px; }
.aestra-store .landing-modules.compact-packs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.aestra-store .compact-packs .landing-pack-card { padding:20px; border:1px solid var(--line); border-radius:6px; background:var(--surface); }
.aestra-store .compact-packs .eyebrow { font-size:.65rem; }
.aestra-store .compact-packs h3 { font-size:1rem; line-height:1.35; margin:8px 0 10px; }
.aestra-store .compact-packs .landing-pack-description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font-size:.82rem; line-height:1.55; margin:0 0 12px; }
.aestra-store .compact-packs .pack-prices { gap:4px; padding:10px 0; font-size:.76rem; border-block:1px solid var(--line); }
.aestra-store .compact-packs .pack-future-note { color:var(--muted); font-size:.7rem; line-height:1.4; margin-top:10px; }
.aestra-store .compact-packs .landing-pack-actions { gap:0; padding-top:12px; }
.aestra-store .compact-packs .landing-pack-more { min-height:36px; padding:4px 0; font-size:.82rem; }
.aestra-store .pack-details-header { justify-content:flex-end; }
@media(min-width:1200px) { .aestra-store .landing-modules.compact-packs { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:900px) { .aestra-store .landing-modules.compact-packs { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .aestra-store .landing-modules.compact-packs { grid-template-columns:1fr; gap:12px; } }
.aestra-store .crm-explainer { border-color:var(--line); border-radius:6px; background:var(--surface); box-shadow:none; }
.aestra-store .crm-explainer-copy h3 { font-size:1.7rem; line-height:1.3; }
.aestra-store .crm-explainer-media video { border-radius:4px; border-color:var(--line); }
.aestra-store :is(.aestra-offer-card,.budget-example,.aestra-offer-details details) { border-radius:6px; background:var(--surface); }
.aestra-store .aestra-offer-hosted { border-color:#80c9e5; background:var(--surface); }
.aestra-store .project-steps { gap:28px; }
.aestra-store .project-steps li { padding:20px 0; border:0; border-top:1px solid var(--line); border-radius:0; background:none; }
.aestra-store .project-steps span { color:var(--muted); font-size:.9rem; }
.aestra-store .project-faq summary { padding-block:20px; }
.aestra-store .landing-cta { border-radius:0; background:var(--surface); padding-block:48px; }
.aestra-store .landing-cta h2 { font-size:clamp(1.7rem,3vw,2.3rem); }
.aestra-store .aestra-footer { padding:28px max(28px,calc((100vw - 1224px)/2)); background:#0c1520; border-color:var(--line); font-size:.8rem; }
.aestra-store :is(.product-card,.form-card,.summary,.cart-lines,.empty,.success-card,.configurator-question,.configuration-choice) { border-radius:6px; box-shadow:none; }
.aestra-store .product-card:hover { transform:none; }
.aestra-store .skip-link { position:fixed; top:10px; left:10px; z-index:1000; padding:10px 18px; background:#f3f6fa; color:#10202d; transform:translateY(-160%); }
.aestra-store .skip-link:focus { transform:translateY(0); }
@media(max-width:1050px) {
    .aestra-store .landing-hero.aestra-hero { gap:32px; padding-block:48px; }
    .aestra-store .store-header { padding-inline:24px; }
    .aestra-store .store-header nav { gap:16px; }
}
@media(max-width:800px) {
    .aestra-store .landing-hero.aestra-hero { grid-template-columns:1fr; max-width:700px; }
    .aestra-store .aestra-hero h1 { font-size:clamp(2.1rem,6vw,3rem); max-width:17ch; }
    .aestra-store .product-visual { max-width:580px; }
    .aestra-store .usage-grid { gap:12px; }
    .aestra-store .case-scope { border:0; padding:12px 0 0; }
}
@media(max-width:600px) {
    .aestra-store .store-header { height:72px; padding-inline:18px; }
    .aestra-store .store-header .brand-mark { display:none; }
    .aestra-store .store-header .brand-logo { width:42px; height:42px; }
    .aestra-store .store-menu-toggle { border-radius:5px; box-shadow:none; }
    .aestra-store .landing-hero.aestra-hero { padding:40px 20px; }
    .aestra-store .aestra-hero .eyebrow { font-size:.7rem; }
    .aestra-store .aestra-hero p { font-size:1rem; }
    .aestra-store .landing-section { padding:40px 20px; }
    .aestra-store .landing-modules { grid-template-columns:1fr; }
    .aestra-store .business-case { padding:22px; gap:12px; }
    .aestra-store .explainer { margin-block:24px; }
    .aestra-store .explainer-heading h2 { font-size:1.45rem; }
    .aestra-store .crm-explainer { padding:20px; }
    .aestra-store .product-use-cases { gap:12px; }
    .aestra-store .aestra-footer { align-items:flex-start; padding:24px 20px; }
}
@media(prefers-reduced-motion:reduce) { .aestra-store * { scroll-behavior:auto; transition:none; animation:none; } }
