/* Catalog routes show only the shopping content, not the home campaign. */
body.catalog-page #store > :not(#collection){display:none!important}
body.catalog-page #collection{padding-top:36px;min-height:65vh}
body.catalog-page #collection .section-title{margin-bottom:24px}
body.catalog-page #collection .section-title h2{font-size:26px;margin-top:7px}
/* The image owns its grid height; no overflow into the next home section. */
.hero{height:auto;max-height:none;min-height:0;align-items:stretch}
.hero-photo{width:100%;aspect-ratio:3/4;align-self:start}
.hero-copy{min-width:0;padding:clamp(28px,4vw,65px);overflow-wrap:break-word}
.hero h1{font-size:clamp(42px,5.3vw,85px)}
.hero-bottom{margin-top:35px}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:46px;height:46px;border:1px solid #fff9;border-radius:50%;background:#fff9f0df;color:#604c40;font-size:25px;display:grid;place-items:center;box-shadow:0 3px 15px #40302618;line-height:1}
.hero-arrow:hover{background:#fffdf6}.hero-prev{left:16px}.hero-next{right:16px}
.hero-controls{left:50%;bottom:14px;transform:translateX(-50%);font-size:12px;padding:5px 12px;gap:14px;border-radius:24px;white-space:nowrap}
.photo-caption{display:none}.vertical{top:22px;left:18px;font-size:9px;letter-spacing:2px}
.journal-article{margin:30px 0 70px;min-width:0}
.journal-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(25px,5vw,70px);align-items:center}
.journal-feature .lesson-hero{position:static;max-width:560px}
.journal-feature .lesson-hero img{aspect-ratio:var(--cover-ratio,1);height:auto;max-height:700px}
.journal-feature-copy{min-width:0}.journal-feature-copy h1{font-size:clamp(27px,3vw,42px);font-weight:400;line-height:1.5;letter-spacing:1px;margin:22px 0}
.journal-feature-copy .lesson-byline{line-height:1.8;margin-bottom:24px!important}
.journal-lead{font-size:16px;line-height:2;margin:22px 0 28px;max-width:38em}
#article-practice{scroll-margin-top:130px}.editorial-expanded{margin:55px 0}
.practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.practice-card{display:grid;grid-template-columns:130px minmax(0,1fr);background:#f3e9df;border:1px solid #e3d3c4;min-width:0;overflow:hidden}
.practice-card:nth-child(2){background:#eeeade}.practice-card:nth-child(3){background:#efdfd9}.practice-card:nth-child(4){background:#eee7e0}
.note-illustration{position:relative;padding:12px;display:flex;align-items:center;justify-content:center;background:#fff5}
.note-illustration svg{width:100%;height:auto;fill:none;stroke-width:2}.note-illustration>span{position:absolute;top:18px;left:18px;font:10px Arial;letter-spacing:2px;color:#8d7462}
.practice-copy{padding:28px 25px;min-width:0}.practice-copy h3{font-size:21px;font-weight:500;line-height:1.6;margin:14px 0}
.practice-copy>p{font-size:15px;line-height:1.95;margin:0 0 22px}.practice-action{font-size:14px;line-height:1.85;padding-top:17px;border-top:1px solid #cdbbab}
.lesson-takeaway{margin-top:28px;background:#e6dbcb;padding:35px;display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}
.lesson-takeaway h2{font-size:25px;font-weight:400;line-height:1.7;margin-top:15px}.lesson-takeaway fieldset{border:0;padding:0;margin:0;min-width:0}.lesson-takeaway legend{font-size:14px;margin-bottom:15px}.lesson-takeaway label{display:flex;gap:10px;font-size:14px;line-height:1.8;margin:13px 0;cursor:pointer}.lesson-takeaway input{accent-color:#81634e;flex-shrink:0;width:18px;height:18px;margin-top:4px}
.source-reading{max-width:1050px;margin:65px auto 0}.source-reading>h2{font-weight:400;font-size:25px;margin:15px 0 25px}.source-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 40px}.source-summary-grid h3{font-size:17px;line-height:1.7;font-weight:500;margin-bottom:10px}.source-summary-grid p{line-height:1.9;font-size:14px}.source-reading details{border-top:1px solid var(--line);padding:20px 0;margin-top:20px}.source-reading summary{cursor:pointer}.source-reading .full-caption p{max-width:700px;line-height:2;margin:20px 0}.source-reading>.textlink{display:inline-block;margin-top:20px}.source-reading .article-source-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.practice-card{grid-template-columns:1fr}.note-illustration{height:130px}.note-illustration svg{height:110px;width:130px}.hero-copy{padding:28px}.hero h1{letter-spacing:-2px}.hero-bottom{margin-top:25px}}
@media(max-width:700px){.hero{display:flex;flex-direction:column;height:auto;max-height:none}.hero-photo{aspect-ratio:3/4;height:auto!important;min-height:0!important}.hero-copy{padding:35px 25px}.hero h1{font-size:48px;margin:20px 0}.hero-arrow{width:40px;height:40px;font-size:22px}.hero-prev{left:10px}.hero-next{right:10px}.hero-controls{bottom:12px}.vertical{left:10px;font-size:8px}body.catalog-page #collection{padding-top:25px}.catalog-page .section-title>p{display:none}.journal-feature,.practice-grid,.lesson-takeaway,.source-summary-grid{grid-template-columns:1fr}.journal-feature{gap:24px}.journal-feature .lesson-hero{max-width:none}.journal-feature-copy h1{font-size:28px;margin:16px 0}.journal-lead{font-size:15px}.editorial-expanded{margin-top:35px}.editorial-expanded .journal-heading{display:block}.editorial-expanded .journal-heading span{display:block;text-align:left;max-width:none;margin-top:12px}.practice-card{grid-template-columns:90px minmax(0,1fr)}.note-illustration{height:100%;padding:6px}.note-illustration svg{width:100%;height:auto}.note-illustration>span{font-size:8px;left:10px}.practice-copy{padding:24px 18px}.practice-copy h3{font-size:20px}.practice-copy>p{font-size:14px}.practice-action{font-size:13px}.lesson-takeaway{padding:25px;gap:22px}.lesson-takeaway h2{font-size:22px}.source-reading .article-source-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none!important}}

.gallery-main .shot.original-shot{aspect-ratio:1!important}.gallery-main .shot.original-shot img{aspect-ratio:1!important}

/* Selected color previews never silently fall back to an unrelated photo. */
.color-reference{margin:0;background:#eee6dc;min-width:0}.color-reference img{width:100%;height:auto;object-fit:contain}.color-reference figcaption{padding:16px 20px;background:#faf5ee;font-size:13px;line-height:1.8}.color-reference figcaption strong,.color-reference figcaption span{display:block}.color-reference figcaption span{margin-top:5px;color:#78695e}.set-color-reference{padding:18px;display:grid;gap:14px}.set-color-reference>p{font-size:13px;line-height:1.8}.color-preview-heading{font-weight:600}.color-pending{min-height:400px;padding:60px 30px;display:flex;flex-direction:column;justify-content:center;gap:20px;background:#ede3d6;text-align:center}.color-pending p{font-size:14px;line-height:1.9}.color-pending h3{font-size:28px;font-weight:400}.gallery-tabs .color-reference{height:135px;overflow:hidden}.gallery-tabs .color-reference img{height:100%;width:100%;object-fit:contain}.gallery-tabs .color-reference figcaption,.gallery-tabs .set-color-reference>p{display:none}.gallery-tabs .set-color-reference{padding:0;gap:0;height:135px;overflow:hidden;grid-template-columns:1fr 1fr}.gallery-tabs .color-pending{min-height:0;height:135px;padding:10px;gap:5px}.gallery-tabs .color-pending p{display:none}.gallery-tabs .color-pending h3{font-size:15px}.gallery-view-note{padding:12px 18px;background:#faf5ee;font-size:12px;color:#796452;line-height:1.8}
