/* Mixed homepage shelves use the shared olive palette and serif headings. */
.concept-home{padding-bottom:65px!important}
.concept-intro{position:relative;isolation:isolate;overflow:clip;padding:44px 0 46px;max-width:none;min-height:365px}
.concept-intro::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-25px -24px -22px auto;width:48%;background:url('/art/assets/hero-botanical.svg') right center/contain no-repeat;mask-image:linear-gradient(to right,transparent,#000 20%)}
.concept-intro>h1{width:77%}
.concept-intro>.concept-description{width:67%}
@media(min-width:681px) and (max-width:1000px){.concept-intro{min-height:330px}.concept-intro::before{width:44%;right:-25px}.concept-intro>h1{width:75%}.concept-intro>.concept-description{width:70%}}
@media(max-width:680px){.concept-intro{padding-bottom:220px;min-height:0}.concept-intro>h1,.concept-intro>.concept-description{width:100%}.concept-intro::before{inset:auto -10px -8px auto;width:100%;height:230px;background-position:right bottom;mask-image:none}}
.concept-intro h1{font-family:var(--serif);font-size:clamp(36px,4.4vw,56px);font-weight:400;line-height:1.12;letter-spacing:-1.3px;margin:0 0 20px;max-width:880px}
.concept-description{font-size:18px;line-height:1.7;color:var(--body-ink);max-width:790px;margin:0}
.concept-intro .hero-links{margin:22px 0 0}




.concept-section{padding:36px 0 8px;min-width:0}
.concept-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:21px}
.concept-section h2{font-family:var(--serif);font-size:32px;font-weight:400;letter-spacing:-.5px;line-height:1.2;margin:0 0 9px}
.concept-link{color:var(--accent);font-size:14px;text-underline-offset:4px;line-height:1.5}
.concept-section-head>.concept-link{flex-shrink:0;margin-bottom:3px}
.concept-two,.concept-three{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.concept-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.concept-shelf{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3.35);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#bdc7ad transparent;padding:3px 3px 16px;margin:0 -3px}
.concept-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--faint);border-radius:8px;background:var(--paper);padding:22px;scroll-snap-align:start}
.concept-card--moment{background:var(--wash)}
.concept-kind{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--accent);margin:0 0 20px}
.concept-card h3{font-family:var(--serif);font-weight:400;font-size:25px;line-height:1.24;letter-spacing:-.35px;margin:0 0 15px;overflow-wrap:anywhere}
.concept-card h3 a{text-decoration:none}
.concept-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px}
.concept-card>p:not(.concept-kind){font-size:16px;line-height:1.65;color:var(--body-ink);margin:0 0 22px}
.concept-person{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.4;text-decoration:none;margin:0 0 18px}
.concept-person .person-avatar{flex-shrink:0}
.concept-card-foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--faint);display:flex;flex-direction:column;gap:9px}
.concept-card-foot>span{font-size:13px;color:var(--body-ink);line-height:1.5}
.concept-comparison p{font-size:16px;line-height:1.6;color:var(--body-ink);margin:0 0 20px}
.concept-comparison span{display:block;font-size:14px;margin-bottom:4px;color:var(--accent)}
.concept-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.concept-directory>a{border-top:1px solid var(--faint);padding-top:18px;text-decoration:none}
.concept-directory h3{font-family:var(--serif);font-size:24px;font-weight:400;margin:0 0 9px}
.concept-directory p{font-size:16px;line-height:1.6;color:var(--body-ink);margin:0}
.concept-directory a:hover h3{text-decoration:underline}
.concept-home a:focus-visible,.concept-home button:focus-visible,.concept-shelf:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:1000px){.concept-shelf{grid-auto-columns:calc((100% - 30px)/2.35)}.concept-three{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.concept-intro{padding-top:12px}.concept-intro h1{font-size:37px;letter-spacing:-.8px}.concept-description{font-size:17px}.concept-section{padding-top:28px}.concept-section-head{display:block}.concept-section-head>.concept-link{display:inline-block;margin-top:12px}.concept-section h2{font-size:28px}.concept-shelf{grid-auto-columns:86%}.concept-three,.concept-two{grid-template-columns:minmax(0,1fr)}.concept-directory{gap:24px 18px}.concept-directory h3{font-size:22px}.site-header .main-nav{gap:16px;overflow-x:auto;white-space:nowrap}.concept-intro br{display:none}}
.concept-shelf-actions{display:flex;flex-direction:column;align-items:end;gap:12px;flex-shrink:0}.concept-shelf-controls{display:flex;gap:7px}.concept-shelf-controls button{font:inherit;font-size:14px;background:var(--paper);border:1px solid var(--faint);border-radius:5px;padding:7px 11px;color:var(--ink)}.concept-shelf-controls button:disabled{opacity:.4}.concept-shelf-controls button:hover:not(:disabled){background:var(--wash)}@media(max-width:680px){.concept-shelf-actions{flex-direction:row;align-items:center;justify-content:space-between;margin-top:14px;gap:10px}.concept-shelf-controls button{padding:7px 9px}}
@media(max-width:680px){.site-header .main-nav{gap:12px}.site-header .main-nav a{font-size:13px}}

.concept-description a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:4px}.concept-description a:hover{color:var(--ink)}
