/* Crystavo 1.27: shared typography and the inner-page studio system.
   Existing business data, forms and accessible native controls remain the source of truth. */
:root { --studio-ink:#173126; --studio-night:#14291e; --studio-paper:#f5f2e9; --studio-clay:#9c5039; --studio-muted:#58665d; --studio-line:#d9dcd2; }
body { font-family:Inter,Arial,sans-serif; font-weight:400; font-synthesis:none; }
.site-header .site-nav .menu a { font-size:14px; font-weight:600; letter-spacing:0; line-height:1.3; }
.site-header .header-cta,.site-header .language-switcher { font-weight:600; }
body > main { font-weight:400; }
body > main :is(p,li,label,input,select,textarea) { font-weight:400; }
body > main :is(h1,h2,h3,h4) { font-family:Manrope,Inter,sans-serif !important; font-weight:600 !important; }
body > main :is(.button,button) { font-weight:600; letter-spacing:0; }
body > main :is(strong,b) { font-weight:600; }
body > main .eyebrow { font-weight:600 !important; letter-spacing:.1em !important; }
.studio-inner { background:var(--studio-paper); color:var(--studio-ink); overflow:clip; }
.studio-inner *, .studio-inner *::before, .studio-inner *::after { box-sizing:border-box; }
main.studio-inner > section { content-visibility:visible !important; contain-intrinsic-size:none !important; }
.studio-inner [id] { scroll-margin-top:108px; }
.studio-inner :is(h1,h2,h3,h4) { color:var(--studio-ink); text-wrap:balance; }
body > main.studio-inner h1 { font-size:clamp(42px,4.7vw,72px) !important; line-height:1.06 !important; letter-spacing:-.035em !important; }
body > main.studio-inner h2 { font-size:clamp(29px,3.2vw,46px) !important; line-height:1.16 !important; letter-spacing:-.025em !important; }
body > main.studio-inner h3 { font-size:clamp(21px,2vw,27px) !important; line-height:1.25 !important; letter-spacing:-.015em !important; }
.studio-inner :is(p,li,dd) { font-size:16px; line-height:1.7; }
.studio-inner p { color:var(--studio-muted); }
.studio-inner .section { padding:80px max(5vw,24px); margin:0; border:0; }
.studio-inner .section-heading { max-width:760px; margin:0 0 38px; }
.studio-inner .section-heading :is(h2,p) { margin-top:12px; }
.studio-inner .eyebrow { color:var(--studio-clay); font-size:12px !important; }
.studio-inner .button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:13px 22px; border-radius:3px; font-size:14px; line-height:1.3; text-decoration:none; box-shadow:none; }
.studio-inner .button.primary { background:var(--studio-clay); border-color:var(--studio-clay); color:#fff8ea; }
.studio-inner .button.secondary { background:transparent; color:var(--studio-ink); border:1px solid #8d9c8f; }
.studio-inner a:focus-visible,.studio-inner button:focus-visible { outline:2px solid #bb754e; outline-offset:5px; }
.studio-inner .page-breadcrumb-band { display:flex; flex-wrap:wrap; gap:8px; padding:17px 5vw; background:var(--studio-paper); border:0; color:var(--studio-muted); font-size:12px; line-height:1.5; }
.studio-inner .page-breadcrumb-band a { color:var(--studio-muted); font-weight:400; text-decoration:none; }
.studio-inner .page-breadcrumb-band strong { color:var(--studio-ink); font-weight:500; }
/* Product: a substantial image stage and a quiet, clearly prioritised brief. */
main.studio-inner .product-detail-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); gap:0; padding:0; min-height:650px; background:var(--studio-night); border:0; }
main.studio-inner .product-detail-hero > div:first-child { grid-column:2; grid-row:1; align-self:center; padding:56px clamp(28px,4.5vw,80px); }
main.studio-inner .product-detail-hero .eyebrow { margin:0 0 22px; color:#d7ba91; }
main.studio-inner .product-detail-hero h1 { margin:0 0 24px; color:#fff7e7; }
.studio-inner .product-detail-hero .product-hero-summary { margin:0 0 28px; max-width:470px; color:#e0e4da; font-size:17px; line-height:1.65; }
.studio-inner .product-hero-size { margin:0 0 30px; padding-top:20px; border-top:1px solid #ffffff29; color:#d5dccf; font-size:14px; line-height:1.7; }
.studio-inner .product-hero-size strong { display:block; margin-bottom:5px; color:#f2e4c9; font-size:12px; font-weight:500; }
.studio-inner .product-hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.studio-inner .product-detail-hero .button.primary { background:#f4ead5; border-color:#f4ead5; color:var(--studio-ink); }
.studio-inner .product-detail-hero .button.secondary { color:#f4ead5; border-color:#a7b39e; }
.studio-inner .product-detail-hero .product-media-label { display:inline-block; margin-bottom:18px; border:0; background:transparent; color:#c5d1bf; font-size:12px; }
main.studio-inner .product-detail-hero .product-hero-media { display:flex; flex-direction:column; grid-column:1; grid-row:1; align-self:stretch; gap:0; padding:0; min-width:0; background:#eeeae1; border:0; }
.studio-inner .product-gallery-main { display:flex; flex-direction:column; flex:1; width:100%; margin:0; background:#eeeae1; }
main.studio-inner .product-gallery-main img { display:block; width:100%; height:100%; min-height:360px; max-height:550px; aspect-ratio:1.2; object-fit:contain; padding:22px; background:#f3f0e9; border:0; border-radius:0; }
main.studio-inner .product-gallery-main img[data-studio-photo="true"] { padding:0; object-fit:cover; }
.studio-inner .product-gallery-main figcaption { position:static; padding:12px 24px; margin:0; background:#e9e5dc; color:#586057; font-size:12px; line-height:1.5; }
main.studio-inner .product-gallery-thumbs { display:flex; flex-wrap:wrap; align-items:start; gap:12px; width:100%; padding:16px 24px 20px; background:#e9e5dc; }
.studio-inner .product-gallery-thumbs > div { flex:0 0 88px; width:88px; }
main.studio-inner .product-gallery-thumb { width:88px; min-height:0; padding:4px; border:1px solid transparent; border-radius:2px; background:transparent; box-shadow:none; }
main.studio-inner .product-gallery-thumb:is(.is-active,:hover) { border-color:var(--studio-clay); background:#f7f3ea; outline:0; }
.studio-inner .product-gallery-thumb img { display:block; width:78px; height:58px; padding:0; object-fit:contain; }
.studio-inner .product-gallery-thumb span { display:block; padding:6px 0 3px; color:var(--studio-ink); font-size:11px; font-weight:500; line-height:1.35; }
.studio-inner .studio-product-nav { display:flex; flex-wrap:wrap; gap:12px 32px; padding:20px 5vw; border-top:1px solid var(--studio-line); border-bottom:1px solid var(--studio-line); background:var(--studio-paper); }
.studio-inner .studio-product-nav a { color:var(--studio-ink); font-size:14px; text-decoration:none; }
.studio-inner .studio-product-nav a:last-child { margin-left:auto; color:var(--studio-clay); }
.studio-inner .product-overview { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:8vw; align-items:start; background:var(--studio-paper); }
.studio-inner .product-overview h2 { margin:14px 0 24px; max-width:650px; }
.studio-inner .product-intro { max-width:640px; }
.studio-inner .product-spec-panel { padding:30px; background:#e9e8dc; border:0; }
.studio-inner .product-spec-panel > p { margin:0 0 20px; color:var(--studio-clay); font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.studio-inner .product-spec-panel dl { margin:0; }
.studio-inner .product-spec-panel dl > div { display:block; padding:15px 0; border-top:1px solid #cbd1c5; }
.studio-inner .product-spec-panel dt { margin-bottom:5px; font-size:12px; font-weight:600; color:var(--studio-ink); }
.studio-inner .product-spec-panel dd { margin:0; color:var(--studio-muted); font-size:14px; line-height:1.6; }
.studio-inner .product-explore-section { background:#ebe8df; }
.studio-inner .product-explore-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:6vw; align-items:center; }
.studio-inner .product-explore-figure { margin:0; border:0; background:transparent; }
.studio-inner .product-explore-figure img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; }
.studio-inner .product-explore-figure figcaption { padding:12px 0 0; color:var(--studio-muted); font-size:12px; line-height:1.5; }
.studio-inner .product-explore-copy ol { padding-left:23px; }
.studio-inner .product-explore-copy li { margin:18px 0; padding-left:8px; color:var(--studio-muted); }
.studio-inner .product-fill-use { margin-top:60px; padding:36px 0 0; border-top:1px solid #cbd0c5; }
.studio-inner .product-fill-use-heading { display:block; }
.studio-inner .product-fill-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin:30px 0; background:transparent; }
.studio-inner .product-fill-steps article { padding:0; border:0; background:transparent; }
.studio-inner .product-fill-steps article > span { color:var(--studio-clay); font-size:12px; }
.studio-inner .product-fill-steps h4 { margin:16px 0 10px; font-size:19px; letter-spacing:-.015em; }
.studio-inner .product-fill-steps p { font-size:14px; }
.studio-inner .product-configuration-row { display:grid; grid-template-columns:1fr 1fr; gap:36px; padding:28px 0 0; border-top:1px solid #cbd0c5; background:transparent; }
.studio-inner .product-configuration-row > div { padding:0; background:transparent; }
.studio-inner .product-configuration-row p { font-size:14px; }
.studio-inner .product-document-specification { background:var(--studio-night); color:#f3ead8; }
.studio-inner .product-document-specification :is(h2,h3) { color:#fff3dd; }
.studio-inner .product-document-specification .eyebrow { color:#d8bc94; }
.studio-inner .product-document-heading { display:block; margin-bottom:40px; }
.studio-inner .product-document-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 64px; background:transparent; border:0; }
.studio-inner .product-document-grid article { padding:24px 0 0; border:0; border-top:1px solid #ffffff26; background:transparent; }
.studio-inner .product-document-grid h3 { margin:0 0 16px; font-size:22px !important; }
.studio-inner .product-document-grid ul { padding-left:19px; }
.studio-inner .product-document-grid li { color:#d2dbcc; font-size:14px; margin:8px 0; padding:0; border:0; }
.studio-inner .product-document-customization { padding:30px 0 0; margin:38px 0 0; border:0; border-top:1px solid #ffffff26; background:transparent; }
.studio-inner .product-document-customization p { color:#d2dbcc; }
.studio-inner .product-facts-section { display:grid; grid-template-columns:1fr 1fr; gap:38px; background:#ebe8df; }
.studio-inner .product-facts-section details { border:0; border-top:1px solid #bec8b9; padding-top:14px; background:transparent; }
.studio-inner .product-facts-section li { color:var(--studio-muted); border:0; padding:8px 0; }
.studio-inner .product-facts-section li::before { display:none; }
.studio-inner .product-planning-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; background:transparent; }
.studio-inner .product-planning-grid article { padding:0; border:0; background:transparent; }
.studio-inner .product-planning-grid .product-decision-note { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; column-gap:50px; border-top:1px solid var(--studio-line); padding-top:30px; }
.studio-inner .product-decision-note h3 { grid-column:1/-1; }
.studio-inner .product-planning-grid li { border:0; padding:5px 0; color:var(--studio-muted); }
.studio-inner .product-buyer-scenario { padding-block:30px; background:#ebe8df; }
.studio-inner .cpl-product-buyer-section { background:#e9eadd; }
.studio-inner .cpl-product-buyer-list { border:0; background:transparent; }
.studio-inner .cpl-product-buyer-list details { padding:22px 0; border:0; border-top:1px solid #c6cebf; background:transparent; }
.studio-inner .cpl-product-buyer-list summary { font-size:19px !important; padding-block:0; }
.studio-inner .cpl-product-buyer-list p { max-width:840px; margin-top:20px; }
.studio-inner .cpl-related-guides { display:flex; flex-wrap:wrap; gap:14px 24px; margin-top:30px; background:transparent; border:0; padding:24px 0 0; border-top:1px solid #c6cebf; }
.studio-inner .cpl-related-guides strong { width:100%; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.studio-inner .cpl-related-guides a { color:var(--studio-ink); font-size:14px; text-decoration:none; }
.studio-inner .product-contact-final { background:var(--studio-clay); }
.studio-inner .product-contact-final :is(h2,.eyebrow) { color:#fff0da; }
.studio-inner .product-contact-final p { color:#f3dfcd; }
.studio-inner .product-contact-final .button.primary { background:#fff0da; color:var(--studio-ink); border-color:#fff0da; }
.studio-inner .product-contact-final .button.secondary { color:#fff0da; border-color:#e3bca2; }
.studio-inner .product-contact-final .project-form { color:var(--studio-ink); background:var(--studio-paper); padding:32px; }
.studio-inner .product-contact-final .project-form p { color:var(--studio-muted); }
/* Applications and directory: large images, a direct comparison, then the detail. */
main.studio-inner .application-hero,main.studio-inner .directory-hero { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:0; min-height:560px; padding:0; background:var(--studio-night); }
.studio-inner .application-hero > div:first-child,.studio-inner .directory-hero > div:first-child { align-self:center; padding:64px 5vw; }
.studio-inner :is(.application-hero,.directory-hero) h1 { color:#fff3df; margin:0 0 25px; font-size:clamp(40px,4.4vw,66px) !important; }
.studio-inner :is(.application-hero,.directory-hero) .eyebrow { color:#d8bc94; }
.studio-inner :is(.application-hero,.directory-hero) p { color:#d7dfd1; font-size:17px; }
.studio-inner :is(.application-hero,.directory-hero) .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.studio-inner :is(.application-hero,.directory-hero) .button.primary { color:var(--studio-ink); background:#f4ead5; border-color:#f4ead5; }
.studio-inner :is(.application-hero,.directory-hero) .button.secondary { color:#f4ead5; border-color:#9ba994; }
main.studio-inner .application-hero-media { position:relative; margin:0; min-width:0; height:100%; background:#e6e1d6; border:0; }
.studio-inner .application-hero-media picture { display:block; height:100%; }
main.studio-inner .application-hero-media img,main.studio-inner .directory-hero > img { display:block; width:100%; height:100%; min-height:560px; object-fit:cover; padding:0; border-radius:0; }
.studio-inner .application-hero-media figcaption { position:absolute; bottom:15px; left:20px; right:20px; width:fit-content; max-width:90%; margin:0; padding:7px 10px; background:#14291ed9; color:#fff2dc; font-size:11px; line-height:1.5; }
.studio-inner .application-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:50px 30px; }
.studio-inner .application-product-grid article { padding:0; border:0; background:transparent; }
.studio-inner .application-product-grid article > a { display:flex; flex-direction:column; height:100%; padding:0; background:transparent; color:var(--studio-ink); text-decoration:none; }
.studio-inner .application-product-grid img { width:100%; height:auto; aspect-ratio:1.35; object-fit:contain; padding:24px; background:#ebe8df; border:0; }
.studio-inner .application-product-grid img[data-studio-photo="true"] { padding:0; object-fit:cover; }
.studio-inner .application-product-grid article > a > span { display:flex; flex-direction:column; gap:10px; padding:23px 0 0; background:transparent; border:0; }
.studio-inner .application-product-grid small { font-size:11px; font-weight:500; letter-spacing:.06em; text-transform:uppercase; color:var(--studio-clay); }
.studio-inner .application-product-grid strong { font-family:Manrope,Inter,sans-serif; font-size:27px; font-weight:600; line-height:1.2; letter-spacing:-.02em; }
.studio-inner .application-product-grid em { font-style:normal; color:var(--studio-muted); font-size:15px; line-height:1.65; }
.studio-inner .application-product-grid b { color:var(--studio-ink); font-size:13px; font-weight:500; margin-top:8px; }
.studio-inner .application-format-section { background:#e9e6db; }
.studio-inner .application-context-layout { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:5vw; align-items:center; }
.studio-inner .application-context-layout figure { margin:0; padding:0; border:0; background:transparent; }
.studio-inner .application-context-layout figure img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.studio-inner .application-context-layout figcaption { padding:12px 0; font-size:12px; color:var(--studio-muted); }
.studio-inner .application-context-links { display:flex; flex-direction:column; gap:12px; }
.studio-inner .application-context-links a { color:var(--studio-ink); font-size:14px; text-decoration:none; }
.studio-inner .application-format-table-wrap { overflow:auto; margin-top:40px; border:0; background:transparent; }
.studio-inner .application-format-table { width:100%; border-collapse:collapse; background:transparent; }
.studio-inner .application-format-table :is(th,td) { padding:20px 18px; border:0; border-bottom:1px solid #c6cbbb; background:transparent; color:var(--studio-muted); vertical-align:top; font-size:14px; line-height:1.65; }
.studio-inner .application-format-table thead th { color:var(--studio-ink); font-weight:600; font-size:12px; }
.studio-inner .application-format-table tbody th { color:var(--studio-ink); font-weight:500; width:24%; }
.studio-inner .cpl-category-guidance { background:var(--studio-night); }
.studio-inner .cpl-guidance-editorial { display:grid; grid-template-columns:1.15fr .85fr; gap:6vw; }
.studio-inner .cpl-guidance-lead { max-width:680px; }
.studio-inner .cpl-guidance-lead h2 { color:#fff0da; margin:18px 0 25px; }
.studio-inner .cpl-guidance-lead p { color:#d2dbcb; }
.studio-inner .cpl-category-guidance .eyebrow { color:#d8bc94; }
.studio-inner .cpl-guidance-points { align-self:center; }
.studio-inner .cpl-direct-answer-points { display:block; margin:0; padding:0; list-style:none; }
.studio-inner .cpl-direct-answer-points li { padding:22px 0 22px 26px; margin:0; border:0; border-top:1px solid #ffffff25; background:transparent; color:#e2e8da; font-size:15px; }
.studio-inner .cpl-direct-answer-points li::before { color:#d7ba91; }
.studio-inner .cpl-guidance-resource { margin-top:42px; padding:26px 0 0; border-top:1px solid #ffffff25; background:transparent; }
.studio-inner .cpl-guidance-resource :is(h3,a) { color:#f4e6cc; }
.studio-inner .cpl-guidance-resource :is(p,span) { color:#c6d2bd; }
.studio-inner .application-buyer-scenario { background:var(--studio-clay); }
.studio-inner .application-buyer-scenario :is(h2,.eyebrow) { color:#fff1dc; }
.studio-inner .application-buyer-scenario p { color:#f1dbca; }
.studio-inner .application-buyer-scenario > div { display:grid; grid-template-columns:1fr 1fr; gap:5vw; }
.studio-inner .application-brief-section { background:var(--studio-paper); }
.studio-inner .application-project-form { max-width:1060px; margin:0 auto; padding:40px; background:#fffdf6; border:1px solid #d8ddcf; box-shadow:none; }
.studio-inner .application-brief-heading { max-width:760px; }
.studio-inner .project-form :is(label > span,legend) { font-weight:500; font-size:14px; }
.studio-inner .project-form :is(input,select,textarea) { font-weight:400; font-size:16px; background:#fffef8; border:1px solid #bdc7b8; border-radius:3px; }
.studio-inner .project-form-heading h2 { font-size:30px !important; }
.studio-inner .project-form :is(small,.form-contact-note,.privacy-consent span) { font-size:13px; line-height:1.6; }
.studio-inner .directory-categories { padding:80px 5vw; background:var(--studio-paper); }
.studio-inner .professional-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px 28px; }
.studio-inner .professional-category-card { padding:0; background:transparent; border:0; }
.studio-inner .professional-category-card img { aspect-ratio:3/2; height:auto; width:100%; object-fit:cover; }
.studio-inner .professional-category-card > span { padding:28px 30px 30px; flex:1; min-width:0; box-sizing:border-box; }
.studio-inner .professional-category-card strong { font-size:28px; font-weight:600; }
.studio-inner .professional-category-card em { margin-top:auto; padding-top:18px; }
@media(max-width:760px) {
 .studio-inner .professional-category-card > span { padding:22px 24px 26px; }
 .studio-inner .professional-category-card strong { font-size:24px; line-height:1.25; }
}
/* Journal: a visual masthead, useful topics, and an open editorial grid. */
main.studio-inner .blog-masthead { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); grid-template-areas:"copy art" "search art"; gap:0; padding:0; min-height:560px; background:var(--studio-night); }
.studio-inner .blog-masthead-copy { grid-area:copy; align-self:end; padding:60px 5vw 24px; }
.studio-inner .blog-masthead-copy h1 { margin:0 0 24px; max-width:600px; color:#fff0da; }
.studio-inner .blog-masthead-copy .eyebrow { color:#d8bc94; }
.studio-inner .blog-masthead-copy > p:last-child { max-width:420px; color:#d7dfd0; font-size:17px; line-height:1.6; }
.studio-inner .blog-search { grid-area:search; width:auto; max-width:none; padding:0 5vw 60px; align-self:start; }
.studio-inner .blog-search label { color:#d4dfcb; font-size:12px; font-weight:400; margin-bottom:10px; }
.studio-inner .blog-search > div { display:flex; border:1px solid #b8c1ac; border-radius:2px; background:#fff6e3; padding:4px; }
.studio-inner .blog-search input { width:100%; min-width:0; border:0; background:transparent; padding:12px 10px; color:var(--studio-ink); font-size:14px; }
.studio-inner .blog-search button { border:0; background:var(--studio-clay); color:#fff3de; padding:10px 16px; font-size:13px; }
main.studio-inner .journal-masthead-art { grid-area:art; display:block; position:relative; margin:0; border:0; min-width:0; }
main.studio-inner .journal-masthead-art img { width:100%; height:100%; min-height:560px; object-fit:cover; border:0; }
.studio-inner .journal-masthead-art figcaption { position:absolute; bottom:20px; left:24px; right:24px; display:flex; justify-content:space-between; gap:12px; padding:10px 13px; background:#14291ed9; border:0; color:#fff0da; font-size:11px; line-height:1.5; }
.studio-inner .buyer-resource-entry { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:5vw; margin:0; padding:55px 5vw; background:var(--studio-paper); border:0; border-bottom:1px solid var(--studio-line); }
.studio-inner .buyer-resource-entry h2 { max-width:420px; margin:12px 0; font-size:31px !important; }
.studio-inner .buyer-resource-entry > div:first-child > p:last-child { font-size:14px; max-width:420px; }
.studio-inner .buyer-resource-entry-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px 28px; align-content:center; }
.studio-inner .buyer-resource-entry-grid a { display:flex; flex-direction:column; gap:7px; padding:0 0 18px; border:0; border-bottom:1px solid #d2d8c9; background:transparent; text-decoration:none; }
.studio-inner .buyer-resource-entry-grid strong { color:var(--studio-ink); font-size:16px; font-weight:600; }
.studio-inner .buyer-resource-entry-grid span { color:var(--studio-muted); font-size:13px; line-height:1.5; }
.studio-inner .blog-results-heading { display:flex; justify-content:space-between; align-items:end; margin-bottom:26px; }
.studio-inner .blog-results-heading h2 { margin-bottom:0; }
.studio-inner .blog-results-count { font-size:13px; }
.studio-inner .blog-filter-tools { display:block; padding:0 0 30px; border:0; margin-bottom:28px; }
.studio-inner .blog-category-filter { display:flex; flex-wrap:wrap; gap:9px; overflow:visible; width:100%; padding:0; border:0; background:transparent; }
.studio-inner .blog-category-filter a { display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:9px 14px; border:1px solid #cbd3c4; border-radius:24px; background:transparent; color:#4e6053; font-size:12px; font-weight:500; line-height:1.4; text-decoration:none; white-space:normal; }
.studio-inner .blog-category-filter a:is(:hover,.is-active) { border:1px solid var(--studio-ink); background:var(--studio-ink); color:#fff3dc; }
.studio-inner .blog-category-filter a span { color:inherit; opacity:.65; font-size:11px; font-weight:400; }
.studio-inner .blog-category-select-wrap { display:none; }
.studio-inner .blog-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:46px 28px; background:transparent; }
.studio-inner .blog-card { display:flex; flex-direction:column; padding:0; border:0; background:transparent; box-shadow:none; }
.studio-inner .blog-card-media { display:block; margin:0; aspect-ratio:4/3; overflow:hidden; border:0; background:#e8e5da; }
.studio-inner .blog-card-media img { width:100%; height:100%; aspect-ratio:auto; object-fit:cover; padding:0; transition:transform .3s ease; }
.studio-inner .blog-card-media.is-illustration img { padding:18px; object-fit:contain; }
.studio-inner .blog-card-media:hover img { transform:scale(1.035); }
.studio-inner .blog-card-body { display:flex; flex-direction:column; gap:0; flex:1; padding:22px 0 0; border:0; background:transparent; }
.studio-inner .blog-card-body h3 { margin:12px 0 15px; font-size:24px !important; }
.studio-inner .blog-card-body h3 a { color:var(--studio-ink); text-decoration:none; }
.studio-inner .blog-card-meta { display:flex; flex-wrap:wrap; gap:8px 14px; margin:0; color:var(--studio-muted); font-size:11px; line-height:1.5; letter-spacing:.02em; text-transform:none; }
.studio-inner .blog-card-meta span { color:var(--studio-clay); font-weight:500; }
.studio-inner .blog-card-body > p:not(.blog-card-meta) { font-size:14px; line-height:1.65; margin:0 0 22px; }
.studio-inner .blog-card-body > div:last-child { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:auto; padding-top:14px; border-top:1px solid var(--studio-line); color:var(--studio-muted); font-size:12px; }
.studio-inner .blog-card-body > div:last-child a { color:var(--studio-ink); font-weight:500; text-decoration:none; }
.studio-inner .journal-reading-path { background:var(--studio-clay); }
.studio-inner .journal-reading-path :is(h2,h3,.eyebrow) { color:#fff0da; }
.studio-inner .journal-reading-path p { color:#f2ddcd; }
.studio-inner .journal-reading-path .buyer-verification-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; margin-top:40px; }
.studio-inner .journal-reading-path .buyer-verification-grid article { padding:0; border:0; background:transparent; }
.studio-inner .journal-reading-path .buyer-verification-grid article > span { color:#e3ba95; font-size:12px; }
.studio-inner .journal-reading-path .buyer-verification-grid h3 { margin:18px 0 12px; font-size:21px !important; }
.studio-inner .journal-reading-path .buyer-verification-grid p { font-size:14px; }
.studio-inner .page-cta { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:70px 5vw; background:#e5e6d8; border:0; }
.studio-inner .page-cta h2 { max-width:760px; margin:12px 0 0; }
/* Article: generous type and reading width rather than a document-like full-width column. */
.studio-inner .blog-article { background:var(--studio-paper); }
.studio-inner .blog-article-header { max-width:none; margin:0; padding:64px 8vw 48px; background:var(--studio-night); }
.studio-inner .blog-article-header h1 { max-width:1050px; margin:24px 0; color:#fff1dc; font-size:clamp(38px,4.3vw,65px) !important; }
.studio-inner .blog-article-header :is(.eyebrow,.blog-breadcrumb,.blog-breadcrumb a) { color:#dac19b; }
.studio-inner .blog-article-deck { max-width:850px; color:#d6dfce; font-size:18px; line-height:1.65; }
.studio-inner .blog-article-meta { display:flex; flex-wrap:wrap; gap:12px 24px; color:#aebb9f; font-size:12px; }
.studio-inner .blog-article-hero { max-width:1100px; margin:45px auto 0; padding:0 24px; background:transparent; }
.studio-inner .blog-article-hero img { display:block; width:100%; height:auto; max-height:530px; aspect-ratio:2/1; object-fit:contain; background:#ebe7dc; }
.studio-inner .blog-article-layout { display:grid; grid-template-columns:210px minmax(0,760px); gap:60px; justify-content:center; max-width:1200px; padding:60px 35px 80px; margin:auto; }
.studio-inner .blog-article-aside { position:sticky; top:120px; align-self:start; padding:24px 0; border:0; border-top:1px solid #c5cebc; background:transparent; }
.studio-inner .blog-article-aside p { font-size:14px; }
.studio-inner .blog-article-aside a { display:block; padding:10px 0; color:var(--studio-clay); font-size:13px; font-weight:500; text-decoration:none; }
.studio-inner .blog-article-content { min-width:0; }
.studio-inner .blog-article-content :is(p,li) { font-size:17px; line-height:1.85; font-weight:400; }
body > main.studio-inner .blog-article-content h2 { margin:48px 0 20px; font-size:31px !important; line-height:1.22 !important; letter-spacing:-.025em; }
body > main.studio-inner .blog-article-content h3 { margin:32px 0 14px; font-size:23px !important; }
.studio-inner .blog-article-content a { color:var(--studio-clay); text-underline-offset:3px; }
.studio-inner .blog-article-content :is(.article-checklist,.article-answer,.article-summary) { padding:28px; background:#e5e7d8; border:0; border-left:3px solid var(--studio-clay); }
.studio-inner .blog-article-content :is(th,td) { border:0; border-bottom:1px solid #ccd2c4; padding:16px; font-size:14px; line-height:1.6; background:transparent; }
.studio-inner .blog-article-content table { display:block; max-width:100%; overflow:auto; border:0; }
.studio-inner .related-articles { background:#e8e6db; }
.studio-inner .related-articles > header { margin-bottom:32px; }
/* Screen-size changes are composed, not merely scaled down. */
@media(min-width:1500px) { .studio-inner .section { padding-inline:max(5vw,calc((100vw - 1360px)/2)); } }
@media(max-width:1000px) {
 main.studio-inner .product-detail-hero { grid-template-columns:1fr 1fr; min-height:600px; }
 main.studio-inner .product-detail-hero > div:first-child { padding:38px 30px; }
 body > main.studio-inner h1 { font-size:46px !important; }
 .studio-inner .product-hero-actions .button { padding-inline:16px; }
 .studio-inner .blog-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .studio-inner .blog-article-layout { grid-template-columns:170px minmax(0,1fr); gap:32px; }
 .studio-inner .journal-reading-path .buyer-verification-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 body > main.studio-inner h1 { font-size:clamp(35px,8.6vw,49px) !important; line-height:1.1 !important; letter-spacing:-.025em !important; }
 body > main.studio-inner h2 { font-size:31px !important; line-height:1.2 !important; }
 body > main.studio-inner h3 { font-size:23px !important; }
 .studio-inner .section { padding:50px 22px; }
 .studio-inner .section-heading { margin-bottom:28px; }
 .studio-inner .page-breadcrumb-band { padding:14px 22px; font-size:11px; }
 main.studio-inner .product-detail-hero { grid-template-columns:1fr; min-height:0; }
 main.studio-inner .product-detail-hero > div:first-child { grid-column:1; grid-row:2; padding:32px 22px 38px; }
 main.studio-inner .product-detail-hero .product-hero-media { grid-column:1; grid-row:1; }
 main.studio-inner .product-gallery-main img { min-height:0; max-height:460px; height:auto; aspect-ratio:1.35; padding:16px; }
 .studio-inner .product-gallery-main figcaption { padding:10px 22px; font-size:11px; }
 main.studio-inner .product-gallery-thumbs { padding:10px 22px 14px; gap:10px; }
 .studio-inner .product-gallery-thumbs > div,.studio-inner .product-gallery-thumb { width:74px; flex-basis:74px; }
 .studio-inner .product-gallery-thumb img { width:64px; height:46px; }
 .studio-inner .product-gallery-thumb span { font-size:10px; }
 .studio-inner .product-detail-hero h1 { margin-bottom:18px; }
 .studio-inner .product-detail-hero .eyebrow { margin-bottom:14px; }
 .studio-inner .product-detail-hero .product-hero-summary { font-size:16px; margin-bottom:20px; }
 .studio-inner .product-hero-size { margin-bottom:24px; }
 .studio-inner .studio-product-nav { padding:16px 22px; gap:12px 20px; }
 .studio-inner .studio-product-nav a { font-size:12px; }
 .studio-inner .studio-product-nav a:last-child { margin-left:0; }
 .studio-inner :is(.product-overview,.product-explore-layout,.product-configuration-row,.product-planning-grid,.product-document-grid,.product-facts-section,.application-context-layout,.cpl-guidance-editorial,.application-buyer-scenario > div) { grid-template-columns:1fr; gap:28px; }
 .studio-inner .product-spec-panel { padding:24px; }
 .studio-inner .product-explore-copy li { font-size:15px; }
 .studio-inner .product-fill-use { margin-top:36px; }
 .studio-inner .product-fill-steps { grid-template-columns:1fr; gap:24px; }
 .studio-inner .product-fill-steps article { display:grid; grid-template-columns:25px 1fr; gap:0 14px; }
 .studio-inner .product-fill-steps h4 { margin:0 0 8px; }
 .studio-inner .product-fill-steps p { grid-column:2; margin:0; }
 .studio-inner .product-planning-grid .product-decision-note { display:block; }
 .studio-inner .cpl-product-buyer-list summary { font-size:17px !important; }
 .studio-inner .product-contact-final .project-form { padding:24px 18px; }
 main.studio-inner :is(.application-hero,.directory-hero) { grid-template-columns:1fr; min-height:0; }
 .studio-inner :is(.application-hero,.directory-hero) > div:first-child { padding:42px 22px; }
 main.studio-inner .application-hero-media img,main.studio-inner .directory-hero > img { min-height:0; height:auto; aspect-ratio:1.35; object-fit:cover; }
 .studio-inner .application-hero-media figcaption { left:16px; right:16px; bottom:12px; font-size:10px; }
 .studio-inner .application-product-grid { gap:32px 18px; }
 .studio-inner .application-product-grid img { padding:10px; aspect-ratio:1.1; }
 .studio-inner .application-product-grid article > a > span { padding-top:15px; gap:8px; }
 .studio-inner .application-product-grid strong { font-size:21px; line-height:1.22; }
 .studio-inner .application-product-grid em { font-size:13px; line-height:1.6; }
 .studio-inner .application-product-grid small { font-size:10px; }
 .studio-inner .application-product-grid b { font-size:12px; }
 .studio-inner .application-format-table { min-width:620px; }
 .studio-inner .application-project-form { padding:26px 18px; }
 .studio-inner .cpl-guidance-lead h2 { max-width:100%; }
 .studio-inner .directory-categories { padding:50px 22px; }
 .studio-inner .professional-category-grid { grid-template-columns:1fr; }
 main.studio-inner .blog-masthead { grid-template-columns:1fr; grid-template-areas:"copy" "search" "art"; min-height:0; }
 .studio-inner .blog-masthead-copy { padding:42px 22px 12px; }
 .studio-inner .blog-masthead-copy h1 { max-width:550px; }
 .studio-inner .blog-search { padding:0 22px 36px; }
 main.studio-inner .journal-masthead-art img { min-height:0; height:auto; aspect-ratio:1.5; }
 .studio-inner .journal-masthead-art figcaption { bottom:14px; left:16px; right:16px; font-size:10px; }
 .studio-inner .buyer-resource-entry { grid-template-columns:1fr; gap:20px; padding:38px 22px; }
 .studio-inner .buyer-resource-entry h2 { font-size:29px !important; }
 .studio-inner .buyer-resource-entry-grid { gap:20px; }
 .studio-inner .blog-category-filter { gap:8px; }
 .studio-inner .blog-category-filter a { font-size:11px; padding:8px 11px; }
 .studio-inner .blog-card-grid { gap:35px 20px; }
 .studio-inner .blog-card-body h3 { font-size:22px !important; }
 .studio-inner .page-cta { display:block; padding:50px 22px; }
 .studio-inner .page-cta .button { margin-top:25px; }
 .studio-inner .blog-article-header { padding:40px 22px; }
 .studio-inner .blog-article-deck { font-size:16px; }
 .studio-inner .blog-article-hero { margin-top:28px; padding:0 22px; }
 .studio-inner .blog-article-hero img { aspect-ratio:1.4; }
 .studio-inner .blog-article-layout { display:flex; flex-direction:column; padding:35px 22px 50px; gap:28px; }
 .studio-inner .blog-article-aside { position:static; order:2; width:100%; }
 .studio-inner .blog-article-content :is(p,li) { font-size:16px; line-height:1.8; }
 body > main.studio-inner .blog-article-content h2 { font-size:28px !important; margin-top:36px; }
}
@media(max-width:520px) {
 .studio-inner .application-product-grid,.studio-inner .blog-card-grid { grid-template-columns:1fr; }
 .studio-inner .application-product-grid img { aspect-ratio:1.4; }
 .studio-inner .application-product-grid strong { font-size:26px; }
 .studio-inner .application-product-grid em { font-size:15px; }
 .studio-inner .application-product-grid small { font-size:11px; }
 .studio-inner .journal-reading-path .buyer-verification-grid { grid-template-columns:1fr; gap:26px; }
 .studio-inner .product-hero-actions { gap:10px; }
 .studio-inner .product-hero-actions .button { padding-inline:17px; font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .studio-inner .blog-card-media img { transition:none; } }
.studio-inner .studio-gallery-open { display:block; align-self:flex-start; min-height:40px; margin:0 24px 10px; padding:5px 0; border:0; border-bottom:1px solid #9daa95; background:transparent; color:var(--studio-ink); font:500 12px/1.5 Inter,sans-serif; cursor:pointer; }
.studio-gallery-dialog { width:min(1100px,94vw); max-height:92vh; padding:22px; border:0; border-radius:4px; background:#f5f2e9; color:#173126; box-shadow:0 25px 100px #0005; }
.studio-gallery-dialog::backdrop { background:#0c1b15d9; }
.studio-gallery-dialog img { display:block; width:100%; max-height:72vh; object-fit:contain; }
.studio-gallery-dialog p { margin:16px 0 0; font:400 13px/1.6 Inter,sans-serif; }
.studio-gallery-close { display:block; min-height:40px; margin:0 0 12px auto; padding:8px 14px; border:1px solid #a4b19b; border-radius:3px; background:transparent; color:#173126; font:500 14px/1.4 Inter,sans-serif; cursor:pointer; }
/* Override legacy colour locks only on the new dark hero surfaces. */
main.studio-inner .product-detail-hero .eyebrow { color:#d7ba91 !important; }
main.studio-inner .product-detail-hero .product-hero-summary { color:#e0e4da !important; }
main.studio-inner .product-detail-hero .product-hero-size { color:#d5dccf !important; }
main.studio-inner .product-detail-hero .product-hero-size strong { color:#f2e4c9 !important; }
main.studio-inner :is(.product-detail-hero,.application-hero,.directory-hero) .button.primary { background:#f4ead5 !important; border-color:#f4ead5 !important; color:#173126 !important; }
main.studio-inner :is(.product-detail-hero,.application-hero,.directory-hero) .button.secondary { background:transparent !important; border-color:#a7b39e !important; color:#f4ead5 !important; }
main.studio-inner .product-detail-hero .product-media-label { font-weight:400; letter-spacing:.06em; font-size:11px; }
main.studio-inner .product-gallery-main figcaption { width:100%; max-width:none; }
main.inner-page.studio-inner.application-detail-page .application-hero { align-items:stretch; }
main.inner-page.studio-inner.application-detail-page .application-hero h1 { color:#fff3df !important; }
main.inner-page.studio-inner.application-detail-page .application-hero > div > p:not(.eyebrow) { color:#d7dfd1 !important; }
main.inner-page.studio-inner.application-detail-page .application-hero .eyebrow { color:#d8bc94 !important; }
main.inner-page.studio-inner.application-detail-page .application-hero .button.secondary { color:#f4ead5 !important; border-color:#a7b39e !important; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media { position:relative !important; border:0 !important; border-radius:0 !important; height:100% !important; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media picture { height:100%; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media img { height:100% !important; min-height:560px !important; aspect-ratio:auto !important; object-fit:cover !important; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media figcaption { position:absolute !important; inset:auto 20px 15px 20px !important; width:fit-content !important; padding:7px 10px !important; background:#14291ed9 !important; color:#fff2dc !important; font-size:11px !important; }
@media(max-width:760px) {
 main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media img { height:auto !important; min-height:0 !important; aspect-ratio:1.35 !important; }
 main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media figcaption { inset:auto 16px 12px 16px !important; font-size:10px !important; }
}
main.studio-inner .journal-masthead-art figcaption span { color:#fff0da; font-weight:400; }
.studio-inner .blog-filter-actions { min-height:0; margin:0 0 16px; }
.studio-inner .blog-article-hero figcaption { margin-top:12px; color:var(--studio-muted); font-size:12px; line-height:1.5; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media img { object-fit:contain !important; background:#e7e1d5; }
.studio-inner .blog-card-meta time,.studio-inner .blog-article-meta { font-weight:400; }
.studio-inner [hidden] { display:none !important; }
.studio-inner .blog-filter-tools { padding-bottom:0; margin-bottom:24px; }
.studio-inner .blog-filter-actions:not(:has(a:not([hidden]))) { display:none; }
.studio-inner :is(dd,.product-spec-panel,.blog-article-content) { overflow-wrap:anywhere; }
.studio-inner .blog-card-media img[src$=".svg"] { padding:18px; object-fit:contain; }
.studio-inner .studio-directory-media { position:relative; margin:0; height:100%; background:#e7e1d5; }
.studio-inner .studio-directory-media img { display:block; width:100%; height:100%; min-height:560px; object-fit:contain; }
.studio-inner .studio-directory-media figcaption { position:absolute; bottom:18px; left:20px; padding:7px 10px; color:#fff1db; background:#14291ed9; font-size:11px; }
@media(max-width:760px) { .studio-inner .studio-directory-media img { min-height:0; height:auto; aspect-ratio:1.4; } }
main.studio-inner .project-form { border:1px solid #d1d7c8; border-radius:4px; box-shadow:none; background:#fffdf6; }
.studio-inner .product-inline-quote { background:var(--studio-paper); }
.studio-inner .product-inline-quote .project-form { padding:36px; }
.studio-inner .project-form-heading > p { color:var(--studio-clay) !important; font-size:12px; font-weight:500 !important; letter-spacing:.08em; }
.studio-inner .project-form label > span { text-transform:none; letter-spacing:0; font-weight:500; }
main.studio-inner .product-contact-final .button.primary { background:#fff0da !important; color:var(--studio-ink) !important; border-color:#fff0da !important; }
@media(max-width:760px) { .studio-inner .product-inline-quote .project-form { padding:24px 18px; } }
.studio-inner .studio-directory-media figcaption { width:fit-content; font-weight:400; letter-spacing:0; text-transform:none; line-height:1.5; }

main.studio-inner.blog-index-page .journal-masthead-art figcaption span:first-child { color:#fff0da; font-weight:400; }
/* Photograph captions take their own row rather than covering the subject. */
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media { display:flex !important; flex-direction:column; height:auto !important; background:#e7e1d5 !important; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media picture { position:relative !important; flex:1; min-height:520px; height:auto; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media img { position:absolute !important; inset:0 !important; min-height:0 !important; height:100% !important; object-fit:cover !important; background:#e7e1d5; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media img[src*="photo-liquid-pouch"] { object-fit:contain !important; background:#fff; }
main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media figcaption { position:static !important; inset:auto !important; width:100% !important; max-width:none; margin:0 !important; padding:11px 20px !important; color:#58665d !important; background:#ebe8de !important; font-size:12px !important; line-height:1.5 !important; }
main.studio-inner .journal-masthead-art { display:flex; flex-direction:column; }
main.studio-inner .journal-masthead-art img { flex:1; min-height:0; height:100%; object-fit:cover; }
main.studio-inner .journal-masthead-art figcaption { position:static; inset:auto; margin:0; padding:11px 20px; background:#e8e5db; color:#58665d; }
main.studio-inner.blog-index-page .journal-masthead-art figcaption span:first-child,main.studio-inner .journal-masthead-art figcaption span { color:#58665d; }
.studio-inner .studio-directory-media { display:flex; flex-direction:column; }
.studio-inner .studio-directory-media img { flex:1; min-height:0; height:100%; object-fit:cover; }
.studio-inner .studio-directory-media figcaption { position:static; inset:auto; width:100%; margin:0; padding:11px 20px; background:#e8e5db; color:#58665d; }
@media(max-width:760px) {
 main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media picture { flex:none; min-height:0; aspect-ratio:1.35; }
 main.inner-page.studio-inner.application-detail-page .application-hero > figure.application-hero-media img { height:100% !important; aspect-ratio:auto !important; }
 main.studio-inner .journal-masthead-art img,.studio-inner .studio-directory-media img { flex:none; height:auto; aspect-ratio:1.5; }
}
main.studio-inner .studio-photo-stage { position:relative; flex:1; min-height:520px; }
main.studio-inner :is(.journal-masthead-art,.studio-directory-media) .studio-photo-stage img { position:absolute; inset:0; width:100%; height:100%; min-height:0; object-fit:cover; }
@media(max-width:760px) { main.studio-inner .studio-photo-stage { flex:none; min-height:0; aspect-ratio:1.5; } }
main.studio-inner :is(.journal-masthead-art,.studio-directory-media) .studio-photo-stage img { max-height:none !important; height:100% !important; aspect-ratio:auto !important; }

/* v1.28.1: explicit foregrounds prevent legacy card rules leaking onto inverse surfaces. */
main.inner-page.studio-inner .journal-reading-path :is(h2,h3,p,li,span,strong,a,.eyebrow),
main.inner-page.studio-inner .application-buyer-scenario :is(p,li),
main.inner-page.studio-inner .product-contact-final p {
 color:#fff4e4 !important;
}
main.inner-page.studio-inner .product-document-specification :is(h2,h3) {
 color:#fff7ea !important;
}
main.studio-inner .product-fill-steps article > span {
 color:#fff4e4 !important;
 background:#173126 !important;
}
main .blog-category-filter a span { opacity:1 !important; color:inherit !important; }
main .blog-card-body a > span { color:inherit !important; }
main :is(.directory-buyer-path,.order-five-steps,.order-approval-trail,.order-brief-check) article > span {
 color:#8b422f !important;
}
main .about-contact-cta .button.secondary {
 color:#fff4e4 !important;
 border-color:#e6d9bd !important;
 background:transparent !important;
}
main :is(.guided-application-choice.is-selected,.guided-choice-grid button.is-selected) {
 background:#8b422f !important;
 border-color:#8b422f !important;
 color:#fff4e4 !important;
}
main :is(.guided-application-choice.is-selected,.guided-choice-grid button.is-selected) :is(strong,small) {
 color:#fff4e4 !important;
}

main.inner-page.studio-inner.product-detail-page > .product-contact-strip.product-contact-final p:not(.eyebrow) { color:#fff4e4 !important; }

/* Form radio choices use native checked inputs rather than the guided chooser state. */
main .choice-grid input:checked + span {
 background:#8b422f !important; border-color:#8b422f !important;
 box-shadow:inset 0 0 0 1px #8b422f !important; color:#fff4e4 !important;
}
main .choice-grid input:checked + span :is(strong,small) { color:#fff4e4 !important; }

/* Pagination: separate the list layout from each numeric or text control. */
main.studio-inner .blog-pagination { margin-top:48px; }
main.studio-inner .blog-pagination ul.page-numbers {
 display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:10px;
 margin:0; padding:4px; list-style:none;
}
main.studio-inner .blog-pagination ul.page-numbers > li { display:block; margin:0; padding:0; }
main.studio-inner .blog-pagination ul.page-numbers > li > :is(a,span) {
 display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box;
 width:auto; min-width:44px; height:44px; min-height:44px; padding:0 14px; margin:0;
 border:1px solid #b4bbae; border-radius:4px; background:transparent; color:#173126;
 font-family:inherit; font-size:15px; font-weight:600; line-height:1; letter-spacing:0;
 white-space:nowrap; text-decoration:none;
}
main.studio-inner .blog-pagination ul.page-numbers > li > :is(.next,.prev) { min-width:108px; padding-inline:20px; }
main.studio-inner .blog-pagination ul.page-numbers > li > .current {
 background:#173126; border-color:#173126; color:#fff4e4;
}
main.studio-inner .blog-pagination ul.page-numbers > li > a:hover {
 background:#e5e8de; border-color:#173126; color:#173126;
}
main.studio-inner .blog-pagination ul.page-numbers > li > a:focus-visible {
 outline:3px solid #8b422f; outline-offset:3px;
}
main.studio-inner .blog-pagination ul.page-numbers > li > .dots { border-color:transparent; padding-inline:8px; }
@media(max-width:480px) {
 main.studio-inner .blog-pagination ul.page-numbers { gap:8px; }
 main.studio-inner .blog-pagination ul.page-numbers > li > :is(.next,.prev) { min-width:96px; padding-inline:14px; }
}

/* v1.28.5: a quiet, consistent navigation frame across every public template. */
body > .site-header {
 box-sizing:border-box; min-height:80px; gap:24px; padding:12px clamp(24px,3vw,54px);
 background:#fffef9; border-bottom:1px solid #e2e4da; box-shadow:none; backdrop-filter:none;
}
body > .site-header .brand-logo { width:180px; height:auto; max-height:46px; }
body > .site-header .site-nav .menu { gap:clamp(18px,2vw,32px); }
body > .site-header .site-nav .menu > li > a {
 position:relative; min-height:44px; box-sizing:border-box; padding:0 2px; gap:9px;
 font-family:Inter,Arial,sans-serif; font-size:15px; font-weight:500; line-height:1.35;
 letter-spacing:-.01em; white-space:nowrap; border-radius:0; color:#203b33 !important;
 background:transparent; box-shadow:none !important; text-decoration:none;
}
body > .site-header .site-nav .menu > li > a::before {
 content:""; position:absolute; inset-inline-start:50%; bottom:3px; width:24px; height:2px;
 background:#9c5039; opacity:0; transform:translateX(-50%); transition:opacity 150ms ease;
}
body > .site-header .site-nav .menu > li > a:is([aria-current="page"],[aria-current="location"],.is-current)::before,
body > .site-header .site-nav .menu > li > a:hover::before { opacity:1; }
body > .site-header .site-nav .menu-item-has-children > a::after {
 flex:none; width:5px; height:5px; border-width:0 1.5px 1.5px 0;
 transform:rotate(45deg) translateY(-2px);
}
body > .site-header :is(a,button):focus-visible { outline:2px solid #8b422f; outline-offset:4px; }
body > .site-header .header-cta {
 min-height:42px; box-sizing:border-box; padding:10px 18px; border:1px solid #8b422f;
 border-radius:4px; background:#8b422f; color:#fff8ec; box-shadow:none;
 font-size:14px; font-weight:600; line-height:1.35; letter-spacing:0; white-space:nowrap;
}
body > .site-header .header-cta:hover { background:#713525; border-color:#713525; transform:none; box-shadow:none; }
body > .site-header .language-toggle {
 width:58px; height:40px; border:1px solid #b6beb2; border-radius:4px; background:transparent;
 color:#203b33; font-size:12px; font-weight:500; gap:8px;
}
body > .site-header .language-arrow { width:5px; height:5px; border-width:0 1.5px 1.5px 0; }
body > .site-header .language-menu {
 border:1px solid #dde1d6; border-radius:6px; padding:8px; background:#fffef9;
 box-shadow:0 12px 30px rgba(23,49,38,.10);
}
body > .site-header .language-menu a { font-weight:500; }
@media(min-width:1101px) {
 body > .site-header .site-nav .sub-menu {
 width:300px; top:calc(100% + 8px); padding:10px; gap:2px; border:1px solid #dde1d6;
 border-radius:6px; background:#fffef9; box-shadow:0 16px 40px rgba(23,49,38,.10);
 }
 body > .site-header .site-nav .sub-menu a {
 box-sizing:border-box; min-height:42px; padding:11px 12px; font-size:14px; font-weight:500;
 line-height:1.45; color:#203b33 !important; border-radius:3px; background:transparent; box-shadow:none;
 }
 body > .site-header .site-nav .sub-menu a:is(:hover,:focus,[aria-current="page"]) {
 background:#edf0e7; box-shadow:none;
 }
}
@media(max-width:1100px) {
 body > .site-header { min-height:72px; gap:12px; padding:12px 24px; }
 body > .site-header .brand-logo { width:156px; max-height:40px; }
 body > .site-header .nav-toggle {
 width:42px; height:42px; padding:0; border:1px solid #b6beb2; border-radius:4px; background:transparent;
 }
 body > .site-header .nav-toggle span { width:18px; height:1.5px; margin:4px auto; background:#203b33; }
 body > .site-header .site-nav.is-open { padding-top:8px; border-top:1px solid #e2e4da; }
 body > .site-header .site-nav .menu { gap:2px; padding:4px 0; }
 body > .site-header .site-nav .menu > li > a {
 display:flex; min-height:46px; padding:11px 12px; font-size:15px; white-space:normal;
 }
 body > .site-header .site-nav .menu > li > a::before {
 inset-inline-start:0; top:12px; bottom:12px; width:2px; height:auto; transform:none;
 }
 body > .site-header .site-nav .sub-menu {
 margin:0 0 8px 12px; padding:0 0 0 12px; border-inline-start:1px solid #d9dfd2;
 }
 body > .site-header .site-nav .sub-menu a {
 box-sizing:border-box; min-height:44px; padding:10px 12px; border:0; border-radius:3px;
 color:#475e51 !important; background:transparent; box-shadow:none; font-size:14px; font-weight:400; line-height:1.5;
 }
 body > .site-header .site-nav .sub-menu a:is(:hover,:focus,[aria-current="page"]) { background:#edf0e7; box-shadow:none; }
}
@media(max-width:380px) {
 body > .site-header { padding-inline:18px; gap:10px; }
 body > .site-header .brand-logo { width:140px; }
 body > .site-header .language-toggle { width:50px; }
}
@media(prefers-reduced-motion:reduce) {
 body > .site-header .site-nav .menu > li > a::before { transition:none; }
}

/* Ordering hero: short editorial headline, focused copy, and a clear approval path. */
body > main.inner-page .page-hero.page-hero-guides {
 display:block; padding:clamp(48px,5vw,80px) clamp(24px,5vw,80px);
 min-height:0; background:#173126; color:#fff4e4;
}
body > main.inner-page .page-hero-guides > .guides-hero-inner {
 display:grid; grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr); align-items:center;
 gap:clamp(48px,7vw,112px); max-width:1280px; padding:0; margin:0 auto;
}
body > main.inner-page .page-hero-guides .guides-hero-copy h1 {
 max-width:none; margin:20px 0 24px; font-size:clamp(44px,4.7vw,72px); font-weight:500 !important;
 line-height:1.08; letter-spacing:-.045em; color:#fff4e4;
}
body > main.inner-page .page-hero-guides h1 > span { display:block; }
body > main.inner-page .page-hero-guides .eyebrow { margin:0; color:#ddd9b9; font-size:11px; letter-spacing:.12em; }
body > main.inner-page .page-hero-guides p.guides-hero-intro {
 max-width:47ch; margin:0; color:#dce4d8; font-size:17px; line-height:1.7;
}
body > main.inner-page .page-hero-guides .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:30px 0 0; }
body > main.inner-page .page-hero-guides .hero-actions .button {
 min-height:46px; box-sizing:border-box; padding:12px 22px; border:1px solid #fff4e4;
 border-radius:4px; font-size:14px; line-height:1.4; font-weight:500; box-shadow:none; transform:none;
}
body > main.inner-page .page-hero-guides .hero-actions .button.primary { background:#fff4e4 !important; border-color:#fff4e4 !important; color:#173126 !important; }
body > main.inner-page .page-hero-guides .hero-actions .button.secondary { background:transparent !important; color:#fff4e4 !important; border-color:#9caa99; }
body > main.inner-page .page-hero-guides .hero-actions .button:hover { background:#e3e9dc !important; color:#173126 !important; border-color:#e3e9dc; }
body > main.inner-page .page-hero-guides p.cpl-hero-condition {
 max-width:none; margin:22px 0 0; color:#dce4d8; font-size:12px; line-height:1.65;
}
body > main.inner-page .page-hero-guides .guides-hero-path { padding:28px 30px; border:1px solid #536958; border-radius:4px; background:#203d30; }
body > main.inner-page .page-hero-guides .guides-hero-path h2 { margin:12px 0 24px; color:#fff4e4; font-size:22px; font-weight:500 !important; line-height:1.35; letter-spacing:-.025em; }
body > main.inner-page .page-hero-guides .guides-hero-path ol { display:grid; gap:0; list-style:none; padding:0; margin:0; }
body > main.inner-page .page-hero-guides .guides-hero-path li { display:grid; grid-template-columns:24px 1fr; align-items:baseline; gap:16px; padding:13px 0; border-top:1px solid #4a6151; color:#fff4e4; }
body > main.inner-page .page-hero-guides .guides-hero-path li span { font-size:11px; font-variant-numeric:tabular-nums; color:#d4d9c5; }
body > main.inner-page .page-hero-guides .guides-hero-path strong { font-size:14px; font-weight:400; line-height:1.5; }
body > main.inner-page .page-hero-guides .guides-hero-path > a { display:inline-flex; align-items:center; gap:12px; min-height:44px; margin-top:14px; color:#fff4e4; font-size:13px; text-underline-offset:5px; text-decoration:underline; }
@media(max-width:900px) {
 body > main.inner-page .page-hero-guides > .guides-hero-inner { grid-template-columns:1fr; gap:36px; }
 body > main.inner-page .page-hero-guides .guides-hero-copy h1 { font-size:clamp(38px,6.5vw,58px); }
 body > main.inner-page .page-hero-guides .guides-hero-path { max-width:560px; }
}
@media(max-width:480px) {
 body > main.inner-page .page-hero.page-hero-guides { padding:40px 24px; }
 body > main.inner-page .page-hero-guides .guides-hero-copy h1 { font-size:clamp(34px,9vw,43px); margin:18px 0 22px; }
 body > main.inner-page .page-hero-guides p.guides-hero-intro { font-size:15px; line-height:1.7; }
 body > main.inner-page .page-hero-guides .hero-actions { gap:10px; margin-top:24px; }
 body > main.inner-page .page-hero-guides .hero-actions .button { padding:12px 16px; }
 body > main.inner-page .page-hero-guides .guides-hero-path { padding:24px 20px; }
}
/* Longer translations retain clear separation at the desktop breakpoint. */
@media(min-width:1101px) and (max-width:1280px) {
 html:not([lang="en"]) body > .site-header { gap:18px; }
 html:not([lang="en"]) body > .site-header .brand-logo { width:156px; }
 html:not([lang="en"]) body > .site-header .site-nav .menu { gap:16px; }
 html:not([lang="en"]) body > .site-header .site-nav .menu > li > a { font-size:13.5px; }
 html:not([lang="en"]) body > .site-header .header-cta { padding-inline:14px; font-size:13px; }
}
@media(min-width:1101px) {
 html[dir="rtl"] body > .site-header .site-nav .menu > li > a::before { transform:translateX(50%); }
}
body > main.inner-page #five-steps { scroll-margin-top:100px; }

/* v1.29: focused buying guidance, with one open answer and optional deeper reading. */
main.inner-page.studio-inner > .buyer-workbench {
 display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(36px,7vw,100px);
 padding:clamp(48px,6vw,84px) clamp(24px,6vw,88px); background:#e9ede2; color:#173126;
}
main.studio-inner .buyer-workbench-intro { max-width:420px; }
main.studio-inner .buyer-workbench .eyebrow { color:#8b422f; margin:0 0 18px; }
main.studio-inner .buyer-workbench h2 { color:#173126; margin:0 0 22px; font-size:clamp(30px,3vw,42px) !important; line-height:1.15; letter-spacing:-.035em; }
main.studio-inner .buyer-workbench-intro > p:not(.eyebrow) { color:#475c4e; margin:0; font-size:16px; line-height:1.75; }
main.studio-inner .buyer-workbench-resource { display:inline-flex; align-items:center; gap:12px; min-height:44px; margin-top:20px; color:#173126; font-size:14px; text-decoration:underline; text-underline-offset:5px; }
main.studio-inner .buyer-workbench-questions { min-width:0; }
main.studio-inner .buyer-workbench details { border:0; border-bottom:1px solid #bec9b6; border-radius:0; background:transparent; box-shadow:none; margin:0; padding:0; }
main.studio-inner .buyer-workbench summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:64px; padding:14px 0; box-sizing:border-box; list-style:none; color:#173126; font-size:17px; font-weight:500; cursor:pointer; }
main.studio-inner .buyer-workbench summary::-webkit-details-marker { display:none; }
main.studio-inner .buyer-workbench summary::after { display:none; }
main.studio-inner .buyer-workbench summary > span { color:#8b422f; font-size:24px; font-weight:400; line-height:1; transition:transform 150ms ease; }
main.studio-inner .buyer-workbench details[open] summary > span { transform:rotate(45deg); }
main.studio-inner .buyer-workbench details p { color:#475c4e; margin:0; padding:0 28px 24px 0; font-size:15px; line-height:1.8; }
main.studio-inner .buyer-workbench summary:focus-visible { outline:2px solid #8b422f; outline-offset:4px; }
main.studio-inner .blog-card-media.is-illustration img[src*="editorial-"] { padding:0; }
main.studio-inner .blog-article-hero img[src*="editorial-"] { max-height:none; height:auto; aspect-ratio:12/7; object-fit:contain; }
main.studio-inner .buyer-table-scroll { max-width:100%; overflow-x:auto; }
main.studio-inner .buyer-table-scroll table { display:table; min-width:580px; width:100%; border-collapse:collapse; }
main.studio-inner .buyer-table-scroll th { color:#173126; background:#e9ede2; font-weight:500; text-align:start; }
main.studio-inner .buyer-table-scroll :is(th,td) { border:0; border-bottom:1px solid #d0d7c9; padding:16px; vertical-align:top; }
@media(max-width:760px) {
 main.inner-page.studio-inner > .buyer-workbench { grid-template-columns:1fr; gap:24px; }
 main.studio-inner .buyer-workbench-intro { max-width:none; }
 main.studio-inner .buyer-workbench summary { min-height:56px; font-size:16px; }
 main.studio-inner .buyer-workbench details p { padding-inline-end:0; }
}
@media(prefers-reduced-motion:reduce) { main.studio-inner .buyer-workbench summary > span { transition:none; } }

/* A concise next-step explanation beside the enquiry, with no delivery promise. */
main.quote-page .project-form .form-next-step {
 margin:20px 0 0; padding:16px 18px; background:#e9ede2; color:#173126;
 font-size:14px; line-height:1.75; border:0; border-radius:4px;
}
main.quote-page .project-form .form-next-step strong { color:#173126; font-weight:500; }

/* Enquiry security is part of the form flow, never an overlay. */
.cpl-verification { grid-column:1/-1; margin:20px 0; padding:18px; border:1px solid #d9ded6; border-radius:10px; background:#fffdf7; color:#203d34; min-width:0; box-sizing:border-box; }
.cpl-verification > p { margin:0 0 12px; font-size:14px; line-height:1.5; color:#203d34; }
.cpl-verification [data-verification-status] { margin:10px 0 0; font-size:13px; color:#52605a; }
.cpl-verification-retry { margin-top:12px; padding:8px 12px; border:1px solid #203d34; border-radius:5px; background:#fffdf7; color:#203d34; cursor:pointer; font:inherit; }
