/* Existing Domiko typography, blue CTA and lavender surfaces; scoped to two additions. */
.dha-section { --dha-ink:#19172d; --dha-muted:#514f62; --dha-blue:#0668d4; padding-block:40px; color:var(--dha-ink); }
.dha-section * { box-sizing:border-box; }
.dha-section .dha-copy { min-width:0; }
.dha-section h2 { font-family:inherit; font-size:clamp(28px,3.2vw,44px); font-weight:700; line-height:1.14; letter-spacing:-.025em; margin:0 0 24px; max-width:21ch; text-wrap:balance; }
.dha-section .dha-description { font-size:18px; line-height:1.65; max-width:54ch; margin:0 0 28px; color:var(--dha-muted); }
.dha-customer-layout { display:grid; grid-template-columns:1.12fr 1fr; gap:64px; align-items:center; padding:48px; background:#fff; border-radius:24px; }
.dha-section .dha-points { list-style:none; padding:0; margin:0; }
.dha-section .dha-points li { margin:0; padding:18px 0; font-size:18px; line-height:1.55; border-bottom:1px solid #dddde6; }
.dha-section .dha-points li:first-child { padding-top:0; }
.dha-section .dha-points li:last-child { border-bottom:0; padding-bottom:0; }
.dha-section .dha-button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; max-width:100%; padding:14px 24px; border-radius:12px; background:var(--dha-blue); color:#fff; font-size:16px; font-weight:600; line-height:1.4; text-align:center; text-decoration:none; transition:background-color 180ms ease; }
.dha-section .dha-button:hover { background:#0757ad; color:#fff; }
.dha-section a:focus-visible { outline:3px solid #392bc4; outline-offset:4px; }
.dha-partner-layout { display:grid; grid-template-columns:1.1fr 1fr; gap:64px; padding:48px; align-items:start; background:#eeedf9; border-radius:24px; }
.dha-partner .dha-points { margin-bottom:32px; }
.dha-partner .dha-points li { font-size:16px; }
.dha-rating { min-width:0; }
.dha-rating h3 { margin:0 0 12px; font-size:24px; line-height:1.3; font-weight:600; text-wrap:balance; }
.dha-rating > p { color:var(--dha-muted); font-size:15px; line-height:1.6; margin:0 0 20px; }
.dha-rating .dh-promo-example { margin:0; }
.dha-rating .dha-text-link { display:inline-block; margin-top:18px; color:#392bc4; font-size:15px; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:991px) { .dha-customer-layout,.dha-partner-layout { grid-template-columns:1fr; gap:32px; padding:32px; } .dha-section h2 { max-width:24ch; } }
@media(max-width:540px) { .dha-section { padding-block:24px; } .dha-customer-layout,.dha-partner-layout { padding:24px 20px; gap:28px; border-radius:20px; } .dha-section .dha-description { font-size:16px; line-height:1.6; } .dha-section .dha-points li { font-size:16px; } .dha-section h2 { margin-bottom:20px; font-size:28px; } .dha-rating h3 { font-size:22px; } .dha-section .dha-button { width:100%; } }
@media(prefers-reduced-motion:reduce) { .dha-section .dha-button { transition:none; } }
