:root {
  --paper: #f7f7f2;
  --ink: #18251f;
  --muted: #535f56;
  --line: #d7dbd1;
  --green: #243e2f;
  --lime: #dcf2a4;
  --gutter: clamp(22px, 5vw, 80px);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 105px; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 1rem/1.6 "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-underline-offset: 5px; }
img { display: block; max-width: 100%; }
figure, h1, h2, h3, p { margin: 0; }
h1, h2, h3 { line-height: 1.08; letter-spacing: -0.045em; font-weight: 500; }
h1 { text-wrap: balance; }
.wrap { width: calc(100% - var(--gutter) * 2); max-width: 1376px; margin-inline: auto; }
.eyebrow { font-size: .875rem; font-weight: 600; letter-spacing: .065em; line-height: 1.5; text-transform: uppercase; }
.muted { color: var(--muted); }
.skip-link { position: fixed; z-index: 100; top: 12px; left: 12px; transform: translateY(-180%); padding: 12px 18px; background: white; }
.skip-link:focus { transform: none; }
:focus-visible { outline: 3px solid #527733; outline-offset: 5px; }
.site-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid var(--line); background: var(--paper); }
.header-inner { min-height: 88px; max-width: 1536px; margin-inline: auto; padding: 16px var(--gutter); display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.site-mark { display: inline-flex; flex-shrink: 0; }
.site-mark-wordmark { width: 96px; height: 28px; }
.site-nav { display: flex; align-items: center; gap: clamp(20px, 3vw, 48px); }
.site-nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9375rem; font-weight: 500; text-decoration: none; }
.site-nav a:hover, .site-nav a[aria-current="page"] { text-decoration: underline; }
.text-link { display: inline-flex; justify-content: space-between; align-items: center; gap: 28px; min-height: 44px; font-weight: 500; text-decoration: none; border-bottom: 1px solid currentColor; }
.text-link span { font-size: 1.3rem; }
.button { display: inline-flex; align-items: center; justify-content: space-between; gap: 32px; min-height: 54px; padding: 15px 23px; border: 1px solid var(--green); border-radius: 6px; color: white; background: var(--green); font-size: 1rem; font-weight: 500; text-decoration: none; line-height: 1.4; }
.button:hover { background: #375740; }
.button span { font-size: 1.3rem; }
.status-label { display: inline-block; padding: 4px 10px; border: 1px solid #b9c7a8; border-radius: 100px; color: #405433; font-size: .8125rem; font-weight: 500; text-transform: none; letter-spacing: 0; white-space: nowrap; }
.brand-intro { padding-block: clamp(48px, 7vw, 102px) 56px; }
.brand-intro h1 { margin-top: 30px; font-size: clamp(4.2rem, 11.7vw, 11rem); color: #111813; letter-spacing: -.07em; font-weight: 500; line-height: 1; }
.brand-intro-bottom { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-top: 40px; }
.brand-support { max-width: 490px; font-size: clamp(1.2rem, 2vw, 1.7rem); line-height: 1.4; letter-spacing: -.025em; }
.product-feature { display: grid; grid-template-columns: 1fr 1fr; border-radius: 16px; overflow: hidden; background: #e9eddf; }
.product-feature-copy { padding: clamp(30px, 4.5vw, 68px); align-self: center; }
.product-feature-copy .eyebrow { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.product-feature h2 { margin-top: 36px; font-size: clamp(3rem, 5.5vw, 5.7rem); letter-spacing: -.055em; }
.product-description { margin-top: 28px; font-size: 1.25rem; max-width: 30ch; }
.product-feature-copy .muted { margin-top: 16px; max-width: 37ch; }
.product-feature .button { margin-top: 32px; }
.feature-art { position: relative; min-height: 570px; overflow: hidden; }
.feature-art img { width: 100%; height: 100%; object-fit: cover; object-position: 49% 50%; }
.feature-art figcaption { position: absolute; bottom: 20px; left: 22px; right: 22px; width: fit-content; background: #18251fe8; color: white; border-radius: 4px; padding: 7px 11px; font-size: .8125rem; }
.company-note { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; padding-block: 90px; }
.company-note > p:last-child { max-width: 550px; font-size: 1.3rem; line-height: 1.55; }
.springs-hero { display: grid; grid-template-columns: 1.12fr 1fr; align-items: center; gap: clamp(32px, 5vw, 80px); padding-block: 50px 76px; }
.springs-hero-copy { padding-block: 12px; }
.springs-hero-copy .eyebrow { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.springs-hero h1 { margin-top: 30px; max-width: 10.8ch; font-size: clamp(3rem, 5.9vw, 6rem); line-height: 1.02; letter-spacing: -.055em; }
.hero-promise { max-width: 29ch; margin-top: 30px; font-size: clamp(1.25rem, 1.7vw, 1.65rem); line-height: 1.4; letter-spacing: -.02em; }
.hero-description { max-width: 44ch; margin-top: 18px; color: var(--muted); font-size: 1.0625rem; }
.springs-hero .button { margin-top: 30px; }
.springs-hero-art img { width: 100%; aspect-ratio: 4 / 5; height: auto; object-fit: cover; border-radius: 12px; }
.springs-hero-art figcaption { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 20px; padding-top: 13px; font-size: .875rem; color: var(--muted); }
.habit-loop { border-top: 1px solid var(--line); padding-block: 76px 90px; }
.section-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 60px; }
.section-heading .eyebrow { grid-column: 1 / -1; }
.section-heading h2, .world-copy h2, .adventure-copy h2, .questions-heading h2 { font-size: clamp(2.4rem, 4vw, 4rem); }
.section-heading > p:last-child { max-width: 35ch; align-self: end; color: var(--muted); font-size: 1.2rem; }
.loop-steps { list-style: none; padding: 0; margin: 48px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.loop-steps li { border-top: 1px solid #9ba995; padding-top: 20px; }
.step-number { display: block; width: fit-content; padding: 3px 11px; background: var(--lime); border-radius: 5px; font-size: .875rem; font-weight: 600; }
.loop-steps h3 { margin-top: 24px; font-size: 1.25rem; letter-spacing: -.025em; }
.loop-steps p { margin-top: 14px; color: var(--muted); }
.world-story { background: var(--green); color: var(--paper); }
.world-story-inner { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(40px, 7vw, 112px); padding-block: 70px; }
.world-art img { width: 100%; height: auto; aspect-ratio: 1 / 1.05; object-fit: cover; object-position: 42% 50%; border-radius: 10px; }
.world-art figcaption { padding-top: 12px; color: #c6d2c2; font-size: .875rem; }
.world-copy .eyebrow { color: var(--lime); }
.world-copy h2 { margin-top: 24px; }
.world-copy > p:not(.eyebrow) { margin-top: 28px; max-width: 42ch; color: #dbe5d6; font-size: 1.125rem; }
.return-note { border-top: 1px solid #667e67; padding-top: 28px; margin-top: 34px; }
.return-note h3 { font-size: 1.2rem; letter-spacing: -.02em; }
.return-note p { margin-top: 12px; max-width: 40ch; color: #dbe5d6; }
.world-copy .text-link { margin-top: 22px; color: var(--lime); }
.adventure-story { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(40px, 7vw, 112px); padding-block: 90px; }
.adventure-copy h2 { margin-top: 24px; }
.adventure-copy > p:not(.eyebrow) { margin-top: 28px; max-width: 43ch; color: var(--muted); font-size: 1.125rem; }
.adventure-copy .text-link { margin-top: 24px; }
.adventure-art img { width: 100%; height: auto; aspect-ratio: 1 / 1.05; object-fit: cover; object-position: 50% 51%; border-radius: 10px; }
.adventure-art figcaption { padding-top: 12px; color: var(--muted); font-size: .875rem; }
.questions-section { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 8vw, 120px); padding-block: 76px; border-top: 1px solid var(--line); }
.questions-heading h2 { margin-top: 22px; }
.questions-heading > p:last-child { margin-top: 24px; color: var(--muted); max-width: 36ch; }
.question { padding-block: 22px; border-bottom: 1px solid var(--line); }
.question:first-child { border-top: 1px solid var(--line); }
.question summary { cursor: pointer; font-size: 1.125rem; font-weight: 500; min-height: 32px; padding-right: 10px; }
.question summary::marker { color: #53703e; }
.question p { margin-top: 14px; color: var(--muted); }
.reading-links { display: grid; grid-template-columns: .85fr 1fr 1fr; gap: 24px; align-items: center; border-top: 1px solid var(--line); padding-block: 30px 60px; }
.reading-links a { display: flex; justify-content: space-between; gap: 15px; min-height: 44px; align-items: center; text-decoration: none; border-bottom: 1px solid currentColor; }
.site-footer { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 30px; padding: 40px var(--gutter) 28px; border-top: 1px solid var(--line); max-width: 1536px; margin-inline: auto; }
.footer-links { display: flex; justify-content: end; gap: 14px 25px; flex-wrap: wrap; }
.footer-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: .875rem; text-decoration: none; }
.footer-links a:hover { text-decoration: underline; }
.copyright { grid-column: 1 / -1; color: var(--muted); font-size: .8125rem; }
@media (min-width: 1600px) { .feature-art { max-height: 760px; } }
@media (max-width: 1000px) {
  .loop-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 28px; }
  .feature-art { min-height: 520px; }
  .product-feature-copy { padding: 30px; }
  .springs-hero h1 { font-size: clamp(3rem, 6.2vw, 5rem); }
  .reading-links { grid-template-columns: 1fr 1fr; }
  .reading-links .eyebrow { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  html { scroll-padding-top: 100px; }
  .header-inner { min-height: 76px; gap: 18px; }
  .site-mark-wordmark { width: 82px; height: 25px; }
  .site-nav { gap: 16px; }
  .site-nav a { font-size: .875rem; }
  .brand-intro { padding-block: 48px 38px; }
  .brand-intro h1 { font-size: clamp(3.6rem, 13.3vw, 6rem); margin-top: 24px; }
  .brand-intro-bottom { display: block; margin-top: 26px; }
  .brand-support { max-width: 28ch; }
  .brand-intro-bottom .text-link { margin-top: 15px; }
  .product-feature, .company-note, .springs-hero, .section-heading, .world-story-inner, .adventure-story, .questions-section { grid-template-columns: 1fr; }
  .product-feature-copy { padding: 30px 26px 36px; }
  .product-feature h2 { margin-top: 26px; font-size: 3.5rem; }
  .feature-art { min-height: 0; }
  .feature-art img { height: auto; aspect-ratio: 1 / 1.08; object-position: center 60%; }
  .company-note { gap: 24px; padding-block: 54px; }
  .company-note > p:last-child { font-size: 1.125rem; }
  .springs-hero { padding-block: 28px 48px; gap: 34px; }
  .springs-hero h1 { max-width: 13ch; font-size: clamp(2.85rem, 11.5vw, 4.6rem); margin-top: 24px; }
  .hero-promise { margin-top: 24px; }
  .hero-description { font-size: 1rem; }
  .springs-hero-art img { aspect-ratio: 1 / 1.05; border-radius: 10px; object-position: 50% 60%; }
  .habit-loop { padding-block: 46px 52px; }
  .section-heading { gap: 18px; }
  .section-heading > p:last-child { font-size: 1.0625rem; }
  .loop-steps { margin-top: 32px; gap: 28px 22px; }
  .loop-steps h3 { font-size: 1.15rem; line-height: 1.2; margin-top: 18px; }
  .world-story-inner { padding-block: 40px 48px; gap: 36px; }
  .world-art img { aspect-ratio: 1; }
  .world-copy h2, .adventure-copy h2 { font-size: 2.7rem; }
  .adventure-story { padding-block: 52px; gap: 30px; }
  .questions-section { padding-block: 48px; gap: 32px; }
  .reading-links { grid-template-columns: 1fr; padding-block: 26px 38px; gap: 12px; }
  .site-footer { grid-template-columns: 1fr; gap: 18px; padding-top: 30px; }
  .footer-links { justify-content: start; gap: 4px 22px; }
}
@media (max-width: 370px) {
  .header-inner { flex-wrap: wrap; gap: 4px 14px; }
  .loop-steps { grid-template-columns: 1fr; }
  .button { gap: 18px; padding-inline: 17px; }
  .product-feature h2 { font-size: 3rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Editorial layouts share the same type, spacing, and navigation as the product. */
:root { --paper-bright: #fff; --ink-muted: var(--muted); --body: "Helvetica Neue", Helvetica, Arial, sans-serif; }
.about-intro, .info-hero, .page-hero, .article-layout, .next-section, .info-content {
  width: calc(100% - var(--gutter) * 2); max-width: 1376px; margin-inline: auto;
}
.about-intro { padding-block: 78px 70px; }
.about-intro h1 { font-size: clamp(3.8rem, 8vw, 8rem); line-height: 1.02; letter-spacing: -.065em; margin-top: 32px; }
.about-position { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-top: 54px; }
.about-position > p:first-child { font-size: 1.65rem; letter-spacing: -.04em; }
.about-position > p:last-child { max-width: 46ch; font-size: 1.25rem; }
.about-product { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(40px, 6vw, 96px); padding-block: 64px; border-top: 1px solid var(--line); }
.about-product img { width: 100%; height: auto; aspect-ratio: 1.2; object-fit: cover; object-position: center 62%; border-radius: 10px; }
.about-product figcaption { font-size: .875rem; color: var(--muted); padding-top: 12px; }
.about-product h2 { margin-top: 26px; font-size: clamp(2.4rem, 3.8vw, 4rem); }
.about-product div > p:not(.eyebrow) { max-width: 39ch; margin-top: 28px; font-size: 1.125rem; color: var(--muted); }
.about-product .text-link { margin-top: 24px; }
.company-people { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; border-top: 1px solid var(--line); padding-block: 70px 90px; }
.people-heading h2 { font-size: 2.6rem; margin-top: 22px; }
.person { display: flex; justify-content: space-between; align-items: baseline; gap: 18px; border-bottom: 1px solid var(--line); padding-block: 22px; }
.person:first-child { padding-top: 0; }
.person strong { font-size: 1.6rem; font-weight: 500; letter-spacing: -.035em; }
.person span { font-size: .9375rem; color: var(--muted); }
.page-hero { display: grid; grid-template-columns: 1.2fr 1fr; gap: clamp(40px, 7vw, 100px); align-items: center; padding-block: 54px 70px; }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 7px 12px; font-size: .875rem; color: var(--muted); }
.breadcrumb a { text-decoration: none; }
.breadcrumb a:hover { text-decoration: underline; }
.page-hero h1 { max-width: 13ch; font-size: clamp(3rem, 5.7vw, 5.8rem); margin-top: 36px; letter-spacing: -.055em; line-height: 1.03; }
.page-hero .hero-lede { font-size: 1.25rem; max-width: 39ch; color: var(--muted); margin-top: 28px; }
.hero-field img { width: 100%; height: auto; aspect-ratio: 1 / 1.1; object-fit: cover; object-position: center 58%; border-radius: 10px; }
.is-adventure img { object-position: center 51%; }
.field-label { margin-top: 12px; color: var(--muted); font-size: .875rem; }
.article-layout { display: grid; grid-template-columns: minmax(190px, .5fr) minmax(0, 1.5fr); gap: clamp(45px, 8vw, 120px); border-top: 1px solid var(--line); padding-top: 60px; }
.article-index nav { position: sticky; top: 126px; display: flex; flex-direction: column; align-items: start; gap: 7px; padding-bottom: 30px; }
.article-index .eyebrow { margin-bottom: 14px; }
.article-index a { padding-block: 10px; font-size: .9375rem; line-height: 1.5; text-decoration: none; color: var(--muted); }
.article-index a:hover { text-decoration: underline; color: var(--ink); }
.article-body { max-width: 790px; min-width: 0; }
.content-section { padding-bottom: 58px; }
.article-body .section-heading { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 18px; align-items: start; }
.section-number { color: #536c43; font-size: .875rem; padding-top: 8px; }
.article-body h2 { font-size: clamp(1.8rem, 2.8vw, 2.6rem); line-height: 1.14; letter-spacing: -.04em; }
.section-copy { margin: 24px 0 0 50px; color: var(--muted); font-size: 1.125rem; line-height: 1.75; }
.section-copy p + p { margin-top: 20px; }
.section-copy a { color: var(--ink); }
.research-note { padding: 28px 30px; background: #eceee7; border-radius: 8px; margin: 8px 0 64px 50px; color: var(--muted); }
.research-note .eyebrow { color: var(--ink); margin-bottom: 14px; }
.research-note p + p { margin-top: 18px; }
.book-note { font-size: 1rem; }
.research-sources { font-size: .875rem; }
.task-groups { margin: 28px 0 0 50px; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.task-group { padding: 26px; background: #eceee7; border-radius: 8px; }
.task-group h3 { font-size: 1.2rem; }
.task-group ul { margin: 18px 0 0; padding-left: 18px; color: var(--muted); }
.task-group li + li { margin-top: 10px; }
.plain-list { list-style: none; padding: 0; margin-block: 26px; }
.plain-list li { display: grid; grid-template-columns: 110px 1fr; gap: 18px; border-top: 1px solid var(--line); padding-block: 14px; }
.plain-list strong { font-size: .875rem; font-weight: 500; }
.next-section { border-top: 1px solid var(--line); padding-block: 38px 60px; }
.next-section h2 { font-size: 1.5rem; }
.next-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 35px; margin-top: 25px; }
.next-links a { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 52px; text-decoration: none; border-bottom: 1px solid transparent; }
.next-links a:hover { border-bottom-color: currentColor; }
.info-hero { padding-block: 70px 60px; border-bottom: 1px solid var(--line); }
.info-hero h1 { margin-top: 30px; font-size: clamp(3.5rem, 7.5vw, 7rem); letter-spacing: -.055em; }
.info-hero .hero-lede { max-width: 48ch; font-size: 1.25rem; color: var(--muted); margin-top: 30px; }
.info-content { padding-block: 54px 64px; }
.info-section { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(30px, 6vw, 90px); padding-block: 34px; }
.info-section + .info-section { border-top: 1px solid var(--line); }
.info-section h2 { font-size: 1.8rem; }
.info-copy { max-width: 64ch; color: var(--muted); font-size: 1.0625rem; }
.info-copy h3 { color: var(--ink); font-size: 1.15rem; margin-bottom: 10px; letter-spacing: -.02em; }
.info-copy p + p { margin-top: 18px; }
.info-copy p + h3 { margin-top: 30px; }
.info-copy a { color: var(--ink); }
.not-found { min-height: 65svh; padding-block: 80px; }
.not-found h1 { font-size: clamp(3.5rem, 7vw, 7rem); margin-top: 28px; }
.not-found > p:not(.eyebrow) { margin-top: 26px; font-size: 1.125rem; color: var(--muted); }
.not-found .button { margin-top: 30px; }
.akion-cookie-panel { padding-block: 18px; gap: 24px; }
.akion-cookie-copy { font-size: .875rem; max-width: 58ch; }
.akion-cookie-action { border-radius: 5px; font-size: .875rem; font-weight: 500; text-transform: none; letter-spacing: 0; }
.akion-cookie-settings { font-size: .875rem; font-weight: 500; }
@media (max-width: 900px) {
  .article-layout { grid-template-columns: minmax(145px, .45fr) minmax(0, 1.55fr); gap: 35px; }
  .task-groups { grid-template-columns: 1fr; }
  .person { display: grid; gap: 6px; }
}
@media (max-width: 700px) {
  .about-intro { padding-block: 46px; }
  .about-intro h1 { font-size: clamp(3rem, 11.5vw, 5.2rem); margin-top: 26px; }
  .about-position { grid-template-columns: 1fr; gap: 20px; margin-top: 30px; }
  .about-position > p:last-child { font-size: 1.125rem; }
  .about-product, .company-people { grid-template-columns: 1fr; gap: 32px; padding-block: 42px; }
  .about-product h2 { margin-top: 20px; }
  .person { display: flex; flex-wrap: wrap; gap: 8px 22px; }
  .person strong { font-size: 1.4rem; }
  .page-hero { grid-template-columns: 1fr; gap: 32px; padding-block: 32px 42px; }
  .page-hero h1 { max-width: 14ch; font-size: clamp(2.6rem, 10.5vw, 4.4rem); margin-top: 24px; }
  .page-hero .hero-lede { font-size: 1.125rem; margin-top: 22px; }
  .hero-field img { aspect-ratio: 1.12; }
  .article-layout { grid-template-columns: 1fr; gap: 32px; padding-top: 32px; }
  .article-index nav { position: static; display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; border-bottom: 1px solid var(--line); padding-bottom: 24px; }
  .article-index .eyebrow { grid-column: 1 / -1; margin-bottom: 5px; }
  .content-section { padding-bottom: 40px; }
  .article-body .section-heading { grid-template-columns: 24px minmax(0, 1fr); gap: 12px; }
  .section-copy { margin-left: 0; margin-top: 22px; font-size: 1.0625rem; }
  .research-note { margin-left: 0; margin-bottom: 42px; padding: 24px; }
  .task-groups { margin-left: 0; gap: 18px; }
  .plain-list li { grid-template-columns: 85px 1fr; gap: 14px; }
  .next-section { padding-block: 30px 42px; }
  .next-links { grid-template-columns: 1fr; gap: 12px; margin-top: 18px; }
  .next-links a { border-bottom: 1px solid var(--line); padding-block: 12px; }
  .info-hero { padding-block: 46px 40px; }
  .info-hero h1 { font-size: 3.6rem; margin-top: 24px; }
  .info-hero .hero-lede { font-size: 1.125rem; margin-top: 24px; }
  .info-content { padding-block: 15px 42px; }
  .info-section { grid-template-columns: 1fr; gap: 24px; padding-block: 30px; }
  .not-found { padding-block: 50px 64px; }
}

/* Brand refinements: quieter type and a distinct company story. */
.about-purpose { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; padding-block: 60px; border-top: 1px solid var(--line); }
.about-purpose h2 { margin-top: 24px; font-size: clamp(2.2rem, 3.2vw, 3.3rem); }
.purpose-copy { max-width: 48ch; font-size: 1.125rem; color: var(--muted); }
.purpose-copy p + p { margin-top: 20px; }
.people-heading .text-link { margin-top: 20px; }
.feature-art img { min-height: 100%; }
.springs-hero-art img { object-position: 51% 50%; }
.hero-field.is-daily img { object-position: 42% 50%; }
@media (max-width: 700px) {
 .about-purpose { grid-template-columns: 1fr; gap: 26px; padding-block: 40px; }
 .feature-art img { min-height: 0; aspect-ratio: 1.2; }
 .springs-hero-art img { aspect-ratio: 1.2; object-position: 50% 50%; }
 .world-art img { aspect-ratio: 1.2; }
}

/* Reserve image regions without inheriting the source file's pixel height. */
.feature-art img { position: absolute; inset: 0; width: 100%; height: 100%; }
@media (max-width: 700px) {
 .feature-art { aspect-ratio: 1.2; }
 .feature-art img { height: 100%; }
}

/* A quiet editorial home, ready for the first post. */
.purpose-blog-link { margin-top: 24px; color: var(--ink); font-size: 1rem; }
.blog-main { padding-block: clamp(48px, 7vw, 96px) clamp(56px, 7vw, 96px); }
.blog-intro h1 { margin-top: 28px; font-size: clamp(3.6rem, 9.5vw, 9rem); line-height: 1; letter-spacing: -.06em; }
.blog-intro-bottom { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-top: 32px; }
.blog-intro-bottom p { max-width: 37ch; font-size: clamp(1.125rem, 1.8vw, 1.5rem); color: var(--muted); line-height: 1.5; }
.blog-byline { color: var(--muted); font-size: .875rem; white-space: nowrap; }
.blog-empty { display: grid; grid-template-columns: 1fr 1.6fr; gap: 48px; padding: clamp(30px, 5vw, 72px); margin-top: 56px; border-radius: 12px; background: var(--green); color: var(--paper); }
.blog-empty-label { display: flex; flex-direction: column; align-items: start; justify-content: space-between; gap: 36px; }
.blog-status { display: inline-flex; align-items: center; gap: 10px; font-size: .875rem; color: var(--lime); }

.blog-empty-copy p { max-width: 38ch; margin-top: 0; color: #d4ddce; font-size: 1.0625rem; }
.blog-empty .text-link { margin-top: 32px; color: var(--lime); }
@media (max-width: 700px) {
  .blog-intro-bottom { align-items: start; flex-direction: column; gap: 22px; margin-top: 24px; }
  .blog-empty { grid-template-columns: 1fr; gap: 36px; margin-top: 36px; }

}

/* Show the supplied landscape concepts without cropping their compositions. */
.feature-art.is-landscape { min-height: 0; aspect-ratio: 3 / 2; align-self: center; }
.feature-art.is-landscape img { object-position: center; }
.springs-hero-art img, .world-art img, .about-product img, .hero-field.is-daily img, .hero-field.is-consistency img { aspect-ratio: 3 / 2; object-position: center; }
