/* Site-wide hierarchy; content, controls and existing document imagery are retained. */
html[data-theme] h1{font-size:clamp(32px,4vw,54px)!important;line-height:1.16!important;overflow-wrap:break-word}
html[data-theme] h2{font-size:clamp(25px,2.7vw,36px)!important;line-height:1.25!important;overflow-wrap:break-word}
html[data-theme] h3{font-size:clamp(21px,1.9vw,26px)!important;line-height:1.3!important;overflow-wrap:break-word}
html[data-theme] main{font-size:16px;line-height:1.75}
html[data-theme] main :is(h1,.site-page-title,.page-title h2){font-size:clamp(32px,4vw,54px)!important;line-height:1.16!important;letter-spacing:-.025em;overflow-wrap:break-word}
html[data-theme] main :is(h2,.site-section-title,.section-title h2){font-size:clamp(25px,2.7vw,36px)!important;line-height:1.25!important;letter-spacing:-.018em;overflow-wrap:break-word}
html[data-theme] main h3{font-size:clamp(21px,1.9vw,26px)!important;line-height:1.3!important;letter-spacing:-.01em;overflow-wrap:break-word}
html[data-theme] main :is(.section-head,.enrich-heading,.audit-section-heading){margin-bottom:26px;gap:20px}
html[data-theme] main :is(.section-title-row,.site-section-title){gap:14px}
html[data-theme] main :is(.section-mark,.mini-icon){box-shadow:none}
html[data-theme] main :is(.card,.practice-tile,.service-tile,.mini-tool,.enrich-card,.profile-icon-card,.profile-info-card,.profile-link-card,.doc-card,.question-card){min-width:0}
html[data-theme] main :is(.card,.practice-tile,.service-tile,.mini-tool,.enrich-card,.profile-icon-card,.profile-info-card,.profile-link-card,.doc-card) :is(h2,h3),html[data-theme] main :is(.mini-tool,.profile-info-card,.profile-link-card)>strong{font-size:clamp(20px,1.75vw,24px)!important;line-height:1.35!important}
html[data-theme] main :is(.card,.practice-tile,.service-tile,.mini-tool,.enrich-card,.profile-icon-card,.profile-info-card,.profile-link-card) p{font-size:15px;line-height:1.8;color:var(--vt-muted)}
html[data-theme] main :is(.mini-tool,.profile-info-card,.profile-link-card)>strong{display:block;margin-bottom:10px}
html[data-theme] main .visual-hero h1{font-size:clamp(40px,5vw,72px)!important;line-height:1.07!important}
html[data-theme] #selected-post-body{font-size:18px;line-height:1.9;overflow-wrap:break-word}
html[data-theme] #selected-post-body p{font-size:inherit;line-height:inherit}
html[data-theme] .site-footer h3{font-size:24px;line-height:1.3}
html[data-theme] main .legal-tile-art{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:contain;max-height:180px;margin:0 0 20px;border-radius:var(--vt-radius);background:#f4efe4}
html[data-theme] main :is(.card,.enrich-card,.mini-tool,.practice-tile,.service-tile,.profile-icon-card,.profile-info-card,.profile-link-card):has(>.legal-tile-art){padding:22px;display:flex;flex-direction:column;align-items:stretch}
html[data-theme] main :is(.legal-illustrated,:has(>.legal-tile-art))>:is(i,.mini-icon,.practice-tile-icon,.service-icon){display:none}
html[data-theme] main .legal-illustrated>:is(h2,h3){margin-top:0}
html[data-theme] main .enrich-card .enrich-link{margin-top:auto;padding-top:16px}
html[data-theme] main .mini-tool::after{display:none}
html[data-theme] main .mini-tool a{color:var(--vt-accent)!important}
html[data-theme] main .visual-shortcut-number{color:var(--vt-muted)!important}
html[data-theme] main .theme-support-section .quick-actions .cta:not(.gold){background:var(--vt-soft)!important;color:var(--vt-ink)!important;border-color:var(--vt-line)!important}
html[data-theme] .user-dashboard__stat h3{font:700 14px/1.5 Manrope,'Segoe UI',sans-serif!important;letter-spacing:0}
html[data-theme] .user-dashboard__panel h2{font-size:24px!important}
/* Retained HTML pages use legacy wrappers instead of main. */
html[data-theme] :is(.practice-area,.blog-area){background:var(--vt-bg)!important;color:var(--vt-ink)}
html[data-theme] :is(.service-item,.blog-content){background:var(--vt-panel)!important;color:var(--vt-ink)!important}
html[data-theme] :is(.homepage-service-desc,.service-text,.blog-content>a){color:var(--vt-muted)!important;font-size:16px;line-height:1.8}
html[data-theme] .section-title>span{color:var(--vt-accent)!important}
html[data-theme] .section-title h2{font-size:clamp(25px,2.7vw,36px)!important;line-height:1.25!important}
html[data-theme] .service-text h3{font-size:24px!important;line-height:1.35!important}
html[data-theme] :is(.section-title h2,.service-text h3 a){color:var(--vt-ink)!important}
html[data-theme] .blog-content .legal-blog-date{color:var(--vt-accent)!important}
html[data-theme] .slide-caption{background:var(--vt-panel);padding:24px;border-left:2px solid var(--vt-accent)}
html[data-theme] .slide-caption :is(h2,span,p){color:var(--vt-ink)!important}
html[data-theme] .contact-text :is(h3,.title>span,.date){color:var(--vt-ink)!important}
html[data-theme] .footer-area :is(p,li,b,i,a,.footer-legal){color:var(--vt-muted)!important}
html[data-theme] .header-area .logo-text{color:#59421c!important}
html[data-theme] main .overview-card .legal-tile-art{width:80px;height:40px;margin-bottom:14px}
html[data-theme] main .audit-steps .legal-tile-art{max-height:120px}
html[data-theme] main .tab-btn .legal-tile-art{width:80px;height:40px;margin:0 0 12px}
html[data-theme] main :is(.tab-btn,.overview-card) strong{font-size:17px!important}
html[data-theme] main .doc-card .legal-tile-art{width:96px;height:48px;float:right;margin:0 0 12px 14px}
@media(max-width:720px){html[data-theme] main .section-head{align-items:flex-start;flex-direction:column}html[data-theme] main .section-title-row{align-items:flex-start}html[data-theme] main .section-mark{width:36px;height:36px;min-width:36px;font-size:17px;border-radius:10px}html[data-theme] main .legal-tile-art{max-height:170px}html[data-theme] main :is(.card,.enrich-card,.mini-tool,.practice-tile,.service-tile):has(>.legal-tile-art){padding:20px}html[data-theme] #selected-post-body{font-size:17px}html[data-theme] main .visual-hero h1{font-size:clamp(36px,9vw,48px)!important}}
@media print{.legal-tile-art{display:none!important}html[data-theme] main h1{font-size:26pt!important}html[data-theme] main h2{font-size:19pt!important}html[data-theme] main h3{font-size:15pt!important}}
