
:root{--navy:#0b2e5f;--pink:#ef4f87;--teal:#178a8d;--cream:#fffaf5;--ink:#263246;--line:#eadde2}
*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.6}
a{color:var(--navy)}.wrap{max-width:1100px;margin:auto;padding:0 24px}.head{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0}
.nav{min-height:72px;display:flex;justify-content:space-between;align-items:center;gap:18px}.brand{text-decoration:none;font-weight:900;color:var(--navy)}
.brand span{color:var(--pink);font-family:Georgia,serif;font-style:italic}nav{display:flex;gap:16px;flex-wrap:wrap}nav a{text-decoration:none;font-weight:700;font-size:.9rem}
.hero,.pagehero{background:#fff;padding:72px 0}.pagehero{padding:52px 0;border-bottom:1px solid var(--line)}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--teal);font-size:.8rem;font-weight:900}
h1,h2,h3{color:var(--navy);line-height:1.15}h1{font-size:clamp(3rem,7vw,6rem);margin:.2em 0}.script{color:var(--pink);font-family:Georgia,serif;font-style:italic}
.lead{font-size:1.25rem;max-width:760px}.section{padding:64px 0}.alt{background:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 7px 22px rgba(11,46,95,.05)}.alt .card{background:var(--cream)}
.btn{display:inline-block;padding:11px 17px;border:2px solid var(--navy);border-radius:999px;text-decoration:none;font-weight:800;margin-right:8px}
.primary{background:var(--navy);color:#fff}.quote{border-left:5px solid var(--pink);padding-left:18px;font:1.3rem Georgia,serif;color:var(--navy)}
.ribbon{background:var(--navy);color:#fff;border-radius:22px;padding:30px}.ribbon h2{color:#fff}.footer{background:var(--navy);color:#fff;padding:40px 0}.footer h3{color:#fff}
.tag{display:inline-block;background:#f7eef2;border-radius:999px;padding:5px 10px;font-weight:800;font-size:.75rem;margin:3px}
@media(max-width:800px){.grid,.grid4{grid-template-columns:1fr 1fr}nav{display:none}}@media(max-width:560px){.grid,.grid4{grid-template-columns:1fr}}

.banner{background:#fff;padding:26px 0 0}.banner img{display:block;width:100%;max-height:520px;object-fit:contain;border-radius:22px;box-shadow:0 12px 35px rgba(11,47,91,.12)}.narrow{max-width:850px}.welcome{text-align:center}.welcome h1{font-size:clamp(2rem,5vw,3.4rem);color:#0b2f5b}.heart{color:#ed3b76}.feature{display:grid;grid-template-columns:minmax(240px,390px) 1fr;gap:55px;align-items:center}.feature img,.article-head img{width:100%;border-radius:18px;box-shadow:0 14px 34px rgba(11,47,91,.16)}.feature h2{font-size:clamp(2.2rem,5vw,4rem);margin:.2em 0;color:#0b2f5b}.article-hero{background:#fff5f8;padding:55px 0}.article-head{display:grid;grid-template-columns:1.2fr 320px;gap:50px;align-items:center}.article-head h1{font-size:clamp(2.8rem,7vw,5.2rem);margin:.15em 0;color:#0b2f5b}.article p{font-size:1.08rem;line-height:1.75}.article h2{color:#0b2f5b}.callout,.cartbox{margin:36px 0;padding:28px;border-radius:22px;background:#eefafa;border-left:7px solid #23a6a6}.cartbox{background:#fff3f7;border-left-color:#ed3b76;text-align:center}.hack{padding:18px 22px;border-radius:15px;background:#fff7d9}.small{font-size:.95rem!important}@media(max-width:760px){.feature,.article-head{grid-template-columns:1fr}.feature{gap:28px}.article-head img{max-width:320px;margin:auto}.banner{padding-top:10px}}

.pennies-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:40px;align-items:center;margin-top:28px}
.pennies-image{margin:0}
.pennies-image img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 12px 30px rgba(10,42,78,.13)}
@media(max-width:800px){.pennies-layout{grid-template-columns:1fr}}

.family-fun-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:40px;align-items:center;margin:28px 0 34px}
.family-fun-image{margin:0}
.family-fun-image img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 12px 30px rgba(10,42,78,.13)}
.family-fun-ideas{padding-left:0;list-style:none}
.family-fun-ideas li{margin:12px 0;padding-left:28px;position:relative}
.family-fun-ideas li:before{content:'♥';position:absolute;left:0;color:var(--pink)}
.old-memory-block{margin-top:28px}
.memory-examples{font-weight:700;line-height:1.8}
@media(max-width:800px){.family-fun-layout{grid-template-columns:1fr}}

.porch-light-feature{background:linear-gradient(180deg,#fffaf5 0%,#fff 100%)}
.porch-light-layout{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr);gap:44px;align-items:center;margin-top:28px}
.porch-light-image{margin:0}
.porch-light-image img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 12px 32px rgba(10,42,78,.14)}
.porch-light-copy{font-size:1.06rem}
.porch-intro{font-style:italic}
.porch-quote{margin:20px 0 24px;padding:22px 24px;border-left:5px solid #d77a3c;background:#fff4e8;font-size:1.28rem;line-height:1.45}
.porch-light-copy p{margin:11px 0}
.porch-close{margin-top:26px!important}
.porch-final{font-size:1.22rem;color:var(--navy)}
@media(max-width:800px){.porch-light-layout{grid-template-columns:1fr}}

.protect-peace-feature{background:#fff}
.protect-peace-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:44px;align-items:center;margin-top:28px}
.protect-peace-image{margin:0}
.protect-peace-image img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 12px 32px rgba(10,42,78,.13)}
.protect-peace-copy{font-size:1.06rem}
.peace-checklist{margin:20px 0;padding:18px 22px;background:#fff7f8;border-left:5px solid #e85c87;border-radius:0 12px 12px 0}
.peace-checklist p{margin:5px 0}
.peace-you{font-size:1.55rem;color:var(--navy);margin:12px 0 20px}
.peace-callout{margin:22px 0;padding:20px 24px;text-align:center;background:#f8edf1;font-size:1.3rem;color:var(--navy);border-radius:14px}
.peace-final{font-size:1.25rem;color:#d94f7c;margin-top:24px}
@media(max-width:800px){.protect-peace-layout{grid-template-columns:1fr}}

.easier-living-feature{background:linear-gradient(180deg,#fffdf9 0%,#fff 100%)}
.easier-living-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:44px;align-items:center;margin-top:28px}
.easier-living-image{margin:0}
.easier-living-image img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 12px 32px rgba(10,42,78,.12)}
.easier-living-copy{font-size:1.06rem}
.easier-question{margin:20px 0;padding:20px 24px;text-align:center;background:#f3f7ef;border-left:5px solid #4e7a3d;border-radius:0 12px 12px 0;font-size:1.22rem;color:var(--navy)}
.summer-reminder{margin-top:32px;padding:26px;background:#fff6ed;border-radius:16px}
.summer-reminder h3{margin-top:0;color:var(--navy);font-size:1.35rem}
.summer-list{line-height:1.75}
.summer-close{margin-bottom:0;color:#d94f7c}
@media(max-width:800px){.easier-living-layout{grid-template-columns:1fr}}

.monthly-challenge-feature{background:linear-gradient(180deg,#fff 0%,#fff8f6 100%)}
.monthly-challenge-feature .wrap{max-width:900px}
.monthly-challenge-card{margin-top:26px;padding:36px 42px;background:#fff;border:1px solid #eadfd8;border-radius:20px;box-shadow:0 12px 30px rgba(10,42,78,.08);text-align:center}
.monthly-challenge-card .lead{font-size:1.3rem;color:var(--navy)}
.welcome-someone-list{margin:24px auto;max-width:540px}
.welcome-someone-list p{margin:7px 0;font-size:1.1rem}
.hospitality-line{margin-top:30px;font-size:1.2rem;color:var(--navy)}
.coffee-ready{margin-top:22px;font-size:1.15rem;color:#d94f7c;font-weight:700}
@media(max-width:650px){.monthly-challenge-card{padding:28px 22px}}


/* Gather With Me */
.gather-hero{background:linear-gradient(135deg,#fffaf5 0%,#fff3f7 100%)}
.gather-hero h2{font:italic 1.7rem Georgia,serif;margin:.2rem 0 1rem;color:var(--navy)}
.gather-promise{font-size:1.35rem;color:var(--pink);margin-top:26px}
.gather-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:30px}
.gather-card{display:flex;flex-direction:column;align-items:flex-start}
.gather-card p{flex:1}.gather-icon{font-size:2rem}.gather-wide{grid-column:1/-1}
.gather-reassure{text-align:center;padding:42px;background:#fff;border-radius:24px;box-shadow:0 10px 30px rgba(11,46,95,.06)}
.gather-opportunity{background:linear-gradient(180deg,#fff7f9,#fffaf5)}
.gather-opportunity h2{font-size:clamp(2rem,5vw,3.2rem)}
.gather-form-card{text-align:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:0 10px 30px rgba(11,46,95,.07)}
.gather-form-card .small{margin-top:16px;color:#657184}
@media(max-width:700px){.gather-grid{grid-template-columns:1fr}.gather-wide{grid-column:auto}.gather-card .btn{width:100%;text-align:center;margin-right:0}.gather-reassure,.gather-form-card{padding:28px 20px}}

/* Meet Lissa: keep the family portrait intentionally modest in size */
.about-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,280px);gap:42px;align-items:center}
.about-photo{margin:0;text-align:center}
.about-photo img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 12px 30px rgba(10,42,78,.12)}
.family-portrait-small{max-width:250px;justify-self:center}
.about-photo figcaption{margin-top:10px;font-size:.9rem;color:#657184}
.about-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);gap:44px;align-items:center}
.about-hats{margin:0}.about-hats img{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 12px 30px rgba(10,42,78,.12)}
@media(max-width:800px){.about-intro,.about-story{grid-template-columns:1fr}.family-portrait-small{max-width:220px}.about-hats{max-width:520px;margin:auto}}
