/* Topo editorial: marca à esquerda, banner central e serviços à direita. */
.site-header{background:#fff;color:var(--navy)}
.masthead{position:relative;display:grid;grid-template-columns:300px minmax(0,728px) minmax(156px,1fr);align-items:end;gap:44px;min-height:222px;padding:28px 0 36px}
.header-brand{position:absolute;z-index:3;top:0;left:-12px;width:280px;height:272px;overflow:hidden}
.header-brand .brand,.header-brand .custom-logo-link{display:block}
.brand-logo,.header-brand .custom-logo{display:block;width:280px;height:280px;max-width:100%;max-height:none;object-fit:contain}
.header-ad{grid-column:2;grid-row:1;width:100%;max-width:728px;justify-self:center}
.header-ad .ad-slot{width:100%;max-width:none;margin:0;padding:0;background:transparent}
.header-ad .ad-slot img{display:block;width:100%;height:auto;max-height:90px;object-fit:contain;border-radius:0}
.header-ad .ad-slot small{display:block;margin-bottom:7px;text-align:left;font-size:11px;font-weight:400;letter-spacing:0;color:#111}
.header-community{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:flex-start;justify-self:end;gap:19px;min-width:0;padding-bottom:0}
.header-community .header-date{display:block;margin:0;font-size:12px;line-height:1.4;color:var(--muted)}
.header-actions{display:flex;align-items:center;gap:8px;color:var(--navy)}
.header-search{display:inline-flex;gap:8px;padding:0;min-height:32px;border:0;color:var(--navy);white-space:nowrap}
.header-search span{font-size:20px;font-weight:400;line-height:1.3}
.header-actions button:hover{background:#edf1f6}
.header-contact{order:3;padding:0;border:0!important;background:transparent!important;color:var(--navy)!important;font-size:11px;font-weight:600}
.header-contact:hover{text-decoration:underline}
.navigation-band{background:var(--blue)}
.main-nav{display:block;margin:auto;order:initial}
.main-nav .nav-inner{display:flex;justify-content:flex-start;padding-left:344px}
.main-nav ul{justify-content:flex-start;gap:32px}
.main-nav li a,.main-nav li:first-child>a{padding:15px 0;font-size:13px;background:transparent}

@media(min-width:901px) and (max-width:1200px){
 .masthead{grid-template-columns:220px minmax(0,1fr) 156px;gap:24px;min-height:200px;padding-bottom:30px}
 .header-brand{width:240px;height:248px;left:-10px}
 .brand-logo,.header-brand .custom-logo{width:240px;height:240px}
 .main-nav .nav-inner{padding-left:244px}
 .main-nav ul{gap:16px;flex-wrap:wrap}
 .main-nav li a,.main-nav li:first-child>a{font-size:12px}
 .header-search span{font-size:18px}
}
@media(max-width:900px){
 .masthead{grid-template-columns:180px minmax(0,1fr);gap:12px 24px;min-height:0;padding:12px 0 22px;align-items:center}
 .header-brand{position:static;grid-column:1;grid-row:1;width:180px;height:auto;overflow:visible}
 .brand-logo,.header-brand .custom-logo{width:180px;height:180px}
 .header-community{grid-column:2;grid-row:1;justify-self:end;gap:14px}
 .header-ad{grid-column:1/-1;grid-row:2;max-width:728px;justify-self:center}
 .header-ad:empty{display:none}
 .main-nav .nav-inner{justify-content:center;padding-left:0}
 .main-nav ul{justify-content:center;gap:22px}
}
@media(max-width:700px){
 .masthead{grid-template-columns:164px minmax(0,1fr);gap:12px 16px;padding:10px 0 18px}
 .header-brand{width:164px}
 .brand-logo,.header-brand .custom-logo{width:164px;height:164px}
 .header-community{display:flex;align-items:flex-start;justify-self:end;gap:12px}
 .header-community .header-date{font-size:10px}
 .header-actions{flex-direction:row;gap:7px}
 .header-search span{font-size:16px}
 .header-search svg{width:16px;height:16px}
 .header-search{padding:0;gap:5px}
 .header-actions .menu-toggle{display:flex;padding:7px;min-height:32px}
 .header-contact{font-size:10px}
 .header-ad{margin:0}
 .header-ad .ad-slot small{font-size:10px;margin-bottom:5px}
 .main-nav{display:none}
 .main-nav.is-open,.main-nav.is-open .nav-inner{display:block}
 .main-nav ul{display:block}
 .main-nav li a,.main-nav li:first-child>a{padding:13px;font-size:14px}
}
@media(max-width:370px){
 .masthead{grid-template-columns:140px minmax(0,1fr);column-gap:12px}
 .header-brand{width:140px}
 .brand-logo,.header-brand .custom-logo{width:140px;height:140px}
 .header-search span{font-size:14px}
 .header-community .header-date{font-size:9px}
}
