:root{--ink:#171713;--soft:#5b5d56;--paper:#f5f2eb;--cream:#e9e3d8;--warm:#d7cfc2;--deep:#20231e;--deep2:#11130f;--line:rgba(23,23,19,.16);--bronze:#9a7654}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
a{color:inherit}
img{display:block;width:100%;height:auto}
h1,h2,h3,blockquote{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}
.kicker{margin:0 0 18px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;font-weight:700}
.header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:19px 4vw;background:rgba(245,242,235,.96);border-bottom:1px solid var(--line)}
.brand{text-decoration:none;line-height:1;display:flex;flex-direction:column}
.brand strong{font-size:14px;letter-spacing:.23em}
.brand span{font-size:9px;color:var(--soft);margin-top:5px}
.nav{display:flex;align-items:center;gap:18px;font-size:10.5px}
.nav a{text-decoration:none}
.nav .active{color:var(--bronze)}
.nav .contact{padding:10px 13px;border:1px solid var(--ink)}
.menu{display:none;border:0;background:none;width:42px;height:42px}
.menu span{display:block;height:1px;background:var(--ink);margin:7px 0}
.menu-overlay{display:none}
.breadcrumb{padding:20px 7vw;border-bottom:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--soft)}
.breadcrumb a{text-decoration:none}
.article-hero{padding:86px 7vw 72px}
.article-hero-wrap{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr .78fr;gap:7vw;align-items:center}
.article-hero .kicker{color:var(--bronze)}
.article-hero h1{max-width:780px;margin:0;font-size:clamp(58px,7.1vw,102px);line-height:.91}
.article-hero .dek{max-width:650px;margin:27px 0 0;color:var(--soft);font-size:19px;line-height:1.72}
.article-meta{margin-top:25px;color:var(--soft);font-size:9px;text-transform:uppercase;letter-spacing:.13em}
.hero-photo{margin:0;aspect-ratio:4/5;max-height:690px;overflow:hidden;background:var(--cream)}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.article-body{max-width:880px;margin:0 auto;padding:0 30px 82px}
.article-body p{margin:0 0 23px;color:#30322d;font-size:18px;line-height:1.82}
.article-body h2{margin:66px 0 22px;font-size:clamp(37px,4.4vw,51px);line-height:1.02}
.article-body ul{margin:0 0 26px;padding-left:24px;color:#30322d;font-size:17px;line-height:1.75}
.article-body li{margin:7px 0}
.article-image{margin:42px 0 48px}
.article-image img{width:100%;max-height:720px;object-fit:contain;background:var(--cream)}
.article-image figcaption{margin-top:12px;color:var(--soft);font-size:12px;line-height:1.6}
.pullquote{margin:52px 0;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,4vw,42px);line-height:1.25}
.pullquote p{margin:0;color:var(--ink);font:inherit;line-height:inherit}
.tile-pullquote{max-width:760px;margin:52px auto;padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,"Times New Roman",serif;font-size:clamp(24px,3vw,30px);line-height:1.35;letter-spacing:-.02em}
.tile-pullquote p{margin:0;color:var(--ink);font:inherit;line-height:inherit}
.family-note{margin:42px 0;padding:32px;background:var(--cream);border-left:3px solid var(--bronze)}
.family-note p:last-child{margin-bottom:0}
.approval-list{display:grid;grid-template-columns:repeat(5,1fr);margin:30px 0 38px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.approval-list div{padding:17px 13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:19px}
.article-funnel{padding:74px max(6vw,24px);border-top:1px solid var(--line)}
.funnel-inner{max-width:1020px;margin:0 auto}
.share-section{background:var(--cream)}
.article-funnel h2{max-width:850px;margin:0 0 18px;font-size:clamp(38px,5.2vw,64px);line-height:.99}
.article-funnel p{max-width:740px;color:var(--soft);font-size:16px;line-height:1.78;margin:0 0 22px}
.funnel-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:26px}
.funnel-button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 20px;border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.funnel-button.outline{background:transparent;color:var(--ink)}
.funnel-status{min-height:20px;margin:13px 0 0!important;font-size:12px!important}
.signup-section{background:#fff}
.signup-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;max-width:680px;margin-top:24px}
.signup-form input[type=email]{min-width:0;min-height:52px;padding:0 15px;border:1px solid rgba(23,23,19,.3);background:var(--paper);color:var(--ink);font:inherit}
.signup-form button:disabled,.funnel-button:disabled{opacity:.6;cursor:wait}
.service-section{background:var(--deep);color:#fff}
.service-section .kicker{color:#d4b899}
.service-section h2{max-width:760px}
.service-section p{color:rgba(255,255,255,.72)}
.service-section .funnel-button{background:var(--bronze);border-color:var(--bronze)}
.service-section .funnel-button.outline{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}
.more-section{background:var(--paper)}
.more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:32px;background:var(--line);border:1px solid var(--line)}
.more-card{min-height:215px;padding:25px;background:var(--paper);text-decoration:none}
.more-card span{color:var(--bronze);font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.more-card h3{margin:13px 0;font-size:27px;line-height:1.08}
.more-card p{margin:0;font-size:13px;line-height:1.65}
.footer{background:#0d0f0c;color:#d9dcd4;padding:42px 4vw}
.footer-top{display:flex;justify-content:space-between;gap:30px}
.footer-brand strong{font-size:13px;letter-spacing:.22em}
.footer-brand span{display:block;color:#858980;font-size:9px;margin-top:5px}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;font-size:11px}
.footer-links a{text-decoration:none;color:#b8bbb4}
.footer-bottom{margin-top:40px;padding-top:15px;border-top:1px solid rgba(255,255,255,.08);color:#74786f;font-size:9px;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:980px){
  .article-hero-wrap{grid-template-columns:1fr .8fr;gap:5vw}
  .article-hero h1{font-size:clamp(56px,7vw,78px)}
  .more-grid{grid-template-columns:1fr}
  .more-card{min-height:0}
}
@media(max-width:760px){
  .header{padding:16px 5vw}
  .brand span{display:none}
  .menu{display:block}
  .menu-overlay{position:fixed;z-index:35;top:62px;left:0;right:0;bottom:0;background:var(--paper)}
  .menu-overlay.open{display:block}
  .nav{display:none;position:fixed;z-index:41;top:62px;left:0;right:0;bottom:0;background:transparent;flex-direction:column;align-items:flex-start;padding:28px 5vw;font-size:15px;gap:20px;overflow-y:auto}
  .nav.open{display:flex}
  body.menu-open{overflow:hidden}
  .breadcrumb{padding:17px 6vw}
  .article-hero{padding:60px 6vw 48px}
  .article-hero-wrap{grid-template-columns:1fr;gap:35px}
  .article-hero h1{font-size:clamp(53px,13vw,70px)}
  .article-hero .dek{font-size:17px}
  .hero-photo{aspect-ratio:4/4.8;max-height:620px}
  .article-body{padding:0 6vw 70px}
  .article-body p{font-size:17px}
  .article-body h2{margin-top:54px}
  .article-image img{max-height:560px}
  .family-note{padding:23px}
  .approval-list{grid-template-columns:1fr}
  .approval-list div{padding:13px 16px}
  .article-funnel{padding:58px 6vw}
  .signup-form{grid-template-columns:1fr}
  .signup-form .funnel-button{width:100%}
  .footer-top{display:block}
  .footer-links{margin-top:26px}
}
