:root{--blue:#7bafd4;--blue-deep:#2878b5;--blue-soft:#eaf7ff;--sky:#c8ecff;--yellow:#ffd966;--ink:#12324a;--muted:#557286;--white:#fff;--line:rgba(40,120,181,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:"Outfit",sans-serif}a{color:inherit}.site-header{position:absolute;z-index:2;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:28px clamp(24px,5vw,72px)}.wordmark{font-size:1rem;font-weight:700;letter-spacing:.24em;text-decoration:none}.site-header nav{display:flex;gap:28px}.site-header nav a{font-size:.86rem;font-weight:500;text-decoration:none}.hero{position:relative;min-height:760px;padding:170px clamp(24px,8vw,120px) 90px;background:linear-gradient(135deg,#fff 0%,var(--blue-soft) 52%,var(--sky) 100%);overflow:hidden}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:700;color:var(--blue-deep)}.hero h1{position:relative;z-index:1;max-width:950px;margin:28px 0 24px;font-size:clamp(4rem,10vw,9rem);font-weight:700;line-height:.88;letter-spacing:-.055em}.hero h1 em{color:var(--blue-deep);font-style:normal;font-weight:700}.intro{position:relative;z-index:1;max-width:560px;margin:0 0 38px;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.55;color:var(--muted)}.text-link{position:relative;z-index:1;display:inline-flex;gap:10px;align-items:center;padding:13px 19px;border-radius:999px;background:var(--blue-deep);color:#fff;text-decoration:none;font-size:.84rem;font-weight:600;box-shadow:0 12px 28px rgba(40,120,181,.24)}.sun-mark{position:absolute;width:min(34vw,470px);aspect-ratio:1;right:-3vw;bottom:-10vw;border:42px solid rgba(255,255,255,.62);border-radius:50%;box-shadow:0 0 0 24px rgba(123,175,212,.16),0 0 0 50px rgba(255,217,102,.18)}.sun-mark:before{content:"";position:absolute;width:26%;aspect-ratio:1;left:37%;top:37%;border-radius:50%;background:var(--yellow);box-shadow:0 10px 35px rgba(255,191,31,.3)}.story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:130px clamp(24px,8vw,120px);background:var(--blue);color:#fff}.story .eyebrow{color:#fff}.story h2,.chapters h2{margin:25px 0 0;font-weight:700;font-size:clamp(2.7rem,5vw,5rem);line-height:1;letter-spacing:-.04em}.story-copy{padding-top:45px;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.6}.story-copy p:first-child{margin-top:0}.chapters{padding:120px clamp(24px,8vw,120px);background:#f9fdff}.chapters>h2{margin-bottom:65px}.chapter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.chapter-grid article{min-height:260px;padding:26px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(40,120,181,.08);transition:transform .2s ease,box-shadow .2s ease}.chapter-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(40,120,181,.14)}.chapter-grid article:nth-child(2){background:var(--blue-soft)}.chapter-grid article:nth-child(3){background:#fff9dc}.chapter-grid article:nth-child(4){background:#eefbea}.chapter-grid span{display:grid;place-items:center;width:34px;aspect-ratio:1;border-radius:50%;background:var(--blue-deep);color:#fff;font-size:.7rem;font-weight:700}.chapter-grid h3{margin:48px 0 14px;font-size:1.5rem;font-weight:700}.chapter-grid p{font-size:.9rem;line-height:1.65;color:var(--muted)}footer{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;padding:42px clamp(24px,5vw,72px);background:var(--blue-deep);color:#fff}footer p{margin:0;text-align:center;font-size:1rem;font-weight:500}footer p:last-child{text-align:right;font-size:.72rem;opacity:.72}@media(max-width:760px){.site-header nav{display:none}.hero{min-height:680px;padding-top:145px}.story{grid-template-columns:1fr;padding-block:90px}.story-copy{padding-top:0}.chapter-grid{grid-template-columns:1fr 1fr}.sun-mark{width:65vw;right:-26vw;bottom:-10vw;border-width:24px}footer{grid-template-columns:1fr;gap:18px;text-align:center}footer p,footer p:last-child{text-align:center}}@media(max-width:520px){.chapter-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(3.5rem,18vw,5.5rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.chapter-grid article{transition:none}}
.hero{padding-top:160px}.hero h1{max-width:none;margin:18px 0 0;font-size:clamp(5rem,15vw,13rem);line-height:.82;letter-spacing:-.065em;color:var(--blue-deep)}.hero-tagline{position:relative;z-index:1;margin:18px 0 24px;font-size:clamp(2rem,4.5vw,4.4rem);font-weight:600;line-height:1;letter-spacing:-.04em}.hero-tagline em{color:var(--blue-deep);font-style:normal}
.businesses{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding:120px clamp(24px,8vw,120px);background:#fff}.businesses-heading h2{margin:24px 0;font-size:clamp(2.6rem,5vw,5rem);line-height:1;letter-spacing:-.045em}.businesses-heading>p:last-child{max-width:500px;color:var(--muted);font-size:1.05rem;line-height:1.65}.business-folder{position:relative;margin-top:28px;padding:38px 24px 24px;border-radius:0 28px 28px 28px;background:var(--blue-soft);box-shadow:0 20px 60px rgba(40,120,181,.12)}.folder-tab{position:absolute;left:0;top:-28px;padding:12px 32px;border-radius:18px 18px 0 0;background:var(--blue-soft);color:var(--blue-deep);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.business-card{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:28px;border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(40,120,181,.1)}.business-monogram{display:grid;place-items:center;width:70px;aspect-ratio:1;border-radius:20px;background:var(--blue);color:#fff;font-size:1.25rem;font-weight:700}.business-owner{margin:0 0 5px;color:var(--blue-deep);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.business-card h3{margin:0 0 8px;font-size:1.55rem}.business-card div>p:last-child{margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.link-placeholder{padding:11px 15px;border-radius:999px;background:#edf2f5;color:#738895;font-size:.75rem;font-weight:600;white-space:nowrap}.future-business{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:16px;padding:19px;border:1px dashed rgba(40,120,181,.3);border-radius:18px;color:var(--muted);font-size:.84rem}.future-business span{font-size:1.2rem;color:var(--blue-deep)}.future-business p{margin:0}@media(max-width:900px){.businesses{grid-template-columns:1fr}.business-card{grid-template-columns:auto 1fr}.link-placeholder{grid-column:1/-1;text-align:center}}@media(max-width:520px){.business-card{grid-template-columns:1fr}.business-monogram{width:58px}.link-placeholder{grid-column:auto}.businesses{padding-block:90px}}
.business-link{padding:12px 16px;border-radius:999px;background:var(--blue-deep);color:#fff;text-decoration:none;font-size:.76rem;font-weight:700;white-space:nowrap}.photo-ready{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.photo-ready>div{display:grid;place-items:center;min-height:125px;padding:16px;border:1px dashed rgba(40,120,181,.32);border-radius:18px;background:rgba(255,255,255,.55);color:var(--muted);text-align:center}.photo-ready span{display:grid;place-items:center;width:34px;aspect-ratio:1;border-radius:50%;background:#fff;color:var(--blue-deep);font-size:1.15rem}.photo-ready p{margin:8px 0 0;font-size:.72rem}.ginger-card{margin-top:14px}.ginger-card .business-monogram{background:#f2ae3d}.ginger-card .business-owner{color:#a76c09}@media(max-width:900px){.business-link{grid-column:1/-1;text-align:center}}@media(max-width:560px){.photo-ready{grid-template-columns:1fr}.photo-ready>div{min-height:90px}}
.family-photo{position:absolute;z-index:1;right:clamp(24px,6vw,90px);top:135px;width:clamp(230px,26vw,390px);margin:0;padding:10px 10px 14px;border-radius:28px;background:#fff;box-shadow:0 24px 70px rgba(40,120,181,.2);transform:rotate(2deg)}.family-photo img{display:block;width:100%;max-height:470px;object-fit:cover;object-position:center;border-radius:20px}.family-photo figcaption{padding:11px 8px 2px;color:var(--blue-deep);font-size:.78rem;font-weight:600;text-align:center}.hero h1,.hero-tagline,.hero .intro{max-width:62%}@media(max-width:900px){.family-photo{position:relative;right:auto;top:auto;width:min(100%,390px);margin:50px 0 0;transform:none}.hero{padding-bottom:80px}.hero h1,.hero-tagline,.hero .intro{max-width:100%}.sun-mark{opacity:.5}}@media(max-width:520px){.family-photo{width:100%}}
.contact{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;padding:110px clamp(24px,8vw,120px);background:var(--blue-soft)}.contact h2{margin:22px 0 0;font-size:clamp(2.8rem,5vw,5rem);line-height:1;letter-spacing:-.045em}.contact-list{border-top:1px solid var(--line)}.contact-list a{display:grid;grid-template-columns:.7fr 1.3fr auto;gap:20px;align-items:center;padding:25px 8px;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .2s ease,background .2s ease}.contact-list a:hover{padding-inline:18px;background:rgba(255,255,255,.6)}.contact-list span:first-child{font-weight:700}.contact-list strong{color:var(--blue-deep);font-size:1rem;font-weight:500}.contact-list span:last-child{color:var(--blue-deep);font-size:1.1rem}@media(max-width:760px){.contact{grid-template-columns:1fr}.contact-list a{grid-template-columns:1fr auto}.contact-list strong{grid-row:2;grid-column:1/-1}.contact-list span:last-child{grid-column:2;grid-row:1}}
.build-notice{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:10px 24px;background:var(--yellow);color:#594300;text-align:center}.build-notice p{margin:0;font-size:.82rem;line-height:1.4}.build-notice strong{font-weight:700}.build-notice>span{color:var(--blue-deep)}.site-header{top:48px}.hero{padding-top:208px}@media(max-width:760px){.build-notice{min-height:64px;padding-inline:16px}.build-notice p{font-size:.76rem}.build-notice>span{display:none}.site-header{top:64px}.hero{padding-top:209px}}
