/* V46 — fonte Maxeville, títulos padronizados e cor de destaque por página */
@font-face{font-family:'Maxeville';src:url('assets/fonts/Maxeville-Regular.woff2') format('woff2'),url('assets/fonts/Maxeville-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Maxeville';src:url('assets/fonts/Maxeville-Bold.woff2') format('woff2'),url('assets/fonts/Maxeville-Bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Maxeville';src:url('assets/fonts/Maxeville-RegularItalic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Maxeville';src:url('assets/fonts/Maxeville-BoldItalic.woff2') format('woff2');font-weight:700;font-style:italic;font-display:swap}

/* cor de destaque: cinza da Sete por padrão; produtos sobrescrevem no próprio arquivo */
:root{--sx:#6b6e73;--sx-rgb:107 110 115;--sx-rgb-c:107,110,115;--sx-ink:#fff}

/* fonte única */
html body,html body *:not(svg):not(path):not(circle):not(rect){font-family:'Maxeville',Arial,Helvetica,sans-serif!important}
html body{font-weight:400}
b,strong{font-weight:700}

/* títulos: negrito e tamanho médio padrão */
html body h1,html body h2,html body h3,html body h4{font-weight:700!important;letter-spacing:-.015em!important}
html body h1{font-size:clamp(32px,3.3vw,48px)!important;line-height:1.08!important}
html body h2{font-size:clamp(28px,2.6vw,40px)!important;line-height:1.1!important}
html body h3{font-size:clamp(20px,1.7vw,26px)!important;line-height:1.18!important}
html body .dk-h .l,html body .dk-h .b{font-weight:700!important}
html body h1 *,html body h2 *,html body h3 *{font-weight:700!important}
/* abertura dos produtos mantém a proporção aprovada do slide */
main .ph h1.ph-title{font-size:2.98cqw!important;line-height:1.38!important}
@media (max-width:760px){main .ph h1.ph-title{font-size:26px!important}}
/* textos de destaque em formato de título também seguem o tamanho médio */
.question-card strong,.question-panel .carousel-card strong,.ps-title,.tz-q,.next-text,.story-cta h3,.home-next-cta h3{font-weight:700!important}
.question-panel .carousel-card strong{font-size:clamp(24px,2.2vw,34px)!important;line-height:1.12!important}
.question-close h3{font-size:clamp(22px,2vw,30px)!important}

/* menu de produtos: cada sublinhado na cor do seu produto */
.nav-product-maestro::after{background:#eaff00!important}
.nav-product-regente::after{background:#b3ff00!important}
.nav-product-orquestra::after{background:#1a6fe8!important}
.nav-product-sonare::after{background:#ffaa00!important}
.nav-product-cgi::after{background:#d6d6d6!important}

/* sobre fundos cinza (páginas da Sete), texto branco para leitura */
.sx-gray .header-cta,.sx-gray .whatsapp-float,.sx-gray .story-cta-btn.is-main,.sx-gray .px-send:not([aria-disabled="true"]),
.sx-gray .home-next-btn.is-main,.sx-gray .about-go:hover,.sx-gray .tz-opt.is-picked:before,.sx-gray .px-req input:checked{color:#fff!important}
.sx-gray .whatsapp-float svg{color:#fff;fill:currentColor}
.sx-gray .px-req input:checked:after{border-color:#fff!important}

/* força o padrão sobre regras antigas mais específicas */
html body main h1:not(#_):not(.ph-title){font-size:clamp(32px,3.3vw,48px)!important;line-height:1.08!important}
html body main h2:not(#_){font-size:clamp(28px,2.6vw,40px)!important;line-height:1.1!important}
html body main h3:not(#_){font-size:clamp(20px,1.7vw,26px)!important;line-height:1.18!important}
.sx-gray{--accent:var(--sx);--accent-rgb:107,110,115}
.sx-gray .ps-label:before{background:var(--sx)!important}
