/* Materials, finishing and the builder share the homepage's visual language. */
.editorial-page.customization-page .catalog-intro{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:0 6vw;padding-top:36px;padding-bottom:0;border-top:0}
.editorial-page .catalog-opening-copy{padding-block:35px}
.editorial-page .catalog-opening-copy h1{margin-bottom:22px}
.editorial-page .catalog-opening-copy>p:not(.eyebrow){max-width:410px;font-size:15px;color:var(--muted);margin:0}
.editorial-page .catalog-opening-photo{position:relative;height:365px;margin:0;overflow:hidden}
.editorial-page .catalog-opening-photo img{width:100%;height:100%;object-fit:cover;object-position:center 65%}
.editorial-page .catalog-opening-photo figcaption{position:absolute;bottom:16px;left:18px;padding:5px 9px;background:#ffffffde;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#171817}
.editorial-page.customization-page .catalog-intro .catalog-nav{grid-column:1/-1;margin-top:35px}
.editorial-page.customization-page .catalog-section{padding-block:54px}
.editorial-page.customization-page .section-heading .eyebrow{margin-bottom:15px}
.editorial-page.customization-page .section-heading>p{font-size:12px;max-width:245px}
.editorial-page.customization-page .material-grid{gap:30px 18px}
.editorial-page.customization-page .material-card img{height:auto;aspect-ratio:1.35;object-fit:cover}
.editorial-page.customization-page .material-card h3,.editorial-page.customization-page .decoration-card h3{font-size:13px;font-weight:600;margin:13px 0 5px}
.editorial-page.customization-page .material-card p,.editorial-page.customization-page .decoration-card p{font-size:11px;line-height:1.6}
.editorial-page.customization-page .decoration-grid{gap:28px 18px}
.editorial-page.customization-page .decoration-card img{height:auto;aspect-ratio:1.15;object-fit:contain;background:#f4f4ef;padding:17px;mix-blend-mode:normal}
.editorial-page.customization-page .customization-closures{gap:28px 18px}
.editorial-page.customization-page .customization-closure>span{background:#f4f3ee;aspect-ratio:1.5}
.editorial-page.customization-page .customization-closure strong{font-size:13px;font-weight:600;margin-top:13px}
.editorial-page.customization-page .customization-closure small{font-size:10px;margin-top:4px}
.editorial-page.customization-page .catalog-note{font-size:11px;line-height:1.7;margin-top:24px}
.editorial-page.customization-page .customization-detail-notes{margin-top:35px;gap:22px}
.editorial-page.customization-page .customization-detail-notes h3{font-size:19px;font-weight:600}
.editorial-page.customization-page .customization-detail-notes p{font-size:12px;line-height:1.7}
.editorial-page.customization-page .customization-detail-image{background:#f4f3ee;margin-bottom:18px}
.editorial-page.customization-page .customization-detail-image img{aspect-ratio:1.2}
.editorial-page.customization-page .customization-detail-image span{padding:8px 11px;font-size:10px;background:#fff}
.editorial-page.customization-page .catalog-cta{background:#20291f;color:#fff;padding-block:55px}
.editorial-page.customization-page .catalog-cta>.wrap{width:100%;max-width:1600px}
.editorial-page.customization-page .catalog-cta h2{margin-bottom:15px}
.editorial-page.customization-page .catalog-cta p:not(.eyebrow){font-size:14px;color:#e1e4dd;margin-bottom:24px}
.editorial-page.customization-page .catalog-cta .button{background:#fff;border-color:#fff;color:#171817}
.editorial-page.customization-page .catalog-cta .text-link{color:#fff}
.editorial-page .retail-finishing-page .retail-finishing-hero{max-width:none;padding:0;gap:0;grid-template-columns:1fr 1.12fr;background:#efefe9;margin-top:28px;align-items:stretch}
.editorial-page .retail-finishing-hero-copy{padding:60px 6vw;align-self:center}
.editorial-page .retail-finishing-hero h1{font-size:clamp(46px,4.7vw,68px);margin-bottom:23px}
.editorial-page .retail-finishing-hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.7;margin-bottom:27px}
.editorial-page .retail-finishing-hero figure{position:relative;height:520px}
.editorial-page .retail-finishing-hero figure img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.editorial-page .retail-finishing-hero figcaption{position:absolute;bottom:17px;left:20px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;background:#ffffffdd;padding:5px 9px;color:#171817}
.editorial-page .retail-trim-library{padding-block:54px;border-top:0}
.editorial-page .retail-trim-intro{margin-bottom:30px}
.editorial-page .retail-trim-grid{gap:35px 22px}
.editorial-page .retail-trim-image{aspect-ratio:1.28;background:#f2f2ed}
.editorial-page .retail-trim-heading h3{font-size:17px;font-weight:600}
.editorial-page .retail-trim-card>p{font-size:11px}
.editorial-page .retail-trim-card figcaption{font-size:9px}
.editorial-page .retail-trim-included{background:#222a21;padding:30px}
.editorial-page .retail-trim-included h2{font-size:37px;font-weight:700}
.editorial-page .retail-trim-included>p:not(.eyebrow){font-size:13px}
.editorial-page .retail-finishing-next{padding-block:45px 55px}
.editorial-page .retail-finishing-next h2{font-size:34px}
.editorial-page .retail-finishing-next p:not(.eyebrow){font-size:14px}

/* A small finished-product reference introduces the builder, without adding steps. */
.editorial-page .project-page .project-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:45px;align-items:center;padding-block:38px 20px;border-top:0}
.editorial-page .builder-opening-copy .eyebrow{margin-bottom:17px}
.editorial-page .project-page .project-intro h1{font-size:clamp(40px,4.5vw,64px);font-weight:700;margin-bottom:18px}
.editorial-page .project-page #project-page-description{font-size:14px;line-height:1.75;max-width:665px;color:var(--muted);margin-bottom:16px}
.editorial-page .project-talk-shortcut{font-size:12px;margin-top:12px}
.editorial-page .builder-opening-copy .preview-note{font-size:10px;padding-block:11px;margin-top:21px;color:var(--muted)}
.editorial-page .builder-opening-photo{margin:0;min-width:0}
.editorial-page .builder-opening-photo img{height:285px;width:100%;object-fit:contain}
.editorial-page .builder-opening-photo figcaption{text-transform:uppercase;letter-spacing:.07em;font-size:8px;color:var(--muted);text-align:center;margin-top:6px}
.editorial-page .project-page .project-paths{padding-top:15px}
.editorial-page .project-page .path-choice{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.025em;padding:18px 22px}
.editorial-page .project-page .path-choice span{text-transform:none;font-size:11px;font-weight:400;letter-spacing:0;margin-top:5px}
.editorial-page .project-page .project-shell{padding-top:36px}
.editorial-page .project-page .intake-section-heading h2{font-size:24px;font-weight:700;letter-spacing:-.025em}
.editorial-page .project-page .intake-section-heading{margin-bottom:22px}
.editorial-page .project-page .intake-section-number{font-size:10px;color:#7c8276}
.editorial-page .project-page .field input,.editorial-page .project-page .field textarea,.editorial-page .project-page .field select{background:#fff;border-color:#c2c6bc}
.editorial-page #styles-list .visual-style .style-row{background:#f1f2ec}
.editorial-page #styles-list .style-row-title strong{font-weight:600}
.editorial-page #styles-list .builder-reference{background:#f3f4ee}
.editorial-page #styles-list .builder-shape{background:#fff;border-color:#dedfd9}
.editorial-page #styles-list .builder-shape[aria-pressed=true]{border-color:#171817}
.editorial-page #styles-list .visual-shape-picker>summary{font-size:16px;font-weight:600}
.editorial-page #styles-list .visual-spec>summary{font-size:14px;font-weight:600}
.editorial-page #styles-list .builder-reference-caption>strong{font-size:19px;font-weight:600}
.editorial-page #styles-list .artwork-upload{background:#f4f5ef;border-color:#aeb5a5}
.editorial-page .project-page .design-contact-shortcut{background:#f3f4ee;border:0}
.editorial-page .project-page .design-contact-shortcut h2{font-size:24px}
.editorial-page .project-page .intake-package-summary{background:#f3f4ee;border:0}
.editorial-page .project-page .intake-package-summary h3{font-size:20px;font-weight:600}
.editorial-page .project-page .brief-review{background:#f4f5ef}
.editorial-page .project-page .brief-review h2{font-size:30px}
@media(max-width:900px){
 .editorial-page.customization-page .catalog-intro{gap:0 32px}.editorial-page .catalog-opening-photo{height:320px}
 .editorial-page .retail-finishing-hero-copy{padding:45px 35px}.editorial-page .retail-finishing-hero figure{height:450px}
 .editorial-page .project-page .project-intro{gap:25px;grid-template-columns:1.5fr .5fr}.editorial-page .builder-opening-photo img{height:240px}
}
@media(max-width:700px){
 .editorial-page .project-page .project-intro{display:block;padding-top:32px}.editorial-page .builder-opening-photo{display:none}
 .editorial-page .project-page .project-intro h1{font-size:40px}.editorial-page .project-page .project-shell{padding-top:28px}
 .editorial-page .project-page .intake-section-heading h2{font-size:23px}.editorial-page .project-page .path-choice{padding:16px;font-size:12px}
 .editorial-page .project-page #project-page-description{font-size:13px}
 .editorial-page .retail-finishing-page .retail-finishing-hero{grid-template-columns:1fr 1fr}.editorial-page .retail-finishing-hero-copy{padding:35px 24px}.editorial-page .retail-finishing-hero h1{font-size:42px}
}
@media(max-width:580px){
 .editorial-page.customization-page .catalog-intro{display:flex;flex-direction:column;align-items:stretch;padding-top:12px}.editorial-page .catalog-opening-copy{padding:25px 0 28px}.editorial-page .catalog-opening-copy h1{font-size:43px}.editorial-page .catalog-opening-copy>p:not(.eyebrow){font-size:13px}.editorial-page .catalog-opening-photo{height:260px}.editorial-page.customization-page .catalog-intro .catalog-nav{margin-top:25px}
 .editorial-page.customization-page .catalog-section{padding-block:38px}.editorial-page.customization-page .section-heading>p{font-size:12px;margin-top:15px;max-width:none}.editorial-page.customization-page .material-grid,.editorial-page.customization-page .decoration-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.editorial-page.customization-page .material-card img{aspect-ratio:1.15}.editorial-page.customization-page .material-card h3,.editorial-page.customization-page .decoration-card h3{font-size:12px}.editorial-page.customization-page .decoration-card img{aspect-ratio:1.1;padding:10px}.editorial-page.customization-page .customization-closures{gap:22px 14px}.editorial-page.customization-page .customization-closure>span{aspect-ratio:1.2}.editorial-page.customization-page .customization-detail-notes{gap:27px}.editorial-page.customization-page .customization-detail-image img{aspect-ratio:1.45}.editorial-page.customization-page .catalog-cta{padding-block:40px}
 .editorial-page .retail-finishing-page .retail-finishing-hero{display:flex;flex-direction:column-reverse;margin-top:18px}.editorial-page .retail-finishing-hero figure{height:320px;width:100%}.editorial-page .retail-finishing-hero-copy{padding:34px 24px 39px;width:100%}.editorial-page .retail-finishing-hero h1{font-size:43px}.editorial-page .retail-finishing-hero-copy>p:not(.eyebrow){font-size:14px}.editorial-page .retail-trim-library{padding-block:38px}.editorial-page .retail-trim-grid{gap:28px 15px}.editorial-page .retail-trim-heading h3{font-size:15px}.editorial-page .retail-trim-included h2{font-size:34px}.editorial-page .retail-trim-included{padding:27px}.editorial-page .retail-finishing-next{padding-block:35px 43px}.editorial-page .retail-finishing-next h2{font-size:30px}
}

/* A single focused interior and trim-label feature. */
.editorial-page.customization-page .customization-interior-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;gap:0;margin-top:48px;padding:0;border:0;background:#30382c;color:#f7f5ec}
.editorial-page.customization-page .customization-interior-feature .customization-detail-image{margin:0;min-width:0;min-height:420px;background:#30382c}
.editorial-page.customization-page .customization-interior-feature .customization-detail-image img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.editorial-page.customization-page .customization-interior-feature .customization-detail-image span{position:absolute;bottom:18px;left:18px;background:#f7f5ec;color:#20251e;border:0;padding:8px 11px}
.customization-interior-copy{align-self:center;padding:clamp(28px,4vw,58px);min-width:0}.customization-interior-copy .eyebrow{font-size:10px;margin-bottom:22px;color:#d4dbce}.customization-interior-copy h3{font-size:clamp(25px,2.8vw,38px);line-height:1.08;margin-bottom:20px;color:#f7f5ec}.customization-interior-description{font-size:14px;line-height:1.75;color:#e0e5d9;max-width:470px}
.customization-interior-contact{margin-top:28px}.customization-interior-contact>p{font-size:14px;margin:0 0 12px}.customization-interior-contact .button{max-width:100%;gap:20px;text-align:center}
.editorial-page .customization-interior-contact .button-light{background:#f7f5ec;border-color:#f7f5ec;color:#20251e}.editorial-page .customization-interior-contact .button-light:hover{background:#e1e6d9;border-color:#e1e6d9}.customization-interior-contact .button:focus-visible{outline:2px solid #f7f5ec;outline-offset:4px}
@media(max-width:640px){.editorial-page.customization-page .customization-interior-feature{grid-template-columns:1fr;gap:0;margin-top:36px}.editorial-page.customization-page .customization-interior-feature .customization-detail-image{min-height:0;aspect-ratio:1.35}.customization-interior-copy{padding:32px 24px 36px}}

.editorial-page.customization-page .customization-closure>span{background:#f4f4ef}.editorial-page.customization-page .customization-closure img{mix-blend-mode:normal}
.detail-product-image.closure-detail-image{background:#f4f4ef;mix-blend-mode:normal}
.editorial-page.customization-page .decoration-card .catalog-image{background:#f4f4ef}
.catalog-options-help{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:28px;padding:30px 32px;background:#efefe9}.catalog-options-help>div{max-width:680px;min-width:0}.catalog-options-help h3{font-size:clamp(21px,2vw,26px);line-height:1.2;margin:0 0 12px;letter-spacing:-.025em}.catalog-options-help p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:620px}.catalog-options-help .button{flex-shrink:0;gap:20px;max-width:100%;text-align:center}
@media(max-width:800px){.catalog-options-help{flex-direction:column;align-items:flex-start;padding:26px 24px;gap:22px}}

/* Photographic closure details use the full tile, matching the material library. */
.editorial-page.customization-page .customization-closure img{object-fit:cover;object-position:50% 55%}

/* Patterns sit alongside the fabric library, rather than adding a fabric type. */
.catalog-camo-feature{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:stretch;margin-top:34px;background:#f0f0e9}
.catalog-camo-swatch{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;margin:0;padding:18px 24px 16px;background:#e9e6e2}
.catalog-camo-swatch img{display:block;width:100%;height:clamp(240px,22vw,330px);object-fit:contain;object-position:center;transform:none}
.catalog-camo-swatch figcaption{font-size:10px;line-height:1.5;color:#595d53;text-align:center;margin-top:11px}
.catalog-camo-copy{align-self:center;padding:clamp(28px,4vw,60px);min-width:0}
.catalog-camo-copy .eyebrow{font-size:10px;letter-spacing:.1em;margin:0 0 18px}
.catalog-camo-copy h3{font-size:clamp(25px,2.7vw,38px);line-height:1.1;letter-spacing:-.03em;margin:0 0 20px;max-width:470px}
.catalog-camo-copy>p:not(.eyebrow){font-size:14px;line-height:1.75;color:var(--muted);max-width:480px;margin:0}
.catalog-camo-copy>.text-link{display:inline-flex;gap:28px;margin-top:23px}
@media(max-width:640px){
 .catalog-camo-feature{grid-template-columns:1fr;margin-top:28px}
 .catalog-camo-swatch{padding:20px}
 .catalog-camo-swatch img{height:280px}
 .catalog-camo-copy{padding:28px 24px 32px}
 .catalog-camo-copy h3{font-size:29px}
}

/* Studio decoration photos already include room around each complete hat. */
.editorial-page.customization-page .decoration-card .catalog-image{aspect-ratio:3/2;background:#e9e6de}
.editorial-page.customization-page .decoration-card .catalog-image img{width:100%;height:100%;max-width:none;aspect-ratio:3/2;object-fit:cover;object-position:center;padding:0;transform:none;background:#e9e6de;mix-blend-mode:normal}
.editorial-page .decoration-choices .visual-choice-image{aspect-ratio:3/2;background:#e9e6de}
.editorial-page .decoration-choices .visual-choice-image img{width:100%;height:100%;object-fit:cover;object-position:center;padding:0;transform:none;background:#e9e6de;mix-blend-mode:normal}
.detail-layout>img.decoration-detail-image{width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;padding:0;background:#e9e6de;mix-blend-mode:normal}
.detail-layout .detail-example{font-size:12px;margin-top:18px}

/* Verified closure photos stay photographic; the double-row option is an identified drawing. */
.editorial-page.customization-page .customization-closure.closure-technical-reference>span{background:#f4f4ef}
.editorial-page.customization-page .customization-closure.closure-technical-reference img{object-fit:contain;object-position:center;padding:12px;mix-blend-mode:normal}
.editorial-page .closure-reference-label{font-weight:500;color:#656a60}
.editorial-page .closure-choices .visual-choice-image{aspect-ratio:3/2;background:#f4f4ef}
.editorial-page .closure-choices .visual-choice-image img{object-fit:cover;object-position:50% 55%;padding:0;mix-blend-mode:normal}
.editorial-page .closure-choices .closure-technical-reference .visual-choice-image img{object-fit:contain;object-position:center;padding:9px}
.editorial-page .closure-choices .visual-choice-label .closure-reference-label{display:block;margin-top:4px;font-size:9px;line-height:1.4}
.editorial-page .closure-reference-note{font-size:11px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.detail-layout:has(img[src*="closure-double-snapback-neutral.webp"]) .eyebrow::after{content:" / Technical reference"}
.detail-layout img[src*="closure-double-snapback-neutral.webp"]{object-fit:contain;background:#f4f4ef;padding:12px}
