:root {
  --background:#f7f4ec; --foreground:#24231f; --card:#fffdf8; --card-foreground:#24231f;
  --popover:#fffdf8; --popover-foreground:#24231f; --primary:#6c1728; --primary-foreground:#fffaf2;
  --secondary:#e9e1d3; --secondary-foreground:#24231f; --muted:#eee9df; --muted-foreground:#6d685f;
  --accent:#a98545; --accent-foreground:#24231f; --destructive:#a4132d; --border:#d8d1c5;
  --input:#d8d1c5; --ring:#6c1728; --radius:0;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none} button,a{-webkit-tap-highlight-color:transparent}
h1,h2,h3,blockquote{font-family:Georgia,"Times New Roman",serif;font-weight:400}

.announcement{padding:10px 20px;color:#fffaf2;background:#6c1728;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-align:center;text-transform:uppercase}
.site-header,.blog-header{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 max(5vw,24px);background:#f7f4ec;border-bottom:1px solid #d8d1c5}
.brand{display:inline-flex;align-items:center;gap:12px;font-family:Georgia,"Times New Roman",serif;font-size:1.02rem;letter-spacing:.015em}
.brand-monogram{width:34px;height:34px;display:grid;place-items:center;color:#f7f4ec;background:#6c1728;border-radius:50%;font-family:Arial,sans-serif;font-size:.64rem;font-weight:700;letter-spacing:.05em}
nav{display:flex;gap:34px;font-size:.84rem} nav a,.header-social{transition:color .2s ease}
nav a:hover,nav a:focus-visible,.header-social:hover{color:#6c1728}.header-social{display:grid;place-items:center}

.hero{min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch;border-bottom:1px solid #d8d1c5}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:100px max(7vw,40px)}
.eyebrow{margin:0 0 22px;color:#81642e;font-size:.72rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
h1{max-width:720px;margin:0;font-size:clamp(3.5rem,6.2vw,7.1rem);line-height:.95;letter-spacing:-.055em}
.hero-text{max-width:610px;margin:30px 0 0;color:#68645d;font-size:1.05rem;line-height:1.75}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin-top:38px}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 25px;border:1px solid transparent;font-size:.84rem;font-weight:700}
.button-primary{color:#fffaf2;background:#6c1728}.button-primary:hover,.button-primary:focus-visible{background:#50101e}
.quiet-link,.underlined-link{display:inline-flex;align-items:center;gap:8px;padding-bottom:5px;border-bottom:1px solid #27251f;font-size:.85rem;font-weight:700}
.editorial-feature{min-height:620px;display:flex;flex-direction:column;justify-content:space-between;margin:34px 34px 34px 0;padding:clamp(34px,5vw,72px);color:#fffaf2;background:#6c1728}
.feature-topline,.feature-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.editorial-feature blockquote{max-width:560px;margin:80px 0;font-size:clamp(2.4rem,4vw,4.8rem);line-height:1.08;letter-spacing:-.03em}
.feature-footer{padding-top:20px;border-top:1px solid rgba(255,250,242,.45)}

.promise-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(5vw,24px);background:#fffdf8;border-bottom:1px solid #d8d1c5}
.promise-strip div{min-height:82px;display:flex;align-items:center;justify-content:center;gap:12px;color:#59554e;font-size:.8rem}
.promise-strip div+div{border-left:1px solid #d8d1c5}.promise-strip svg{color:#6c1728}
.daily-section{display:grid;grid-template-columns:.55fr 1fr .8fr;gap:70px;align-items:start;padding:140px max(7vw,24px);background:#f7f4ec}
.daily-number{color:#6c1728;font-family:Georgia,serif;font-size:clamp(7rem,14vw,13rem);line-height:.72;letter-spacing:-.08em}
.daily-copy h2,.section-heading h2,.about-title h2,.closing-section h2{margin:0;font-size:clamp(2.7rem,4.5vw,5rem);line-height:1.04;letter-spacing:-.04em}
.daily-copy>p:not(.eyebrow),.section-heading>p:last-child,.about-copy>p:first-child{color:#68645d;font-size:1rem;line-height:1.8}
.daily-copy>p:not(.eyebrow){max-width:590px;margin:25px 0 30px}
.daily-note{padding:30px 0;border-top:1px solid #a98545;border-bottom:1px solid #a98545}
.daily-note span{color:#81642e;font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.daily-note p{margin:22px 0 0;font-family:Georgia,serif;font-size:1.45rem;line-height:1.45}

.library-section{padding:135px max(7vw,24px);background:#eae4d9}.section-heading{max-width:820px;margin-bottom:70px}
.section-heading>p:last-child{max-width:620px;margin:25px 0 0}
.coming-card{display:grid;grid-template-columns:.55fr 1.25fr .35fr;gap:50px;align-items:center;min-height:340px;padding:55px;overflow:hidden;background:#fffdf8;border-top:1px solid #b7aea0;border-bottom:1px solid #b7aea0}
.coming-index{align-self:stretch;display:flex;align-items:flex-start;color:#8a8378;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-right:1px solid #d8d1c5}
.status{display:inline-block;color:#6c1728;font-size:.68rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.coming-copy h3{max-width:650px;margin:18px 0;font-size:clamp(2.2rem,4vw,4.4rem);line-height:1.06;letter-spacing:-.035em}
.coming-copy p{max-width:650px;margin:0;color:#68645d;line-height:1.75}
.coming-mark{color:#6c1728;font-family:Georgia,serif;font-size:clamp(4.5rem,8vw,8rem);opacity:.18}

.about-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:140px max(7vw,24px);background:#fffdf8}
.about-copy>p:first-child{margin:0}.about-quote{margin:48px 0 0;padding:32px 0 0;color:#6c1728;border-top:1px solid #d8d1c5;font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,3.1rem);line-height:1.25}
.closing-section{padding:120px 24px;color:#fffaf2;text-align:center;background:#6c1728}.closing-section .eyebrow{color:#d8b36a}
.closing-section>p:not(.eyebrow){max-width:560px;margin:24px auto 32px;color:rgba(255,250,242,.76);line-height:1.7}.button-light{color:#28251f;background:#f7f4ec}
footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px max(5vw,24px);background:#f7f4ec;border-top:1px solid #d8d1c5}
footer p,footer>a:last-child{color:#6f6a62;font-size:.74rem}

.blog-page{min-height:100vh;background:#f7f4ec}.blog-header .blog-back{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700}
.icon{width:1.15rem;height:1.15rem;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;line-height:1}
.empty-state{max-width:700px;margin:60px auto;padding:40px;text-align:center;background:#fffdf8;border:1px solid #d8d1c5}
.blog-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end;padding:115px max(7vw,24px) 90px;border-bottom:1px solid #d8d1c5}
.blog-hero h1{max-width:850px}.blog-hero>p:last-child{max-width:500px;margin:0 0 8px;color:#68645d;font-size:1.05rem;line-height:1.8}
.today-post{max-width:1120px;margin:80px auto;padding:clamp(38px,7vw,90px);text-align:center;background:#fffdf8;border:1px solid #d8d1c5}
.today-post>svg{margin:38px auto 24px;color:#a98545}.today-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 26px;color:#81642e;font-size:.69rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.today-post h2{max-width:800px;margin:0 auto;font-size:clamp(2.7rem,5vw,5.3rem);line-height:1.02;letter-spacing:-.04em}
.post-text{max-width:720px;margin:30px auto;color:#605c55;font-family:Georgia,serif;font-size:1.16rem;line-height:1.85}
.practice-box{max-width:680px;margin:38px auto;padding:30px;background:#eae4d9;text-align:left;border-left:3px solid #6c1728}
.practice-box span{color:#6c1728;font-size:.68rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.practice-box p{margin:11px 0 0;line-height:1.7}
.today-post blockquote{max-width:760px;margin:48px auto 0;color:#6c1728;font-size:clamp(1.8rem,3vw,3rem);line-height:1.3}
.archive-section{padding:100px max(6vw,24px) 140px}.archive-heading{max-width:760px;margin-bottom:55px}
.archive-heading h2{margin:0;font-size:clamp(2.7rem,4.5vw,4.8rem);line-height:1.05;letter-spacing:-.04em}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #b7aea0;border-left:1px solid #b7aea0}
.post-card{min-height:360px;display:flex;flex-direction:column;padding:34px;background:#fffdf8;border-right:1px solid #b7aea0;border-bottom:1px solid #b7aea0}
.card-meta{display:flex;justify-content:space-between;gap:12px;color:#81642e;font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.post-card h3{margin:35px 0 16px;font-size:1.9rem;line-height:1.1}.post-card>p{margin:0;color:#68645d;line-height:1.7}
.mini-affirmation{margin-top:auto;padding-top:25px;color:#6c1728;border-top:1px solid #d8d1c5;font-family:Georgia,serif;font-style:italic;line-height:1.5}

@media(max-width:900px){
  .site-header nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:85px 24px 65px}.editorial-feature{min-height:500px;margin:0 20px 20px}
  .daily-section{grid-template-columns:1fr 1fr;gap:45px}.daily-number{grid-row:span 2}.coming-card{grid-template-columns:.35fr 1.3fr}.coming-mark{display:none}
  .about-section{gap:55px}.blog-hero{grid-template-columns:1fr;gap:32px}.post-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .announcement{font-size:.62rem}.site-header,.blog-header{height:68px;padding:0 18px}.header-social{display:none}.blog-header .brand>span:last-child{display:none}
  h1{font-size:clamp(3.35rem,17vw,5rem)}.editorial-feature{min-height:430px;padding:34px 28px}.editorial-feature blockquote{margin:45px 0;font-size:2.5rem}.feature-footer{align-items:flex-start;flex-direction:column}
  .promise-strip{grid-template-columns:1fr;padding:0 22px}.promise-strip div{justify-content:flex-start;min-height:64px}.promise-strip div+div{border-left:0;border-top:1px solid #d8d1c5}
  .daily-section{grid-template-columns:1fr;padding:95px 22px}.daily-number{grid-row:auto}.library-section,.about-section{padding:95px 22px}
  .coming-card{grid-template-columns:1fr;gap:28px;padding:35px 24px}.coming-index{min-height:40px;border-right:0;border-bottom:1px solid #d8d1c5}
  .about-section{grid-template-columns:1fr;gap:45px}.closing-section{padding:95px 22px}footer{flex-direction:column;text-align:center}
  .blog-hero{padding:80px 22px 65px}.today-post{margin:30px 14px 70px;padding:45px 22px}.archive-section{padding:70px 16px 100px}.post-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
