@import url('./assets/fonts.css');

:root{font-family:'DM Sans',sans-serif;color:#25483c;background:#fbf8f1;font-synthesis:none;font-size:100%;line-height:1.6;--ink:#25483c;--paper:#fbf8f1;--soft:#e6e8d9;--accent:#a7472b;--line:#d7d9cb;--display:'Lora',Georgia,serif}
*{box-sizing:border-box}body{overflow-wrap:anywhere}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0}a{color:inherit;text-underline-offset:5px}button{font:inherit}img{display:block;max-width:100%;height:auto}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}p{margin:0 0 1.25rem}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.13;margin:0}h2{font-size:clamp(2rem,3.4vw,3rem);letter-spacing:-.04em}h3{font-size:1.6rem;letter-spacing:-.035em}.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}.eyebrow{text-transform:uppercase;font-size:.8rem;letter-spacing:.16em;font-weight:600}.muted{color:#526057}.skip-link{position:fixed;top:-90px;left:20px;z-index:100;background:var(--ink);color:#fff;padding:12px 20px}.skip-link:focus{top:8px}.preview-bar{background:#eae9e1;border-bottom:1px solid var(--line);font-size:.8rem;min-height:40px}.preview-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-block:7px}.preview-nav{display:flex;gap:6px;align-items:center}.preview-nav a{padding:3px 11px;border-radius:4px;text-decoration:none}.preview-nav a[aria-current]{background:var(--ink);color:#fff}.preview-nav .overview{margin-right:6px;text-decoration:underline;text-underline-offset:3px}.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid transparent}.header-inner{display:flex;justify-content:space-between;gap:28px;align-items:center;min-height:100px;position:relative}.wordmark{text-decoration:none;flex-shrink:1;min-width:0;line-height:1.1}.wordmark strong{font-family:var(--display);font-size:1.9rem;letter-spacing:-.04em;font-weight:500}.wordmark span{display:block;font-size:.7rem;letter-spacing:.075em;margin-top:7px}.navigation{display:flex;gap:29px;align-items:center;font-size:.9rem}.navigation>a{text-decoration:none}.navigation>a:not(.button):hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:48px;padding:12px 24px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:6px;text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.4;transition:background .18s,transform .18s}.button:hover{background:#18372e;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:var(--soft)}.button.text-button{border-color:transparent;background:transparent;color:var(--ink);padding-inline:4px}.button svg,.text-link svg{width:19px;height:19px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px}.menu-toggle{display:none;flex-shrink:0;background:transparent;border:1px solid var(--line);color:var(--ink);width:46px;height:46px;align-items:center;justify-content:center;border-radius:6px}.menu-toggle svg{width:24px;height:24px}.warm-hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:585px;align-items:center;gap:28px;padding-top:24px}.hero-copy{padding:24px 0 38px;position:relative;z-index:1}.hero-copy .eyebrow{color:var(--accent);margin-bottom:24px}.warm h1{font-size:clamp(2.9rem,4.35vw,4.4rem);line-height:1.1;letter-spacing:-.055em}.warm h1 span{display:block}.hero-subtitle{font-size:1.1rem;margin-top:25px;max-width:470px;color:#384d42}.warm-hero .hero-photo{height:560px;width:100%;object-fit:cover;object-position:50% 50%;border-radius:50% 50% 0 0 / 23% 23% 0 0;align-self:end}.welcome-note{font:italic 1.1rem Georgia,serif;color:#6f7760;display:flex;align-items:center;gap:18px;margin:32px 0 0}.welcome-note:before{content:'';width:35px;height:1px;background:#929782}.locations-band{background:var(--soft)}.locations-inner{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:36px;padding-block:38px;align-items:center}.locations-inner h2{font-size:2rem;letter-spacing:-.045em}.location-mini{border-left:1px solid #bfc6b3;padding-left:30px;display:flex;gap:16px}.pin{width:26px;height:31px;flex:none}.location-mini h3{font-size:1.45rem}.location-mini p{margin:5px 0;font-size:.9rem}.text-link{font-weight:600;font-size:.9rem;display:inline-flex;gap:10px;align-items:center;color:var(--accent);text-decoration:none}.text-link:hover{text-decoration:underline}.section{padding-block:84px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.section-heading .eyebrow{display:block;margin-bottom:12px}.photo-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;text-decoration:none;background:#fffdf8;transition:transform .2s}.photo-card:hover{transform:translateY(-5px)}.photo-card img{width:100%;height:228px;object-fit:cover}.photo-card:nth-child(1) img{object-position:48% 50%}.photo-card>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:23px}.photo-card h3{font-size:1.45rem}.circle-arrow{border:1px solid #b2b9ab;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex:none}.intro-section{border-block:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.intro-grid h2{max-width:460px;margin-top:18px;font-size:clamp(2.2rem,3.5vw,3.3rem)}.intro-copy{font-size:1.05rem;color:#415748}.intro-copy strong{color:var(--ink)}.intro-copy .text-link{margin-top:10px}.offerings{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.offering{background:var(--soft);padding:30px;border-radius:8px}.offering .kicker{display:block;font-size:.75rem;letter-spacing:.12em;font-weight:600;text-transform:uppercase;margin-bottom:20px}.offering h3{margin-bottom:14px}.offering p{color:#3e5348;font-size:.95rem}.offering details{margin-top:24px;padding-top:18px;border-top:1px solid #b9c4b2}.offering summary{cursor:pointer;font-size:.9rem;font-weight:600;padding-block:4px}.details-content{padding-top:17px}.details-content a{display:block;font-size:.9rem;padding-block:5px}.services{background:var(--soft)}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.service{padding-top:26px;border-top:1px solid #aebca8}.service h3{margin-bottom:17px}.service p{max-width:490px;color:#3e5348}.calendar-row{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #aebca8;margin-top:36px;padding-top:28px}.calendar-row p{margin:0;font-size:.95rem;max-width:550px}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px}.contact-intro h2{margin:15px 0 24px}.contact-intro p{max-width:410px}.contact-intro a{white-space:normal}.address-cards{display:grid;grid-template-columns:1fr 1fr;gap:25px}.address{border-top:1px solid var(--line);padding-top:20px}.address h3{margin:10px 0 12px}.address address{font-style:normal;margin-bottom:22px}.contact-link{margin-top:28px}.site-footer{background:#213e33;color:#f6f4e8;padding:48px 0 24px}.footer-main{display:flex;justify-content:space-between;gap:40px;align-items:start}.site-footer .wordmark strong{font-size:1.65rem}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 24px;max-width:590px;font-size:.85rem}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid #61756b;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:#d7e1d9}.footer-bottom p{margin:0}.footer-bottom a{color:inherit}

.colorful{--ink:#103f43;--paper:#fffcf6;--soft:#e0e9dc;--accent:#a6432b;--line:#d5ddd2;--display:'Nunito',sans-serif;color:var(--ink);font-family:'Nunito',sans-serif;background:var(--paper)}.colorful .preview-bar{background:#f5e4d8}.colorful .wordmark strong{font-weight:900;letter-spacing:-.05em}.colorful .wordmark span{font-size:.72rem;letter-spacing:0;font-weight:700}.colorful .button{border-radius:50px;font-weight:700}.colorful .button:hover{background:#092d30}.colorful .button.text-button:hover{background:transparent}.colorful .button.outline:hover{background:#dbe7df}.colorful .navigation{font-weight:700}.colorful h1,.colorful h2,.colorful h3{font-weight:900}.colorful .eyebrow{font-weight:800}.color-hero{background:#fbe5d8;text-align:center;padding-top:53px}.color-hero h1{font-size:clamp(3.5rem,7.2vw,7rem);line-height:1.06;letter-spacing:-.055em;margin:24px 0}.color-hero h1 .underline{position:relative;white-space:nowrap}.color-hero h1 .underline:after{content:'';position:absolute;bottom:12px;left:3%;right:2%;height:7px;background:#e77650;border-radius:50%;transform:rotate(-2deg)}.color-hero .hero-subtitle{margin:27px auto 0;max-width:unset;font-size:1.2rem;color:var(--ink)}.color-hero .actions{justify-content:center;margin-top:23px;margin-bottom:40px}.photo-triptych{display:grid;grid-template-columns:1fr 1.45fr 1fr;grid-template-rows:minmax(0,1fr);gap:9px;height:345px}.photo-triptych img{width:100%;height:100%;min-height:0;min-width:0;object-fit:cover}.photo-triptych img:first-child{object-position:40% 50%}.photo-triptych img:last-child{object-position:50% 48%}.colorful .section{padding-block:74px}.colorful .activity-section{padding-block:49px 56px}.colorful h2{font-size:clamp(2rem,3.5vw,3.2rem)}.activity-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.activity-card{display:flex;gap:22px;align-items:center;border-radius:17px;padding:32px 27px;text-decoration:none;transition:transform .2s;background:#f8d65e}.activity-card:nth-child(2){background:#f8e0d1}.activity-card:nth-child(3){background:#d0e1cd}.activity-card:hover{transform:translateY(-5px)}.activity-card svg{width:45px;height:45px;flex:none;stroke-width:1.6}.activity-card h3{font-size:1.65rem;letter-spacing:-.035em;margin-bottom:7px}.activity-card p{margin:0;font-size:.9rem;line-height:1.4}.colorful .locations-band{background:var(--ink);color:white}.colorful .locations-inner{grid-template-columns:1.3fr 1fr 1fr;padding-block:31px;gap:25px}.colorful .locations-inner h2{font-size:1.8rem}.colorful .location-mini{padding-left:22px;border-left-color:#759393}.colorful .location-mini h3{font-size:1.25rem}.colorful .locations-band .text-link{color:#f8d65e}.colorful .intro-section{border:0}.colorful .intro-grid h2{font-size:clamp(2.3rem,4vw,3.9rem)}.colorful .intro-copy{color:#35565a}.colorful .offering{border-radius:16px}.colorful .offering:nth-child(1){background:#fae1d2}.colorful .offering:nth-child(2){background:#f8dc79}.colorful .offering:nth-child(3){background:#dbe7d7}.colorful .services{background:#fbe5d8}.colorful .site-footer{background:#103f43}.colorful .site-footer .wordmark strong{font-size:1.85rem}.colorful .address-cards{gap:30px}.colorful .contact-grid{gap:75px}.colorful .section-heading .text-link{color:var(--ink)}

@media(min-width:1600px){.warm-hero{min-height:660px}.warm-hero .hero-photo{height:620px}.warm h1{font-size:4.6rem}}
@media(max-width:1150px){.container{width:calc(100% - 64px)}.navigation{gap:20px}.wordmark strong{font-size:1.6rem}.header-inner{gap:20px}.navigation .button{padding-inline:18px}.warm h1{font-size:3.2rem}.warm-hero{gap:20px;min-height:550px}.warm-hero .hero-photo{height:530px}.hero-copy .actions{gap:10px}.hero-copy .button{padding-inline:16px}.locations-inner{gap:20px}.location-mini{padding-left:20px}.intro-grid{gap:60px}.contact-grid{gap:45px}.activity-card{padding:26px 20px;gap:14px}.activity-card svg{width:36px;height:36px}.activity-card h3{font-size:1.4rem}.colorful .locations-inner{gap:16px}.colorful .locations-inner h2{font-size:1.55rem}.colorful .location-mini{padding-left:17px}.photo-triptych{height:290px}}
@media(max-width:900px){html{scroll-padding-top:100px}.container{width:calc(100% - 48px)}.header-inner{min-height:85px}.menu-toggle{display:inline-flex}.navigation{display:none;position:absolute;top:100%;left:-24px;right:-24px;background:var(--paper);border-bottom:1px solid var(--line);padding:18px 24px 26px;box-shadow:0 12px 12px #163c3210;align-items:stretch;gap:3px}.navigation>a{padding:13px 15px}.menu-toggle[aria-expanded="true"]+.navigation{display:flex;flex-direction:column}.warm-hero{grid-template-columns:1fr 1fr;min-height:490px;gap:24px}.warm h1{font-size:2.65rem}.hero-copy .eyebrow{font-size:.7rem;letter-spacing:.12em}.hero-copy .hero-subtitle{font-size:1rem}.warm-hero .hero-photo{height:490px}.hero-copy .actions{align-items:stretch;flex-direction:column}.welcome-note{margin-top:23px}.locations-inner{grid-template-columns:1fr 1fr;gap:24px}.locations-inner>h2{grid-column:1/-1}.location-mini{padding-left:0;border-left:0}.section{padding-block:60px}.photo-cards{gap:16px}.photo-card img{height:180px}.photo-card>div{padding:18px}.photo-card h3{font-size:1.2rem}.intro-grid{gap:40px}.offerings{gap:16px}.offering{padding:25px 20px}.offering h3{font-size:1.45rem}.contact-grid{grid-template-columns:1fr;gap:38px}.contact-intro p{max-width:550px}.footer-main{flex-direction:column;gap:30px}.footer-links{justify-content:flex-start}.color-hero{padding-top:45px}.color-hero h1{font-size:4.3rem}.photo-triptych{height:270px;grid-template-columns:1fr 1.4fr 1fr;gap:6px}.activity-cards{gap:14px}.activity-card{align-items:flex-start;flex-direction:column;padding:24px 20px}.activity-card h3{font-size:1.5rem}.colorful .locations-inner{grid-template-columns:1fr 1fr;gap:24px}.colorful .locations-inner>h2{grid-column:1/-1}.colorful .location-mini{border:0;padding-left:0}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.preview-inner{padding-block:8px;font-size:.75rem;gap:8px}.preview-label .preview-name{display:none}.preview-nav{gap:2px}.preview-nav a{padding:4px 9px}.preview-nav .overview{margin-right:3px}.wordmark strong{font-size:1.55rem}.wordmark span{font-size:.64rem;margin-top:5px}.header-inner{min-height:81px}.navigation{left:-20px;right:-20px;padding-inline:20px}.warm-hero{display:flex;flex-direction:column;padding-top:0;gap:0}.hero-copy{padding:30px 0 35px;width:100%}.hero-copy .eyebrow{font-size:.72rem;margin-bottom:18px;letter-spacing:.15em}.warm h1{font-size:clamp(2rem,7.6vw,2.95rem);line-height:1.15;letter-spacing:-.05em}.hero-subtitle{margin-top:21px}.hero-copy .hero-subtitle{font-size:1.05rem;max-width:330px}.hero-copy .actions{margin-top:22px;gap:11px}.button{min-height:50px;font-size:.92rem}.welcome-note{display:none}.warm-hero .hero-photo{height:310px;width:100%;border-radius:50% 50% 0 0 / 20% 20% 0 0;object-position:50% 48%}.locations-inner{display:block;padding-block:29px}.locations-inner h2{font-size:1.75rem;margin-bottom:22px}.location-mini{background:#f9f8ef;border-radius:9px;padding:19px 20px;margin-top:13px;gap:15px}.location-mini h3{font-size:1.3rem}.location-mini p{margin-block:5px}.location-mini .pin{width:23px}.section{padding-block:48px}.section-heading{margin-bottom:25px;align-items:start;gap:18px}.section-heading h2{font-size:2rem}.section-heading>.text-link{max-width:110px;text-align:right;line-height:1.45;padding-top:8px;font-size:.82rem;white-space:normal}.photo-cards{grid-template-columns:1fr;gap:20px}.photo-card img{height:220px}.photo-card>div{padding:20px}.photo-card h3{font-size:1.5rem}.intro-grid{grid-template-columns:1fr;gap:24px}.intro-grid h2{font-size:2.35rem;margin-top:14px;max-width:320px}.intro-copy{font-size:1rem}.offerings{grid-template-columns:1fr;gap:18px}.offering{padding:28px}.offering h3{font-size:1.6rem}.offering .kicker{margin-bottom:14px}.services-grid{grid-template-columns:1fr;gap:28px}.service{padding-top:23px}.calendar-row{flex-direction:column;align-items:stretch;gap:22px}.contact-grid{gap:32px}.address-cards{gap:30px;grid-template-columns:1fr}.address{padding-top:18px}.address address{margin-bottom:13px}.site-footer{padding-top:38px}.footer-links{gap:12px 20px}.footer-bottom{flex-direction:column;gap:14px;margin-top:30px}.color-hero{padding-top:32px}.color-hero .eyebrow{font-size:.64rem;letter-spacing:.09em;white-space:normal}.color-hero h1{font-size:clamp(3.1rem,12.4vw,4.8rem);margin:20px auto 22px;max-width:390px;line-height:1.02;letter-spacing:-.055em}.color-hero h1 .underline:after{height:5px;bottom:-4px}.color-hero .hero-subtitle{font-size:1.03rem;max-width:270px;margin:23px auto 0}.color-hero .actions{display:block;margin:24px 0 30px}.color-hero .actions .button{display:flex;width:100%;padding-inline:10px}.color-hero .actions .text-button{margin-top:8px;min-height:40px}.photo-triptych{display:block;height:275px}.photo-triptych img{display:none}.photo-triptych img:nth-child(2){display:block;object-position:50% 48%}.colorful .activity-section{padding-block:34px 37px}.colorful .section-heading{margin-bottom:22px}.colorful .section-heading h2{font-size:2rem}.activity-cards{grid-template-columns:1fr;gap:14px}.activity-card{flex-direction:row;align-items:center;gap:22px;padding:25px}.activity-card svg{width:42px;height:42px}.activity-card h3{font-size:1.45rem;margin-bottom:4px}.colorful .locations-inner{display:block;padding-block:28px}.colorful .locations-inner h2{font-size:1.65rem;margin-bottom:20px}.colorful .location-mini{padding:15px 0;margin:0;background:transparent;border-top:1px solid #5f8586;border-radius:0}.colorful .location-mini h3{font-size:1.4rem}.colorful .section{padding-block:48px}.colorful .intro-grid h2{font-size:2.55rem}.colorful .contact-grid{gap:32px}.colorful .wordmark strong{font-size:1.7rem}.colorful .wordmark span{font-size:.67rem}.colorful .activity-section .section-heading{display:block}.colorful .activity-section .section-heading>.text-link{max-width:none;text-align:left;margin-top:10px;font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
