/* Shared header switches before its approved labels can collide. */
body.layout27>header .bar{min-width:0}
body.layout27>header .header-cta{flex-shrink:0;white-space:nowrap}
@media(max-width:1536px){
 body.layout27>header .desktop-nav{display:none!important}
 body.layout27>header :is(.menu-button,.menu-open){display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}
 body.layout27>header .language-switch{margin-left:auto}
 body.layout27 .mega27{left:12px;right:12px;max-height:calc(100dvh - var(--nav-top27) - 24px)}
}
.home-contact52{padding:clamp(56px,7vw,112px) var(--gutter27,4vw);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);border-top:1px solid #e0e7eb;background:#fff}
.home-contact52>div,.home-contact52 form{min-width:0}
.home-contact52 h2{margin:0 0 28px;font-size:clamp(2rem,3.8vw,3.75rem);line-height:1.15}
.home-contact52 .home-contact-phone52{font-size:clamp(1.25rem,2vw,1.75rem);text-decoration:none;display:inline-block;margin-top:20px}
#home-contact52 form{margin:0;padding:clamp(24px,3vw,40px)!important;border:1px solid #e0e7eb!important;border-radius:20px!important;background:#f6f8f9!important;display:grid;gap:24px}
.home-contact52 .form-row22{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.home-contact52 label{display:grid;gap:10px;font-size:1rem;margin:0}
.home-contact52 :is(input,textarea){width:100%;font:inherit;font-size:1rem;padding:12px 0;background:transparent;border:0;border-bottom:1px solid #aabac3;border-radius:0;min-height:48px;color:#111}
.home-contact52 textarea{resize:vertical}
.home-contact52 .form-consent32{display:flex;flex-direction:row;align-items:flex-start;gap:12px;line-height:1.6}
.home-contact52 input[type=checkbox]{width:20px;min-height:20px;flex:0 0 20px;margin-top:3px;accent-color:#0a1d34}
.home-contact52 .form-bottom22{padding:0;border:0;display:flex;justify-content:flex-start}
#home-contact52 button.form-submit22{background:#111;color:#fff;border:1px solid #111;border-radius:999px;padding:15px 28px;font:inherit;font-size:1rem;font-weight:600;cursor:pointer;min-height:48px;min-width:0;justify-content:center}
.home-contact52 .form-message:empty{display:none}
@media(max-width:900px){.home-contact52{grid-template-columns:1fr}.home-contact52 .home-contact-phone52{margin-top:0}}
@media(max-width:520px){.home-contact52 .form-row22{grid-template-columns:1fr}.home-contact52{padding-inline:24px}}
/* Long content may wrap within a column, without enlarging that column. */
body.layout27 main :is(.hero-copy,.grade-hero15>div,.supplier-hero-copy18,.material-content,.news-copy30,.footer-brand26){min-width:0;overflow-wrap:break-word}
body.layout27 main :is(h1,h2,h3){overflow-wrap:break-word}
body.layout27 main :is(input,select,textarea){max-width:100%;min-width:0}
body.layout27 .specs-sidebar30 select{min-width:0;max-width:100%}
body.layout27 .specs-sidebar30{max-height:calc(100dvh - 130px);overflow-y:auto}
@media(max-width:700px){
 body.layout27 .specs-sidebar30{max-height:none;overflow:visible}
}
/* The same controls also serve the separate industry header template. */
body.layout27>header :is(.header-cta,.header-actions>.button){display:inline-flex;align-items:center;justify-content:center!important;text-align:center;white-space:nowrap;flex-shrink:0}
body.layout27>header .header-actions>.button>span:empty{display:none}
body.layout27>header .header-actions{min-width:0;flex-shrink:0}
@media(max-width:1536px){
 body.layout27>header .desktop-nav{display:none!important}
 body.layout27>header :is(.menu-button,.menu-open){display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
 body.layout27>header.site-header .header-actions{margin-left:auto}
}
body.layout27 .nav-search52{display:inline-flex;align-items:center;gap:12px}
body.layout27 .desktop-nav .nav-search52{width:44px;height:44px;justify-content:center;flex:none}
body.layout27 .desktop-nav .nav-search52 span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
body.layout27 .nav-search52 svg{width:20px;height:20px;flex:none}
@media(max-width:700px){
 body.layout27>header.site-header{gap:12px;padding-inline:16px}
 body.layout27>header.site-header .logo{flex:1 1 auto;min-width:0;max-width:190px}
 body.layout27>header.site-header .logo img{width:100%;max-width:100%;height:auto}
 body.layout27>header.site-header .header-actions{gap:12px}
 body.layout27>header.site-header .locale-links{display:none}
 body.layout27>header.site-header .button-small{font-size:12px;padding:9px 12px}
 body.layout27>header.site-header .menu-open{width:28px;height:44px}
}
body.layout27 main :is(h1,h2,h3){overflow-wrap:anywhere}
body.layout27 main :is(.article-heading31,.about-topic24,.topic-text25,.company-topic28)>*{min-width:0}
body.layout27 .certificate-links28 a{white-space:normal;text-align:center}
html.search-open52{overflow:hidden}
#search-dialog52{position:fixed;inset:0;width:min(880px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 64px);height:fit-content;margin:auto;padding:32px;border:1px solid #dce4e8;border-radius:24px;background:#fff;color:#111;box-shadow:0 24px 90px #0a1d3433;font-family:inherit;overflow-y:auto}
#search-dialog52::backdrop{background:#0a1d3466}
#search-dialog52[open]{display:block}
.search-panel52 .search-head52{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:24px}
.search-panel52 h2{margin:0;font-size:clamp(24px,3vw,36px);line-height:1.2;letter-spacing:-.025em}
.search-panel52 .search-close52{width:44px;height:44px;border:1px solid #dce4e8;background:#fff;border-radius:50%;font-size:28px;line-height:1;cursor:pointer;flex:none}
.search-panel52 input{box-sizing:border-box;width:100%;min-width:0;font:inherit;font-size:18px;line-height:1.5;padding:16px 18px;border:1px solid #aabac3;border-radius:12px;background:#f6f8f9;color:#111}
.search-panel52 .search-status52{font-size:16px;line-height:1.5;color:#536671;margin:20px 0}
.search-panel52 ul{list-style:none;padding:0;margin:0}
.search-panel52 li+li{border-top:1px solid #e0e7eb}
.search-panel52 li a{display:grid;gap:7px;padding:18px 0;color:#111;text-decoration:none;overflow-wrap:anywhere}
.search-panel52 small{color:#526b77;font-size:13px}
.search-panel52 strong{font-size:20px;line-height:1.4;font-weight:600}
.search-panel52 li p{font-size:16px;line-height:1.6;color:#52616a;margin:0}
.search-panel52 li a:hover strong{color:#267c91;text-decoration:underline;text-underline-offset:4px}
.search-panel52 :is(.search-more52,.search-retry52){font:inherit;padding:12px 20px;border:1px solid #111;border-radius:30px;background:#fff;color:#111;cursor:pointer;margin-top:16px;min-height:44px}
.search-panel52 [hidden]{display:none!important}
.search-panel52 :focus-visible{outline:2px solid #267c91;outline-offset:4px}
@media(max-width:600px){#search-dialog52{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:20px;border-radius:18px}.search-panel52 input{font-size:16px}.search-panel52 strong{font-size:18px}}

body.layout27 .mobile-groups27>.nav-search52{display:flex;width:100%;box-sizing:border-box;min-height:50px;border:1px solid #c5d1d8;border-radius:999px;padding:10px 20px;margin:8px 0 20px;background:#f6f8f9;line-height:1.4}
body.layout27 .mobile-groups27>.nav-search52:hover,body.layout27 .mobile-groups27>.nav-search52[aria-expanded=true]{color:#173b49;border-color:#173b49;background:#edf3f5}
.search-inline52{padding:0 0 24px;min-width:0}
.search-inline52[hidden],.search-inline52 .search-head52{display:none!important}
body.layout27 .mobile-groups27 .search-inline52 .search-results52 a{font-size:inherit;min-height:0;border:0;padding:18px 0}
.search-inline52 .search-results52{max-height:min(45dvh,460px);overflow:auto}

body.layout27 #grades .grade-empty{border:0;border-radius:0;background:none;padding:0;box-shadow:none;line-height:1.7}
body.layout27 #grades .grades-bottom .button{justify-content:center;text-align:center}
body.layout27 #grades .grades-bottom .button>span:empty{display:none}

.search-panel52 .search-status52:empty{display:none}
/* Legacy article headings reset wrapping; long Bulgarian words must still fit. */
body.layout27 main .article-heading31 h1{overflow-wrap:anywhere!important;min-width:0;max-width:100%}

/* Content columns must be allowed to shrink, including during text zoom. */
body.layout27 main :is(.support-copy,.support-visual,.section-heading>*,.hero-copy,.material-content,.grade-hero15>*,.grade-layout15>*,.grade-content15>*,.grades-bottom>*,.next-industry>*){min-width:0;max-width:100%}
body.layout27 main :is(h1,h2,h3,p,li){word-break:normal}
body.layout27 main :is(.support-copy,.section-heading,.grade-content15,.material-content) :is(h2,h3){text-wrap:balance;overflow-wrap:anywhere}

/* A regular reading rhythm in every grade's document section. */
body.layout27 #grade-docs15{margin-top:clamp(40px,4vw,64px);padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:24px}
body.layout27 #grade-docs15>h2{margin:0;max-width:100%;line-height:1.18;overflow-wrap:anywhere;text-wrap:balance}
body.layout27 #grade-docs15>p{margin:0;max-width:72ch;line-height:1.7;font-size:clamp(1rem,.25vw + .95rem,1.125rem)}
body.layout27 #grade-docs15>.grade-document15{max-width:100%;width:100%;margin:0;box-sizing:border-box;overflow-wrap:anywhere}
body.layout27 #grade-docs15>:is(button,.button,.pure-button){margin:4px 0 0!important;align-self:flex-start;max-width:100%;min-height:48px;white-space:normal;text-align:center;justify-content:center;line-height:1.4}

/* Image and introduction share one row; the three steps span a second row. */
body.layout27 main #support.support53{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4vw,64px);padding:clamp(48px,5vw,80px) var(--gutter27,4vw)!important;background:#f2f6f7;align-items:center}
body.layout27 #support.support53 .support-visual{position:relative;min-height:0;height:auto;aspect-ratio:3/2;overflow:hidden;border-radius:16px}
body.layout27 #support.support53 .support-visual :is(picture,img){display:block;width:100%;height:100%;max-height:none;min-height:0;object-fit:cover}
body.layout27 #support.support53 .support-visual>img,body.layout27 #support.support53 .support-visual>picture{position:absolute;inset:0}
body.layout27 #support.support53 .support-copy{padding:0;margin:0;min-width:0}
body.layout27 #support.support53 .support-copy h2{font-size:clamp(1.875rem,2.8vw,3rem);line-height:1.16;letter-spacing:-.035em;max-width:21ch;margin:0 0 24px;text-wrap:balance;overflow-wrap:anywhere}
body.layout27 #support.support53 .support-copy>p{margin:0;max-width:58ch;font-size:clamp(1rem,.25vw + .95rem,1.125rem);line-height:1.7;color:#52616b}
body.layout27 #support.support53 .support-copy>.text-link{display:inline-flex;margin-top:28px;padding:4px 0 8px;line-height:1.5;max-width:100%;font-size:1rem}
body.layout27 #support.support53>.support-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);padding:32px 0 0!important;margin:0;border-top:1px solid #cbd7dc;list-style:none}
body.layout27 #support.support53 .support-steps li{min-width:0;margin:0;padding:0!important}
body.layout27 #support.support53 .support-steps h3{font-size:clamp(1.25rem,1.6vw,1.625rem);line-height:1.3;letter-spacing:-.025em;margin:0 0 12px;text-wrap:balance}
body.layout27 #support.support53 .support-steps p{font-size:clamp(1rem,.2vw + .95rem,1.125rem);line-height:1.7;margin:0;color:#52616b}

/* Clearly separate onward navigation from the advisory section and form. */
body.layout27 main .next-industry{background:#fff;padding:clamp(36px,4vw,64px) var(--gutter27,4vw);border-top:1px solid #e0e7eb;gap:24px}
body.layout27 main .next-industry p{font-size:1rem;line-height:1.6;margin:0 0 12px;color:#52616b}
body.layout27 main .next-industry div>a{display:inline-block;max-width:100%;font-size:clamp(1.5rem,2.4vw,2.5rem);line-height:1.25;overflow-wrap:anywhere}
body.layout27 main .next-industry>a:empty{display:none}
@media(max-width:900px){
 body.layout27 main #support.support53{grid-template-columns:minmax(0,1fr);gap:32px}
 body.layout27 #support.support53 .support-visual{aspect-ratio:16/10;max-width:none;height:auto}
 body.layout27 #support.support53 .support-copy h2{max-width:26ch}
 body.layout27 #support.support53>.support-steps{gap:24px}
}
@media(max-width:640px){
 body.layout27 #support.support53>.support-steps{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:28px!important}
 body.layout27 #support.support53 .support-steps li+li{padding-top:24px!important;border-top:1px solid #dbe3e7}
 body.layout27 main #support.support53{padding-inline:22px!important}
 body.layout27 #support.support53 .support-visual{border-radius:12px}
 body.layout27 main .next-industry{padding-inline:22px}
 body.layout27 #grade-docs15{gap:20px}
}

/* Number labels were removed from these sections; their old 35px column must go too. */
body.layout27 .company-copy19>section{grid-template-columns:minmax(0,1fr);gap:0}
body.layout27 .company-copy19>section>div{min-width:0;max-width:100%}
body.layout27 .company-copy19 h2{max-width:28ch;line-height:1.2;text-wrap:balance;overflow-wrap:anywhere}
body.layout27 .company-copy19 .copy-blocks p{max-width:72ch;line-height:1.7}
body.layout27 .company-copy19 .copy-blocks p+p{margin-top:1em}

/* The active locale underline must not move its text above the other locale. */
body.layout27 header .locale-links a{padding:0 0 3px!important;border-bottom:1px solid transparent!important;box-sizing:border-box;align-items:center;justify-content:center}
body.layout27 header .locale-links a.active,body.layout27 header .locale-links a[aria-current=page]{border-bottom-color:#111!important}

/* Keep image-card copy readable during the existing image and copy animations. */
body.layout27 .industry-tile14:is(:hover,:focus-visible) .industry-tile-copy14 :is(h2,p){color:#fff!important}
