/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--ink:#18231f;--muted-ink:#5f6964;--stone:#ece8df;--paper:#f8f6f0;--white:#fffefa;--aqua:#a9d9d1;--aqua-deep:#4f8f86;--clay:#c97758;--line:#18231f2e}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--stone)}body{color:var(--ink);background:var(--stone);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}main{min-height:100vh}.kicker,.group-heading>div>p:first-child,.service-card-copy p{letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:700}.hero{border:1px solid var(--ink);background:var(--paper);border-radius:1.5rem;grid-template-rows:auto 1fr;grid-template-columns:.9fr 1.1fr;width:min(100% - 2rem,92rem);min-height:min(55rem,100vh - 2rem);margin:1rem auto 0;display:grid;overflow:hidden;box-shadow:0 1.75rem 4rem #18231f1a}.topbar{border-bottom:1px solid var(--ink);min-height:5rem;color:var(--paper);background:var(--ink);grid-column:1/-1;justify-content:space-between;align-items:center;padding:0 2rem;display:flex}.topbar>p{letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:700}.topbar>p i{color:var(--clay);margin:0 .55rem;font-style:normal}.elite-mark{align-items:center;width:clamp(11rem,17vw,15rem);text-decoration:none;display:inline-flex}.elite-mark img{width:100%;height:auto;display:block}.hero-art{border-right:1px solid var(--ink);background:var(--ink);min-height:42rem;position:relative;overflow:hidden}.hero-orbit{border:1px solid #f8f6f0bf;border-radius:50%;position:absolute}.hero-orbit-one{aspect-ratio:1;width:120%;top:-25%;left:-58%}.hero-orbit-two{aspect-ratio:1;width:110%;bottom:-46%;right:-60%}.hero-disc{aspect-ratio:1;background:var(--aqua);border-radius:50%;width:52%;position:absolute;top:42%;left:48%;transform:translate(-50%,-50%)}.hero-disc:after{content:"";background:var(--paper);width:140%;height:1px;position:absolute;top:55%;left:-20%;transform:rotate(-32deg)}.hero-dot{aspect-ratio:1;background:var(--clay);border-radius:50%;width:5.5rem;position:absolute;bottom:11%;right:10%}.hero-copy{align-self:center;padding:clamp(2.75rem,6vw,6.25rem)}h1,.section-intro h2,.catalog-heading h2,.group-heading h2{letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-weight:400}h1{max-width:8ch;margin:1rem 0 0;font-size:clamp(4.2rem,7.4vw,7.7rem);line-height:.86}.intro{max-width:36rem;color:var(--muted-ink);margin:2rem 0;font-size:1.02rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:.7rem;display:flex}.primary-action,.secondary-action,.contact-action{border:1px solid var(--ink);letter-spacing:.11em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-height:3.25rem;padding:.9rem 1.2rem;font-size:.7rem;font-weight:700;text-decoration:none;transition:transform .16s,background .16s,color .16s;display:inline-flex}.primary-action{color:var(--paper);background:var(--ink)}.secondary-action{background:0 0}.contact-action{color:var(--muted-ink);border-color:#0000;padding-inline:.45rem}.primary-action:hover,.primary-action:focus-visible,.secondary-action:hover,.secondary-action:focus-visible{color:var(--ink);background:var(--aqua);transform:translateY(-2px)}.contact-action:hover,.contact-action:focus-visible{color:var(--ink);text-underline-offset:.35rem;text-decoration:underline}.category-nav{flex-wrap:wrap;gap:.45rem;margin-top:2.25rem;display:flex}.category-nav a{border-bottom:1px solid var(--line);color:var(--muted-ink);padding:.55rem .72rem;font-size:.68rem;font-weight:700;text-decoration:none}.category-nav a:hover,.category-nav a:focus-visible{color:var(--ink);border-color:var(--clay)}.booking-tools,.class-schedule,.catalog{width:min(100% - 2rem,92rem);margin:6rem auto}.swim-camp-feature{border:1px solid var(--ink);background:var(--aqua);border-radius:1.5rem;grid-template-columns:minmax(0,.9fr) minmax(24rem,1.1fr);width:min(100% - 2rem,92rem);margin:2rem auto 6rem;scroll-margin-top:1rem;display:grid;overflow:hidden;box-shadow:0 1.75rem 4rem #18231f1a}.swim-camp-copy{padding:clamp(2rem,5vw,5rem)}.swim-camp-labels{justify-content:space-between;align-items:center;gap:1rem;display:flex}.swim-camp-labels>span{color:var(--paper);background:var(--clay);letter-spacing:.11em;text-transform:uppercase;border-radius:999px;padding:.5rem .7rem;font-size:.61rem;font-weight:700}.swim-camp-copy h2{letter-spacing:-.06em;max-width:8ch;margin:1.25rem 0 1.5rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,6vw,6.4rem);font-weight:400;line-height:.88}.swim-camp-intro{color:#18231fc7;max-width:37rem;margin:0;line-height:1.7}.swim-camp-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2.25rem 0 0;display:grid}.swim-camp-details div{border-top:1px solid #18231f4d;padding-top:.85rem}.swim-camp-details dt{letter-spacing:.13em;text-transform:uppercase;margin-bottom:.35rem;font-size:.61rem;font-weight:700}.swim-camp-details dd{margin:0;font-size:.88rem;line-height:1.45}.swim-camp-callout{margin:2rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.35rem}.swim-camp-booking{border-left:1px solid var(--ink);background:var(--paper);padding:clamp(1.25rem,3vw,2.5rem)}.swim-camp-booking-heading{padding:.75rem .75rem 1.5rem}.swim-camp-booking-heading>span{color:var(--clay);letter-spacing:.14em;text-transform:uppercase;font-size:.61rem;font-weight:700}.swim-camp-booking-heading h3{letter-spacing:-.045em;margin:.55rem 0 .6rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3vw,3.25rem);font-weight:400}.swim-camp-booking-heading p{color:var(--muted-ink);margin:0;line-height:1.55}.swim-camp-widget{border:1px solid var(--line);border-radius:1rem;min-height:22rem}.class-schedule{margin-top:0}.class-schedule-widget{border:1px solid var(--ink);border-radius:1rem;min-height:22rem;overflow:hidden}.section-intro{grid-template-columns:1fr 1fr;align-items:end;gap:2rem;margin-bottom:2.5rem;display:grid}.section-intro .kicker{grid-column:1/-1}.section-intro h2,.catalog-heading h2{margin:0;font-size:clamp(3.2rem,6vw,6rem);line-height:.9}.section-intro>p:last-child,.catalog-heading>p{max-width:34rem;color:var(--muted-ink);margin:0;line-height:1.65}.booking-panels{gap:.85rem;display:grid}.booking-panel{border:1px solid var(--ink);background:var(--paper);border-radius:1rem;overflow:hidden}.booking-panel summary{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:1.2rem;min-height:6.5rem;padding:1.3rem 1.5rem;list-style:none;display:grid}.booking-panel summary::-webkit-details-marker{display:none}.booking-panel summary>span{color:var(--clay);font-family:Georgia,Times New Roman,serif;font-size:1rem}.booking-panel summary div{gap:.35rem;display:grid}.booking-panel summary strong{font-family:Georgia,Times New Roman,serif;font-size:1.6rem;font-weight:400}.booking-panel summary small{color:var(--muted-ink);font-size:.78rem}.booking-panel summary i{letter-spacing:.14em;text-transform:uppercase;font-size:.63rem;font-style:normal;font-weight:700}.booking-panel summary i:before{content:"Open"}.booking-panel[open] summary{border-bottom:1px solid var(--line)}.booking-panel[open] summary i:before{content:"Close"}.embedded-widget-wrap{background:var(--white);min-height:9rem;padding:1.5rem}.catalog-heading{border-bottom:1px solid var(--ink);grid-template-columns:1.2fr .8fr;align-items:end;gap:2rem;padding-bottom:3rem;display:grid}.catalog-heading h2{margin-top:.8rem}.service-group{border-bottom:1px solid var(--ink);grid-template-columns:minmax(15rem,.62fr) 1.38fr;gap:clamp(2rem,5vw,5rem);padding:4rem 0;scroll-margin-top:1rem;display:grid}.group-heading{grid-template-columns:auto 1fr;align-content:start;gap:1rem;display:grid}.group-heading>span{color:var(--clay);padding-top:.35rem;font-family:Georgia,Times New Roman,serif;font-size:.95rem}.group-heading h2{margin:.6rem 0 1rem;font-size:clamp(2.5rem,4.6vw,4.8rem);line-height:.92}.group-description{max-width:26rem;color:var(--muted-ink);margin:0;font-size:.9rem;line-height:1.6}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.service-card{border:1px solid var(--line);background:var(--paper);border-radius:.9rem;flex-direction:column;justify-content:space-between;min-height:12.25rem;padding:1.2rem;display:flex}.service-card-copy p{color:var(--muted-ink);letter-spacing:.1em;margin-bottom:.55rem}.service-card h3{letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:400}.pricing-widget{min-height:3rem;margin-top:1.25rem}.healcode-pricing-option-text-link,.pricing-widget a{justify-content:center;align-items:center;width:100%;min-height:3rem;border:1px solid var(--ink)!important;color:var(--paper)!important;background:var(--ink)!important;letter-spacing:.08em!important;text-align:center!important;text-transform:uppercase!important;border-radius:999px!important;padding:.75rem .9rem!important;font-family:Arial,Helvetica,sans-serif!important;font-size:.61rem!important;font-weight:700!important;line-height:1.35!important;text-decoration:none!important;transition:transform .16s,color .16s,background .16s!important;display:inline-flex!important}.healcode-pricing-option-text-link:hover,.pricing-widget a:hover{transform:translateY(-2px);color:var(--ink)!important;background:var(--aqua)!important}.healcode-pricing-option-text-link:focus-visible,.pricing-widget a:focus-visible{outline:3px solid var(--clay)!important;outline-offset:3px!important}.contact-section{width:min(100% - 2rem,92rem);color:var(--paper);background:var(--ink);border-radius:1.5rem;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);margin:6rem auto;padding:clamp(2rem,5vw,5rem);scroll-margin-top:1rem;display:grid}.contact-copy{align-self:start}.contact-copy h2{letter-spacing:-.06em;max-width:7ch;margin:.8rem 0 1.5rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,6vw,6rem);font-weight:400;line-height:.9}.contact-copy>p:not(.kicker){color:#f8f6f0b8;max-width:31rem;margin:0;line-height:1.7}.contact-note{border-top:1px solid #f8f6f040;margin-top:3rem;padding-top:1rem}.contact-note span{color:var(--aqua);letter-spacing:.13em;text-transform:uppercase;margin-bottom:.5rem;font-size:.64rem;font-weight:700;display:block}.contact-note p{color:#f8f6f0a3;margin:0;font-size:.82rem;line-height:1.5}.contact-form{gap:1rem;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-form label{gap:.5rem;display:grid}.contact-form label>span{letter-spacing:.12em;text-transform:uppercase;font-size:.66rem;font-weight:700}.contact-form label>span small{color:#f8f6f085;font-size:inherit;font-weight:400}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--paper);font:inherit;background:#f8f6f00f;border:1px solid #f8f6f052;border-radius:.7rem;outline:none}.contact-form input,.contact-form select{min-height:3.35rem;padding:0 .9rem}.contact-form textarea{resize:vertical;min-height:10rem;padding:.9rem}.contact-form select{appearance:auto}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 3px #a9d9d12e}.contact-form textarea::placeholder{color:#f8f6f070}.contact-form .form-consent{grid-template-columns:none;align-items:flex-start;gap:.65rem;margin-top:.25rem;display:flex}.form-consent input{width:1rem;height:1rem;min-height:auto;accent-color:var(--aqua);margin:.08rem 0 0}.contact-form .form-consent span{color:#f8f6f0b8;letter-spacing:0;text-transform:none;font-size:.72rem;line-height:1.4}.contact-form button{border:1px solid var(--aqua);min-height:3.5rem;color:var(--ink);background:var(--aqua);letter-spacing:.11em;text-transform:uppercase;cursor:pointer;border-radius:999px;justify-content:space-between;align-items:center;padding:0 1.1rem;font-size:.68rem;font-weight:700;transition:transform .16s,background .16s;display:inline-flex}.contact-form button:hover,.contact-form button:focus-visible{background:var(--paper);transform:translateY(-2px)}.form-caption{color:#f8f6f07a;text-align:center;margin:-.3rem 0 0;font-size:.68rem}footer{width:min(100% - 2rem,92rem);color:var(--paper);background:var(--ink);border-radius:1rem;grid-template-columns:1fr auto auto;align-items:center;gap:2rem;margin:0 auto;padding:1.5rem;display:grid}footer p{color:#f8f6f0ad;letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.64rem;font-weight:700}.elite-mark-footer{cursor:default;width:clamp(11rem,16vw,14rem)}@media (width<=900px){.hero{grid-template-columns:1fr}.hero-art{border-right:0;border-bottom:1px solid var(--ink);min-height:18rem}.hero-disc{width:10rem}.service-group{grid-template-columns:1fr}.group-heading{max-width:38rem}.contact-section,.swim-camp-feature{grid-template-columns:1fr}.swim-camp-booking{border-top:1px solid var(--ink);border-left:0}footer{grid-template-columns:1fr 1fr}footer .elite-mark{grid-column:1/-1}}@media (width<=620px){.hero{border:0;border-radius:0;width:100%;min-height:100vh;margin:0}.topbar{align-items:flex-start;gap:1rem;padding:1.1rem 1.25rem}.elite-mark{width:10.5rem}.topbar>p{text-align:right;max-width:9rem;line-height:1.5}.hero-copy{padding:2.75rem 1.25rem 3.5rem}h1{font-size:clamp(3.8rem,18vw,5.7rem)}.hero-actions a{width:100%}.booking-tools,.class-schedule,.catalog{width:calc(100% - 2.5rem);margin-block:4rem}.class-schedule{margin-top:0}.swim-camp-feature{border-inline:0;border-radius:0;width:100%;margin:0 0 4rem}.swim-camp-copy{padding:3rem 1.25rem}.swim-camp-labels{align-items:flex-start}.swim-camp-details{grid-template-columns:1fr}.swim-camp-booking{padding:1.25rem}.swim-camp-widget{min-height:18rem}.section-intro,.catalog-heading{grid-template-columns:1fr}.section-intro .kicker{grid-column:auto}.service-group{padding-block:3rem}.service-grid{grid-template-columns:1fr}.service-card{min-height:11rem}.booking-panel summary{grid-template-columns:auto 1fr}.booking-panel summary i{display:none}.embedded-widget-wrap{padding:.6rem}.contact-section{border-radius:0;width:100%;margin-bottom:4rem;padding:3rem 1.25rem}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;gap:1rem;width:calc(100% - 2.5rem)}footer .elite-mark{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary-action,.secondary-action,.contact-action,.contact-form button,.healcode-pricing-option-text-link,.pricing-widget a{transition:none!important}}
