.is-home #mainContent { color: #252525; background: #fff; }
.is-home #mainContent * { letter-spacing: 0; }
.hb-hero { position: relative; height: min(650px, calc(100svh - 174px)); min-height: 500px; background: #c3d4d2; }
.hb-hero > img { position: absolute; width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.hb-story-slide > picture { position: absolute; inset: 0; }
.hb-story-slide > picture img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.hb-hero .site-shell { position: relative; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding-left: 46%; }
.hb-label { color: #497364; font-size: 12px; margin: 0 0 24px; }
.hb-carousel { position: relative; display: grid; overflow: hidden; }
.hb-carousel > .hb-hero { grid-area: 1 / 1; width: 100%; transition: opacity .65s ease; }
.hb-carousel > .hb-hero:not(:first-child) { opacity: 0; visibility: hidden; }
.hb-carousel.is-ready > .hb-hero { opacity: 0; visibility: hidden; pointer-events: none; }
.hb-carousel.is-ready > .hb-hero.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.hb-carousel .hb-oil { background: #f1f6f3; }
.hb-carousel .hb-oil > img { width: 48%; height: 94%; left: 1%; top: 3%; object-fit: contain; object-position: center; mix-blend-mode: multiply; }
.hb-carousel .hb-oil .site-shell { padding-left: 51%; }
.hb-carousel .hb-oil .hb-label { margin-bottom: 26px; color: #486454; font-size: 14px; }
.hb-carousel .hb-oil h1 { font-size: 64px; line-height: 1.22; font-weight: 600; color: #204e3b; margin-bottom: 24px; }
.hb-carousel .hb-oil h1 span { display: block; }
.hb-carousel .hb-oil h2 { font-size: 24px; margin-bottom: 12px; color: #344f40; }
.hb-carousel .hb-oil .hb-oil-detail { font-size: 13px; }
.hb-oil-detail span { display: inline-block; margin-left: 12px; padding-left: 12px; border-left: 1px solid #9caa9e; }
.hb-carousel .hb-oil .hb-link { padding: 12px 24px; background: #204e3b; color: white; border: 0; margin-top: 28px; }
.hb-hero .hb-brand-title { font-size: 42px; font-weight: 500; }
.hb-carousel-controls { position: absolute; bottom: 20px; right: 7%; display: flex; align-items: center; gap: 14px; z-index: 2; color: #234b3d; }
.hb-carousel-controls button { width: 40px; height: 40px; padding: 0; border: 1px solid #81988b; border-radius: 50%; background: #ffffffd9; color: inherit; font-size: 20px; cursor: pointer; }
.hb-carousel-controls button:hover { background: #dfece4; }
.hb-carousel-controls button:focus-visible { outline: 2px solid #174f3d; outline-offset: 3px; }
.hb-carousel-count { font-size: 12px; font-variant-numeric: tabular-nums; min-width: 45px; }
@media (prefers-reduced-motion: reduce) { .hb-carousel > .hb-hero { transition: none; } }
.hb-hero h1 { font-size: 42px; font-weight: 500; line-height: 1.4; margin: 0 0 24px; }
.hb-hero h2 { font-size: 28px; font-weight: 400; line-height: 1.6; margin: 0 0 22px; }
.hb-hero p:not(.hb-label) { font-size: 15px; line-height: 2; color: #40594e; }
.hb-link { display: inline-flex; gap: 32px; padding: 10px 0; border-bottom: 1px solid #82998c; margin-top: 18px; font-size: 14px; }
.hb-values { display: flex; justify-content: center; gap: 90px; padding: 26px 20px; background: #eaf2ee; color: #40594e; font-size: 14px; }
.hb-new { display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.hb-new > img { width: 100%; max-height: 660px; object-fit: contain; }
.hb-new-copy { padding: 65px 12%; }
.hb-new h2, .hb-series h2 { font-size: 34px; line-height: 1.5; font-weight: 500; margin: 0 0 26px; }
.hb-new-copy > p:not(.hb-label) { color: #64696a; line-height: 2; font-size: 16px; }
.hb-new-notes { display: flex; gap: 26px; border-top: 1px solid #d5ded9; padding-top: 22px; margin-top: 26px; color: #497364; font-size: 13px; }
.hb-series { padding: 85px 0; background: #f5f7f7; }
.hb-series-links { display: grid; grid-template-columns: repeat(5, 1fr); margin-top: 40px; border-top: 1px solid #ccd9d1; }
.hb-series-links a { padding: 28px 20px 24px 0; border-bottom: 1px solid #ccd9d1; }
.hb-series-links small { display: block; color: #82998c; margin-bottom: 18px; }
.hb-series-links strong { font-size: 17px; font-weight: 500; }
.hb-series-links a:hover { color: #176b49; background: #eaf2ee; }
.is-home .featured-section { padding: 90px 0; }
.is-home .section-heading h2, .is-home .journal-copy h2 { font-family: inherit; font-weight: 500; font-size: 34px; }
.is-home .product-card:nth-child(even) { margin-top: 0; }
.is-home .product-image { border-radius: 0 !important; background: #f6f8f7; }
.is-home .product-order { color: #497364; background: none; }
.is-home .product-view { border-radius: 3px; }
.is-home .product-meta h3 { line-height: 1.8; font-weight: 400; }
.hb-story { background: #eaf1ee; display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.hb-story-visual { position: relative; min-width: 0; }
.hb-story-visual > img { display: block; width: 100%; height: auto; }
.hb-texture-labels { position: absolute; inset: 0; color: #174f3d; pointer-events: none; }
.hb-texture-note { position: absolute; top: 61.5%; width: 20%; text-align: center; transform: translateX(-50%); line-height: 1.35; }
.hb-texture-note strong, .hb-texture-note small { display: block; letter-spacing: 0; }
.hb-texture-note strong { font-size: 11px; font-weight: 600; }
.hb-texture-note small { margin-top: 3px; font-size: 10px; color: #526c63; }
.hb-texture-note.note-one { left: 10.2%; }
.hb-texture-note.note-two { left: 24.2%; }
.hb-texture-note.note-three { left: 38.2%; }
.hb-texture-note.note-four { left: 52.4%; }
.hb-story-copy { padding: 65px 12%; }
.hb-story-copy h2 { font-size: 34px; line-height: 1.55; font-weight: 500; margin: 0 0 26px; }
.hb-story-copy > p:not(.hb-label) { font-size: 16px; line-height: 2; color: #64696a; }
.is-home .journal-section { padding: 90px 0; background: #fff; }
.is-home .journal-card-media { border-radius: 0; }
.is-home .cta-section { background: #f0f3f5; padding: 75px 0; }
.is-home .cta-section h2 { font-family: inherit; font-size: 34px; font-weight: 500; }
@media (min-width: 641px) {
  .hb-carousel .hb-oil > img { left: max(0px, calc(50% - 640px)); width: min(calc(50% - 40px), 600px); object-position: right center; }
  .hb-carousel .hb-hero .site-shell { padding-left: 0; }
  .hb-carousel .hb-oil .hb-label, .hb-carousel .hb-oil h1, .hb-carousel .hb-oil .hb-hero-details,
  .hb-carousel .hb-story-slide .site-shell > * { width: 50%; margin-left: 50%; }
  .hb-carousel-controls { right: max(40px, calc((100% - 1280px) / 2)); }
}
@media (max-width: 1000px) {
  .hb-carousel .hb-oil h1 { font-size: 48px; }
  .hb-hero h1 { font-size: 32px; }
  .hb-new-copy, .hb-story-copy { padding: 40px 30px; }
  .hb-series-links { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 640px) {
  .is-home .brand-logo-left { flex: 0 0 146px; margin-right: auto; }
  .is-home .header-actions { margin-right: 6px; }
  .is-home .header-icon, .is-home .mobile-menu-toggle { width: 40px; height: 44px; }
  .is-home .mobile-menu-toggle { align-items: center; }
  .hb-carousel > .hb-hero { height: clamp(520px, calc(100svh - 150px), 570px); min-height: 0; padding: 0; background: #f0f5f3; }
  .hb-carousel .hb-hero .site-shell { width: calc(100% - 40px); height: 100%; padding: 26px 0 0; justify-content: flex-start; }
  .hb-carousel .hb-hero .hb-label { font-size: 11px; line-height: 1.5; margin-bottom: 14px; }
  .hb-carousel .hb-oil h1 { font-size: 36px; line-height: 1.22; margin: 0; }
  .hb-carousel .hb-oil h1 span { display: block; margin: 0; }
  .hb-carousel .hb-oil > img { top: auto; bottom: 64px; left: auto; right: 0; width: 62%; min-width: 228px; height: calc(100% - 220px); object-fit: contain; object-position: center bottom; }
  .hb-carousel .hb-oil .hb-hero-details { width: 48%; margin-top: auto; margin-bottom: 96px; }
  .hb-carousel .hb-oil h2 { font-size: 20px; line-height: 1.45; margin-bottom: 12px; }
  .hb-carousel .hb-oil h2 span { display: block; }
  .hb-carousel .hb-oil .hb-oil-detail { font-size: 12px; line-height: 1.75; margin: 0; }
  .hb-oil-detail span { display: block; margin: 8px 0 0; padding: 0; border: 0; }
  .hb-carousel .hb-oil .hb-link { font-size: 13px; gap: 14px; margin-top: 18px; padding: 10px 14px; min-height: 44px; }
  .hb-carousel .hb-story-slide .site-shell { padding-top: 26px; }
  .hb-carousel .hb-story-slide > picture { inset: auto -50px 58px auto; width: min(88%, 400px); height: calc(100% - 200px); }
  .hb-carousel .hb-story-slide > picture img { object-fit: contain; object-position: center bottom; }
  .hb-carousel .hb-story-slide .hb-brand-title { font-size: 25px; line-height: 1.3; margin-bottom: 10px; }
  .hb-carousel .hb-story-slide h2:not(.hb-brand-title) { font-size: 27px; line-height: 1.4; margin-bottom: 10px; color: #204e3b; }
  .hb-carousel .hb-story-slide .hb-hero-details { width: 44%; margin-top: auto; margin-bottom: 120px; }
  .hb-carousel .hb-story-slide p:not(.hb-label) { font-size: 13px; line-height: 1.7; margin: 0; }
  .hb-carousel .hb-story-slide .hb-link { font-size: 12px; line-height: 1.5; gap: 10px; min-height: 44px; margin-top: 16px; padding: 10px 0; }
  .hb-carousel-controls { bottom: 14px; left: 20px; right: 20px; justify-content: space-between; gap: 8px; }
  .hb-carousel-controls button { width: 44px; height: 44px; }
  .hb-label { margin-bottom: 18px; }
  .hb-values { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; font-size: 11px; padding: 18px 20px; text-align: center; }
  .hb-new, .hb-story { grid-template-columns: 1fr; }
  .hb-new-copy { order: -1; padding: 34px 24px 12px; }
  .hb-new > img { height: 320px; max-height: none; object-fit: contain; }
  .hb-story-copy { padding: 34px 24px; }
  .hb-new h2, .hb-story-copy h2, .hb-series h2, .is-home .section-heading h2, .is-home .journal-copy h2, .is-home .cta-section h2 { font-size: 25px; line-height: 1.45; margin-bottom: 18px; }
  .hb-new-copy > p:not(.hb-label), .hb-story-copy > p:not(.hb-label) { font-size: 14px; line-height: 1.9; }
  .hb-series, .is-home .featured-section, .is-home .journal-section { padding: 42px 0; }
  .hb-series-links { grid-template-columns: repeat(2, 1fr); margin-top: 25px; }
  .hb-series-links a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 18px 12px 18px 0; }
  .hb-series-links small { grid-column: 1 / -1; margin: 0; }
  .hb-series-links strong { font-size: 15px; }
  .hb-new-notes { gap: 14px; flex-wrap: wrap; font-size: 12px; margin-top: 20px; padding-top: 16px; }
  .hb-texture-labels { position: static; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 18px 24px; }
  .hb-texture-labels .hb-texture-note { position: static; width: auto; transform: none; text-align: left; }
  .hb-texture-note strong { font-size: 12px; }
  .hb-texture-note small { font-size: 11px; }
  .is-home .section-heading { gap: 14px; margin-bottom: 24px; }
  .is-home .product-image { aspect-ratio: 1 / 1.05; }
  .is-home .product-meta h3 { font-size: 13px; line-height: 1.6; }
  .is-home .journal-cards { gap: 28px; }
  .is-home .journal-card img, .is-home .journal-card-large img { aspect-ratio: 16 / 10; }
  .is-home .cta-section { padding: 42px 0; }
}
