:root{--ink:#102b2b;--teal:#00a999;--mint:#dff4ee;--cream:#f7f6f1;--line:#d9ddd8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:absolute;left:1rem;top:-4rem;background:#fff;padding:1rem;z-index:10}.skip:focus{top:1rem}.site-header{height:104px;display:flex;align-items:center;gap:3rem;padding:0 4vw;background:#fff;position:relative;z-index:5}.brand{width:300px;height:84px;display:block;flex:none;overflow:hidden}.brand img{width:100%;height:100%;object-fit:cover;object-position:center}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:2.3rem;font-size:.86rem;font-weight:700}.desktop-nav a,.footer-top a,.mobile-nav a{transition:color .2s}.desktop-nav a:hover,.footer-top a:hover,.mobile-nav a:hover{color:var(--teal)}.header-cta{background:var(--ink);color:#fff;padding:14px 20px;border-radius:3px;font-size:.85rem;font-weight:700;white-space:nowrap}.header-cta span,.button span{margin-left:1.4rem}.menu-toggle,.mobile-nav{display:none}.hero{height:min(790px,calc(100svh - 104px));min-height:620px;position:relative;overflow:hidden;background:#173233;color:#fff}.hero-photos,.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background-size:cover;background-position:center;opacity:0;animation:heroCycle 24s infinite;transform:scale(1.07)}.p1{background-image:url('assets/santa-hero-conversation.jpg');background-position:center 48%}.p2{background-image:url('assets/sports.jpg');animation-delay:6s}.p3{background-image:url('assets/school.jpeg');animation-delay:12s}.p4{background-image:url('assets/easter.webp');animation-delay:18s}.hero-shade{background:linear-gradient(90deg,rgba(8,35,35,.88) 0%,rgba(8,35,35,.62) 45%,rgba(8,35,35,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.22),transparent 45%)}@keyframes heroCycle{0%{opacity:0;transform:scale(1.07)}5%,22%{opacity:1}28%,100%{opacity:0}25%{transform:scale(1)}}.hero-content{position:relative;z-index:1;max-width:930px;padding:clamp(95px,15vh,170px) 6vw 6rem}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.2em;color:#007d73;margin:0 0 1.65rem}.eyebrow.light{color:#77decf}.hero h1,.intro h2,.section-heading h2,.statement h2,.about h2,.contact h2{font-family:Manrope,sans-serif;font-weight:700;letter-spacing:-.065em;line-height:1.06;margin:0}.hero h1{font-size:clamp(3.7rem,7.5vw,8.3rem)}h1 em,h2 em{font-style:normal;color:#6edbc7}.hero-intro{font-size:clamp(1.03rem,1.55vw,1.3rem);line-height:1.55;max-width:490px;margin:2rem 0 2.2rem;color:#eef6f2}.hero-actions{display:flex;align-items:center;gap:2.1rem}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.12rem 1.35rem;border-radius:3px;font-weight:800;font-size:.86rem;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.button-light{background:#fff;color:var(--ink)}.button-light:hover{background:var(--mint)}.text-link{font-size:.88rem;font-weight:700;border-bottom:1px solid #fff;padding-bottom:.35rem}.text-link span{margin-left:.7rem}.hero-side{position:absolute;right:2.8vw;bottom:2.5rem;z-index:2;font-size:.62rem;letter-spacing:.2em;font-weight:700;writing-mode:vertical-rl}.hero-side span{margin:1rem 0}.hero-progress{position:absolute;left:6vw;bottom:2.5rem;display:flex;gap:6px;z-index:2}.hero-progress span{height:2px;width:36px;background:#ffffff65}.hero-progress span::after{content:'';display:block;background:#fff;height:100%;width:0;animation:progress 24s linear infinite}.hero-progress span:nth-child(2)::after{animation-delay:6s}.hero-progress span:nth-child(3)::after{animation-delay:12s}.hero-progress span:nth-child(4)::after{animation-delay:18s}@keyframes progress{0%{width:0}25%{width:100%}25.01%,100%{width:0}}.ticker{background:var(--teal);color:#fff;overflow:hidden;padding:1rem 0}.ticker-track{width:max-content;display:flex;align-items:center;gap:2rem;animation:marquee 28s linear infinite;font-weight:800;text-transform:uppercase;letter-spacing:.13em;font-size:.77rem}.ticker b{font-size:1rem;color:#b1f6e6}@keyframes marquee{to{transform:translateX(-50%)}}.section-wrap{max-width:1450px;margin:auto;padding-left:6vw;padding-right:6vw}.intro{display:grid;grid-template-columns:1.6fr 1fr;gap:7vw;align-items:end;padding-top:8rem;padding-bottom:8rem}.intro h2{font-size:clamp(2.8rem,4.8vw,5.25rem)}.intro h2 span{color:#25877e}.intro>p{max-width:450px;font-size:1.12rem;line-height:1.7;color:#4d6260;margin:0 0 .3rem}.experiences{padding-bottom:9rem}.section-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:2.1rem;margin-bottom:2.5rem}.section-heading h2{font-size:clamp(2.8rem,4.8vw,5rem)}.section-heading>p{color:#60716f;margin:0 0 .4rem}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 2rem}.service-card:nth-child(even){transform:translateY(5rem)}.card-image{display:block;aspect-ratio:1.43;overflow:hidden;background:#dae6e2}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.service-card:hover img{transform:scale(1.055)}.service-card:nth-child(4) img{object-position:center 30%}.card-copy{position:relative;border-bottom:1px solid #cbd5d0;padding:1.35rem 4rem 1.6rem 0;min-height:210px}.card-index{font-size:.69rem;font-weight:800;letter-spacing:.17em;color:#078b7e}.card-copy h3{font:700 clamp(1.65rem,2.2vw,2.4rem)/1.2 Manrope,sans-serif;letter-spacing:-.05em;margin:.65rem 0}.card-copy p{color:#556866;line-height:1.6;max-width:440px;margin:0}.round-link{position:absolute;right:0;top:2.1rem;border:1px solid #a8b9b3;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;transition:background .2s,color .2s}.round-link:hover{background:var(--ink);color:#fff}.statement{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:#fff;min-height:620px}.statement-image{min-height:620px;overflow:hidden}.statement-image img{width:100%;height:100%;object-fit:cover;object-position:center}.statement-copy{padding:8vw 8vw 7vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.statement h2{font-size:clamp(3.5rem,6vw,7rem)}.statement-copy>p:not(.eyebrow){font-size:1.12rem;line-height:1.65;max-width:430px;color:#c3d7d4;margin:2rem 0}.button-outline{border:1px solid #8caeaa;color:#fff}.button-outline:hover{background:#fff;color:var(--ink)}.about{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:10vw;padding-top:10rem;padding-bottom:10rem}.about-photo{position:relative;max-width:500px}.about-photo img{width:100%;aspect-ratio:.85;object-fit:cover}.about-photo span{position:absolute;bottom:-1.3rem;right:-2rem;background:var(--teal);color:#fff;padding:1.1rem 1.3rem;font-weight:800;letter-spacing:.13em;font-size:.65rem}.about h2{font-size:clamp(3.1rem,5.3vw,6rem);margin-bottom:2rem}.about h2 em{color:#078e81}.about-copy>p:not(.eyebrow){color:#536662;line-height:1.75;max-width:530px;font-size:1.08rem}.underlined-link{display:inline-block;border-bottom:2px solid var(--teal);font-weight:800;margin-top:1.3rem;padding-bottom:.55rem}.underlined-link span{margin-left:3rem}.contact{background:#007d72;color:#fff}.contact-inner{padding-top:7rem;padding-bottom:7rem}.contact h2{font-size:clamp(4rem,8vw,9rem)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-top:2rem}.contact-bottom p{max-width:490px;font-size:1.2rem;line-height:1.6;margin:0;color:#d6f5ec}footer{background:#fff;padding:4rem 6vw 1.8rem}.footer-top{max-width:1450px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr .7fr;gap:4rem;padding-bottom:5rem}.footer-brand img{width:205px}.footer-top div{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.9rem}.footer-top p{margin:0 0 .5rem;color:#657775}.footer-bottom{max-width:1450px;margin:auto;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:1.5rem;font-size:.75rem;color:#6e7e7a}@media(max-width:1050px){.desktop-nav,.header-cta{display:none}.menu-toggle{margin-left:auto;display:flex;flex-direction:column;gap:6px;background:none;border:0;padding:15px;cursor:pointer}.menu-toggle span{height:2px;width:25px;background:var(--ink)}.mobile-nav:not([hidden]){display:flex;position:absolute;z-index:9;top:104px;left:0;right:0;background:#fff;flex-direction:column;padding:1.5rem 6vw 2rem;gap:1.3rem;font-weight:800;box-shadow:0 12px 20px #0002}.intro{grid-template-columns:1fr;gap:2rem}.statement-copy{padding:5vw}.about{gap:5vw}}@media(max-width:650px){.site-header{height:82px;padding:0 4vw}.brand{width:238px;height:66px}.mobile-nav:not([hidden]){top:82px}.hero{height:690px;min-height:0}.hero-content{padding:135px 6vw 5rem}.hero h1{font-size:clamp(3.4rem,12.5vw,5.5rem)}.hero-intro{font-size:1rem}.hero-actions{flex-wrap:wrap;gap:1.4rem}.hero-shade{background:linear-gradient(90deg,rgba(8,35,35,.83),rgba(8,35,35,.35)),linear-gradient(0deg,#092525aa,transparent 50%)}.hero-side{display:none}.intro{padding-top:5rem;padding-bottom:5rem}.experiences{padding-bottom:7rem}.section-heading{display:block}.section-heading>p{margin-top:1.2rem}.service-grid{grid-template-columns:1fr;gap:2.5rem}.service-card:nth-child(even){transform:none}.card-copy{min-height:0;padding-bottom:1.8rem}.statement{display:block}.statement-image{min-height:0;height:390px}.statement-copy{padding:5rem 6vw}.about{display:flex;flex-direction:column;align-items:stretch;padding-top:6rem;padding-bottom:6rem}.about-photo{max-width:85%;margin-bottom:4rem}.about-photo span{right:-2.3rem}.contact-inner{padding-top:5rem;padding-bottom:5rem}.contact-bottom{display:block}.contact-bottom .button{margin-top:2rem}.footer-top{grid-template-columns:1fr;gap:2rem;padding-bottom:3rem}.footer-bottom{gap:1rem;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo{animation:none;transform:none}.hero-photo.p1{opacity:1}.ticker-track,.hero-progress span::after{animation:none}.button,.card-image img{transition:none}}
.santa-hero{min-height:650px;position:relative;background:var(--ink);color:#fff;overflow:hidden}.santa-hero-photo,.santa-hero-shade{position:absolute;inset:0}.santa-hero-photo{background:url('assets/santa.jpg') center 43%/cover;animation:santaDrift 15s ease-in-out infinite alternate}.santa-hero-shade{background:linear-gradient(90deg,rgba(10,40,40,.9) 0%,rgba(10,40,40,.63) 50%,rgba(10,40,40,.12) 100%)}@keyframes santaDrift{to{transform:scale(1.07)}}.santa-hero-content{position:relative;padding-top:9rem;padding-bottom:8rem}.santa-hero h1,.santa-intro h2,.santa-partners h2,.santa-invite h2{font-family:Manrope,sans-serif;letter-spacing:-.065em;line-height:1.06;margin:0}.santa-hero h1{font-size:clamp(3.7rem,7vw,7.4rem);max-width:850px}.santa-hero h1 em{font-style:normal;color:#72dfcc}.santa-hero-content>p:not(.eyebrow){font-size:1.2rem;line-height:1.65;max-width:550px;color:#e8f4f0;margin:2rem 0 2.2rem}.santa-intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding-top:8rem;padding-bottom:8rem}.santa-intro h2{font-size:clamp(3.2rem,5.3vw,5.7rem)}.santa-intro>div:last-child{padding-top:2.6rem}.santa-intro>div:last-child p{font-size:1.1rem;color:#50625f;line-height:1.75;margin:0 0 1.5rem}.santa-partners{background:#fff;padding:7rem 0 8rem;overflow:hidden}.santa-partners-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:3rem}.santa-partners h2{font-size:clamp(2.8rem,4.7vw,5.1rem)}.santa-partners-heading p{max-width:320px;color:#5a6b68;line-height:1.6;margin:0}.partner-carousel{overflow:hidden}.partner-track{display:flex;width:max-content;animation:partnerMove 60s linear infinite}.partner-carousel:hover .partner-track{animation-play-state:paused}.partner-set{display:flex;gap:1rem;padding-right:1rem}.partner-tile{width:260px;height:190px;flex:none;background:#fff;border:1px solid #e6ece8;display:flex;align-items:center;justify-content:center;padding:12px}.partner-tile img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform:none}@keyframes partnerMove{to{transform:translateX(-50%)}}.santa-invite{background:var(--ink);color:#fff}.santa-invite-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;padding-top:8rem;padding-bottom:8rem}.santa-invite h2{font-size:clamp(3.5rem,6vw,6.5rem)}.santa-invite-inner>div:last-child{padding-top:2rem}.santa-invite-inner>div:last-child p{color:#c7dcda;font-size:1.12rem;line-height:1.7;max-width:520px}.santa-invite .button{margin-top:1.4rem}.santa-email{display:block;color:#a8ddd4;text-decoration:underline;text-underline-offset:5px;margin-top:1.4rem;font-weight:700}@media(max-width:750px){.santa-hero{min-height:0}.santa-hero-content{padding-top:8rem;padding-bottom:7rem}.santa-hero-shade{background:linear-gradient(90deg,rgba(10,40,40,.89),rgba(10,40,40,.48))}.santa-intro,.santa-invite-inner{grid-template-columns:1fr;gap:2rem;padding-top:5.5rem;padding-bottom:5.5rem}.santa-intro>div:last-child,.santa-invite-inner>div:last-child{padding-top:0}.santa-partners{padding:5rem 0}.santa-partners-heading{display:block}.santa-partners-heading p{margin-top:1.3rem}.partner-tile{width:210px;height:160px}}@media(prefers-reduced-motion:reduce){.santa-hero-photo,.partner-track{animation:none}.partner-carousel{overflow-x:auto}.partner-set[aria-hidden="true"]{display:none}}
.holiday-seasons{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding-top:7rem;padding-bottom:8rem}.holiday-seasons article{background:#fff}.holiday-seasons img{width:100%;height:350px;object-fit:cover}.holiday-seasons article:nth-child(2) img{object-position:center 30%}.holiday-seasons article>div{padding:2.5rem}.holiday-seasons span{font-size:.72rem;font-weight:800;color:#078b7e;letter-spacing:.17em}.holiday-seasons h2{font:700 clamp(2rem,3vw,3.3rem)/1.1 Manrope,sans-serif;letter-spacing:-.05em;margin:.7rem 0 1rem}.holiday-seasons p{color:#536662;line-height:1.65;margin:0;max-width:440px}@media(max-width:650px){.holiday-seasons{grid-template-columns:1fr;padding-top:5rem;padding-bottom:5rem}.holiday-seasons img{height:300px}}

.event-rail{background:#f6b700;border-bottom:1px solid #dca300;color:#102b2b}.event-rail-inner{max-width:1450px;margin:auto;padding:1.15rem 6vw;display:flex;align-items:center;gap:2.5rem}.event-rail-title{display:flex;align-items:center;gap:1.1rem;flex:none}.event-rail-kicker{font-size:.69rem;font-weight:800;letter-spacing:.18em;color:#102b2b;white-space:nowrap}.event-rail h2{font:700 1.05rem/1.35 Manrope,sans-serif;letter-spacing:-.025em;margin:0}.event-rail-links{margin-left:auto;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}.event-rail-links p{margin:0;color:#203b35;font-size:.9rem;line-height:1.4}.event-rail-links a{display:inline-flex;align-items:center;gap:.7rem;padding:.6rem .85rem;background:#fff;border:1px solid #102b2b;border-radius:2px;font-size:.86rem;font-weight:700;white-space:nowrap;transition:background .2s,transform .2s}.event-rail-links a:hover{background:#fff4d3;transform:translateY(-2px)}@media(max-width:900px){.event-rail-inner{display:block;padding-top:1.2rem;padding-bottom:1.3rem}.event-rail-title{flex-wrap:wrap;gap:.35rem 1rem}.event-rail-links{justify-content:flex-start;margin: .5rem 0 0}.event-rail-links p{font-size:.85rem}}

.school-hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:500px;background:linear-gradient(125deg,#27c9b7 0%,#8ee9d7 68%,#d8f5b7 100%);color:#102b2b}.school-hero-copy{padding:clamp(4rem,7vw,6rem) 6vw;align-self:center}.school-hero .eyebrow{margin-bottom:1.4rem;color:#164542}.school-hero h1{font:700 clamp(3.2rem,6vw,6.5rem)/1.04 Manrope,sans-serif;letter-spacing:-.065em;margin:0}.school-hero h1 em{color:#102b2b;text-decoration:underline;text-decoration-color:#f6b700;text-decoration-thickness:.11em;text-underline-offset:.13em}.school-hero-copy>p:not(.eyebrow){font-size:1.15rem;line-height:1.65;color:#24413d;max-width:520px;margin:1.6rem 0 2rem}.school-jump{display:inline-flex;gap:1.5rem;align-items:center;border-bottom:2px solid #102b2b;padding-bottom:.45rem;font-weight:800}.school-jump:focus-visible,.school-gallery-row:focus-visible{outline:3px solid #f6b700;outline-offset:4px}.school-hero-photo{min-height:400px;overflow:hidden;border-left:10px solid #f6b700}.school-hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center}.school-galleries{padding-top:7rem;padding-bottom:8rem}.school-galleries-heading{max-width:680px}.school-galleries-heading h2{font:700 clamp(2.4rem,4vw,4.5rem)/1.1 Manrope,sans-serif;letter-spacing:-.06em;margin:0 0 1rem}.school-galleries-heading>p:last-child{font-size:1.06rem;line-height:1.65;color:#526663;margin:0 0 3rem}.school-gallery-empty{display:flex;gap:1.6rem;align-items:flex-start;background:#fff;border:1px solid var(--line);padding:2.4rem;max-width:900px}.school-gallery-empty-mark{font-size:2rem;line-height:1;color:#e4a900}.school-gallery-empty h3{font:700 1.45rem/1.25 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 .5rem}.school-gallery-empty p{color:#526663;line-height:1.6;margin:0}.school-gallery-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 1.8rem;background:#fff;border:1px solid var(--line);border-bottom:0;transition:background .2s}.school-gallery-row:last-child{border-bottom:1px solid var(--line)}.school-gallery-row:hover{background:#e8f6f0}.school-gallery-row h3{font:700 1.2rem/1.35 Manrope,sans-serif;margin:0 0 .25rem}.school-gallery-row p{margin:0;color:#526663}.school-gallery-row>span{font-weight:800;white-space:nowrap;color:#007d73}.school-help{background:#007d73;color:#fff}.school-help-inner{padding-top:5.5rem;padding-bottom:5.5rem;display:flex;align-items:end;justify-content:space-between;gap:2rem}.school-help h2{font:700 clamp(2.2rem,4vw,4rem)/1.1 Manrope,sans-serif;letter-spacing:-.055em;margin:0 0 1rem}.school-help p:not(.eyebrow){line-height:1.6;max-width:540px;margin:0;color:#e0f5ef}.school-help .button{flex:none}@media(max-width:800px){.school-hero{grid-template-columns:1fr}.school-hero-copy{padding:5rem 6vw}.school-hero-photo{height:280px;min-height:0;border-left:0;border-top:8px solid #f6b700}.school-galleries{padding-top:5rem;padding-bottom:5rem}.school-help-inner{display:block}.school-help .button{margin-top:2rem}.school-gallery-row{align-items:flex-start}.school-gallery-row>span{white-space:normal}}@media(max-width:480px){.school-hero h1{font-size:clamp(2.9rem,11vw,4rem)}.school-hero-copy>p:not(.eyebrow){font-size:1rem}.school-gallery-empty{padding:1.5rem;gap:1rem}.school-gallery-row{display:block}.school-gallery-row>span{display:inline-block;margin-top:.8rem}}
.service-card#school .card-image img,.school-hero-photo img{object-position:center 38%}
.event-rail-links a{white-space:normal;line-height:1.3;text-align:left}.event-rail-links a span{flex:none}
.school-partner{background:#fff;border-top:8px solid #f6b700}.school-partner-inner{display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding-top:4.5rem;padding-bottom:4.5rem}.school-partner .eyebrow{margin-bottom:1.2rem}.school-partner h2{font:700 clamp(2.2rem,3.8vw,4.4rem)/1.1 Manrope,sans-serif;letter-spacing:-.06em;margin:0}.school-partner-inner>div:last-child{align-self:center}.school-partner-inner>div:last-child p{font-size:1.06rem;line-height:1.7;color:#45615a;margin:0 0 1.5rem}.school-partner-button{background:#102b2b;color:#fff}.school-partner-button:hover{background:#007d73}.school-partner-email{display:block;width:max-content;max-width:100%;overflow-wrap:anywhere;font-weight:700;font-size:.9rem;margin-top:1rem;border-bottom:1px solid #91b9af;padding-bottom:.2rem}@media(max-width:800px){.school-partner-inner{grid-template-columns:1fr;gap:1.5rem;padding-top:3.5rem;padding-bottom:3.5rem}}
.event-rail-links{flex:1;min-width:0}.event-rail-links .featured-gallery{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:100%;max-width:680px;padding:1rem 1.2rem;background:#102b2b;border:1px solid #102b2b;border-radius:6px;color:#fff;box-shadow:0 5px 0 rgba(16,43,43,.18);transition:background .2s,transform .2s,box-shadow .2s}.event-rail-links .featured-gallery:hover{background:#006e66;transform:translateY(-2px);box-shadow:0 7px 0 rgba(16,43,43,.15)}.event-rail-links .featured-gallery:focus-visible{outline:3px solid #102b2b;outline-offset:4px}.event-rail-links .featured-gallery .featured-gallery-copy{display:grid;gap:.3rem;flex:1;min-width:0}.featured-gallery-label{font-size:.65rem;font-weight:800;letter-spacing:.16em;color:#f6b700}.featured-gallery-copy strong{font:800 clamp(.98rem,1.3vw,1.2rem)/1.25 Manrope,sans-serif;letter-spacing:-.025em}.featured-gallery-action{display:flex;align-items:center;gap:.7rem;border-left:1px solid rgba(255,255,255,.3);padding-left:1.4rem;font-size:.82rem;font-weight:800;white-space:nowrap}.featured-gallery-action span{font-size:1.35rem;color:#f6b700}.ticker{background:#102b2b;padding:.55rem 0}.ticker-track{gap:1.7rem}.ticker-mark{width:27px;height:34px;object-fit:contain;flex:none}@media(max-width:900px){.event-rail-links .featured-gallery{max-width:none}}@media(max-width:550px){.event-rail-links .featured-gallery{display:block}.featured-gallery-action{width:max-content;border-left:0;border-top:1px solid rgba(255,255,255,.3);padding:.65rem 0 0;margin-top:.8rem}.featured-gallery-copy strong{font-size:1rem}.ticker-track{gap:1.3rem}.ticker-mark{width:24px;height:30px}}
.event-rail-links{display:grid;grid-template-columns:1fr;gap:1rem;max-width:680px}.event-rail-links .featured-gallery{max-width:none}@media(max-width:900px){.event-rail-links{max-width:none}}@media(max-width:550px){.event-rail-links .featured-gallery .featured-gallery-copy{display:grid}}
.photoday-access{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#dff4ee;border-left:7px solid #00a999;padding:2rem 2.25rem;margin:0 0 2rem}.photoday-access .eyebrow{margin:0 0 .6rem}.photoday-access h3{font:700 clamp(1.65rem,2.4vw,2.4rem)/1.15 Manrope,sans-serif;letter-spacing:-.05em;margin:0 0 .7rem}.photoday-access p:not(.eyebrow){max-width:570px;color:#3e5c56;line-height:1.6;margin:0}.photoday-access .button{flex:none;background:#102b2b;color:#fff}.photoday-access .button:hover{background:#007d73}@media(max-width:700px){.photoday-access{display:block;padding:1.5rem}.photoday-access .button{margin-top:1.5rem}}
.school-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.school-photo-card{display:flex;align-items:center;gap:1rem;min-height:130px;padding:1.25rem;background:#fff;border:1px solid #d9ddd8;border-radius:6px;box-shadow:0 5px 0 rgba(16,43,43,.07);transition:transform .2s,box-shadow .2s,border-color .2s}.school-photo-card:hover{transform:translateY(-3px);box-shadow:0 8px 0 rgba(16,43,43,.1);border-color:#00a999}.school-photo-card:focus-visible{outline:3px solid #e6ad00;outline-offset:4px}.school-photo-monogram{display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;background:#dff4ee;color:#007d73;font:800 .87rem Manrope,sans-serif}.school-photo-card-copy{display:grid;gap:.4rem;min-width:0}.school-photo-card-copy strong{font:800 1rem/1.3 Manrope,sans-serif;letter-spacing:-.025em}.school-photo-card-copy>span{color:#526663;font-size:.82rem;line-height:1.35}.school-photo-card-action{align-self:flex-start;margin-left:auto;color:#007d73;font-size:1.25rem;font-weight:800}@media(max-width:1000px){.school-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.school-photo-grid{grid-template-columns:1fr}.school-photo-card{min-height:105px}}
.school-detail-hero{background:#102b2b;color:#fff;border-bottom:8px solid #f6b700}.school-detail-hero .section-wrap{padding-top:4rem;padding-bottom:5rem}.school-detail-back{display:inline-block;margin-bottom:3rem;color:#a5e5d8;font-weight:700;border-bottom:1px solid #a5e5d8;padding-bottom:.25rem}.school-detail-back:hover{color:#fff}.school-detail-hero .eyebrow{margin-bottom:1rem}.school-detail-hero h1{font:700 clamp(2.9rem,6vw,6rem)/1.05 Manrope,sans-serif;letter-spacing:-.065em;max-width:900px;margin:0}.school-detail-hero p:not(.eyebrow){color:#d1ebe5;font-size:1.12rem;line-height:1.6;max-width:690px;margin:1.5rem 0 0}.school-detail-galleries{padding-top:5rem;padding-bottom:6rem}.school-detail-galleries .school-gallery-empty{margin-bottom:2rem}.school-detail-access{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#dff4ee;padding:2rem 2.25rem;border-left:7px solid #00a999}.school-detail-access h3{font:700 1.4rem/1.2 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 .6rem}.school-detail-access p{line-height:1.6;color:#3e5c56;margin:0}.school-detail-access .button{flex:none;background:#102b2b;color:#fff}.school-detail-access .button:hover{background:#007d73}@media(max-width:700px){.school-detail-hero .section-wrap{padding-top:2.5rem;padding-bottom:3.5rem}.school-detail-back{margin-bottom:2rem}.school-detail-galleries{padding-top:3.5rem;padding-bottom:4rem}.school-detail-access{display:block;padding:1.5rem}.school-detail-access .button{margin-top:1.5rem}}

/* School identity artwork: preserve the full mark within its frame. */
.school-photo-logo{display:grid;place-items:center;flex:none;width:72px;height:72px;padding:6px;background:#fff;border:1px solid #e5ebe8;border-radius:9px}.school-photo-logo img,.school-detail-logo img{display:block;width:100%;height:100%;object-fit:contain}.school-photo-logo-wide{width:106px}.school-detail-logo{display:grid;place-items:center;width:102px;height:102px;padding:10px;margin:0 0 1.5rem;background:#fff;border-radius:12px}.school-detail-logo-wide{width:190px;height:105px}.school-detail-logo img{object-fit:contain}@media(max-width:650px){.school-photo-logo{width:64px;height:64px}.school-photo-logo-wide{width:90px}.school-detail-logo{width:88px;height:88px}.school-detail-logo-wide{width:160px;height:92px}}
/* The PhotoDay access option follows the school cards. */
.photoday-access{margin:2.5rem 0 0}

/* Service locations */
.school-photo-card-copy>.school-city{color:#007d73;font-size:.875rem;font-weight:700}.school-detail-hero p.school-location{color:#f6b700;font-weight:700;margin-top:1rem}.holiday-locations{padding-top:4rem;padding-bottom:4rem}.holiday-locations h2{font:700 clamp(2rem,4vw,3.8rem)/1.1 Manrope,sans-serif;letter-spacing:-.05em;margin:0 0 1.5rem}.holiday-locations>p:not(.eyebrow){max-width:780px;line-height:1.7}.holiday-city-list{list-style:none;padding:0;margin:2rem 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.holiday-city-list li{padding:1.3rem;background:#fff;border-left:4px solid #f6b700;font-weight:700;font-size:1.05rem}.holiday-city-list span{display:block;margin-top:.4rem;color:#526663;font-weight:400;font-size:1rem}@media(max-width:900px){.holiday-city-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.holiday-city-list{grid-template-columns:1fr}}

/* Seasonal invitation and Orange Beach gallery shortcuts */
.santa-season-banner{background:#073d38;color:#fff;padding:24px max(24px,5vw)}.santa-season-inner{max-width:1400px;margin:auto;display:flex;align-items:center;gap:28px}.santa-season-photo{width:112px;height:112px;object-fit:cover;border-radius:50%;border:3px solid #f6b700;flex-shrink:0}.santa-season-copy{flex:1}.santa-season-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;color:#f6b700;margin:0 0 10px}.santa-season-copy h2{font:800 clamp(24px,2.7vw,36px)/1.15 Manrope,sans-serif;margin:0 0 10px;letter-spacing:-.03em}.santa-season-copy>p:last-child{font-size:16px;line-height:1.6;color:#d9eeE8;margin:0;max-width:650px}.santa-season-button{background:#f6b700;color:#102b2b;padding:17px 23px;border-radius:100px;font-size:16px;font-weight:800;text-align:center;flex-shrink:0;transition:transform .2s}.santa-season-button:hover{transform:translateY(-2px);background:#ffcc31}.santa-season-button:focus-visible,.school-card-galleries a:focus-visible{outline:3px solid #00a999;outline-offset:4px}.school-card-with-galleries{background:white;border:1px solid #d9ddd8;border-radius:6px;box-shadow:0 5px 0 rgba(16,43,43,.07);overflow:hidden}.school-card-with-galleries>.school-photo-card{border:0;box-shadow:none}.school-card-galleries{display:grid;gap:0;padding:0 20px 16px}.school-card-galleries a{padding:12px 0;border-top:1px solid #e0e8e3;color:#007d73;font-size:14px;font-weight:700;line-height:1.4}.school-card-galleries a:hover{text-decoration:underline}@media(max-width:850px){.santa-season-inner{flex-wrap:wrap;gap:20px}.santa-season-copy{flex-basis:calc(100% - 132px)}.santa-season-button{margin-left:132px}}@media(max-width:550px){.santa-season-banner{padding:24px 20px}.santa-season-photo{width:80px;height:80px}.santa-season-inner{gap:16px}.santa-season-copy{flex-basis:calc(100% - 96px)}.santa-season-copy h2{font-size:24px}.santa-season-kicker{font-size:12px;letter-spacing:.06em}.santa-season-button{margin:4px 0 0;width:100%}.santa-season-copy>p:last-child{font-size:16px}}@media(prefers-reduced-motion:reduce){.santa-season-button{transition:none}}

.santa-season-photo{display:block;overflow:hidden}.santa-season-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;transform:scale(1.85);transform-origin:50% 60%}

.about-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}

.business-feature{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center;padding-top:70px;padding-bottom:80px}.business-feature h1{font-size:clamp(36px,4.5vw,64px);line-height:1.08;letter-spacing:-.04em;margin:24px 0}.business-feature-copy>p:not(.eyebrow){font-size:18px;line-height:1.75;max-width:650px}.business-feature-logo{width:280px;max-width:100%;height:auto;object-fit:contain}.business-feature-image img{display:block;width:100%;height:auto;border-radius:12px}.business-feature-image p{font-size:14px;line-height:1.6;margin:16px 0;color:#58646e}.business-feature-end{padding-top:35px;padding-bottom:75px;border-top:1px solid #dfe6e4}.business-feature-end h2{font-size:32px;line-height:1.2;margin:0 0 16px}.business-feature-end p{font-size:18px;line-height:1.7}@media(max-width:800px){.business-feature{grid-template-columns:1fr;gap:35px;padding-top:45px;padding-bottom:45px}.business-feature-image{max-width:560px}.business-feature-logo{width:240px}}
.business-feature h1{font-family:Manrope,sans-serif;font-weight:800}.business-visit{background:var(--teal);color:white}.site-header{gap:1.4rem}.desktop-nav{gap:1.2rem;flex-wrap:wrap;justify-content:flex-end}.desktop-nav a{white-space:nowrap}@media(min-width:901px){.site-header{height:auto;min-height:104px;padding-top:16px;padding-bottom:16px}.desktop-nav{max-width:700px}}
