/* Build 15: konsistente Konsolidierung ohne neue Designrichtung */
:root{--action-blue:#0b6fa9;--action-blue-dark:#07517d;--action-blue-focus:#63d9f5}

/* Einheitliche, kompakte Seitenköpfe */
.portal-hero,.master-hero:not(.product-hero),.app-detail-hero{min-height:0!important;padding:0!important}
.portal-hero>.shell,.master-hero-grid,.compact-hero-content,.app-detail-hero>.shell{min-height:0!important;padding-top:clamp(50px,6vw,76px)!important;padding-bottom:clamp(50px,6vw,76px)!important}
.portal-hero h1,.master-hero h1,.app-detail-hero h1{font-size:clamp(2.25rem,4.5vw,4.4rem);line-height:1.04;margin:.16em 0 .28em;max-width:18ch}
.portal-hero p:not(.portal-kicker),.master-hero .master-lead,.app-detail-hero p{max-width:68ch;margin-bottom:0}

/* Ein verbindlicher blauer Aktionsstil */
.button,.portal-button,.card-button,button[data-email],a.email-revealed,.contact-route [data-email],.footer-contact [data-email]{min-height:46px;padding:0 20px!important;border:1px solid #218bbd!important;border-radius:10px!important;background:linear-gradient(180deg,#1688bd 0%,var(--action-blue) 58%,var(--action-blue-dark) 100%)!important;color:#fff!important;font:700 14px/1.2 Arial,sans-serif!important;text-decoration:none!important;box-shadow:inset 0 1px rgba(255,255,255,.28),0 9px 22px rgba(4,63,99,.18)!important;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
.button:hover,.portal-button:hover,.card-button:hover,button[data-email]:hover,a.email-revealed:hover{transform:translateY(-2px);filter:brightness(1.08);box-shadow:inset 0 1px rgba(255,255,255,.34),0 13px 28px rgba(4,63,99,.25)!important}
.button:focus-visible,.portal-button:focus-visible,.card-button:focus-visible,button[data-email]:focus-visible,a.email-revealed:focus-visible{outline:3px solid var(--action-blue-focus)!important;outline-offset:3px}

/* Ruhiger, browserstabiler Startseiten-Hero */
.b14-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(340px,.72fr);gap:clamp(42px,5vw,76px);min-height:590px;padding-block:clamp(66px,7vw,86px)}
.hero-copy{min-width:0}.hero-copy h1{font-size:clamp(2.6rem,4.7vw,4.9rem);max-width:12ch}
.hero-app-showcase{width:100%;max-width:430px;justify-self:end;min-width:0}
.hero-app-motion{gap:14px!important}.hero-app-motion a{padding:11px;border-radius:20px}.hero-app-motion img{width:min(100%,118px)!important;border-radius:21px}.hero-app-motion span{font-size:.9rem;margin-top:7px}

/* Kontaktangaben bewusst nicht als CTA */
.footer-contact{gap:4px}.footer-contact .contact-line,.contact-details .contact-line{display:block;color:#c6d8e8;font:500 14px/1.55 Arial,sans-serif;white-space:nowrap}
.contact-details .contact-line{color:#173c56}.contact-number{font-size:1rem!important;font-weight:600!important;color:inherit!important}

/* Reduzierter Abschluss und stabilere Karten */
.final-cta{text-align:center}.final-cta p:not(.eyebrow){max-width:650px;margin:0 auto 18px;color:#c5d8e7}.final-cta .eyebrow{justify-content:center}.cta-choice-grid{justify-content:center}
.service-card-grid>a,.service-card,.info-grid article,.contact-overview article,.master-card,.portal-card{height:100%}

/* Kein kollidierendes Layout bei Windows-Notebookbreiten */
@media(max-width:1260px){.b14-hero-grid{grid-template-columns:minmax(0,1fr) 360px;gap:42px}.hero-copy h1{font-size:clamp(2.45rem,4.5vw,4.2rem)}.hero-app-showcase{max-width:360px}.hero-app-motion img{width:min(100%,102px)!important}.build14-header .brand{flex-basis:190px}.build14-header .master-brand{width:190px}}
@media(max-width:1020px){.b14-hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{text-align:center}.hero-copy h1,.hero-copy>p{margin-left:auto;margin-right:auto}.hero-copy .button-row{justify-content:center}.hero-app-showcase{justify-self:center;max-width:520px}.hero-app-motion img{width:min(100%,116px)!important}}
@media(max-width:640px){.portal-hero>.shell,.master-hero-grid,.compact-hero-content,.app-detail-hero>.shell{padding-top:42px!important;padding-bottom:42px!important}.b14-hero .shell{width:100%;max-width:100%;padding-inline:14px}.b14-hero-grid{width:100%;padding-block:48px;gap:34px}.hero-copy,.hero-copy>*{max-width:100%!important;min-width:0}.hero-copy h1{font-size:clamp(2.05rem,10.5vw,3.15rem);overflow-wrap:anywhere;word-break:normal}.hero-copy>p:not(.eyebrow){font-size:1rem;overflow-wrap:anywhere}.hero-copy .button-row{display:grid;grid-template-columns:1fr;width:100%}.hero-copy .button{width:100%;box-sizing:border-box}.hero-app-showcase{max-width:360px}.hero-app-motion{gap:10px!important}.hero-app-motion img{width:min(100%,94px)!important}.button,.portal-button,.card-button,button[data-email],a.email-revealed{width:100%;box-sizing:border-box}.footer-contact .contact-line{white-space:normal}}

@media(prefers-reduced-motion:reduce){.hero-app-motion a,.button,.portal-button,.card-button{transition:none!important;transform:none!important}}
