/* 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; }
/* Only visible widget controls intercept clicks, not the empty floating frame. */
.style-refined .zalo-widget { pointer-events:none; }
.style-refined .zalo-widget > :is(.zalo-btn,.zalo-tooltip) { pointer-events:auto; }
@media(min-width:769px) {
 .style-refined .footer-bottom { padding-right:88px; }
}
.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; }
.style-refined .faq-category-header { margin-top:28px; margin-bottom:10px; }
.style-refined .faq-category-header:first-child { margin-top:0; }
.style-refined .faq-category-badge { display:inline-flex; align-items:center; gap:8px; font-size:0.8125rem; font-weight:700; text-transform:uppercase; letter-spacing:0.06em; color:#8C6204; background:rgba(210,149,6,0.08); border:1px solid rgba(210,149,6,0.25); border-radius:6px; padding:6px 14px; }
.style-refined .faq-bullets { margin:10px 0 12px 0; padding-left:20px; list-style-type:disc; }
.style-refined .faq-bullets li { margin-bottom:6px; line-height:1.65; }
.style-refined .faq-bullets li:last-child { margin-bottom:0; }
.style-refined .risks-grid { grid-template-columns:repeat(3, 1fr); }
@media(max-width:900px) {
 .style-refined .risks-grid { grid-template-columns:1fr; }
}
/* Language Switcher */
.style-refined .lang-switcher { display:inline-flex; align-items:center; gap:2px; background:#F4F4F5; border:1px solid rgba(12,13,14,0.12); border-radius:20px; padding:3px 6px; font-size:0.8125rem; font-weight:700; margin-left:8px; }
.style-refined .lang-option { color:#71717A; text-decoration:none; padding:3px 8px; border-radius:12px; transition:all .2s; line-height:1; }
.style-refined .lang-option:hover { color:var(--accent-gold); }
.style-refined .lang-option.active { background:var(--accent-gold); color:#0C0D0E; }
.style-refined .lang-sep { color:#D4D4D8; font-size:0.6875rem; margin:0 1px; }
.style-refined .hero-title .hero-title-line { white-space:normal!important; word-break:normal!important; overflow-wrap:break-word!important; }
@media(max-width:768px) {
 body.copyright-body .header-actions { display:flex!important; align-items:center; }
 body.copyright-body .header-actions .btn { display:none!important; }
 body.copyright-body .header-actions .lang-switcher { display:inline-flex!important; margin-right:8px; }
}
/* Scope Title 2-Line Fix */
.style-refined .scope-title-custom { text-wrap:normal!important; font-size:clamp(1.75rem, 2.3vw, 2.15rem)!important; }
.style-refined .scope-title-line { display:block; }
@media(min-width:641px) {
 .style-refined .scope-title-line { white-space:nowrap; }
}
@media(min-width:1025px) {
 .style-refined .hero-title { font-size:clamp(2rem,3.35vw,3rem); }
 .style-refined .site-nav { gap:clamp(16px, 2vw, 28px); margin:0 auto; }
 .style-refined .nav-link { font-size:0.9375rem; font-weight:600; white-space:nowrap; transition:color var(--transition-fast); }
 .style-refined .nav-link:hover { color:var(--accent-gold); }
}
@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; }
}
