:root{--navy:#283f61;--ink:#334459;--gold:#d99037;--coral:#b65a67;--pale:#fff7e9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdfa;color:var(--ink);font:17px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}a{color:#315f75;text-underline-offset:4px}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.skip{position:absolute;top:-100px;left:10px;padding:12px;background:white;z-index:5}.skip:focus{top:10px}header{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:23px clamp(25px,6vw,88px);max-width:1400px;margin:auto}header nav{display:flex;gap:25px;flex-wrap:wrap}header nav a{text-decoration:none;font-weight:750;font-size:.88rem}.brand{font-size:1.52rem;color:var(--navy);font-weight:850;letter-spacing:-.04em;text-decoration:none}.brand span{font-size:1.6rem;color:var(--gold);margin-right:8px}.brand em{font-style:normal;color:var(--coral)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;min-height:590px;padding:clamp(50px,7vw,100px) max(27px,calc((100vw - 1240px)/2));background:linear-gradient(125deg,#fff2d9,#f6e8f2 65%,#ecf5f0)}.eyebrow{color:#9a5b39;font-size:.73rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.hero h1{font:600 clamp(3.4rem,6.3vw,6.6rem)/1.07 Georgia,serif;letter-spacing:-.055em;color:var(--navy);margin:19px 0}.hero h1 em{font-style:normal;color:var(--coral)}.lead{font-size:1.2rem;max-width:570px}.tagline{font-weight:850;color:#9c5d34}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;background:var(--navy);border:1px solid var(--navy);color:white;text-decoration:none;padding:13px 22px;border-radius:11px;min-height:49px;font-weight:760}.button.outline{background:white;color:var(--navy);border-color:#b6bec1}.art{position:relative;height:480px;display:grid;place-items:center}.ring{position:absolute;aspect-ratio:1;border-radius:50%;border:3px solid #d899a475}.r1{width:40%;background:#fff3d8}.r2{width:67%;border-color:#a4cdbb}.r3{width:95%;border-color:#e4c58c;box-shadow:0 0 0 19px #ffffff48}.sun{width:125px;height:125px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#ffe6a0,#f2aa4c);font-size:5rem;color:white;box-shadow:0 0 55px #f3b869}.spark{position:absolute;font-size:2.3rem;color:var(--coral)}.s1{top:8%;left:22%}.s2{top:25%;right:10%;color:#e6a33f}.s3{bottom:12%;left:16%;color:#77aca3}.section{max-width:1240px;margin:auto;padding:clamp(65px,7vw,105px) 28px}.section h2,.closing h2{font:600 clamp(2rem,4vw,3.5rem)/1.17 Georgia,serif;color:var(--navy);margin:16px 0 27px;letter-spacing:-.03em}.intro{text-align:center;max-width:880px}.intro p:last-child{font-size:1.13rem}.alt{max-width:none;background:#f9f1eb;padding-inline:max(28px,calc((100vw - 1184px)/2))}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid article{background:white;border:1px solid #eadbdc;border-radius:20px;padding:30px}.grid article span{font-weight:850;color:var(--coral)}.grid article h3{font:650 1.6rem Georgia,serif;color:var(--navy)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.ideas{padding:30px;border:1px solid #eadac0;background:var(--pale);border-radius:21px}.ideas h3{margin-top:0;color:var(--navy)}.ideas div{border-top:1px solid #e5d6c1;padding:11px 0}.ideas a{display:block;margin-top:20px;font-weight:800}.note{font-size:.85rem;color:#66717b}.closing{background:var(--navy);color:white;padding:80px 25px;text-align:center}.closing h2{color:white}.closing .eyebrow{color:#f8c38e}.closing p:not(.eyebrow){max-width:660px;margin:0 auto 25px}.closing .button{background:#f9d8a4;color:var(--navy);border-color:#f9d8a4}footer{background:#f1eaf1;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:27px clamp(25px,6vw,88px);font-size:.87rem}@media(max-width:860px){.hero,.split{grid-template-columns:1fr}.art{height:345px}.grid{grid-template-columns:1fr}}@media(max-width:530px){header{align-items:flex-start;flex-direction:column}.art{height:300px}.sun{width:85px;height:85px;font-size:3.8rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Design refinement: balanced rhythm, premium card surfaces, polish and keyboard access */
:root{font-synthesis:none}body{-webkit-font-smoothing:antialiased}header{position:relative;z-index:2;background:#fffdfaec}header nav a{border-bottom:2px solid transparent;padding-bottom:5px;transition:border-color .2s,color .2s}header nav a:hover,header nav a:focus-visible{border-bottom-color:var(--gold,var(--orange,#d4773e))}.hero{position:relative;isolation:isolate}.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 3% 3%,#ffffffa3,transparent 36%)}.hero h1{text-wrap:balance}.section h2,.closing h2{text-wrap:balance}.cards article,.grid article{position:relative;box-shadow:0 18px 38px #203f5012;border:1px solid #cfdedc;transition:transform .2s,box-shadow .2s}.cards article::before,.grid article::before{content:"";position:absolute;top:0;left:28px;right:28px;height:4px;background:linear-gradient(90deg,var(--gold,var(--orange,#d4773e)),var(--coral,#de9863));border-radius:0 0 5px 5px}.cards article:hover,.grid article:hover{transform:translateY(-4px);box-shadow:0 22px 40px #203f5020}.button{transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 22px #1639492a}.ideas{box-shadow:0 14px 34px #35434e0f}.art,.hero-art{filter:drop-shadow(0 18px 28px #3a5c6520)}.closing{background-image:radial-gradient(circle at 80% 10%,#ffffff12,transparent 40%)}@media(max-width:600px){header nav{gap:12px 20px}.hero{padding-top:50px;padding-bottom:55px}.hero h1{font-size:clamp(3rem,12vw,4.3rem)}.section{padding-top:62px;padding-bottom:62px}.actions .button{width:100%;justify-content:center}.cards article,.grid article{padding:26px}}@media(prefers-reduced-motion:reduce){.button,.cards article,.grid article,header nav a{transition:none}.cards article:hover,.grid article:hover,.button:hover{transform:none}}

/* Custom vector illustration. Accessible text remains in the hero copy. */
.hero-art,.art{background:url("./joy-sunburst.svg") center/contain no-repeat;isolation:isolate;filter:none}
.hero-art >*,.art >*{display:none}
@media(max-width:850px){.hero-art,.art{min-height:300px}}
