/* Shared reading scale for the frontend and Gutenberg. */
:root,.editor-styles-wrapper{
 --bn-body:clamp(1.125rem,1.075rem + .2vw,1.1875rem);
 --bn-lead:clamp(1.25rem,1.15rem + .4vw,1.375rem);
 --bn-ui:1rem;
 --bn-caption:.875rem;
}
body,.editor-styles-wrapper{font-size:var(--bn-body);line-height:1.7}
p{line-height:1.75}

/* Descriptive copy keeps the same readable size across sections and breakpoints. */
.hero-bottom p,.intro-bottom p,.section-head>p,.service-summary,.service-body p,
.space-panel p,.connections-title p,.connection-grid p,.process-grid p,
.process-grid>li>p,.faq-list p,.contact-aside p,.split-section p,.deliver-grid p,
.service-card p,.offer-card p,.guide-card p,.article-content p,.contact-details p,
.brief-panel>p,.bn-portfolio-intro>p:last-child,.bn-project-caption>p:last-child,
.bn-case-chapter>p:last-child,.bn-feature p,.bn-case-result>p:not(.eyebrow),
.bn-case-cta>p:not(.eyebrow){font-size:var(--bn-body);line-height:1.75}
.page-lead{font-size:var(--bn-lead);line-height:1.65}
.article-content p{line-height:1.8}
.article-content .article-author{font-size:var(--bn-ui);line-height:1.7}
.simple-list,.article-check ul,.contact-details address{font-size:var(--bn-body);line-height:1.75}
.faq-list summary,.space-panel summary{font-size:var(--bn-body);line-height:1.5}
.process-grid h3{font-size:1.25rem;line-height:1.4}

/* Labels remain subordinate without the original 9–12px text. */
.eyebrow,.page-hero>.eyebrow,.offer-card .eyebrow,.guide-card .eyebrow,
.footer-grid .eyebrow,.contact-top .eyebrow,.bn-project-caption>.eyebrow,
.section-number,.service-no,.portfolio-no,.bn-step>p:first-child,
.process-grid .bn-step>span,.panel-index,.bn-art-number,.bn-art-label,
.bn-directory-heading,.hero-index{font-size:var(--bn-caption);line-height:1.6;letter-spacing:.06em}
.hero-place,.hero-foot,.hero-foot>p,.contact-top p:last-child,
.contact-top>span:last-child,.photo-credit,.portfolio-caption p,
.portfolio-caption>span,.footer{font-size:var(--bn-caption);line-height:1.7}
.visual-top,.visual-top p,.visual-bottom>span:last-child{font-size:var(--bn-caption);line-height:1.6}
.contact-top .eyebrow{max-width:none}

/* Links, controls, captions and supporting information. */
.text-link,.page-jump,.page-jump>.bn-link,.legal-link,.card-action,
.contact-label,.contact-brief-link,.copy-row,.copy-row button,
.contact-details .copy-row button,.tags li,.space-tabs button,
.offer-filters button,.filter-count,.breadcrumbs ol,.article-toc li,
.service-figure figcaption,.case-visual figcaption,.form-note,
.download-brief,.brief-panel #brief-status,
.footer-grid p,.footer-grid .bn-link,.footer-grid>div>a:not(.brand),
.connection-path,.connection-grid .connection-path p,
.bn-art-step,.bn-case-visual .bn-art-step{font-size:var(--bn-ui);line-height:1.65}
.wp-block-button__link,.button,.page-hero .button,.mini-cta .button{font-size:var(--bn-ui);line-height:1.5}
.brief-panel label,.brief-panel input,.brief-panel select,.brief-panel textarea{font-size:1.125rem;line-height:1.5}
.brief-panel label span{font-size:inherit;line-height:inherit}
.page-hero h1 .h1-topic{font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:1.5}

/* Let larger text wrap naturally in compact layouts. */
.hero-foot,.contact-top,.footer{flex-wrap:wrap;gap:16px 28px}
.hero-foot a{flex-wrap:wrap;gap:8px 24px}
.connection-path{overflow-wrap:anywhere}
.bn-art-step{min-width:0;overflow-wrap:anywhere}
.bn-project-art{width:100%;min-width:0;min-height:340px;height:auto}
.bn-art-process{flex-shrink:0}
.bn-project-caption>p:last-child,.service-body p,.space-panel p{max-width:60ch}
@media(max-width:600px){
 .bn-project-art{min-height:320px}
 .bn-case-visual>.bn-project-art{min-height:340px}
 .bn-case-visual>.bn-project-amarello,.bn-case-visual>.bn-project-film{min-height:0}
 .footer{gap:14px 24px}
}

.discipline-bar .wrap{font-size:var(--bn-ui)}
@media(max-width:600px){
 .bn-project-card>.bn-project-art{aspect-ratio:auto;min-height:340px}
}
.bn-field-error{display:block;font-size:16px;line-height:1.5;color:#ffbcb3}.bn-field-error:empty{display:none}.brief-panel [aria-invalid="true"]{border-color:#ffbcb3}.brief-panel #brief-status.is-error{color:#ffbcb3}.brief-panel button:disabled{opacity:.75;cursor:default;transform:none}.brief-panel [readonly]{opacity:.85}.download-brief[hidden]{display:none}.form-note a{text-decoration:underline}

.bn-turnstile{margin:24px 0 8px;min-height:65px;max-width:100%}.bn-turnstile-status{min-height:1.6em;margin:8px 0 20px}
