@font-face {
    font-family: "Inter";
    src: url("../fonts/inter/inter-latin-wght-normal.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

/* Editionen, Funktionen und Preise */
.edx-page {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding-bottom: clamp(80px, 8vw, 130px);
    background: linear-gradient(180deg, #ffffff 0%, #f3f5f6 34%, #f7f8f7 100%);
}

.edx-page::before {
    position: absolute;
    z-index: -1;
    top: 385px;
    left: -8%;
    width: 116%;
    height: 250px;
    background: linear-gradient(90deg, rgb(255 188 77 / 25%) 0%, rgb(255 127 36 / 25%) 42%, rgb(203 28 22 / 18%) 72%, rgb(158 15 17 / 8%) 100%);
    filter: blur(48px);
    transform: rotate(-2.5deg);
    content: "";
    pointer-events: none;
}

.edx-page::after {
    position: absolute;
    z-index: -1;
    top: 438px;
    left: 15%;
    width: 70%;
    height: 110px;
    background: linear-gradient(90deg, transparent 0%, rgb(255 156 52 / 18%) 22%, rgb(223 47 25 / 20%) 54%, rgb(174 16 18 / 12%) 76%, transparent 100%);
    filter: blur(34px);
    transform: rotate(-2.5deg);
    content: "";
    pointer-events: none;
}
.edx-breadcrumb { display: flex; align-items: center; gap: 10px; padding-top: 24px; color: #a80b12; font-size: .82rem; font-weight: 720; }
.edx-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 4px; }
.edx-breadcrumb span[aria-current] { color: #6e7787; }
.edx-hero { padding-top: clamp(62px, 7vw, 105px); padding-bottom: clamp(48px, 5vw, 76px); text-align: center; }
.edx-kicker { margin-bottom: 13px; color: var(--brand-dark); font-size: .82rem; font-weight: 800; }
.edx-hero h1 { color: var(--text); font-size: clamp(3.15rem, 4.4vw, 4.4rem); line-height: 1.05; white-space: nowrap; }
.edx-hero > p:last-child { margin: 24px auto 0; font-size: clamp(1.05rem, 1.22vw, 1.2rem); line-height: 1.65; white-space: nowrap; }

.edx-plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: stretch; }
.edx-plan { position: relative; display: flex; min-width: 0; flex-direction: column; padding: clamp(25px, 2.5vw, 38px); border: 1px solid rgb(255 255 255 / 78%); border-radius: 24px; outline: 1px solid rgb(120 85 72 / 10%); background: linear-gradient(145deg, rgb(255 255 255 / 70%), rgb(255 255 255 / 48%)); box-shadow: inset 0 1px 0 rgb(255 255 255 / 96%), inset 0 -1px 0 rgb(158 42 29 / 7%), 0 22px 58px rgb(44 35 31 / 10%); -webkit-backdrop-filter: blur(22px) saturate(122%); backdrop-filter: blur(22px) saturate(122%); }
.edx-plan-featured { border-color: rgb(255 255 255 / 86%); outline-color: rgb(194 24 20 / 34%); background: linear-gradient(145deg, rgb(255 255 255 / 76%), rgb(255 248 243 / 49%)); box-shadow: inset 0 1px 0 rgb(255 255 255 / 98%), inset 0 -1px 0 rgb(175 25 20 / 9%), 0 28px 70px rgb(135 32 22 / 15%); transform: translateY(-10px); }
.edx-recommendation { position: absolute; top: 0; right: 28px; padding: 8px 15px; border-radius: 0 0 10px 10px; color: #fff; background: linear-gradient(135deg, #a90b12, #ec582c); font-size: .7rem; font-weight: 800; }
.edx-plan-head { display: grid; grid-template-columns: 84px minmax(0, 1fr); align-items: center; gap: 18px; }
.edx-plan-icon { display: block; width: 84px; height: 84px; object-fit: contain; filter: drop-shadow(0 10px 13px rgb(94 31 20 / 20%)); }
.edx-plan-label { margin-bottom: 6px; color: var(--brand-dark); font-size: 1.55rem; font-weight: 800; }
.edx-plan h2 { font-size: clamp(1.3rem, 1.55vw, 1.65rem); line-height: 1.14; }
.edx-plan-summary { min-height: 76px; margin-top: 22px; line-height: 1.55; }
.edx-plan ul { flex: 1; margin: 0; padding: 18px 0 22px; border-top: 1px solid rgb(188 78 57 / 17%); list-style: none; }
.edx-plan li { position: relative; margin: 11px 0; padding-left: 24px; color: #43536a; font-size: .91rem; line-height: 1.4; }
.edx-plan li::before { position: absolute; left: 0; color: var(--success); content: "✓"; font-weight: 900; }
.edx-plan-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.edx-price { display: flex; align-items: baseline; gap: 7px; color: var(--text); white-space: nowrap; }
.edx-price strong { color: #bd2519; font-size: clamp(2.35rem, 3vw, 3.25rem); line-height: 1; }
.edx-price span { color: var(--text); font-size: .83rem; font-weight: 800; }
.edx-plan-footer .button { min-height: 45px; padding: 11px 15px; font-size: .78rem; white-space: nowrap; }
.edx-price-note { padding-top: 18px; text-align: center; font-size: .72rem; line-height: 1.55; }

.edx-comparison { padding-top: clamp(92px, 9vw, 150px); }
.edx-section-heading { max-width: 1180px; margin: 0 auto 44px; text-align: center; }
.edx-section-heading h2 { font-size: 40px; }
.edx-section-heading > p:last-child { margin-top: 16px; font-size: 1.04rem; line-height: 1.6; white-space: nowrap; }
.edx-table-wrap { overflow-x: auto; border: 1px solid rgb(188 80 53 / 16%); border-radius: 22px; background: rgb(255 255 255 / 90%); box-shadow: 0 24px 64px rgb(32 45 65 / 9%); backdrop-filter: blur(18px); scrollbar-color: #c63225 #eef1f5; }
.edx-table { width: 100%; min-width: 840px; border-collapse: separate; border-spacing: 0; color: #18263a; font-size: .91rem; }
.edx-feature-col { width: 52%; }
.edx-table th, .edx-table td { padding: 16px 18px; border-bottom: 1px solid rgb(147 163 184 / 24%); vertical-align: middle; }
.edx-table thead th { position: sticky; z-index: 2; top: 0; height: 82px; color: #142238; background: linear-gradient(180deg, rgb(255 255 255 / 98%), rgb(249 250 251 / 98%)); box-shadow: inset 0 -1px rgb(151 164 181 / 22%); text-align: center; font-size: .94rem; backdrop-filter: blur(18px) saturate(120%); }
.edx-table thead th:first-child { border-radius: 20px 0 0; text-align: left; }
.edx-table thead th:last-child { border-radius: 0 20px 0 0; }
.edx-table thead th:first-child { color: #536176; background: linear-gradient(180deg, rgb(248 250 252 / 98%), rgb(243 246 249 / 98%)); font-size: .82rem; letter-spacing: .015em; }
.edx-table thead .edx-profi-col { position: sticky; color: #a92318; background: linear-gradient(180deg, rgb(255 250 247 / 99%), rgb(255 235 224 / 99%)); box-shadow: inset 1px 0 rgb(213 72 42 / 14%), inset -1px 0 rgb(213 72 42 / 14%), inset 0 -4px #e2572e; }
.edx-profi-col span { display: block; width: max-content; margin: 0 auto 6px; padding: 3px 9px; border: 1px solid rgb(211 66 36 / 24%); border-radius: 999px; color: #b12b1b; background: rgb(255 255 255 / 76%); box-shadow: 0 3px 10px rgb(159 46 26 / 8%); font-size: .57rem; font-weight: 850; letter-spacing: .02em; }
.edx-table tbody th[scope="row"] { color: #31435a; font-weight: 610; text-align: left; }
.edx-table tbody td { width: 16%; text-align: center; }
.edx-table tbody tr:not(.edx-group) > * { background: rgb(255 255 255 / 86%); }
.edx-table tbody tr:not(.edx-group) > :nth-child(3) { background: rgb(255 247 242 / 96%); box-shadow: inset 1px 0 rgb(214 74 45 / 15%), inset -1px 0 rgb(214 74 45 / 15%); }
.edx-table .edx-group th { padding: 13px 18px; color: #16263a; background: #eef2f6; font-size: .74rem; font-weight: 850; letter-spacing: .015em; line-height: 1.45; text-align: left; }
.edx-table .edx-yes, .edx-table .edx-no { font-size: 1.12rem; font-weight: 900; }
.edx-table .edx-yes { color: var(--success); }
.edx-table .edx-no { color: #a8b0bc; }
.edx-table td span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.edx-table tbody tr:last-child th, .edx-table tbody tr:last-child td { border-bottom: 0; }
.edx-table tfoot th, .edx-table tfoot td { padding: 24px 18px; border-top: 2px solid #d9e0e8; border-bottom: 0; background: rgb(247 249 251 / 96%); }
.edx-table tfoot th { color: #17263b; text-align: left; }
.edx-table tfoot th strong, .edx-table tfoot th small { display: block; }
.edx-table tfoot th strong { font-size: 1.05rem; }
.edx-table tfoot th small { margin-top: 6px; color: #687589; font-size: .78rem; font-weight: 500; }
.edx-table tfoot td { text-align: center; }
.edx-table tfoot .edx-table-buy-featured { background: rgb(255 240 232 / 96%); box-shadow: inset 1px 0 rgb(214 74 45 / 18%), inset -1px 0 rgb(214 74 45 / 18%); }
.edx-table-price { display: flex; align-items: baseline; justify-content: center; gap: 5px; margin-bottom: 13px; white-space: nowrap; }
.edx-table-price strong { color: #bd2519; font-size: 1.7rem; line-height: 1; }
.edx-table-price small { color: #27364a; font-size: .7rem; font-weight: 800; }
.edx-table tfoot .button { min-height: 42px; padding: 10px 13px; font-size: .72rem; white-space: nowrap; }
.edx-table-price-note { margin-top: 12px; color: #687589; font-size: .71rem; text-align: right; }
.edx-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.edx-help { display: grid; grid-template-columns: minmax(300px, .75fr) minmax(650px, 1.25fr); align-items: center; gap: clamp(26px, 4vw, 58px); margin-top: clamp(52px, 5vw, 72px); padding: 22px 30px; border: 1px solid rgb(184 45 25 / 24%); border-radius: 18px; color: #fff; background: radial-gradient(circle at 86% 5%, rgb(255 197 151 / 30%), transparent 35%), linear-gradient(112deg, #c52b1d 0%, #e74725 54%, #f47632 100%); box-shadow: 0 20px 48px rgb(154 43 23 / 15%); }
.edx-help .edx-kicker, .edx-help h2, .edx-help p { color: #fff; }
.edx-help .edx-kicker { margin-bottom: 6px; }
.edx-help h2 { max-width: none; font-size: clamp(1.55rem, 2vw, 1.9rem); }
.edx-help > div > p:last-child { margin-top: 7px; color: rgb(255 255 255 / 84%); font-size: .9rem; line-height: 1.45; }
.edx-help-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.edx-help-actions .button { min-height: 48px; padding-inline: 15px; white-space: nowrap; }
.edx-help-actions .button:first-child { grid-column: auto; }

@media (max-width: 1080px) {
    .edx-page::before {
        top: 500px;
        left: -20%;
        width: 140%;
        height: 1600px;
        background: linear-gradient(180deg, rgb(255 188 77 / 22%) 0%, rgb(255 127 36 / 22%) 42%, rgb(203 28 22 / 15%) 75%, transparent 100%);
        filter: blur(58px);
        transform: none;
    }
    .edx-page::after {
        top: 820px;
        left: 0;
        width: 100%;
        height: 720px;
        background: linear-gradient(180deg, transparent 0%, rgb(239 83 28 / 14%) 32%, rgb(184 20 19 / 12%) 68%, transparent 100%);
        filter: blur(42px);
        transform: none;
    }
    .edx-hero h1, .edx-hero > p:last-child { white-space: normal; }
    .edx-section-heading > p:last-child { white-space: normal; }
    .edx-plans { grid-template-columns: 1fr; max-width: 720px; }
    .edx-plan-featured { transform: none; }
    .edx-plan-summary { min-height: 0; }
    .edx-help { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
    .edx-hero h1 { font-size: clamp(2.65rem, 13vw, 4rem); }
    .edx-plan { padding: 24px; }
    .edx-plan-head { grid-template-columns: 72px minmax(0, 1fr); }
    .edx-plan-icon { width: 72px; height: 72px; }
    .edx-plan-footer { align-items: stretch; flex-direction: column; }
    .edx-plan-footer .button { width: 100%; }
    .edx-section-heading h2 { font-size: 2.25rem; }
    .edx-comparison { width: min(100% - 24px, var(--shell)); }
    .edx-table-wrap { border-radius: 15px; }
    .edx-help { width: min(100% - 24px, var(--shell)); padding: 22px; }
    .edx-help-actions { grid-template-columns: 1fr; }
    .edx-help-actions .button:first-child { grid-column: auto; }
}

/* Standard-Edition: eigenständige, browserbasierte Produktseite */
.standard-product-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(76px, 8vw, 122px) 0 clamp(80px, 8vw, 118px);
    border-bottom: 1px solid rgb(177 22 20 / 14%);
    background:
        radial-gradient(circle at 82% 23%, rgb(255 140 67 / 24%), transparent 28%),
        radial-gradient(circle at 16% 88%, rgb(203 31 23 / 9%), transparent 30%),
        linear-gradient(135deg, #fffdfb 0%, #fff6f1 48%, #ffede5 100%);
}

.standard-product-hero::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, var(--brand), var(--orange));
}

.standard-product-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(390px, .8fr);
    align-items: center;
    gap: clamp(64px, 8vw, 130px);
}

.standard-product-kicker,
.standard-product-price > span {
    display: block;
    margin-bottom: 16px;
    color: var(--brand-dark);
    font-size: .88rem;
    font-weight: 800;
}

.standard-product-kicker::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 2px;
    margin: 0 12px 4px 0;
    background: linear-gradient(90deg, var(--brand), var(--orange));
}

.standard-product-copy h1 {
    max-width: 760px;
    margin: 0 0 24px;
    color: var(--text);
    font-size: clamp(3.2rem, 5.4vw, 5.65rem);
    line-height: .98;
    letter-spacing: -.055em;
}

.standard-product-lead {
    max-width: 720px;
    margin: 0 0 28px;
    color: var(--muted);
    font-size: clamp(1.05rem, 1.35vw, 1.28rem);
    line-height: 1.65;
}

.standard-product-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 24px;
    margin: 0 0 32px;
    padding: 0;
    list-style: none;
}

.standard-product-benefits li {
    position: relative;
    padding-left: 24px;
    color: var(--text);
    font-weight: 700;
}

.standard-product-benefits li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--success);
    font-weight: 900;
}

.standard-product-actions { display: flex; flex-wrap: wrap; gap: 12px; }

.standard-product-stage {
    position: relative;
    min-height: 480px;
    display: grid;
    place-items: center;
}

.standard-product-glow {
    position: absolute;
    width: min(33vw, 440px);
    aspect-ratio: 1;
    border-radius: 50%;
    background: linear-gradient(145deg, rgb(255 185 77 / 62%), rgb(218 37 28 / 28%));
    filter: blur(2px);
}

.standard-product-box { position: relative; z-index: 1; display: block; }
.standard-product-box img { display: block; width: clamp(250px, 23vw, 350px); height: auto; filter: drop-shadow(0 30px 32px rgb(90 20 10 / 22%)); }

.standard-product-price {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 8px;
    width: min(330px, 82%);
    padding: 24px 28px;
    border: 1px solid rgb(190 35 25 / 22%);
    border-radius: 18px;
    background: rgb(255 255 255 / 88%);
    box-shadow: 0 22px 44px rgb(91 23 14 / 15%);
    backdrop-filter: blur(12px);
}

.standard-product-price > span { margin-bottom: 8px; }
.standard-product-price div { display: flex; align-items: baseline; gap: 8px; }
.standard-product-price strong { color: var(--brand); font-size: 2.75rem; line-height: 1; letter-spacing: -.04em; }
.standard-product-price small { color: var(--text); font-weight: 800; }
.standard-product-price p { margin: 10px 0 0; color: var(--muted); font-size: .84rem; }

.standard-snapshot { padding: clamp(62px, 7vw, 92px) 0; }
.standard-snapshot-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 7vw, 110px); align-items: start; }
.standard-snapshot h2 { max-width: 470px; margin: 8px 0 0; font-size: clamp(2.2rem, 3vw, 2.8rem); line-height: 1.06; letter-spacing: -.04em; }
.standard-snapshot dl { display: grid; grid-template-columns: repeat(2, 1fr); margin: 0; border-top: 1px solid var(--border); }
.standard-snapshot dl div { padding: 21px 8px; border-bottom: 1px solid var(--border); }
.standard-snapshot dt { margin-bottom: 5px; color: var(--brand-dark); font-size: .8rem; font-weight: 800; }
.standard-snapshot dd { margin: 0; color: var(--text); font-size: 1.05rem; font-weight: 750; }

.standard-capabilities-heading { max-width: 940px; margin: 0 auto clamp(48px, 5vw, 72px); text-align: center; }
.standard-capabilities-heading h2 { margin: 10px 0 16px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; }
.standard-capabilities-heading p { max-width: 720px; margin: 0 auto; color: var(--muted); font-size: 1.08rem; line-height: 1.65; }
.standard-capabilities-layout { display: grid; grid-template-columns: .86fr 1.14fr; align-items: center; gap: clamp(60px, 7vw, 110px); }
.standard-capabilities-visual { position: relative; display: grid; place-items: center; min-height: 500px; }
.standard-capabilities-visual::before { content: ""; position: absolute; width: 90%; aspect-ratio: 1; border-radius: 50%; background: linear-gradient(140deg, rgb(255 184 74 / 28%), rgb(220 46 33 / 10%)); }
.standard-capabilities-visual img { position: relative; z-index: 1; width: min(100%, 540px); height: auto; filter: drop-shadow(0 24px 30px rgb(78 23 17 / 14%)); }
.standard-capability-groups { border-top: 1px solid var(--border); }
.standard-capability-groups article { display: grid; grid-template-columns: 54px 1fr; gap: 22px; padding: 26px 4px; border-bottom: 1px solid var(--border); }
.standard-capability-groups article > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: #fff; background: linear-gradient(135deg, var(--brand), var(--orange)); font-size: .78rem; font-weight: 850; }
.standard-capability-groups h3 { margin: 0 0 6px; color: var(--text); font-size: 1.22rem; }
.standard-capability-groups p { margin: 0; color: var(--muted); line-height: 1.58; }
.standard-included { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 56px; border-block: 1px solid var(--border); }
.standard-included span { position: relative; padding: 22px 20px 22px 42px; color: var(--text); font-weight: 750; }
.standard-included span::before { content: "✓"; position: absolute; left: 18px; color: var(--success); }
.standard-included span + span { border-left: 1px solid var(--border); }

.standard-decision { padding: clamp(72px, 8vw, 112px) 0; border-block: 1px solid rgb(201 44 28 / 12%); background: linear-gradient(115deg, rgb(255 247 242 / 76%), rgb(251 225 212 / 54%)); }
.standard-decision-grid { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: clamp(60px, 8vw, 120px); }
.standard-decision-copy h2 { margin: 10px 0 20px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; }
.standard-decision-copy p { margin: 0; color: var(--muted); font-size: 1.05rem; line-height: 1.7; }
.standard-decision-options { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.standard-decision-options article { padding: 30px; border: 1px solid rgb(191 44 30 / 16%); border-radius: 18px; background: rgb(255 255 255 / 60%); }
.standard-decision-options h3 { margin: 0 0 16px; font-size: 1.28rem; }
.standard-decision-options ul { margin: 0; padding: 0; list-style: none; }
.standard-decision-options li { position: relative; padding: 6px 0 6px 25px; }
.standard-decision-options li::before { content: "✓"; position: absolute; left: 0; color: var(--success); font-weight: 900; }
.standard-decision-options p { margin: 0 0 18px; color: var(--muted); line-height: 1.6; }
.standard-decision-options a { color: var(--brand); font-weight: 800; }

.standard-comparison-cta { padding: 42px 0; color: #fff; background: linear-gradient(100deg, #b41c17, #d53925 60%, #f07835); }
.standard-comparison-cta .shell { display: flex; align-items: center; justify-content: center; gap: clamp(40px, 8vw, 120px); }
.standard-comparison-cta h2 { margin: 0; font-size: clamp(1.8rem, 2.6vw, 2.5rem); line-height: 1.1; }

.standard-support-faq-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(64px, 8vw, 120px); align-items: start; }
.standard-demo-card { padding: clamp(34px, 4vw, 52px); border: 1px solid rgb(198 44 29 / 18%); border-radius: 22px; background: linear-gradient(145deg, #fff7f2, #ffe7dc); box-shadow: 0 22px 46px rgb(87 22 14 / 8%); }
.standard-demo-card h2, .standard-faq-compact h2 { margin: 10px 0 18px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; }
.standard-demo-card p { margin: 0 0 25px; color: var(--muted); line-height: 1.65; }
.standard-faq-compact details { border-top: 1px solid var(--border); }
.standard-faq-compact details:last-child { border-bottom: 1px solid var(--border); }
.standard-faq-compact summary { padding: 22px 42px 22px 0; color: var(--text); font-weight: 800; cursor: pointer; }
.standard-faq-compact details p { margin: -5px 0 22px; color: var(--muted); line-height: 1.6; }
.standard-price-note { margin-top: -36px; margin-bottom: 56px; color: var(--muted); font-size: .76rem; line-height: 1.55; text-align: center; }

@media (max-width: 1020px) {
    .standard-product-hero-grid, .standard-capabilities-layout, .standard-decision-grid, .standard-support-faq-grid { grid-template-columns: 1fr; }
    .standard-product-stage { min-height: 430px; }
    .standard-product-price { right: 8%; }
    .standard-snapshot-grid { grid-template-columns: 1fr; }
    .standard-capabilities-visual { min-height: 410px; }
}

@media (max-width: 700px) {
    .standard-product-hero { padding-block: 58px 74px; }
    .standard-product-hero-grid { gap: 44px; }
    .standard-product-copy h1 { font-size: clamp(2.7rem, 13vw, 4rem); }
    .standard-product-stage { min-height: 390px; }
    .standard-product-price { right: 0; bottom: 0; }
    .standard-snapshot dl, .standard-decision-options, .standard-included { grid-template-columns: 1fr; }
    .standard-included span + span { border-left: 0; border-top: 1px solid var(--border); }
    .standard-capabilities-heading h2, .standard-decision-copy h2, .standard-demo-card h2, .standard-faq-compact h2 { font-size: 2.25rem; }
    .standard-capabilities-visual { min-height: 300px; }
    .standard-comparison-cta .shell { flex-direction: column; align-items: flex-start; gap: 24px; }
}

/* Standard-Edition v2: Inhalte der Bestandsseite, neutraler und mit Glasflächen */
.std-kicker {
    display: block;
    margin-bottom: 12px;
    color: var(--brand-dark);
    font-size: .86rem;
    font-weight: 800;
}

.std-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(66px, 7vw, 108px) 0;
    background: linear-gradient(135deg, #f7f9fc 0%, #eef2f6 55%, #f7f9fb 100%);
}

.std-hero-orb { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .9; }
.std-hero-orb-a { top: -210px; right: 4%; width: 590px; height: 590px; background: radial-gradient(circle, rgb(255 118 46 / 48%), rgb(209 10 22 / 16%) 52%, transparent 72%); }
.std-hero-orb-b { bottom: -320px; left: -140px; width: 620px; height: 620px; background: radial-gradient(circle, rgb(255 174 66 / 38%), transparent 68%); }

.std-hero-panel {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, .72fr);
    align-items: center;
    gap: clamp(60px, 8vw, 126px);
    padding: clamp(44px, 5vw, 76px);
    border: 1px solid rgb(255 255 255 / 78%);
    border-radius: 32px;
    background: rgb(255 255 255 / 58%);
    box-shadow: 0 30px 80px rgb(28 39 55 / 13%);
    backdrop-filter: blur(22px);
}

.std-hero-copy h1 { max-width: 790px; margin: 0 0 24px; color: var(--text); font-size: clamp(3.2rem, 5.2vw, 5.4rem); line-height: .98; letter-spacing: -.055em; }
.std-hero-copy > p { max-width: 720px; margin: 0 0 32px; color: #33445a; font-size: clamp(1.05rem, 1.35vw, 1.25rem); line-height: 1.65; }
.std-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }

.std-hero-product { position: relative; min-height: 440px; display: grid; place-items: center; }
.std-hero-product::before { content: ""; position: absolute; width: min(32vw, 430px); aspect-ratio: 1; border-radius: 50%; background: linear-gradient(145deg, rgb(255 168 64 / 72%), rgb(208 31 22 / 40%)); box-shadow: inset 0 0 60px rgb(255 255 255 / 30%); }
.std-hero-product picture { position: relative; z-index: 1; }
.std-hero-product picture img { display: block; width: clamp(245px, 21vw, 330px); height: auto; filter: drop-shadow(0 26px 32px rgb(77 26 18 / 24%)); }
.std-price-glass { position: absolute; z-index: 2; right: -20px; bottom: 5px; width: min(330px, 88%); padding: 23px 26px; border: 1px solid rgb(255 255 255 / 78%); border-radius: 18px; background: rgb(255 255 255 / 72%); box-shadow: 0 18px 45px rgb(49 28 22 / 15%); backdrop-filter: blur(18px); }
.std-price-glass > span { display: block; margin-bottom: 7px; color: var(--brand-dark); font-weight: 800; }
.std-price-glass strong { display: block; color: var(--brand); font-size: 2.65rem; line-height: 1; }
.std-price-glass strong small { color: var(--text); font-size: .94rem; }
.std-price-glass p { margin: 9px 0 0; color: var(--muted); font-size: .79rem; }

.std-intro { background: #fff; }
.std-intro-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(66px, 9vw, 140px); }
.std-intro-visual { position: relative; display: grid; min-height: 510px; place-items: center; }
.std-intro-visual::before { content: ""; position: absolute; width: 86%; aspect-ratio: 1; border-radius: 50%; background: linear-gradient(145deg, rgb(255 178 67 / 24%), rgb(220 42 28 / 9%)); }
.std-intro-visual img { position: relative; z-index: 1; width: min(100%, 560px); height: auto; filter: drop-shadow(0 24px 32px rgb(35 42 55 / 13%)); }
.std-intro-copy h2 { max-width: 760px; margin: 8px 0 22px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; }
.std-intro-copy > p { max-width: 720px; margin: 0 0 30px; color: #33445a; font-size: 1.08rem; line-height: 1.7; }
.std-intro-copy dl { margin: 0; border-top: 1px solid var(--border); }
.std-intro-copy dl div { display: grid; grid-template-columns: 130px 1fr; gap: 20px; padding: 17px 0; border-bottom: 1px solid var(--border); }
.std-intro-copy dt { color: var(--muted); font-size: .84rem; font-weight: 800; }
.std-intro-copy dd { margin: 0; color: var(--text); font-weight: 760; }

.std-functions { position: relative; background: linear-gradient(135deg, #f2f5f8, #e9eef3 55%, #f4f6f8); }
.std-functions::before { content: ""; position: absolute; inset: 10% 4% auto auto; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgb(255 116 44 / 20%), transparent 68%); }
.std-section-heading { position: relative; z-index: 1; max-width: 860px; margin: 0 auto 50px; text-align: center; }
.std-section-heading h2 { margin: 8px 0 15px; font-size: 40px; line-height: 1.08; }
.std-section-heading p { margin: 0; color: var(--muted); font-size: 1.04rem; }
.std-function-glass { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; border: 1px solid rgb(255 255 255 / 82%); border-radius: 26px; background: rgb(255 255 255 / 60%); box-shadow: 0 24px 64px rgb(37 49 62 / 12%); backdrop-filter: blur(18px); }
.std-function-glass article { padding: clamp(30px, 3.3vw, 48px); }
.std-function-glass article + article { border-left: 1px solid rgb(113 127 143 / 18%); }
.std-function-number { display: grid; width: 42px; height: 42px; margin-bottom: 22px; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(135deg, var(--brand), var(--orange)); font-size: .76rem; font-weight: 850; }
.std-function-glass h3 { margin: 0 0 20px; font-size: 1.32rem; }
.std-function-glass ul, .std-profi-glass ul { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.std-function-glass li, .std-profi-glass li { position: relative; padding-left: 24px; color: #26384e; line-height: 1.5; }
.std-function-glass li::before, .std-profi-glass li::before { content: "✓"; position: absolute; left: 0; color: var(--success); font-weight: 900; }

.std-editions { padding: clamp(76px, 8vw, 116px) 0; background: #fff; }
.std-editions-grid { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: clamp(60px, 8vw, 120px); }
.std-edition-question h2 { max-width: 570px; margin: 8px 0 18px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; }
.std-edition-question p { max-width: 590px; margin: 0 0 26px; color: var(--muted); line-height: 1.65; }
.std-profi-glass { overflow: hidden; border: 1px solid rgb(204 48 32 / 18%); border-radius: 24px; background: linear-gradient(145deg, rgb(255 255 255 / 90%), rgb(245 248 250 / 82%)); box-shadow: 0 24px 55px rgb(37 49 62 / 10%); }
.std-profi-heading { padding: 30px 36px 24px; border-bottom: 1px solid var(--border); }
.std-profi-heading > span { color: var(--brand-dark); font-size: .82rem; font-weight: 800; }
.std-profi-heading h2 { margin: 7px 0 0; font-size: 2.25rem; }
.std-profi-glass > ul { grid-template-columns: repeat(2, 1fr); padding: 30px 36px; }
.std-profi-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 36px; border-top: 1px solid var(--border); background: rgb(238 242 246 / 70%); }
.std-profi-footer strong { color: var(--brand); font-size: 2.5rem; }
.std-profi-footer span { color: var(--text); font-weight: 750; }

.std-voices-faq { background: #f4f6f8; }
.std-voices-faq-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(68px, 8vw, 120px); align-items: start; }
.std-voice { padding: clamp(34px, 4vw, 54px); border: 1px solid rgb(255 255 255 / 82%); border-radius: 24px; background: rgb(255 255 255 / 68%); box-shadow: 0 20px 50px rgb(34 48 61 / 9%); backdrop-filter: blur(16px); }
.std-voice h2, .std-faq h2 { margin: 8px 0 22px; font-size: 40px; line-height: 1.08; letter-spacing: -.04em; }
.std-voice blockquote { position: relative; margin: 30px 0 22px; color: #25364a; font-size: 1.08rem; font-style: italic; line-height: 1.75; }
.std-voice blockquote::before { content: "“"; display: block; height: 32px; color: var(--brand); font-size: 4.4rem; font-style: normal; line-height: .8; opacity: .55; }
.std-voice > p { margin: 0; color: var(--brand-dark); }
.std-faq details { border-top: 1px solid #cad3dc; }
.std-faq details:nth-of-type(2) { border-bottom: 1px solid #cad3dc; }
.std-faq summary { padding: 22px 36px 22px 0; color: var(--text); font-weight: 800; cursor: pointer; }
.std-faq details p { margin: -4px 0 24px; color: #3b4b60; line-height: 1.65; }
.std-text-link { display: inline-block; margin-top: 25px; color: var(--brand); font-weight: 800; }

.std-requirements { background: #fff; }
.std-requirements-heading { display: grid; grid-template-columns: .75fr 1.25fr; column-gap: 60px; align-items: end; margin-bottom: 42px; }
.std-requirements-heading .std-kicker { grid-column: 1; }
.std-requirements-heading h2 { grid-column: 1; margin: 0; font-size: 40px; line-height: 1.08; }
.std-requirements-heading p { grid-column: 2; grid-row: 1 / span 2; max-width: 690px; margin: 0; color: var(--muted); line-height: 1.65; }
.std-requirements-table { overflow: hidden; margin: 0; border: 1px solid #d9e0e7; border-radius: 20px; box-shadow: 0 16px 42px rgb(37 49 62 / 7%); }
.std-requirements-table div { display: grid; grid-template-columns: minmax(190px, .32fr) 1fr; }
.std-requirements-table div + div { border-top: 1px solid #d9e0e7; }
.std-requirements-table dt, .std-requirements-table dd { padding: 22px 26px; }
.std-requirements-table dt { color: #32465e; font-weight: 800; background: #f1f4f7; }
.std-requirements-table dd { margin: 0; color: var(--text); font-weight: 650; background: #fff; }

.std-contact { background: #f5f7f9; }
.std-contact-glass { display: grid; grid-template-columns: 1fr .75fr; align-items: center; gap: clamp(52px, 8vw, 116px); padding: clamp(48px, 6vw, 76px); border: 1px solid rgb(255 255 255 / 38%); border-radius: 28px; color: #fff; background: linear-gradient(110deg, #641c1c, #bd2b1e 56%, #f06c31); box-shadow: 0 26px 66px rgb(92 24 17 / 18%); }
.std-contact-glass h2 { margin: 8px 0 15px; color: #fff; font-size: 40px; }
.std-contact-glass p, .std-contact-glass span { color: #fff; }
.std-contact-actions { display: grid; gap: 12px; }
.std-contact-actions > a:not(.button) { display: grid; min-height: 52px; place-items: center; border: 1px solid rgb(255 255 255 / 66%); border-radius: 12px; color: #fff; font-weight: 800; text-decoration: none; background: rgb(255 255 255 / 9%); backdrop-filter: blur(10px); }
.std-contact-actions > a:not(.button):hover { color: var(--brand-dark); background: #fff; }
.std-price-note { margin-top: -32px; margin-bottom: 55px; color: var(--muted); font-size: .76rem; line-height: 1.55; text-align: center; }

/* Standard-Edition: eine durchgehende Seitenfläche statt wechselnder Sektionshintergründe */
.std-page {
    position: relative;
    overflow: clip;
    background:
        radial-gradient(circle at 90% 8%, rgb(239 74 40 / 12%), transparent 27rem),
        radial-gradient(circle at 7% 29%, rgb(255 164 55 / 10%), transparent 31rem),
        radial-gradient(circle at 88% 63%, rgb(205 34 27 / 6%), transparent 30rem),
        linear-gradient(180deg, #fff 0%, #fafbfc 42%, #fff 76%, #fffaf7 100%);
}

.std-page .std-hero,
.std-page .std-intro,
.std-page .std-functions,
.std-page .std-editions,
.std-page .std-voices-faq,
.std-page .std-requirements,
.std-page .std-contact {
    background: transparent;
}

.std-page .std-hero {
    min-height: auto;
    padding: clamp(54px, 6vw, 86px) 0 clamp(70px, 7vw, 104px);
}

.std-page .std-hero-panel {
    min-height: 530px;
    padding: clamp(42px, 5vw, 72px);
    border: 1px solid rgb(255 255 255 / 78%);
    border-radius: 30px;
    background: linear-gradient(125deg, rgb(255 255 255 / 78%), rgb(255 248 244 / 62%));
    box-shadow: 0 28px 74px rgb(74 36 27 / 12%);
    backdrop-filter: blur(18px);
}

.std-page .std-hero-copy h1 {
    max-width: 790px;
    font-size: clamp(3rem, 4.5vw, 4.65rem);
    line-height: 1.01;
}

.std-page .std-hero-product { min-height: 390px; }

.std-page .std-hero-product::before {
    width: min(33vw, 480px);
    border-radius: 42% 58% 62% 38% / 45% 42% 58% 55%;
    background: linear-gradient(145deg, rgb(255 175 67 / 30%), rgb(215 45 29 / 12%));
}

.std-hero-laptop {
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 560px);
    height: auto;
    filter: drop-shadow(0 28px 34px rgb(45 29 25 / 20%));
}

.std-page .std-price-glass {
    right: -6px;
    bottom: 0;
    background: rgb(255 255 255 / 76%);
}

.std-page .std-functions,
.std-page .std-voices-faq,
.std-page .std-requirements,
.std-page .std-contact,
.std-page .std-editions {
    padding: clamp(72px, 7vw, 106px) 0;
}

.std-page .std-functions::before {
    inset: 4% 2% auto auto;
    opacity: .45;
}

.std-page .std-section-heading { margin-bottom: 38px; }

.std-function-glass.std-function-list-panel {
    display: block;
    padding: clamp(34px, 4vw, 58px);
    border-color: rgb(207 55 35 / 15%);
    background: rgb(255 255 255 / 68%);
}

.std-function-list-panel .std-function-list {
    display: block;
    columns: 2;
    column-gap: clamp(44px, 7vw, 110px);
    margin: 0;
    padding: 0;
}

.std-function-list-panel .std-function-list li {
    break-inside: avoid;
    margin: 0 0 18px;
    padding: 0 0 18px 28px;
    border-bottom: 1px solid rgb(97 113 132 / 15%);
    color: var(--text);
    line-height: 1.5;
}

.std-function-list-panel .std-function-list li::before {
    top: 0;
    color: var(--success);
}

.std-page .std-edition-question h2 { font-size: clamp(2rem, 3vw, 2.65rem); }
.std-page .std-edition-question .button { margin-top: 26px; }

.std-page .std-requirements-heading { display: block; }
.std-page .std-requirements-heading h2 { margin: 0; }

.std-page .std-requirements-table,
.std-page .std-profi-glass,
.std-page .std-voice {
    background: rgb(255 255 255 / 70%);
    backdrop-filter: blur(16px);
}

.std-page .std-requirements-table dt { background: rgb(244 246 248 / 72%); }
.std-page .std-requirements-table dd { background: rgb(255 255 255 / 58%); }

.std-page .std-price-note {
    margin-top: -28px;
    margin-bottom: 0;
    padding-bottom: 52px;
}

.std-offer {
    position: relative;
    padding: clamp(54px, 6vw, 88px) 0 clamp(46px, 5vw, 76px);
}

.std-offer::before {
    content: "";
    position: absolute;
    inset: -12rem -8rem auto auto;
    width: 38rem;
    height: 38rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgb(239 75 39 / 18%), transparent 68%);
    pointer-events: none;
}

.std-offer-glass {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(220px, .55fr) minmax(230px, .55fr);
    align-items: center;
    gap: clamp(30px, 4vw, 68px);
    padding: clamp(32px, 4vw, 56px);
    border: 1px solid rgb(255 255 255 / 84%);
    border-radius: 30px;
    background: linear-gradient(125deg, rgb(255 255 255 / 82%), rgb(255 244 238 / 64%));
    box-shadow: 0 28px 72px rgb(72 35 26 / 12%);
    backdrop-filter: blur(20px);
}

.std-offer-product {
    display: grid;
    grid-template-columns: 190px 1fr;
    align-items: center;
    gap: clamp(24px, 3vw, 44px);
}

.std-offer-product img {
    display: block;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 20px 26px rgb(73 28 20 / 18%));
}

.std-offer-product h1 {
    margin: 7px 0 8px;
    font-size: clamp(2.8rem, 4vw, 4.25rem);
    line-height: 1;
    letter-spacing: -.045em;
}

.std-offer-product p,
.std-offer-price p { margin: 0; }
.std-offer-product p { color: #33445a; font-size: 1.05rem; }

.std-offer-price {
    padding-left: clamp(22px, 3vw, 44px);
    border-left: 1px solid rgb(119 129 143 / 20%);
}

.std-offer-price > span { color: var(--brand-dark); font-weight: 800; }
.std-offer-price strong { color: var(--brand); font-size: clamp(2.7rem, 4vw, 4.25rem); line-height: 1; }
.std-offer-price small { display: block; margin-top: 10px; color: var(--muted); line-height: 1.45; }
.std-offer-actions { display: grid; gap: 12px; }

.std-page .std-intro {
    padding: clamp(66px, 7vw, 102px) 0;
}

.std-page .std-intro-visual { min-height: 360px; }
.std-page .std-intro-visual::before { width: 76%; }
.std-page .std-intro-visual img { width: min(100%, 590px); }

.std-compare-cta {
    padding: clamp(30px, 4vw, 52px) 0;
}

.std-compare-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(30px, 5vw, 84px);
    padding: clamp(34px, 4vw, 54px);
    border: 1px solid rgb(255 255 255 / 34%);
    border-radius: 26px;
    color: #fff;
    background: linear-gradient(105deg, #b41e19, #d63b22 58%, #f07834);
    box-shadow: 0 24px 56px rgb(113 35 23 / 16%);
}

.std-compare-cta-inner h2 {
    max-width: 870px;
    margin: 0;
    color: #fff;
    font-size: clamp(2rem, 3vw, 2.65rem);
    line-height: 1.12;
}

.std-compare-cta-inner .button { flex: 0 0 auto; }

.std-customer h2,
.std-faq-layout > h2,
.std-editions-title,
.std-paula h2 {
    margin: 0 0 36px;
    font-size: 40px;
    line-height: 1.08;
    letter-spacing: -.04em;
}

.std-customer-voice {
    display: grid;
    grid-template-columns: 1fr minmax(220px, .28fr);
    align-items: end;
    gap: clamp(30px, 5vw, 80px);
}

.std-customer-voice blockquote { margin: 0; }
.std-customer-voice > p { padding-left: 26px; border-left: 2px solid var(--brand); }

.std-faq-layout {
    display: grid;
    grid-template-columns: minmax(280px, .55fr) minmax(0, 1.25fr);
    gap: clamp(58px, 9vw, 150px);
    align-items: start;
}

.std-faq-layout > h2 { margin: 0; }

.std-page .std-faq details:first-child { border-top: 1px solid #cad3dc; }
.std-page .std-faq details:last-of-type { border-bottom: 1px solid #cad3dc; }

.std-editions-title {
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.std-page .std-editions-grid { margin-top: 42px; }
.std-page .std-edition-question h3 { margin: 0 0 28px; font-size: clamp(1.7rem, 2.4vw, 2.25rem); line-height: 1.15; }

.std-paula-grid {
    display: grid;
    grid-template-columns: minmax(270px, .55fr) minmax(0, 1.25fr);
    align-items: center;
    gap: clamp(60px, 9vw, 150px);
}

.std-paula-visual {
    display: grid;
    min-height: 390px;
    place-items: center;
    border: 1px solid rgb(206 55 36 / 16%);
    border-radius: 28px;
    background: rgb(255 255 255 / 62%);
    box-shadow: 0 22px 54px rgb(49 35 31 / 9%);
    backdrop-filter: blur(16px);
}

.std-paula-visual img { display: block; width: min(82%, 360px); height: auto; }
.std-paula h2 { margin-top: 8px; }
.std-paula p { max-width: 850px; color: #33445a; line-height: 1.7; }
.std-paula .button { margin-top: 16px; }

@media (max-width: 1020px) {
    .std-hero-panel, .std-intro-grid, .std-editions-grid, .std-voices-faq-grid, .std-contact-glass { grid-template-columns: 1fr; }
    .std-price-glass { right: 5%; }
    .std-function-glass { grid-template-columns: 1fr; }
    .std-function-glass article + article { border-top: 1px solid rgb(113 127 143 / 18%); border-left: 0; }
    .std-requirements-heading { grid-template-columns: 1fr; }
    .std-requirements-heading p { grid-column: 1; grid-row: auto; margin-top: 18px; }
    .std-offer-glass { grid-template-columns: 1fr 1fr; }
    .std-offer-product { grid-column: 1 / -1; }
    .std-faq-layout, .std-paula-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
    .std-hero { padding-block: 38px 58px; }
    .std-hero-panel { padding: 32px 24px; border-radius: 22px; }
    .std-hero-copy h1 { font-size: clamp(2.65rem, 13vw, 3.8rem); }
    .std-hero-product { min-height: 390px; }
    .std-price-glass { right: 0; }
    .std-intro-visual { min-height: 310px; }
    .std-intro-copy h2, .std-section-heading h2, .std-edition-question h2, .std-voice h2, .std-faq h2, .std-requirements-heading h2, .std-contact-glass h2 { font-size: 2.25rem; }
    .std-intro-copy dl div, .std-requirements-table div { grid-template-columns: 1fr; }
    .std-profi-glass > ul { grid-template-columns: 1fr; }
    .std-profi-footer { align-items: flex-start; flex-direction: column; }
    .std-function-list-panel .std-function-list { columns: 1; }
    .std-offer-glass { grid-template-columns: 1fr; }
    .std-offer-product { grid-column: auto; grid-template-columns: 120px 1fr; }
    .std-offer-price { padding: 24px 0 0; border-top: 1px solid rgb(119 129 143 / 20%); border-left: 0; }
    .std-compare-cta-inner { align-items: stretch; flex-direction: column; }
    .std-customer-voice { grid-template-columns: 1fr; }
    .std-paula-visual { min-height: 300px; }
}

:root {
    --bg: #f7fafc;
    --bg-soft: #fff5f1;
    --surface: #ffffff;
    --surface-soft: #f8fafc;
    --text: #102033;
    --muted: #617087;
    --border: #e2eaf0;
    --brand: #d10a16;
    --brand-dark: #aa0710;
    --brand-soft: #fff0ef;
    --orange: #ff7433;
    --orange-dark: #e94a21;
    --orange-soft: #fff2e9;
    --success: #079669;
    --success-soft: #e8fbf3;
    --shadow-sm: 0 10px 30px rgb(15 23 42 / 7%);
    --shadow-md: 0 24px 70px rgb(15 23 42 / 12%);
    --radius-sm: 14px;
    --radius-md: 22px;
    --radius-lg: 32px;
    --shell: 1360px;
}

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

html {
    scroll-behavior: smooth;
    scroll-padding-top: 90px;
}

body {
    margin: 0;
    min-width: 320px;
    overflow-x: clip;
    color: var(--text);
    background: #fffaf7;
    font-family: Inter, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}

#main-content {
    background:
        radial-gradient(circle at 12% 0%, rgb(255 116 51 / 16%), transparent 30%),
        radial-gradient(circle at 90% 0%, rgb(209 10 22 / 12%), transparent 28%),
        linear-gradient(180deg, #fff 0%, #fff4ef 46%, #fff 100%);
}

img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
p { margin: 0; color: var(--muted); }

h1, h2, h3 {
    margin: 0;
    color: var(--text);
    font-weight: 650;
    letter-spacing: -.045em;
    line-height: 1.08;
}

h1 { font-size: clamp(3.2rem, 5.8vw, 5.9rem); }
h2 { font-size: clamp(2.25rem, 4vw, 3.8rem); }
h3 { font-size: clamp(1.35rem, 2vw, 1.75rem); }

.shell {
    width: min(100% - 48px, var(--shell));
    margin-inline: auto;
}

.header-shell {
    width: min(100% - 56px, 2140px);
    margin-inline: auto;
}

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

.skip-link:focus { transform: translateY(0); }

.site-header {
    position: sticky;
    z-index: 1000;
    top: 0;
    border-bottom: 1px solid transparent;
    background: rgb(255 255 255 / 90%);
    backdrop-filter: blur(16px);
    transition: box-shadow .2s ease, border-color .2s ease;
}

.site-header.is-scrolled {
    border-color: var(--border);
    box-shadow: 0 8px 30px rgb(15 23 42 / 5%);
}

.header-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    min-height: 92px;
    align-items: center;
    gap: clamp(14px, 1.45vw, 28px);
}

.product-brand,
.company-brand { display: inline-flex; flex: 0 0 auto; align-items: center; }
.product-brand { justify-self: start; }
.product-brand img { display: block; width: clamp(190px, 15vw, 226px); height: auto; }
.company-brand { justify-self: end; }
.company-brand img { display: block; width: clamp(145px, 12vw, 178px); height: auto; }

.header-center { display: inline-flex; align-items: center; justify-content: center; gap: 4px; }

.header-contact-actions { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 4px; }
.header-contact-link {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 11px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: #25364d;
    font-size: clamp(.72rem, .72vw, .82rem);
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.header-contact-link svg { width: 17px; height: 17px; flex: 0 0 17px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.header-contact-link:hover, .header-contact-link:focus-visible { color: var(--brand-dark); border-color: rgb(209 10 22 / 25%); background: var(--brand-soft); box-shadow: 0 8px 20px rgb(209 10 22 / 9%); transform: translateY(-1px); }
.mobile-contact-actions { display: none; }

.main-navigation { display: flex; min-width: 0; align-items: center; gap: 2px; }
.nav-item { position: relative; }

.nav-trigger,
.main-navigation .nav-link {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: #25364d;
    background: transparent;
    font: inherit;
    font-size: clamp(.77rem, .85vw, .88rem);
    font-weight: 720;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.nav-trigger:hover,
.nav-trigger:focus-visible,
.nav-trigger[aria-expanded="true"],
.main-navigation .nav-link:hover,
.main-navigation .nav-link:focus-visible {
    color: var(--brand-dark);
    background: var(--brand-soft);
    border-color: rgb(209 10 22 / 25%);
    box-shadow: 0 8px 20px rgb(209 10 22 / 9%);
    transform: translateY(-1px);
}

.nav-chevron {
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    transition: transform .2s ease;
}

.nav-trigger[aria-expanded="true"] .nav-chevron { transform: translateY(2px) rotate(225deg); }

.nav-dropdown {
    position: absolute;
    z-index: 20;
    top: calc(100% + 12px);
    left: 0;
    display: grid;
    min-width: 238px;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 14px;
    visibility: hidden;
    opacity: 0;
    background: #fff;
    box-shadow: 0 22px 55px rgb(15 23 42 / 14%);
    transform: translateY(-6px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s;
}

.nav-dropdown::before {
    position: absolute;
    top: -13px;
    right: 0;
    left: 0;
    height: 13px;
    content: "";
}

.nav-dropdown-wide { min-width: 280px; }
.nav-item-dropdown-end .nav-dropdown { right: 0; left: auto; }
.nav-item.is-open > .nav-dropdown,
.nav-item-dropdown:hover > .nav-dropdown {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

.nav-dropdown a {
    display: flex;
    min-height: 42px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 12px;
    border-radius: 9px;
    color: #43536a;
    font-size: .87rem;
    font-weight: 570;
    line-height: 1.35;
    transition: color .15s ease, background .15s ease;
}

.nav-dropdown a:hover,
.nav-dropdown a:focus-visible { color: var(--brand-dark); background: var(--brand-soft); }
.nav-badge { padding: 3px 7px; border-radius: 99px; color: var(--brand-dark); background: var(--brand-soft); font-size: .62rem; font-weight: 800; letter-spacing: .02em; text-transform: none; }
.external-mark { color: #8492a5; font-size: .8rem; }
.menu-toggle { display: none; }

.hero {
    position: relative;
    overflow: hidden;
    padding: clamp(30px, 3vw, 42px) 0;
    color: #fff;
    background:
        radial-gradient(circle at -2% 46%, #f99d39 10%, transparent 57%),
        linear-gradient(104deg, #f47a2d 0%, #ff5a34 48%, #ff303a 100%);
}

.hero::after {
    display: none;
}

.hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(460px, .9fr);
    align-items: center;
    gap: clamp(46px, 6vw, 88px);
}

.hero-copy { max-width: 680px; }
.hero-kicker { margin: 0 0 14px; color: #fff; font-size: clamp(1.15rem, 2vw, 1.7rem); line-height: 1.35; }
.hero h1 { margin: 0; color: #fff; font-size: clamp(2.4rem, 3.55vw, 3.25rem); font-weight: 560; line-height: 1.28; letter-spacing: -.035em; text-shadow: 0 1px 1px rgb(119 20 15 / 35%); }
.hero-automation-note { grid-column: 1 / -1; margin: -44px 0 8px; color: #fff; font-size: .8em; font-weight: 400; line-height: 1.55; text-align: center; white-space: nowrap; transform: translateY(-20px); }
.hero-automation-note a { color: #fff; font-style: italic; text-decoration: underline; text-underline-offset: 3px; }
.hero-automation-note a:hover { color: #fff; text-decoration-thickness: 2px; }
.hero-video { position: relative; overflow: hidden; width: 100%; border: 5px solid rgb(255 255 255 / 20%); border-radius: 20px; background: #252525; box-shadow: 0 28px 60px rgb(91 12 15 / 34%), 0 5px 14px rgb(91 12 15 / 22%); aspect-ratio: 16 / 9; }
.hero-video-poster { position: relative; display: block; width: 100%; height: 100%; padding: 0; overflow: hidden; border: 0; background: #252525; cursor: pointer; }
.hero-video-poster picture, .hero-video-poster img { display: block; width: 100%; height: 100%; object-fit: cover; }
.hero-video-poster::after { position: absolute; inset: 0; background: rgb(0 0 0 / 8%); content: ""; transition: background .2s ease; }
.hero-video-poster:hover::after { background: rgb(0 0 0 / 18%); }
.hero-play { position: absolute; z-index: 1; top: 50%; left: 50%; display: grid; width: 72px; height: 52px; place-items: center; border-radius: 13px; background: rgb(24 24 24 / 82%); box-shadow: 0 8px 24px rgb(0 0 0 / 28%); transform: translate(-50%, -50%); }
.hero-play::before { margin-left: 4px; border-top: 10px solid transparent; border-bottom: 10px solid transparent; border-left: 17px solid #fff; content: ""; }
.hero-video iframe { display: block; width: 100%; height: 100%; border: 0; }

.eyebrow, .section-kicker {
    color: var(--brand-dark);
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .015em;
    text-transform: none;
}

.eyebrow { display: flex; align-items: center; gap: 10px; margin-bottom: 22px; }
.eyebrow span { width: 28px; height: 3px; border-radius: 99px; background: linear-gradient(90deg, var(--brand), var(--orange)); }
.hero h1 span { color: transparent; background: linear-gradient(90deg, var(--brand-dark), var(--brand) 48%, var(--orange-dark)); background-clip: text; -webkit-background-clip: text; }

.hero-lead {
    max-width: 640px;
    margin-top: 28px;
    font-size: clamp(1.12rem, 1.7vw, 1.35rem);
    line-height: 1.6;
}

.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 36px; }

.button {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 22px;
    border: 1px solid transparent;
    border-radius: 12px;
    font-weight: 760;
    line-height: 1.2;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.button:hover { transform: translateY(-2px); }
.button-primary { border-color: var(--brand-dark); color: #fff; background: linear-gradient(135deg, var(--brand), var(--orange-dark)); box-shadow: 0 14px 28px rgb(170 7 16 / 23%); }
.button-primary:hover { border-color: #89040b; color: #fff; background: linear-gradient(135deg, var(--brand-dark), #d83a1d); box-shadow: 0 18px 36px rgb(170 7 16 / 31%); }
.button-secondary { border-color: rgb(170 7 16 / 58%); color: var(--brand-dark); background: #fff5f1; box-shadow: 0 8px 20px rgb(105 0 5 / 7%); }
.button-secondary:hover { border-color: var(--brand-dark); color: var(--brand-dark); background: #ffe7df; box-shadow: 0 12px 25px rgb(105 0 5 / 12%); }
.button-secondary-on-color { border-color: rgb(255 255 255 / 76%); color: #fff; background: rgb(119 15 14 / 20%); box-shadow: 0 10px 24px rgb(105 0 5 / 10%); backdrop-filter: blur(5px); }
.button-secondary-on-color:hover { border-color: #fff; color: var(--brand-dark); background: #fff; box-shadow: 0 14px 30px rgb(105 0 5 / 20%); }
.button-light { color: var(--text); background: #fff; box-shadow: 0 14px 30px rgb(0 0 0 / 14%); }
.button.full { width: 100%; }

.hero-checks { display: flex; flex-wrap: wrap; gap: 16px 22px; margin: 27px 0 0; padding: 0; list-style: none; }
.hero-checks li { color: #506179; font-size: .82rem; font-weight: 650; }
.hero-checks li::before { margin-right: 7px; color: var(--success); content: "✓"; font-weight: 900; }

.hero-visual { position: relative; min-height: 480px; display: grid; place-items: center; }
.visual-orbit { position: absolute; border-radius: 50%; }
.visual-orbit-one { inset: 3% 7% 2%; border: 1px solid rgb(209 10 22 / 16%); }
.visual-orbit-two { inset: 13% -2% 10% 20%; border: 1px dashed rgb(255 116 51 / 20%); }

.product-window {
    position: relative;
    z-index: 2;
    overflow: hidden;
    width: 100%;
    border: 1px solid rgb(148 163 184 / 27%);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 38px 90px rgb(15 23 42 / 20%);
    transform: perspective(1400px) rotateY(-4deg) rotateX(2deg);
}

.window-bar { display: flex; height: 38px; align-items: center; gap: 6px; padding: 0 14px; border-bottom: 1px solid var(--border); background: #f8fafc; }
.window-bar i { width: 8px; height: 8px; border-radius: 50%; background: #cbd5e1; }
.window-bar i:first-child { background: #fb7185; }
.window-bar i:nth-child(2) { background: #fbbf24; }
.window-bar i:nth-child(3) { background: #34d399; }
.window-bar span { margin-left: auto; color: #8490a0; font-size: .67rem; font-style: normal; }
.product-window img { width: 100%; }

.floating-card {
    position: absolute;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 12px 15px;
    border: 1px solid rgb(226 234 240 / 90%);
    border-radius: 13px;
    background: rgb(255 255 255 / 55%);
    box-shadow: var(--shadow-md);
    backdrop-filter: blur(10px);
}

.floating-card strong, .floating-card small { display: block; }
.floating-card strong { font-size: .82rem; }
.floating-card small { color: var(--muted); font-size: .68rem; }
.floating-card-top { top: 3%; right: -4%; }
.floating-card-bottom { bottom: 3%; left: -5%; }
.floating-card-bottom img { width: 31px; max-height: 38px; }
.floating-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: #fff; background: var(--success); font-weight: 900; }

.trust-strip { position: relative; z-index: 3; }
.trust-strip-hero { margin-top: -64px; margin-bottom: -38px; }
.trust-grid { display: grid; min-height: 150px; grid-template-columns: 1.65fr repeat(3, .72fr); align-items: stretch; overflow: hidden; border: 1px solid rgb(209 10 22 / 20%); border-radius: 24px; background: #fff; box-shadow: 0 22px 55px rgb(77 24 19 / 18%); }
.trust-intro { padding: 28px 34px; border-left: 5px solid var(--brand); }
.trust-intro h2 { max-width: 430px; margin-top: 7px; font-size: clamp(1.45rem, 2.2vw, 2rem); letter-spacing: -.035em; }
.metric { display: flex; flex-direction: column; justify-content: center; padding: 24px; border-left: 1px solid var(--border); text-align: center; }
.metric strong, .metric span { display: block; }
.metric strong { color: var(--brand); font-size: clamp(1.8rem, 3vw, 2.75rem); font-weight: 700; letter-spacing: -.05em; }
.metric span { color: var(--muted); font-size: .76rem; font-weight: 650; }
.trust-grid-anchor { border: 0; }
.trust-grid-anchor .trust-intro { align-self: stretch; display: flex; flex-direction: column; justify-content: center; border: 0; color: #fff; background: linear-gradient(135deg, #a80712, #d7181c 58%, #ee6730); }
.trust-grid-anchor .trust-intro span { color: #ffd8ce; font-size: .72rem; font-weight: 850; letter-spacing: .015em; text-transform: none; }
.trust-grid-anchor .trust-intro h2 { color: #fff; }
.trust-grid-anchor .metric strong { background: linear-gradient(105deg, #bd0915, #ef6a31); background-clip: text; -webkit-background-clip: text; color: transparent; }

.section { padding: clamp(84px, 10vw, 136px) 0; }
.section-soft { background: transparent; }
.section-heading { max-width: 800px; margin-bottom: 52px; }
.section-heading.centered { margin-inline: auto; text-align: center; }
.section-heading h2 { margin-top: 13px; }
.section-heading p { max-width: 680px; margin: 22px auto 0; font-size: 1.08rem; }

.feature-stage { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.feature-card { position: relative; overflow: hidden; min-height: 250px; padding: 30px; border: 1px solid var(--border); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-sm); }
.feature-card p { margin-top: 12px; }
.feature-card-large { display: grid; grid-column: 1 / -1; grid-template-columns: auto minmax(250px, .75fr) minmax(420px, 1.25fr); min-height: 330px; align-items: center; gap: 28px; padding: 30px 0 0 32px; }
.feature-card-large picture { align-self: end; }
.feature-card-large img { width: 100%; max-height: 300px; object-fit: contain; object-position: bottom right; }
.feature-number { align-self: start; color: #d7e3e9; font-size: 1rem; font-weight: 800; }
.feature-icon { display: grid; width: 56px; height: 56px; margin-bottom: 48px; place-items: center; border-radius: 15px; font-weight: 820; }
.accent-green .feature-icon { color: var(--brand-dark); background: var(--brand-soft); }
.accent-blue .feature-icon { color: var(--orange-dark); background: var(--orange-soft); }
.accent-purple .feature-icon { color: #b12a18; background: #fff0ea; }

.process-layout { display: grid; grid-template-columns: .8fr 1.2fr; align-items: start; gap: clamp(54px, 8vw, 110px); }
.process-copy { position: sticky; top: 120px; }
.process-copy h2 { margin-top: 13px; }
.process-copy p { margin-top: 22px; font-size: 1.06rem; }
.text-link { display: inline-flex; gap: 10px; margin-top: 25px; color: var(--brand); font-weight: 760; }
.text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.process-steps { position: relative; margin: 0; padding: 0; list-style: none; }
.process-steps::before { position: absolute; top: 38px; bottom: 38px; left: 25px; width: 1px; background: linear-gradient(var(--brand), var(--orange)); content: ""; }
.process-steps li { position: relative; display: grid; grid-template-columns: 52px 1fr; gap: 22px; padding: 0 0 36px; }
.process-steps li > span { z-index: 1; display: grid; width: 52px; height: 52px; place-items: center; border: 5px solid #fff8f5; border-radius: 50%; color: #fff; background: var(--brand); font-weight: 800; }
.process-steps li:nth-child(n+3) > span { background: var(--orange-dark); }
.process-steps strong { display: block; padding-top: 5px; font-size: 1.08rem; }
.process-steps p { margin-top: 5px; }

.quality-card { display: grid; grid-template-columns: 220px 1fr .72fr; align-items: center; gap: 42px; padding: 42px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: linear-gradient(135deg, #fff 30%, #f1faf6); box-shadow: var(--shadow-sm); }
.quality-mark { display: grid; min-height: 170px; place-items: center; border-radius: var(--radius-md); background: #fff; }
.quality-mark img { max-height: 150px; object-fit: contain; }
.quality-card h2 { margin-top: 12px; font-size: clamp(2rem, 3vw, 3rem); }
.quality-card p { margin-top: 17px; }
.quality-list { margin: 0; padding: 0; list-style: none; }
.quality-list li { padding: 12px 0; border-bottom: 1px solid rgb(7 150 105 / 14%); color: #3f5364; font-weight: 650; }
.quality-list li::before { margin-right: 9px; color: var(--success); content: "✓"; }

.edition-grid { display: grid; grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 20px; }
.edition-card { position: relative; display: flex; min-height: 540px; flex-direction: column; padding: 34px; border: 1px solid var(--border); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-sm); }
.edition-card.featured { border-color: rgb(209 10 22 / 38%); box-shadow: 0 24px 70px rgb(209 10 22 / 13%); transform: translateY(-13px); }
.edition-badge { position: absolute; top: 0; right: 28px; padding: 7px 13px; border-radius: 0 0 10px 10px; color: #fff; background: linear-gradient(90deg, var(--brand), var(--orange-dark)); font-size: .67rem; font-weight: 800; text-transform: none; }
.edition-icon { display: grid; width: 54px; height: 54px; margin-bottom: 27px; place-items: center; border-radius: 15px; color: var(--brand-dark); background: var(--brand-soft); font-size: 1.25rem; font-weight: 850; }
.edition-label { color: var(--brand); font-size: .72rem; font-weight: 800; letter-spacing: .015em; text-transform: none; }
.edition-card h3 { margin-top: 7px; font-size: 2rem; }
.edition-card > p { min-height: 82px; margin-top: 16px; }
.edition-card ul { flex: 1; margin: 24px 0 30px; padding: 22px 0 0; border-top: 1px solid var(--border); list-style: none; }
.edition-card li { margin: 10px 0; color: #4f6075; font-size: .9rem; }
.edition-card li::before { margin-right: 9px; color: var(--success); content: "✓"; font-weight: 900; }

.faq-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(55px, 7vw, 96px); }
.faq-layout h2 { max-width: 560px; margin-top: 13px; font-size: clamp(2.2rem, 2.8vw, 2.9rem); line-height: 1.02; }
.faq-layout > div:first-child > p { margin-top: 20px; }
.faq-list { border-top: 1px solid var(--border); }
.faq-list details { border-bottom: 1px solid var(--border); }
.faq-list summary { position: relative; padding: 24px 44px 24px 0; cursor: pointer; font-size: 1.03rem; font-weight: 720; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { position: absolute; top: 22px; right: 4px; display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; color: var(--brand-dark); background: var(--brand-soft); content: "+"; font-size: 1.2rem; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { max-width: 720px; padding: 0 50px 25px 0; }

.final-cta { padding-top: 20px; }
.cta-card { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 45px; overflow: hidden; padding: clamp(40px, 6vw, 68px); border-radius: var(--radius-lg); color: #fff; background: radial-gradient(circle at 82% 0%, rgb(255 116 51 / 42%), transparent 38%), linear-gradient(135deg, #2a1720, #8f1118 72%, #cf341d); box-shadow: var(--shadow-md); }
.section-kicker.light { color: #ffd2c2; }
.cta-card h2 { margin-top: 11px; color: #fff; }
.cta-card p { max-width: 660px; margin-top: 18px; color: rgb(255 255 255 / 72%); }
.cta-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.cta-contact small, .cta-contact strong { display: block; }
.cta-contact small { color: rgb(255 255 255 / 55%); font-size: .74rem; }
.cta-contact strong { color: #fff; font-size: 1.05rem; }

.site-footer {
    --footer-bg: #20252b;
    --footer-bg-strong: #191d22;
    --footer-text: #d0d6dd;
    --footer-heading: #fff;
    --footer-muted: #a7b0ba;
    --footer-line: rgb(255 255 255 / 13%);
    --footer-link: #e4e8ec;
    --footer-accent: #c90b16;
    margin-top: 0;
    padding-top: 64px;
    border-top: 1px solid var(--footer-line);
    color: var(--footer-text);
    background: var(--footer-bg);
}

.footer-main-grid {
    display: grid;
    grid-template-columns: 1.18fr 1fr 1fr 1.12fr;
    gap: clamp(36px, 4.5vw, 68px);
    padding-bottom: 42px;
}

.footer-about { padding-right: 8px; }
.footer-product-mark { display: block; width: 68px; height: auto; margin-bottom: 24px; }
.footer-about p { max-width: 270px; color: var(--footer-text); font-size: .84rem; line-height: 1.72; }
.footer-column { display: flex; min-width: 0; flex-direction: column; align-items: stretch; }
.footer-column h2 { margin: 0 0 12px; padding-bottom: 14px; border-bottom: 1px solid var(--footer-line); color: var(--footer-heading); font-size: .9rem; font-weight: 760; }
.footer-column > a:not(.footer-contact-link) { display: flex; min-height: 37px; align-items: center; justify-content: space-between; gap: 12px; border-bottom: 1px solid var(--footer-line); color: var(--footer-link); font-size: .72rem; font-weight: 660; letter-spacing: 0; text-transform: none; }
.footer-column > a:hover, .footer-column > a:focus-visible { color: var(--footer-accent); }
.footer-column > a:not(.footer-contact-link) > span:last-child { color: var(--footer-muted); font-size: 1.15rem; }
.footer-address address { margin: 0 0 12px; color: var(--footer-text); font-size: .82rem; font-style: normal; line-height: 1.55; }
.footer-address address strong { color: var(--footer-heading); font-weight: 650; }
.footer-contact-link { color: var(--footer-link); font-size: .8rem; line-height: 1.65; }
.footer-contact-link > span { display: inline-block; width: 30px; color: var(--footer-muted); }
.footer-support { margin-top: 12px; color: var(--footer-text); font-size: .78rem; line-height: 1.55; }
.footer-support a { color: var(--footer-accent); font-weight: 650; }

.footer-legal-note { padding: 20px 0; border-top: 1px solid var(--footer-line); color: var(--footer-muted); }
.footer-legal-note p { margin: 0; font-size: .68rem; line-height: 1.6; }
.footer-copyright { margin-top: 8px; background: var(--footer-bg-strong); }
.footer-copyright-inner { display: flex; min-height: 62px; align-items: center; justify-content: space-between; gap: 28px; color: var(--footer-muted); font-size: .72rem; }
.footer-copyright-inner nav { display: flex; align-items: center; gap: 0; }
.footer-copyright-inner nav a { color: var(--footer-link); }
.footer-copyright-inner nav a + a::before { margin: 0 10px; color: var(--footer-muted); content: "|"; }
.footer-copyright-inner nav a:hover { color: var(--footer-accent); }

:focus-visible { outline: 3px solid rgb(209 10 22 / 42%); outline-offset: 3px; }

@media (max-width: 1350px) {
    .company-brand { display: none; }
    .product-brand img { width: 175px; }
    .nav-trigger, .main-navigation .nav-link { padding-inline: 8px; }
    .header-contact-link { padding-inline: 9px; font-size: .72rem; }
}

@media (max-width: 1280px) {
    .header-inner { grid-template-columns: 1fr auto; min-height: 76px; }
    .product-brand img { width: 210px; }
    .company-brand { display: none; }
    .header-center { display: contents; }
    .header-contact-actions { display: none; }
    .menu-toggle { display: flex; width: 42px; height: 42px; margin-left: auto; flex-direction: column; align-items: center; justify-content: center; gap: 5px; border: 1px solid var(--border); border-radius: 10px; background: #fff; }
    .menu-toggle span { width: 19px; height: 2px; border-radius: 9px; background: var(--text); transition: transform .2s ease, opacity .2s ease; }
    .menu-toggle.is-open span:first-child { transform: translateY(7px) rotate(45deg); }
    .menu-toggle.is-open span:nth-child(2) { opacity: 0; }
    .menu-toggle.is-open span:last-child { transform: translateY(-7px) rotate(-45deg); }
    .main-navigation { position: absolute; top: 76px; right: max(16px, calc((100% - var(--shell)) / 2)); left: max(16px, calc((100% - var(--shell)) / 2)); display: none; max-height: calc(100vh - 92px); overflow-y: auto; flex-direction: column; align-items: stretch; gap: 4px; padding: 14px; border: 1px solid var(--border); border-radius: 15px; background: #fff; box-shadow: var(--shadow-md); }
    .main-navigation.is-open { display: flex; }
    .nav-trigger, .main-navigation .nav-link { width: 100%; min-height: 46px; justify-content: space-between; padding: 11px 13px; font-size: .9rem; text-align: left; }
    .nav-trigger, .main-navigation .nav-link { border-color: transparent; border-radius: 9px; box-shadow: none; transform: none; }
    .nav-trigger:hover, .nav-trigger:focus-visible, .nav-trigger[aria-expanded="true"], .main-navigation .nav-link:hover, .main-navigation .nav-link:focus-visible { box-shadow: none; transform: none; }
    .nav-item-dropdown:hover > .nav-dropdown { visibility: hidden; opacity: 0; transform: none; }
    .nav-item.is-open > .nav-dropdown { display: grid; visibility: visible; opacity: 1; }
    .nav-dropdown { position: static; display: none; min-width: 0; margin: 2px 0 7px; padding: 5px 5px 5px 14px; border: 0; border-left: 2px solid #f4c8c6; border-radius: 0; visibility: visible; opacity: 1; box-shadow: none; transform: none; transition: none; }
    .nav-dropdown::before { display: none; }
    .nav-dropdown a { min-height: 42px; padding: 9px 11px; }
    .mobile-contact-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 8px; padding-top: 13px; border-top: 1px solid var(--border); }
    .mobile-contact-actions a { display: flex; min-width: 0; align-items: center; gap: 11px; padding: 12px 13px; border: 1px solid #f4c8c6; border-radius: 12px; color: var(--brand-dark); background: var(--brand-soft); font-size: .82rem; font-weight: 700; }
    .mobile-contact-actions svg { width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
    .mobile-contact-actions span { min-width: 0; }
    .mobile-contact-actions small { display: block; margin-bottom: 3px; color: #718096; font-size: .65rem; font-weight: 620; }
}

@media (max-width: 980px) {
    .footer-main-grid { grid-template-columns: repeat(2, 1fr); }
    .hero-grid { grid-template-columns: 1fr; }
    .hero-copy { max-width: 780px; }
    .hero-visual { width: min(100%, 760px); margin: 0 auto; }
    .trust-grid { grid-template-columns: repeat(3, 1fr); }
    .trust-intro { grid-column: 1 / -1; border-left: 0; border-bottom: 1px solid var(--border); text-align: center; }
    .trust-intro h2 { margin-inline: auto; }
    .feature-card-large { grid-template-columns: auto 1fr; }
    .feature-card-large picture { grid-column: 1 / -1; }
    .process-layout { grid-template-columns: 1fr; }
    .process-copy { position: static; max-width: 700px; }
    .quality-card { grid-template-columns: 180px 1fr; }
    .quality-list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .edition-grid { grid-template-columns: 1fr; max-width: 680px; margin-inline: auto; }
    .edition-card { min-height: auto; }
    .edition-card.featured { transform: none; }
    .edition-card > p { min-height: 0; }
}

@media (max-width: 760px) {
    .shell { width: min(100% - 32px, var(--shell)); }
    .header-shell { width: min(100% - 32px, 2140px); }
    h1 { font-size: clamp(2.75rem, 12vw, 4.2rem); }
    .header-inner { min-height: 68px; }
    .product-brand img { width: 180px; }
    .main-navigation { top: 68px; }
    .mobile-contact-actions { grid-template-columns: 1fr; }
    .hero { padding-top: 54px; }
    .hero-grid { gap: 58px; }
    .hero-automation-note { margin-top: -26px; white-space: normal; transform: none; }
    .hero-visual { min-height: 350px; }
    .floating-card-top { right: -2%; }
    .floating-card-bottom { left: -2%; }
    .trust-strip { margin-top: -18px; }
    .trust-grid { grid-template-columns: 1fr; }
    .metric { border-top: 1px solid var(--border); border-left: 0; }
    .feature-stage { grid-template-columns: 1fr; }
    .feature-card-large { grid-template-columns: 1fr; padding: 28px 28px 0; }
    .feature-card-large .feature-number { display: none; }
    .feature-card { min-height: 220px; }
    .feature-icon { margin-bottom: 35px; }
    .quality-card { grid-template-columns: 1fr; padding: 28px; }
    .quality-mark { min-height: 140px; }
    .quality-list { grid-column: auto; grid-template-columns: 1fr; gap: 0; }
    .faq-layout { grid-template-columns: 1fr; }
    .cta-card { grid-template-columns: 1fr; }
    .footer-main-grid { grid-template-columns: 1fr; gap: 34px; }
    .footer-about p { max-width: 440px; }
    .footer-copyright-inner { min-height: 82px; flex-direction: column; align-items: flex-start; justify-content: center; gap: 8px; }
}

@media (max-width: 520px) {
    .hero-actions, .hero-actions .button { width: 100%; }
    .hero-checks { display: grid; gap: 8px; }
    .hero-visual { min-height: 280px; }
    .product-window { transform: none; }
    .floating-card { padding: 9px 11px; }
    .floating-card-top { top: -7%; }
    .floating-card-bottom { bottom: -7%; }
    .section { padding: 76px 0; }
    .section-heading { margin-bottom: 38px; }
    .process-steps li { grid-template-columns: 44px 1fr; gap: 15px; }
    .process-steps li > span { width: 44px; height: 44px; }
    .process-steps::before { left: 21px; }
    .edition-card { padding: 27px; }
    .cta-card { padding: 32px 25px; }
    .footer-copyright-inner nav { flex-wrap: wrap; row-gap: 5px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Startseite: Inhaltsdramaturgie der bisherigen Default.aspx */
.section-lead { max-width: 720px; color: var(--muted); font-size: 1.08rem; line-height: 1.75; }

.web-successor {
    overflow: hidden;
    padding-block: clamp(96px, 8vw, 128px) clamp(54px, 5vw, 76px);
    background: transparent;
}
.web-successor-heading { margin-bottom: clamp(28px, 3vw, 40px); }
.web-successor-heading h2 { max-width: none; margin: 10px 0 0; font-size: clamp(2rem, 3.25vw, 3.25rem); line-height: 1.08; text-wrap: balance; }
.web-successor-grid { display: grid; grid-template-columns: minmax(300px, .7fr) minmax(620px, 1.3fr); align-items: start; gap: clamp(34px, 5vw, 72px); }
.web-successor-copy { padding-top: 4px; }
.web-successor-copy h3 { margin: 0 0 14px; font-size: clamp(1.25rem, 1.8vw, 1.65rem); line-height: 1.25; }
.web-successor-copy > p { margin: 0; color: var(--muted); line-height: 1.7; }
.web-successor-note { margin-top: 22px; padding: 15px 17px; border-left: 3px solid var(--brand); border-radius: 0 12px 12px 0; color: #75363a; background: #fff0ee; font-size: .82rem; line-height: 1.55; }
.web-successor-note strong { display: block; margin-bottom: 3px; color: var(--brand-dark); }
.web-successor-table-wrap { overflow-x: auto; border: 1px solid #e9cfcf; border-radius: 18px; background: #fff; box-shadow: var(--shadow-sm); }
.web-successor-table { width: 100%; min-width: 620px; border-collapse: collapse; table-layout: fixed; }
.web-successor-table th, .web-successor-table td { width: 50%; padding: 13px 17px; text-align: left; vertical-align: top; }
.web-successor-table th { font-size: .84rem; }
.web-successor-table th:first-child { color: #08723f; background: #eaf7ef; }
.web-successor-table th:nth-child(2) { color: #9f3036; background: #faecec; }
.web-successor-table th + th, .web-successor-table td + td { border-left: 1px solid #ead7d7; }
.web-successor-table td { position: relative; border-top: 1px solid #eadede; color: #33445a; font-size: .78rem; line-height: 1.45; }
.web-successor-table td:first-child { padding-left: 44px; background: #f4fbf7; font-weight: 700; }
.web-successor-table td:nth-child(2) { padding-left: 44px; background: #fff7f7; }
.web-successor-table td::before { position: absolute; top: 13px; left: 17px; display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; color: #fff; font-size: .7rem; font-weight: 900; line-height: 1; }
.web-successor-table td:first-child::before { background: #35a965; content: "✓"; }
.web-successor-table td:nth-child(2)::before { background: #d15358; content: "×"; }

.potential-showcase { background: transparent; }
.potential-variants { display: grid; gap: clamp(88px, 9vw, 132px); }
.potential-variant { min-width: 0; }
.potential-variant-label { display: flex; align-items: center; gap: 12px; margin: 0 0 18px; color: #6c7480; font-size: .72rem; font-weight: 800; letter-spacing: .015em; text-transform: none; }
.potential-variant-label::before { width: 32px; height: 2px; background: var(--brand); content: ""; }
.potential-variant h2 { letter-spacing: -.045em; }
.potential-variant h3 { font-size: clamp(1.25rem, 2vw, 1.7rem); }
.potential-variant p { color: var(--muted); line-height: 1.7; }
.potential-variant-image img, .potential-editorial-image img, .potential-overlap-image img { display: block; width: 100%; height: 100%; object-fit: cover; }

.potential-split-surface { display: grid; grid-template-columns: minmax(360px, .88fr) minmax(0, 1.12fr); min-height: 560px; overflow: hidden; border: 1px solid #ead8d3; border-radius: 28px; background: #fff; box-shadow: var(--shadow-md); }
.potential-variant-image { min-height: 100%; }
.potential-variant-image img { object-position: 48% center; }
.potential-variant-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(38px, 5vw, 72px); }
.potential-variant-copy h2 { max-width: 720px; margin: 10px 0 28px; font-size: clamp(2.25rem, 4.2vw, 4rem); line-height: 1.02; }
.potential-variant-copy h3 { margin: 0 0 10px; }
.potential-variant-copy > p { max-width: 720px; margin: 0; }
.potential-download { display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: start; gap: 14px; margin-top: 30px; padding: 18px; border-top: 1px solid #efd8d2; border-bottom: 1px solid #efd8d2; }
.potential-download-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; color: #fff; background: var(--brand); font-weight: 900; }
.potential-download strong { display: block; margin-bottom: 7px; }
.potential-download p { margin: 0; font-size: .82rem; line-height: 1.6; }
.potential-download a { color: var(--brand); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }

.potential-variant-editorial { padding: clamp(40px, 5vw, 70px); border-top: 3px solid var(--brand); border-bottom: 1px solid #ead8d3; background: #fff; }
.potential-editorial-head { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr); align-items: end; gap: clamp(50px, 8vw, 120px); margin-bottom: 34px; }
.potential-editorial-head h2 { max-width: 760px; margin: 10px 0 0; font-size: clamp(2.4rem, 4.5vw, 4.35rem); line-height: 1.02; }
.potential-editorial-head h3 { margin: 0 0 10px; }
.potential-editorial-head p { margin: 0; }
.potential-editorial-image { display: block; height: clamp(260px, 27vw, 390px); overflow: hidden; }
.potential-editorial-image img { object-position: center 48%; }
.potential-editorial-download { padding: 24px 28px; color: #fff; background: linear-gradient(105deg, #a80712, #cf111b 56%, #ef672f); }
.potential-editorial-download strong { display: block; }
.potential-editorial-download strong { margin-bottom: 4px; font-size: 1.05rem; }
.potential-editorial-download p { max-width: 1120px; margin: 8px 0 0; color: #ffe9e3; font-size: .84rem; line-height: 1.65; }
.potential-editorial-download a { color: #fff; font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }

.potential-overlap-stage { position: relative; min-height: 780px; padding: 52px 0; }
.potential-overlap-stage::before { position: absolute; inset: 0 2% 0 18%; border-radius: 30px; background: linear-gradient(135deg, #f5a43e, #f15a37 55%, #e93138); content: ""; }
.potential-overlap-image { position: absolute; z-index: 1; top: 50%; left: 0; display: grid; width: 35%; height: auto; aspect-ratio: 2 / 3; place-items: center; overflow: hidden; border: 1px solid #d7dee6; border-radius: 24px; background: #edf2f6; box-shadow: 0 26px 55px rgb(70 22 18 / 24%); transform: translateY(-50%); }
.potential-overlap-image img { width: 100%; height: 100%; object-fit: contain; }
.potential-overlap-card { position: relative; right: -2%; z-index: 2; width: min(66%, 900px); margin-left: auto; padding: clamp(38px, 5vw, 70px); border: 1px solid rgb(255 255 255 / 70%); border-radius: 26px; background: rgb(255 255 255 / 94%); box-shadow: 0 28px 65px rgb(76 17 17 / 25%); backdrop-filter: blur(10px); }
.potential-overlap-card h2 { margin: 10px 0 24px; font-size: clamp(2.35rem, 4vw, 3.8rem); line-height: 1.02; }
.potential-overlap-card h3 { margin: 0 0 10px; }
.potential-overlap-card > p { margin: 0; }
.potential-overlap-action { margin-top: 28px; padding-top: 22px; border-top: 1px solid #ead5d1; }
.potential-overlap-action strong { display: block; margin-bottom: 7px; }
.potential-overlap-action p { margin: 0; font-size: .82rem; line-height: 1.6; }
.potential-overlap-action a { color: var(--brand); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }

.top-functions {
    overflow: hidden;
    background: transparent;
}
.function-variants { display: grid; gap: clamp(90px, 10vw, 150px); }
.function-variant { min-width: 0; }
.function-variant-label { display: flex; align-items: center; gap: 12px; margin: 0 0 20px; color: #657286; font-size: .72rem; font-weight: 850; letter-spacing: .015em; text-transform: none; }
.function-variant-label::before { width: 32px; height: 2px; background: var(--brand); content: ""; }
.function-variant h2 { letter-spacing: -.045em; }
.function-variant p { color: var(--muted); line-height: 1.65; }

.function-stage-surface { position: relative; min-height: 790px; padding: clamp(42px, 5vw, 74px); overflow: hidden; border: 1px solid #efd5ce; border-radius: 32px; background: linear-gradient(135deg, #fff9f5 0%, #fff 55%, #fff1eb 100%); box-shadow: var(--shadow-md); }
.function-stage-surface::after { position: absolute; right: -12%; bottom: -42%; width: 62%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgb(242 76 49 / 22%), rgb(242 76 49 / 0) 68%); content: ""; }
.function-stage-heading { position: relative; z-index: 2; max-width: 720px; }
.function-stage-heading h2 { max-width: 680px; margin: 10px 0 16px; font-size: clamp(2.5rem, 4.1vw, 4.2rem); line-height: .98; }
.function-stage-heading p { max-width: 620px; margin: 0; }
.function-stage-image { position: absolute; bottom: 28px; left: clamp(22px, 4vw, 70px); z-index: 1; display: block; width: min(39%, 520px); }
.function-stage-image img, .function-flow-product img, .function-board-product img { display: block; width: 100%; height: auto; object-fit: contain; }
.function-stage-card { position: absolute; right: clamp(26px, 5vw, 78px); bottom: 54px; z-index: 3; width: min(54%, 690px); padding: clamp(26px, 3.3vw, 44px); border: 1px solid rgb(255 255 255 / 75%); border-radius: 24px; background: rgb(255 255 255 / 94%); box-shadow: 0 24px 60px rgb(93 27 18 / 20%); backdrop-filter: blur(10px); }
.function-check-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 24px; margin: 0; padding: 0; list-style: none; }
.function-check-list li { position: relative; padding-left: 27px; color: #26384c; font-size: .9rem; font-weight: 720; line-height: 1.45; }
.function-check-list li::before { position: absolute; top: -.05em; left: 0; display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; color: #fff; background: var(--success); content: "✓"; font-size: .68rem; font-weight: 900; }
.function-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 28px; padding-top: 22px; border-top: 1px solid #eadbd7; }
.function-card-footer p { max-width: 220px; margin: 0; font-size: .76rem; }

.function-variant-flow { padding: clamp(34px, 5vw, 72px) 0; border-top: 1px solid #dddee2; border-bottom: 1px solid #dddee2; }
.function-flow-heading { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); align-items: end; gap: clamp(36px, 7vw, 100px); margin-bottom: 44px; }
.function-flow-heading h2 { max-width: 800px; margin: 10px 0 0; font-size: clamp(2.45rem, 4.4vw, 4.4rem); line-height: 1; }
.function-flow-heading > p { margin: 0 0 6px; }
.function-flow-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(350px, .78fr); gap: clamp(42px, 7vw, 100px); }
.function-flow-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; gap: 14px; margin: 0; padding: 0; list-style: none; }
.function-flow-list li { position: relative; display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 14px; padding: 18px; border: 1px solid #e2e5e9; border-radius: 18px; background: #fff; }
.function-flow-list li > span { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: #fff; background: var(--success); font-size: .78rem; font-weight: 900; }
.function-flow-list h3 { margin: 2px 0 6px; font-size: 1.2rem; }
.function-flow-list p { margin: 0; font-size: .9rem; }
.function-flow-product { align-self: center; overflow: hidden; border: 1px solid #eed4cd; border-radius: 28px; background: linear-gradient(145deg, #fff, #fff1ec); box-shadow: var(--shadow-md); }
.function-flow-product picture { display: block; padding: 32px 32px 12px; }
.function-flow-product > div { padding: 22px 28px 26px; color: #fff; background: linear-gradient(112deg, #ad0914, #db241c 62%, #ef6b32); }
.function-flow-product p { margin: 0 0 8px; color: #ffeae4; font-size: .82rem; }
.function-flow-product a { color: #fff; font-weight: 800; text-decoration: none; }

.function-board-shell { overflow: hidden; border-radius: 32px; color: #fff; background: linear-gradient(135deg, #9f0712 0%, #d41419 55%, #f06b31 100%); box-shadow: 0 28px 70px rgb(102 20 16 / 28%); }
.function-board-heading { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); align-items: end; gap: 60px; padding: clamp(38px, 5vw, 70px) clamp(32px, 5vw, 72px) 34px; }
.function-board-heading .section-kicker { color: #ffd3c8; }
.function-board-heading h2 { max-width: 850px; margin: 10px 0 0; color: #fff; font-size: clamp(2.4rem, 4.2vw, 4.25rem); line-height: 1; }
.function-board-heading > p { margin: 0 0 6px; color: #ffe8e1; }
.function-board-grid { display: grid; grid-template-columns: minmax(300px, .74fr) minmax(0, 1.26fr); gap: 26px; padding: 0 clamp(26px, 4vw, 58px) 38px; }
.function-board-product { display: grid; place-items: center; min-height: 420px; padding: 24px; border: 1px solid rgb(255 255 255 / 30%); border-radius: 24px; background: rgb(255 255 255 / 12%); }
.function-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.function-tiles li { position: relative; min-height: 96px; padding: 20px 20px 18px 58px; border: 1px solid rgb(255 255 255 / 72%); border-radius: 18px; color: var(--text); background: rgb(255 255 255 / 94%); box-shadow: 0 12px 28px rgb(92 15 13 / 14%); }
.function-tiles li > span { position: absolute; top: 20px; left: 18px; display: grid; width: 28px; height: 28px; place-items: center; border-radius: 9px; color: #fff; background: var(--success); font-size: .68rem; font-weight: 900; }
.function-tiles strong, .function-tiles small { display: block; }
.function-tiles strong { margin-bottom: 5px; font-size: .92rem; }
.function-tiles small { color: var(--muted); font-size: .73rem; line-height: 1.35; }
.function-board-footer { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 24px clamp(32px, 5vw, 72px); background: rgb(93 2 9 / 28%); }
.function-board-footer p { margin: 0; color: #ffe8e1; font-size: .8rem; }

.product-profile-variants { display: grid; gap: clamp(90px, 10vw, 150px); }
.product-profile-variant { min-width: 0; }
.product-profile-variant h2 { letter-spacing: -.045em; }
.product-profile-variant header > p { color: var(--muted); line-height: 1.65; }
.profile-split-surface { display: grid; grid-template-columns: minmax(320px, .72fr) minmax(0, 1.28fr); align-items: center; gap: clamp(54px, 8vw, 120px); padding: clamp(24px, 3vw, 44px) 0; }
.profile-product-visual { position: relative; display: grid; place-items: center; padding: clamp(22px, 3vw, 42px); }
.profile-product-visual::before { position: absolute; z-index: 0; width: 78%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgb(239 77 46 / 18%), rgb(239 77 46 / 0) 70%); content: ""; }
.profile-product-visual picture { position: relative; z-index: 1; }
.profile-product-visual img, .profile-overlap-product img, .profile-band-main > picture img { display: block; width: 100%; height: auto; object-fit: contain; }
.profile-content { padding: 0; }
.profile-content h2, .profile-overlap-card h2 { margin: 10px 0 12px; font-size: clamp(2.15rem, 3.5vw, 3.5rem); line-height: 1.04; }
.profile-content header > p, .profile-overlap-card header > p { margin: 0 0 26px; }
.product-facts { margin: 0; }
.product-facts > div { display: grid; grid-template-columns: minmax(150px, .38fr) minmax(0, 1fr); gap: 24px; padding: 16px 12px; border-top: 1px solid #dce1e7; }
.product-facts > div:last-child { border-bottom: 1px solid #dce1e7; }
.product-facts dt { color: #56657a; font-size: .83rem; font-weight: 800; }
.product-facts dd { margin: 0; color: var(--text); font-size: .88rem; font-weight: 720; line-height: 1.5; }
.profile-security { display: grid; grid-template-columns: auto repeat(3, 1fr); align-items: center; gap: 12px; margin-top: 28px; padding: 17px 18px; border: 1px solid #cfe0db; border-radius: 16px; background: #f2f8f5; }
.profile-security strong { color: var(--text); }
.profile-security span { position: relative; padding-left: 20px; color: #40536a; font-size: .76rem; font-weight: 750; }
.profile-security span::before { position: absolute; left: 0; color: var(--success); content: "✓"; font-weight: 900; }

.profile-overlap-stage { position: relative; min-height: 720px; padding: 58px 0; }
.profile-overlap-stage::before { position: absolute; top: 0; right: 0; bottom: 0; width: 9px; background: linear-gradient(#f5a43e, #ed292f); content: ""; }
.profile-overlap-product { position: absolute; top: 50%; left: 0; z-index: 2; display: grid; width: 42%; place-items: center; padding: 18px; transform: translateY(-50%); }
.profile-overlap-product::before { position: absolute; z-index: -1; width: 88%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgb(239 77 46 / 18%), rgb(239 77 46 / 0) 72%); content: ""; }
.profile-overlap-card { position: relative; z-index: 1; width: 67%; margin-left: auto; padding: clamp(26px, 4vw, 50px) 4% clamp(26px, 4vw, 50px) clamp(80px, 9vw, 150px); border-top: 1px solid #d8dce2; border-bottom: 1px solid #d8dce2; background: transparent; }
.product-facts-compact > div { padding-block: 13px; }
.profile-security-inline { grid-template-columns: auto repeat(3, auto); justify-content: start; background: transparent; }

.profile-band-shell { overflow: hidden; background: transparent; }
.profile-band-shell > header { padding: 0 clamp(32px, 5vw, 68px) 28px; }
.profile-band-shell > header h2 { margin: 10px 0 0; font-size: clamp(2.15rem, 3vw, 3.35rem); line-height: 1.02; white-space: nowrap; }
.profile-band-main { display: grid; grid-template-columns: minmax(270px, .58fr) 8px minmax(0, 1.42fr); align-items: center; gap: clamp(34px, 5vw, 72px); padding: 0 clamp(32px, 5vw, 68px) 42px; }
.profile-band-main > picture { position: relative; padding: 20px; }
.profile-band-main > picture::before { position: absolute; inset: 10% 5%; z-index: -1; border-radius: 50%; background: radial-gradient(circle, rgb(239 77 46 / 16%), rgb(239 77 46 / 0) 72%); content: ""; }
.profile-band-divider { align-self: stretch; width: 8px; border-radius: 999px; background: linear-gradient(180deg, #f5a43e 0%, #f15a37 52%, #d40919 100%); }
.profile-facts-column { min-width: 0; }
.profile-facts-intro { max-width: none; margin: 0 0 20px; color: var(--muted); line-height: 1.65; }
.profile-trust-band { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #d8dce2; background: transparent; }
.profile-trust-band > div { padding: 24px 30px; }
.profile-trust-band > div + div { border-left: 1px solid #d8dce2; }
.profile-trust-band strong, .profile-trust-band small { display: block; color: var(--text); }
.profile-trust-band strong::before { margin-right: 9px; color: var(--success); content: "✓"; }
.profile-trust-band small { margin: 4px 0 0 24px; color: var(--muted); }
.writer-security { padding: 8px clamp(32px, 5vw, 68px) clamp(38px, 5vw, 60px); }
.writer-security > h3 { margin: 0 0 22px; color: var(--text); font-size: clamp(1.45rem, 2.4vw, 2rem); letter-spacing: -.025em; }
.writer-security-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: hidden; border: 1px solid #e3c9c1; border-radius: 18px; background: linear-gradient(135deg, #fff8f5, #f7f8fb); }
.writer-security-grid article { display: grid; grid-template-columns: 62px minmax(0, 1fr); align-items: center; gap: 18px; min-height: 142px; padding: 25px 24px; }
.writer-security-grid article + article { border-left: 1px solid #e3c9c1; }
.writer-security-icon { display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid rgb(209 10 24 / 24%); border-radius: 18px; color: var(--brand); background: #fff; box-shadow: 0 9px 20px rgb(113 30 20 / 10%); }
.writer-security-grid article:first-child .writer-security-icon { color: var(--success); border-color: rgb(32 169 103 / 25%); }
.writer-security-grid article:nth-child(2) .writer-security-icon { color: #e15a2b; }
.writer-security-icon svg { width: 38px; height: 38px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 3px; stroke-linecap: round; stroke-linejoin: round; }
.writer-security-icon text { fill: currentColor; stroke: none; font-family: Arial, sans-serif; font-size: 8px; font-weight: 900; }
.writer-security-grid h4 { margin: 0 0 7px; color: var(--text); font-size: 1rem; line-height: 1.3; }
.writer-security-grid p { margin: 0; color: var(--muted); font-size: .86rem; line-height: 1.5; }

.comparison-cta { padding: 30px 0; color: #fff; background: linear-gradient(112deg, #a60612 0%, #d10a16 56%, #f0642e 100%); }
.comparison-cta-inner { display: flex; align-items: center; justify-content: center; gap: clamp(38px, 5vw, 72px); }
.comparison-cta-inner > div { min-width: 0; }
.comparison-cta-inner > .button { flex: 0 0 auto; }
.comparison-cta span { color: #ffd5c8; font-size: .72rem; font-weight: 800; letter-spacing: .015em; text-transform: none; }
.comparison-cta h2 { max-width: none; margin: 0; color: #fff; font-size: clamp(1.55rem, 2.15vw, 2.1rem); line-height: 1.12; white-space: nowrap; }

@media (max-width: 1180px) {
    .comparison-cta h2 { white-space: normal; }
}

.customer-logos { background: transparent; }
.logo-wall { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); overflow: hidden; border: 1px solid #f0d8d3; border-radius: 22px; background: #fff; box-shadow: var(--shadow-md); }
.logo-wall img { width: 100%; height: 118px; padding: 24px; border-right: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; object-fit: contain; filter: saturate(.94); }

.testimonials-section { background: transparent; }
.testimonials-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.testimonial-card { padding: 0; }
.testimonial-card blockquote { position: relative; margin: 0; padding: clamp(26px, 3vw, 42px); border: 1px solid var(--border); border-radius: 22px; color: #314158; background: #fff; box-shadow: var(--shadow-sm); font-size: .98rem; font-style: italic; line-height: 1.75; }
.testimonial-card blockquote::before { display: block; margin-bottom: 8px; color: #e9a19e; content: "“"; font: 700 3.3rem/1 Georgia, serif; }
.testimonial-stars { display: block; margin: -30px 0 14px 42px; color: var(--brand, #d10a16); font-size: 1rem; font-style: normal; letter-spacing: .12em; }
.testimonial-card blockquote::after { position: absolute; bottom: -14px; left: 52px; width: 28px; height: 28px; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); background: #fff; box-shadow: 8px 8px 16px rgb(105 25 11 / 5%); transform: rotate(45deg); transition: border-color .2s ease; content: ""; }
.testimonial-bubble-link { display: block; color: inherit; text-decoration: none; }
.testimonial-bubble-link blockquote { transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.testimonial-bubble-link:hover blockquote { border-color: rgb(209 10 22 / 28%); box-shadow: var(--shadow-md); transform: translateY(-2px); }
.testimonial-bubble-link:hover blockquote::after,
.testimonial-bubble-link:focus-visible blockquote::after { border-color: rgb(209 10 22 / 28%); }
.testimonial-bubble-link:focus-visible { border-radius: 22px; outline: 3px solid rgb(255 116 51 / 42%); outline-offset: 4px; }
.testimonial-card footer { display: flex; align-items: center; gap: 16px; margin-top: 28px; }
.testimonial-card footer img { width: 72px; height: 52px; object-fit: contain; }
.testimonial-card footer span, .testimonial-card footer strong, .testimonial-card footer small { display: block; }
.testimonial-card footer strong { color: var(--text); font-size: .86rem; }
.testimonial-card footer small { margin-top: 3px; color: var(--brand); font-size: .72rem; }
.testimonial-wide { grid-column: 1 / -1; width: min(100%, 820px); margin-inline: auto; }

.edition-pricing-grid { align-items: stretch; max-width: none; }
.pricing-card { text-align: center; }
.edition-card-head { min-height: 126px; text-align: left; }
.edition-card-title { display: grid; grid-template-columns: 68px minmax(0, 1fr); align-items: center; gap: 16px; }
.edition-card-writer-icon { width: 68px; height: 54px; object-fit: contain; filter: drop-shadow(0 9px 13px rgb(183 34 18 / 15%)); }
.pricing-card .edition-card-head h3 { margin: 0; color: var(--brand); font-size: 2rem; }
.pricing-card .edition-summary { min-height: 0; margin: 8px 0 0 84px; color: #33445a; font-size: .9rem; font-weight: 650; line-height: 1.48; }
.edition-price { display: flex; align-items: baseline; justify-content: center; gap: 7px; margin: 14px 0 2px; color: var(--text); }
.edition-price strong { font-size: 2.35rem; }
.edition-price span { font-weight: 700; }
.pricing-card > small { display: block; min-height: 34px; color: var(--muted); font-size: .68rem; }
.edition-actions { display: flex; justify-content: center; gap: 10px; margin: 22px 0 26px; }
.edition-actions .button { min-height: 42px; padding: 10px 17px; font-size: .76rem; }
.pricing-card ul { text-align: left; }
.pricing-card li.edition-feature-added::before { content: "+"; font-size: 1.05rem; }
.pricing-card li.edition-feature-limited { margin-top: 22px; color: #4f6075; font-weight: 700; }
.pricing-card li.edition-feature-limited::before { color: #4f6075; content: "−"; }
.pricing-card li.edition-feature-license { padding-bottom: 12px; border-bottom: 1px solid var(--border); color: var(--text); }

.writer-reference-section { padding: clamp(58px, 6vw, 92px) 0; }
.writer-reference-section > .shell { width: min(100% - 48px, 1440px); }
.writer-expertise-section { padding-bottom: clamp(42px, 5vw, 72px); }
.writer-expertise {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    align-items: start;
    gap: clamp(46px, 8vw, 120px);
    padding-inline: clamp(6px, 2vw, 20px);
}
.writer-expertise-intro { padding-right: clamp(28px, 5vw, 70px); }
.writer-expertise-intro h2 {
    margin: 20px 0;
    color: var(--text);
    font-size: clamp(32px, 3vw, 40px);
    font-weight: 600;
    line-height: .96;
    letter-spacing: -.065em;
}
.writer-expertise-intro p { max-width: 720px; margin: 0; color: #405474; font-size: 1rem; line-height: 1.65; }
.writer-expertise-principles { margin: 0; padding: 0; list-style: none; }
.writer-expertise-principles li {
    position: relative;
    display: flex;
    height: 112px;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    padding: 18px 0;
}
.writer-expertise-principles li::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--orange-dark) 0%, var(--brand) 54%, var(--brand-dark) 100%);
    content: "";
}
.writer-expertise-principles strong { color: var(--text); font-size: 1.15rem; line-height: 24px; }
.writer-expertise-principles small { color: #52637a; font-size: 14px; line-height: 20px; }
.writer-expertise-principles a { color: var(--brand-dark); font-weight: 780; text-decoration: underline; text-underline-offset: 2px; }

.writer-reference-tour-section { padding-top: clamp(38px, 4vw, 60px); }
.wa-tour {
    min-height: 802px;
    padding: 22px;
    border: 1px solid rgb(255 255 255 / 70%);
    border-radius: 28px;
    background: rgb(255 255 255 / 94%);
    box-shadow: 0 28px 65px rgb(76 17 17 / 25%);
    backdrop-filter: blur(10px);
}
.wa-tour-head { margin-bottom: 20px; text-align: center; }
.wa-tour-head h2 { margin-bottom: 8px; font-size: clamp(26px, 4vw, 38px); }
.wa-tour-head p { max-width: 1040px; margin: 0 auto; color: #405474; text-wrap: balance; }
.wa-tour-layout { display: grid; grid-template-columns: 330px minmax(0, 1fr); gap: 22px; }
.wa-tour-steps { display: grid; align-content: start; gap: 10px; }
.wa-tour-step {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 16px 14px;
    border: 1px solid #dbe7f0;
    border-radius: 18px;
    color: var(--text);
    background: rgb(255 255 255 / 86%);
    box-shadow: 0 10px 24px rgb(15 23 42 / 4%);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: .2s ease;
}
.wa-tour-step:hover, .wa-tour-step.is-active { border-color: rgb(209 10 22 / 62%); background: #fff; box-shadow: 0 18px 36px rgb(76 17 17 / 12%); }
.wa-tour-number { display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 12px; color: var(--brand-dark); background: var(--brand-soft); font-size: 13px; font-weight: 900; line-height: 1; }
.wa-tour-step.is-active .wa-tour-number { color: #fff; background: var(--brand); }
.wa-tour-step strong { display: block; margin-bottom: 4px; font-size: .9rem; line-height: 1.25; }
.wa-tour-step span span { display: block; color: #64748b; font-size: .82rem; line-height: 1.45; }
.wa-tour-screen { display: grid; min-width: 0; min-height: 392px; max-height: 540px; place-items: center; padding: 14px; border: 1px solid #dbe5ee; border-radius: 22px; background: #f9e5dc; }
.tour-panel { display: none; width: 100%; padding: 0; border: 0; color: inherit; background: transparent; text-align: center; cursor: zoom-in; }
.tour-panel.is-active { display: block; }
.tour-panel picture, .tour-panel img { display: block; width: 100%; }
.tour-panel img { max-height: 620px; object-fit: contain; border-radius: 16px; }
.tour-zoom-hint { display: inline-flex; margin-top: 35px; padding: 8px 12px; border: 1px solid #dbe5ee; border-radius: 999px; color: #64748b; background: #fff; box-shadow: var(--shadow-sm); font-size: 12px; font-weight: 800; }
.wa-tour-progress { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 16px; }
.wa-tour-dot { width: 9px; height: 9px; padding: 0; border: 0; border-radius: 999px; background: #cbd5e1; cursor: pointer; }
.wa-tour-dot.is-active { width: 28px; background: var(--brand); }

.product-tour-section { background: transparent; }
.product-tour { display: grid; grid-template-columns: 380px minmax(0, 1fr); gap: 28px; padding: 24px; border: 1px solid var(--border); border-radius: 26px; background: #f8fafc; box-shadow: var(--shadow-md); }
.product-tour-steps { display: grid; align-content: start; gap: 9px; }
.product-tour-step { display: grid; grid-template-columns: 40px 1fr; align-items: start; gap: 13px; width: 100%; padding: 15px; border: 1px solid transparent; border-radius: 15px; color: var(--text); background: transparent; text-align: left; cursor: pointer; transition: .2s ease; }
.product-tour-step:hover, .product-tour-step.is-active { border-color: #efc9c7; background: #fff; box-shadow: var(--shadow-sm); }
.product-tour-step > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--brand); background: var(--brand-soft); font-weight: 850; }
.product-tour-step.is-active > span { color: #fff; background: var(--brand); }
.product-tour-step strong, .product-tour-step small { display: block; }
.product-tour-step strong { margin-bottom: 4px; font-size: .86rem; }
.product-tour-step small { color: var(--muted); font-size: .72rem; line-height: 1.45; }
.product-tour-screen { position: relative; min-width: 0; overflow: hidden; border: 1px solid var(--border); border-radius: 18px; background: #fff; }
.product-tour-panel { display: none; width: 100%; height: 100%; padding: 0 0 42px; border: 0; color: var(--brand); background: #fff; cursor: zoom-in; }
.product-tour-panel.is-active { display: block; }
.product-tour-panel picture, .product-tour-panel img { display: block; width: 100%; height: auto; }
.product-tour-panel > span { position: absolute; right: 20px; bottom: 17px; font-size: .72rem; font-weight: 750; }
.product-tour-dots { position: absolute; bottom: 18px; left: 20px; display: flex; gap: 7px; }
.product-tour-dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: #d3dae3; cursor: pointer; }
.product-tour-dot.is-active { width: 22px; border-radius: 9px; background: var(--brand); }
.tour-dialog { width: min(94vw, 1500px); max-width: none; padding: 52px 18px 18px; border: 0; border-radius: 20px; background: #fff; box-shadow: 0 24px 80px rgb(0 0 0 / 35%); }
.tour-dialog::backdrop { background: rgb(12 18 27 / 78%); backdrop-filter: blur(5px); }
.tour-dialog img { display: block; width: 100%; height: auto; max-height: 84vh; object-fit: contain; }
.tour-dialog-close { position: absolute; top: 10px; right: 14px; display: grid; width: 36px; height: 36px; place-items: center; border: 0; border-radius: 50%; color: var(--text); background: #f0f3f6; font-size: 1.5rem; cursor: pointer; }

.cta-actions { min-width: 245px; }

@media (max-width: 1100px) {
    .web-successor-grid { grid-template-columns: 1fr; }
    .writer-expertise { grid-template-columns: 1fr; gap: 34px; }
    .writer-expertise-intro { padding-right: 0; }
    .wa-tour { min-height: 0; }
    .wa-tour-layout { grid-template-columns: 1fr; }
    .wa-tour-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .wa-tour-screen { max-height: none; }
    .function-stage-surface { display: grid; min-height: 0; }
    .function-stage-image { position: relative; bottom: auto; left: auto; width: min(62%, 560px); margin-top: 30px; }
    .function-stage-card { position: relative; right: auto; bottom: auto; width: min(78%, 680px); margin: -90px 0 0 auto; }
    .function-flow-heading, .function-flow-layout, .function-board-heading, .function-board-grid { grid-template-columns: 1fr; }
    .function-flow-heading { gap: 18px; }
    .function-flow-product { width: min(100%, 680px); margin-inline: auto; }
    .function-board-heading { gap: 18px; }
    .function-board-product { min-height: 0; }
    .function-board-product img { max-height: 390px; }
    .profile-split-surface { grid-template-columns: 1fr; }
    .profile-band-main { grid-template-columns: minmax(250px, .6fr) 7px minmax(0, 1.4fr); }
    .profile-product-visual img, .profile-band-main > picture img { max-height: 430px; }
    .profile-overlap-stage { display: grid; min-height: 0; padding: 28px; }
    .profile-overlap-stage::before { top: 0; right: 0; bottom: 0; left: auto; }
    .profile-overlap-product { position: relative; top: auto; width: 64%; transform: none; }
    .profile-overlap-card { right: auto; width: 88%; margin-top: -90px; padding-top: 125px; padding-left: clamp(28px, 5vw, 58px); }
    .writer-security-grid { grid-template-columns: 1fr; }
    .writer-security-grid article + article { border-top: 1px solid #e3c9c1; border-left: 0; }
    .potential-split-surface, .potential-editorial-head { grid-template-columns: 1fr; }
    .potential-variant-image { min-height: 360px; }
    .potential-overlap-stage { display: grid; min-height: 0; padding: 28px; }
    .potential-overlap-stage::before { inset: 0; }
    .potential-overlap-image { position: relative; top: auto; width: 72%; height: auto; transform: none; }
    .potential-overlap-card { right: auto; width: 82%; margin-top: -110px; margin-right: 0; padding-top: 145px; }
    .logo-wall { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .product-tour { grid-template-columns: 1fr; }
    .product-tour-steps { grid-template-columns: repeat(5, minmax(0, 1fr)); }
    .product-tour-step { grid-template-columns: 1fr; }
    .product-tour-step small { display: none; }
}

@media (max-width: 760px) {
    .web-successor-grid { grid-template-columns: minmax(0, 1fr); }
    .potential-download { grid-template-columns: 38px 1fr; }
    .potential-download a { grid-column: 2; white-space: normal; }
    .potential-editorial-download, .potential-overlap-action { align-items: flex-start; flex-direction: column; }
    .potential-overlap-image, .potential-overlap-card { width: 100%; }
    .function-stage-surface { padding: 28px 22px; border-radius: 24px; }
    .function-stage-image { width: 82%; }
    .function-stage-card { width: 100%; margin-top: -48px; padding: 24px; }
    .function-check-list, .function-tiles { grid-template-columns: 1fr; }
    .function-card-footer, .function-board-footer { align-items: flex-start; flex-direction: column; }
    .function-flow-list li { gap: 16px; }
    .function-board-heading { padding: 34px 24px 28px; }
    .function-board-grid { padding: 0 18px 26px; }
    .function-board-product { padding: 12px; }
    .function-board-footer { padding: 24px; }
    .profile-security { grid-template-columns: 1fr; }
    .profile-security-inline { grid-template-columns: 1fr 1fr; }
    .profile-overlap-product, .profile-overlap-card { width: 100%; }
    .profile-band-shell > header, .profile-band-main { padding-inline: 24px; }
    .profile-band-main { grid-template-columns: 1fr; }
    .profile-band-divider { width: 100%; height: 7px; }
    .profile-band-shell > header h2 { white-space: normal; }
    .writer-security { padding-inline: 24px; }
    .profile-trust-band { grid-template-columns: 1fr; }
    .profile-trust-band > div + div { border-top: 1px solid #d8dce2; border-left: 0; }
    .comparison-cta-inner { align-items: flex-start; flex-direction: column; }
    .logo-wall { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .logo-wall img { height: 100px; padding: 20px; }
    .testimonials-grid { grid-template-columns: 1fr; }
    .testimonial-wide { grid-column: auto; }
    .product-tour { padding: 12px; }
    .writer-reference-section { padding-block: 48px; }
    .writer-expertise-intro h2 { font-size: clamp(2rem, 10vw, 3rem); }
    .writer-expertise-principles li { height: auto; min-height: 112px; }
    .wa-tour { padding: 14px; border-radius: 22px; }
    .wa-tour-steps { grid-template-columns: 1fr; }
    .wa-tour-step { padding: 14px; }
    .wa-tour-screen { min-height: 0; padding: 8px; }
    .tour-zoom-hint { margin-top: 18px; }
    .product-tour-steps { display: flex; overflow-x: auto; padding-bottom: 6px; scroll-snap-type: x mandatory; }
    .product-tour-step { min-width: 190px; grid-template-columns: 36px 1fr; scroll-snap-align: start; }
    .product-tour-step small { display: block; }
    .edition-card-head { min-height: 0; }
}

@media (max-width: 520px) {
    .web-successor { padding-block: 48px; }
    .web-successor-heading h2 { font-size: 2rem; }
    .potential-variants { gap: 76px; }
    .potential-split-surface { border-radius: 20px; }
    .potential-variant-image { min-height: 260px; }
    .potential-variant-copy, .potential-variant-editorial { padding: 28px 22px; }
    .potential-variant-copy h2, .potential-editorial-head h2, .potential-overlap-card h2 { font-size: 2.25rem; }
    .potential-editorial-image { height: 250px; }
    .potential-editorial-download { padding: 22px; }
    .potential-overlap-stage { padding: 16px; }
    .potential-overlap-image { width: 88%; height: auto; }
    .potential-overlap-card { margin-top: -60px; padding: 92px 24px 28px; }
    .function-variants { gap: 80px; }
    .function-stage-heading h2, .function-flow-heading h2, .function-board-heading h2 { font-size: 2.25rem; }
    .function-stage-image { width: 100%; }
    .function-stage-card { margin-top: -26px; }
    .function-card-footer .button, .function-board-footer .button { width: 100%; }
    .function-flow-product picture { padding: 20px 18px 8px; }
    .function-flow-list li { grid-template-columns: 44px minmax(0, 1fr); }
    .function-flow-list li > span { width: 44px; height: 44px; }
    .function-flow-list::before { left: 21px; }
    .product-profile-variants { gap: 80px; }
    .product-facts > div { grid-template-columns: 1fr; gap: 5px; padding-inline: 0; }
    .profile-content, .profile-overlap-card { padding: 30px 22px; }
    .profile-overlap-card { margin-top: -45px; padding-top: 75px; }
    .edition-actions { flex-direction: column; }
    .edition-actions .button { width: 100%; }
    .pricing-card .edition-summary { margin-left: 0; }
    .product-tour-panel { padding-bottom: 48px; }
    .product-tour-panel > span { right: 12px; bottom: 18px; }
    .product-tour-dots { left: 12px; }
}
.back-to-top {
    position: fixed;
    right: 28px;
    bottom: 28px;
    z-index: 999;
    display: inline-flex;
    width: 52px;
    height: 52px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgb(209 10 22 / 18%);
    border-radius: 999px;
    background: rgb(255 255 255 / 92%);
    color: var(--brand, #d10a16);
    box-shadow:
        0 18px 34px rgb(105 25 11 / 16%),
        0 0 0 10px rgb(255 116 51 / 9%);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    cursor: pointer;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition:
        opacity 0.2s ease,
        visibility 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease,
        color 0.2s ease;
}

.back-to-top svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    transform: translateY(-1px);
}

.back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.back-to-top:hover {
    color: #fff;
    background: linear-gradient(135deg, var(--brand, #d10a16), var(--orange, #ff7433));
    box-shadow:
        0 22px 44px rgb(105 25 11 / 23%),
        0 0 0 10px rgb(255 116 51 / 14%);
    transform: translateY(-2px);
}

.back-to-top:focus-visible {
    outline: 3px solid rgb(255 116 51 / 42%);
    outline-offset: 4px;
}

@media (max-width: 760px) {
    .back-to-top {
        right: 18px;
        bottom: 18px;
        width: 46px;
        height: 46px;
    }

    .back-to-top svg {
        width: 18px;
        height: 18px;
    }
}

.writer-demo-section {
    position: relative;
    padding: clamp(34px, 5vw, 72px) 0;
}

.writer-demo {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: clamp(32px, 6vw, 82px);
    align-items: center;
    padding: clamp(34px, 5vw, 64px);
    border: 1px solid rgb(209 10 22 / 9%);
    border-radius: 28px;
    background:
        radial-gradient(circle at 92% 12%, rgb(209 10 22 / 14%), transparent 36%),
        linear-gradient(135deg, rgb(255 248 243 / 96%) 0%, rgb(255 239 232 / 94%) 100%);
    box-shadow: 0 20px 46px rgb(105 25 11 / 9%);
}

.writer-demo-kicker {
    display: block;
    color: var(--brand, #d10a16);
    font-weight: 800;
}

.writer-demo h2 {
    max-width: 620px;
    margin: 9px 0 12px;
    font-size: clamp(1.75rem, 3vw, 2.55rem);
    line-height: 1.08;
}

.writer-demo-copy p {
    max-width: 650px;
    margin: 0;
    color: var(--text-soft, #344764);
    line-height: 1.7;
}

.writer-demo-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.writer-demo-steps {
    position: relative;
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.writer-demo-steps::before {
    position: absolute;
    top: 38px;
    bottom: 38px;
    left: 20px;
    width: 3px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--orange, #ff7433), var(--brand, #d10a16));
    content: "";
}

.writer-demo-steps li {
    position: relative;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    min-height: 94px;
    padding: 12px 0;
}

.writer-demo-steps li > span {
    position: relative;
    z-index: 1;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, var(--orange, #ff7433), var(--brand, #d10a16));
    box-shadow: 0 0 0 7px #fff3ed;
    font-weight: 900;
}

.writer-demo-steps li > div {
    padding: 16px 20px;
    border: 1px solid rgb(170 7 16 / 13%);
    border-radius: 16px;
    background: rgb(255 255 255 / 86%);
    box-shadow: 0 8px 22px rgb(105 25 11 / 6%);
}

.writer-demo-steps strong,
.writer-demo-steps small {
    display: block;
}

.writer-demo-steps small {
    margin-top: 3px;
    color: var(--text-soft, #52637a);
    line-height: 1.45;
}

.reference-concepts {
    padding-top: clamp(56px, 7vw, 104px);
}

.reference-concept {
    position: relative;
}

.reference-concept + .reference-concept {
    margin-top: clamp(100px, 12vw, 180px);
}

.reference-concept-label {
    display: block;
    margin-bottom: 24px;
    color: var(--brand, #d10a16);
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

.reference-concept-cloud .section-heading {
    margin-bottom: clamp(40px, 5vw, 70px);
}

.reference-logo-cloud {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: clamp(30px, 4vw, 62px) clamp(24px, 4vw, 58px);
    align-items: center;
}

.reference-logo-cloud img,
.reference-logo-editorial img,
.reference-logo-band img,
.reference-logo-divider img,
.reference-logo-lines img,
.reference-logo-stage img {
    display: block;
    width: 100%;
    object-fit: contain;
    filter: saturate(0.9);
    opacity: 0.9;
    transition: filter 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.reference-logo-cloud img {
    height: 72px;
}

.reference-logo-cloud img:hover,
.reference-logo-editorial img:hover,
.reference-logo-band img:hover,
.reference-logo-divider img:hover,
.reference-logo-lines img:hover,
.reference-logo-stage img:hover {
    filter: saturate(1.08);
    opacity: 1;
    transform: translateY(-2px);
}

.reference-concept-editorial {
    display: grid;
    grid-template-columns: minmax(320px, 0.82fr) minmax(0, 1.18fr);
    gap: clamp(54px, 8vw, 120px);
    align-items: start;
}

.reference-editorial-copy {
    position: sticky;
    top: 130px;
    padding-left: 28px;
    border-left: 4px solid var(--brand, #d10a16);
}

.reference-editorial-copy .reference-concept-label {
    margin-bottom: 42px;
}

.reference-editorial-copy h2 {
    margin: 12px 0 20px;
    font-size: clamp(2.1rem, 3.3vw, 3.35rem);
    line-height: 0.98;
}

.reference-editorial-copy p {
    max-width: 470px;
    color: var(--text-soft, #344764);
    line-height: 1.7;
}

.reference-count {
    display: block;
    margin-top: 30px;
    color: var(--brand-dark, #aa0710);
}

.reference-logo-editorial {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.reference-logo-editorial img {
    height: 116px;
    padding: 22px 24px;
    border-bottom: 1px solid rgb(170 7 16 / 13%);
}

.reference-logo-editorial img:not(:nth-child(3n + 1)) {
    border-left: 1px solid rgb(170 7 16 / 13%);
}

.reference-concept-band {
    isolation: isolate;
    padding: clamp(70px, 8vw, 112px) 0;
}

.reference-concept-band::before {
    position: absolute;
    z-index: -1;
    inset-block: 0;
    left: 50%;
    width: 100vw;
    background:
        radial-gradient(circle at 12% 15%, rgb(255 176 74 / 22%), transparent 32%),
        radial-gradient(circle at 88% 80%, rgb(209 10 22 / 13%), transparent 35%),
        linear-gradient(100deg, rgb(255 245 236 / 84%), rgb(255 237 228 / 68%));
    transform: translateX(-50%);
    content: "";
}

.reference-band-heading {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "kicker text"
        "heading text";
    gap: 10px clamp(40px, 8vw, 120px);
    align-items: end;
    margin-bottom: clamp(44px, 6vw, 72px);
}

.reference-band-heading .section-kicker {
    grid-area: kicker;
}

.reference-band-heading h2 {
    grid-area: heading;
    margin: 0;
    font-size: clamp(2.5rem, 5vw, 5rem);
    line-height: 0.98;
}

.reference-band-heading p {
    grid-area: text;
    max-width: 350px;
    margin: 0 0 6px;
    color: var(--text-soft, #344764);
    font-size: 1.1rem;
}

.reference-logo-band {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    gap: clamp(28px, 3vw, 46px) clamp(22px, 3vw, 42px);
    align-items: center;
}

.reference-logo-band img {
    height: 62px;
}

.reference-concept-divider {
    display: grid;
    grid-template-columns: minmax(300px, 0.78fr) minmax(0, 1.22fr);
    gap: clamp(36px, 5vw, 78px);
    align-items: stretch;
}

.reference-divider-copy {
    align-self: center;
}

.reference-divider-copy h2 {
    max-width: 570px;
    margin: 12px 0 20px;
    font-size: clamp(2.35rem, 4vw, 4rem);
    line-height: 0.98;
}

.reference-divider-copy p {
    max-width: 520px;
    color: var(--text-soft, #344764);
    line-height: 1.7;
}

.reference-logo-divider {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    align-items: center;
    background:
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 33.333% 0 / 2px 100% no-repeat,
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 66.666% 0 / 2px 100% no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 16.666% / 100% 2px no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 33.333% / 100% 2px no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 50% / 100% 2px no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 66.666% / 100% 2px no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 83.333% / 100% 2px no-repeat;
}

.reference-logo-divider img {
    height: 106px;
    padding: 20px clamp(18px, 2.4vw, 36px);
}

.reference-lines-heading {
    margin-bottom: clamp(42px, 5vw, 68px);
}

.reference-lines-heading .section-kicker {
    display: block;
    margin-bottom: 12px;
}

.reference-lines-heading h2 {
    max-width: none;
    margin: 0 0 16px;
    font-size: clamp(2.35rem, 3.4vw, 3.55rem);
    line-height: 0.98;
    white-space: nowrap;
}

.reference-lines-heading p {
    max-width: none;
    margin: 0;
    color: var(--text-soft, #344764);
    line-height: 1.7;
    white-space: nowrap;
}

.reference-logo-lines {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    align-items: center;
    background:
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 16.666% 0 / 2px 100% no-repeat,
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 33.333% 0 / 2px 100% no-repeat,
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 50% 0 / 2px 100% no-repeat,
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 66.666% 0 / 2px 100% no-repeat,
        linear-gradient(180deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 83.333% 0 / 2px 100% no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 33.333% / 100% 2px no-repeat,
        linear-gradient(90deg, transparent, #f5a43e 10%, #ef5537 52%, #d40919 90%, transparent) 0 66.666% / 100% 2px no-repeat;
}

.reference-logo-lines img {
    height: 126px;
    padding: 18px clamp(12px, 1.6vw, 24px);
}

.reference-concept-stage {
    text-align: center;
}

.reference-stage-heading {
    max-width: 860px;
    margin: 0 auto clamp(50px, 7vw, 86px);
}

.reference-stage-heading h2 {
    margin: 12px 0 18px;
    font-size: clamp(2.55rem, 5vw, 5rem);
    line-height: 0.98;
}

.reference-stage-heading p {
    color: var(--text-soft, #344764);
    font-size: 1.08rem;
}

.reference-logo-stage {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: clamp(26px, 3.5vw, 54px) clamp(24px, 4vw, 66px);
    align-items: center;
    padding: 20px 4vw;
    background: radial-gradient(ellipse at center, rgb(255 224 210 / 54%), transparent 68%);
}

.reference-logo-stage img {
    height: 72px;
}

.reference-logo-stage img:nth-child(n + 7):nth-child(-n + 12) {
    transform: translateX(clamp(12px, 2vw, 34px));
}

.reference-logo-stage img:nth-child(n + 7):nth-child(-n + 12):hover {
    transform: translateX(clamp(12px, 2vw, 34px)) translateY(-2px);
}

@media (max-width: 860px) {
    .writer-demo {
        grid-template-columns: 1fr;
    }

    .reference-logo-cloud {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .reference-concept-editorial {
        grid-template-columns: 1fr;
    }

    .reference-concept-divider {
        grid-template-columns: 1fr;
    }

    .reference-editorial-copy {
        position: static;
    }

    .reference-logo-band {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .reference-lines-heading {
        margin-bottom: 42px;
    }

    .reference-lines-heading h2,
    .reference-lines-heading p {
        white-space: normal;
    }

    .reference-logo-lines,
    .reference-logo-stage {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .reference-logo-lines {
        background: none;
    }

    .reference-logo-stage img:nth-child(n + 7):nth-child(-n + 12),
    .reference-logo-stage img:nth-child(n + 7):nth-child(-n + 12):hover {
        transform: none;
    }

    .reference-band-heading {
        grid-template-columns: 1fr;
        grid-template-areas: "kicker" "heading" "text";
    }
}

@media (max-width: 560px) {
    .writer-demo {
        padding: 28px 20px;
        border-radius: 22px;
    }

    .reference-logo-cloud,
    .reference-logo-editorial,
    .reference-logo-band,
    .reference-logo-divider,
    .reference-logo-lines,
    .reference-logo-stage {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .reference-logo-editorial img:not(:nth-child(3n + 1)) {
        border-left: 0;
    }

    .reference-logo-editorial img:nth-child(even) {
        border-left: 1px solid rgb(170 7 16 / 13%);
    }

    .reference-logo-divider img:not(:nth-child(3n + 1)) {
        border-left: 0;
    }

    .reference-logo-divider img:nth-child(even) {
        border-left: 1px solid rgb(170 7 16 / 14%);
    }

    .reference-logo-divider img:not(:nth-last-child(-n + 3)) {
        border-bottom: 0;
    }

    .reference-logo-divider img:not(:nth-last-child(-n + 2)) {
        border-bottom: 1px solid rgb(170 7 16 / 14%);
    }

    .reference-logo-divider {
        background: none;
    }
}

/* Drei Varianten für den helleren Abschluss-CTA */
.final-cta {
    padding-top: clamp(42px, 6vw, 84px);
}

.final-cta-variants {
    display: grid;
    gap: clamp(52px, 7vw, 88px);
}

.final-cta-option {
    position: relative;
}

.variant-caption {
    position: absolute;
    top: -28px;
    left: 4px;
    color: var(--brand-dark);
    font-size: .75rem;
    font-weight: 800;
}

.final-cta-option h2 {
    margin: 10px 0 16px;
    color: var(--ink);
    font-size: clamp(2.15rem, 4vw, 4rem);
    line-height: 1.02;
    letter-spacing: -.05em;
}

.final-cta-option p {
    color: var(--muted);
    line-height: 1.65;
}

.final-cta-demo-button {
    border-color: var(--brand-dark);
    background: linear-gradient(135deg, #e34222, var(--brand));
    color: #fff;
    box-shadow: 0 12px 24px rgb(170 7 16 / 18%);
}

.final-cta-demo-button:hover {
    border-color: #89040b;
    background: linear-gradient(135deg, #d7351c, var(--brand-dark));
    color: #fff;
}

.final-cta-recommend {
    color: var(--brand-dark);
    font-size: .88rem;
    font-weight: 750;
    text-decoration: none;
}

.final-cta-recommend:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.final-cta-option-a {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(390px, .95fr);
    gap: clamp(38px, 6vw, 86px);
    align-items: center;
    overflow: hidden;
    padding: clamp(38px, 5vw, 66px);
    border: 1px solid rgb(193 59 32 / 18%);
    border-radius: 30px;
    background:
        radial-gradient(circle at 90% 12%, rgb(255 116 51 / 14%), transparent 38%),
        rgb(255 255 255 / 72%);
    box-shadow: 0 22px 54px rgb(91 34 20 / 10%);
}

.final-cta-a-copy p {
    max-width: 670px;
}

.final-cta-action-panel {
    display: grid;
    gap: 16px;
    padding: 22px;
    border: 1px solid rgb(193 59 32 / 15%);
    border-radius: 22px;
    background: rgb(255 255 255 / 72%);
}

.final-cta-action-panel > .button {
    justify-content: center;
}

.final-cta-contact-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.final-cta-contact-button {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 14px;
    border: 1px solid rgb(170 7 16 / 16%);
    border-radius: 14px;
    background: #fff;
    color: var(--ink);
    text-decoration: none;
    transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.final-cta-contact-button:hover {
    transform: translateY(-2px);
    border-color: rgb(170 7 16 / 42%);
    background: #fff8f5;
}

.final-cta-contact-button > span:first-child {
    color: var(--brand);
    font-size: 1.25rem;
}

.final-cta-contact-button small,
.final-cta-contact-button strong {
    display: block;
}

.final-cta-contact-button small {
    color: var(--muted);
    font-size: .68rem;
}

.final-cta-contact-button strong {
    margin-top: 2px;
    font-size: .82rem;
}

.final-cta-option-b {
    display: grid;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1.2fr);
    grid-template-areas: "head actions" "head recommend";
    gap: 16px clamp(42px, 6vw, 90px);
    align-items: center;
    padding: clamp(34px, 5vw, 58px) 0;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-image: linear-gradient(90deg, var(--orange), #e94a21 55%, var(--brand)) 1;
}

.final-cta-b-head {
    grid-area: head;
}

.final-cta-b-head h2 {
    max-width: 620px;
    font-size: clamp(2.1rem, 3.5vw, 3.5rem);
}

.final-cta-b-actions {
    grid-area: actions;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.final-cta-option-b > .final-cta-recommend {
    grid-area: recommend;
}

.final-cta-compact-button {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 48px;
    padding: 10px 18px;
    border: 1px solid rgb(170 7 16 / 22%);
    border-radius: 12px;
    background: rgb(255 255 255 / 68%);
    color: var(--ink);
    font-weight: 750;
    text-decoration: none;
}

.final-cta-compact-button:hover {
    border-color: var(--brand);
    background: #fff7f3;
}

.final-cta-compact-button span {
    color: var(--brand);
}

.final-cta-option-c {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, .72fr);
    gap: clamp(46px, 8vw, 120px);
    align-items: center;
    padding: clamp(30px, 4vw, 52px) clamp(24px, 4vw, 58px);
    border-left: 6px solid transparent;
    border-image: linear-gradient(180deg, var(--orange), #e94a21 55%, var(--brand)) 1;
    background: linear-gradient(90deg, rgb(255 255 255 / 58%), transparent 76%);
}

.final-cta-c-copy h2 {
    max-width: 760px;
}

.final-cta-c-copy p {
    max-width: 720px;
}

.final-cta-c-copy .final-cta-recommend {
    display: inline-block;
    margin-top: 18px;
}

.final-cta-c-actions {
    display: grid;
    gap: 12px;
}

.final-cta-c-actions > .button {
    justify-content: center;
    margin-bottom: 4px;
}

.final-cta-c-contact {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    padding: 15px 18px;
    border: 1px solid rgb(170 7 16 / 16%);
    border-radius: 16px;
    background: rgb(255 255 255 / 78%);
    color: var(--ink);
    text-decoration: none;
    box-shadow: 0 9px 24px rgb(87 39 27 / 6%);
}

.final-cta-c-contact:hover {
    border-color: rgb(170 7 16 / 42%);
    background: #fff9f6;
}

.final-cta-c-icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: #fff0e9;
    color: var(--brand);
    font-size: 1.2rem;
}

.final-cta-c-contact small,
.final-cta-c-contact strong {
    display: block;
}

.final-cta-c-contact small {
    color: var(--muted);
    font-size: .72rem;
}

.final-cta-c-contact strong {
    margin-top: 2px;
}

@media (max-width: 980px) {
    .final-cta-option-a,
    .final-cta-option-b,
    .final-cta-option-c {
        grid-template-columns: 1fr;
    }

    .final-cta-option-b {
        grid-template-areas: "head" "actions" "recommend";
    }
}

@media (max-width: 620px) {
    .final-cta-option-a {
        padding: 30px 22px;
        border-radius: 24px;
    }

    .final-cta-action-panel {
        padding: 16px;
    }

    .final-cta-contact-buttons {
        grid-template-columns: 1fr;
    }

    .final-cta-b-actions {
        display: grid;
    }

    .final-cta-b-actions > * {
        justify-content: center;
    }

    .final-cta-option-c {
        padding-inline: 20px 4px;
    }
}

/* Finaler CTA: ursprünglicher Aufbau, aber heller in der Writer-Farbwelt */
.cta-card.cta-card-bright {
    background:
        radial-gradient(circle at 84% 6%, rgb(255 197 151 / 34%), transparent 38%),
        linear-gradient(135deg, #c52b1d 0%, #e74725 52%, #f47632 100%);
    box-shadow: 0 24px 54px rgb(154 43 23 / 18%);
}

.cta-card-bright .section-kicker.light,
.cta-card-bright h2 {
    color: #fff;
}

.cta-card-bright p {
    color: rgb(255 255 255 / 86%);
}

.cta-copy .cta-recommend-link {
    display: inline-block;
    margin-top: 20px;
    color: #fff;
    font-size: .88rem;
    font-weight: 750;
    text-underline-offset: 4px;
}

.cta-actions-buttons {
    width: 100%;
    min-width: 0;
}

.cta-actions-buttons > .button {
    justify-content: center;
    width: 100%;
}

.cta-action-button {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    width: 100%;
    padding: 14px 17px;
    border: 1px solid rgb(255 255 255 / 52%);
    border-radius: 14px;
    background: rgb(255 255 255 / 14%);
    color: #fff;
    text-decoration: none;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.cta-action-button:hover {
    transform: translateY(-2px);
    border-color: rgb(255 255 255 / 82%);
    background: rgb(255 255 255 / 23%);
}

.cta-action-button small,
.cta-action-button strong {
    display: block;
    color: #fff;
}

.cta-action-button small {
    color: rgb(255 255 255 / 72%);
    font-size: .72rem;
}

.cta-action-button strong {
    margin-top: 2px;
}

/* Einheitliche Überschriften-Hierarchie der Startseite */
.section-kicker,
.writer-demo-kicker,
.authority-label {
    font-size: .82rem;
    line-height: 1.3;
}

.trust-intro h2,
.web-successor-heading h2,
.potential-overlap-card h2,
.profile-band-shell > header h2,
.comparison-cta h2,
.writer-expertise-intro h2,
.wa-tour-head h2,
.writer-demo h2,
.reference-lines-heading h2,
.section-heading h2,
.faq-layout h2,
.authority-content h2,
.cta-card h2 {
    font-size: clamp(2rem, 2.8vw, 2.5rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.writer-security > h3,
.authority-handbook-content h3,
.edition-card h3 {
    font-size: clamp(1.4rem, 2vw, 1.75rem);
    line-height: 1.15;
}

/* Zentrierte Überschriften sind auf Desktop bewusst einzeilig. */
.section-heading.centered h2,
.wa-tour-head h2 {
    max-width: none;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .section-heading.centered,
    .wa-tour-head {
        margin-inline: 0;
        text-align: left;
    }

    .section-heading.centered h2,
    .wa-tour-head h2 {
        white-space: normal;
    }
}

/* DATANORM-Kompetenz und Entwickler-Handbuch */
.authority-section {
    padding-block: clamp(64px, 8vw, 112px);
}

.authority-combined {
    color: var(--ink);
}

.authority-credential {
    display: grid;
    grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr);
    gap: clamp(48px, 8vw, 120px);
    align-items: center;
}

.authority-proof {
    position: relative;
    overflow: hidden;
    padding: clamp(28px, 4vw, 46px);
    border: 1px solid rgb(85 102 126 / 18%);
    border-radius: 28px;
    background: rgb(255 255 255 / 78%);
    box-shadow: 0 18px 42px rgb(97 45 28 / 8%);
}

.authority-proof::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: linear-gradient(180deg, var(--orange) 0%, #e94a21 52%, var(--brand) 100%);
    content: "";
}

.authority-proof > * {
    position: relative;
    z-index: 1;
}

.authority-label {
    color: var(--brand-dark);
    font-size: .82rem;
    font-weight: 850;
    letter-spacing: .02em;
}

.authority-proof > span,
.authority-person span {
    color: #176fcf;
    font-size: .82rem;
    font-weight: 850;
    letter-spacing: .02em;
}

.authority-logo {
    display: block;
    width: min(100%, 230px);
    height: 74px;
    margin-top: 30px;
    object-fit: contain;
    object-position: left center;
}

.authority-person {
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid rgb(25 76 121 / 14%);
}

.authority-person strong,
.authority-person span {
    display: block;
}

.authority-person strong {
    color: var(--ink);
    font-size: 1.35rem;
}

.authority-person span {
    margin-top: 8px;
}

.authority-contribution {
    margin: 22px 0 0;
    padding-top: 20px;
    border-top: 1px solid rgb(25 76 121 / 14%);
    color: var(--muted);
    font-size: .92rem;
    line-height: 1.58;
}

.authority-content h2 {
    max-width: 900px;
    margin: 18px 0 26px;
    line-height: .99;
    letter-spacing: -.055em;
}

.authority-content > p {
    max-width: 850px;
    margin: 0;
    color: var(--muted);
    font-size: 1.02rem;
    line-height: 1.7;
}

.authority-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 30px 0 0;
    padding: 0;
    list-style: none;
}

.authority-keywords li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border: 1px solid rgb(25 129 255 / 14%);
    border-radius: 999px;
    background: rgb(255 255 255 / 68%);
    color: #243e59;
    font-size: .76rem;
    font-weight: 850;
}

.authority-keywords li::before {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00bc65;
    content: "";
}

.authority-keywords li:nth-child(2)::before { background: #1981ff; }
.authority-keywords li:nth-child(3)::before { background: #4c2eeb; }

.authority-bridge {
    display: grid;
    grid-template-columns: minmax(70px, .28fr) minmax(0, 1fr);
    gap: clamp(22px, 4vw, 50px);
    align-items: center;
    margin: clamp(34px, 4vw, 54px) 0;
}

.authority-bridge::before {
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, var(--orange), #e94a21 55%, var(--brand));
    content: "";
}

.authority-bridge p {
    max-width: 980px;
    margin: 0;
    color: var(--ink);
    font-weight: 700;
    line-height: 1.6;
}

.authority-handbook {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, .45fr);
    gap: clamp(42px, 7vw, 100px);
    align-items: center;
}

.authority-handbook-content {
    max-width: 760px;
}

.authority-handbook-content h3 {
    margin: 9px 0 18px;
    font-size: clamp(1.85rem, 2.8vw, 2.7rem);
    line-height: 1.08;
    letter-spacing: -.04em;
}

.authority-handbook-content p {
    color: var(--muted);
    line-height: 1.72;
}

.authority-handbook-product {
    display: grid;
    justify-items: center;
    gap: 18px;
}

.authority-handbook-product > a:first-child {
    display: block;
    width: min(290px, 100%);
    transition: transform .2s ease, filter .2s ease;
}

.authority-handbook-product > a:first-child:hover {
    transform: translateY(-5px);
    filter: drop-shadow(0 18px 24px rgb(18 43 78 / 20%));
}

.authority-handbook-product img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 10px;
}

@media (max-width: 860px) {
    .authority-credential,
    .authority-handbook {
        grid-template-columns: 1fr;
    }

    .authority-credential {
        gap: 42px;
    }

}

@media (max-width: 560px) {
    .authority-section {
        padding-block: 52px;
    }

    .authority-bridge {
        grid-template-columns: 1fr;
    }

    .authority-bridge::before {
        width: 88px;
    }

    .authority-proof {
        border-radius: 22px;
    }

}

/* Einheitlicher vertikaler Rhythmus der Startseite ab dem Kennzahlenbereich */
main {
    --home-section-space: clamp(64px, 5.5vw, 80px);
}

main > .section,
main > .writer-reference-section,
main > .writer-demo-section {
    padding-block: var(--home-section-space);
}

/* Die Kennzahlenkarte ragt aus dem Hero heraus. Ihr negativer Aussenabstand
   wird hier ausgeglichen, damit der sichtbare Abstand zum Folgeinhalt gleich ist. */
main > .trust-strip-hero + .web-successor {
    padding-top: calc(var(--home-section-space) + 38px);
}

@media (max-width: 760px) {
    main {
        --home-section-space: 56px;
    }
}

/* Standard-Edition */
.edition-detail-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(64px, 7vw, 102px) 0 clamp(112px, 10vw, 150px);
    background:
        radial-gradient(circle at 4% 35%, rgb(255 186 69 / 58%), transparent 38%),
        radial-gradient(circle at 90% 0%, rgb(184 8 18 / 32%), transparent 34%),
        linear-gradient(108deg, #f69b36 0%, #f26532 48%, #ef3537 100%);
}

.edition-detail-hero::after {
    position: absolute;
    inset: 0;
    opacity: .22;
    background-image: radial-gradient(rgb(255 255 255 / 38%) .7px, transparent .7px);
    background-size: 6px 6px;
    content: "";
    pointer-events: none;
}

.edition-detail-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .65fr);
    align-items: center;
    gap: clamp(54px, 8vw, 120px);
}

.edition-detail-hero-copy {
    max-width: 780px;
}

.edition-detail-kicker {
    display: block;
    margin-bottom: 15px;
    color: #fff;
    font-weight: 760;
}

.edition-detail-hero h1 {
    max-width: 820px;
    color: #fff;
    font-size: clamp(2.65rem, 4.4vw, 4.5rem);
    font-weight: 620;
    line-height: 1.06;
    text-shadow: 0 2px 2px rgb(105 18 11 / 22%);
}

.edition-detail-hero-copy > p {
    max-width: 720px;
    margin-top: 24px;
    color: rgb(255 255 255 / 90%);
    font-size: clamp(1rem, 1.5vw, 1.2rem);
}

.edition-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 13px;
    margin-top: 32px;
}

.edition-detail-product {
    position: relative;
    display: grid;
    min-height: 410px;
    place-items: center;
    padding: 30px 30px 82px;
    border: 1px solid rgb(255 255 255 / 48%);
    border-radius: 28px;
    background: rgb(255 255 255 / 82%);
    box-shadow: 0 28px 64px rgb(94 19 15 / 25%);
    backdrop-filter: blur(8px);
}

.edition-detail-product img {
    width: min(270px, 82%);
    margin-inline: auto;
    filter: drop-shadow(0 20px 22px rgb(82 25 12 / 17%));
}

.edition-detail-product-label {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 18px 24px;
    border-radius: 0 0 27px 27px;
    color: #fff;
    background: linear-gradient(105deg, #a80712, #d7181c 58%, #ee6730);
    text-align: center;
}

.edition-detail-product-label strong,
.edition-detail-product-label span {
    display: block;
}

.edition-detail-product-label strong {
    font-size: 1.18rem;
}

.edition-detail-product-label span {
    margin-top: 2px;
    color: rgb(255 255 255 / 78%);
    font-size: .82rem;
}

.standard-pricing-overlap {
    position: relative;
    z-index: 3;
    margin-top: -68px;
}

.standard-pricing-panel {
    display: grid;
    grid-template-columns: 1.15fr repeat(2, 1fr);
    overflow: hidden;
    border: 1px solid rgb(209 10 22 / 18%);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 24px 62px rgb(83 26 18 / 17%);
}

.standard-pricing-intro,
.standard-price-option {
    min-width: 0;
    padding: clamp(28px, 3.5vw, 44px);
}

.standard-pricing-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #a80712, #d7181c 58%, #ee6730);
}

.standard-pricing-intro .section-kicker {
    color: #ffd7ce;
}

.standard-pricing-intro h2 {
    margin-top: 9px;
    color: #fff;
    font-size: clamp(1.75rem, 2.5vw, 2.35rem);
}

.standard-price-option {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border-left: 1px solid var(--border);
}

.standard-price-option > div:first-child {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.standard-price-option > div strong {
    color: var(--brand-dark);
    font-size: clamp(2rem, 3vw, 2.8rem);
    letter-spacing: -.05em;
}

.standard-price-option > div span {
    color: var(--muted);
    font-size: .83rem;
    font-weight: 700;
}

.standard-price-option h3 {
    margin-top: 8px;
    font-size: 1.18rem;
    letter-spacing: -.025em;
}

.standard-price-option p {
    flex: 1;
    margin: 8px 0 22px;
    font-size: .82rem;
    line-height: 1.5;
}

.standard-price-option .button {
    min-height: 44px;
    padding: 10px 18px;
    font-size: .84rem;
}

.standard-pricing-note {
    max-width: 1120px;
    margin: 18px auto 0;
    color: #796b69;
    font-size: .68rem;
    line-height: 1.55;
    text-align: center;
}

.standard-overview-grid {
    display: grid;
    grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr);
    align-items: center;
    gap: clamp(56px, 8vw, 120px);
}

.standard-overview-visual {
    position: relative;
}

.standard-overview-visual::before {
    position: absolute;
    z-index: 0;
    inset: 13% 0 5% 8%;
    border-radius: 38% 62% 55% 45%;
    background: linear-gradient(145deg, rgb(255 190 70 / 30%), rgb(209 10 22 / 13%));
    content: "";
    filter: blur(1px);
}

.standard-overview-visual img {
    position: relative;
    z-index: 1;
    width: min(100%, 540px);
    margin-inline: auto;
    filter: drop-shadow(0 28px 28px rgb(78 31 24 / 15%));
}

.standard-overview-copy h2,
.standard-functions-heading h2,
.standard-requirements-heading h2 {
    margin-top: 10px;
    font-size: 40px;
}

.standard-overview-copy > p {
    max-width: 720px;
    margin-top: 22px;
    font-size: 1.05rem;
}

.standard-key-facts {
    display: grid;
    margin-top: 32px;
    border-top: 1px solid rgb(209 10 22 / 20%);
}

.standard-key-facts > div {
    display: grid;
    grid-template-columns: 115px 1fr;
    gap: 22px;
    padding: 15px 0;
    border-bottom: 1px solid rgb(209 10 22 / 20%);
}

.standard-key-facts span {
    color: var(--muted);
    font-size: .8rem;
    font-weight: 750;
}

.standard-key-facts strong {
    font-size: .93rem;
}

.standard-functions-heading {
    display: grid;
    grid-template-columns: 1fr .9fr;
    align-items: end;
    gap: clamp(42px, 7vw, 100px);
    margin-bottom: 42px;
}

.standard-functions-heading > p {
    max-width: 610px;
    padding-bottom: 4px;
    font-size: 1.02rem;
}

.standard-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    border-top: 1px solid rgb(209 10 22 / 20%);
    border-left: 1px solid rgb(209 10 22 / 20%);
    list-style: none;
}

.standard-feature-grid li {
    position: relative;
    min-height: 66px;
    padding: 20px 24px 20px 54px;
    border-right: 1px solid rgb(209 10 22 / 20%);
    border-bottom: 1px solid rgb(209 10 22 / 20%);
    background: rgb(255 255 255 / 42%);
    font-size: .91rem;
    font-weight: 650;
}

.standard-feature-grid li::before,
.standard-next-edition li::before {
    position: absolute;
    color: var(--success);
    content: "✓";
    font-weight: 900;
}

.standard-feature-grid li::before {
    top: 19px;
    left: 24px;
}

.standard-plus-strip {
    display: grid;
    grid-template-columns: 1fr .85fr .75fr;
    align-items: center;
    gap: clamp(30px, 5vw, 72px);
    margin-top: 42px;
    padding: clamp(28px, 4vw, 46px);
    border: 1px solid rgb(209 10 22 / 18%);
    border-radius: 22px;
    background: rgb(255 255 255 / 55%);
    box-shadow: 0 16px 38px rgb(100 35 22 / 7%);
}

.standard-plus-strip h3 {
    margin-top: 8px;
    font-size: 1.45rem;
}

.standard-plus-strip ul {
    margin: 0;
    padding-left: 20px;
}

.standard-plus-strip li + li {
    margin-top: 8px;
}

.standard-plus-links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.standard-plus-links .text-link {
    margin-top: 0;
    font-size: .86rem;
}

.standard-proof-grid {
    display: grid;
    grid-template-columns: .65fr 1.35fr;
    align-items: center;
    gap: clamp(50px, 8vw, 120px);
}

.standard-proof h2 {
    max-width: 470px;
    margin-top: 10px;
    font-size: 40px;
}

.standard-proof blockquote {
    position: relative;
    margin: 0;
    padding: clamp(34px, 5vw, 54px);
    border: 1px solid rgb(209 10 22 / 20%);
    border-radius: 24px;
    background: rgb(255 255 255 / 70%);
    box-shadow: 0 18px 48px rgb(98 29 20 / 9%);
}

.standard-proof blockquote::before {
    position: absolute;
    top: 20px;
    left: 28px;
    color: rgb(209 10 22 / 32%);
    content: "“";
    font-size: 4rem;
    font-weight: 800;
    line-height: 1;
}

.standard-proof blockquote p {
    position: relative;
    color: var(--text);
    font-size: clamp(1rem, 1.6vw, 1.18rem);
    font-style: italic;
    line-height: 1.7;
}

.standard-proof blockquote footer {
    margin-top: 20px;
    color: var(--brand-dark);
    font-size: .82rem;
    font-weight: 750;
}

.standard-faq .faq-list a {
    color: var(--brand-dark);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.standard-requirements-heading {
    margin-bottom: 38px;
}

.standard-requirements-list {
    margin: 0;
    border-top: 1px solid var(--border);
}

.standard-requirements-list > div {
    display: grid;
    grid-template-columns: minmax(210px, .38fr) minmax(0, 1.62fr);
    gap: clamp(28px, 5vw, 72px);
    padding: 20px 12px;
    border-bottom: 1px solid var(--border);
}

.standard-requirements-list dt {
    color: var(--muted);
    font-weight: 760;
}

.standard-requirements-list dd {
    margin: 0;
    color: var(--text);
    font-weight: 560;
}

.standard-requirements-note {
    max-width: 1050px;
    margin-top: 26px;
    padding: 18px 22px;
    border-left: 3px solid var(--brand);
    background: rgb(255 255 255 / 48%);
    font-size: .84rem;
}

.standard-next-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: clamp(52px, 8vw, 120px);
    padding: clamp(42px, 6vw, 72px);
    border-radius: 28px;
    color: #fff;
    background:
        radial-gradient(circle at 92% 12%, rgb(255 184 83 / 38%), transparent 38%),
        linear-gradient(120deg, #a80712, #d7181c 60%, #ee6730);
    box-shadow: 0 22px 58px rgb(91 18 15 / 18%);
}

.standard-next-grid .section-kicker {
    color: #ffd7ce;
}

.standard-next-grid h2 {
    margin-top: 10px;
    color: #fff;
    font-size: 40px;
}

.standard-next-grid p {
    max-width: 680px;
    margin: 18px 0 28px;
    color: rgb(255 255 255 / 82%);
}

.standard-next-edition ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.standard-next-edition li {
    position: relative;
    padding: 17px 20px 17px 50px;
    border: 1px solid rgb(255 255 255 / 27%);
    border-radius: 12px;
    background: rgb(255 255 255 / 10%);
    font-weight: 700;
}

.standard-next-edition li::before {
    top: 16px;
    left: 22px;
    color: #fff;
}

.standard-complement-grid {
    display: grid;
    grid-template-columns: minmax(220px, .48fr) minmax(0, 1.52fr);
    align-items: center;
    gap: clamp(52px, 8vw, 120px);
}

.standard-complement-visual {
    display: grid;
    min-height: 270px;
    place-items: center;
    border: 1px solid rgb(209 10 22 / 16%);
    border-radius: 28px;
    background: linear-gradient(145deg, rgb(255 255 255 / 74%), rgb(255 229 220 / 70%));
    box-shadow: 0 18px 44px rgb(97 32 22 / 8%);
}

.standard-complement-visual img {
    width: min(250px, 80%);
    border-radius: 18px;
}

.standard-complement h2 {
    max-width: 850px;
    margin-top: 10px;
    font-size: 40px;
}

.standard-complement p {
    max-width: 840px;
    margin: 20px 0 28px;
}

.standard-final-cta {
    color: #fff;
}

.standard-final-cta .standard-final-grid {
    display: grid;
    grid-template-columns: 1fr .72fr;
    align-items: center;
    gap: clamp(54px, 8vw, 120px);
    padding: clamp(52px, 6vw, 82px);
    border: 1px solid rgb(117 12 15 / 28%);
    border-radius: 28px;
    background: linear-gradient(110deg, #4a1b23 0%, #9f261e 52%, #e35b28 100%);
    box-shadow: 0 28px 60px rgb(76 18 15 / 16%);
}

.standard-final-cta h2 {
    margin: 10px 0 16px;
    color: #fff;
    font-size: 40px;
}

.standard-final-cta p,
.standard-final-cta span { color: #fff; }

.standard-final-contact {
    display: grid;
    min-height: 52px;
    place-items: center;
    border: 1px solid rgb(255 255 255 / 68%);
    border-radius: 12px;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
    background: rgb(255 255 255 / 8%);
}

.standard-final-contact:hover { color: var(--brand-dark); background: #fff; }

.standard-final-actions {
    display: grid;
    gap: 12px;
}

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

@media (max-width: 980px) {
    .edition-detail-hero-grid,
    .standard-overview-grid,
    .standard-proof-grid,
    .standard-next-grid,
    .standard-complement-grid {
        grid-template-columns: 1fr;
    }

    .standard-final-cta .standard-final-grid {
        grid-template-columns: 1fr;
    }

    .edition-detail-product {
        width: min(100%, 540px);
        min-height: 360px;
        margin-inline: auto;
    }

    .standard-pricing-panel {
        grid-template-columns: 1fr 1fr;
    }

    .standard-pricing-intro {
        grid-column: 1 / -1;
    }

    .standard-price-option:nth-child(2) {
        border-left: 0;
    }

    .standard-functions-heading,
    .standard-plus-strip {
        grid-template-columns: 1fr;
    }

    .standard-plus-links {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px 28px;
    }

    .standard-next-grid {
        gap: 36px;
    }
}

@media (max-width: 700px) {
    .edition-detail-hero {
        padding: 54px 0 112px;
    }

    .edition-detail-hero h1 {
        font-size: clamp(2.35rem, 11vw, 3.25rem);
    }

    .edition-detail-product {
        min-height: 330px;
        padding-inline: 18px;
    }

    .standard-pricing-overlap {
        margin-top: -54px;
    }

    .standard-pricing-panel,
    .standard-feature-grid {
        grid-template-columns: 1fr;
    }

    .standard-price-option {
        border-top: 1px solid var(--border);
        border-left: 0;
    }

    .standard-overview-copy h2,
    .standard-functions-heading h2,
    .standard-proof h2,
    .standard-requirements-heading h2,
    .standard-next-grid h2,
    .standard-complement h2 {
        font-size: clamp(2rem, 9.5vw, 2.5rem);
    }

    .standard-key-facts > div,
    .standard-requirements-list > div {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .standard-plus-strip {
        padding: 26px 22px;
    }

    .standard-proof blockquote {
        padding: 42px 26px 30px;
    }

    .standard-next-grid {
        padding: 34px 24px;
    }

    .standard-complement-visual {
        min-height: 220px;
    }

    .standard-final-actions {
        width: 100%;
    }

}
/* Standard-Edition: zusammenhängendes Seitenkonzept */
.std2-page {
    --std2-red: #c52218;
    --std2-deep-red: #9f1712;
    --std2-orange: #ef6b2d;
    --std2-ink: #0d1b35;
    --std2-muted: #41516d;
    --std2-line: rgba(197, 34, 24, .18);
    color: var(--std2-ink);
    overflow: hidden;
    background:
        radial-gradient(56rem 40rem at 103% 7%, rgba(239, 107, 45, .16), transparent 70%),
        radial-gradient(58rem 44rem at -8% 45%, rgba(197, 34, 24, .08), transparent 72%),
        radial-gradient(52rem 36rem at 92% 84%, rgba(239, 107, 45, .10), transparent 70%),
        #fffdfc;
}

.std2-page h1,
.std2-page h2,
.std2-page h3,
.std2-page p {
    margin-top: 0;
}

.std2-page h2 {
    max-width: 24ch;
    font-size: clamp(2rem, 3vw, 2.5rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.std2-breadcrumb {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding-top: 1.15rem;
    padding-bottom: .8rem;
    color: #ae2419;
    font-size: .88rem;
    font-weight: 700;
}

.std2-breadcrumb a {
    color: #db4b21;
    text-decoration: none;
}

.std2-breadcrumb a:hover {
    color: #9f1712;
    text-decoration: underline;
    text-underline-offset: .25em;
}

.std2-breadcrumb span[aria-current] {
    color: #8f1b15;
}

.std2-hero {
    padding: 1.35rem 0 5.5rem;
}

.std2-hero-panel {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(31rem, 1.08fr);
    gap: 2rem 4.5rem;
    align-items: center;
    padding: clamp(2rem, 4vw, 4rem);
    border: 1px solid rgba(197, 34, 24, .13);
    border-radius: 2rem;
    background:
        linear-gradient(125deg, rgba(255,255,255,.82), rgba(255,248,244,.58)),
        rgba(255,255,255,.55);
    box-shadow: 0 1.8rem 4.5rem rgba(76, 24, 17, .12);
    backdrop-filter: blur(18px);
}

.std2-hero-visual {
    position: relative;
    min-height: 25rem;
    display: grid;
    place-items: center;
}

.std2-hero-visual img {
    position: relative;
    z-index: 1;
    width: min(100%, 36rem);
    height: auto;
    filter: drop-shadow(0 1.4rem 1.4rem rgba(42, 24, 20, .18));
}

.std2-orbit {
    position: absolute;
    width: min(30rem, 88%);
    aspect-ratio: 1;
    border-radius: 50%;
    background: linear-gradient(145deg, rgba(247, 176, 69, .30), rgba(211, 45, 31, .10));
    filter: blur(.2px);
}

.std2-eyebrow {
    margin-bottom: .8rem;
    color: #b62619;
    font-size: .88rem;
    line-height: 1.2;
    font-weight: 800;
}

.std2-hero-copy h1 {
    max-width: 13ch;
    margin-bottom: 1.3rem;
    font-size: clamp(2.8rem, 5vw, 4.7rem);
    line-height: .98;
    letter-spacing: -.055em;
}

.std2-lead {
    max-width: 45rem;
    margin-bottom: 1.7rem;
    color: var(--std2-muted);
    font-size: 1.13rem;
    line-height: 1.65;
}

.std2-price-row {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.std2-price-row > p:last-child {
    margin: 0;
    padding-left: 1.5rem;
    border-left: 1px solid var(--std2-line);
    color: var(--std2-muted);
    font-size: .88rem;
    line-height: 1.55;
}

.std2-price {
    display: flex;
    align-items: baseline;
    gap: .45rem;
    margin: 0;
    color: var(--std2-red);
}

.std2-price strong {
    font-size: 3.25rem;
    line-height: 1;
    letter-spacing: -.05em;
}

.std2-price span {
    color: var(--std2-ink);
    font-weight: 700;
}

.std2-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.std2-facts {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin: .5rem 0 -1rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(197, 34, 24, .14);
}

.std2-facts div {
    padding: 0 1.5rem;
}

.std2-facts div:first-child {
    padding-left: 0;
}

.std2-facts div + div {
    border-left: 1px solid rgba(197, 34, 24, .14);
}

.std2-facts dt {
    margin-bottom: .25rem;
    color: #b62619;
    font-size: .78rem;
    font-weight: 800;
}

.std2-facts dd {
    margin: 0;
    font-weight: 750;
}

.std2-section {
    padding: clamp(4.5rem, 8vw, 7.5rem) 0;
}

.std2-heading {
    display: grid;
    justify-items: center;
    margin-bottom: 3rem;
    text-align: center;
}

.std2-heading h2 {
    margin-bottom: .8rem;
}

.std2-heading > p:last-child {
    color: var(--std2-muted);
    font-size: 1.05rem;
}

.std2-function-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(2rem, 5vw, 5rem);
}

.std2-function-grid article {
    position: relative;
    padding-top: 1.35rem;
    border-top: 2px solid;
    border-image: linear-gradient(90deg, #ef9d34, #cc251a) 1;
}

.std2-number {
    display: block;
    margin-bottom: 1rem;
    color: #bd281c;
    font-size: .78rem;
    font-weight: 800;
}

.std2-function-grid h3 {
    margin-bottom: 1.25rem;
    font-size: 1.35rem;
}

.std2-function-grid ul,
.std2-profi ul {
    display: grid;
    gap: .9rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.std2-function-grid li,
.std2-profi li {
    position: relative;
    padding-left: 1.55rem;
    color: #243550;
    line-height: 1.5;
}

.std2-function-grid li::before,
.std2-profi li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: #09863e;
    font-weight: 900;
}

.std2-compare,
.std2-contact {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: center;
    padding: clamp(2rem, 4vw, 3rem);
    border-radius: 1.75rem;
    color: white;
    background: linear-gradient(105deg, #a61714 0%, #cb2a1d 46%, #ef742e 100%);
    box-shadow: 0 1.5rem 3.3rem rgba(125, 28, 20, .18);
}

.std2-compare h2 {
    max-width: 29ch;
    margin: 0;
    font-size: clamp(1.75rem, 3vw, 2.5rem);
}

.std2-testimonial {
    display: grid;
    grid-template-columns: minmax(15rem, .65fr) minmax(0, 1.35fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: center;
}

.std2-testimonial blockquote {
    position: relative;
    margin: 0;
    padding: 2.3rem 2.5rem;
    border: 1px solid rgba(197, 34, 24, .14);
    border-radius: 1.5rem;
    background: rgba(255,255,255,.58);
    box-shadow: 0 1.3rem 3rem rgba(43, 30, 24, .08);
    backdrop-filter: blur(14px);
}

.std2-testimonial blockquote::before {
    content: "“";
    position: absolute;
    top: .45rem;
    left: 1.25rem;
    color: rgba(197, 34, 24, .28);
    font-size: 4.5rem;
    font-weight: 800;
    line-height: 1;
}

.std2-testimonial blockquote > p {
    margin: 1rem 0 1.5rem;
    font-size: 1.08rem;
    font-style: italic;
    line-height: 1.7;
}

.std2-testimonial footer {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem 1.25rem;
    padding-top: 1.1rem;
    border-top: 1px solid var(--std2-line);
    color: #ae251a;
}

.std2-faq-layout,
.std2-requirements {
    display: grid;
    grid-template-columns: minmax(15rem, .65fr) minmax(0, 1.35fr);
    gap: clamp(3rem, 8vw, 8rem);
}

.std2-text-link {
    display: inline-block;
    margin-top: 1rem;
    color: #bd2118;
    font-weight: 800;
    text-underline-offset: .25em;
}

.std2-accordion {
    border-top: 1px solid rgba(13, 27, 53, .16);
}

.std2-accordion details {
    border-bottom: 1px solid rgba(13, 27, 53, .16);
}

.std2-accordion summary {
    padding: 1.45rem 2.2rem 1.45rem 0;
    cursor: pointer;
    font-size: 1.05rem;
    font-weight: 800;
}

.std2-accordion details p {
    max-width: 50rem;
    padding: 0 2rem 1.4rem 0;
    color: var(--std2-muted);
    line-height: 1.65;
}

.std2-requirements dl {
    margin: 0;
    border-top: 1px solid rgba(13, 27, 53, .16);
}

.std2-requirements dl div {
    display: grid;
    grid-template-columns: 11rem 1fr;
    gap: 2rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid rgba(13, 27, 53, .16);
}

.std2-requirements dt {
    color: #314764;
    font-weight: 800;
}

.std2-requirements dd {
    margin: 0;
    line-height: 1.55;
}

.std2-decision-section {
    padding-bottom: 3rem;
}

.std2-decision-panel {
    display: grid;
    grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr);
    border: 1px solid rgba(197, 34, 24, .16);
    border-radius: 1.75rem;
    overflow: hidden;
    background: rgba(255,255,255,.6);
    box-shadow: 0 1.4rem 3.5rem rgba(63, 32, 25, .09);
    backdrop-filter: blur(16px);
}

.std2-decision-intro,
.std2-profi {
    padding: clamp(2rem, 4vw, 3.25rem);
}

.std2-decision-intro {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    color: white;
    background: linear-gradient(145deg, #a61915, #d83a20 65%, #ef742e);
}

.std2-decision-intro h3,
.std2-profi h3 {
    margin-bottom: .85rem;
    font-size: 1.55rem;
}

.std2-decision-intro p {
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.std2-profi ul {
    grid-template-columns: repeat(2, 1fr);
}

.std2-profi footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--std2-line);
}

.std2-profi footer p {
    display: flex;
    align-items: baseline;
    gap: .4rem;
    margin: 0;
}

.std2-profi footer strong {
    color: var(--std2-red);
    font-size: 2.6rem;
    letter-spacing: -.05em;
}

.std2-profi footer span {
    font-weight: 700;
}

.std2-price-note {
    max-width: 72rem;
    margin: 1.25rem auto 0;
    color: #56647a;
    font-size: .76rem;
    line-height: 1.55;
    text-align: center;
}

.std2-paula {
    display: grid;
    grid-template-columns: 8rem minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: center;
    margin-top: 4rem;
    padding-top: 3rem;
    border-top: 1px solid rgba(197, 34, 24, .17);
}

.std2-paula img {
    width: 8rem;
    height: 8rem;
    border-radius: 1.15rem;
    object-fit: cover;
}

.std2-paula h3 {
    margin-bottom: .65rem;
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    line-height: 1.12;
}

.std2-paula div > p:last-child {
    max-width: 53rem;
    margin-bottom: 0;
    color: var(--std2-muted);
    line-height: 1.6;
}

.std2-contact {
    margin-top: 4rem;
    margin-bottom: clamp(5rem, 9vw, 8rem);
}

.std2-contact .std2-eyebrow {
    color: #ffd2be;
}

.std2-contact h2 {
    max-width: 28ch;
    margin-bottom: .75rem;
}

.std2-contact > div > p:last-child {
    margin-bottom: 0;
}

.std2-contact-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(10rem, 1fr));
    gap: .65rem;
}

.std2-contact-actions > a:not(.button) {
    display: grid;
    place-items: center;
    min-height: 3.25rem;
    padding: .75rem 1.25rem;
    border: 1px solid rgba(255,255,255,.78);
    border-radius: .75rem;
    color: white;
    font-weight: 800;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease;
}

.std2-contact-actions > a:not(.button):hover {
    color: #9f1712;
    background: white;
}

@media (max-width: 1100px) {
    .std2-hero-panel {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }

    .std2-hero-copy h1 {
        font-size: clamp(2.5rem, 5vw, 4rem);
    }

    .std2-paula {
        grid-template-columns: 7rem minmax(0, 1fr);
    }

    .std2-paula img {
        width: 7rem;
        height: 7rem;
    }

    .std2-paula .button {
        grid-column: 2;
        justify-self: start;
    }

    .std2-contact {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 820px) {
    .std2-hero {
        padding-bottom: 3rem;
    }

    .std2-hero-panel,
    .std2-testimonial,
    .std2-faq-layout,
    .std2-requirements,
    .std2-decision-panel {
        grid-template-columns: 1fr;
    }

    .std2-hero-visual {
        min-height: 18rem;
    }

    .std2-hero-copy h1 {
        max-width: 15ch;
    }

    .std2-function-grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }

    .std2-compare {
        grid-template-columns: 1fr;
        justify-items: start;
    }

    .std2-profi ul {
        grid-template-columns: 1fr;
    }

    .std2-contact-actions {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .std2-breadcrumb {
        padding-top: .85rem;
    }

    .std2-hero-panel {
        padding: 1.4rem;
        border-radius: 1.35rem;
    }

    .std2-hero-visual {
        min-height: 14rem;
    }

    .std2-hero-copy h1 {
        font-size: 2.45rem;
    }

    .std2-price-row,
    .std2-profi footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .std2-price-row > p:last-child {
        padding-top: .8rem;
        padding-left: 0;
        border-top: 1px solid var(--std2-line);
        border-left: 0;
    }

    .std2-actions {
        display: grid;
    }

    .std2-facts {
        grid-template-columns: 1fr;
    }

    .std2-facts div {
        padding: .85rem 0;
    }

    .std2-facts div + div {
        border-top: 1px solid rgba(197, 34, 24, .14);
        border-left: 0;
    }

    .std2-section {
        padding: 4rem 0;
    }

    .std2-testimonial,
    .std2-faq-layout,
    .std2-requirements {
        gap: 2rem;
    }

    .std2-testimonial blockquote {
        padding: 2rem 1.35rem 1.5rem;
    }

    .std2-requirements dl div {
        grid-template-columns: 1fr;
        gap: .45rem;
    }

    .std2-decision-intro,
    .std2-profi,
    .std2-compare,
    .std2-contact {
        padding: 1.5rem;
    }

    .std2-paula {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .std2-paula .button {
        grid-column: 1;
    }
}

/* Standard-Edition: exakte Umsetzung des freigegebenen Seitenentwurfs */
.std2-page {
    background:
        radial-gradient(46rem 34rem at 102% 8%, rgba(239, 107, 45, .13), transparent 72%),
        radial-gradient(45rem 36rem at -8% 54%, rgba(197, 34, 24, .055), transparent 74%),
        #fffdfc;
}

.std2-page h2 {
    font-size: clamp(1.9rem, 2.55vw, 2.5rem);
}

.std2-breadcrumb {
    padding-top: 1rem;
    padding-bottom: .35rem;
}

.std2-hero {
    padding: 1.5rem 0 4.75rem;
}

.std2-hero-panel {
    grid-template-columns: minmax(24rem, .98fr) minmax(0, 1.02fr);
    gap: 2.5rem 5.25rem;
    padding: 1.75rem 0 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.std2-hero-visual {
    min-height: 26rem;
}

.std2-laptop {
    position: relative;
    z-index: 1;
    width: min(100%, 42rem);
    padding-bottom: 1.25rem;
    filter: drop-shadow(0 1.6rem 1.45rem rgba(32, 24, 23, .17));
}

.std2-laptop-screen {
    position: relative;
    z-index: 2;
    aspect-ratio: 16 / 10;
    padding: .72rem .72rem 1.15rem;
    overflow: hidden;
    border: 1px solid #1d2024;
    border-radius: 1.05rem 1.05rem .5rem .5rem;
    background: linear-gradient(145deg, #111419, #2a2d31);
    box-shadow: inset 0 0 0 2px rgba(255,255,255,.08);
}

.std2-laptop-screen img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: .35rem;
    filter: none;
}

.std2-laptop-base {
    position: absolute;
    z-index: 1;
    right: -4%;
    bottom: .15rem;
    left: -4%;
    height: 1.6rem;
    border-radius: 0 0 55% 55%;
    background: linear-gradient(180deg, #f3f3f2 0%, #a8a9aa 47%, #55575a 55%, #c8c9ca 100%);
    clip-path: polygon(4% 0, 96% 0, 100% 58%, 96% 78%, 58% 100%, 42% 100%, 4% 78%, 0 58%);
}

.std2-orbit {
    width: min(24rem, 72%);
    transform: translate(-16%, 13%);
    background: linear-gradient(145deg, rgba(247, 176, 69, .25), rgba(211, 45, 31, .07));
}

.std2-hero-copy h1 {
    max-width: 12ch;
    margin-bottom: 1.15rem;
    font-size: clamp(3rem, 4.3vw, 4.35rem);
    line-height: .99;
}

.std2-lead {
    max-width: 39rem;
    margin-bottom: 1.45rem;
    font-size: 1.05rem;
    line-height: 1.58;
}

.std2-price-row {
    margin-bottom: 1.25rem;
}

.std2-price strong {
    font-size: 3.45rem;
}

.std2-facts {
    gap: 0;
    margin: 1.15rem 0 0;
    padding-top: 2rem;
    border-top: 0;
}

.std2-facts div {
    position: relative;
    min-height: 4.65rem;
    padding: 0 2.25rem 0 4.35rem;
}

.std2-facts div:first-child {
    padding-left: 4.35rem;
}

.std2-facts div + div {
    border-left-color: rgba(197, 34, 24, .28);
}

.std2-facts div::before {
    content: "";
    position: absolute;
    top: .05rem;
    left: 1.3rem;
    width: 2rem;
    height: 2rem;
    background: var(--std2-red);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M8 13h8M8 17h8'/%3E%3C/svg%3E") center / contain no-repeat;
}

.std2-facts div:nth-child(2)::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='5' rx='8' ry='3'/%3E%3Cpath d='M4 5v6c0 1.7 3.6 3 8 3s8-1.3 8-3V5M4 11v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6'/%3E%3C/svg%3E");
}

.std2-facts div:nth-child(3)::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a15 15 0 0 1 0 18M12 3a15 15 0 0 0 0 18'/%3E%3C/svg%3E");
}

.std2-facts dt {
    margin-bottom: .4rem;
    color: var(--std2-ink);
    font-size: .92rem;
}

.std2-facts dd {
    max-width: 24rem;
    color: var(--std2-muted);
    font-size: .84rem;
    font-weight: 500;
    line-height: 1.45;
}

.std2-section {
    padding: 4.7rem 0;
}

.std2-functions {
    padding-top: 1.25rem;
}

.std2-heading {
    justify-items: start;
    margin-bottom: 2.5rem;
    text-align: left;
}

.std2-heading h2 {
    max-width: none;
    margin-bottom: .55rem;
}

.std2-heading > p:last-child {
    margin-bottom: 0;
    font-size: .98rem;
}

.std2-function-grid {
    gap: clamp(2rem, 4.5vw, 4.5rem);
}

.std2-function-grid article {
    padding-top: 1.05rem;
}

.std2-function-grid ul {
    gap: .78rem;
}

.std2-function-grid li {
    font-size: .93rem;
}

.std2-compare {
    min-height: 8rem;
    padding: 1.7rem 2.5rem;
    border-radius: .85rem;
    box-shadow: 0 1rem 2.4rem rgba(125, 28, 20, .14);
}

.std2-compare h2 {
    max-width: 21ch;
    font-size: clamp(1.55rem, 2.3vw, 2rem);
}

.std2-testimonial {
    grid-template-columns: 8rem minmax(0, 1fr);
    gap: 2rem;
    align-items: center;
}

.std2-quote-mark {
    color: rgba(224, 86, 54, .16);
    font-family: Georgia, serif;
    font-size: 9rem;
    line-height: .72;
    text-align: center;
}

.std2-testimonial blockquote {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(12rem, .35fr);
    column-gap: 3rem;
    align-items: center;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.std2-testimonial blockquote::before {
    content: none;
}

.std2-testimonial blockquote .std2-eyebrow {
    grid-column: 1 / -1;
    margin: 0 0 .8rem;
    font-size: .8rem;
    font-style: normal;
}

.std2-testimonial blockquote > p:not(.std2-eyebrow) {
    margin: 0;
    font-size: 1.2rem;
    font-style: normal;
    line-height: 1.55;
}

.std2-testimonial footer {
    display: grid;
    gap: .35rem;
    padding: .55rem 0 .55rem 2rem;
    border-top: 0;
    border-left: 2px solid var(--std2-red);
}

.std2-testimonial footer span {
    color: var(--std2-ink);
    font-size: .86rem;
}

.std2-faq-layout {
    grid-template-columns: minmax(16rem, .7fr) minmax(0, 1.3fr);
    gap: clamp(3rem, 7vw, 7rem);
}

.std2-faq-layout header > p:not(.std2-eyebrow) {
    max-width: 25rem;
    color: var(--std2-muted);
    line-height: 1.55;
}

.std2-accordion summary {
    position: relative;
    list-style: none;
}

.std2-accordion summary::-webkit-details-marker {
    display: none;
}

.std2-accordion summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 0;
    display: grid;
    width: 1.75rem;
    height: 1.75rem;
    place-items: center;
    transform: translateY(-50%);
    border-radius: 50%;
    color: white;
    background: var(--std2-red);
    font-size: 1.1rem;
    line-height: 1;
}

.std2-accordion details[open] summary::after {
    content: "−";
}

.std2-requirements {
    display: block;
}

.std2-requirements header {
    margin-bottom: 1.15rem;
}

.std2-requirements header .std2-eyebrow {
    display: none;
}

.std2-requirements h2 {
    margin-bottom: 0;
    font-size: 1.35rem;
    letter-spacing: -.02em;
}

.std2-requirements dl {
    overflow: hidden;
    border: 1px solid rgba(13, 27, 53, .14);
    border-radius: .65rem;
    background: rgba(255,255,255,.46);
    box-shadow: 0 .8rem 2rem rgba(43, 30, 24, .045);
}

.std2-requirements dl div {
    grid-template-columns: 13rem 1fr;
    padding: .85rem 1.4rem;
    border-bottom-color: rgba(13, 27, 53, .12);
}

.std2-requirements dl div:last-child {
    border-bottom: 0;
}

.std2-decision-section {
    padding-top: 4.25rem;
    padding-bottom: 2rem;
}

.std2-decision-section .std2-heading {
    justify-items: center;
    margin-bottom: 2.25rem;
    text-align: center;
}

.std2-decision-section .std2-heading h2 {
    max-width: 18ch;
}

.std2-decision-panel {
    grid-template-columns: minmax(15rem, .55fr) minmax(0, 1.45fr);
    gap: 4rem;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.std2-decision-intro {
    align-items: flex-start;
    padding: 1.8rem 0;
    color: var(--std2-ink);
    background: transparent;
}

.std2-decision-intro h3 {
    font-size: 1.55rem;
}

.std2-decision-intro p {
    max-width: 19rem;
    color: var(--std2-muted);
}

.std2-profi {
    padding: 2rem 2.25rem;
    border: 1px solid rgba(197, 34, 24, .23);
    border-radius: 1rem;
    background: rgba(255,255,255,.45);
}

.std2-profi h3 {
    margin-bottom: 1.35rem;
}

.std2-profi ul {
    gap: 1rem 2.25rem;
}

.std2-profi li {
    font-size: .91rem;
}

.std2-profi footer {
    margin-top: 1.5rem;
    padding-top: 1.15rem;
}

.std2-price-note {
    margin-top: 1rem;
}

.std2-paula {
    grid-template-columns: 7rem minmax(0, 1fr) auto;
    gap: 1.75rem;
    margin-top: 2.5rem;
    padding: 1.6rem 0 0;
}

.std2-paula img {
    width: 7rem;
    height: 7rem;
    border-radius: .8rem;
}

.std2-paula h3 {
    margin-bottom: .35rem;
    font-size: 1.15rem;
}

.std2-paula div > p:last-child {
    font-size: .87rem;
    line-height: 1.5;
}

.std2-paula .button {
    white-space: nowrap;
}

.std2-contact {
    min-height: 9.25rem;
    margin-top: 3rem;
    margin-bottom: 5rem;
    padding: 1.65rem 2.25rem;
    border-radius: .85rem;
}

.std2-contact h2 {
    max-width: 22ch;
    margin-bottom: .35rem;
    font-size: clamp(1.55rem, 2.4vw, 2rem);
}

.std2-contact-actions {
    grid-template-columns: repeat(3, minmax(9.5rem, 1fr));
}

@media (max-width: 1100px) {
    .std2-hero-panel {
        grid-template-columns: minmax(20rem, .9fr) minmax(0, 1.1fr);
        gap: 2.5rem;
    }

    .std2-facts div {
        padding-right: 1.25rem;
        padding-left: 3.75rem;
    }

    .std2-facts div:first-child {
        padding-left: 3.75rem;
    }

    .std2-facts div::before {
        left: .85rem;
    }

    .std2-decision-panel {
        gap: 2.5rem;
    }

    .std2-contact-actions {
        grid-template-columns: 1fr;
        min-width: 20rem;
    }
}

@media (max-width: 820px) {
    .std2-hero-panel {
        grid-template-columns: 1fr;
    }

    .std2-hero-visual {
        min-height: 20rem;
    }

    .std2-hero-copy h1 {
        max-width: 13ch;
    }

    .std2-facts {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .std2-facts div,
    .std2-facts div:first-child {
        min-height: 0;
        padding: .8rem 0 .8rem 3.75rem;
    }

    .std2-facts div + div {
        border-top: 1px solid rgba(197, 34, 24, .18);
        border-left: 0;
    }

    .std2-facts div::before {
        top: 1rem;
        left: .6rem;
    }

    .std2-testimonial {
        grid-template-columns: 4rem minmax(0, 1fr);
        gap: 1rem;
    }

    .std2-quote-mark {
        font-size: 6rem;
    }

    .std2-testimonial blockquote {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .std2-testimonial footer {
        padding-left: 1rem;
    }

    .std2-decision-panel {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .std2-decision-intro {
        padding-bottom: 0;
    }

    .std2-paula {
        grid-template-columns: 6rem minmax(0, 1fr);
    }

    .std2-paula img {
        width: 6rem;
        height: 6rem;
    }

    .std2-paula .button {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 560px) {
    .std2-hero-panel {
        padding: 1rem 0 0;
    }

    .std2-laptop {
        width: 100%;
    }

    .std2-hero-copy h1 {
        font-size: 2.55rem;
    }

    .std2-function-grid {
        gap: 2.2rem;
    }

    .std2-compare,
    .std2-contact {
        padding: 1.4rem;
    }

    .std2-testimonial {
        grid-template-columns: 1fr;
    }

    .std2-quote-mark {
        display: none;
    }

    .std2-requirements dl div {
        grid-template-columns: 1fr;
        gap: .35rem;
    }

    .std2-profi {
        padding: 1.45rem;
    }

    .std2-paula {
        grid-template-columns: 1fr;
    }

    .std2-paula .button {
        grid-column: 1;
    }

    .std2-contact-actions {
        min-width: 0;
    }
}

/* Standard-Edition: finale Feinabstimmung */
.std2-laptop-image {
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 35rem);
    height: auto;
    margin-inline: auto;
    filter: drop-shadow(0 1.6rem 1.8rem rgba(47, 20, 15, .14));
}

.std2-hero-copy h1 {
    max-width: none;
    text-wrap: balance;
}

.std2-function-grid article {
    padding-top: 0;
    border-top: 0;
}

.std2-function-grid article::before,
.std2-function-grid article::after,
.std2-function-grid .std2-number,
.std2-function-grid h3 {
    display: none;
}

.std2-function-grid ul {
    margin-top: 0;
}

.std2-compare {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    min-height: 7.25rem;
}

.std2-compare h2 {
    max-width: none;
    color: #fff;
    font-size: clamp(1.7rem, 2.25vw, 2.35rem);
    white-space: nowrap;
}

.std2-compare .button-light,
.std2-contact .button-light {
    color: var(--std2-ink);
}

.std2-contact,
.std2-contact h2,
.std2-contact p,
.std2-contact .std2-eyebrow,
.std2-contact-actions > a:not(.button-light) {
    color: #fff;
}

.std2-contact {
    margin-top: 4.7rem;
    margin-bottom: 4.7rem;
}

@media (max-width: 900px) {
    .std2-compare h2 {
        white-space: normal;
    }
}

/* Preise & Shop: fokussierte Kaufseite ohne Lizenz-Tabs */
.shop-page {
    --shop-line: rgb(175 70 48 / 17%);
    position: relative;
    isolation: isolate;
    overflow: hidden;
    color: #142238;
    background:
        radial-gradient(50rem 24rem at 78% 15%, rgb(244 105 44 / 11%), transparent 72%),
        linear-gradient(180deg, #fff 0%, #f7f8f8 42%, #fff 100%);
}

.shop-breadcrumb {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding-top: 1.5rem;
    color: #a80b12;
    font-size: .82rem;
    font-weight: 720;
}

.shop-breadcrumb span[aria-current] { color: #6e7787; }
.shop-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 4px; }

.shop-hero {
    padding-top: clamp(3.5rem, 6vw, 6.5rem);
    padding-bottom: clamp(3rem, 5vw, 5rem);
    text-align: center;
}

.shop-kicker {
    margin-bottom: .7rem;
    color: #ae2017;
    font-size: .8rem;
    font-weight: 850;
}

.shop-hero h1 {
    max-width: none;
    color: #0f1d34;
    font-size: clamp(3rem, 4.3vw, 4.35rem);
    line-height: 1.04;
    letter-spacing: -.045em;
}

.shop-hero > p:last-child {
    max-width: 58rem;
    margin: 1.3rem auto 0;
    color: #53647d;
    font-size: 1.08rem;
    line-height: 1.65;
}

.shop-plans {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.15rem;
    align-items: stretch;
}

.shop-plan {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: clamp(1.6rem, 2.4vw, 2.3rem);
    border: 1px solid rgb(255 255 255 / 82%);
    border-radius: 1.35rem;
    outline: 1px solid rgb(112 80 66 / 10%);
    background: linear-gradient(145deg, rgb(255 255 255 / 78%), rgb(255 255 255 / 52%));
    box-shadow: inset 0 1px rgb(255 255 255 / 95%), 0 1.4rem 3.5rem rgb(45 36 31 / 9%);
    backdrop-filter: blur(20px) saturate(120%);
}

.shop-plan-featured {
    outline-color: rgb(216 75 39 / 31%);
    background: linear-gradient(145deg, rgb(255 252 249 / 86%), rgb(255 238 226 / 65%));
    box-shadow: inset 0 1px rgb(255 255 255 / 97%), 0 1.7rem 4.2rem rgb(151 50 26 / 14%);
    transform: translateY(-.65rem);
}

.shop-recommended {
    position: absolute;
    top: 0;
    right: 1.7rem;
    padding: .45rem .85rem;
    border-radius: 0 0 .65rem .65rem;
    color: #fff;
    background: linear-gradient(135deg, #c52b1d, #ec6931);
    font-size: .68rem;
    font-weight: 850;
}

.shop-plan-head {
    display: grid;
    grid-template-columns: 4.25rem minmax(0, 1fr);
    align-items: start;
    gap: 1rem;
    min-height: 7.625rem;
    padding-right: 1.25rem;
}

.shop-plan-icon {
    display: block;
    width: 4.25rem;
    height: 3.35rem;
}

.shop-plan-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.shop-plan-type {
    margin-bottom: .55rem;
    color: #b12619;
    font-size: 1.75rem;
    font-weight: 850;
}

.shop-plan h2 {
    max-width: 31rem;
    color: #263750;
    font-size: .93rem;
    font-weight: 680;
    line-height: 1.5;
}

.shop-price {
    display: flex;
    align-items: baseline;
    gap: .45rem;
    margin-top: 1.25rem;
}

.shop-price strong {
    color: #bd2519;
    font-size: clamp(2.7rem, 3.4vw, 3.55rem);
    line-height: 1;
    letter-spacing: -.055em;
}

.shop-price span { font-size: .88rem; font-weight: 800; }
.shop-term { margin-top: .45rem; color: #68758a; font-size: .74rem; }

.shop-license {
    margin-top: 1.35rem;
    padding: .85rem 1rem;
    border: 1px solid rgb(200 70 40 / 13%);
    border-radius: .75rem;
    color: #24354c;
    background: rgb(255 255 255 / 59%);
    font-size: .86rem;
}

.shop-features {
    display: grid;
    gap: .68rem;
    margin: 1.25rem 0 1.4rem;
    padding: 0;
    list-style: none;
}

.shop-features li {
    position: relative;
    padding-left: 1.45rem;
    color: #3e4e65;
    font-size: .86rem;
    line-height: 1.42;
}

.shop-features li::before {
    position: absolute;
    left: 0;
    color: #07813b;
    content: "✓";
    font-weight: 900;
}

.shop-features li.shop-feature-added::before {
    content: "+";
    font-size: 1.05rem;
    line-height: 1.15;
}

.shop-limit {
    margin: auto 0 1.2rem;
    padding-top: 1rem;
    border-top: 1px solid var(--shop-line);
    color: #667387;
    font-size: .8rem;
    font-weight: 720;
}

.shop-addon {
    display: flex;
    align-items: center;
    gap: .8rem;
    margin: auto 0 1.2rem;
    padding-top: 1rem;
    border-top: 1px solid var(--shop-line);
}

.shop-addon strong { color: #b82719; font-size: 1.75rem; white-space: nowrap; }
.shop-addon span, .shop-addon small { display: block; }
.shop-addon span { color: #283950; font-size: .77rem; font-weight: 750; line-height: 1.35; }
.shop-addon small { margin-top: .15rem; color: #748095; font-size: .67rem; font-weight: 550; }

.shop-plan-footer { display: grid; gap: .8rem; margin-top: 0; }
.shop-plan-footer .button { justify-content: center; width: 100%; white-space: nowrap; }
.shop-detail-link { justify-self: center; color: #a92318; font-size: .78rem; font-weight: 800; text-underline-offset: 3px; }
.shop-detail-link:hover { text-decoration: underline; }

.shop-price-note {
    margin-top: 1.25rem;
    color: #667387;
    font-size: .72rem;
    line-height: 1.55;
    text-align: center;
}

.shop-desktop-note {
    margin-top: 1rem;
    color: #526178;
    font-size: .94rem;
    line-height: 1.6;
    text-align: center;
}

.shop-desktop-note a { color: #a92318; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }

.shop-order-info {
    display: grid;
    grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(3rem, 7vw, 7rem);
    margin-top: clamp(2.75rem, 4vw, 4rem);
    padding-top: clamp(2.6rem, 4vw, 4rem);
    padding-bottom: clamp(2.6rem, 4vw, 4rem);
    border-top: 1px solid var(--shop-line);
}

.shop-order-info h2,
.shop-requirements h2 {
    font-size: clamp(2rem, 3vw, 2.75rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.shop-order-copy { display: grid; gap: 1rem; color: #526178; font-size: .94rem; line-height: 1.7; }
.shop-order-copy a { color: #a92318; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }

.shop-requirements {
    padding: clamp(4rem, 7vw, 7rem) 0;
    border-top: 1px solid rgb(199 71 44 / 12%);
    background: linear-gradient(115deg, rgb(255 248 244 / 88%), rgb(255 231 217 / 52%));
}

.shop-requirements-grid {
    display: grid;
    grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: start;
}

.shop-requirements header > p:last-child {
    max-width: 28rem;
    margin-top: 1rem;
    color: #5a687d;
    line-height: 1.65;
}

.shop-requirements dl {
    overflow: hidden;
    border: 1px solid rgb(187 76 51 / 17%);
    border-radius: 1rem;
    background: rgb(255 255 255 / 62%);
    box-shadow: 0 1.2rem 3rem rgb(91 41 29 / 7%);
    backdrop-filter: blur(14px);
}

.shop-requirements dl div {
    display: grid;
    grid-template-columns: 10.5rem 1fr;
    gap: 1.5rem;
    padding: 1.05rem 1.35rem;
    border-bottom: 1px solid rgb(155 119 106 / 15%);
}

.shop-requirements dl div:last-child { border-bottom: 0; }
.shop-requirements dt { color: #17263b; font-weight: 850; }
.shop-requirements dd { color: #526178; line-height: 1.55; }

@media (max-width: 1120px) {
    .shop-plans { grid-template-columns: 1fr; max-width: 45rem; }
    .shop-plan-featured { transform: none; }
    .shop-order-info,
    .shop-requirements-grid { grid-template-columns: 1fr; gap: 2.25rem; }
}

@media (max-width: 620px) {
    .shop-hero { text-align: left; }
    .shop-hero h1 { font-size: 2.65rem; }
    .shop-plan { padding: 1.35rem; }
    .shop-plan-head { min-height: 0; padding-right: 0; }
    .shop-plan-footer .button { padding-inline: .8rem; font-size: .76rem; }
    .shop-requirements dl div { grid-template-columns: 1fr; gap: .35rem; }
}

/* Online-Editionsberater */
.advisor-page {
    --advisor-line: rgb(166 67 47 / 16%);
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding-bottom: clamp(4.5rem, 7vw, 7rem);
    color: #142238;
    background:
        radial-gradient(45rem 22rem at 82% 12%, rgb(240 91 37 / 10%), transparent 72%),
        linear-gradient(180deg, #fff 0%, #f7f8f8 48%, #fff 100%);
}

.advisor-breadcrumb {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding-top: 1.5rem;
    color: #a80b12;
    font-size: .82rem;
    font-weight: 720;
}

.advisor-breadcrumb span[aria-current] { color: #6e7787; }
.advisor-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 4px; }

.advisor-hero {
    padding-top: clamp(3.5rem, 6vw, 6rem);
    padding-bottom: clamp(2.8rem, 5vw, 4.8rem);
    text-align: center;
}

.advisor-kicker,
.advisor-step {
    margin-bottom: .65rem;
    color: #ad2017;
    font-size: .76rem;
    font-weight: 850;
}

.advisor-hero h1 {
    color: #0f1d34;
    font-size: clamp(3rem, 4.3vw, 4.35rem);
    line-height: 1.04;
    letter-spacing: -.045em;
}

.advisor-hero > p:last-child {
    max-width: 58rem;
    margin: 1.25rem auto 0;
    color: #53647d;
    font-size: 1.05rem;
    line-height: 1.65;
}

.advisor-layout {
    display: grid;
    grid-template-columns: minmax(20rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(2rem, 4vw, 4.25rem);
    align-items: start;
}

.advisor-filter {
    overflow: hidden;
    border: 1px solid rgb(255 255 255 / 82%);
    border-radius: 1.25rem;
    outline: 1px solid rgb(112 80 66 / 10%);
    background: linear-gradient(145deg, rgb(255 255 255 / 84%), rgb(255 255 255 / 58%));
    box-shadow: inset 0 1px rgb(255 255 255 / 96%), 0 1.4rem 3.5rem rgb(45 36 31 / 8%);
    backdrop-filter: blur(20px) saturate(120%);
}

.advisor-filter-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.65rem 1.75rem 1.35rem;
    border-bottom: 1px solid var(--advisor-line);
}

.advisor-filter-heading h2,
.advisor-results-heading h2 {
    color: #17263b;
    font-size: clamp(1.65rem, 2.2vw, 2.15rem);
    letter-spacing: -.035em;
}

.advisor-filter-icon {
    display: grid;
    width: 2.6rem;
    height: 2.6rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: .8rem;
    color: #fff;
    background: linear-gradient(135deg, #c62b1d, #ec6931);
    box-shadow: 0 .8rem 1.6rem rgb(191 43 25 / 18%);
    font-size: 1.1rem;
    font-weight: 900;
}

.advisor-groups { padding: .4rem 1.75rem; }

.advisor-group {
    margin: 0;
    padding: 1.25rem 0;
    border: 0;
    border-bottom: 1px solid var(--advisor-line);
}

.advisor-group:last-child { border-bottom: 0; }

.advisor-group legend {
    width: 100%;
    margin-bottom: .75rem;
    color: #17263b;
    font-size: .86rem;
    font-weight: 850;
}

.advisor-options { display: grid; gap: .62rem; }

.advisor-option {
    display: grid;
    grid-template-columns: 1.15rem minmax(0, 1fr);
    gap: .65rem;
    align-items: start;
    color: #526178;
    cursor: pointer;
    font-size: .83rem;
    line-height: 1.45;
}

.advisor-option input {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

.advisor-checkbox {
    position: relative;
    display: grid;
    width: 1.15rem;
    height: 1.15rem;
    margin-top: .05rem;
    place-items: center;
    border: 1px solid rgb(82 97 120 / 34%);
    border-radius: .28rem;
    background: rgb(255 255 255 / 76%);
    box-shadow: inset 0 1px 2px rgb(46 53 64 / 5%);
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.advisor-option:hover .advisor-checkbox { border-color: rgb(194 42 28 / 55%); }

.advisor-option input:focus-visible + .advisor-checkbox {
    outline: 3px solid rgb(220 67 36 / 20%);
    outline-offset: 2px;
}

.advisor-option input:checked + .advisor-checkbox {
    border-color: #c52b1d;
    color: #fff;
    background: linear-gradient(135deg, #bd2118, #ec6530);
    box-shadow: 0 .35rem .8rem rgb(190 40 25 / 16%);
}

.advisor-option input:checked + .advisor-checkbox::after {
    content: "✓";
    font-size: .75rem;
    font-weight: 900;
    line-height: 1;
}

.advisor-option:not(.advisor-option-locked):active .advisor-checkbox { transform: scale(.92); }
.advisor-option-locked { color: #263750; cursor: default; font-weight: 680; }
.advisor-option-locked .advisor-checkbox { opacity: .86; }

.advisor-filter-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem 1.75rem 1.5rem;
    border-top: 1px solid var(--advisor-line);
    background: rgb(255 250 247 / 42%);
}

.advisor-filter.is-enhanced .advisor-apply { display: none; }

.advisor-reset {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    min-height: 2.7rem;
    padding: .6rem .85rem;
    border: 0;
    color: #a92318;
    background: transparent;
    cursor: pointer;
    font: inherit;
    font-size: .8rem;
    font-weight: 800;
}

.advisor-reset:hover { text-decoration: underline; text-underline-offset: 4px; }

.advisor-results {
    position: sticky;
    top: 7.5rem;
    min-width: 0;
}

.advisor-results-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1.4rem;
}

.advisor-status {
    max-width: 15rem;
    color: #68758a;
    font-size: .78rem;
    line-height: 1.45;
    text-align: right;
}

.advisor-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
    align-items: stretch;
    transition: opacity .16s ease;
}

.advisor-page.is-updating .advisor-cards { opacity: .55; }

.advisor-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 28rem;
    flex-direction: column;
    padding: 1.35rem;
    border: 1px solid rgb(255 255 255 / 86%);
    border-radius: 1.15rem;
    outline: 1px solid rgb(112 80 66 / 11%);
    background: linear-gradient(145deg, rgb(255 255 255 / 86%), rgb(255 255 255 / 58%));
    box-shadow: inset 0 1px rgb(255 255 255 / 96%), 0 1.2rem 2.8rem rgb(45 36 31 / 8%);
    backdrop-filter: blur(18px) saturate(118%);
}

.advisor-card[hidden] { display: none; }

.advisor-card-head {
    display: grid;
    grid-template-columns: 3.25rem minmax(0, 1fr);
    align-items: center;
    gap: .75rem;
    min-height: 4rem;
    padding-top: .35rem;
}

.advisor-card-head img {
    width: 3.25rem;
    height: 2.65rem;
    object-fit: contain;
    filter: drop-shadow(0 .5rem .65rem rgb(183 34 18 / 14%));
}

.advisor-card h3 {
    color: #b12619;
    font-size: 1.18rem;
    line-height: 1.12;
    letter-spacing: -.025em;
}

.advisor-card-summary {
    min-height: 6.8rem;
    margin-top: .85rem;
    color: #526178;
    font-size: .8rem;
    font-weight: 620;
    line-height: 1.5;
}

.advisor-card-price {
    display: flex;
    align-items: baseline;
    gap: .35rem;
    margin: 1rem 0 1.15rem;
    padding-top: 1rem;
    border-top: 1px solid var(--advisor-line);
}

.advisor-card-price strong {
    color: #bd2519;
    font-size: 1.8rem;
    line-height: 1;
    letter-spacing: -.045em;
}

.advisor-card-price span { color: #283950; font-size: .72rem; font-weight: 800; }

.advisor-card-links {
    display: grid;
    gap: .55rem;
    margin-bottom: 1.15rem;
}

.advisor-card-links a {
    color: #a92318;
    font-size: .74rem;
    font-weight: 760;
    text-underline-offset: 3px;
}

.advisor-card-links a:hover { text-decoration: underline; }
.advisor-buy { justify-content: center; width: 100%; margin-top: auto; }

.advisor-empty {
    padding: 2rem;
    border: 1px solid var(--advisor-line);
    border-radius: 1rem;
    background: rgb(255 255 255 / 68%);
    text-align: center;
}

.advisor-empty h3 { color: #17263b; }
.advisor-empty p { margin: .65rem 0 1.2rem; color: #5a687d; }

.advisor-price-note {
    margin-top: 1.25rem;
    color: #68758a;
    font-size: .68rem;
    line-height: 1.55;
}

@media (max-width: 1180px) {
    .advisor-layout { grid-template-columns: minmax(18rem, .62fr) minmax(0, 1.38fr); gap: 2rem; }
    .advisor-cards { grid-template-columns: 1fr; }
    .advisor-card { min-height: 0; }
    .advisor-card-summary { min-height: 0; }
}

@media (max-width: 900px) {
    .advisor-layout { grid-template-columns: 1fr; }
    .advisor-results { position: static; }
    .advisor-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
    .advisor-hero { text-align: left; }
    .advisor-hero h1 { font-size: 2.65rem; }
    .advisor-results-heading { align-items: start; flex-direction: column; gap: .65rem; }
    .advisor-status { max-width: none; text-align: left; }
    .advisor-cards { grid-template-columns: 1fr; }
    .advisor-groups { padding-inline: 1.3rem; }
    .advisor-filter-heading,
    .advisor-filter-actions { padding-inline: 1.3rem; }
}

/* Kompakter Hero-Standard für Subseiten */
.subpage-breadcrumb {
    padding-top: 1.25rem !important;
    padding-bottom: 0 !important;
}

.subpage-hero {
    padding-top: clamp(1.75rem, 2.8vw, 2.5rem) !important;
    padding-bottom: clamp(2rem, 3.2vw, 2.85rem) !important;
}

.subpage-hero--compact {
    padding-top: clamp(.75rem, 1.4vw, 1.25rem) !important;
    padding-bottom: clamp(1.25rem, 2vw, 1.75rem) !important;
}

/* Profi-Edition: heller rot-oranger Auftritt als Vergleich zur Standard-Seite */
.pro2-page {
    --std2-red: #cf3d24;
    --std2-deep-red: #b92d1e;
    --std2-orange: #f18a38;
    background:
        radial-gradient(50rem 35rem at 101% 8%, rgb(241 138 56 / 16%), transparent 72%),
        radial-gradient(42rem 34rem at -7% 50%, rgb(217 68 38 / 7%), transparent 75%),
        radial-gradient(48rem 32rem at 88% 78%, rgb(239 107 45 / 9%), transparent 72%),
        #fffdfb;
}

.pro2-page .pro2-light-field {
    top: 9%;
    right: 2%;
    bottom: 20%;
    left: 0;
    width: auto;
    aspect-ratio: auto;
    transform: rotate(-5deg);
    border-radius: 42% 58% 48% 52% / 54% 42% 58% 46%;
    opacity: .88;
    background:
        radial-gradient(circle at 72% 28%, rgb(255 174 79 / 78%), transparent 40%),
        radial-gradient(circle at 25% 68%, rgb(221 59 35 / 58%), transparent 48%),
        linear-gradient(120deg, rgb(226 64 37 / 58%), rgb(241 138 56 / 66%));
    filter: blur(18px);
}

.pro2-page .std2-hero-panel {
    grid-template-columns: minmax(20rem, 1fr) minmax(0, 2fr);
    gap: 2.5rem 4rem;
}

.pro2-page .std2-hero-copy h1 {
    font-size: clamp(2.65rem, 3.45vw, 3.45rem);
    line-height: 1.08;
}

.pro2-title-line {
    display: block;
    white-space: nowrap;
}

.pro2-page .pro2-function-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: 1.25rem;
}

.pro2-page .pro2-function-grid article {
    padding: 1.5rem;
    border: 1px solid rgb(207 61 36 / 14%);
    border-radius: 1rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 72%), rgb(255 247 242 / 43%));
    box-shadow: 0 1rem 2.5rem rgb(79 36 25 / 6%);
    backdrop-filter: blur(14px);
}

.pro2-page .pro2-function-grid h3 {
    display: block;
    margin-bottom: 1.25rem;
    font-size: 1.15rem;
}

.pro2-page .pro2-additional {
    border-color: rgb(224 84 42 / 28%);
    background: linear-gradient(145deg, rgb(255 250 246 / 92%), rgb(255 237 226 / 58%));
}

.pro2-included-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem;
}

.pro2-page .pro2-additional li::before {
    content: "+";
    color: #cf3d24;
    font-size: 1.1rem;
}

.pro2-page .std2-facts div:nth-child(2)::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h14a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H9l-4 3v-3a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z'/%3E%3Cpath d='M7 8h10M7 12h7'/%3E%3C/svg%3E");
}

.pro2-page .std2-facts div:nth-child(3)::before {
    content: "€";
    display: grid;
    place-items: center;
    mask-image: none;
    color: var(--std2-red);
    background: none;
    font-size: 2rem;
    font-weight: 800;
    line-height: 1;
}

.pro2-page .std2-contact {
    background: linear-gradient(105deg, #d74425 0%, #e85c2a 54%, #f18a38 100%);
    box-shadow: 0 1.25rem 3rem rgb(181 66 34 / 18%);
}

.pro2-page .std2-contact .std2-eyebrow {
    color: #fff1e8;
}

@media (max-width: 820px) {
    .pro2-page .std2-hero-panel {
        grid-template-columns: 1fr;
    }

    .pro2-page .pro2-light-field {
        top: 10%;
        right: 8%;
        bottom: 18%;
        left: 4%;
    }

    .pro2-page .pro2-function-grid,
    .pro2-included-columns {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .pro2-page .std2-hero-visual {
        min-height: 17.5rem;
    }

    .pro2-page .std2-hero-copy h1 {
        font-size: 2.15rem;
    }

    .pro2-title-line {
        display: inline;
        white-space: normal;
    }

    .pro2-title-line + .pro2-title-line::before {
        content: " ";
    }
}

.subpage-hero h1 {
    font-size: clamp(2.7rem, 3.75vw, 3.75rem) !important;
    line-height: 1.04;
}

.subpage-hero .subpage-hero-summary {
    width: 100%;
    max-width: none !important;
    margin: .9rem auto 0;
    font-size: clamp(.88rem, 1.05vw, .95rem) !important;
    line-height: 1.5;
    white-space: nowrap;
}

/* Produktseiten mit eigenständigem, zweispaltigem Hero folgen denselben kompakten Abständen. */
.std2-hero {
    padding-top: .45rem;
    padding-bottom: 3.25rem;
}

.std2-hero-panel { padding-top: .75rem; }
.std2-hero-visual { min-height: 21rem; }

.std2-hero-copy h1 {
    font-size: clamp(2.65rem, 3.8vw, 3.75rem);
    line-height: 1.01;
}

.std2-lead {
    margin-bottom: 1.25rem;
    font-size: clamp(.88rem, 1.05vw, 1rem);
    line-height: 1.45;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .subpage-hero .subpage-hero-summary,
    .std2-lead { white-space: normal; }
}

@media (max-width: 720px) {
    .subpage-breadcrumb { padding-top: 1rem !important; }
    .subpage-hero {
        padding-top: 1.75rem !important;
        padding-bottom: 2.25rem !important;
    }
    .subpage-hero--compact {
        padding-top: 1.1rem !important;
        padding-bottom: 1.5rem !important;
    }
    .subpage-hero h1 { font-size: 2.55rem !important; }
}

/* Persönlicher Demo-Zugang */
.demo-page {
    overflow: hidden;
    color: var(--text);
    background:
        radial-gradient(44rem 32rem at 102% 9%, rgb(242 126 55 / 13%), transparent 72%),
        radial-gradient(38rem 28rem at -8% 52%, rgb(205 61 36 / 6%), transparent 74%),
        #fffdfb;
}

.demo-hero {
    padding: clamp(1rem, 2vw, 1.75rem) 0 clamp(2.25rem, 3.5vw, 3.5rem);
}

.demo-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(24rem, .94fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: center;
}

.demo-hero-copy h1 {
    max-width: 48rem;
    font-size: clamp(2.8rem, 3.55vw, 3.55rem);
    line-height: 1.02;
    letter-spacing: -.055em;
}

.demo-hero-copy h1 span,
.demo-section-heading-left h2 span {
    display: block;
    white-space: nowrap;
}

.demo-hero-lead {
    max-width: 47rem;
    margin: 1.25rem 0 0;
    color: var(--text-soft);
    font-size: clamp(1.02rem, 1.3vw, 1.2rem);
    line-height: 1.65;
}

.demo-hero-benefits {
    display: grid;
    gap: .65rem;
    margin: 1.6rem 0 0;
    padding: 0;
    list-style: none;
}

.demo-hero-benefits li {
    position: relative;
    padding-left: 1.65rem;
    color: #283a53;
    font-weight: 650;
}

.demo-hero-benefits li::before {
    position: absolute;
    left: 0;
    color: #05843c;
    content: "✓";
    font-weight: 900;
}

.demo-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.4rem;
    align-items: center;
    margin-top: 2rem;
}

.demo-text-link {
    color: #ae2117;
    font-weight: 800;
    text-decoration: none;
}

.demo-text-link:hover {
    text-decoration: underline;
    text-underline-offset: .3rem;
}

.demo-request-note {
    margin: .8rem 0 0;
    color: #65748a;
    font-size: .78rem;
}

.demo-browser-visual {
    overflow: hidden;
    border: 1px solid rgb(189 64 38 / 18%);
    border-radius: 1.5rem;
    background: rgb(255 255 255 / 68%);
    box-shadow: 0 2rem 5rem rgb(86 43 30 / 13%);
    transform: rotate(1.2deg);
    backdrop-filter: blur(20px);
}

.demo-browser-bar {
    display: flex;
    gap: .45rem;
    align-items: center;
    min-height: 3.25rem;
    padding: 0 1.1rem;
    border-bottom: 1px solid rgb(176 82 56 / 14%);
    background: rgb(255 255 255 / 75%);
}

.demo-browser-bar > span {
    width: .68rem;
    height: .68rem;
    border-radius: 50%;
    background: #e7633c;
}

.demo-browser-bar > span:nth-child(2) { background: #f2a33d; }
.demo-browser-bar > span:nth-child(3) { background: #77af64; }

.demo-browser-bar small {
    margin-left: .5rem;
    color: #607086;
    font-weight: 700;
}

.demo-browser-content {
    display: flex;
    min-height: 20rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: clamp(2rem, 4vw, 3.5rem);
    text-align: center;
    background:
        radial-gradient(circle at 50% 43%, rgb(238 101 48 / 18%), transparent 36%),
        linear-gradient(145deg, rgb(255 255 255 / 72%), rgb(255 242 234 / 72%));
}

.demo-browser-content img {
    width: 5.25rem;
    height: 5.25rem;
    object-fit: contain;
    filter: drop-shadow(0 .8rem 1rem rgb(124 38 24 / 20%));
}

.demo-mode-label {
    margin-top: 1.25rem;
    padding: .35rem .7rem;
    border: 1px solid rgb(198 53 32 / 18%);
    border-radius: 999px;
    color: #bc2e20;
    background: rgb(255 255 255 / 74%);
    font-size: .72rem;
    font-weight: 850;
}

.demo-browser-content strong {
    margin-top: .75rem;
    font-size: clamp(1.4rem, 2vw, 1.8rem);
}

.demo-browser-content p {
    max-width: 25rem;
    margin: .65rem 0 0;
    color: #4b5d74;
    line-height: 1.55;
}

.demo-browser-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    align-items: center;
    justify-content: center;
    margin-top: 1.5rem;
}

.demo-browser-tags span {
    position: relative;
    padding: .4rem .65rem;
    border-radius: .55rem;
    color: #47586e;
    background: rgb(255 255 255 / 76%);
    font-size: .72rem;
    font-weight: 700;
}

.demo-browser-tags span + span { margin-left: 1.2rem; }

.demo-browser-tags span + span::before {
    position: absolute;
    top: 50%;
    left: -1.35rem;
    color: #d94a28;
    content: "→";
    font-size: 1rem;
    font-weight: 900;
    transform: translateY(-50%);
}

.demo-browser-progress {
    overflow: hidden;
    width: min(100%, 25rem);
    height: .42rem;
    margin-top: .8rem;
    border-radius: 999px;
    background: rgb(203 84 54 / 12%);
}

.demo-browser-progress span {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #d83d24 0%, #ec642d 52%, #f18a38 100%);
}

.demo-flow-section,
.demo-capabilities-section,
.demo-faq-section {
    padding: clamp(4rem, 7vw, 7rem) 0;
    border-top: 1px solid rgb(188 80 53 / 13%);
}

.demo-flow-section { padding-top: clamp(2.75rem, 4.5vw, 4.5rem); }

.demo-section-heading {
    max-width: 62rem;
    margin: 0 auto clamp(2rem, 4vw, 3.25rem);
    text-align: center;
}

.demo-section-heading h2 {
    font-size: clamp(2.25rem, 3.3vw, 3.35rem);
    line-height: 1.06;
    letter-spacing: -.045em;
}

.demo-section-heading p {
    margin: .9rem 0 0;
    color: var(--text-soft);
    line-height: 1.65;
}

.demo-flow {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    border: 1px solid rgb(189 64 38 / 15%);
    border-radius: 1.4rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 72%), rgb(255 247 242 / 60%));
    box-shadow: 0 1.5rem 4rem rgb(79 36 25 / 7%);
    list-style: none;
    backdrop-filter: blur(16px);
}

.demo-flow li {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    gap: 1rem;
    padding: .7rem clamp(1rem, 2.4vw, 2rem);
}

.demo-flow li + li { border-left: 1px solid rgb(188 80 53 / 15%); }

.demo-flow-number {
    display: grid;
    width: 2.65rem;
    height: 2.65rem;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, #d63c24, #f18438);
    box-shadow: 0 .65rem 1.5rem rgb(184 59 32 / 18%);
    font-weight: 900;
}

.demo-flow h3 {
    margin: .15rem 0 .5rem;
    font-size: 1.12rem;
}

.demo-flow p {
    margin: 0;
    color: #4b5d74;
    font-size: .92rem;
    line-height: 1.6;
}

.demo-capabilities-layout,
.demo-faq-layout {
    display: grid;
    grid-template-columns: minmax(17rem, .75fr) minmax(0, 1.55fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: start;
}

.demo-capabilities-layout {
    grid-template-columns: minmax(23rem, .9fr) minmax(0, 1.55fr);
}

.demo-capabilities-layout .demo-section-heading h2 {
    font-size: clamp(2.15rem, 2.8vw, 3rem);
}

.demo-section-heading-left {
    margin: 0;
    text-align: left;
}

.demo-capabilities {
    border-top: 1px solid rgb(188 80 53 / 18%);
}

.demo-capabilities article {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: .15rem 1rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid rgb(188 80 53 / 18%);
}

.demo-capabilities article > span {
    grid-row: 1 / span 2;
    color: #d84828;
    font-size: .78rem;
    font-weight: 900;
}

.demo-capabilities h3 { font-size: 1.18rem; }

.demo-capabilities p {
    margin: .35rem 0 0;
    color: #4b5d74;
    line-height: 1.65;
}

.demo-faq-section { background: rgb(255 249 245 / 55%); }

.demo-faq-list {
    border-top: 1px solid rgb(188 80 53 / 18%);
}

.demo-faq-list details { border-bottom: 1px solid rgb(188 80 53 / 18%); }

.demo-faq-list summary {
    position: relative;
    padding: 1.35rem 2.5rem 1.35rem 0;
    cursor: pointer;
    font-weight: 800;
    list-style: none;
}

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

.demo-faq-list summary::after {
    position: absolute;
    top: 50%;
    right: .25rem;
    color: #d84828;
    content: "+";
    font-size: 1.5rem;
    transform: translateY(-50%);
}

.demo-faq-list details[open] summary::after { content: "−"; }

.demo-faq-list p {
    margin: -.25rem 2.5rem 1.4rem 0;
    color: #4b5d74;
    line-height: 1.65;
}

.demo-final-section { padding: clamp(4rem, 7vw, 7rem) 0; }

.demo-final-cta {
    display: flex;
    gap: 2rem;
    align-items: center;
    justify-content: space-between;
    padding: clamp(1.7rem, 3.2vw, 2.8rem);
    border: 1px solid #d94622;
    border-radius: 1.35rem;
    color: #fff;
    background: linear-gradient(105deg, #d84427 0%, #eb632d 55%, #f18a38 100%);
    box-shadow: 0 1.4rem 3.4rem rgb(181 66 34 / 18%);
}

.demo-final-cta h2 {
    color: #fff;
    font-size: clamp(1.65rem, 2.6vw, 2.5rem);
    line-height: 1.08;
}

.demo-final-cta p {
    margin: .55rem 0 0;
    color: #fff7f2;
}

.demo-final-cta .button { flex: 0 0 auto; }

@media (max-width: 1050px) {
    .demo-hero-grid { grid-template-columns: 1fr; gap: 3rem; }
    .demo-hero-copy h1 { font-size: clamp(2.8rem, 5vw, 3.35rem); }
    .demo-browser-content { min-height: 19rem; }
    .demo-flow li { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
    .demo-hero-grid,
    .demo-capabilities-layout,
    .demo-faq-layout { grid-template-columns: 1fr; }

    .demo-browser-visual {
        width: min(100%, 34rem);
        margin: 0 auto;
        transform: none;
    }

    .demo-flow { grid-template-columns: 1fr; }
    .demo-flow li { grid-template-columns: 3rem minmax(0, 1fr); padding: 1.25rem .5rem; }
    .demo-flow li + li { border-top: 1px solid rgb(188 80 53 / 15%); border-left: 0; }
    .demo-capabilities-layout,
    .demo-faq-layout { gap: 2.25rem; }
}

@media (max-width: 600px) {
    .demo-hero { padding-bottom: 3.5rem; }
    .demo-hero-copy h1 { font-size: clamp(1.75rem, 8vw, 2rem); }
    .demo-hero-copy h1 span { white-space: nowrap; }
    .demo-capabilities-layout .demo-section-heading h2 { font-size: clamp(1.8rem, 8vw, 2rem); }
    .demo-hero-actions { align-items: stretch; flex-direction: column; }
    .demo-hero-actions .button { width: 100%; max-width: 100%; text-align: center; }
    .demo-browser-content { min-height: 18rem; padding-inline: 1.4rem; }
    .demo-flow { padding: 1rem; }
    .demo-flow li { grid-template-columns: 2.65rem minmax(0, 1fr); }
    .demo-final-cta { align-items: stretch; flex-direction: column; }
    .demo-final-cta .button { text-align: center; }
}

/* Neuerungen: Wechsel zur Web-App und Versionshistorie */
.news-page {
    overflow: hidden;
    color: var(--text);
    background:
        radial-gradient(46rem 34rem at 101% 7%, rgb(241 138 56 / 15%), transparent 72%),
        radial-gradient(42rem 30rem at -8% 45%, rgb(213 65 38 / 6%), transparent 74%),
        #fffdfb;
}

.news-hero { padding: clamp(1rem, 2vw, 1.75rem) 0 clamp(3.5rem, 6vw, 6rem); }

.news-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(24rem, .85fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: center;
}

.news-status {
    display: flex;
    gap: .65rem;
    align-items: center;
    margin: 0 0 1rem;
    color: #b22b1e;
    font-size: .86rem;
    font-weight: 800;
}

.news-status strong {
    min-width: 0;
    font: inherit;
    line-height: 1.35;
}

.news-status span,
.news-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .26rem .55rem;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, #d33a23, #ee7c35);
    font-size: .65rem;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
    vertical-align: middle;
}

.news-hero-copy h1 {
    max-width: 52rem;
    font-size: clamp(2.75rem, 3.35vw, 3.45rem);
    line-height: 1.04;
    letter-spacing: -.052em;
}

.news-hero-copy h1 span {
    display: block;
    white-space: nowrap;
}

.news-hero-lead {
    max-width: 49rem;
    margin: 1.25rem 0 0;
    color: var(--text-soft);
    font-size: clamp(1rem, 1.22vw, 1.15rem);
    line-height: 1.65;
}

.news-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .9rem;
    margin-top: 1.8rem;
}

.news-transition {
    position: relative;
    display: grid;
    width: min(100%, 30rem);
    grid-template-columns: 1fr auto 1fr;
    gap: 1rem;
    align-items: center;
    justify-self: end;
    padding: clamp(1.25rem, 2.5vw, 2rem);
    border: 1px solid rgb(190 67 39 / 16%);
    border-radius: 1.5rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 74%), rgb(255 243 235 / 63%));
    box-shadow: 0 2rem 5rem rgb(86 43 30 / 12%);
    backdrop-filter: blur(20px);
}

.news-transition-product {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    padding: 1.5rem .75rem;
    border-radius: 1rem;
    text-align: center;
}

.news-transition-product > span {
    margin-bottom: .8rem;
    font-size: .7rem;
    font-weight: 850;
    text-transform: uppercase;
}

.news-transition-product img {
    width: 4.75rem;
    height: 4.75rem;
    object-fit: contain;
}

.news-transition-product strong { margin-top: .75rem; font-size: 1rem; }
.news-transition-product small { margin-top: .25rem; }

.news-transition-desktop {
    color: #536176;
    background: rgb(239 241 244 / 72%);
    filter: saturate(.45);
}

.news-transition-web {
    color: #fff;
    background: linear-gradient(145deg, #d84526, #ef8437);
    box-shadow: 0 1rem 2.5rem rgb(185 57 31 / 18%);
}

.news-transition-web small { color: #fff4ed; }
.news-transition-arrow { color: #d74427; font-size: 1.7rem; font-weight: 900; }

.news-benefits-section,
.news-current-section,
.news-more-section,
.news-history-section {
    padding: clamp(4rem, 7vw, 7rem) 0;
    border-top: 1px solid rgb(188 80 53 / 13%);
}

.news-section-heading { max-width: 48rem; margin: 0 0 clamp(2rem, 4vw, 3.25rem); }

.news-section-heading h2 {
    font-size: clamp(2.25rem, 3.15vw, 3.2rem);
    line-height: 1.07;
    letter-spacing: -.045em;
}

.news-section-heading p {
    margin: .85rem 0 0;
    color: var(--text-soft);
    line-height: 1.65;
}

.news-section-heading-centered { max-width: 62rem; margin-inline: auto; text-align: center; }

.news-benefits {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    border-block: 1px solid rgb(188 80 53 / 16%);
}

.news-benefits div { padding: 1.7rem clamp(1rem, 2vw, 1.8rem); }
.news-benefits div + div { border-left: 1px solid rgb(188 80 53 / 16%); }
.news-benefits dt { font-size: 1.12rem; font-weight: 850; }
.news-benefits dd { margin: .65rem 0 0; color: #4b5d74; font-size: .9rem; line-height: 1.65; }

.news-current-section { background: rgb(255 249 245 / 48%); }

.news-workflow {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border: 1px solid rgb(189 64 38 / 16%);
    border-radius: 1.45rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 78%), rgb(255 246 240 / 65%));
    box-shadow: 0 1.6rem 4rem rgb(79 36 25 / 8%);
    backdrop-filter: blur(16px);
}

.news-workflow > section { min-width: 0; padding: clamp(1.4rem, 2.4vw, 2rem); }
.news-workflow > section + section { border-left: 1px solid rgb(188 80 53 / 15%); }

.news-workflow header {
    display: flex;
    gap: .75rem;
    align-items: center;
    margin-bottom: 1.25rem;
}

.news-workflow header > span {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: linear-gradient(135deg, #d83e25, #ef8437);
    font-size: .75rem;
    font-weight: 900;
}

.news-workflow h3 { font-size: 1.05rem; }

.news-workflow ul,
.news-version-seven ul,
.news-archive ul {
    display: grid;
    gap: .7rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.news-workflow li,
.news-version-seven li,
.news-archive li {
    position: relative;
    padding-left: 1.15rem;
    color: #43536a;
    font-size: .88rem;
    line-height: 1.5;
}

.news-workflow li::before,
.news-version-seven li::before,
.news-archive li::before {
    position: absolute;
    top: .64em;
    left: 0;
    width: .35rem;
    height: .35rem;
    border-radius: 50%;
    background: #dc4b29;
    content: "";
}

.news-workflow .news-badge { margin-left: .3rem; }

.news-more-layout {
    display: grid;
    grid-template-columns: minmax(18rem, .75fr) minmax(0, 1.55fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: start;
}

.news-more-list { border-top: 1px solid rgb(188 80 53 / 18%); }

.news-more-list article {
    display: grid;
    grid-template-columns: 7.5rem minmax(0, 1fr);
    gap: 1.25rem;
    padding: 1.45rem 0;
    border-bottom: 1px solid rgb(188 80 53 / 18%);
}

.news-more-list article > span:not(.news-badge) {
    color: #d44125;
    font-size: .75rem;
    font-weight: 900;
    text-transform: uppercase;
}

.news-more-list .news-badge { align-self: start; justify-self: start; }
.news-more-list h3 { font-size: 1.12rem; }
.news-more-list p { margin: .35rem 0 0; color: #4b5d74; line-height: 1.65; }

.news-history-section { background: rgb(255 249 245 / 46%); }

.news-version-seven {
    overflow: hidden;
    border: 1px solid rgb(189 64 38 / 16%);
    border-radius: 1.35rem;
    background: rgb(255 255 255 / 70%);
    box-shadow: 0 1.4rem 3.5rem rgb(79 36 25 / 6%);
}

.news-version-seven > header {
    display: flex;
    gap: 1rem;
    align-items: center;
    padding: 1.4rem clamp(1.4rem, 3vw, 2.25rem);
    border-bottom: 1px solid rgb(188 80 53 / 15%);
}

.news-version-seven > header span { color: #d34225; font-size: .74rem; font-weight: 900; text-transform: uppercase; }
.news-version-seven > header h3 { font-size: 1.35rem; }

.news-version-seven-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.news-version-seven-grid section { padding: 1.55rem clamp(1.4rem, 3vw, 2.25rem); border-bottom: 1px solid rgb(188 80 53 / 13%); }
.news-version-seven-grid section:nth-child(even) { border-left: 1px solid rgb(188 80 53 / 13%); }
.news-version-seven-grid h4 { font-size: 1.05rem; }
.news-version-seven-grid p { margin: .55rem 0 0; color: #4b5d74; line-height: 1.65; }

.news-archive { margin-top: 2rem; border-top: 1px solid rgb(188 80 53 / 18%); }
.news-archive details { border-bottom: 1px solid rgb(188 80 53 / 18%); }

.news-archive summary {
    position: relative;
    padding: 1.3rem 2.5rem 1.3rem 0;
    cursor: pointer;
    font-weight: 850;
    list-style: none;
}

.news-archive summary::-webkit-details-marker { display: none; }
.news-archive summary span { display: inline-block; min-width: 6.5rem; color: #d34225; font-size: .72rem; text-transform: uppercase; }
.news-archive summary::after { position: absolute; top: 50%; right: .3rem; color: #d34225; content: "+"; font-size: 1.45rem; transform: translateY(-50%); }
.news-archive details[open] summary::after { content: "−"; }
.news-archive details > ul { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 0 1.5rem 6.5rem; }
.news-history-link { display: inline-block; margin: 0 0 1.5rem 6.5rem; color: #ae2117; font-weight: 800; }
.news-history-link:hover { text-decoration: underline; text-underline-offset: .3rem; }

.news-final-section { padding: clamp(4rem, 7vw, 7rem) 0; }

.news-final-cta {
    display: flex;
    gap: 2rem;
    align-items: center;
    justify-content: space-between;
    padding: clamp(1.7rem, 3.2vw, 2.8rem);
    border: 1px solid #d94622;
    border-radius: 1.35rem;
    color: #fff;
    background: linear-gradient(105deg, #d84427 0%, #eb632d 55%, #f18a38 100%);
    box-shadow: 0 1.4rem 3.4rem rgb(181 66 34 / 18%);
}

.news-final-cta h2 { color: #fff; font-size: clamp(1.65rem, 2.6vw, 2.5rem); line-height: 1.08; }
.news-final-cta p { margin: .55rem 0 0; color: #fff7f2; }
.news-final-cta .button { flex: 0 0 auto; }

@media (max-width: 1120px) {
    .news-hero-grid { grid-template-columns: 1fr; }
    .news-transition { width: min(100%, 42rem); }
    .news-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .news-benefits div:nth-child(3) { border-top: 1px solid rgb(188 80 53 / 16%); border-left: 0; }
    .news-benefits div:nth-child(4) { border-top: 1px solid rgb(188 80 53 / 16%); }
    .news-workflow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .news-workflow > section:nth-child(3) { border-top: 1px solid rgb(188 80 53 / 15%); border-left: 0; }
    .news-workflow > section:nth-child(4) { border-top: 1px solid rgb(188 80 53 / 15%); }
}

@media (max-width: 820px) {
    .news-more-layout { grid-template-columns: 1fr; gap: 2.5rem; }
    .news-version-seven-grid { grid-template-columns: 1fr; }
    .news-version-seven-grid section:nth-child(even) { border-left: 0; }
    .news-archive details > ul { grid-template-columns: 1fr; padding-left: 0; }
    .news-history-link { margin-left: 0; }
}

@media (max-width: 600px) {
    .news-hero-copy h1 { font-size: clamp(1.45rem, 6.5vw, 1.65rem); }
    .news-hero-copy h1 span { white-space: nowrap; }
    .news-status { align-items: flex-start; }
    .news-hero-actions { align-items: stretch; flex-direction: column; }
    .news-hero-actions .button { width: 100%; text-align: center; }
    .news-transition { grid-template-columns: 1fr; }
    .news-transition-arrow { transform: rotate(90deg); text-align: center; }
    .news-benefits,
    .news-workflow { grid-template-columns: 1fr; }
    .news-benefits div + div { border-top: 1px solid rgb(188 80 53 / 16%); border-left: 0; }
    .news-workflow > section + section { border-top: 1px solid rgb(188 80 53 / 15%); border-left: 0; }
    .news-more-list article { grid-template-columns: 1fr; gap: .5rem; }
    .news-version-seven > header { align-items: flex-start; flex-direction: column; }
    .news-archive summary span { display: block; min-width: 0; margin-bottom: .25rem; }
    .news-final-cta { align-items: stretch; flex-direction: column; }
    .news-final-cta .button { text-align: center; }
}

/* Business-Edition: Profi-Mustervorlage mit lebendigerem Orange-Korall-Akzent. */
.bus2-page {
    --std2-red: #d94b25;
    --std2-deep-red: #c83a20;
    --std2-orange: #f49a43;
    background:
        radial-gradient(52rem 35rem at 101% 8%, rgb(244 154 67 / 18%), transparent 72%),
        radial-gradient(42rem 34rem at -7% 50%, rgb(225 76 38 / 7%), transparent 75%),
        radial-gradient(48rem 32rem at 88% 78%, rgb(245 130 48 / 10%), transparent 72%),
        #fffdfb;
}

.bus2-page .bus2-light-field {
    top: 6%;
    right: -1%;
    bottom: 18%;
    left: 3%;
    transform: rotate(4deg);
    border-radius: 55% 45% 58% 42% / 45% 58% 42% 55%;
    background:
        radial-gradient(circle at 72% 30%, rgb(255 190 91 / 82%), transparent 40%),
        radial-gradient(circle at 24% 67%, rgb(229 76 39 / 62%), transparent 49%),
        linear-gradient(118deg, rgb(226 72 37 / 60%), rgb(244 154 67 / 70%));
}

.bus2-page .bus2-additional {
    border-color: rgb(229 91 42 / 30%);
    background: linear-gradient(145deg, rgb(255 251 247 / 94%), rgb(255 235 220 / 62%));
}

.bus2-page .pro2-additional li::before { color: var(--std2-red); }

.bus2-page .std2-facts div:nth-child(1)::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='5' rx='8' ry='3'/%3E%3Cpath d='M4 5v6c0 1.7 3.6 3 8 3s8-1.3 8-3V5M4 11v6c0 1.7 3.6 3 8 3s8-1.3 8-3v-6'/%3E%3C/svg%3E");
}

.bus2-page .std2-facts div:nth-child(2)::before {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 7h-5V2'/%3E%3Cpath d='M4 17h5v5'/%3E%3Cpath d='M19 7a8 8 0 0 0-13.5-2L4 7M5 17a8 8 0 0 0 13.5 2l1.5-2'/%3E%3C/svg%3E");
}

.bus2-page .std2-facts div:nth-child(3)::before {
    content: "";
    display: block;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M4 7h10M18 7h2M4 17h2M10 17h10M4 12h4M12 12h8'/%3E%3Ccircle cx='16' cy='7' r='2'/%3E%3Ccircle cx='8' cy='17' r='2'/%3E%3Ccircle cx='10' cy='12' r='2'/%3E%3C/svg%3E");
    color: transparent;
    background: var(--std2-red);
    font-size: inherit;
    font-weight: inherit;
}

.bus2-page .std2-contact {
    background: linear-gradient(105deg, #dc4b27 0%, #ed692f 54%, #f49a43 100%);
    box-shadow: 0 1.25rem 3rem rgb(190 74 34 / 18%);
}

/* Standard-Edition: gleiche Produktseiten-Mustervorlage, aber ein Funktionsmodul. */
.std3-page {
    --std2-red: #d23d24;
    --std2-deep-red: #b92f20;
    --std2-orange: #ee8438;
    background:
        radial-gradient(48rem 33rem at 101% 8%, rgb(238 132 56 / 13%), transparent 72%),
        radial-gradient(42rem 32rem at -7% 50%, rgb(210 61 36 / 6%), transparent 75%),
        #fffdfb;
}

.std3-page .std3-light-field {
    top: 8%;
    right: 1%;
    bottom: 19%;
    left: 2%;
    transform: rotate(-2deg);
    border-radius: 48% 52% 44% 56% / 57% 43% 57% 43%;
    background:
        radial-gradient(circle at 70% 30%, rgb(255 178 84 / 73%), transparent 41%),
        radial-gradient(circle at 25% 68%, rgb(210 61 36 / 54%), transparent 49%),
        linear-gradient(120deg, rgb(214 64 37 / 52%), rgb(238 132 56 / 61%));
}

.std3-function-card {
    padding: 1.55rem 1.65rem 1.75rem;
    border: 1px solid rgb(210 61 36 / 17%);
    border-radius: 1rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 78%), rgb(255 245 239 / 48%));
    box-shadow: 0 1rem 2.75rem rgb(79 36 25 / 7%);
    backdrop-filter: blur(14px);
}

.std3-function-card h3 {
    margin: 0 0 1.35rem;
    font-size: 1.15rem;
}

.std3-function-columns {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem 2rem;
}

.std3-function-card ul {
    display: grid;
    gap: .82rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.std3-function-card li {
    position: relative;
    padding-left: 1.55rem;
    color: #233b61;
    line-height: 1.5;
}

.std3-function-card li::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "✓";
    color: #078435;
    font-weight: 800;
}

@media (max-width: 920px) {
    .std3-function-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
    .std3-function-card { padding: 1.35rem 1.25rem 1.5rem; }
    .std3-function-columns { grid-template-columns: 1fr; }
}

/* Aufbau einer Excel-Datei */
.excel-guide-page {
    padding-bottom: clamp(4rem, 7vw, 7rem);
    background:
        radial-gradient(54rem 36rem at 102% 8%, rgb(241 138 56 / 13%), transparent 72%),
        radial-gradient(46rem 34rem at -8% 44%, rgb(207 61 36 / 6%), transparent 75%),
        #fffdfb;
}

.excel-guide-hero {
    text-align: center;
    padding-top: clamp(1.1rem, 2vw, 1.75rem);
    padding-bottom: clamp(1.25rem, 2.5vw, 2rem);
}

.excel-guide-hero h1 {
    margin-inline: auto;
    max-width: 72rem;
    font-size: clamp(2.5rem, 4.2vw, 4.25rem);
}

.excel-guide-intro,
.excel-guide-section {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: clamp(2rem, 5vw, 5rem);
    align-items: center;
}

.excel-guide-intro {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: clamp(1.5rem, 4vw, 4rem);
    margin-top: clamp(1rem, 2vw, 1.75rem);
    margin-bottom: 0;
    padding-block: clamp(2rem, 4vw, 3.5rem);
    border-bottom: 1px solid rgb(207 61 36 / 11%);
}

.excel-guide-intro h2,
.excel-guide-copy h2,
.excel-guide-download h2 {
    margin: .35rem 0 1rem;
    font-size: clamp(1.9rem, 2.7vw, 2.75rem);
    line-height: 1.1;
    letter-spacing: -.045em;
}

.excel-guide-intro p,
.excel-guide-copy p,
.excel-guide-download p {
    color: #29456e;
    line-height: 1.7;
}

.excel-guide-intro p {
    max-width: 72rem;
    margin: 0;
}

.excel-guide-intro p + p {
    margin-top: .6rem;
}

.excel-guide-callout {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.excel-guide-callout > strong {
    display: block;
    color: #17263b;
    font-size: 1.25rem;
}

.excel-guide-callout .button { margin: 0; }

.excel-guide-section {
    margin-top: 0;
    padding-block: clamp(2.75rem, 5vw, 4.75rem);
    border-top: 1px solid rgb(207 61 36 / 11%);
}

.excel-guide-section > * {
    min-width: 0;
}

.excel-guide-intro + .excel-guide-section {
    border-top: 0;
}

.excel-guide-section--copy-only {
    grid-template-columns: 1fr;
    gap: clamp(1.4rem, 3vw, 2.25rem);
}

.excel-guide-basics-grid {
    display: grid;
    grid-template-columns: 1fr;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.excel-guide-basics-grid article {
    display: grid;
    grid-template-columns: minmax(15rem, .34fr) minmax(0, 1fr);
    column-gap: clamp(2rem, 5vw, 5rem);
    align-items: start;
    padding: clamp(1.4rem, 2.4vw, 2.2rem);
}

.excel-guide-basics-grid article + article {
    border-top: 1px solid rgb(207 61 36 / 12%);
}

.excel-guide-basics-grid h2 {
    grid-row: 1 / span 8;
    margin: 0 0 .8rem;
    color: #0b1830;
    font-size: clamp(1.55rem, 2vw, 2.15rem);
    line-height: 1.12;
    letter-spacing: -.035em;
}

.excel-guide-basics-grid p {
    margin: 0;
    color: #29456e;
    line-height: 1.68;
}

.excel-guide-basics-grid p + p {
    margin-top: .6rem;
}

.excel-guide-section--copy-only .excel-guide-figure {
    padding: clamp(.5rem, 1.25vw, 1rem);
    border-radius: .95rem;
}

.excel-guide-section--reverse .excel-guide-copy { order: 2; }
.excel-guide-section--reverse .excel-guide-figure { order: 1; }

.excel-guide-note {
    padding: 1rem 1.1rem;
    border-left: 3px solid #df5129;
    border-radius: 0 .75rem .75rem 0;
    background: rgb(255 244 237 / 72%);
}

.excel-guide-figure {
    display: block;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgb(29 54 88 / 14%);
    border-radius: 1rem;
    background: rgb(255 255 255 / 76%);
    color: #b72f20;
    text-decoration: none;
    box-shadow: 0 1.1rem 2.75rem rgb(48 43 40 / 9%);
}

.excel-guide-figure img {
    display: block;
    width: 100%;
    height: auto;
}

.excel-guide-figure span {
    display: block;
    padding: .75rem 1rem;
    font-size: .82rem;
    font-weight: 750;
    text-align: right;
}

.excel-guide-fields,
.excel-guide-details {
    margin-top: 0;
    padding-block: clamp(2.75rem, 5vw, 4.75rem);
    border-top: 1px solid rgb(207 61 36 / 11%);
}

.excel-guide-fields .std2-heading h2,
.excel-guide-details .std2-heading h2 {
    font-size: clamp(2rem, 3vw, 3rem);
}

.excel-guide-legend,
.excel-guide-practice,
.excel-guide-text-files {
    color: #29456e;
    line-height: 1.7;
}

.excel-guide-legend {
    margin-top: 1.35rem;
    font-size: .9rem;
}

.excel-guide-text-files {
    margin-top: 0;
    padding-block: clamp(2.75rem, 5vw, 4.75rem);
    border-top: 1px solid rgb(207 61 36 / 11%);
}

.excel-guide-text-files h2 {
    margin: 0 0 1rem;
    color: #0b1830;
    font-size: clamp(1.9rem, 2.7vw, 2.75rem);
    line-height: 1.1;
    letter-spacing: -.045em;
}

.excel-guide-context-heading {
    margin: 0 0 .55rem !important;
    color: #b72f20 !important;
    font-size: .82rem !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none;
}

.excel-guide-table-wrap {
    overflow-x: auto;
    margin-top: 2rem;
    border: 1px solid rgb(29 54 88 / 13%);
    border-radius: 1rem;
    background: rgb(255 255 255 / 74%);
    box-shadow: 0 1rem 2.75rem rgb(44 56 75 / 8%);
}

.excel-guide-table {
    width: 100%;
    min-width: 55rem;
    border-collapse: collapse;
    color: #1f385f;
    font-size: .9rem;
}

.excel-guide-table th,
.excel-guide-table td {
    padding: .95rem 1rem;
    border-bottom: 1px solid rgb(29 54 88 / 10%);
    text-align: left;
    vertical-align: top;
    line-height: 1.45;
}

.excel-guide-table thead th {
    background: #edf2f8;
    color: #14223a;
    font-weight: 800;
}

.excel-guide-table tbody tr:last-child > * { border-bottom: 0; }
.excel-guide-table tbody tr:nth-child(even) { background: rgb(247 249 252 / 62%); }
.excel-guide-table tbody th { color: #14223a; }

.field-status {
    display: inline-flex;
    padding: .2rem .55rem;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 800;
}

.field-status--required { background: #fff0e9; color: #b82e1d; }
.field-status--recommended { background: #eaf6ee; color: #087935; }

.excel-guide-detail-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    overflow: hidden;
    margin-top: 2rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.excel-guide-detail-grid article {
    display: grid;
    grid-template-columns: minmax(15rem, .34fr) minmax(0, 1fr);
    column-gap: clamp(2rem, 5vw, 5rem);
    align-items: start;
    width: 100%;
    margin: 0;
    padding: clamp(1.35rem, 2.4vw, 2rem);
    border: 0;
    border-radius: 0;
    background: transparent;
}

.excel-guide-detail-grid article + article {
    border-top: 1px solid rgb(207 61 36 / 12%);
}

.excel-guide-detail-grid h3 {
    grid-row: 1 / span 8;
    margin: 0;
    font-size: clamp(1.25rem, 1.6vw, 1.55rem);
}
.excel-guide-detail-grid p { margin: 0; color: #29456e; line-height: 1.65; }
.excel-guide-detail-grid p + p { margin-top: .55rem; }

.excel-guide-download {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem;
    align-items: center;
    margin-top: 1.25rem;
    padding: clamp(2rem, 4vw, 3.5rem);
    border: 1px solid rgb(207 61 36 / 16%);
    border-radius: 1.4rem;
    background:
        radial-gradient(24rem 18rem at 100% 0%, rgb(243 142 61 / 17%), transparent 72%),
        linear-gradient(140deg, rgb(255 255 255 / 83%), rgb(255 240 231 / 65%));
    box-shadow: 0 1.5rem 3.75rem rgb(94 45 29 / 10%);
    backdrop-filter: blur(18px);
}

.excel-guide-download-copy {
    display: grid;
    grid-template-columns: 4rem minmax(0, 1fr);
    gap: 1.15rem;
    align-items: center;
}

.excel-guide-download-copy::before {
    display: grid;
    width: 4rem;
    height: 4rem;
    border: 1px solid rgb(207 61 36 / 17%);
    border-radius: 1.1rem;
    background: linear-gradient(145deg, #c92718, #ed652f);
    color: #fff;
    content: "↓";
    place-items: center;
    font-size: 2rem;
    font-weight: 800;
    box-shadow: 0 .9rem 2rem rgb(185 47 29 / 18%);
}

.excel-guide-download-copy p {
    margin: 0;
}

.excel-guide-download ul {
    display: grid;
    gap: .55rem;
    margin: 1.15rem 0 0;
    padding: 0;
    list-style: none;
}

.excel-guide-download li::before {
    margin-right: .65rem;
    content: "✓";
    color: #087935;
    font-weight: 850;
}

.excel-guide-form {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(14rem, .8fr) auto;
    gap: 1rem;
    padding: clamp(1.4rem, 3vw, 2rem);
    border: 1px solid rgb(207 61 36 / 14%);
    border-radius: 1rem;
    background: rgb(255 255 255 / 79%);
}

.excel-guide-form > .form-error,
.excel-guide-form > .excel-guide-honeypot {
    grid-column: 1 / -1;
}

.form-field { display: grid; gap: .45rem; }
.form-field label { color: #14223a; font-weight: 750; }

.form-field input {
    width: 100%;
    min-height: 3.15rem;
    padding: .75rem .9rem;
    border: 1px solid #c9d2df;
    border-radius: .7rem;
    background: #fff;
    color: #14223a;
    font: inherit;
}

.form-field input:focus {
    border-color: #d74425;
    outline: 3px solid rgb(215 68 37 / 14%);
}

.form-field--challenge { grid-template-columns: 1fr; align-items: end; }
.form-field--challenge label { grid-column: 1 / -1; }
.form-field--challenge .form-error { grid-column: 1 / -1; }

.form-error {
    color: #b42318;
    font-size: .82rem;
    line-height: 1.45;
}

.validation-summary-valid { display: none; }
.excel-guide-form .button {
    align-self: end;
    justify-content: center;
    width: auto;
    min-height: 3.15rem;
    white-space: nowrap;
}

.excel-guide-privacy {
    margin: 0;
    color: #66758c !important;
    font-size: .72rem;
    line-height: 1.5 !important;
}

.excel-guide-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

@media (max-width: 920px) {
    .excel-guide-intro,
    .excel-guide-section,
    .excel-guide-download { grid-template-columns: 1fr; }

    .excel-guide-intro { align-items: start; }
    .excel-guide-callout { justify-self: start; }
    .excel-guide-basics-grid article,
    .excel-guide-detail-grid article { grid-template-columns: 1fr; }
    .excel-guide-basics-grid h2,
    .excel-guide-detail-grid h3 { grid-row: auto; margin-bottom: .75rem; }
    .excel-guide-form { grid-template-columns: 1fr; }
    .excel-guide-form .button { width: 100%; }

    .excel-guide-section--reverse .excel-guide-copy,
    .excel-guide-section--reverse .excel-guide-figure { order: initial; }

    .excel-guide-download { margin-inline: 1.25rem; }
}

@media (max-width: 660px) {
    .excel-guide-hero { text-align: left; }
    .excel-guide-hero .subpage-hero-summary { margin-left: 0; }
    .excel-guide-download-copy { grid-template-columns: 3.25rem minmax(0, 1fr); }
    .excel-guide-download-copy::before { width: 3.25rem; height: 3.25rem; }
    .excel-guide-section { gap: 1.5rem; }
    .excel-guide-download { padding: 1.35rem; }
}
/* Was ist DATANORM: Pillar-Page */
.datanorm-guide {
    --dn-ink: #0f1b33;
    --dn-copy: #29456e;
    --dn-line: rgb(177 62 26 / 20%);
    color: var(--dn-ink);
    background: #fff;
    overflow: hidden;
}

.datanorm-guide .subpage-breadcrumb { margin-bottom: 1.15rem; }

.datanorm-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(22rem, .88fr);
    gap: clamp(3rem, 7vw, 7rem);
    align-items: center;
    padding-bottom: clamp(4rem, 7vw, 6.75rem);
    background:
        radial-gradient(circle at 88% 20%, rgb(240 115 43 / 9%), transparent 25rem),
        #fff;
}

.datanorm-hero-copy h1 {
    margin: 0;
    max-width: 12ch;
    font-size: clamp(3.4rem, 5.4vw, 5.9rem);
    line-height: .98;
    letter-spacing: -.055em;
}

.datanorm-hero-lead {
    max-width: 49rem;
    margin: 1.7rem 0 0;
    color: var(--dn-copy);
    font-size: clamp(1.1rem, 1.45vw, 1.35rem);
    line-height: 1.65;
}

.datanorm-hero-lead strong { color: var(--dn-ink); }

.datanorm-hero-actions,
.datanorm-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .85rem;
}

.datanorm-hero-actions { margin-top: 2rem; }

.datanorm-hero-trust {
    margin: 1.15rem 0 0;
    color: #63718a;
    font-size: .78rem;
}

.datanorm-answer {
    position: relative;
    padding: clamp(2rem, 4vw, 3.5rem);
    border: 1px solid rgb(197 65 27 / 24%);
    border-radius: 1.75rem;
    background:
        radial-gradient(circle at 100% 0%, rgb(238 108 40 / 12%), transparent 48%),
        rgb(255 255 255 / 92%);
    box-shadow: 0 1.75rem 4rem rgb(84 39 23 / 10%);
    backdrop-filter: blur(20px);
}

.datanorm-answer::before {
    position: absolute;
    top: -1.75rem;
    right: -1.25rem;
    width: 8rem;
    height: 8rem;
    border-radius: 50%;
    background: linear-gradient(145deg, rgb(224 74 29 / 14%), rgb(244 151 64 / 8%));
    content: "";
    z-index: -1;
}

.datanorm-answer-label,
.datanorm-eyebrow {
    color: #b62212;
    font-size: .77rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}

.datanorm-answer > p {
    margin: 1rem 0 1.7rem;
    color: var(--dn-copy);
    font-size: 1.08rem;
    line-height: 1.6;
}

.datanorm-answer > p strong { color: var(--dn-ink); }
.datanorm-answer dl { margin: 0; }
.datanorm-answer dl div {
    display: grid;
    grid-template-columns: 6.5rem 1fr;
    gap: 1rem;
    padding: .85rem 0;
    border-top: 1px solid var(--dn-line);
}
.datanorm-answer dt { font-weight: 800; }
.datanorm-answer dd { margin: 0; color: var(--dn-copy); }

.datanorm-definition,
.datanorm-files-section,
.datanorm-versions-section,
.datanorm-excel-section {
    border-block: 1px solid rgb(177 62 26 / 12%);
    background: linear-gradient(108deg, #fff 0%, #fffcf8 54%, #fff 100%);
}

.datanorm-definition-layout,
.datanorm-versions-layout,
.datanorm-excel-layout {
    display: grid;
    grid-template-columns: minmax(17rem, .75fr) minmax(0, 1.25fr);
    gap: clamp(3rem, 8vw, 8rem);
    padding-block: clamp(4rem, 7vw, 7rem);
}

.datanorm-definition h2,
.datanorm-section-heading h2,
.datanorm-why-copy h2,
.datanorm-excel-layout h2,
.datanorm-final-cta h2 {
    margin: .65rem 0 0;
    font-size: clamp(2.2rem, 3.15vw, 3.45rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

.datanorm-definition-copy p,
.datanorm-excel-layout > div:last-child > p {
    margin: 0;
    color: var(--dn-copy);
    font-size: 1.07rem;
    line-height: 1.75;
}

.datanorm-definition-copy p + p { margin-top: 1.2rem; }
.datanorm-definition-copy .datanorm-important {
    margin-top: 1.8rem;
    padding: 1.25rem 1.4rem;
    border-left: .25rem solid #d43a1d;
    border-radius: 0 .8rem .8rem 0;
    background: rgb(255 255 255 / 78%);
    color: var(--dn-ink);
}

.datanorm-flow-section,
.datanorm-content-section,
.datanorm-why-section,
.datanorm-faq-section {
    padding-block: clamp(4.5rem, 8vw, 7.5rem);
    background: #fff;
}

.datanorm-section-heading { max-width: 54rem; }
.datanorm-section-heading > p:last-child {
    margin: 1rem 0 0;
    color: var(--dn-copy);
    font-size: 1.05rem;
    line-height: 1.65;
}
.datanorm-section-heading--centered { margin-inline: auto; text-align: center; }

.datanorm-flow {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 3rem 0 0;
    padding: 0;
    border-block: 1px solid var(--dn-line);
    list-style: none;
}

.datanorm-flow li {
    position: relative;
    display: grid;
    grid-template-columns: 2.2rem 1fr;
    gap: .85rem;
    padding: 2rem 1.5rem;
}
.datanorm-flow li + li { border-left: 1px solid var(--dn-line); }
.datanorm-flow-number {
    display: grid;
    width: 2.1rem;
    height: 2.1rem;
    place-items: center;
    border-radius: 50%;
    background: linear-gradient(145deg, #c52918, #ee7628);
    color: white;
    font-size: .78rem;
    font-weight: 800;
}
.datanorm-flow strong { font-size: 1rem; }
.datanorm-flow p { margin: .65rem 0 0; color: var(--dn-copy); font-size: .9rem; line-height: 1.55; }

.datanorm-files-layout {
    display: grid;
    grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: start;
    padding-block: clamp(4.5rem, 8vw, 7rem);
}

.datanorm-file-list { border-top: 1px solid var(--dn-line); }
.datanorm-file-list > div {
    display: grid;
    grid-template-columns: 9.5rem 1fr;
    gap: 1.5rem;
    align-items: start;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--dn-line);
}
.datanorm-file-list code { color: #be2e18; font-size: .87rem; font-weight: 800; }
.datanorm-file-list span { color: var(--dn-copy); line-height: 1.5; }
.datanorm-file-list strong { display: block; margin-bottom: .25rem; color: var(--dn-ink); }

.datanorm-content-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 3.25rem;
    border-block: 1px solid var(--dn-line);
}
.datanorm-content-list article {
    display: grid;
    grid-template-columns: 2.25rem 1fr;
    column-gap: 1rem;
    padding: 2rem;
}
.datanorm-content-list article:nth-child(n + 4) { border-top: 1px solid var(--dn-line); }
.datanorm-content-list article:not(:nth-child(3n + 1)) { border-left: 1px solid var(--dn-line); }
.datanorm-content-list span { grid-row: 1 / 3; color: #c33119; font-size: .75rem; font-weight: 800; }
.datanorm-content-list h3 { margin: 0; font-size: 1.02rem; }
.datanorm-content-list p { margin: .55rem 0 0; color: var(--dn-copy); font-size: .9rem; line-height: 1.55; }

.datanorm-version-table-wrap { min-width: 0; }
.datanorm-version-table {
    width: 100%;
    border-collapse: collapse;
    border-block: 1px solid var(--dn-line);
}
.datanorm-version-table th,
.datanorm-version-table td { padding: 1.15rem 1rem; border-bottom: 1px solid var(--dn-line); text-align: left; vertical-align: top; }
.datanorm-version-table thead th { color: #8d321e; font-size: .76rem; text-transform: none; }
.datanorm-version-table tbody th { white-space: nowrap; }
.datanorm-version-table td { color: var(--dn-copy); line-height: 1.5; }
.datanorm-source-note { margin: 1rem 0 0; color: #65728b; font-size: .76rem; line-height: 1.5; }
.datanorm-source-note a { color: #a92817; font-weight: 700; }

.datanorm-why-section {
    display: grid;
    grid-template-columns: minmax(18rem, .85fr) minmax(0, 1.15fr);
    gap: clamp(3rem, 8vw, 8rem);
}
.datanorm-why-copy > p:last-child { margin: 1.15rem 0 0; color: var(--dn-copy); font-size: 1.03rem; line-height: 1.68; }
.datanorm-benefit-list { margin: 0; padding: 0; border-top: 1px solid var(--dn-line); list-style: none; }
.datanorm-benefit-list li {
    display: grid;
    grid-template-columns: 11rem 1fr;
    gap: 1.5rem;
    padding: 1.25rem 0;
    border-bottom: 1px solid var(--dn-line);
}
.datanorm-benefit-list span { color: var(--dn-copy); line-height: 1.5; }

.datanorm-excel-layout > div:last-child > p { margin-bottom: 1.5rem; }
.datanorm-inline-actions { gap: 1.5rem 2.5rem; }
.datanorm-inline-actions a { color: #a92817; font-weight: 800; text-decoration: none; }
.datanorm-inline-actions a:hover { text-decoration: underline; }

.datanorm-faq-section {
    display: grid;
    grid-template-columns: minmax(16rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: start;
}
.datanorm-faq-list { border-top: 1px solid var(--dn-line); }
.datanorm-faq-list details { border-bottom: 1px solid var(--dn-line); }
.datanorm-faq-list summary {
    position: relative;
    padding: 1.3rem 3rem 1.3rem 0;
    cursor: pointer;
    font-size: 1.02rem;
    font-weight: 800;
    list-style: none;
}
.datanorm-faq-list summary::-webkit-details-marker { display: none; }
.datanorm-faq-list summary::after {
    position: absolute;
    top: 1.05rem;
    right: .25rem;
    color: #c33119;
    content: "+";
    font-size: 1.55rem;
    font-weight: 400;
}
.datanorm-faq-list details[open] summary::after { content: "−"; }
.datanorm-faq-list p { margin: -.25rem 3rem 1.35rem 0; color: var(--dn-copy); line-height: 1.68; }
.datanorm-faq-list a { color: #a92817; font-weight: 700; }

.datanorm-final-section { padding-bottom: clamp(4.5rem, 8vw, 7rem); }
.datanorm-final-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: center;
    padding: clamp(2rem, 4vw, 3.25rem);
    border: 1px solid #a92513;
    border-radius: 1.25rem;
    background: linear-gradient(110deg, #c42a18, #e04a22 52%, #ef872d);
    box-shadow: 0 1.4rem 3rem rgb(150 41 20 / 18%);
    color: white;
}
.datanorm-final-cta h2 { color: white; font-size: clamp(2rem, 3vw, 3.2rem); }
.datanorm-final-cta p { margin: .65rem 0 0; color: rgb(255 255 255 / 88%); line-height: 1.55; }

@media (max-width: 980px) {
    .datanorm-hero,
    .datanorm-definition-layout,
    .datanorm-files-layout,
    .datanorm-versions-layout,
    .datanorm-why-section,
    .datanorm-excel-layout,
    .datanorm-faq-section { grid-template-columns: 1fr; gap: 2.5rem; }

    .datanorm-hero { padding-top: 1rem; }
    .datanorm-answer { max-width: 43rem; }
    .datanorm-flow { grid-template-columns: repeat(2, 1fr); }
    .datanorm-flow li:nth-child(3) { border-left: 0; border-top: 1px solid var(--dn-line); }
    .datanorm-flow li:nth-child(4) { border-top: 1px solid var(--dn-line); }
    .datanorm-content-list { grid-template-columns: repeat(2, 1fr); }
    .datanorm-content-list article:nth-child(n + 3) { border-top: 1px solid var(--dn-line); }
    .datanorm-content-list article:not(:nth-child(3n + 1)) { border-left: 0; }
    .datanorm-content-list article:nth-child(even) { border-left: 1px solid var(--dn-line); }
}

@media (max-width: 640px) {
    .datanorm-guide .subpage-breadcrumb { margin-bottom: .65rem; }
    .datanorm-hero { gap: 2rem; padding-bottom: 3.5rem; }
    .datanorm-hero-copy h1 { font-size: clamp(3rem, 14vw, 4.25rem); }
    .datanorm-hero-lead { font-size: 1rem; }
    .datanorm-hero-actions .button { width: 100%; }
    .datanorm-answer { padding: 1.5rem; border-radius: 1.25rem; }
    .datanorm-answer dl div { grid-template-columns: 5.5rem 1fr; }
    .datanorm-definition-layout,
    .datanorm-files-layout,
    .datanorm-versions-layout,
    .datanorm-excel-layout { padding-block: 3.75rem; }
    .datanorm-flow { grid-template-columns: 1fr; }
    .datanorm-flow li + li { border-top: 1px solid var(--dn-line); border-left: 0; }
    .datanorm-file-list > div { grid-template-columns: 1fr; gap: .45rem; }
    .datanorm-content-list { grid-template-columns: 1fr; }
    .datanorm-content-list article + article { border-top: 1px solid var(--dn-line); border-left: 0; }
    .datanorm-content-list article:nth-child(even) { border-left: 0; }
    .datanorm-version-table-wrap { overflow-x: auto; }
    .datanorm-version-table { min-width: 38rem; }
    .datanorm-benefit-list li { grid-template-columns: 1fr; gap: .4rem; }
    .datanorm-faq-list p { margin-right: 0; }
    .datanorm-final-cta { grid-template-columns: 1fr; }
    .datanorm-final-cta .button { width: 100%; }
}

/* Obsoleszenz-Regelungen */
.lifecycle-page {
    --lifecycle-ink: #0d1930;
    --lifecycle-copy: #233b60;
    --lifecycle-muted: #53657c;
    --lifecycle-line: rgb(181 70 41 / 18%);
    color: var(--lifecycle-copy);
    background:
        radial-gradient(circle at 88% 14%, rgb(239 119 45 / 10%), transparent 25rem),
        radial-gradient(circle at 7% 62%, rgb(230 77 39 / 6%), transparent 30rem),
        linear-gradient(180deg, #fff 0%, #fffdfb 48%, #fff 100%);
    overflow: clip;
}

.lifecycle-page h1,
.lifecycle-page h2,
.lifecycle-page h3 {
    margin: 0;
    color: var(--lifecycle-ink);
    letter-spacing: -.04em;
}

.lifecycle-page p,
.lifecycle-page dl { margin: 0; }
.lifecycle-page section[id] { scroll-margin-top: 7rem; }

.lifecycle-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(20rem, .75fr);
    align-items: center;
    gap: clamp(2rem, 5vw, 5.5rem);
    padding-top: clamp(2.2rem, 4vw, 4.2rem);
    padding-bottom: clamp(3.5rem, 6vw, 6rem);
}

.lifecycle-hero h1 {
    max-width: 14ch;
    font-size: clamp(3.2rem, 5.2vw, 5.4rem);
    line-height: 1.02;
}

.lifecycle-hero > div > p {
    max-width: 52rem;
    margin-top: 1.15rem;
    font-size: clamp(1.05rem, 1.5vw, 1.25rem);
    line-height: 1.62;
}

.lifecycle-answer {
    padding: clamp(1.5rem, 2.5vw, 2rem);
    border: 1px solid var(--lifecycle-line);
    border-radius: 1.35rem;
    background: linear-gradient(135deg, rgb(255 255 255 / 82%), rgb(255 246 239 / 72%));
    box-shadow: 0 1.5rem 3.4rem rgb(52 40 34 / 9%);
    backdrop-filter: blur(18px);
}

.lifecycle-answer span {
    display: block;
    margin-bottom: .7rem;
    color: #b52e17;
    font-weight: 820;
}

.lifecycle-answer p { line-height: 1.62; }

.lifecycle-definition,
.lifecycle-faq {
    display: grid;
    grid-template-columns: minmax(16rem, .7fr) minmax(0, 1.3fr);
    gap: clamp(2.5rem, 7vw, 7rem);
    padding-block: clamp(3.5rem, 6vw, 6rem);
    border-top: 1px solid var(--lifecycle-line);
}

.lifecycle-definition h2,
.lifecycle-faq h2,
.lifecycle-section-heading h2 {
    max-width: 18ch;
    font-size: clamp(2.25rem, 3.5vw, 3.65rem);
    line-height: 1.08;
}

.lifecycle-definition dl { border-top: 1px solid var(--lifecycle-line); }
.lifecycle-definition dl > div {
    display: grid;
    grid-template-columns: minmax(10rem, .38fr) minmax(0, .62fr);
    gap: 1.5rem;
    padding: 1.15rem 0;
    border-bottom: 1px solid var(--lifecycle-line);
}
.lifecycle-definition dt,
.lifecycle-data-table th,
.lifecycle-history-table th { color: var(--lifecycle-ink); font-weight: 820; }
.lifecycle-definition dd { line-height: 1.55; }

.lifecycle-jump {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: clamp(2rem, 4vw, 4rem);
    border-block: 1px solid var(--lifecycle-line);
}

.lifecycle-jump a {
    display: flex;
    align-items: center;
    gap: .85rem;
    min-height: 5rem;
    padding: 1rem 1.25rem;
    color: var(--lifecycle-ink);
    text-decoration: none;
}
.lifecycle-jump a + a { border-left: 1px solid var(--lifecycle-line); }
.lifecycle-jump span { color: #c43c20; font-size: .82rem; font-weight: 850; }
.lifecycle-jump strong { line-height: 1.3; }
.lifecycle-jump a:hover strong { color: #ad2916; }

.lifecycle-section {
    padding-block: clamp(3.6rem, 6vw, 6.5rem);
    border-top: 1px solid var(--lifecycle-line);
}

.lifecycle-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: clamp(2rem, 4vw, 3.5rem);
}
.lifecycle-section-heading p {
    max-width: 50rem;
    margin-top: .7rem;
    line-height: 1.55;
}

.lifecycle-current {
    display: grid;
    grid-template-columns: minmax(18rem, .78fr) minmax(0, 1.22fr);
    align-items: start;
    gap: clamp(1.5rem, 4vw, 4rem);
}

.lifecycle-current--web-only { grid-template-columns: 1fr; }
.lifecycle-current--web-only .lifecycle-web-note {
    display: grid;
    grid-template-columns: minmax(16rem, .25fr) minmax(0, .75fr);
    align-items: center;
    gap: clamp(1.5rem, 3vw, 3rem);
}
.lifecycle-current--web-only .lifecycle-web-note dl {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 0;
    border-top: 0;
}
.lifecycle-current--web-only .lifecycle-web-note dl div {
    min-height: 100%;
    padding: .25rem 1.35rem;
    border-bottom: 0;
    border-left: 1px solid var(--lifecycle-line);
}
.lifecycle-current--web-only .lifecycle-web-note dl div:last-child { padding-bottom: .25rem; }

.lifecycle-web-note {
    padding: clamp(1.5rem, 2.6vw, 2.2rem);
    border: 1px solid var(--lifecycle-line);
    border-radius: 1.35rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 88%), rgb(255 246 239 / 74%));
    box-shadow: 0 1.5rem 3.4rem rgb(52 40 34 / 8%);
}
.lifecycle-web-note > div:first-child { display: flex; align-items: center; gap: 1rem; }
.lifecycle-web-note img { width: 4.2rem; height: 4.2rem; object-fit: contain; filter: drop-shadow(0 .65rem .8rem rgb(154 47 23 / 16%)); }
.lifecycle-web-note h3 { font-size: 1.45rem; }
.lifecycle-web-note > div:first-child p { margin-top: .25rem; color: var(--lifecycle-muted); }
.lifecycle-web-note dl { margin-top: 1.4rem; border-top: 1px solid var(--lifecycle-line); }
.lifecycle-web-note dl div { padding: 1rem 0; border-bottom: 1px solid var(--lifecycle-line); }
.lifecycle-web-note dl div:last-child { padding-bottom: 0; border-bottom: 0; }
.lifecycle-web-note dt { color: var(--lifecycle-ink); font-weight: 820; }
.lifecycle-web-note dd { margin-top: .35rem; line-height: 1.55; }

.lifecycle-accordions { border-top: 1px solid var(--lifecycle-line); }
.lifecycle-accordions details,
.lifecycle-faq details { border-bottom: 1px solid var(--lifecycle-line); }
.lifecycle-accordions summary,
.lifecycle-faq summary {
    position: relative;
    padding: 1.2rem 2.5rem 1.2rem 0;
    color: var(--lifecycle-ink);
    font-weight: 830;
    cursor: pointer;
}
.lifecycle-accordions summary::after,
.lifecycle-faq summary::after {
    position: absolute;
    top: 1.1rem;
    right: .2rem;
    color: #c33a20;
    content: "+";
    font-size: 1.4rem;
}
.lifecycle-accordions details[open] summary::after,
.lifecycle-faq details[open] summary::after { content: "−"; }
.lifecycle-accordions dl { padding: 0 0 1.2rem; }
.lifecycle-accordions dl > div {
    display: grid;
    grid-template-columns: minmax(10rem, .35fr) minmax(0, .65fr);
    gap: 1.25rem;
    padding: .65rem 0;
}
.lifecycle-accordions dt { color: var(--lifecycle-ink); font-weight: 780; }
.lifecycle-accordions dd { line-height: 1.55; }

.lifecycle-version-status {
    padding: .25rem 1.5rem 1.5rem;
    border: 1px solid var(--lifecycle-line);
    border-radius: 1.35rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 80%), rgb(255 249 245 / 68%));
    box-shadow: 0 1.5rem 3.5rem rgb(52 40 34 / 8%);
}

.lifecycle-version-status details {
    border-bottom: 1px solid var(--lifecycle-line);
}
.lifecycle-version-status details:last-child { border-bottom: 0; }

.lifecycle-version-status summary {
    position: relative;
    display: grid;
    grid-template-columns: minmax(12rem, .32fr) minmax(0, .68fr);
    align-items: center;
    gap: 1.5rem;
    padding: 1.3rem 3rem 1.3rem 0;
    color: var(--lifecycle-ink);
    cursor: pointer;
    list-style: none;
}

.lifecycle-version-status summary::-webkit-details-marker { display: none; }
.lifecycle-version-status summary span { font-size: 1.12rem; font-weight: 850; }
.lifecycle-version-status summary small { color: var(--lifecycle-muted); font-size: .98rem; }
.lifecycle-version-status summary::after {
    position: absolute;
    top: 50%;
    right: .25rem;
    color: #c33a20;
    content: "+";
    font-size: 1.5rem;
    transform: translateY(-50%);
}
.lifecycle-version-status details[open] summary::after { content: "−"; }

.lifecycle-version-status dl {
    margin: 0 0 1.35rem;
    border: 1px solid var(--lifecycle-line);
    border-radius: 1rem;
    background: rgb(255 255 255 / 72%);
    overflow: hidden;
}

.lifecycle-version-status dl > div {
    display: grid;
    grid-template-columns: minmax(12rem, .32fr) minmax(0, .68fr);
    gap: 1.5rem;
    padding: 1rem 1.2rem;
    border-bottom: 1px solid var(--lifecycle-line);
}

.lifecycle-version-status dl > div:last-child { border-bottom: 0; }
.lifecycle-version-status dt { color: var(--lifecycle-ink); font-weight: 800; }
.lifecycle-version-status dd { line-height: 1.55; }
.lifecycle-version-status a { color: #ad2916; font-weight: 760; }

.lifecycle-data-table-wrap,
.lifecycle-history-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--lifecycle-line);
    border-radius: 1.25rem;
    background: rgb(255 255 255 / 75%);
    box-shadow: 0 1.5rem 3.5rem rgb(52 40 34 / 8%);
}
.lifecycle-data-table,
.lifecycle-history-table { width: 100%; border-collapse: collapse; }
.lifecycle-data-table th,
.lifecycle-data-table td,
.lifecycle-history-table th,
.lifecycle-history-table td {
    padding: 1.15rem 1.4rem;
    border-bottom: 1px solid var(--lifecycle-line);
    text-align: left;
    vertical-align: top;
    line-height: 1.5;
}
.lifecycle-data-table tr:last-child > *,
.lifecycle-history-table tbody tr:last-child > * { border-bottom: 0; }
.lifecycle-data-table th { width: 30%; }
.lifecycle-history-table thead { background: rgb(246 240 236 / 80%); }
.lifecycle-history-table th,
.lifecycle-history-table td { min-width: 9.5rem; }
.lifecycle-history-table th:first-child { min-width: 15rem; }

.lifecycle-os-note {
    display: grid;
    grid-template-columns: minmax(12rem, .3fr) minmax(0, .7fr);
    gap: 2rem;
    margin-block: clamp(2rem, 4vw, 4rem);
    padding: 1.25rem 0 1.25rem 1.35rem;
    border-left: .2rem solid #d94a27;
}
.lifecycle-os-note strong { color: var(--lifecycle-ink); }
.lifecycle-os-note p { line-height: 1.55; }

.lifecycle-faq > div { border-top: 1px solid var(--lifecycle-line); }
.lifecycle-faq details p { max-width: 54rem; padding: 0 2rem 1.25rem 0; line-height: 1.62; }
.lifecycle-faq {
    grid-template-columns: minmax(28rem, .85fr) minmax(0, 1.15fr);
    gap: clamp(3rem, 5vw, 5rem);
}
.lifecycle-faq h2 {
    max-width: 17ch;
    font-size: clamp(2.25rem, 3.2vw, 3.3rem);
}

.lifecycle-final {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: clamp(2rem, 4vw, 4rem);
    margin-bottom: clamp(3.5rem, 6vw, 6rem);
    padding: clamp(1.8rem, 3vw, 2.6rem);
    border: 1px solid rgb(183 52 28 / 22%);
    border-radius: 1.35rem;
    color: #fff;
    background: linear-gradient(105deg, #d74326, #ed672f 60%, #f18b3a);
    box-shadow: 0 1.5rem 3.5rem rgb(135 49 28 / 14%);
}
.lifecycle-final h2 { max-width: none; color: #fff; font-size: clamp(1.8rem, 2.7vw, 2.75rem); }
.lifecycle-final p { margin-top: .45rem; color: rgb(255 255 255 / 88%); }
.lifecycle-final > div:last-child { display: flex; flex: 0 0 auto; gap: .65rem; }

@media (max-width: 980px) {
    .lifecycle-hero,
    .lifecycle-definition,
    .lifecycle-current,
    .lifecycle-faq { grid-template-columns: 1fr; }
    .lifecycle-hero { gap: 2rem; }
    .lifecycle-jump { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lifecycle-jump a:nth-child(3) { border-left: 0; }
    .lifecycle-jump a:nth-child(n + 3) { border-top: 1px solid var(--lifecycle-line); }
}

@media (max-width: 640px) {
    .lifecycle-hero { padding-top: 1.7rem; }
    .lifecycle-hero h1 { font-size: clamp(2.6rem, 13vw, 3.65rem); }
    .lifecycle-definition dl > div,
    .lifecycle-accordions dl > div,
    .lifecycle-version-status summary,
    .lifecycle-version-status dl > div,
    .lifecycle-os-note { grid-template-columns: 1fr; gap: .4rem; }
    .lifecycle-current--web-only .lifecycle-web-note { grid-template-columns: 1fr; gap: 1.5rem; }
    .lifecycle-current--web-only .lifecycle-web-note dl { grid-template-columns: 1fr; }
    .lifecycle-current--web-only .lifecycle-web-note dl div {
        padding: 1rem 0;
        border-bottom: 1px solid var(--lifecycle-line);
        border-left: 0;
    }
    .lifecycle-current--web-only .lifecycle-web-note dl div:last-child { padding-bottom: 0; border-bottom: 0; }
    .lifecycle-version-status { padding: .15rem 1rem 1rem; }
    .lifecycle-jump { grid-template-columns: 1fr; }
    .lifecycle-jump a + a { border-top: 1px solid var(--lifecycle-line); border-left: 0; }
    .lifecycle-section-heading,
    .lifecycle-final { align-items: stretch; flex-direction: column; }
    .lifecycle-section-heading--split .button { width: 100%; }
    .lifecycle-final > div:last-child { flex-direction: column; }
    .lifecycle-final .button { width: 100%; }
    .lifecycle-data-table th { width: 42%; min-width: 9.5rem; }
}

/* Was ist DATANORM: durchgehendes Editorial-Konzept analog zu den Editionsseiten */
.datanorm-guide {
    position: relative;
    isolation: isolate;
    background: linear-gradient(180deg, #fff 0%, #f3f5f6 42%, #f7f8f7 100%);
}

.datanorm-guide::before,
.datanorm-guide::after {
    position: absolute;
    z-index: -1;
    left: -8%;
    width: 116%;
    content: "";
    pointer-events: none;
}

.datanorm-guide::before {
    top: 340px;
    height: 320px;
    background: linear-gradient(90deg, rgb(255 188 77 / 19%), rgb(255 127 36 / 16%) 45%, rgb(203 28 22 / 10%) 75%, transparent);
    filter: blur(58px);
    transform: rotate(-2deg);
}

.datanorm-guide::after {
    top: 2550px;
    height: 420px;
    background: linear-gradient(90deg, transparent, rgb(255 160 57 / 14%) 28%, rgb(220 53 29 / 10%) 62%, transparent);
    filter: blur(70px);
    transform: rotate(2deg);
}

.datanorm-hero,
.datanorm-definition,
.datanorm-files-section,
.datanorm-versions-section,
.datanorm-excel-section,
.datanorm-flow-section,
.datanorm-content-section,
.datanorm-why-section,
.datanorm-faq-section {
    border: 0;
    background: transparent;
}

.datanorm-definition-layout,
.datanorm-files-layout,
.datanorm-versions-layout,
.datanorm-excel-layout,
.datanorm-why-section,
.datanorm-faq-section {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: clamp(3rem, 6vw, 6rem);
    align-items: start;
    padding-block: clamp(3.5rem, 5vw, 5.25rem);
}

.datanorm-flow-section,
.datanorm-content-section {
    padding-block: clamp(3.5rem, 5vw, 5.25rem);
}

.datanorm-definition-layout > div:first-child,
.datanorm-files-layout > .datanorm-section-heading,
.datanorm-versions-layout > .datanorm-section-heading,
.datanorm-why-copy,
.datanorm-excel-layout > div:first-child,
.datanorm-faq-section > .datanorm-section-heading {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    text-align: left;
}

.datanorm-flow-section > .datanorm-section-heading,
.datanorm-content-section > .datanorm-section-heading {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(3rem, 6vw, 6rem);
    align-items: end;
    text-align: left;
}

.datanorm-flow-section > .datanorm-section-heading > .datanorm-eyebrow,
.datanorm-content-section > .datanorm-section-heading > .datanorm-eyebrow {
    grid-column: 1;
}

.datanorm-flow-section > .datanorm-section-heading > h2,
.datanorm-content-section > .datanorm-section-heading > h2 {
    grid-column: 1;
}

.datanorm-flow-section > .datanorm-section-heading > p:last-child,
.datanorm-content-section > .datanorm-section-heading > p:last-child {
    grid-row: 1 / 3;
    grid-column: 2;
    align-self: end;
    margin: 0;
}

.datanorm-definition h2,
.datanorm-section-heading h2,
.datanorm-why-copy h2,
.datanorm-excel-layout h2 {
    max-width: none;
    font-size: clamp(2.2rem, 2.7vw, 2.9rem);
    line-height: 1.08;
}

.datanorm-definition-copy,
.datanorm-file-list,
.datanorm-version-table-wrap,
.datanorm-benefit-list,
.datanorm-excel-layout > div:last-child,
.datanorm-faq-list {
    margin-top: 0;
}

.datanorm-definition-copy,
.datanorm-excel-layout > div:last-child {
    max-width: none;
}

.datanorm-file-list,
.datanorm-benefit-list,
.datanorm-faq-list {
    max-width: none;
}

.datanorm-section-heading--centered {
    margin-inline: 0;
    text-align: left;
}

@media (max-width: 980px) {
    .datanorm-guide::before {
        top: 540px;
        left: -20%;
        width: 140%;
        height: 900px;
        transform: none;
    }

    .datanorm-guide::after { top: 3200px; }

    .datanorm-definition-layout,
    .datanorm-files-layout,
    .datanorm-versions-layout,
    .datanorm-excel-layout,
    .datanorm-why-section,
    .datanorm-faq-section,
    .datanorm-flow-section > .datanorm-section-heading,
    .datanorm-content-section > .datanorm-section-heading {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .datanorm-flow-section > .datanorm-section-heading > p:last-child,
    .datanorm-content-section > .datanorm-section-heading > p:last-child {
        grid-row: auto;
        grid-column: 1;
        margin-top: .25rem;
    }
}

/* Excel in DATANORM konvertieren: eigenständige Such- und Anleitungsseite */
.excel-conversion-page {
    --excel-line: rgb(177 62 26 / 18%);
    --excel-muted: #536176;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding-bottom: clamp(5rem, 8vw, 8rem);
    color: #101d33;
    background:
        radial-gradient(34rem 26rem at 96% 10%, rgb(238 111 46 / 10%), transparent 72%),
        radial-gradient(28rem 24rem at -4% 42%, rgb(245 162 73 / 8%), transparent 74%),
        linear-gradient(180deg, #fff 0%, #f7f8f8 52%, #fff 100%);
}

.excel-conversion-page::before {
    position: absolute;
    z-index: -1;
    top: 35rem;
    left: 9%;
    width: 82%;
    height: 12rem;
    background: linear-gradient(90deg, transparent, rgb(244 151 67 / 14%), rgb(220 70 38 / 9%), transparent);
    filter: blur(3rem);
    content: "";
    pointer-events: none;
}

.excel-conversion-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(22rem, .85fr);
    align-items: center;
    gap: clamp(3rem, 7vw, 7rem);
    padding-top: clamp(2rem, 4vw, 3.5rem);
    padding-bottom: clamp(4rem, 7vw, 7rem);
}

.excel-conversion-hero-copy h1 {
    max-width: 17ch;
    font-size: clamp(3.2rem, 4.2vw, 4.7rem);
    line-height: 1.01;
    letter-spacing: -.055em;
}

.excel-conversion-hero-copy > p {
    max-width: 49rem;
    margin-top: 1.5rem;
    color: #34465e;
    font-size: clamp(1rem, 1.2vw, 1.16rem);
    line-height: 1.7;
}

.excel-conversion-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }

.excel-conversion-answer {
    padding: clamp(1.7rem, 3vw, 2.5rem);
    border: 1px solid rgb(198 69 37 / 20%);
    border-radius: 1.5rem;
    background: linear-gradient(145deg, rgb(255 255 255 / 84%), rgb(255 249 245 / 68%));
    box-shadow: 0 1.7rem 4rem rgb(69 42 32 / 10%);
    backdrop-filter: blur(1.1rem);
}

.excel-conversion-answer > span { color: #b22919; font-size: .8rem; font-weight: 850; }
.excel-conversion-answer > p { margin-top: .85rem; color: #263950; line-height: 1.65; }
.excel-conversion-answer dl { margin-top: 1.25rem; }
.excel-conversion-answer dl div { display: grid; grid-template-columns: 6rem 1fr; gap: 1rem; padding: .8rem 0; border-top: 1px solid var(--excel-line); }
.excel-conversion-answer dt { font-weight: 800; }
.excel-conversion-answer dd { color: var(--excel-muted); }

.excel-conversion-definition,
.excel-conversion-requirements,
.excel-conversion-errors,
.excel-conversion-faq {
    display: grid;
    grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(3rem, 8vw, 8rem);
    padding-block: clamp(4rem, 7vw, 7rem);
    border-top: 1px solid var(--excel-line);
}

.excel-conversion-definition h2,
.excel-conversion-requirements h2,
.excel-conversion-output h2,
.excel-conversion-errors h2,
.excel-conversion-faq h2,
.excel-conversion-final h2 {
    max-width: 18ch;
    font-size: clamp(2.2rem, 3.4vw, 3.5rem);
    line-height: 1.06;
    letter-spacing: -.045em;
}

.excel-conversion-definition > div:last-child { display: grid; gap: 1.25rem; color: #31445d; font-size: 1.03rem; line-height: 1.75; }

.excel-conversion-tour-section { padding-block: clamp(1.5rem, 4vw, 3.5rem) clamp(4rem, 7vw, 7rem); }
.excel-conversion-tour {
    border-color: rgb(197 68 37 / 18%);
    background: rgb(255 255 255 / 62%);
    box-shadow: 0 2rem 5rem rgb(68 45 35 / 10%);
    backdrop-filter: blur(1.2rem);
}
.excel-conversion-tour .wa-tour-head { text-align: left; }
.excel-conversion-tour .wa-tour-head h2 { max-width: none; font-size: clamp(2rem, 3vw, 3rem); }
.excel-conversion-tour .wa-tour-head p { max-width: 70rem; margin-inline: 0; }
.excel-conversion-tour .wa-tour-screen { border-color: rgb(196 84 56 / 16%); background: linear-gradient(145deg, #f9fafb, #fff7f1); }
.excel-conversion-tour .tour-zoom-hint { color: #5a687c; }

.excel-conversion-section-copy > p { margin-top: 1.25rem; color: #40526a; line-height: 1.7; }
.excel-conversion-section-copy > a,
.excel-conversion-output-note a { display: inline-block; margin-top: 1.25rem; color: #aa2517; font-weight: 800; text-decoration: none; }
.excel-conversion-section-copy > a:hover,
.excel-conversion-output-note a:hover { text-decoration: underline; text-underline-offset: .25rem; }

.excel-conversion-requirement-list div { display: grid; grid-template-columns: 10rem 1fr; gap: 1.5rem; padding: 1.25rem 0; border-top: 1px solid var(--excel-line); }
.excel-conversion-requirement-list div:last-child { border-bottom: 1px solid var(--excel-line); }
.excel-conversion-requirement-list dt { font-weight: 850; }
.excel-conversion-requirement-list dd { color: #40526a; line-height: 1.6; }

.excel-conversion-output { padding-block: clamp(4rem, 7vw, 7rem); border-top: 1px solid var(--excel-line); }
.excel-conversion-output > header { display: grid; grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr); gap: clamp(3rem, 8vw, 8rem); align-items: end; }
.excel-conversion-output > header > p { color: #40526a; font-size: 1.02rem; line-height: 1.65; }
.excel-conversion-output-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 3rem; border-block: 1px solid var(--excel-line); }
.excel-conversion-output-list > div { display: grid; grid-template-columns: 9.5rem 1fr; gap: 1.5rem; padding: 1.45rem 1rem 1.45rem 0; }
.excel-conversion-output-list > div:nth-child(even) { padding-left: 2rem; border-left: 1px solid var(--excel-line); }
.excel-conversion-output-list > div:nth-child(n + 3) { border-top: 1px solid var(--excel-line); }
.excel-conversion-output-list code { align-self: start; color: #a92918; font-weight: 850; }
.excel-conversion-output-list span { color: #526179; line-height: 1.5; }
.excel-conversion-output-list strong { display: block; margin-bottom: .25rem; color: #17263b; }
.excel-conversion-output-note { margin-top: 1.5rem; color: #526179; line-height: 1.65; }
.excel-conversion-output-note a { margin-top: 0; }

.excel-conversion-errors ul { margin: 0; padding: 0; list-style: none; }
.excel-conversion-errors li { display: grid; grid-template-columns: minmax(12rem, .8fr) 1.2fr; gap: 1.5rem; padding: 1.15rem 0; border-top: 1px solid var(--excel-line); }
.excel-conversion-errors li:last-child { border-bottom: 1px solid var(--excel-line); }
.excel-conversion-errors li span { color: #526179; line-height: 1.55; }

.excel-conversion-faq > div { border-top: 1px solid var(--excel-line); }
.excel-conversion-faq details { border-bottom: 1px solid var(--excel-line); }
.excel-conversion-faq summary { padding: 1.25rem 2rem 1.25rem 0; font-weight: 820; cursor: pointer; }
.excel-conversion-faq details p { max-width: 54rem; padding: 0 2rem 1.4rem 0; color: #526179; line-height: 1.65; }

.excel-conversion-final {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: clamp(3rem, 5vw, 5rem);
    padding: clamp(2rem, 3.5vw, 3rem);
    border: 1px solid rgb(183 52 28 / 24%);
    border-radius: 1.4rem;
    color: #fff;
    background: linear-gradient(105deg, #d74326, #ec672f 58%, #f18b3a);
    box-shadow: 0 1.5rem 3.5rem rgb(135 49 28 / 14%);
}
.excel-conversion-final h2 { max-width: none; color: #fff; font-size: clamp(1.8rem, 2.6vw, 2.7rem); }
.excel-conversion-final p { margin-top: .55rem; color: rgb(255 255 255 / 88%); }
.excel-conversion-final .button { flex: 0 0 auto; }

@media (max-width: 980px) {
    .excel-conversion-hero,
    .excel-conversion-definition,
    .excel-conversion-requirements,
    .excel-conversion-errors,
    .excel-conversion-faq,
    .excel-conversion-output > header { grid-template-columns: 1fr; gap: 2rem; }
    .excel-conversion-hero-copy h1 { max-width: 15ch; }
    .excel-conversion-output-list { grid-template-columns: 1fr; }
    .excel-conversion-output-list > div:nth-child(even) { padding-left: 0; border-left: 0; }
    .excel-conversion-output-list > div + div { border-top: 1px solid var(--excel-line); }
}

@media (max-width: 640px) {
    .excel-conversion-hero { padding-top: 1.75rem; padding-bottom: 4rem; }
    .excel-conversion-hero-copy h1 { font-size: clamp(2.7rem, 13vw, 4rem); }
    .excel-conversion-answer dl div,
    .excel-conversion-requirement-list div,
    .excel-conversion-output-list > div,
    .excel-conversion-errors li { grid-template-columns: 1fr; gap: .45rem; }
    .excel-conversion-final { align-items: stretch; flex-direction: column; }
    .excel-conversion-final .button { width: 100%; }
}

/* Web-Apps: durchgehende Übersichtsseite mit vier Anwendungsrichtungen */
.webapps-page {
    --webapps-line: rgb(178 69 38 / 17%);
    --webapps-muted: #536176;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding-bottom: clamp(5rem, 8vw, 8rem);
    color: #101d33;
    background:
        radial-gradient(34rem 25rem at 98% 9%, rgb(238 111 46 / 10%), transparent 74%),
        radial-gradient(30rem 26rem at -5% 46%, rgb(245 162 73 / 8%), transparent 75%),
        linear-gradient(180deg, #fff 0%, #f6f8f8 54%, #fff 100%);
}

.webapps-page::before {
    position: absolute;
    z-index: -1;
    top: 37rem;
    left: 10%;
    width: 80%;
    height: 13rem;
    background: linear-gradient(90deg, transparent, rgb(243 151 65 / 13%), rgb(218 67 37 / 8%), transparent);
    filter: blur(3rem);
    content: "";
    pointer-events: none;
}

.webapps-hero {
    display: grid;
    grid-template-columns: minmax(0, .98fr) minmax(24rem, 1.02fr);
    align-items: center;
    gap: clamp(3rem, 7vw, 7rem);
    padding-top: clamp(2rem, 4vw, 3.5rem);
    padding-bottom: clamp(4.5rem, 7vw, 7rem);
}

.webapps-hero-copy h1 {
    max-width: 15ch;
    font-size: clamp(3.2rem, 4.5vw, 5rem);
    line-height: 1.01;
    letter-spacing: -.055em;
}
.webapps-hero-copy > p { max-width: 47rem; margin-top: 1.5rem; color: #34465e; font-size: clamp(1rem, 1.2vw, 1.16rem); line-height: 1.7; }
.webapps-hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }

.webapps-hero-visual { margin: 0; text-align: center; }
.webapps-hero-visual picture,
.webapps-hero-visual img { display: block; width: 100%; }
.webapps-hero-visual img { height: auto; filter: drop-shadow(0 1.8rem 2rem rgb(67 43 34 / 12%)); }
.webapps-hero-visual figcaption { margin-top: .5rem; color: #647188; font-size: .82rem; }

.webapps-answer,
.webapps-benefits,
.webapps-faq {
    display: grid;
    grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr);
    gap: clamp(3rem, 8vw, 8rem);
    padding-block: clamp(4rem, 7vw, 7rem);
    border-top: 1px solid var(--webapps-line);
}

.webapps-answer h2,
.webapps-editions h2,
.webapps-benefits h2,
.webapps-faq h2,
.webapps-final h2 {
    max-width: 18ch;
    font-size: clamp(2.2rem, 3.4vw, 3.5rem);
    line-height: 1.06;
    letter-spacing: -.045em;
}
.webapps-answer-copy { color: #40526a; font-size: 1.04rem; line-height: 1.75; }

.webapps-overview {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border-block: 1px solid var(--webapps-line);
}
.webapps-overview a { display: grid; min-width: 0; gap: .4rem; padding: 1.6rem clamp(1rem, 2vw, 1.8rem); color: #17263b; text-decoration: none; }
.webapps-overview a + a { border-left: 1px solid var(--webapps-line); }
.webapps-overview a:hover { background: rgb(255 255 255 / 62%); }
.webapps-overview span { color: #b42a19; font-size: .76rem; font-weight: 850; }
.webapps-overview strong { line-height: 1.35; }
.webapps-overview small { color: var(--webapps-muted); font-size: .8rem; line-height: 1.45; }

.webapp-detail {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    align-items: center;
    gap: clamp(3rem, 8vw, 8rem);
    padding-block: clamp(5rem, 8vw, 8rem);
    border-bottom: 1px solid var(--webapps-line);
    scroll-margin-top: 6rem;
}
.webapp-detail--reverse .webapp-detail-visual { grid-column: 2; }
.webapp-detail--reverse .webapp-detail-copy { grid-row: 1; grid-column: 1; }
.webapp-detail-visual picture,
.webapp-detail-visual img { display: block; width: 100%; }
.webapp-detail-visual img { height: auto; filter: drop-shadow(0 1.7rem 2rem rgb(63 45 38 / 11%)); }
.webapp-number { margin-bottom: .7rem; color: #b42a19; font-size: .8rem; font-weight: 850; }
.webapp-detail-copy h2 { max-width: 18ch; font-size: clamp(2.3rem, 3.4vw, 3.6rem); line-height: 1.06; letter-spacing: -.045em; }
.webapp-direction { margin-top: 1rem; color: #a92a1b; font-weight: 820; }
.webapp-direction span { margin-inline: .45rem; }
.webapp-detail-copy > p:not(.webapp-number, .webapp-direction) { margin-top: 1.25rem; color: #40526a; line-height: 1.72; }
.webapp-detail-copy ul { display: grid; gap: .65rem; margin: 1.4rem 0 0; padding: 0; list-style: none; }
.webapp-detail-copy li { position: relative; padding-left: 1.35rem; color: #34475f; line-height: 1.5; }
.webapp-detail-copy li::before { position: absolute; left: 0; color: #087b31; content: "✓"; font-weight: 900; }
.webapp-detail-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.3rem; margin-top: 1.75rem; }
.webapp-detail-actions > a:not(.button) { color: #a82918; font-weight: 800; text-decoration: none; }
.webapp-detail-actions > a:not(.button):hover { text-decoration: underline; text-underline-offset: .25rem; }

.webapps-editions { padding-block: clamp(5rem, 8vw, 8rem); border-bottom: 1px solid var(--webapps-line); }
.webapps-editions > header { display: grid; grid-template-columns: minmax(17rem, .72fr) minmax(0, 1.28fr); align-items: end; gap: clamp(3rem, 8vw, 8rem); }
.webapps-editions > header p { color: #40526a; font-size: 1.02rem; line-height: 1.65; }
.webapps-edition-table-wrap { overflow-x: auto; margin-top: 3rem; border: 1px solid rgb(190 77 49 / 17%); border-radius: 1.35rem; background: rgb(255 255 255 / 70%); box-shadow: 0 1.4rem 3.5rem rgb(50 45 42 / 8%); backdrop-filter: blur(1rem); }
.webapps-edition-table { width: 100%; min-width: 48rem; border-collapse: collapse; }
.webapps-edition-table th,
.webapps-edition-table td { padding: 1.15rem 1.25rem; border-bottom: 1px solid var(--webapps-line); text-align: center; }
.webapps-edition-table th:first-child { text-align: left; }
.webapps-edition-table thead th { color: #283a51; background: rgb(247 249 250 / 76%); }
.webapps-edition-table tbody th { color: #24364c; }
.webapps-edition-table tbody td { color: #087b31; font-weight: 780; }
.webapps-edition-table tbody tr:last-child > * { border-bottom: 0; }

.webapps-benefits dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--webapps-line); }
.webapps-benefits dl div { padding: 1.35rem 1.5rem 1.35rem 0; border-bottom: 1px solid var(--webapps-line); }
.webapps-benefits dl div:nth-child(even) { padding-left: 1.5rem; border-left: 1px solid var(--webapps-line); }
.webapps-benefits dt { font-weight: 850; }
.webapps-benefits dd { margin-top: .4rem; color: var(--webapps-muted); line-height: 1.55; }

.webapps-faq > div { border-top: 1px solid var(--webapps-line); }
.webapps-faq details { border-bottom: 1px solid var(--webapps-line); }
.webapps-faq summary { padding: 1.25rem 2rem 1.25rem 0; font-weight: 820; cursor: pointer; }
.webapps-faq details p { max-width: 54rem; padding: 0 2rem 1.4rem 0; color: var(--webapps-muted); line-height: 1.65; }

.webapps-final {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-top: clamp(3rem, 5vw, 5rem);
    padding: clamp(2rem, 3.5vw, 3rem);
    border: 1px solid rgb(183 52 28 / 24%);
    border-radius: 1.4rem;
    color: #fff;
    background: linear-gradient(105deg, #d74326, #ec672f 58%, #f18b3a);
    box-shadow: 0 1.5rem 3.5rem rgb(135 49 28 / 14%);
}
.webapps-final h2 { max-width: none; color: #fff; font-size: clamp(1.8rem, 2.6vw, 2.7rem); }
.webapps-final p { margin-top: .55rem; color: rgb(255 255 255 / 88%); }
.webapps-final > div:last-child { display: flex; flex: 0 0 auto; gap: .65rem; }

@media (max-width: 980px) {
    .webapps-hero,
    .webapps-answer,
    .webapp-detail,
    .webapps-editions > header,
    .webapps-benefits,
    .webapps-faq { grid-template-columns: 1fr; gap: 2rem; }
    .webapps-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .webapps-overview a:nth-child(3) { border-left: 0; }
    .webapps-overview a:nth-child(n + 3) { border-top: 1px solid var(--webapps-line); }
    .webapp-detail--reverse .webapp-detail-visual,
    .webapp-detail--reverse .webapp-detail-copy { grid-row: auto; grid-column: auto; }
    .webapp-detail--reverse .webapp-detail-visual { order: 0; }
    .webapp-detail--reverse .webapp-detail-copy { order: 1; }
}

@media (max-width: 640px) {
    .webapps-hero { padding-top: 1.75rem; padding-bottom: 4rem; }
    .webapps-hero-copy h1 { font-size: clamp(2.7rem, 13vw, 4rem); }
    .webapps-overview { grid-template-columns: 1fr; }
    .webapps-overview a + a { border-top: 1px solid var(--webapps-line); border-left: 0; }
    .webapps-benefits dl { grid-template-columns: 1fr; }
    .webapps-benefits dl div:nth-child(even) { padding-left: 0; border-left: 0; }
    .webapps-final { align-items: stretch; flex-direction: column; }
    .webapps-final > div:last-child { flex-direction: column; }
    .webapps-final .button { width: 100%; }
}

@media (max-width: 640px) {
    .datanorm-definition-layout,
    .datanorm-files-layout,
    .datanorm-versions-layout,
    .datanorm-excel-layout,
    .datanorm-why-section,
    .datanorm-faq-section,
    .datanorm-flow-section,
    .datanorm-content-section {
        padding-block: 3.5rem;
    }

    .datanorm-definition h2,
    .datanorm-section-heading h2,
    .datanorm-why-copy h2,
    .datanorm-excel-layout h2 {
        max-width: none;
        font-size: clamp(2.05rem, 10vw, 2.7rem);
    }
}
/* Shared editorial pages: contact, downloads and legal information */
.info-page {
  padding-bottom: clamp(4rem, 8vw, 7rem);
}

.info-breadcrumb {
  padding-top: clamp(1.5rem, 3vw, 2.5rem);
}

.info-hero {
  padding-top: clamp(1rem, 1.5vw, 1.4rem);
  padding-bottom: clamp(2.75rem, 4.5vw, 4rem);
}

.info-hero h1 {
  max-width: none;
  margin: 0;
  color: var(--text);
  font-size: clamp(2.8rem, 4vw, 4.25rem);
  line-height: 1.02;
  letter-spacing: -.055em;
  white-space: nowrap;
}

.info-hero p {
  max-width: 78rem;
  margin: 1rem 0 0;
  color: var(--muted);
  font-size: clamp(1rem, 1.35vw, 1.18rem);
  line-height: 1.65;
}

.info-contact-channels {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: clamp(4rem, 8vw, 7rem);
  overflow: hidden;
  border: 1px solid rgba(173, 61, 25, .17);
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, .68);
  box-shadow: 0 1.5rem 3.5rem rgba(18, 31, 55, .08);
  backdrop-filter: blur(18px);
}

.info-contact-channels article {
  padding: clamp(1.5rem, 3vw, 2.4rem);
}

.info-contact-channels article + article {
  border-left: 1px solid rgba(173, 61, 25, .14);
}

.info-contact-channels h2,
.info-link-list h2 {
  margin: 0 0 .7rem;
  font-size: clamp(1.25rem, 1.8vw, 1.55rem);
  line-height: 1.2;
}

.info-contact-channels p,
.info-link-list p {
  margin: 0 0 1rem;
  color: var(--muted);
  line-height: 1.65;
}

.info-contact-channels a,
.info-link-list a,
.info-copy a,
.info-legal a {
  color: var(--brand-dark);
  font-weight: 700;
}

.info-editorial {
  display: grid;
  grid-template-columns: minmax(16rem, .75fr) minmax(0, 1.25fr);
  gap: clamp(2rem, 7vw, 7rem);
  align-items: start;
  margin-bottom: clamp(4rem, 8vw, 7rem);
}

.info-editorial > div:first-child h2 {
  max-width: none;
  margin: 0;
  font-size: clamp(2rem, 2.8vw, 2.75rem);
  line-height: 1.05;
  letter-spacing: -.045em;
  white-space: nowrap;
}

.info-copy .button {
  color: #fff;
}

.info-editorial > div:first-child p,
.info-copy p {
  color: var(--muted);
  line-height: 1.75;
}

.info-editorial--accent {
  padding: clamp(1.75rem, 4vw, 3.5rem);
  border: 1px solid rgba(173, 61, 25, .16);
  border-radius: 1.5rem;
  background: linear-gradient(135deg, rgba(255,255,255,.78), rgba(255,245,238,.64));
  box-shadow: 0 1.5rem 3.5rem rgba(18, 31, 55, .07);
}

.info-download-primary {
  display: block;
  margin-bottom: clamp(2rem, 3vw, 3rem);
  padding-block: clamp(2rem, 3.5vw, 3rem);
  border-top: 1px solid rgba(173, 61, 25, .18);
}

.info-download-primary > div {
  max-width: 54rem;
}

.info-download-primary > div:first-child h2 {
  max-width: none;
  font-size: clamp(2rem, 2.8vw, 2.75rem);
}

.info-download-primary .info-copy {
  display: grid;
  justify-items: start;
  margin-top: .75rem;
}

.info-download-primary .info-copy p {
  margin: 0 0 1.25rem;
}

.info-copy address,
.info-legal address {
  margin-bottom: 1.5rem;
  color: var(--text);
  font-style: normal;
  line-height: 1.75;
}

.info-contact-list {
  margin: 0;
}

.info-contact-list div {
  display: grid;
  grid-template-columns: minmax(8rem, .4fr) 1fr;
  gap: 1rem;
  padding: .85rem 0;
  border-top: 1px solid rgba(173, 61, 25, .13);
}

.info-contact-list dt {
  font-weight: 700;
}

.info-contact-list dd {
  margin: 0;
}

.info-contact-details {
  display: block;
  max-width: var(--shell);
}

.info-contact-details > div {
  max-width: 58rem;
}

.info-contact-details > div:first-child h2 {
  max-width: none;
}

.info-contact-details .info-copy {
  margin-top: 2rem;
}

.info-contact-details .info-copy address {
  margin-bottom: 1.75rem;
}

.info-link-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(2rem, 5vw, 5rem);
}

.info-link-list article {
  padding-top: 1.5rem;
  border-top: 1px solid rgba(173, 61, 25, .18);
}

.info-legal {
  max-width: 82rem;
}

.info-legal section {
  display: block;
  padding: clamp(2rem, 4vw, 3.5rem) 0;
  border-top: 1px solid rgba(173, 61, 25, .16);
}

.info-legal h2 {
  max-width: none;
  margin: 0 0 1.35rem;
  font-size: clamp(1.35rem, 1.8vw, 1.65rem);
  line-height: 1.15;
  letter-spacing: -.025em;
}

.info-legal h3 {
  max-width: 78ch;
  margin: 1.2rem 0 .25rem;
  font-size: 1.08rem;
}

.info-legal h3:first-of-type {
  margin-top: 0;
}

.info-legal p {
  max-width: 78ch;
  margin: 0 0 1rem;
  color: var(--muted);
  line-height: 1.75;
}

.info-legal address {
  max-width: 78ch;
}

@media (max-width: 800px) {
  .info-hero h1 {
    max-width: none;
    font-size: clamp(2.3rem, 11vw, 3.3rem);
    white-space: normal;
  }

  .info-contact-channels,
  .info-editorial,
  .info-link-list {
    grid-template-columns: 1fr;
  }

  .info-contact-channels article + article {
    border-top: 1px solid rgba(173, 61, 25, .14);
    border-left: 0;
  }

  .info-editorial {
    gap: 1.5rem;
  }

  .info-editorial > div:first-child h2 {
    white-space: normal;
  }

}
/* Verbindliche Hero-Typografie für alle Unterseiten */
.site-hero-title {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.04;
  letter-spacing: -.05em;
  text-wrap: balance;
}

h1.site-hero-title.site-hero-title--editorial {
  font-size: clamp(2.75rem, 3.7vw, 3.85rem);
}

h1.site-hero-title.site-hero-title--product {
  font-size: clamp(2.75rem, 3.7vw, 3.85rem);
}

@media (max-width: 820px) {
  h1.site-hero-title.site-hero-title--editorial {
    font-size: clamp(2.4rem, 7vw, 3.1rem);
  }

  h1.site-hero-title.site-hero-title--product {
    font-size: clamp(2.4rem, 7vw, 3.1rem);
  }
}

@media (max-width: 600px) {
  h1.site-hero-title.site-hero-title--editorial {
    font-size: clamp(2.15rem, 9vw, 2.65rem);
  }

  h1.site-hero-title.site-hero-title--product {
    font-size: clamp(2.15rem, 9vw, 2.65rem);
  }

  .news-hero-copy .site-hero-title span,
  .demo-hero-copy .site-hero-title span {
    white-space: normal;
  }
}
