/* Readable supporting copy and accessible controls across the storefront. */
.hero-bottom{left:0;right:0;bottom:0;height:auto;min-height:76px;padding:16px 50px;background:#07111fe8;color:#edf2f6;font-size:13px;letter-spacing:.03em;line-height:1.5;flex-wrap:wrap;gap:10px 24px;border-top:1px solid #ffffff35}
.hero-bottom>span:nth-child(2){display:block;color:#d2dce5;font-size:13px;letter-spacing:0;flex:1;text-align:center}
.hero-bottom a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600}
.hero-lead{font-size:15px;line-height:1.8;color:#d7e0e8}
#mediaCount{font-size:14px;color:#52616e;line-height:1.6}
.gallery-filters button{font-size:14px;min-height:44px;padding:10px 17px}
.product-card-heading{flex-wrap:wrap;gap:7px 16px}.product-card-heading h3{font-size:20px;line-height:1.4}
.product-quote{font-size:13px;color:#52616e;margin-top:3px}
.product-facts{font-size:13px;color:#52616e;line-height:1.6;margin:12px 0 16px;flex-wrap:wrap}
.product-badge{font-size:12px;letter-spacing:.015em;padding:7px 11px;line-height:1.4}
.product-card-actions{font-size:15px;gap:16px;padding-top:10px;align-items:center}
.product-order,.product-inspect{font-size:15px;min-height:44px;line-height:1.4;max-width:none;gap:10px;color:#253d4d}
.product-inspect{padding:8px 0}.product-order svg{display:block;width:17px;height:17px}
.editorial-heading .underlined{font-size:14px;min-height:44px}.image-disclosure{font-size:12px;line-height:1.6}
.zoom-dialog{width:min(1080px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:16px;border:1px solid #d9dfdf;border-radius:12px;background:var(--paper,#f6f5f1);overflow:auto;box-sizing:border-box}
.zoom-dialog::backdrop{background:#07111fe6}
.zoom-dialog #closeZoom{display:flex;align-items:center;justify-content:center;gap:10px;min-width:112px;min-height:44px;margin:0 0 14px auto;padding:10px 16px;border:1px solid #c5ced2;border-radius:6px;background:#fff;color:#152131;font:600 15px/1.2 DM,Arial,sans-serif;position:sticky;top:0;z-index:1;box-shadow:0 2px 7px #0000000a;cursor:pointer;appearance:none;-webkit-appearance:none}
.zoom-dialog #closeZoom:hover{background:#edf1f2}.zoom-dialog #closeZoom:focus-visible{outline:3px solid #b98d00;outline-offset:3px}
.zoom-dialog #closeZoom .site-icon{width:18px;height:18px}
.zoom-dialog #zoomImage{display:block;max-width:100%;width:auto;height:auto;max-height:calc(100dvh - 125px);object-fit:contain;margin:auto}
@media(max-width:600px){
.hero-lead{font-size:14px;max-width:340px}.hero-editorial{padding-bottom:165px}.new-hero{min-height:790px;max-height:none}.hero-bottom{padding:12px 24px;gap:6px 16px;font-size:12px;min-height:110px}.hero-bottom>span:nth-child(2){order:3;flex-basis:100%;text-align:left;font-size:12px}.hero-bottom a{font-size:13px;margin-left:auto}
.gallery-filters{gap:8px}.gallery-filters button{font-size:13px;padding:10px 14px}#mediaCount{font-size:13px;margin-top:16px}
.product-card-heading h3{font-size:18px;min-height:0}.product-quote{font-size:13px;margin-top:7px}.product-facts{font-size:13px;margin:10px 0 12px}.product-facts span:last-child{display:inline}.product-badge{font-size:12px;padding:6px 9px}
.product-order,.product-inspect,.product-card-actions{font-size:14px}.product-order svg{display:block}.editorial-heading .underlined{font-size:13px}.image-disclosure{font-size:12px}
.zoom-dialog{padding:12px;max-height:calc(100dvh - 20px);width:calc(100vw - 20px);max-width:calc(100vw - 20px)}
}
@media(max-width:480px){.real-grid{grid-template-columns:1fr;gap:28px}.new-header{padding-inline:16px;gap:10px}.new-header .new-logo{width:128px}.new-header-actions{gap:8px}.new-header .nav-cta{font-size:11px;padding:10px;gap:10px;min-height:44px}.new-header #newMenu{width:44px;height:44px;flex-shrink:0}}
@media(max-width:359px){.new-header .nav-cta{display:none}.hero-editorial h1{font-size:48px}.hero-bottom{padding-inline:18px}}

@media(max-width:600px){.design-steps button{font-size:13px}.viewer-toolbar button,.free-views button{font-size:13px;min-height:44px}.scene-bottom>span{font-size:12px;line-height:1.5}}

/* Center the campaign caption independently of the scroll link. */
.hero-bottom:has(.hero-caption){display:grid;grid-template-columns:1fr minmax(0,auto) 1fr}
.hero-bottom>.hero-caption{grid-column:2;text-align:center;font-size:14px;letter-spacing:0;color:#d2dce5}
.hero-bottom:has(.hero-caption)>a{grid-column:3;justify-self:end}
@media(max-width:600px){.hero-bottom:has(.hero-caption){grid-template-columns:1fr;gap:4px}.hero-bottom>.hero-caption{grid-column:1;font-size:13px}.hero-bottom:has(.hero-caption)>a{grid-column:1;justify-self:center;margin-left:0}}

/* Mobile readability: retain hierarchy without miniature labels. */
@media(max-width:720px){
.announcement{height:auto;min-height:40px;padding:10px 18px;gap:8px;flex-wrap:wrap;font-size:12px;letter-spacing:.03em;line-height:1.5}
.announcement a{font-size:13px;min-height:32px;display:inline-flex;align-items:center}
.new-header .nav-cta{font-size:12px}
body .overline,body .eyebrow,.hero-editorial .overline,.editorial-heading .overline,.studio-banner-copy .overline,.brand-story>.overline{font-size:12px;letter-spacing:.1em;line-height:1.6}
.category-index,.campaign-copy>span,.business-image>span,.film-caption>span,.film-caption small,.image-disclosure,.footer-legal{font-size:12px;line-height:1.6}
.category-label p,.category-label>span,.visual-category .category-index,.campaign-link,.studio-stages,.business-text a,.more-partners summary,.store-actions,.editorial-heading .underlined{font-size:14px;line-height:1.6}
body .primary{font-size:14px;min-height:48px}
.catalog-intro p,.footer-brand>p,.footer-contact>p{font-size:15px;line-height:1.7}
.footer-grid nav a,.footer-contact>a,.footer-social a{font-size:14px;min-height:44px;display:flex;align-items:center;margin:4px 0}
.footer-legal{flex-wrap:wrap;gap:14px;color:#afbcc9}.footer-legal a{min-height:44px;display:inline-flex;align-items:center}
.blog-crumb,.breadcrumb,.detail-breadcrumb,.catalog-intro .eyebrow,.catalog-tools>span{font-size:13px;line-height:1.6}
.catalog-tools input,.catalog-tools select,input[type=search],.login-side input{font-size:16px}
.catalog-tools{flex-wrap:wrap}.catalog-tools input,.catalog-tools select{max-width:100%;flex:1 1 140px}
.product-facts{flex-wrap:wrap;line-height:1.6}.product-meta{flex-wrap:wrap;gap:6px}
.studio-stages{gap:14px}.business-text p,.brand-story p{font-size:16px;line-height:1.7}
.photo-badge,.design-steps button span{font-size:12px}.design-steps button{line-height:1.4}
.palette-heading small,.open-themes span,.scene-bottom span,.theme-help,.theme-cards small{font-size:13px}
#panel .heading{flex-wrap:wrap}#panel .heading .primary,#panel .button,#panel .row-actions .button{font-size:13px;min-height:44px}
#panel p.muted,#panel .card-head p,#panel .stat p{font-size:13px;line-height:1.6}
#panel small,#panel .eyebrow,#panel .badge,#panel th,#panel footer{font-size:12px}
#panel td,#panel .product-cell strong,#panel nav span{font-size:14px}
#panel input,#panel select,#panel textarea{font-size:16px}
}
@media(max-width:380px){.new-header .nav-cta{display:none}.announcement{justify-content:center;text-align:center}.announcement a{display:none}}

@media(max-width:720px){
.category-heading-new .overline,.error-page .overline,.control-panel .overline{font-size:12px!important}
.category-label p,.category-label>span,.category-disclosure{font-size:14px!important;line-height:1.6}
.brand-story .underlined{font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.catalog-intro>div p,.catalog-intro p:not(.eyebrow){font-size:15px!important;line-height:1.7}
.palette-heading small,.open-themes span,.scene-bottom span,.theme-help,.theme-cards small{font-size:13px!important}
}
@media(max-width:720px){[data-panel] .overline{font-size:12px!important}.paint-parts span{font-size:13px!important}}

@media(max-width:720px){
.detail-gallery-note,.detail-code,.detail-info .eyebrow,.detail-info .eyebrow span{font-size:13px!important;line-height:1.6}
.coming-badge{font-size:12px!important}.acc-button{font-size:14px!important;min-height:48px}
.coming-phone,.coming-phone a{font-size:15px!important;line-height:1.7}
body:has(.coming-badge) header a,body:has(.coming-badge) .rich-footer a{font-size:14px!important;min-height:44px}
body:has(.coming-badge) .rich-footer small{font-size:12px!important}
}
