/* Keep campaign subjects in frame and the storefront compact. */
.header { height: 86px; }
.logo { width: 96px; height: 76px; }
.logo img { width: 94px; height: 74px; }
.product-ribbon { height: 64px; }
.ribbon-group img { width: 34px; height: 44px; }
.hero { height: clamp(480px, 36vw, 620px); min-height: 0; max-height: none; }
.hero-image { object-position: center top; }
.hero-kicker { top: 22px; }
.hero-content { left: 6%; bottom: 15%; max-width: 520px; }
.hero-content h1 { font-size: clamp(58px, 5.3vw, 88px); max-width: 520px; }
.hero-content .eyebrow { margin-bottom: 17px; font-size: 9px; }
.hero-content > p:not(.eyebrow) { margin: 18px 0 22px; }
.hero-content > .button { min-height: 48px; min-width: 225px; }
.hero-bottom { bottom: 20px; }
.word-strip { height: 47px; }
.section { padding-top: 42px; padding-bottom: 42px; }
.hero ~ .section { max-width: 1440px; margin: 0 auto; padding-left: 4%; padding-right: 4%; }
.section-heading { margin-bottom: 23px; }
.section-heading h2 { font-size: 39px; }
.product-grid { row-gap: 25px; }
.signature { max-width: 1320px; margin: 0 auto; grid-template-columns: .9fr 1.1fr; min-height: 0; }
.signature-image { height: clamp(380px, 34vw, 490px); min-height: 0; aspect-ratio: auto; }
.signature-image img { object-position: center top; }
.signature-image > span { bottom: 19px; left: 24px; }
.signature-copy { padding: 32px 9%; }
.signature-copy > .eyebrow { margin-bottom: 20px; }
.signature-copy h2 { font-size: clamp(40px, 4vw, 60px); }
.signature-copy > p:not(.eyebrow) { margin: 20px 0; max-width: 350px; }
.editorial-footnote { margin-top: 24px; padding-top: 16px; }
.manifesto { padding: 43px 20px 46px; }
.manifesto h2 { font-size: clamp(34px, 3.5vw, 49px); margin: 19px 0 16px; }
.manifesto > p:not(.eyebrow) { margin-bottom: 16px; }
.journal { max-width: 1080px; margin: 0 auto; padding: 26px 40px; gap: 40px; grid-template-columns: minmax(0, 1fr) 320px; color: #5e2930; }
.journal > div { min-width: 0; }
.journal .eyebrow { color: #63313a; }
.journal h2 { color: #5e2930; font-size: clamp(46px, 4.5vw, 60px); margin: 15px 0 18px; }
.journal .text-link { color: #5e2930; }
.journal .text-link:hover { color: #35151b; }
.journal figure img { width: 100%; height: 280px; aspect-ratio: auto; object-fit: contain; }
.journal figcaption { color: #65554d; margin-top: 10px; }
.services { padding-top: 26px; padding-bottom: 26px; }
footer { padding-top: 36px; }
.footer-grid { padding-bottom: 30px; }
.footer-brand img { background: #f9f6f0; padding: 6px; }
@media (min-width: 1600px) {
    .hero ~ .section { padding-left: 40px; padding-right: 40px; }
}
@media (max-width: 1000px) and (min-width: 768px) {
    .signature-copy { padding: 28px 7%; }
    .signature-copy h2 { font-size: 42px; }
    .hero-content { max-width: 410px; }
    .hero-content h1 { font-size: 62px; max-width: 400px; }
    .journal { gap: 25px; }
}
@media (max-width: 767px) {
    .header { height: 70px; }
    .logo { width: 80px; height: 64px; }
    .logo img { width: 78px; height: 62px; }
    .product-ribbon { height: 60px; }
    .ribbon-group img { width: 29px; height: 38px; }
    .hero { height: clamp(510px, 142vw, 590px); min-height: 0; max-height: none; }
    .hero-image { object-position: center top; }
    .hero-kicker { top: 18px; }
    .hero-content { left: 6%; bottom: 11%; max-width: 88%; }
    .hero-content h1 { font-size: clamp(48px, 13.5vw, 66px); max-width: 360px; }
    .hero-content .eyebrow { font-size: 7px; margin-bottom: 15px; }
    .hero-content > p:not(.eyebrow) { margin: 15px 0 20px; font-size: 11px; }
    .hero-content > .button { min-height: 47px; min-width: 215px; }
    .hero-bottom { bottom: 17px; }
    .word-strip { height: 42px; }
    .section, .hero ~ .section { padding: 29px 5%; }
    .section-heading { margin-bottom: 19px; }
    .section-heading h2 { font-size: 30px; }
    .section-heading .eyebrow { margin-bottom: 7px; }
    .product-grid { row-gap: 22px; }
    .signature { grid-template-columns: 1fr; }
    .signature-image { height: clamp(300px, 85vw, 380px); min-height: 0; aspect-ratio: auto; }
    .signature-copy { padding: 27px 6%; }
    .signature-copy > .eyebrow { margin-bottom: 16px; }
    .signature-copy h2 { font-size: 42px; }
    .signature-copy > p:not(.eyebrow) { margin: 16px 0; max-width: 340px; }
    .editorial-footnote { margin-top: 19px; padding-top: 13px; }
    .manifesto { padding: 33px 6%; }
    .manifesto h2 { font-size: 31px; margin: 17px 0 15px; }
    .journal { padding: 24px 6%; grid-template-columns: .95fr 1.05fr; gap: 18px; }
    .journal h2 { font-size: clamp(35px, 10vw, 52px); margin: 15px 0 19px; }
    .journal .eyebrow { font-size: 7px; }
    .journal .text-link { font-size: 9px; gap: 8px; }
    .journal figure img { height: clamp(220px, 62vw, 290px); aspect-ratio: auto; object-fit: contain; }
    .journal figcaption { font-size: 6px; line-height: 1.6; }
    .services { padding: 24px 6%; gap: 19px; }
    footer { padding-top: 30px; }
    .footer-grid { gap: 25px; padding-bottom: 24px; }
}
.store-categories{display:flex;gap:28px;align-items:center;overflow-x:auto;padding:0 4%;height:43px;border-top:1px solid #e7dfd4;border-bottom:1px solid #e7dfd4;background:#f9f6f0;scrollbar-width:thin;white-space:nowrap}.store-categories a{font-size:11px;flex-shrink:0;padding:12px 0;border-bottom:1px solid transparent}.store-categories a.active,.store-categories a:hover{color:#740809;border-bottom-color:#740809}.subcategory-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.subcategory-tabs a{border:1px solid #d9cfc2;border-radius:2px;padding:9px 15px;font-size:12px}.subcategory-tabs a.active{background:#740809;color:#fff;border-color:#740809}.preserve-lines{white-space:pre-line;overflow-wrap:anywhere}.catalog-intro p{max-width:650px}.purchase details p{white-space:pre-line}@media(max-width:767px){.store-categories{height:40px;padding:0 18px;gap:23px;scrollbar-width:none}.store-categories a{font-size:11px}.subcategory-tabs{gap:7px}.subcategory-tabs a{padding:8px 10px;font-size:11px}}
.store-categories{overflow-y:hidden}.store-categories a{display:flex;align-items:center;height:100%;padding:0;line-height:1.4}.catalog .catalog-intro{padding:0 0 20px}.catalog .catalog-intro h1{margin:13px 0}.catalog .catalog-intro p{margin-left:auto;margin-right:auto}.catalog .category-tabs{margin-bottom:16px}.catalog.section{padding-top:32px}@media(max-width:767px){.catalog.section{padding-top:24px}.catalog .catalog-intro{padding-bottom:15px}.catalog .catalog-intro h1{margin:12px 0}}
button,a{font-variant-emoji:text}.company-details p{overflow-wrap:anywhere}.auth-card{width:min(100%,520px);margin:auto}.auth-card input{display:block;width:100%;box-sizing:border-box;padding:12px;margin:8px 0 18px}.cms-text-group textarea{width:100%}

.sales-status-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:13px 24px;background:#740809;color:#fff8ee;border-bottom:1px solid #ffffff30;font-family:Arial,sans-serif}.sales-status-banner svg{flex-shrink:0;width:19px;height:19px}.sales-status-banner p{margin:0;max-width:1100px;font-size:12px;line-height:1.65;letter-spacing:.025em}.button:disabled{cursor:not-allowed;opacity:.55}.purchase-bar .button:disabled:hover{transform:none}@media(max-width:767px){.sales-status-banner{align-items:flex-start;padding:12px 18px;gap:10px}.sales-status-banner p{font-size:11px;line-height:1.7;letter-spacing:0}.sales-status-banner svg{margin-top:2px}}
