/* Spacing and responsive refinements. Brand tokens and component skins stay in styles.css. */
.style-refined :is(.hero-content,.hero-form-card,.work-card,.risk-card) { min-width:0; }
.style-refined .hero-description { max-width:65ch; text-wrap:pretty; }
.style-refined .hero-title { font-size:clamp(2.5rem,3.75vw,3rem); }
body.style-refined .hero-title { line-height:1.2!important; }
.style-refined .hero-title .hero-title-line { line-height:1.2; margin-bottom:0; }
.style-refined .hero-title-punchline { white-space:normal; line-height:1.6; }
.style-refined .hero-trust-tags { gap:var(--space-sm); }
.style-refined .trust-tag { align-items:flex-start; }
.style-refined .trust-tag-icon { flex-shrink:0; margin-top:var(--space-2xs); }
.style-refined :is(.work-desc,.risk-desc,.why-desc,.ecosystem-desc) { text-wrap:pretty; }
.style-refined .work-card { display:flex; flex-direction:column; }
.style-refined .work-tags-label { margin-top:auto; padding-top:var(--space-md); }
.style-refined .work-desc { margin-bottom:var(--space-md); }
.style-refined .form-header { margin-bottom:var(--space-lg); }
.style-refined .form-title { line-height:1.35; }
.style-refined .form-subtitle { margin-top:var(--space-sm); }
.style-refined .consultation-form { gap:var(--space-md); }
.style-refined .form-label { line-height:1.5; }
.style-refined .form-control { min-width:0; }
.style-refined .form-note small { display:inline-block; margin-top:var(--space-xs); font-size:inherit; }
.style-refined :is(a,button,input,select):focus-visible { outline:3px solid var(--accent-gold); outline-offset:3px; }
.style-refined .demo-modal-overlay:not(.active) { visibility:hidden; }
.style-refined .demo-modal { max-height:calc(100dvh - 48px); overflow-y:auto; }
.style-refined .mobile-zalo-logo { display:block; width:24px; height:24px; object-fit:contain; flex-shrink:0; }
.style-refined .zalo-avatar { background:transparent; border:0; }
.style-refined .zalo-avatar img { display:block; width:36px; height:36px; object-fit:contain; }
.style-refined :is(.risk-icon-box,.work-icon-box,.why-icon-box) > svg { width:24px; height:24px; flex-shrink:0; overflow:visible; }
.style-refined :is(#form-section,section[id]) { scroll-margin-top:96px; }
@media(min-width:1025px) {
 .style-refined .hero-title { font-size:clamp(2rem,3.35vw,3rem); }
 .style-refined .site-nav { gap:var(--space-md); }
 .style-refined .nav-link { white-space:nowrap; }
}
@media(max-width:767px) {
 .style-refined .hero-title .hero-title-line { white-space:normal!important; }
 .style-refined .hero-title .text-gold-gradient { display:inline; }
 .style-refined .hero-title-punchline { gap:var(--space-xs); font-size:.875rem; }
 .style-refined .hero-image-caption { gap:var(--space-xs); flex-wrap:wrap; }
 .style-refined .hero-form-card { padding:var(--space-lg)!important; }
 .style-refined .form-title { font-size:1.5rem!important; }
 .style-refined .form-control { font-size:1rem!important; }
 .style-refined .cross-sell-checkbox-grid { grid-template-columns:1fr; }
 .style-refined .tab-btn { white-space:normal; min-height:48px; }
 .style-refined .faq-question-btn { line-height:1.5; }
 .style-refined .footer-bottom { flex-wrap:wrap; gap:var(--space-md); }
}
@media(max-width:390px) {
 body.style-refined .hero-title { font-size:1.75rem!important; }
}
@media(prefers-reduced-motion:reduce) {
 .style-refined *, .style-refined *::before,.style-refined *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
