.joll-hero{position:relative;min-height:clamp(560px,52vw,740px);overflow:hidden;background:#F8F5EF}
.joll-hero__media{position:absolute;inset:0}.joll-hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%}
.joll-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.83),rgba(255,255,255,.56) 30%,transparent 66%);pointer-events:none}
.joll-hero__inner{position:relative;z-index:1;display:flex;align-items:center;min-height:inherit;max-width:var(--page-width);margin-inline:auto;padding:70px var(--page-margin,24px)}
.joll-hero__content{max-width:600px}.joll-hero__eyebrow,.joll-collections__eyebrow{display:block;color:#8A6D43;font-size:12px;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.joll-hero h1{max-width:12ch;margin:22px 0 0;color:#193D30;font-family:Georgia,'Times New Roman',serif;font-size:clamp(48px,6.3vw,94px);font-weight:400;line-height:1.03;letter-spacing:-.055em}
.joll-hero p{max-width:440px;margin:24px 0 32px;color:#4B5D54;font-size:clamp(17px,1.5vw,20px);line-height:1.55}
.joll-hero__button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:52px;padding:14px 20px;background:#9D3944;color:#fff;text-decoration:none;font-size:14px;font-weight:650}.joll-hero__button:hover{background:#7D2733;color:#fff}
.joll-collections{max-width:var(--page-width);margin-inline:auto;padding:clamp(68px,7vw,102px) var(--page-margin,24px);background:#fff}.joll-collections__header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.joll-collections__eyebrow{margin-bottom:14px}.joll-collections h2{margin:0;color:#193D30;font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,3.8vw,56px);font-weight:400;letter-spacing:-.045em;line-height:1.1}.joll-collections__header>a{color:#9D3944;font-size:14px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
.joll-collections__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.joll-collections__card{display:flex;min-height:190px;flex-direction:column;justify-content:space-between;padding:22px;border:1px solid #E9E2D8;background:#FBF8F3;color:#193D30;text-decoration:none;transition:background .18s ease,border-color .18s ease}.joll-collections__card:hover{background:#F5EEE5;border-color:#D8C7AD;color:#193D30}.joll-collections__number{color:#A77A3E;font-size:12px;font-weight:700}.joll-collections__title{font-size:clamp(20px,2vw,30px);line-height:1.15;letter-spacing:-.035em}.joll-collections__arrow{align-self:flex-end;font-size:23px;color:#A77A3E}.joll-collections__card--all{grid-column:span 2}
@media(max-width:749px){.joll-hero{min-height:610px}.joll-hero__media img{object-position:63% center}.joll-hero::after{background:linear-gradient(90deg,rgba(255,255,255,.9),rgba(255,255,255,.57) 72%,rgba(255,255,255,.25))}.joll-hero__inner{align-items:center;padding:65px 20px}.joll-hero__content{max-width:360px}.joll-hero h1{font-size:clamp(43px,10vw,62px)}.joll-collections{padding:62px 20px}.joll-collections__header{align-items:start;flex-direction:column}.joll-collections__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.joll-collections__card{min-height:155px;padding:17px}.joll-collections__card--all{grid-column:span 2}}
@media(prefers-reduced-motion:reduce){.joll-collections__card{transition:none}}
.joll-hero__button:focus-visible,.joll-collections a:focus-visible{outline:3px solid #9D3944;outline-offset:3px}
[data-testid="product-list"] .section-resource-list__header h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}

:root{--joll-green:#193D30;--joll-red:#9D3944;--joll-gold:#8A6D43;--joll-border:#E4E7E1}
.joll-kicker{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;line-height:1.6;color:var(--joll-gold)}
.joll-service{max-width:1440px;margin:auto;padding:27px 40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--joll-border);gap:24px}
.joll-service__item{display:flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;color:var(--joll-green)}
.joll-service__item strong{display:block;font-size:14px;font-weight:600}.joll-service__item span span{display:block;margin-top:5px;font-size:12px;color:#4B5D54}.joll-service__star{font-size:36px;color:var(--joll-gold)}
.joll-collections__header p{margin:16px 0 0;color:#4B5D54;font-size:16px;line-height:1.6}
.joll-category{display:block;color:var(--joll-green);text-decoration:none;min-width:0}
.joll-category__image{aspect-ratio:4/5;overflow:hidden;background:#F8F7F4}
.joll-category__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.joll-category:hover img{transform:scale(1.025)}
.joll-category__caption{display:flex;align-items:start;justify-content:space-between;gap:10px;padding:20px 0 0}
.joll-category__caption h3{font-family:var(--font-heading--family);font-weight:400;font-size:clamp(21px,2vw,28px);line-height:1.2;margin:0}
.joll-category__caption>span{font-size:23px;color:var(--joll-red)}
.joll-story{max-width:1360px;margin:24px auto 64px;display:grid;grid-template-columns:1fr 1fr;background:#F8F5EF}
.joll-story__image{min-width:0;aspect-ratio:1.12;overflow:hidden;background:#F3F0EA}
.joll-story__image img{height:100%;width:100%;object-fit:cover}
.joll-story__copy{display:flex;flex-direction:column;justify-content:center;align-items:start;padding:clamp(30px,5vw,80px)}
.joll-story h2,.joll-faq h2{font-family:var(--font-heading--family);font-weight:400;font-size:clamp(34px,3.6vw,52px);line-height:1.12;letter-spacing:-.035em;margin:20px 0;color:var(--joll-green)}
.joll-story p,.joll-faq__intro p{font-size:16px;line-height:1.75;color:#4B5D54;margin:0 0 28px}
.joll-faq{max-width:1360px;margin:auto;padding:48px 40px 96px;display:grid;grid-template-columns:.85fr 1.3fr;gap:80px}
.joll-faq__intro>a{display:inline-flex;align-items:center;gap:20px;min-height:44px;color:var(--joll-red);text-underline-offset:5px}
.joll-faq__item{border-bottom:1px solid var(--joll-border)}
.joll-faq__item:first-child{border-top:1px solid var(--joll-border)}
.joll-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;cursor:pointer;padding:22px 0;min-height:64px;font-size:15px;font-weight:600;line-height:1.5;color:var(--joll-green)}
.joll-faq summary::-webkit-details-marker{display:none}.joll-faq summary>span{font-size:24px;font-weight:400;color:var(--joll-red)}.joll-faq details[open] summary>span{transform:rotate(45deg)}
.joll-faq__answer{padding:0 28px 20px 0;font-size:14px;color:#4B5D54;line-height:1.8}.joll-faq__answer p{margin:0}.joll-faq__answer a{color:var(--joll-red);text-decoration:underline;text-underline-offset:3px}
.joll-category:focus-visible,.joll-service a:focus-visible,.joll-faq summary:focus-visible,.joll-faq a:focus-visible{outline:2px solid var(--joll-red);outline-offset:5px}
footer{border-top:1px solid var(--joll-border)}footer .footer-content{content-visibility:visible;contain:none}footer h3{font-family:var(--font-heading--family);font-size:23px;font-weight:400;line-height:1.3;margin:0 0 18px}footer .footer-content p{font-size:13px;line-height:1.85}footer .footer-content a{overflow-wrap:anywhere}footer .footer-content input{min-height:48px}
@media(min-width:990px){footer .footer-content{grid-template-columns:.8fr 1.2fr 1fr}}
@media(max-width:749px){.joll-service{padding:24px 20px;grid-template-columns:1fr;gap:18px}.joll-service__item{justify-content:start}.joll-service__star{font-size:28px}.joll-service__item strong{font-size:13px}.joll-service__item span span{font-size:12px}.joll-collections{padding:52px 20px}.joll-category__caption{padding-top:14px}.joll-category__caption h3{font-size:21px}.joll-category__image{aspect-ratio:1}.joll-story{grid-template-columns:1fr;margin:0 20px 32px}.joll-story__image{aspect-ratio:1.2}.joll-story__copy{padding:32px 24px 40px}.joll-story h2,.joll-faq h2{font-size:36px}.joll-faq{padding:30px 20px 56px;grid-template-columns:1fr;gap:28px}.joll-faq__intro p{margin-bottom:12px}.joll-faq summary{font-size:14px;padding:19px 0}.joll-faq__answer{padding-right:8px}footer .footer-content{gap:32px}footer h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.joll-category__image img{transition:none}}

