.nb-partners-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin:0 0 28px; }
.nb-partners-heading h1 { color:#f4eedb; margin:0; font:700 clamp(32px,4vw,52px)/1.15 Georgia,serif; letter-spacing:-.03em; }
.nb-partners-heading .nb-page-label { color:#e9cc85; order:2; }
.nb-partners-content { color:#23452f; font:400 16px/1.8 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.nb-partners-content *, .nb-partners-content *::before, .nb-partners-content *::after { box-sizing:border-box; }
.nb-partners-content > *, .nb-partners-content .wp-block-group > * { max-width:none; margin-block-start:0; margin-block-end:0; }
.nb-partners-content p, .nb-partners-content figure { margin:0; }
.nb-partners-content h2, .nb-partners-content h3 { margin:0; text-wrap:balance; }
.nb-partners-content h2 { font:700 clamp(28px,3vw,37px)/1.17 Georgia,serif; letter-spacing:-.025em; }
.nb-partners-content h3 { font:700 26px/1.25 Georgia,serif; letter-spacing:-.02em; color:#21432f; overflow-wrap:anywhere; }
.nb-partners-content [id] { scroll-margin-top:28px; }
.nb-partners-content .nb-partners-eyebrow { color:#e3c57e; font-size:10px; font-weight:750; line-height:1.6; letter-spacing:.15em; text-transform:uppercase; margin-bottom:18px; }
.nb-partners-content .nb-partners-hero { display:grid; grid-template-columns:minmax(0,1.75fr) minmax(0,1fr); gap:65px; padding:clamp(28px,4.8vw,58px); border:1px solid #819467; border-top:3px solid #e7c473; border-radius:3px 3px 14px 14px; background:linear-gradient(112deg,#123b2fed,#30573add),url('nordbus-background.png') center/cover; }
.nb-partners-content .nb-partners-headline { color:#f1e5c8; font-size:clamp(38px,4.8vw,60px); line-height:1.08; letter-spacing:-.04em; margin-bottom:24px; }
.nb-partners-content .nb-partners-lead { color:#d5e0c9; font-size:16px; line-height:1.9; max-width:58ch; }
.nb-partners-content .nb-partners-hero-note { align-self:center; border-left:1px solid #8c9c6d; padding-left:36px; color:#e1e5cd; font-size:17px; }
.nb-partners-content .nb-partners-thanks { font:400 clamp(35px,4vw,47px)/1.1 Georgia,serif; font-style:italic; color:#edce84; margin-bottom:21px; }
.nb-partners-content .nb-partners-note-small { font-size:13px; line-height:1.9; color:#c7d9b7; margin-top:20px; max-width:30ch; }
.nb-partners-content .wp-block-buttons { display:flex; flex-wrap:wrap; gap:10px; margin:0; }
.nb-partners-content .wp-block-button { margin:0; }
.nb-partners-content .wp-block-button__link { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 19px; border:1px solid #dec277; border-radius:5px; background:#e9c675; color:#1c412e; font:650 13px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-decoration:none; box-shadow:none; }
.nb-partners-content .wp-block-button__link:hover { background:#f4d68f; }
.nb-partners-content .nb-partners-navigation { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:27px 0 42px; }
.nb-partners-content .nb-partners-nav-label { color:#d0ddbf; font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
.nb-partners-content .nb-partners-navigation .wp-block-button__link { color:#e4dfc5; background:#153d2fcc; border-color:#8da273; font-size:12px; padding:9px 17px; min-height:44px; }
.nb-partners-content .nb-partners-navigation .wp-block-button__link:hover { background:#30573b; }
.nb-partners-content .nb-partners-section { margin-bottom:54px; }
.nb-partners-content .nb-partners-section-heading { display:flex; gap:24px; align-items:baseline; margin-bottom:24px; }
.nb-partners-content .nb-partners-number { color:#e6c578; font-size:12px; letter-spacing:.13em; min-width:32px; padding-bottom:7px; border-bottom:1px solid #b89957; }
.nb-partners-content .nb-partners-section-title { flex:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:34px; align-items:start; }
.nb-partners-content .nb-partners-section-title h2 { color:#eee4c7; }
.nb-partners-content .nb-partners-section-title p { color:#ccdbbd; font-size:14px; line-height:1.9; }
.nb-partners-content .nb-partners-model-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.nb-partners-content .nb-partners-card { border:1px solid #a6b791; border-radius:11px; background:#dce5d3; overflow:hidden; }
.nb-partners-content .nb-partners-logo { display:flex; align-items:center; justify-content:center; min-width:0; padding:24px; background:#fff; }
.nb-partners-content .nb-partners-image { width:100%; min-width:0; }
.nb-partners-content .nb-partners-image img { display:block; width:100%; height:auto; max-width:100%; object-fit:contain; border-radius:0; }
.nb-partners-content .nb-partners-image figcaption { color:#425e38; font-size:12px; line-height:1.6; margin:10px 0 0; text-align:center; }
.nb-partners-content .nb-partners-logo .nb-partners-image { width:190px; max-width:100%; }
.nb-partners-content .nb-partners-logo .nb-partners-image img { height:190px; width:100%; object-fit:contain; }
.nb-partners-content .nb-partners-card-copy { padding:24px 27px 28px; }
.nb-partners-content .nb-partners-role { color:#49653d; font-size:10px; font-weight:750; line-height:1.5; text-transform:uppercase; letter-spacing:.14em; margin-bottom:12px; }
.nb-partners-content .nb-partners-subtitle { color:#4c6542; font-size:13px; margin-top:9px; }
.nb-partners-content .nb-partners-feature { display:grid; grid-template-columns:300px minmax(0,1fr); gap:40px; padding:30px; border:1px solid #a6b791; border-radius:12px; background:#dce5d3; align-items:center; }
.nb-partners-content .nb-partners-feature > .nb-partners-image { max-width:300px; }
.nb-partners-content .nb-partners-feature > .nb-partners-image img { border-radius:8px; }
.nb-partners-content .nb-partners-feature-copy { padding:10px 18px 10px 0; }
.nb-partners-content .nb-partners-feature-copy h3 { font-size:36px; margin-bottom:20px; }
.nb-partners-content .nb-partners-feature-copy > p:not(.nb-partners-role) { font-size:15px; line-height:1.9; margin-top:15px; }
.nb-partners-content .nb-partners-feature-copy .wp-block-buttons { margin-top:24px; }
.nb-partners-content .nb-partners-note { padding:13px 17px; border-left:3px solid #ae9147; background:#cad9bc; color:#345131; font-size:12px !important; }
.nb-partners-content .nb-partners-road-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.nb-partners-content .nb-partners-road-card { display:grid; grid-template-columns:205px minmax(0,1fr); align-items:stretch; }
.nb-partners-content .nb-partners-road-card .nb-partners-card-copy { align-self:center; padding:25px; }
.nb-partners-content .nb-partners-road-card h3 { font-size:25px; }
.nb-partners-content .nb-partners-road-card .nb-partners-logo { padding:21px; }
.nb-partners-content .nb-partners-road-card .nb-partners-logo img { height:168px; }
.nb-partners-content .nb-partners-media { background:#cfdcc2; }
.nb-partners-content .nb-partners-channels { display:flex; gap:10px; flex-wrap:wrap; margin-top:21px; }
.nb-partners-content .nb-partners-channels p { padding:4px 12px; border:1px solid #98af81; border-radius:4px; color:#35522f; font-size:11px; line-height:1.7; }
.nb-partners-content .nb-partners-media-thanks { color:#3c5b35; font-size:13px !important; }
.nb-partners-content .nb-partners-footer { display:flex; justify-content:space-between; align-items:center; gap:44px; padding:38px 42px; border:1px solid #8d9d69; border-top:3px solid #d7b76a; border-radius:3px 3px 12px 12px; background:#173f30e8; }
.nb-partners-content .nb-partners-footer-copy { max-width:660px; }
.nb-partners-content .nb-partners-footer h2 { color:#eee3c6; font-size:36px; margin-bottom:17px; }
.nb-partners-content .nb-partners-footer-copy > p:last-child { color:#cdddbe; font-size:14px; line-height:1.9; }
.nb-partners-content .nb-partners-footer .wp-block-buttons { min-width:240px; max-width:280px; }
.nb-partners-content .nb-partners-footer .wp-block-button { flex:1 1 100%; }
.nb-partners-content .nb-partners-footer .wp-block-button__link { width:100%; }
.nb-partners-content a:focus-visible { outline:3px solid #eab64e; outline-offset:4px; }
.nb-partners-edit { margin-top:24px; color:#d8dfc3; font-size:13px; }
.editor-styles-wrapper .nb-partners-content { background:#16442f; padding:12px; }
@media(max-width:1100px) {
 .nb-partners-content .nb-partners-hero { gap:35px; }
 .nb-partners-content .nb-partners-road-card { grid-template-columns:155px minmax(0,1fr); }
 .nb-partners-content .nb-partners-road-card .nb-partners-logo { padding:17px; }
 .nb-partners-content .nb-partners-road-card h3 { font-size:23px; }
 .nb-partners-content .nb-partners-road-card .nb-partners-card-copy { padding:20px; }
 .nb-partners-content .nb-partners-feature { grid-template-columns:260px minmax(0,1fr); gap:30px; }
 .nb-partners-content .nb-partners-navigation { flex-wrap:wrap; }
}
@media(max-width:800px) {
 .nb-partners-content .nb-partners-hero { grid-template-columns:minmax(0,1fr); }
 .nb-partners-content .nb-partners-hero-note { border-left:0; border-top:1px solid #8c9c6d; padding:27px 0 0; }
 .nb-partners-content .nb-partners-hero-note .nb-partners-note-small { max-width:50ch; }
 .nb-partners-content .nb-partners-model-grid { gap:12px; }
 .nb-partners-content .nb-partners-card-copy { padding:20px; }
 .nb-partners-content .nb-partners-model-grid h3 { font-size:23px; }
 .nb-partners-content .nb-partners-logo { padding:20px; }
 .nb-partners-content .nb-partners-logo .nb-partners-image img { height:145px; }
 .nb-partners-content .nb-partners-road-grid { grid-template-columns:minmax(0,1fr); }
 .nb-partners-content .nb-partners-road-card { grid-template-columns:190px minmax(0,1fr); }
 .nb-partners-content .nb-partners-feature { grid-template-columns:215px minmax(0,1fr); padding:24px; gap:25px; }
 .nb-partners-content .nb-partners-feature-copy { padding:0; }
 .nb-partners-content .nb-partners-feature-copy h3 { font-size:29px; }
 .nb-partners-content .nb-partners-feature-copy > p:not(.nb-partners-role) { font-size:14px; }
 .nb-partners-content .nb-partners-section-title { grid-template-columns:minmax(0,1fr); gap:14px; }
 .nb-partners-content .nb-partners-footer { flex-direction:column; align-items:stretch; gap:25px; }
 .nb-partners-content .nb-partners-footer .wp-block-buttons { max-width:none; min-width:0; }
 .nb-partners-content .nb-partners-footer .wp-block-button { flex:1 1 200px; }
}
@media(max-width:600px) {
 .nb-partners-heading { flex-direction:column; gap:12px; }
 .nb-partners-heading .nb-page-label { order:0; margin:0; }
 .nb-partners-content .nb-partners-hero { padding:31px 24px; gap:27px; }
 .nb-partners-content .nb-partners-headline { font-size:40px; }
 .nb-partners-content .nb-partners-lead { font-size:15px; }
 .nb-partners-content .nb-partners-thanks { font-size:37px; }
 .nb-partners-content .nb-partners-model-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
 .nb-partners-content .nb-partners-model-grid h3 { font-size:27px; }
 .nb-partners-content .nb-partners-logo .nb-partners-image img { height:185px; }
 .nb-partners-content .nb-partners-model-grid .nb-partners-card-copy { padding:24px; }
 .nb-partners-content .nb-partners-feature { grid-template-columns:minmax(0,1fr); padding:24px; gap:27px; }
 .nb-partners-content .nb-partners-feature > .nb-partners-image { margin-inline:auto; max-width:250px; }
 .nb-partners-content .nb-partners-road-card { grid-template-columns:minmax(0,1fr); }
 .nb-partners-content .nb-partners-road-card .nb-partners-logo { padding:23px; }
 .nb-partners-content .nb-partners-road-card .nb-partners-card-copy { padding:24px; }
 .nb-partners-content .nb-partners-road-card h3 { font-size:26px; }
 .nb-partners-content .nb-partners-navigation { padding-bottom:32px; }
 .nb-partners-content .nb-partners-navigation .wp-block-buttons { width:100%; }
 .nb-partners-content .nb-partners-navigation .wp-block-button { flex:1 1 125px; }
 .nb-partners-content .nb-partners-navigation .wp-block-button__link { width:100%; font-size:11px; padding:10px; }
 .nb-partners-content .nb-partners-section { margin-bottom:39px; }
 .nb-partners-content .nb-partners-section-heading { gap:15px; }
 .nb-partners-content .nb-partners-section-title h2 { font-size:29px; }
 .nb-partners-content .nb-partners-section-title p { font-size:13px; }
 .nb-partners-content .nb-partners-footer { padding:30px 25px; }
}
