/* Readable type scale + interaction polish */
body{font-size:16px;line-height:1.8}
.site-header nav a{font-size:16px;letter-spacing:.06em;padding-left:24px;padding-right:24px}
.section-heading h2,.story h2,.line-banner h2{font-size:clamp(52px,5.2vw,82px);line-height:1.12}
.eyebrow{font-size:13px;letter-spacing:.16em}
.hero h1{font-size:clamp(56px,7vw,108px)}
.hero-text{font-size:18px;line-height:1.9}
.hero-proof{font-size:13px}
.product-meta h3{font-size:17px;letter-spacing:.04em}
.product-meta p,.price{font-size:15px;line-height:1.7}
.filter{font-size:16px;padding:9px 24px}
.story-copy p{font-size:17px;line-height:2}
.process-grid h3{font-size:20px}
.process-grid p{font-size:16px;line-height:1.9}
.journal-card h3{font-size:25px}
.journal-card p{font-size:16px!important;line-height:1.9!important}
.footer a,.footer p{font-size:16px;line-height:1.8}
.footer h4{font-size:13px}
.text-link{font-size:16px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
.product-card{transition:transform .35s ease,box-shadow .35s ease}.product-card:hover{transform:translateY(-7px);box-shadow:0 18px 32px #25252512}
.ripple{position:absolute;border-radius:50%;background:#fff8;transform:scale(0);animation:ripple .55s linear;pointer-events:none}@keyframes ripple{to{transform:scale(4);opacity:0}}
.contact-strip{background:#eeeae3;border-top:1px solid var(--rule);padding:80px 7vw;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:50px}.contact-strip h2{font-size:clamp(42px,5vw,72px);font-weight:300;line-height:1.1;margin:0}.contact-strip h2 em{font-family:var(--serif);color:var(--accent);font-style:normal}.contact-strip h3{font-size:18px;font-weight:500;margin:0 0 14px}.contact-strip p,.contact-strip a{font-size:16px;color:#666;text-decoration:none;line-height:1.9;display:block}.contact-strip a:hover{color:var(--accent)}.contact-icon{font-family:var(--serif);font-size:32px;color:var(--accent);margin-bottom:10px}
@media(max-width:850px){.site-header nav a{font-size:14px;padding-left:14px;padding-right:14px}.section-heading h2,.story h2,.line-banner h2{font-size:52px}.contact-strip{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:520px){body{font-size:16px}.site-header nav a{font-size:13px}.hero h1{font-size:55px}.hero-text{font-size:16px}.section-heading h2,.story h2,.line-banner h2{font-size:45px}.product-meta h3{font-size:15px}.product-meta p,.price{font-size:13px}.contact-strip{display:block;padding:60px 6vw}.contact-strip>div{margin-bottom:35px}.journal-card h3{font-size:23px}}

