@font-face { font-family: Lora; src: url('type/lora.woff2') format('woff2'); font-weight: 400 700; font-style: normal; font-display: swap; }
@font-face { font-family: 'Nunito Sans'; src: url('type/nunito-sans.woff2') format('woff2'); font-weight: 200 900; font-style: normal; font-display: swap; }
:root {
  color-scheme: light;
  --rose-air: #F6E8ED;
  --fig-ink: #58394D;
  --mulberry: #794B66;
  --lilac-shade: #DAD1E3;
  --petal: #DDB3C1;
  --garden-rule: #C6ADB9;
  --garden-display: Lora, Georgia, serif;
  --garden-reading: 'Nunito Sans', Arial, sans-serif;
}
* { box-sizing: border-box; }
html { text-size-adjust: 100%; -webkit-text-size-adjust: 100%; scroll-padding-top: 24px; }
body { margin: 0; color: var(--fig-ink); background: var(--rose-air); font: 400 18px/1.65 var(--garden-reading); }
img, svg { max-width: 100%; display: block; }
img { height: auto; }
h1, h2, h3, p, figure, ul, ol, dl, dd { margin: 0; }
h1, h2, h3 { font-family: var(--garden-display); font-weight: 400; line-height: 1.18; }
h1 { font-size: clamp(43px, 4.3vw, 62px); letter-spacing: -.04em; }
h2 { font-size: clamp(29px, 3.1vw, 40px); letter-spacing: -.025em; }
h3 { font-size: 25px; letter-spacing: -.02em; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .22em; overflow-wrap: anywhere; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible, summary:focus-visible { outline: 3px solid var(--mulberry); outline-offset: 5px; }
button, summary { font: inherit; }
::selection { color: var(--fig-ink); background: var(--petal); }
.garden-width { width: min(1248px, calc(100% - 112px)); margin-inline: auto; }
.summer-skip { position: absolute; top: -100px; left: 18px; z-index: 20; padding: 12px 20px; background: var(--fig-ink); color: var(--rose-air); }
.summer-skip:focus { top: 12px; }
.garden-header { border-bottom: 1px solid var(--garden-rule); }
.garden-mast { min-height: 116px; display: grid; grid-template-columns: 1fr 220px 1fr; gap: 24px; align-items: center; }
.mast-note { font-size: 16px; max-width: 200px; line-height: 1.5; }
.summer-sign { display: block; width: 220px; color: var(--fig-ink); }
.summer-sign svg { width: 100%; height: auto; }
.mast-links { display: flex; gap: 28px; justify-content: flex-end; align-items: center; font-size: 16px; }
.mast-links a { padding-block: 12px; text-decoration: none; }
.mast-links a:hover, .mast-links a[aria-current] { text-decoration: underline; }
.pocket-garden { display: none; }
.garden-crumbs { display: flex; flex-wrap: wrap; gap: 7px; font-size: 16px; padding-block: 20px 0; }
.garden-crumbs a { padding-block: 4px; }
.garden-hero { display: grid; gap: 76px; padding-block: 42px 58px; align-items: center; }
.garden-home { grid-template-columns: 1.22fr 1fr; }
.garden-compound, .garden-goal { grid-template-columns: 1fr 1.1fr; gap: 90px; padding-top: 25px; }
.garden-compound .hero-copy, .garden-goal .hero-copy { grid-column: 2; grid-row: 1; }
.garden-compound .garden-photo, .garden-goal .garden-photo { grid-column: 1; grid-row: 1; }
.garden-about { grid-template-columns: 1.2fr 1fr; }
.hero-welcome { font-size: 17px; margin-bottom: 18px; }
.hero-intro { font-size: 20px; line-height: 1.55; max-width: 560px; margin-top: 22px; }
.garden-home h1 { font-size: clamp(43px, 4.25vw, 60px); line-height: 1.13; }
.garden-compound h1, .garden-goal h1 { font-size: clamp(39px, 4.05vw, 58px); }
.care-invitation { margin-top: 24px; max-width: 560px; }
.care-link { display: flex; justify-content: space-between; align-items: center; gap: 15px; background: var(--mulberry); color: #FFFFFF; padding: 15px 23px; min-height: 58px; border-radius: 4px; text-decoration: none; font-size: 18px; font-weight: 700; line-height: 1.35; }
.care-link:hover { background: var(--fig-ink); color: #FFFFFF; text-decoration: none; }
.care-link:focus-visible { outline-offset: 6px; }
.care-link span { font-size: 23px; font-weight: 400; }
.summer-disclosure { font-size: 16px; line-height: 1.5; margin-top: 11px; }
.care-context { font-size: 16px; line-height: 1.5; margin-top: 11px; }
.care-context p + p { margin-top: 9px; }
.garden-photo { width: 100%; min-width: 0; }
.garden-photo object { display: block; width: 100%; height: 550px; border: 0; border-radius: 260px 260px 0 0; background: var(--lilac-shade); object-fit: cover; overflow: hidden; }
.garden-home .garden-photo object { height: 596px; }
.garden-photo figcaption { text-align: center; font-size: 16px; line-height: 1.5; margin-top: 15px; }
.garden-photo svg { width: 100%; height: 100%; }
.garden-thought { display: flex; align-items: center; gap: 32px; border-block: 1px solid var(--garden-rule); padding-block: 29px; }
.garden-thought img { width: 90px; flex: 0 0 90px; }
.garden-thought p { font: 400 25px/1.5 var(--garden-display); max-width: 800px; }
.reading-garden { display: grid; grid-template-columns: 240px minmax(0, 735px); gap: 105px; padding-block: 70px 40px; }
.garden-bookmark { align-self: start; padding-top: 7px; font-size: 16px; }
.garden-bookmark p { margin-bottom: 18px; font-weight: 700; }
.garden-bookmark ol { padding: 0; list-style: none; }
.garden-bookmark li + li { margin-top: 14px; }
.garden-bookmark a { display: inline-block; padding-block: 3px; }
.garden-bookmark img { width: 140px; margin-top: 38px; }
.garden-prose { min-width: 0; }
.garden-section { margin-bottom: 51px; }
.garden-section h2 { margin-bottom: 23px; }
.garden-section p { max-width: 69ch; }
.garden-section p + p { margin-top: 20px; }
.garden-section ul { padding-left: 23px; margin-block: 24px; }
.garden-section li + li { margin-top: 12px; }
.garden-section li::marker { color: var(--mulberry); }
.home-chapter { padding-top: 78px; padding-bottom: 24px; }
.home-chapter > .chapter-intro { display: grid; grid-template-columns: 1fr 1.15fr; gap: 110px; margin-bottom: 38px; }
.chapter-intro p + p { margin-top: 20px; }
.goal-paths { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin-top: 30px; }
.goal-paths > li, .guide-flowerbed > li { min-width: 0; }
.goal-paths a { display: flex; flex-direction: column; height: 100%; text-decoration: none; padding-bottom: 22px; border-bottom: 1px solid var(--mulberry); }
.goal-paths a:hover h3 { text-decoration: underline; }
.goal-paths .garden-photo object { height: 270px; border-radius: 160px 160px 0 0; }
.goal-paths h3 { margin-top: 21px; }
.goal-paths p { margin-top: 12px; font-size: 17px; line-height: 1.6; }
.path-label { margin-top: auto; padding-top: 20px; font-size: 16px; }
.guide-flowerbed { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 40px; list-style: none; padding: 0; }
.guide-flowerbed a { display: block; text-decoration: none; border-bottom: 1px solid var(--garden-rule); padding: 27px 0; height: 100%; }
.guide-flowerbed a:hover h3 { text-decoration: underline; }
.guide-flowerbed p { font-size: 17px; margin-top: 10px; line-height: 1.6; }
.guide-flowerbed span { font-size: 16px; display: block; margin-top: 13px; }
.garden-care-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 44px; list-style: none; padding: 30px 0 45px; }
.garden-care-steps .step-hand { font: 400 38px/1.2 var(--garden-display); color: var(--mulberry); display: block; margin-bottom: 16px; }
.garden-care-steps h3 { margin-bottom: 16px; }
.garden-care-steps p { font-size: 17px; line-height: 1.6; }
.garden-still { width: 145px; margin: 35px auto; }
.quiet-hero { max-width: 870px; margin-inline: auto; padding-block: 38px 30px; }
.quiet-hero .hero-intro { max-width: 760px; }
.quiet-hero .care-invitation { max-width: 670px; }
.quiet-hero h1 { font-size: clamp(43px, 4.5vw, 64px); }
.quiet-hero .hero-welcome { margin-bottom: 15px; }
.quiet-hero + .reading-garden { padding-top: 48px; }
.garden-faq { max-width: 870px; margin: 0 auto; padding-block: 28px 40px; }
.garden-faq details { border-bottom: 1px solid var(--garden-rule); padding-block: 22px; }
.garden-faq summary { font: 400 25px/1.4 var(--garden-display); cursor: pointer; padding: 8px 35px 8px 0; }
.garden-faq details p { padding: 20px 0 4px; max-width: 72ch; }
.garden-dictionary { display: grid; grid-template-columns: 1fr 1fr; gap: 32px 60px; padding-block: 40px; }
.garden-dictionary > div { border-top: 1px solid var(--garden-rule); padding-top: 22px; }
.garden-dictionary dt { font: 400 28px/1.25 var(--garden-display); margin-bottom: 15px; }
.garden-dictionary dd { max-width: 55ch; }
.garden-sources { border-top: 1px solid var(--garden-rule); padding-top: 27px; margin-bottom: 52px; }
.garden-sources h2 { font-size: 29px; margin-bottom: 17px; }
.garden-sources ul { padding: 0; list-style: none; }
.garden-sources li { margin-top: 14px; }
.garden-sources a { display: inline-block; padding-block: 5px; }
.garden-closing { margin-top: 42px; padding-block: 55px 59px; background: var(--lilac-shade); }
.closing-walk { display: grid; grid-template-columns: 1fr 1.1fr; gap: 110px; align-items: start; }
.closing-walk h2 { max-width: 390px; }
.closing-walk > div > p { max-width: 500px; margin-top: 20px; }
.closing-walk .care-invitation { margin-top: 0; }
.closing-walk img { width: 120px; margin-top: 23px; }
.garden-footer { padding-top: 57px; padding-bottom: 25px; }
.footer-garden-paths { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 45px; }
.summer-footer-sign { width: 230px; }
.footer-line { margin-top: 17px; font: 400 23px/1.4 var(--garden-display); max-width: 250px; }
.footer-garden-paths h2 { font: 700 17px/1.4 var(--garden-reading); margin-bottom: 15px; letter-spacing: 0; }
.footer-garden-paths ul { list-style: none; padding: 0; }
.footer-garden-paths a { display: inline-block; font-size: 16px; padding-block: 7px; }
.summer-footer-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; border-top: 1px solid var(--garden-rule); margin-top: 40px; padding-top: 28px; font-size: 16px; line-height: 1.6; }
.summer-footer-facts p + p { margin-top: 16px; }
.garden-colophon { display: flex; justify-content: space-between; gap: 25px; font-size: 16px; border-top: 1px solid var(--garden-rule); margin-top: 30px; padding-top: 20px; }
.garden-colophon a { padding-block: 4px; }
.garden-error .quiet-hero { padding-bottom: 15px; }
@media (min-width: 1500px) { .garden-width { width: min(1248px, calc(100% - 192px)); } }
@media (max-width: 1050px) {
  .garden-width { width: calc(100% - 72px); }
  .garden-mast { grid-template-columns: 1fr 195px 1fr; }
  .summer-sign { width: 195px; }
  .mast-links { gap: 18px; }
  .mast-note { max-width: 150px; }
  .garden-hero { gap: 40px; }
  .garden-photo object, .garden-home .garden-photo object { height: 515px; }
  .reading-garden { grid-template-columns: 180px minmax(0, 1fr); gap: 55px; }
  .home-chapter > .chapter-intro, .closing-walk { gap: 55px; }
  .goal-paths { gap: 18px; }
  .goal-paths .garden-photo object { height: 220px; }
  .goal-paths h3 { font-size: 22px; }
}
@media (max-width: 760px) {
  body { font-size: 17px; line-height: 1.65; }
  .garden-width { width: calc(100% - 48px); }
  .garden-mast { min-height: 79px; display: flex; justify-content: space-between; gap: 20px; }
  .summer-sign { width: 162px; }
  .mast-note, .mast-links { display: none; }
  .pocket-garden { display: block; font-size: 16px; }
  .pocket-garden summary { padding: 12px 0 12px 12px; cursor: pointer; }
  .pocket-garden nav { position: absolute; top: 79px; right: 0; left: 0; z-index: 10; background: var(--rose-air); border-bottom: 1px solid var(--mulberry); padding: 18px 24px 25px; display: grid; grid-template-columns: 1fr 1fr; gap: 7px 22px; }
  .pocket-garden:not([open]) nav { display: none; }
  .pocket-garden nav a { padding: 10px 0; }
  .garden-crumbs { font-size: 16px; padding-top: 16px; }
  .garden-hero { display: flex; flex-direction: column; padding-top: 27px; padding-bottom: 35px; gap: 29px; align-items: stretch; }
  .hero-welcome { font-size: 16px; margin-bottom: 13px; }
  .garden-home h1 { font-size: 36px; line-height: 1.13; letter-spacing: -.035em; }
  .garden-compound h1, .garden-goal h1, .garden-about h1 { font-size: 38px; line-height: 1.15; }
  .hero-intro { font-size: 17px; line-height: 1.5; margin-top: 18px; }
  .care-invitation { margin-top: 21px; max-width: none; }
  .care-link { min-height: 53px; padding: 13px 17px; font-size: 17px; line-height: 1.35; }
  .care-context, .summer-disclosure { font-size: 16px; line-height: 1.45; margin-top: 10px; }
  .garden-photo object, .garden-home .garden-photo object { height: 385px; border-radius: 190px 190px 0 0; }
  .garden-home .garden-photo object { height: 410px; }
  .garden-photo figcaption { font-size: 16px; margin-top: 12px; }
  .garden-thought { padding-block: 22px; gap: 20px; align-items: flex-start; }
  .garden-thought img { width: 52px; flex-basis: 52px; }
  .garden-thought p { font-size: 21px; line-height: 1.5; }
  .reading-garden { display: flex; flex-direction: column; gap: 34px; padding-top: 35px; padding-bottom: 8px; }
  .garden-bookmark { width: 100%; padding-bottom: 25px; border-bottom: 1px solid var(--garden-rule); }
  .garden-bookmark ol { display: grid; gap: 12px 20px; grid-template-columns: 1fr 1fr; }
  .garden-bookmark li + li { margin-top: 0; }
  .garden-bookmark img { display: none; }
  .garden-section { margin-bottom: 37px; }
  .garden-section h2 { margin-bottom: 18px; }
  .garden-section li + li { margin-top: 14px; }
  .home-chapter { padding-top: 45px; padding-bottom: 5px; }
  .home-chapter > .chapter-intro { display: block; margin-bottom: 25px; }
  .chapter-intro > div { margin-top: 20px; }
  .goal-paths { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px 20px; }
  .goal-paths .garden-photo object { height: 220px; border-radius: 100px 100px 0 0; }
  .goal-paths h3 { font-size: 23px; }
  .goal-paths p { font-size: 16px; }
  .guide-flowerbed { grid-template-columns: 1fr; }
  .guide-flowerbed a { padding-block: 24px; }
  .garden-care-steps { grid-template-columns: 1fr; gap: 30px; padding-top: 20px; padding-bottom: 10px; }
  .garden-care-steps li { display: grid; grid-template-columns: 48px 1fr; gap: 15px; }
  .garden-care-steps .step-hand { grid-row: 1 / 3; font-size: 32px; }
  .garden-care-steps h3 { margin-bottom: 0; }
  .garden-care-steps p { grid-column: 2; }
  .quiet-hero { padding-top: 27px; padding-bottom: 15px; }
  .quiet-hero h1 { font-size: 39px; line-height: 1.14; }
  .quiet-hero + .reading-garden { padding-top: 28px; }
  .garden-faq { padding-top: 20px; padding-bottom: 12px; }
  .garden-faq summary { font-size: 23px; padding-right: 5px; }
  .garden-dictionary { grid-template-columns: 1fr; gap: 28px; padding-top: 27px; padding-bottom: 8px; }
  .garden-dictionary dt { font-size: 27px; }
  .garden-sources { margin-bottom: 30px; }
  .garden-closing { padding-block: 36px; margin-top: 30px; }
  .closing-walk { display: block; }
  .closing-walk > div > p { margin-top: 18px; }
  .closing-walk img { display: none; }
  .closing-walk .care-invitation { margin-top: 24px; }
  .garden-footer { padding-top: 35px; }
  .footer-garden-paths { grid-template-columns: 1fr 1fr; gap: 30px 24px; }
  .footer-brand { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 15px 30px; }
  .summer-footer-sign { width: 175px; }
  .footer-line { margin-top: 0; font-size: 21px; }
  .summer-footer-facts { grid-template-columns: 1fr; gap: 22px; margin-top: 30px; padding-top: 25px; }
  .garden-colophon { display: block; }
  .garden-colophon p { margin-bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
@media print { .pocket-garden, .garden-bookmark { display: none; } .garden-hero, .reading-garden, .closing-walk { display: block; } .garden-photo { max-width: 280px; margin-top: 25px; } body { background: #FFFFFF; } a { text-decoration: underline; } }
