/* KI & Alltag V5 · local stylesheet. No fonts, libraries or trackers are loaded. */
:root {
  --blue:#0069b5; --blue-hover:#00558f; --navy:#0d1b2a; --ink:#172231;
  --muted:#526376; --line:#d8e2eb; --soft:#f5f8fb; --soft-blue:#eaf5fc;
  --green:#087257; --white:#fff; --shadow:0 16px 42px rgba(13,27,42,.09);
}
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { scroll-behavior:smooth; font-size:100%; scroll-padding-block:7rem 8rem; }
html.large-text { font-size:125%; }
body { margin:0; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif; color:var(--ink); background:var(--white); line-height:1.65; overflow-wrap:anywhere; }
a { color:inherit; text-underline-offset:.18em; }
img { max-width:100%; height:auto; display:block; }
svg { max-width:100%; }
button { font:inherit; }
button, a { -webkit-tap-highlight-color:transparent; }
button:focus-visible, a:focus-visible, summary:focus-visible { outline:3px solid #005ca8; outline-offset:4px; }
.hero :focus-visible, .section.navy :focus-visible, footer :focus-visible { outline-color:#f4c961; }
main:focus { outline:none; }
.container { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
h1,h2,h3 { margin:0; color:var(--navy); letter-spacing:-.025em; overflow-wrap:anywhere; }
h1 { font-size:clamp(2.55rem,1.65rem + 2.4vw,4.1rem); font-weight:800; line-height:1.12; }
h2 { font-size:clamp(1.9rem,1.3rem + 1.5vw,2.9rem); font-weight:800; line-height:1.17; }
h3 { font-size:1.2rem; font-weight:750; line-height:1.3; hyphens:auto; }
p { margin:0 0 1rem; }
p:last-child { margin-bottom:0; }
.eyebrow { display:flex; align-items:center; gap:10px; font-size:.78rem; line-height:1.45; text-transform:uppercase; letter-spacing:.09em; font-weight:750; color:var(--blue); margin-bottom:14px; }
.eyebrow::before { content:""; width:23px; height:3px; flex-shrink:0; border-radius:3px; background:currentColor; }
.lead { max-width:790px; margin-top:18px; font-size:1.08rem; color:var(--muted); }
.section { padding:80px 0; }
.section.soft { background:var(--soft); }
.section.navy { background:var(--navy); color:#dce7f0; }
.section.navy h2 { color:#fff; }
.section.navy .eyebrow { color:#8fd1ff; }
.section.navy .lead { color:#d0dde7; }
.section-head { max-width:840px; margin-bottom:35px; }
.section-head.center { margin-inline:auto; text-align:center; }
.section-head.center .eyebrow { justify-content:center; }
.section-head.center .lead { margin-inline:auto; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:50px; padding:12px 19px; border-radius:13px; border:1px solid transparent; text-decoration:none; text-align:center; font-weight:750; line-height:1.4; cursor:pointer; transition:background-color .15s ease,box-shadow .15s ease; overflow-wrap:anywhere; }
.btn svg,.bottom-call svg { width:22px; height:22px; flex:0 0 auto; }
.btn-primary { background:var(--blue); color:#fff; box-shadow:0 10px 24px rgba(0,105,181,.16); }
.btn-primary:hover { background:var(--blue-hover); color:#fff; }
.btn-light { background:#fff; color:var(--navy); }
.btn-outline { border-color:#adbfce; background:#fff; color:var(--navy); }
.btn-outline:hover { background:var(--soft-blue); }
.btn-ghost { border-color:#738b9f; color:#fff; background:rgba(255,255,255,.06); }
.btn-ghost:hover { background:rgba(255,255,255,.14); }
.skip-link { position:absolute; top:8px; left:10px; transform:translateY(-180%); background:#fff; color:#000; padding:12px 15px; border-radius:8px; z-index:100; }
.skip-link:focus { transform:none; }
.header { position:sticky; top:0; z-index:40; background:#fff; border-bottom:1px solid var(--line); }
.nav { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; padding-block:10px; }
.brand { display:flex; align-items:center; gap:10px; min-width:0; text-decoration:none; flex:0 1 auto; }
.brand-mark { width:44px; height:44px; flex:0 0 auto; display:grid; place-items:center; border-radius:13px; background:linear-gradient(145deg,var(--blue),#2599e8); box-shadow:0 6px 16px rgba(0,105,181,.16); }
.brand-mark svg { width:27px; height:27px; }
.brand-title { display:block; font-size:1.08rem; font-weight:800; line-height:1.25; color:var(--navy); }
.brand-sub { display:block; margin-top:3px; font-size:.7rem; color:var(--muted); line-height:1.4; }
.nav-links { display:flex; gap:17px; align-items:center; justify-content:center; flex:1 1 auto; }
.nav-links a { padding-block:8px; text-decoration:none; font-weight:650; font-size:.875rem; line-height:1.35; color:#283d50; }
.nav-links a:hover { color:var(--blue); }
.nav-links .btn { padding:12px 17px; color:#fff; }
.access-tools { display:flex; gap:5px; align-items:center; flex:0 0 auto; }
.access-btn,.menu-btn { display:flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:5px; border:1px solid #acbecd; border-radius:10px; color:var(--navy); background:#fff; font-weight:750; cursor:pointer; }
.access-btn[aria-pressed="true"] { color:#fff; background:var(--blue); border-color:var(--blue); }
.menu-btn { display:none; font-size:1.2rem; }
.hero { position:relative; overflow:hidden; padding:65px 0; background:linear-gradient(120deg,#08131f 0%,#0d1b2a 52%,#11324f 100%); color:#fff; }
.hero::before { content:""; position:absolute; width:600px; height:600px; right:-190px; bottom:-280px; border-radius:50%; background:radial-gradient(circle,rgba(0,119,200,.27),transparent 66%); pointer-events:none; }
.hero-grid { display:grid; grid-template-columns:1.08fr .92fr; gap:58px; align-items:center; position:relative; }
.hero-grid>*,.idea-intro>*,.example-wrap>*,.safety-grid>*,.person-block>*,.footer-grid>*,.cta>* { min-width:0; }
.hero .eyebrow { color:#a2d8ff; }
.hero h1 { color:#fff; max-width:700px; }
.hero h1 span { color:#87d0ff; display:block; margin-top:.1em; }
.hero-copy>p { font-size:1.09rem; line-height:1.65; color:#d3dfe8; margin:23px 0 27px; max-width:690px; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:25px; }
.hero-facts { display:flex; flex-wrap:wrap; gap:10px 20px; font-size:.875rem; color:#d8e6ef; }
.hero-facts span { display:flex; gap:7px; align-items:baseline; }
.hero-facts span::before { content:"✓"; color:#8fd1ff; }
.hero-visual { min-width:0; width:100%; max-width:510px; margin-inline:auto; position:relative; }
.hero-frame { border-radius:27px; padding:8px; background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.05)); border:1px solid rgba(255,255,255,.2); box-shadow:0 24px 65px rgba(0,0,0,.25); }
.hero-frame img { width:100%; height:auto; aspect-ratio:1122/1195; object-fit:contain; border-radius:20px; }
.hero-tag { max-width:95%; position:absolute; left:14px; bottom:64px; padding:11px 15px; border-radius:14px; background:#fff; color:var(--navy); font-weight:750; font-size:.86rem; box-shadow:0 10px 28px rgba(0,0,0,.18); }
.hero-tag small { display:block; margin-top:2px; font-size:.74rem; font-weight:500; color:var(--muted); }
.hero-caption { margin:14px 8px 0; color:#c5d7e5; font-size:.76rem; line-height:1.5; }
.hero-caption a { display:inline; }
.trust-strip { border-bottom:1px solid var(--line); }
.trust-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.trust-item { display:flex; align-items:center; gap:12px; padding:22px 16px; border-right:1px solid var(--line); }
.trust-item:last-child { border:0; }
.trust-icon { width:43px; height:43px; flex:0 0 auto; border-radius:12px; display:grid; place-items:center; background:var(--soft-blue); color:var(--blue); }
.trust-icon svg { width:25px; height:25px; }
.trust-item b { display:block; font-size:.9rem; line-height:1.45; color:var(--navy); }
.trust-item span { display:block; font-size:.79rem; color:var(--muted); margin-top:2px; line-height:1.5; }
.idea-intro { display:grid; grid-template-columns:.92fr 1.08fr; gap:45px; align-items:center; }
.idea-quote { padding:27px; border:1px solid var(--line); border-radius:23px; background:#fff; box-shadow:var(--shadow); }
.idea-quote .big { font-size:1.32rem; font-weight:750; line-height:1.35; color:var(--navy); margin-bottom:13px; }
.idea-quote p { color:var(--muted); }
.life-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:17px; margin-top:35px; }
.life-card { display:flex; flex-direction:column; align-items:flex-start; padding:23px; background:#fff; border:1px solid var(--line); border-radius:20px; }
.life-icon { width:49px; height:49px; flex:0 0 auto; border-radius:14px; display:grid; place-items:center; background:var(--soft-blue); color:var(--blue); margin-bottom:16px; }
.life-icon svg { width:29px; height:29px; }
.life-card p { margin:10px 0 16px; font-size:.94rem; color:var(--muted); }
.life-card .hint { display:block; font-size:.78rem; font-weight:650; line-height:1.5; color:var(--blue); margin-top:auto; }
.principle { display:flex; gap:18px; padding:24px; margin-top:26px; border:1px solid #c7e0ef; border-radius:20px; background:var(--soft-blue); }
.principle .dot { display:grid; place-items:center; width:47px; height:47px; flex:0 0 auto; background:var(--blue); color:#fff; border-radius:13px; }
.principle .dot svg { width:27px; height:27px; }
.principle p { margin:7px 0 0; color:var(--muted); }
.example-wrap { display:grid; grid-template-columns:.96fr 1.04fr; gap:40px; align-items:start; }
.example-list { display:grid; gap:10px; margin-top:24px; }
.example-btn { width:100%; min-height:50px; padding:13px 16px; border:1px solid #a8bccb; border-radius:13px; background:#fff; color:var(--ink); font-weight:650; text-align:left; cursor:pointer; line-height:1.4; }
.example-btn:hover { background:var(--soft-blue); }
.example-btn.active { border-color:var(--blue); background:var(--soft-blue); color:#005897; box-shadow:inset 4px 0 0 var(--blue); }
.demo-panel { padding:23px; border-radius:25px; background:var(--navy); color:#fff; box-shadow:var(--shadow); }
.demo-label { margin-bottom:13px; color:#a2d8ff; font-weight:700; font-size:.76rem; letter-spacing:.07em; text-transform:uppercase; }
.demo-screen { background:#fff; color:var(--ink); padding:20px; border-radius:17px; }
.demo-input { background:var(--soft-blue); color:var(--ink); padding:16px; border-radius:13px; margin-bottom:14px; font-weight:650; }
.demo-output { border:1px solid var(--line); border-radius:13px; padding:16px; color:#405365; }
.demo-output b { display:block; color:var(--navy); margin-bottom:8px; }
.demo-caution { background:#fff8e8; border:1px solid #e4c983; border-radius:13px; padding:13px 15px; color:#614b19; font-size:.87rem; margin-top:17px; }
.demo-privacy { font-size:.81rem; line-height:1.55; color:var(--muted); margin:14px 0 0; }
.examples-static { display:grid; gap:10px; margin-top:22px; }
.js .examples-static { display:none; }
.audience-grid,.formats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:17px; }
.audience-card,.format-card { min-width:0; padding:24px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.audience-card.featured { border-color:#bcdced; background:#f7fbff; }
.audience-card p,.format-card p { margin:11px 0 0; color:var(--muted); font-size:.94rem; }
.format-card>strong { display:inline-block; padding:6px 10px; margin-bottom:17px; border-radius:99px; background:var(--soft-blue); color:var(--blue); font-size:.76rem; text-transform:uppercase; letter-spacing:.06em; }
.start-flow { margin-top:27px; border:1px solid #bddece; border-radius:20px; padding:25px; background:#f0faf6; }
.start-flow ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; margin:20px 0 0; padding-left:1.45em; }
.start-flow li { padding-left:3px; }
.start-flow li::marker { color:var(--green); font-weight:800; }
.start-flow strong { font-size:.95rem; }
.start-flow span { display:block; color:var(--muted); font-size:.91rem; margin-top:5px; }
.price-note { margin-top:23px; color:var(--muted); font-size:.95rem; }
.price-note strong { display:block; color:var(--navy); margin-bottom:5px; }
.safety-grid { display:grid; grid-template-columns:1fr 1fr; gap:45px; align-items:center; }
.safety-card { padding:27px; border:1px solid var(--line); border-radius:23px; background:#fff; color:var(--ink); }
/* Deliberate scope: headings inside a white card stay dark, even in navy sections. */
.section.navy .safety-card h3 { color:var(--navy); }
.safety-list { display:grid; gap:17px; margin-top:23px; }
.safety-row { display:grid; grid-template-columns:28px minmax(0,1fr); gap:12px; align-items:start; }
.safety-check { display:grid; place-items:center; width:28px; height:28px; border-radius:9px; background:#e7f7f1; color:#086b52; }
.safety-check svg { width:20px; height:20px; }
.safety-row b { display:block; margin-bottom:3px; color:var(--navy); }
.safety-row span { color:var(--muted); font-size:.91rem; line-height:1.6; }
.quote-box { margin-top:28px; border-left:3px solid #69bdf5; padding:12px 0 12px 20px; font-size:1.02rem; color:#dce9f3; }
.person-block { display:grid; grid-template-columns:.7fr 1.3fr; gap:35px; align-items:center; padding:30px; border:1px solid var(--line); border-radius:24px; background:#fff; }
.person-badge { padding:27px; border-radius:19px; background:var(--navy); color:#fff; }
.person-badge strong { display:block; overflow-wrap:anywhere; font-size:1.5rem; line-height:1.3; }
.person-badge span { display:block; color:#c0d6e5; margin-top:12px; }
.person-copy p { color:var(--muted); margin:13px 0 0; }
.crosslinks .btn { max-width:100%; }
.crosslinks { display:flex; flex-wrap:wrap; gap:12px; margin-top:23px; }
.faq { max-width:920px; margin-inline:auto; display:grid; gap:12px; }
details { padding:0 20px; border:1px solid #cad8e3; border-radius:15px; background:#fff; }
summary { padding:19px 0; font-weight:700; color:var(--navy); cursor:pointer; line-height:1.45; }
summary::marker { color:var(--blue); }
details p { color:var(--muted); margin:0 0 18px; }
.section-cta { padding-top:10px; }
.cta { display:grid; grid-template-columns:1fr auto; gap:25px 32px; align-items:center; padding:35px; color:#fff; background:linear-gradient(120deg,#0d1b2a,#123554); border-radius:25px; }
.cta h2 { color:#fff; font-size:clamp(1.8rem,1.2rem + 1.4vw,2.5rem); }
.cta p { margin:13px 0 0; color:#d5e3ed; }
.cta-actions { display:flex; flex-direction:column; gap:10px; }
.cta .contact-privacy { grid-column:1/-1; margin:0; padding-top:18px; border-top:1px solid #4c6274; font-size:.88rem; color:#d1e0ea; }
footer { padding:42px 0; color:#c0ced9; background:#08131f; }
.footer-grid { display:grid; grid-template-columns:1.2fr 1fr .75fr; gap:35px; }
footer strong { color:#fff; }
footer a { color:#d9e7f2; }
.footer-about { max-width:450px; margin-top:12px; }
.footer-links { display:flex; flex-direction:column; align-items:flex-start; gap:10px; font-size:.92rem; }
.footer-links a { overflow-wrap:anywhere; }
.location-note { display:block; font-size:.84rem; color:#c0ced9; margin-top:10px; }
.legal { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-top:32px; padding-top:20px; border-top:1px solid #344758; font-size:.82rem; }
footer .demo-privacy { color:#c0ced9; }
.bottom-call { display:none; }
/* Native high-contrast mode is an enhancement, not a WCAG compliance claim. */
body.high-contrast { --ink:#000; --muted:#1f2a34; --line:#667687; --soft:#fff; --soft-blue:#e8f3fa; --navy:#000; --blue:#00538f; --blue-hover:#003b68; }
body.high-contrast .life-card,body.high-contrast .audience-card,body.high-contrast .format-card,body.high-contrast .idea-quote { border-width:2px; box-shadow:none; }
body.high-contrast .demo-output { color:#172231; }
body.high-contrast .hero { background:#061420; }
body.high-contrast .hero-copy>p,body.high-contrast .hero-facts,body.high-contrast .hero-caption { color:#fff; }
@media (max-width:1199px) {
  .nav { gap:10px; }
  .brand { flex:1 1 8rem; }
  .access-tools { order:1; }
  .menu-btn { display:flex; }
  .brand-sub { font-size:.68rem; }
  .nav-links { order:2; width:100%; flex-basis:100%; flex-direction:column; align-items:stretch; gap:4px; padding:10px 0; }
  .nav-links a { padding:11px 15px; border-radius:9px; }
  .nav-links a:hover { background:var(--soft-blue); }
  .nav-links .btn:hover { background:var(--blue-hover); }
  .js .nav-links:not(.open) { display:none; }
  .nav-links.open { max-height:65vh; overflow-y:auto; }
  html:not(.js) .header { position:relative; }
  .hero-grid { gap:35px; }
  .life-grid,.audience-grid,.formats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .life-card { padding:25px; }
}
@media (max-width:900px) {
  .hero-grid { grid-template-columns:1fr; gap:34px; }
  .hero-copy { max-width:750px; }
  .hero h1 { max-width:760px; }
  .hero-visual { max-width:490px; }
  .trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .trust-item:nth-child(2) { border-right:0; }
  .trust-item:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .idea-intro,.example-wrap,.safety-grid { grid-template-columns:1fr; gap:30px; }
  .example-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .person-block { grid-template-columns:1fr; }
  .start-flow ol { grid-template-columns:1fr; gap:15px; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid>div:first-child { grid-column:1/-1; }
  .cta { grid-template-columns:1fr; }
  .cta-actions { flex-direction:row; flex-wrap:wrap; }
}
@media (max-width:600px) {
  /* On small screens, show each answer directly below its question. */
  .js .examples-static { display:grid; }
  .example-list,.demo-panel { display:none !important; }
  .container { width:calc(100% - 28px); }
  .header { position:relative; }
  .nav { min-height:72px; gap:8px; }
  .brand-mark { width:38px; height:38px; border-radius:11px; }
  .brand { gap:8px; }
  .brand-title { font-size:1rem; }
  .brand-sub { display:none; }
  .access-tools { gap:3px; }
  h1 { font-size:clamp(2.2rem,1.5rem + 3.7vw,3.4rem); }
  .hero { padding:44px 0; }
  .hero-copy>p { font-size:1.03rem; }
  .hero-visual { max-width:410px; }
  .hero-tag { display:none; }
  .hero-caption { font-size:.81rem; }
  .section { padding:58px 0; }
  .section-head { margin-bottom:28px; }
  .trust-grid { grid-template-columns:1fr; }
  .trust-item { padding:16px 10px; border-right:0; border-bottom:1px solid var(--line); }
  .trust-item b { font-size:.95rem; }
  .trust-item span { font-size:.85rem; }
  .life-grid,.audience-grid,.formats-grid { grid-template-columns:1fr; }
  .life-card,.audience-card,.format-card { padding:23px; }
  .life-card p,.audience-card p,.format-card p { font-size:1rem; }
  .life-card .hint { font-size:.86rem; }
  .principle { flex-direction:column; padding:22px; }
  .idea-quote { padding:23px; }
  .example-list { grid-template-columns:1fr; }
  .demo-panel { padding:16px; }
  .demo-screen { padding:16px; }
  .safety-card,.person-block,.cta { padding:24px; }
  .footer-grid { grid-template-columns:1fr; }
  .footer-grid>div:first-child { grid-column:auto; }
  footer { padding-bottom:145px; }
  .bottom-call { display:flex; justify-content:center; align-items:center; gap:8px; position:fixed; z-index:45; left:12px; right:12px; bottom:10px; min-height:54px; border:1px solid #fff; border-radius:13px; background:var(--blue); color:#fff; padding:12px 14px; text-decoration:none; text-align:center; font-size:1rem; font-weight:750; line-height:1.4; box-shadow:0 8px 24px rgba(0,70,130,.22); }
  .bottom-call svg { display:none; }
  /* Do not cover another keyboard-focused control with the sticky phone bar. */
  body:has(:focus-visible) .bottom-call:not(:focus-visible) { visibility:hidden; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  * { transition:none !important; animation:none !important; }
}
@media (forced-colors:active) {
  .btn,.access-btn,.menu-btn,.example-btn,.life-card,.safety-card { border:1px solid ButtonText; }
  .hero,.section.navy,footer { background:Canvas; color:CanvasText; }
  .hero h1,.hero h1 span,.section.navy h2,footer a,footer strong { color:CanvasText; }
}
@media print {
  html { font-size:11pt; scroll-behavior:auto; }
  .header,.bottom-call,.hero-tag,.example-list,.demo-panel,.hero-visual { display:none !important; }
  .examples-static { display:block !important; }
  .hero,.section.navy,footer { background:#fff; color:#000; }
  .hero h1,.hero h1 span,.hero-copy>p,.hero-facts,.section.navy h2,.section.navy .lead,.quote-box,footer a,footer strong { color:#000; }
  .container { width:100%; }
  .section,.hero,footer { padding:18pt 0; }
  .hero-grid,.safety-grid,.example-wrap,.person-block { display:block; }
  .life-grid,.audience-grid,.formats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  article,details,.safety-row { break-inside:avoid; }
  .btn { box-shadow:none; }
}

/* V5 · bestätigter KI-Tarif; keine Paketangebote. */
.hero-price { display:inline-block; margin-top:18px; color:#cfe7f9; font-size:.88rem; line-height:1.5; text-underline-offset:.22em; }
.price-card { margin-top:30px; padding:30px; display:grid; grid-template-columns:.8fr 1.2fr; gap:30px; border:1px solid #bdd7e8; border-radius:23px; background:linear-gradient(135deg,#fff,#edf6fc); }
.price-card>* { min-width:0; }
.price-card .eyebrow { margin-bottom:10px; }
.price-card h3 { font-size:1.4rem; }
.price-amount { margin:14px 0 0; font-size:clamp(3rem,2.3rem + 2vw,4.1rem); font-weight:800; line-height:1.1; letter-spacing:-.03em; color:var(--navy); }
.price-amount span { display:inline-block; font-size:1rem; font-weight:650; letter-spacing:0; margin-left:.3em; }
.price-tax { color:var(--muted); font-size:.92rem; margin-top:6px; }
.price-unit { color:var(--blue); font-size:1.13rem; margin:15px 0 6px; font-weight:750; }
.price-detail { color:var(--muted); margin:0 0 16px; }
.price-card dl { margin:0; }
.price-card dl>div { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:5px 16px; padding:9px 0; border-bottom:1px solid #cfdeea; }
.price-card dt { color:var(--ink); }
.price-card dd { margin:0; font-weight:750; color:var(--navy); }
.price-card .price-small { color:var(--muted); font-size:.87rem; margin-top:12px; }
.price-card .btn { margin-top:18px; }
body.high-contrast .price-card { background:#fff; border:2px solid #667687; }
@media(max-width:900px) { .price-card { grid-template-columns:1fr; gap:22px; } }
@media(max-width:600px) { .price-card { padding:23px; } }
@media print { .price-card { background:#fff; break-inside:avoid; } .hero-price { color:#000; } }
