@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--color-white:#fff;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.block{display:block}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.italic{font-style:italic}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--color-ink:#102231;--color-ink-soft:#1a3243;--color-paper:#f6f8f6;--color-white:#fff;--color-ice:#e9f0ef;--color-line:#d9e0df;--color-muted:#61717b;--color-accent:#dfff54;--color-accent-dark:#b8dd35;--color-warning:#ffdf76;--font-display:Arial, Helvetica, sans-serif;--font-body:Arial, Helvetica, sans-serif;--radius-small:12px;--radius-medium:22px;--radius-large:36px;--shadow-soft:0 24px 70px #10223117;--shell:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}body,button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,summary,select{cursor:pointer}:focus-visible{outline:3px solid var(--color-accent-dark);outline-offset:4px}.skip-link{z-index:1000;background:var(--color-white);color:var(--color-ink);box-shadow:var(--shadow-soft);border-radius:8px;padding:10px 14px;font-weight:800;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(calc(-100% - 24px))}.skip-link:focus-visible{transform:translateY(0)}main:focus{outline:none}::selection{background:var(--color-accent);color:var(--color-ink)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;font-weight:800;line-height:1.02}h1{letter-spacing:-.07em;font-size:clamp(3.1rem,6.2vw,6.35rem)}h2{letter-spacing:-.055em;font-size:clamp(2.25rem,4vw,4.55rem)}h3{letter-spacing:-.035em;font-size:clamp(1.25rem,2vw,1.75rem)}.shell{width:min(calc(100% - 40px), var(--shell));margin-inline:auto}.section{padding-block:clamp(76px,9vw,132px)}.section--dark{background:var(--color-ink);color:var(--color-white)}.section--tint{background:var(--color-ice)}.eyebrow,.small-label,.footer-label{color:var(--color-muted);letter-spacing:.16em;text-transform:uppercase;margin-bottom:20px;font-size:.76rem;font-weight:800;line-height:1.2}.eyebrow:before{vertical-align:middle;content:"";background:currentColor;width:24px;height:2px;margin-right:10px;display:inline-block}.eyebrow--light,.section--dark .eyebrow,.section--dark .section-heading__description{color:#aebcc3}.muted{color:var(--color-muted)}.review-badge{background:var(--color-warning);color:#4b3806;letter-spacing:.04em;text-transform:uppercase;border:1px solid #d8a41a;border-radius:999px;width:fit-content;margin-top:8px;padding:4px 8px;font-size:.67rem;font-weight:800;line-height:1.2;display:inline-flex}.review-badge:before{content:"!";margin-right:5px}.review-badge--draft{color:#203c52;background:#e5eef5;border-style:dashed;border-color:#66819a}.review-badge--draft:before{content:"≈"}.review-badge--owner-confirmed{color:#14573f;background:#ddf7eb;border-color:#25805e}.review-badge--owner-confirmed:before{content:"✓"}.section-heading{max-width:780px;margin-bottom:clamp(38px,6vw,72px)}.section-heading h2{margin-bottom:24px}.section-heading__description{max-width:650px;color:var(--color-muted);margin-bottom:0;font-size:1.08rem}.section-heading--center{text-align:center;margin-inline:auto}.button{border:1px solid #0000;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;min-height:48px;padding:11px 17px 11px 20px;font-size:.85rem;font-weight:800;line-height:1.2;transition:background .18s,color .18s,border-color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--color-ink);color:var(--color-white)}.button--primary:hover{background:var(--color-ink-soft)}.button--secondary{color:var(--color-white);background:0 0;border-color:#ffffff47}.button--secondary:hover{border-color:var(--color-white)}.button--light{background:var(--color-white);color:var(--color-ink)}.button--light:hover,.button--accent{background:var(--color-accent);color:var(--color-ink)}.button--accent{border:0}.text-link{border-bottom:1px solid;align-items:center;gap:12px;padding-bottom:4px;font-size:.9rem;font-weight:800;display:inline-flex}.text-link:hover span:last-child{transform:translate(2px,-2px)}.reviews-section__footer{justify-content:flex-end;margin-top:clamp(28px,5vw,48px);display:flex}.reviews-archive-nav{margin-bottom:clamp(44px,7vw,76px)}.reviews-archive-nav ul{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.reviews-archive-nav a{border:1px solid var(--color-line);background:var(--color-white);overflow-wrap:anywhere;border-radius:999px;align-items:center;min-height:44px;padding:9px 14px;font-size:.82rem;font-weight:800;line-height:1.25;display:inline-flex}.reviews-archive-nav a:hover{border-color:var(--color-ink)}.reviews-archive{gap:clamp(64px,9vw,112px);display:grid}.reviews-archive__group{min-width:0;scroll-margin-top:24px}.reviews-archive__group h3{border-bottom:1px solid var(--color-line);margin-bottom:clamp(24px,4vw,38px);padding-bottom:18px;font-size:clamp(1.65rem,3vw,2.5rem)}.reviews-section--archive .reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.reviews-section--archive .review-card{min-height:0}.review-card,.review-card blockquote,.review-card footer,.review-card__byline,.review-card__source{min-width:0}.review-card__byline{gap:4px;display:grid}.review-card cite,.review-card__source,.review-card__source a,.review-card__source span{overflow-wrap:anywhere}.review-card__source{color:var(--color-muted);margin:6px 0 0;font-size:.8rem;line-height:1.45}.review-card__source>span:first-child{font-weight:700}.review-migration-note .review-migration-note__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;padding:0;list-style:none;display:grid}.review-migration-note__stats li{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.review-migration-note__stats strong{color:var(--color-ink);font-size:1.05rem}.review-migration-note__stats .review-migration-note__media{grid-column:1/-1;padding-top:6px;display:block}.site-header{z-index:20;border-bottom:1px solid var(--color-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f8f6f0;position:relative}.site-header__inner{grid-template-columns:auto 1fr auto;align-items:center;gap:36px;min-height:84px;display:grid}.brand{align-items:center;gap:11px;width:fit-content;display:inline-flex}.brand__mark{background:var(--color-ink);width:38px;height:38px;color:var(--color-accent);border-radius:50% 50% 50% 8px;place-items:center;font-size:1.05rem;font-weight:900;line-height:1;display:grid}.brand__copy{line-height:1;display:grid}.brand__copy strong{letter-spacing:.09em;font-size:1.08rem}.brand__copy small{color:var(--color-muted);letter-spacing:.13em;text-transform:uppercase;margin-top:5px;font-size:.6rem}.desktop-nav{justify-content:center;align-items:center;gap:clamp(16px,2vw,31px);display:flex}.desktop-nav a{font-size:.82rem;font-weight:700;position:relative}.desktop-nav a:after{background:var(--color-ink);content:"";transform-origin:0;height:2px;transition:transform .18s;position:absolute;bottom:-7px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after{transform:scaleX(1)}.mobile-menu{display:none;position:relative}.mobile-menu summary{border:1px solid var(--color-line);border-radius:999px;align-items:center;gap:10px;padding:9px 13px;font-size:.8rem;font-weight:800;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu__icon{border-block:2px solid;width:16px;height:10px;position:relative}.mobile-menu__panel{overscroll-behavior:contain;border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--color-white);width:min(320px,100vw - 40px);max-height:calc(100dvh - 96px);box-shadow:var(--shadow-soft);gap:4px;padding:16px;display:grid;position:absolute;top:calc(100% + 12px);right:0;overflow-y:auto}.mobile-menu__panel>a:not(.button){border-radius:10px;padding:10px 12px;font-weight:750}.mobile-menu__panel>a:not(.button):hover{background:var(--color-ice)}.mobile-menu__panel .button{margin-top:8px}.hero{padding-block:clamp(80px,9vw,132px) 28px;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid #ffffff14;border-radius:50%;width:55vw;height:55vw;position:absolute;top:-28%;right:-12%}.hero__grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:center;gap:clamp(54px,8vw,110px);display:grid;position:relative}.hero__content h1{max-width:900px;margin-bottom:32px}.hero__description{color:#bdc9cf;max-width:710px;margin-bottom:38px;font-size:clamp(1.02rem,1.4vw,1.22rem)}.hero__actions{flex-wrap:wrap;gap:12px;display:flex}.rink-visual{border-radius:var(--radius-large);background:#ffffff0a;border:1px solid #ffffff1f;align-self:stretch;min-height:500px;padding:14px;transform:rotate(1.5deg)}.rink-visual__surface{height:calc(100% - 66px);min-height:405px;color:var(--color-ink);background:linear-gradient(145deg,#e9f1f0,#b9cbcd);border-radius:28px;position:relative;overflow:hidden}.rink-visual__surface:before,.rink-visual__surface:after{content:"";position:absolute;top:0;bottom:0}.rink-visual__surface:before{background:#10223140;width:2px;left:50%}.rink-visual__surface:after{border-inline:1px solid #10223124;left:15%;right:15%}.rink-visual__center{border:1px solid #10223140;border-radius:50%;width:120px;height:120px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rink-visual__label{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffc2;border:1px solid #ffffffb3;border-radius:14px;min-width:125px;padding:14px;display:grid;position:absolute;box-shadow:0 12px 30px #1022311a}.rink-visual__label span{color:var(--color-muted);font-size:.67rem;font-weight:800}.rink-visual__label strong{margin-top:3px}.rink-visual__label--one{top:12%;left:7%}.rink-visual__label--two{top:42%;right:6%}.rink-visual__label--three{bottom:10%;left:15%}.rink-visual__puck{background:var(--color-ink);border-radius:50%;width:37px;height:23px;position:absolute;top:29%;right:27%;box-shadow:0 8px #08141c}.rink-visual>p{color:#c3ced3;max-width:320px;margin:15px 14px 0;font-size:.82rem;line-height:1.45}.hero__rail{color:#83949c;letter-spacing:.14em;border-top:1px solid #ffffff21;justify-content:space-between;gap:24px;margin-top:clamp(68px,8vw,108px);padding-top:28px;font-size:.65rem;font-weight:800;display:flex;position:relative}.route-grid{border-top:1px solid var(--color-line);border-left:1px solid var(--color-line);grid-template-columns:repeat(2,1fr);display:grid}.route-card{border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);background:var(--color-white);grid-template-columns:auto 1fr auto;gap:26px;min-height:280px;padding:clamp(30px,4vw,54px);transition:background .18s,color .18s;display:grid;position:relative}.route-card:hover{background:var(--color-ink);color:var(--color-white)}.route-card__marker{color:var(--color-muted);font-size:.72rem;font-weight:800}.route-card h3{margin-bottom:18px;font-size:clamp(1.8rem,3vw,2.8rem)}.route-card p{max-width:410px;color:var(--color-muted);margin-bottom:0}.route-card:hover p,.route-card:hover .route-card__marker{color:#b8c4c9}.route-card__arrow{border:1px solid var(--color-line);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.directions-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(60px,10vw,150px);display:grid}.directions-grid .section-heading{margin-bottom:0;position:sticky;top:32px}.direction-list{margin:0;padding:0;list-style:none}.direction-list li{border-bottom:1px solid #cad4d3;grid-template-columns:52px 1fr;gap:24px;padding-block:22px;display:grid}.direction-list li:first-child{border-top:1px solid #cad4d3}.direction-list span{color:var(--color-muted);font-size:.74rem;font-weight:800}.direction-list p{margin-bottom:0;font-size:clamp(1.12rem,2vw,1.55rem);font-weight:750;line-height:1.25}.process-grid{border-top:1px solid var(--color-line);grid-template-columns:repeat(4,1fr);display:grid}.process-card{border-right:1px solid var(--color-line);flex-direction:column;justify-content:space-between;min-height:350px;padding:28px;display:flex}.process-card:first-child{border-left:1px solid var(--color-line)}.process-card>span{color:var(--color-muted);font-size:.75rem;font-weight:800}.process-card h3{margin-bottom:15px}.process-card p{color:var(--color-muted);margin-bottom:0;font-size:.92rem}.format-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.format-card{border-radius:var(--radius-medium);background:#ffffff0a;border:1px solid #ffffff1c;min-height:390px;padding:26px}.format-card:first-child{background:var(--color-accent);color:var(--color-ink);grid-column:span 2}.format-card__top{color:#8ea0a8;justify-content:space-between;align-items:center;margin-bottom:84px;font-size:.73rem;font-weight:800;display:flex}.format-card:first-child .format-card__top{color:#5e701e}.format-card__top a{border:1px solid;border-radius:50%;place-items:center;width:38px;height:38px;font-size:1rem;display:grid}.format-card h3{margin-bottom:14px;font-size:clamp(1.55rem,2.5vw,2.2rem)}.format-card>p{color:#aebdc4;max-width:450px}.format-card:first-child>p{color:#344513}.format-card__meta{border-top:1px solid #ffffff1c;flex-wrap:wrap;gap:6px 10px;margin-top:26px;padding-top:16px;display:flex}.format-card:first-child .format-card__meta{border-color:#10223133}.format-card__meta p{color:#aebdc4;width:100%;margin:4px 0 0;font-size:.74rem}.format-card:first-child .format-card__meta p{color:#4b5e16}.coach-grid,.coach-profile-grid{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(56px,9vw,130px);display:grid}.coach-portrait{border-radius:var(--radius-large);background:linear-gradient(145deg,#cad6d5,#eaf1ef);place-items:center;min-height:610px;display:grid;position:relative;overflow:hidden}.coach-portrait:before,.coach-portrait:after{content:"";border:1px solid #10223126;border-radius:50%;position:absolute}.coach-portrait:before{width:420px;height:420px}.coach-portrait:after{width:280px;height:280px}.coach-portrait__monogram{z-index:2;color:var(--color-ink);letter-spacing:-.09em;font-size:clamp(5rem,10vw,9rem);font-weight:900;position:relative}.coach-portrait__caption{z-index:2;color:var(--color-muted);text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;border-radius:12px;padding:12px;font-size:.72rem;font-weight:750;position:absolute;bottom:22px;left:22px;right:22px}.coach-copy h2{margin-bottom:12px}.coach-copy__role{color:var(--color-muted);font-size:1rem;font-weight:750}.coach-copy__bio{max-width:670px;margin-block:32px;font-size:1.22rem}.coach-copy__facts{gap:18px;margin:0 0 36px;padding:0;list-style:none;display:grid}.coach-copy__facts li{grid-template-columns:30px 1fr;gap:12px;display:grid}.coach-copy__facts li>span{background:var(--color-accent);border-radius:50%;place-items:center;width:25px;height:25px;font-size:.75rem;font-weight:900;display:grid}.coach-copy__facts p{color:var(--color-muted);margin:4px 0 0;font-size:.9rem}.location-section .section-heading{max-width:900px}.location-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.location-card{border-radius:var(--radius-medium);background:#ffffff0a;border:1px solid #ffffff1f;min-height:260px;padding:26px}.location-card__district{color:#8ea0a8;letter-spacing:.09em;text-transform:uppercase;margin-bottom:62px;font-size:.72rem;font-weight:800}.location-card h3{margin-bottom:12px}.location-card>p:last-of-type{color:#aebdc4;margin-bottom:0;font-size:.9rem}.proof-grid{grid-template-columns:1.15fr .85fr;gap:18px;display:grid}.proof-grid--single{grid-template-columns:minmax(0,1fr);max-width:960px}.proof-grid--single .proof-card{min-height:0}.proof-card,.archive-card{border-radius:var(--radius-large);min-height:520px}.proof-card{background:var(--color-white);box-shadow:var(--shadow-soft);padding:clamp(34px,5vw,64px)}.proof-card h2{max-width:700px;margin-bottom:28px}.proof-card>p:not(.eyebrow){max-width:680px;color:var(--color-muted);font-size:1.04rem}.proof-card__note{border-left:3px solid var(--color-accent-dark);background:var(--color-paper);margin-block:28px;padding:20px}.proof-card a,.case-strip a{align-items:center;gap:8px;font-size:.86rem;font-weight:800;display:inline-flex}.archive-card{background:var(--color-ink);color:var(--color-white);flex-direction:column;justify-content:space-between;padding:clamp(34px,5vw,56px);display:flex;position:relative;overflow:hidden}.archive-card__symbol{color:var(--color-accent);letter-spacing:-.1em;opacity:.8;align-self:flex-end;font-size:10rem;font-weight:900;line-height:.8}.archive-card h3{margin-bottom:18px;font-size:clamp(2rem,3vw,3rem)}.archive-card p:last-child{color:#aebdc4;margin-bottom:0}.faq-grid,.faq-page-grid{grid-template-columns:.75fr 1.25fr;align-items:start;gap:clamp(50px,9vw,140px);display:grid}.faq-grid>div:first-child,.faq-page-grid>div:first-child{position:sticky;top:32px}.faq-list{border-top:1px solid #c7d1d0}.faq-item{border-bottom:1px solid #c7d1d0}.faq-item summary{grid-template-columns:44px 1fr 28px;align-items:center;gap:16px;padding-block:24px;font-size:clamp(1rem,1.5vw,1.22rem);font-weight:800;list-style:none;display:grid}.faq-item summary::-webkit-details-marker{display:none}.faq-item__number{color:var(--color-muted);font-size:.68rem}.faq-item__plus{width:20px;height:20px;position:relative}.faq-item__plus:before,.faq-item__plus:after{content:"";background:currentColor;width:16px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-item__plus:after{transition:transform .16s;transform:translate(-50%,-50%)rotate(90deg)}.faq-item[open] .faq-item__plus:after{transform:translate(-50%,-50%)rotate(0)}.faq-item__answer{padding:0 38px 28px 60px}.faq-item__answer p{max-width:680px;color:var(--color-muted);margin-bottom:0}.finder-section{background:var(--color-ink);color:var(--color-white)}.finder-grid{grid-template-columns:.75fr 1.25fr;gap:clamp(50px,8vw,110px);display:grid}.finder-intro{align-self:start}.finder-intro h2{margin-bottom:28px}.finder-intro>p:not(.eyebrow){color:#aebdc4}.finder-form{border-radius:var(--radius-large);background:var(--color-white);color:var(--color-ink);padding:clamp(24px,4vw,44px)}.finder-contact-note{margin-top:16px;font-size:.9rem}.finder-handoff{grid-column:1/-1;min-width:0}.finder-handoff__actions{flex-wrap:wrap;gap:12px;display:flex}.finder-intro>.button,.finder-handoff__actions>.button{white-space:normal;max-width:100%}.finder-handoff__actions>button:disabled{opacity:.7;cursor:wait}.finder-handoff .finder-handoff__status{color:var(--color-ink);margin:12px 0 0;font-size:.9rem}.finder-handoff__manual{gap:8px;margin-top:16px;display:grid}.finder-handoff__manual textarea{border:1px solid var(--color-ink);background:var(--color-white);width:100%;min-width:0;color:var(--color-ink);font:inherit;resize:vertical;border-radius:10px;padding:12px}.form-error-summary{color:#8d2020;min-height:1.5em;margin:0 0 12px;font-size:.82rem;font-weight:800}.form-error-summary:empty{min-height:0;margin:0}.form-grid{grid-template-columns:1fr 1fr;gap:22px 16px;display:grid}.field{align-content:start;display:grid}.field label{margin-bottom:7px;font-size:.76rem;font-weight:800}.field input,.field select{border:1px solid var(--color-line);background:var(--color-paper);width:100%;min-height:52px;color:var(--color-ink);border-radius:10px;padding:12px 13px;font-size:.9rem}.field input::placeholder{color:#5b6972;opacity:1}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#b73f3f}.field__error{color:#a42d2d;margin-top:5px;font-size:.72rem}.submit-button{width:100%;margin-top:28px;padding-inline:22px}.form-summary{border-radius:var(--radius-large);background:var(--color-accent);color:var(--color-ink);grid-column:1/-1;grid-template-columns:.65fr 1.35fr;gap:50px;padding:clamp(28px,5vw,56px);display:grid}.form-summary h3{margin-bottom:12px;font-size:2rem}.form-summary>div>p:last-child{color:#43551a;margin:0}.form-summary dl{border-top:1px solid #1022313d;grid-template-columns:1fr 1fr;gap:0;margin:0;display:grid}.form-summary dl div{border-bottom:1px solid #1022313d;border-right:1px solid #1022313d;padding:13px}.form-summary dt{color:#5b6b2c;text-transform:uppercase;font-size:.68rem;font-weight:800}.form-summary dd{margin:4px 0 0;font-weight:750}.page-intro{padding-block:clamp(76px,10vw,145px)}.page-intro__grid{grid-template-columns:1.4fr .6fr;align-items:end;gap:clamp(50px,9vw,140px);display:grid}.page-intro h1{max-width:980px;margin-bottom:32px}.page-intro__description{color:#b8c5cb;max-width:760px;margin:0;font-size:1.12rem}.page-intro__aside{padding-bottom:8px}.page-intro__line{background:var(--color-accent);width:64px;height:2px;margin-bottom:22px;display:block}.page-intro__aside p{color:#9fafb6;margin:0;font-size:.88rem}.status-notice{border:1px solid var(--color-line);border-radius:var(--radius-small);background:var(--color-white);align-items:center;gap:12px;margin:-30px 0 36px;padding:13px 16px;display:flex}.status-notice__dot{background:#e3ac24;border-radius:50%;flex:none;width:9px;height:9px}.status-notice p{flex:1;margin:0;font-size:.85rem;font-weight:700}.status-notice .review-badge{margin:0}.scenario-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.scenario-card{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--color-white);min-height:300px;padding:clamp(28px,4vw,48px)}.scenario-card__number{color:var(--color-muted);margin-bottom:66px;font-size:.72rem;font-weight:800;display:block}.scenario-card h3{margin-bottom:14px;font-size:clamp(1.65rem,3vw,2.5rem)}.scenario-card p{max-width:530px;color:var(--color-muted);margin-bottom:0}.split-cta,.case-strip{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(50px,9vw,130px);display:grid}.split-cta h2,.case-strip h2{margin-bottom:0}.split-cta>div:last-child>p,.case-strip>div:last-child>p{color:var(--color-muted)}.split-cta .button{margin-top:20px}.split-cta--plain{border-radius:var(--radius-large);background:var(--color-white);padding:clamp(40px,6vw,72px)}.compact-feature{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(60px,10vw,140px);display:grid}.compact-feature .section-heading{margin-bottom:0}.tag-list,.check-list,.mini-steps,.approach-list{margin:0;padding:0;list-style:none}.tag-list{flex-wrap:wrap;gap:10px;display:flex}.tag-list li{background:#ffffff73;border:1px solid #c8d2d1;border-radius:999px;padding:10px 14px;font-size:.82rem;font-weight:750}.mini-steps{border-top:1px solid #cad4d3}.mini-steps li{border-bottom:1px solid #cad4d3;grid-template-columns:46px 1fr;gap:14px;padding-block:18px;display:grid}.mini-steps>li>span,.approach-list span{color:var(--color-muted);font-size:.7rem;font-weight:800}.mini-steps p{color:var(--color-muted);margin:3px 0 0;font-size:.84rem}.case-strip{align-items:start}.case-strip .muted{border-left:3px solid var(--color-accent-dark);background:#ffffff73;padding:18px}.camp-feature__grid{grid-template-columns:1fr 1fr;gap:32px;display:grid}.camp-feature .status-notice{margin:44px 0 0}.check-list{gap:13px;display:grid}.check-list li{padding-left:28px;position:relative}.check-list li:before{border-bottom:2px solid var(--color-ink);border-left:2px solid var(--color-ink);content:"";width:13px;height:7px;position:absolute;top:.45em;left:0;transform:rotate(-45deg)}.coach-portrait--large{min-height:760px}.coach-profile-grid{align-items:start}.profile-facts{border-top:1px solid var(--color-line)}.profile-facts article{border-bottom:1px solid var(--color-line);padding-block:24px}.profile-facts h3{margin-bottom:10px}.profile-facts p{color:var(--color-muted);margin:0}.coach-story-grid{grid-template-columns:1fr 1fr;gap:clamp(70px,10vw,150px);display:grid}.check-list--large{gap:22px;font-size:1.05rem}.approach-list{border-top:1px solid #cad4d3}.approach-list li{border-bottom:1px solid #cad4d3;grid-template-columns:45px 1fr;gap:12px;padding-block:20px;display:grid}.approach-list p{margin:0;font-weight:700}.contacts-grid{grid-template-columns:.8fr 1.2fr;gap:clamp(60px,10vw,150px);display:grid}.contacts-grid .section-heading{margin-bottom:0}.contact-list{border-top:1px solid var(--color-line)}.contact-row{border-bottom:1px solid var(--color-line);grid-template-columns:140px 1fr;gap:18px;padding-block:22px;display:grid}.contact-row>span:first-child{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.contact-row a{font-size:clamp(1.25rem,2.3vw,2rem);font-weight:800;line-height:1.2}.contact-row .review-badge{grid-column:2}.site-footer{color:var(--color-white);background:#091720;padding-top:clamp(70px,8vw,110px)}.site-footer .brand__mark{background:var(--color-accent);color:var(--color-ink)}.site-footer .brand__copy small,.site-footer .muted,.site-footer__identity>p{color:#8799a1}.site-footer__grid{grid-template-columns:1.2fr .8fr 1fr;gap:60px;padding-bottom:74px;display:grid}.site-footer__identity>p{max-width:310px;margin:28px 0 4px}.site-footer__identity .muted{margin-top:0}.footer-label{color:#74858d}.site-footer__nav,.site-footer__contacts{align-content:start;gap:9px;display:grid}.site-footer__nav a,.site-footer__contacts a{color:#c4cdd1;width:fit-content;font-size:.88rem}.site-footer__nav a:hover,.site-footer__contacts a:hover{color:var(--color-white)}.site-footer__contacts>div{display:grid}.site-footer__bottom{color:#74858d;border-top:1px solid #ffffff1c;justify-content:space-between;gap:20px;padding-block:24px;font-size:.7rem;display:flex}.site-footer__bottom a{text-underline-offset:3px;text-decoration:underline}@media (max-width:1080px){.desktop-nav,.desktop-cta{display:none}.site-header__inner{grid-template-columns:1fr auto}.mobile-menu{display:block}.hero__grid{grid-template-columns:1fr}.rink-visual{min-height:420px}.rink-visual__surface{min-height:330px}.process-grid{grid-template-columns:repeat(2,1fr)}.process-card:nth-child(3){border-left:1px solid var(--color-line)}.format-grid{grid-template-columns:repeat(2,1fr)}.format-card:first-child{grid-column:span 1}.location-grid{grid-template-columns:repeat(2,1fr)}.finder-grid,.faq-grid,.faq-page-grid{grid-template-columns:1fr}.faq-grid>div:first-child,.faq-page-grid>div:first-child{position:static}.finder-intro{max-width:720px}}@media (max-width:820px){.shell{width:min(calc(100% - 28px), var(--shell))}h1{font-size:clamp(2.75rem,12.5vw,4.8rem)}.hero__rail{overflow:hidden}.hero__rail span:nth-child(n+3){display:none}.route-grid,.scenario-grid,.directions-grid,.coach-grid,.coach-profile-grid,.proof-grid,.page-intro__grid,.split-cta,.case-strip,.compact-feature,.coach-story-grid,.contacts-grid,.site-footer__grid{grid-template-columns:minmax(0,1fr)}.route-card{min-height:230px}.directions-grid .section-heading{position:static}.coach-portrait,.coach-portrait--large{min-height:520px}.proof-card,.archive-card{min-height:440px}.page-intro__aside{max-width:500px}.compact-feature .section-heading,.contacts-grid .section-heading{margin-bottom:20px}.site-footer__grid{gap:42px}.reviews-archive__group{scroll-margin-top:84px}.reviews-section--archive .reviews-grid{grid-template-columns:1fr}}@media (max-width:620px){.site-header__inner{min-height:72px}.brand__copy small{display:none}.hero{padding-top:66px}.hero__actions,.hero__actions .button{width:100%}.rink-visual{border-radius:24px;min-height:380px}.rink-visual__surface{border-radius:18px;min-height:300px}.rink-visual__label{min-width:106px;padding:10px;font-size:.8rem}.rink-visual__center{width:90px;height:90px}.route-card{grid-template-columns:34px 1fr;gap:12px}.route-card__arrow{position:absolute;top:22px;right:22px}.process-grid,.format-grid,.location-grid,.form-grid,.form-summary,.form-summary dl,.camp-feature__grid{grid-template-columns:1fr}.process-card,.process-card:nth-child(3){border-left:1px solid var(--color-line);min-height:270px}.format-card{min-height:350px}.format-card__top{margin-bottom:60px}.location-card{min-height:220px}.location-card__district{margin-bottom:42px}.faq-item summary{grid-template-columns:34px 1fr 22px;gap:8px}.faq-item__answer{padding-left:42px}.finder-form{border-radius:22px;padding:20px}.form-summary{gap:28px}.form-summary dl div{border-left:1px solid #1022313d}.scenario-card{min-height:270px}.scenario-card__number{margin-bottom:48px}.status-notice{flex-wrap:wrap;align-items:flex-start}.contact-row{grid-template-columns:1fr;gap:8px}.contact-row .review-badge{grid-column:1}.site-footer__bottom{flex-direction:column}.reviews-section__footer{justify-content:flex-start}.reviews-archive-nav ul{grid-template-columns:1fr;display:grid}.reviews-archive-nav a{width:100%}.review-migration-note .review-migration-note__stats{grid-template-columns:1fr}.review-migration-note__stats .review-migration-note__media{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
:root{--color-ink:#081c33;--color-ink-soft:#0f3158;--color-ink-raised:#123f70;--color-white:#fff;--color-paper:#f7fbfe;--color-ice:#dff4ff;--color-ice-strong:#bce6fa;--color-line:#c9ddea;--color-muted:#506b80;--color-muted-dark:#b8c9d8;--color-accent:#7ec9f5;--color-accent-dark:#1e5ea8;--color-rink-red:#d94d67;--color-warning:#ffdf76;--color-focus:#164c8c;--color-focus-contrast:#dff4ff;--gradient-night:linear-gradient(145deg, #061526 0%, #0b2949 54%, #0f3158 100%);--gradient-ice:linear-gradient(145deg, #fff 0%, #e8f8ff 46%, #c9ecfb 100%);--gradient-action:linear-gradient(135deg, #164c8c 0%, #1e5ea8 55%, #2068a5 100%);--font-display:"Arial Narrow", "Roboto Condensed", "Helvetica Neue", Arial, sans-serif;--font-body:Inter, "Segoe UI", Arial, sans-serif;--radius-small:10px;--radius-medium:18px;--radius-large:30px;--shadow-soft:0 26px 70px #081c331f;--shadow-card:0 18px 48px #0f31581a;--shadow-glow:0 0 70px #7ec9f533;--motion-fast:.16s;--motion-base:.26s;--motion-slow:.7s;--ease-sport:cubic-bezier(.2, .75, .25, 1)}body{background:radial-gradient(circle at 12% 8%, #7ec9f51f, transparent 28rem), var(--color-paper);line-height:1.58}p,li{text-wrap:pretty}::selection{background:var(--color-accent);color:var(--color-ink)}:focus-visible{outline-color:var(--color-focus);box-shadow:0 0 0 2px var(--color-focus-contrast)}h1,h2,h3{font-stretch:75%}h1{letter-spacing:-.06em;font-size:clamp(3.45rem,7vw,7.1rem)}h2{letter-spacing:-.045em;font-size:clamp(2.45rem,4.6vw,5rem)}.section{isolation:isolate;padding-block:clamp(82px,9.5vw,144px);position:relative}.section[id],.contact-row[id]{scroll-margin-top:96px}.section--dark{background:var(--gradient-night)}.section--tint{background:linear-gradient(90deg, transparent 0 49.9%, #1e5ea814 50%, transparent 50.1%), var(--color-ice);overflow:hidden}.section--tint:before{z-index:-1;content:"";pointer-events:none;background-image:linear-gradient(#1e5ea80d 1px,#0000 1px);background-size:100% 72px;position:absolute;inset:0}.eyebrow,.small-label,.footer-label{color:var(--color-accent-dark);letter-spacing:.19em}.eyebrow:before{background:linear-gradient(90deg, var(--color-accent-dark), var(--color-accent));width:34px}.eyebrow--light,.section--dark .eyebrow,.section--dark .section-heading__description{color:var(--color-accent)}.section-heading{max-width:860px}.section-heading h2{margin-bottom:26px}.section-heading__description{max-width:700px;color:var(--color-muted);font-size:clamp(1rem,1.3vw,1.18rem);line-height:1.58}.review-badge{letter-spacing:.07em;border-color:#ba8611;border-radius:5px;box-shadow:0 7px 20px #081c3317}.review-badge--draft{border-color:var(--color-accent-dark);background:var(--color-ice);color:var(--color-ink-soft)}.button{letter-spacing:.025em;min-height:52px;transition:background var(--motion-fast) var(--ease-sport), color var(--motion-fast) var(--ease-sport), border-color var(--motion-fast) var(--ease-sport), box-shadow var(--motion-base) var(--ease-sport), transform var(--motion-base) var(--ease-sport);border-radius:8px;padding:12px 16px 12px 20px;font-size:.9rem;box-shadow:0 8px 22px #0000}.button>span:last-child{width:28px;height:28px;transition:transform var(--motion-base) var(--ease-sport);border:1px solid;border-radius:50%;place-items:center;display:grid}.button:hover{transform:translateY(-3px);box-shadow:0 14px 30px #081c332e}.button:hover>span:last-child{transform:translate(2px,-2px)}.button--primary{background:var(--gradient-action);color:var(--color-white)}.button--primary:hover{background:var(--color-ink-raised)}.button--secondary{background:#081c333d;border-color:#7ec9f573}.button--secondary:hover{border-color:var(--color-accent);background:#7ec9f51a}.button--light{background:var(--color-white);color:var(--color-ink)}.button--light:hover,.button--accent{background:var(--color-accent);color:var(--color-ink)}.contact-link{background:var(--gradient-action);width:112px;height:52px;color:var(--color-white);border:1px solid #7ec9f573;border-radius:8px;flex:0 0 112px;place-items:center;display:inline-grid;position:relative}.contact-link--light{background:var(--color-white);color:var(--color-ink)}.contact-link:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px;box-shadow:0 0 0 2px var(--color-focus-contrast)}.contact-link__tooltip{z-index:1;border:1px solid var(--color-line);background:var(--color-white);color:var(--color-ink);white-space:nowrap;visibility:hidden;border-radius:6px;padding:4px 10px;font-size:.8rem;font-weight:700;line-height:1.4;position:absolute;top:calc(100% + 8px);left:0}.contact-link__tooltip:before{content:"";height:9px;position:absolute;bottom:100%;left:0;right:0}@media (max-width:620px){.contact-link--light .contact-link__tooltip{top:50%;left:calc(100% + 12px);transform:translateY(-50%)}.contact-link--light .contact-link__tooltip:before{width:13px;height:100%;inset:0 100% auto auto}}.contact-link:focus-visible:not([data-tooltip-dismissed]) .contact-link__tooltip{visibility:visible}@media (hover:hover){.contact-link:hover{background:var(--color-ink-raised)}.contact-link--light:hover{background:var(--color-accent)}.contact-link:hover:not([data-tooltip-dismissed]) .contact-link__tooltip{visibility:visible}}#school-contacts{scroll-margin-top:96px}.text-link{color:var(--color-accent-dark);transition:color var(--motion-fast) ease, border-color var(--motion-fast) ease;border-bottom-color:#1e5ea866}.text-link:hover{color:var(--color-ink-soft);border-bottom-color:currentColor}.route-card:focus-visible,.format-card__top a:focus-visible,.text-link:focus-visible,.desktop-nav a:focus-visible,.mobile-menu summary:focus-visible,.mobile-menu__panel a:focus-visible,.button:focus-visible,.site-footer a:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px;box-shadow:0 0 0 2px var(--color-focus-contrast)}.site-header{z-index:100;color:var(--color-white);background:#061526eb;border-bottom-color:#7ec9f533;position:sticky;top:0;box-shadow:0 12px 34px #03101d26}.site-header:after{background:linear-gradient(90deg, transparent, var(--color-accent), transparent);content:"";opacity:.7;height:1px;position:absolute;bottom:-1px;left:0;right:0}.site-header__inner{grid-template-columns:auto 1fr auto;min-height:78px}.site-header__actions{align-items:center;gap:10px;display:flex}.site-header .contact-link__tooltip{left:auto;right:0}@media (max-width:1080px){.site-header__inner{grid-template-columns:1fr auto;gap:12px}}@media (max-width:360px){.site-header__inner{gap:6px}.site-header__actions{gap:4px}.site-header .contact-link{flex-basis:84px;width:84px}.site-header .contact-link>svg{width:66px;height:18px}.site-header .mobile-menu summary{gap:6px;padding-inline:6px}}.brand__mark{background:var(--gradient-action);color:var(--color-white);border:1px solid #7ec9f57a;border-radius:7px 18px;position:relative;overflow:hidden;transform:skew(-5deg);box-shadow:0 0 24px #7ec9f52e}.brand__mark:after{border-radius:inherit;content:"";border:1px solid #ffffff47;position:absolute;inset:5px}.brand__copy strong{color:currentColor;font-size:1.13rem}.brand__copy small,.site-header .brand__copy small{color:var(--color-accent);font-size:.65rem}.desktop-nav a{color:#d7e6f1;letter-spacing:.015em;font-size:.875rem}.desktop-nav a:after{background:var(--color-accent)}.mobile-menu summary{background:#7ec9f514;border-color:#7ec9f559;font-size:.875rem}.mobile-menu[open] summary{border-color:var(--color-accent);background:#7ec9f529}.mobile-menu__panel{color:var(--color-white);background:#0b2949;border-color:#7ec9f53d;box-shadow:0 30px 70px #0008126b}.mobile-menu__panel>a:not(.button):hover{background:#7ec9f51f}.brand__mark{border-radius:10px 18px}.hero{background:radial-gradient(circle at 83% 20%, #7ec9f538, transparent 27rem), radial-gradient(circle at 10% 90%, #1e5ea847, transparent 34rem), var(--gradient-night);min-height:calc(100svh - 78px);padding-block:clamp(38px,4vw,58px) 20px}.hero:before{border:1px solid #7ec9f524;width:min(63vw,850px);height:min(63vw,850px);top:50%;right:-9vw;transform:translateY(-50%);box-shadow:0 0 0 88px #7ec9f508,0 0 0 176px #7ec9f505}.hero:after{content:"";pointer-events:none;border-top:1px solid #dff4ff2e;border-radius:50%;width:min(55vw,720px);height:240px;position:absolute;top:18%;left:-7%;transform:rotate(-13deg);box-shadow:0 -13px 0 -12px #dff4ff24,0 -30px 0 -29px #7ec9f51c}.hero__grid,.hero__rail{z-index:1}.hero__grid{grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);gap:clamp(34px,5vw,72px)}.hero__content h1{max-width:760px;color:var(--color-white);text-shadow:0 20px 60px #00081259;margin-bottom:18px;font-size:clamp(3.15rem,5vw,5.35rem);line-height:.92}.hero__description{color:#c3d7e5;max-width:650px;margin-bottom:24px;font-size:clamp(1.03rem,1.45vw,1.24rem)}.hero__rail{margin-top:clamp(28px,3vw,42px)}.rink-visual{width:100%;max-width:540px;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;place-self:center end;padding:0;transform:none}.rink-visual__stage{grid-template-columns:minmax(250px,300px) minmax(118px,138px);justify-content:end;align-items:center;gap:clamp(14px,2vw,24px);padding-bottom:34px;display:grid}.mobile-ice-experience{z-index:2;pointer-events:auto;width:min(100%,300px);margin-inline:auto;position:relative}.mobile-ice-experience .rink-visual__ice{width:100%}.mobile-ice-toggle{display:none}.rink-visual__ice{aspect-ratio:1/2;filter:drop-shadow(0 18px 28px #00081247)drop-shadow(0 0 36px #7ec9f51f);width:min(100%,300px);margin-inline:auto;position:relative}.hockey-rink-graphic{width:100%;height:100%;display:block;overflow:visible}.hockey-rink-graphic__skate-texture path{vector-effect:non-scaling-stroke;stroke-width:1px}.hockey-rink-graphic__goal-lamp-glow{fill:#b51f27;opacity:.04;filter:blur(2.4px)}.hockey-rink-graphic__goal-lamp-housing{fill:#38171a;stroke:#6c3439;stroke-width:1px}.hockey-rink-graphic__goal-lamp-lens{fill:#65171d;stroke:#9d333b;stroke-width:.75px;transition:fill .15s,filter .15s,opacity .15s}.hockey-interaction-zone[data-goal-lamp=top] .hockey-rink-graphic__goal-lamp--top .hockey-rink-graphic__goal-lamp-glow,.hockey-interaction-zone[data-goal-lamp=bottom] .hockey-rink-graphic__goal-lamp--bottom .hockey-rink-graphic__goal-lamp-glow{fill:#ff1f2d;opacity:.62;animation:.5s ease-in-out 4 rink-goal-lamp-glow}.hockey-interaction-zone[data-goal-lamp=top] .hockey-rink-graphic__goal-lamp--top .hockey-rink-graphic__goal-lamp-lens,.hockey-interaction-zone[data-goal-lamp=bottom] .hockey-rink-graphic__goal-lamp--bottom .hockey-rink-graphic__goal-lamp-lens{fill:#ff2836;filter:drop-shadow(0 0 4px #ff1f2dc7);animation:.5s ease-in-out 4 rink-goal-lamp-lens}@keyframes rink-goal-lamp-glow{0%,to{opacity:.38}50%{opacity:.78}}@keyframes rink-goal-lamp-lens{0%,to{opacity:.88}50%{opacity:1}}.hockey-interaction-zone{pointer-events:none;position:relative}.hockey-interaction-zone--routes,.hockey-interaction-zone--finder{z-index:3;position:absolute}.hockey-interaction-zone--routes{width:280px;height:190px;top:-92px;right:-10px}.hockey-interaction-zone--finder{background:url(/assets/hockey/ice-scratches.svg) 50%/300px 200px,linear-gradient(145deg,#ffffffbd,#d7f1fc9e);border:1px solid #7ec9f53d;border-radius:18px;width:min(48%,360px);height:132px;bottom:20px;right:clamp(20px,4vw,44px);overflow:hidden}.hockey-cursor{--stick-x:0px;--stick-y:0px;--stick-angle:-10deg;--stick-speed:0;--stick-impact:0;z-index:130;contain:layout style;opacity:1;pointer-events:none;width:148px;height:111px;transform:translate3d(var(--stick-x), var(--stick-y), 0) rotate(var(--stick-angle));transform-origin:119px 100px;visibility:hidden;will-change:auto;transition:transform .15s cubic-bezier(.22,.68,.24,1);display:block;position:fixed;top:0;left:0}.hockey-cursor[data-active=true]{visibility:visible;will-change:transform}.hockey-cursor__visual{--stick-facing:1;transform:scaleX(var(--stick-facing));transform-origin:119px 100px;transition:transform .17s;display:block;position:absolute;inset:0}.hockey-cursor[data-facing=left] .hockey-cursor__visual{--stick-facing:-1}.hockey-cursor svg{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.hockey-cursor__contact{fill:none;stroke:#0000;pointer-events:none}.review-badge--owner-confirmed{color:#125541;background:#dff8ee;border-color:#288268}.review-badge--owner-confirmed:before{content:"✓"}.pricing-card{border-radius:var(--radius-medium);background:radial-gradient(circle at 100% 0,#7ec9f52e,#0000 14rem),#ffffff14;border:1px solid #7ec9f55c;min-height:260px;padding:26px}.pricing-card .small-label,.location-card__offer>span{color:var(--color-accent)}.pricing-card h3{color:var(--color-white);margin-bottom:22px}.pricing-card>p:not(.small-label),.location-card__offer p{color:var(--color-muted-dark);font-size:.9rem}.pricing-card__rate{border-bottom:1px solid #7ec9f53d;justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:18px;padding-bottom:14px;display:flex}.pricing-card__rate span{color:var(--color-muted-dark)}.pricing-card__rate strong{color:var(--color-accent);flex:none;font-size:clamp(1.05rem,1.6vw,1.35rem)}.pricing-card__note{margin-bottom:0;font-weight:700}.location-grid--with-pricing .location-card__district{margin-bottom:28px}.location-card__offer{border-top:1px solid #7ec9f538;gap:7px;margin-top:22px;padding-top:18px;display:grid}.location-card__offer>span{letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800}.location-card__offer>strong{color:var(--color-white);font-size:1.05rem;line-height:1.25}.location-card__offer>p{margin:0}.location-note{border-radius:var(--radius-small);max-width:920px;color:var(--color-muted-dark);background:#ffffff12;border:1px solid #7ec9f547;margin-top:24px;padding:20px 22px}.location-note p,.location-card__metro{margin-bottom:0}.site-footer__contact-label{color:var(--color-accent);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800;display:block}.contact-row small{color:var(--color-muted)}.hockey-cursor__blade-contact{stroke-width:14px}.hockey-cursor__shaft-contact{stroke-width:5px}.hockey-cursor[data-swing=true] .hockey-cursor__visual{animation:hockey-cursor-swing .21s var(--ease-sport) both}@keyframes hockey-cursor-swing{0%{transform:scaleX(var(--stick-facing)) rotate(-1deg) translateY(-1px)}44%{transform:scaleX(var(--stick-facing)) rotate(5deg) translate(3px, 2px)}to{transform:scaleX(var(--stick-facing)) rotate(0) translate(0)}}.rink-visual__metrics{gap:18px;display:grid}.rink-visual__label{min-width:0;color:var(--color-white);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#081c33c2;border:1px solid #7ec9f547;border-radius:8px;padding:10px 11px;position:relative;box-shadow:0 10px 26px #00081229}.rink-visual__label:before{content:"";background:linear-gradient(90deg,#0000,#7ec9f59e);width:16px;height:1px;position:absolute;top:50%;right:100%}.rink-visual__label:first-child{transform:translate(-8px)}.rink-visual__label:nth-child(2){transform:translate(7px)}.rink-visual__label:nth-child(3){transform:translate(-3px)}.rink-visual__label span{color:var(--color-accent);letter-spacing:.12em;font-size:.63rem}.rink-visual__label strong{margin-top:4px;font-size:.82rem}.rink-visual>p{color:#a9c1d2;max-width:none;margin:10px 0 0;padding-left:6px;font-size:.76rem}.hero__rail{color:#8fabbe;border-top-color:#7ec9f538}.hero__rail span:before{background:var(--color-accent);content:"";vertical-align:1px;border-radius:50%;width:5px;height:5px;margin-right:10px;display:inline-block}.interactive-puck{--puck-x:0px;--puck-y:0px;--puck-rotation:0deg;--puck-base-rotation:0deg;--puck-trail-opacity:0;z-index:4;aspect-ratio:100/58;contain:layout paint style;pointer-events:none;width:78px;height:auto;transform:translate3d(var(--puck-x), var(--puck-y), 0) rotate(calc(var(--puck-base-rotation) + var(--puck-rotation)));transform-origin:50%;will-change:auto;display:block;position:absolute}.interactive-puck__trail{z-index:-1;width:72%;height:24%;opacity:calc(var(--puck-trail-opacity) * .75);filter:blur(3px);background:linear-gradient(90deg,#0000,#88cdf047);border-radius:999px;position:absolute;top:46%;right:50%;transform:translateY(-50%)}.interactive-puck__mobile-stick,.interactive-puck__mobile-hint{display:none}.puck-visual{width:100%;height:100%;display:block;overflow:visible}.puck-visual__shadow{fill:#000a144d}.puck-visual__rim{fill:#101317;stroke:#343b42;stroke-width:1.2px}.puck-visual__top{fill:#171b20;stroke:#2b3238;stroke-width:1px}.puck-visual__ring{fill:none;stroke:#3f474e;stroke-width:.9px;opacity:.38}.puck-visual__texture{fill:none;stroke:#53616a;stroke-width:1.25px;stroke-linecap:round;opacity:.52}.puck-visual__highlight{fill:none;stroke:#ffffff38;stroke-width:2px;stroke-linecap:round}.puck-visual__side{fill:#0d1014;stroke:#303840;stroke-width:1.2px}.puck-visual__knurl{fill:none;stroke:#485159;stroke-width:.9px;stroke-linecap:round;opacity:.78}.puck-visual__side-highlight{fill:none;stroke:#8697a157;stroke-width:1.2px}.interactive-puck--perspective{aspect-ratio:25/22}.interactive-puck[data-moving=true]{will-change:transform}.interactive-puck--top-down{aspect-ratio:1}.interactive-puck--hero{--puck-base-rotation:0deg;width:34px;transform:translate3d(calc(-50% + var(--puck-x)), calc(-50% + var(--puck-y)), 0) rotate(var(--puck-base-rotation));top:43%;left:50%}.rink-game-puck{--rink-puck-left:50%;--rink-puck-top:50%;top:var(--rink-puck-top);left:var(--rink-puck-left);opacity:1;width:20px;transform:translate3d(-50%, -50%, 0) rotate(var(--puck-rotation));transition:opacity .18s}.rink-game-puck[data-visible=false]{opacity:0}.rink-game-goal{z-index:9;color:#176fb5;font-family:var(--font-display), sans-serif;letter-spacing:.1em;pointer-events:none;text-shadow:0 0 12px #176fb561;transform-origin:50%;font-size:clamp(.72rem,2.2vw,1rem);font-weight:900;line-height:1;animation:2s cubic-bezier(.18,.72,.22,1) forwards rink-goal-burst;position:absolute;top:36%;left:50%;transform:translate(-50%,-50%)scale(1)}@keyframes rink-goal-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.9)}10%{opacity:1;transform:translate(-50%,-50%)scale(1)}78%{opacity:.94;transform:translate(-50%,-50%)scale(3.2)}to{opacity:0;transform:translate(-50%,-50%)scale(3.7)}}.rink-game-reset{z-index:8;color:#c9dce8;min-height:30px;font:inherit;letter-spacing:.035em;pointer-events:auto;white-space:nowrap;background:#061b32d1;border:1px solid #7ec9f552;border-radius:999px;padding:5px 11px;font-size:.72rem;font-weight:700;line-height:1.2;transition:border-color .15s,background .15s,color .15s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.rink-game-reset:hover{color:var(--color-white);background:#0a2a4bf0;border-color:#7ec9f594}.rink-game-reset:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.route-section{background:url(/assets/hockey/ice-scratches.svg) center / 420px 280px repeat, radial-gradient(circle at 94% 15%, #7ec9f533, transparent 22rem), var(--color-paper);overflow:hidden}.route-section .shell{position:relative}.route-grid{border:0;gap:14px}.route-card{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:linear-gradient(135deg, #7ec9f514, transparent 46%), var(--color-white);min-height:300px;box-shadow:var(--shadow-card);transition:color var(--motion-fast) ease, border-color var(--motion-fast) ease, box-shadow var(--motion-base) var(--ease-sport), transform var(--motion-base) var(--ease-sport), background var(--motion-base) ease;overflow:hidden}.route-card:before{background:linear-gradient(90deg, var(--color-accent-dark), var(--color-accent), transparent);content:"";height:3px;position:absolute;top:0;left:0;right:0}.route-card:after{content:"";border:1px solid #1e5ea81c;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-95px;right:-60px}.route-card:hover{border-color:var(--color-ink-soft);background:var(--gradient-night);color:var(--color-white);transform:translateY(-6px);box-shadow:0 28px 65px #081c3333}.route-card:focus-visible{border-color:var(--color-ink-soft);background:var(--gradient-night);color:var(--color-white);box-shadow:0 0 0 2px var(--color-focus-contrast), 0 28px 65px #081c3333}.route-card:focus-visible p,.route-card:focus-visible .route-card__marker{color:#b8c4c9}.route-card__marker{color:var(--color-accent-dark)}.route-card__arrow{border-color:var(--color-accent);color:var(--color-accent-dark);transition:transform var(--motion-base) var(--ease-sport)}.route-card:hover .route-card__arrow{color:var(--color-accent);transform:rotate(45deg)}.route-card:focus-visible .route-card__arrow{color:var(--color-accent)}.interactive-puck--routes{--puck-base-rotation:0deg;opacity:.96;width:20px;transform:translate3d(calc(-50% + var(--puck-x)), calc(-50% + var(--puck-y)), 0) rotate(var(--puck-base-rotation));top:50%;left:55%;right:auto}.directions-section:after{z-index:-1;content:"";border:1px solid #1e5ea81f;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-140px;right:-140px;box-shadow:0 0 0 72px #1e5ea808}.direction-list li{transition:color var(--motion-fast) ease;border-bottom-color:#0f31582e}.direction-list li:first-child{border-top-color:#0f31582e}.direction-list li:hover{color:var(--color-accent-dark)}.direction-list li>span,.direction-list li>p{transition:transform var(--motion-base) var(--ease-sport)}.direction-list li:hover>span,.direction-list li:hover>p{transform:translate(12px)}.direction-list span{color:var(--color-accent-dark)}.direction-list .review-badge{grid-column:2;justify-self:start;margin-top:0}.process-section{background:radial-gradient(circle at 8% 92%, #7ec9f524, transparent 25rem), var(--color-paper)}.photo-placeholder{border-radius:var(--radius-medium);min-width:0;color:var(--color-white);isolation:isolate;background:radial-gradient(circle at 78% 22%,#7ec9f52e,#0000 15rem),linear-gradient(145deg,#0c3158,#061526 72%);border:1px solid #7ec9f547;place-content:end start;padding:clamp(24px,4vw,42px);display:grid;position:relative;overflow:hidden}.photo-placeholder:before{z-index:-1;width:2px;box-shadow:none;content:"";background:#d94d6785;border:0;border-radius:0;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.photo-placeholder:after{z-index:-1;aspect-ratio:1;content:"";border:1px solid #7ec9f54d;border-radius:50%;width:min(42%,190px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.photo-placeholder__ice-line{z-index:-1;background:#7ec9f538;height:1px;position:absolute;top:29%;left:10%;right:10%;box-shadow:0 132px #7ec9f52e}.photo-placeholder__icon{background:#7ec9f514;border:1px solid #7ec9f561;border-radius:50%;place-items:center;width:52px;height:52px;margin-bottom:18px;display:grid}.photo-placeholder__icon svg{fill:none;width:25px;stroke:var(--color-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px}.photo-placeholder__copy{gap:7px;max-width:520px;display:grid}.photo-placeholder__copy strong{font-size:clamp(1.08rem,1.8vw,1.35rem)}.photo-placeholder__copy>span{color:#a9c1d2;font-size:.88rem;line-height:1.5}.process-photo-placeholder,.location-photo-placeholder{min-height:260px;margin-bottom:18px}.proof-card__media{min-height:220px;margin-bottom:30px;padding:26px}.process-grid{border:0;gap:12px}.process-card,.process-card:first-child,.process-card:nth-child(3){border:1px solid var(--color-line);border-radius:var(--radius-medium);min-height:240px;transition:transform var(--motion-base) var(--ease-sport), box-shadow var(--motion-base) ease;background:#ffffffbd;justify-content:flex-start;gap:clamp(32px,4vw,54px);box-shadow:0 12px 32px #0f31580f}.process-card:hover{box-shadow:var(--shadow-card);transform:translateY(-5px)}.process-card>span{border:1px solid var(--color-accent);width:38px;height:38px;color:var(--color-accent-dark);border-radius:50%;place-items:center;display:grid}.formats-section,.location-section,.finder-section{background:radial-gradient(circle at 94% 12%, #7ec9f529, transparent 25rem), var(--gradient-night);overflow:hidden}.formats-section:before,.location-section:before,.finder-section:before{z-index:-1;content:"";background-image:linear-gradient(90deg,#0000 49.9%,#7ec9f512 50%,#0000 50.1%),linear-gradient(#7ec9f50a 1px,#0000 1px);background-size:100% 100%,100% 88px;position:absolute;inset:0}.format-card{transition:border-color var(--motion-fast) ease, transform var(--motion-base) var(--ease-sport);background:linear-gradient(145deg,#7ec9f517,#ffffff08);border-color:#7ec9f533;position:relative;overflow:hidden}.format-card:hover{border-color:#7ec9f585;transform:translateY(-5px)}.format-card:first-child{background:var(--gradient-action);color:var(--color-white)}.format-card:first-child:after{content:"";border:1px solid #fff3;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-115px;right:-90px;box-shadow:0 0 0 45px #ffffff0a}.format-card:first-child .format-card__top,.format-card:first-child>p,.format-card:first-child .format-card__meta p{color:#d9eefb}.format-card:first-child .format-card__meta{border-color:#fff3}.section--dark .review-badge,.format-card .review-badge,.location-card .review-badge,.pricing-card .review-badge,.finder-section .review-badge{z-index:2;position:relative;box-shadow:0 0 0 2px #ffffff29}.format-card>.review-badge,.format-card__meta .review-badge,.process-card .review-badge,.coach-copy .review-badge{align-self:flex-start;margin-right:6px}.coach-section{background:linear-gradient(90deg, transparent 0 61%, #7ec9f514 61% 61.1%, transparent 61.1%), var(--color-paper)}.coach-portrait{border:1px solid var(--color-line);background:repeating-linear-gradient(165deg, transparent 0 42px, #0f31580a 43px 44px), var(--gradient-ice);box-shadow:var(--shadow-soft)}.coach-portrait--photo{isolation:isolate;width:100%;min-width:0;max-width:100%;margin:0}.coach-portrait--photo:before,.coach-portrait--photo:after{content:none}.coach-portrait__image{z-index:0;object-fit:cover;object-position:center 30%;width:100%;height:100%;position:absolute;inset:0}.coach-portrait--photo .coach-portrait__caption{color:#dcebf4;text-align:left;background:#05192dc7;border-color:#ffffff5c;gap:3px;display:grid}.coach-portrait--photo .coach-portrait__caption strong{color:var(--color-white);font-size:.9rem}.photo-placeholder.coach-portrait{background:radial-gradient(circle at 70% 24%,#7ec9f52e,#0000 16rem),linear-gradient(155deg,#0c3158,#061526 72%);place-content:end start}.coach-portrait:before{border:2px solid #1e5ea838;box-shadow:0 0 0 58px #7ec9f50f}.coach-portrait:after{border-color:#d94d673d}.photo-placeholder.coach-portrait:before{width:2px;height:auto;box-shadow:none;background:#d94d6785;border:0;border-radius:0;top:0;bottom:0;left:50%;transform:translate(-50%)}.photo-placeholder.coach-portrait:after{aspect-ratio:1;border-color:#7ec9f54d;width:min(54%,280px);height:auto;top:50%;left:50%;transform:translate(-50%,-50%)}.coach-portrait__monogram{color:var(--color-ink-soft);text-shadow:12px 12px #7ec9f53d}.coach-portrait__caption{background:#f7fbfed1;border:1px solid #1e5ea826}.coach-copy__facts li>span{background:var(--color-accent);color:var(--color-ink);box-shadow:0 0 0 5px #7ec9f526}.location-card{transition:border-color var(--motion-fast) ease, transform var(--motion-base) var(--ease-sport);background:linear-gradient(145deg,#7ec9f514,#ffffff08);border-color:#7ec9f52e}.location-card:hover{border-color:#7ec9f57a;transform:translateY(-4px)}.location-card__district{color:var(--color-accent)}.location-disclosure{margin-top:16px}.location-disclosure:not([open])>.location-grid{display:none}.location-disclosure summary{min-height:58px;color:var(--color-white);cursor:pointer;transition:border-color var(--motion-fast) ease, background var(--motion-fast) ease;background:#7ec9f517;border:1px solid #7ec9f557;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;font-weight:800;list-style:none;display:flex}.location-disclosure summary::-webkit-details-marker{display:none}.location-disclosure summary:hover,.location-disclosure[open] summary{background:#7ec9f526;border-color:#7ec9f5a6}.location-disclosure summary:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}.location-disclosure__open-label{display:none}.location-disclosure__icon{width:30px;height:30px;transition:transform var(--motion-fast) ease;border:1px solid;border-radius:50%;flex:none;place-items:center;display:grid}.location-disclosure[open] .location-disclosure__closed-label{display:none}.location-disclosure[open] .location-disclosure__open-label{display:inline}.location-disclosure[open] .location-disclosure__icon{transform:rotate(180deg)}.location-grid--additional{margin-top:12px}.proof-section{background:radial-gradient(circle at 12% 24%, #7ec9f52e, transparent 24rem), var(--color-paper)}.proof-card{border:1px solid var(--color-line);background:linear-gradient(145deg, var(--color-white), #edf8fd);min-width:0;overflow:hidden}.proof-card__note{border-left-color:var(--color-accent-dark);background:var(--color-ice)}.archive-card{background:linear-gradient(155deg, transparent 0 58%, #7ec9f51f 58.2% 58.5%, transparent 58.7%), var(--gradient-night);min-width:0;box-shadow:0 24px 60px #081c332e}.archive-card__symbol{color:var(--color-accent);text-shadow:12px 12px #1e5ea85c}.faq-list,.faq-item{border-color:#0f31582e}.faq-item summary{transition:color var(--motion-fast) ease, padding var(--motion-base) var(--ease-sport)}.faq-item summary:hover{color:var(--color-accent-dark);padding-left:10px}.faq-item__number{color:var(--color-accent-dark)}.finder-section .shell,.finder-grid{position:relative}.finder-grid{z-index:1}.finder-form{background:url(/assets/hockey/ice-scratches.svg) 50%/420px 280px,linear-gradient(145deg,#fffffffa,#e8f8fff5);border:1px solid #7ec9f552;padding-bottom:clamp(172px,17vw,210px);position:relative;overflow:hidden;box-shadow:0 32px 90px #00081252}.field label{color:var(--color-ink-soft);letter-spacing:.02em}.field input,.field select{min-height:54px;transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, background var(--motion-fast) ease;background:#ffffffc7;border-color:#b9d1e0;border-radius:8px}.field input:hover,.field select:hover{background:var(--color-white);border-color:#76add0}.field input:focus,.field select:focus{border-color:var(--color-accent-dark);background:var(--color-white);outline:0;box-shadow:0 0 0 4px #7ec9f53d}.submit-button{background:var(--gradient-action);color:var(--color-white)}.form-summary{background:var(--gradient-ice);box-shadow:var(--shadow-soft);border:1px solid #ffffff7a}.form-summary>div>p:last-child,.form-summary dt{color:var(--color-muted)}.interactive-puck--finder{--puck-base-rotation:0deg;z-index:2;width:20px;transform:translate3d(var(--puck-x), var(--puck-y), 0) rotate(var(--puck-base-rotation));inset:auto 28px 22px auto}.page-intro{background:radial-gradient(circle at 85% 20%, #7ec9f52e, transparent 24rem), var(--gradient-night);padding-block:clamp(54px,7vw,96px);overflow:hidden}.page-intro h1{margin-bottom:22px}.page-intro:after{content:"";border:1px solid #7ec9f521;border-radius:50%;width:600px;height:600px;position:absolute;bottom:-250px;right:-10%;box-shadow:0 0 0 86px #7ec9f508}.scenario-grid{gap:14px}.scenario-card{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--color-white);box-shadow:0 12px 32px #0f315812}.scenario-card__number{color:var(--color-accent-dark)}.split-cta--plain,.status-notice,.case-strip .muted{border-color:var(--color-line);background:var(--color-white);box-shadow:0 12px 34px #0f31580f}.reviews-section__heading{max-width:760px;margin-bottom:clamp(38px,6vw,70px)}.reviews-section__heading h2{margin-bottom:0}.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.review-card{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--color-white);flex-direction:column;min-width:0;min-height:360px;padding:clamp(24px,3vw,34px);display:flex;box-shadow:0 12px 34px #0f315812}.review-card__category{color:var(--color-accent-dark);letter-spacing:.12em;text-transform:uppercase;margin-bottom:30px;font-size:.72rem;font-weight:800}.review-card blockquote{flex:1;margin:0}.review-card blockquote p{margin:0;font-size:clamp(1.08rem,1.5vw,1.28rem);font-weight:700;line-height:1.5}.review-card footer{border-top:1px solid var(--color-line);gap:5px;margin-top:32px;padding-top:20px;display:grid}.review-card cite{font-style:normal;font-weight:800}.review-card time{color:var(--color-muted);font-size:.78rem}.review-card a,.review-migration-note a{width:fit-content;color:var(--color-accent-dark);text-underline-offset:4px;font-size:.8rem;font-weight:800;text-decoration:underline}.reviews-empty-section{background:linear-gradient(90deg, transparent 0 49.9%, #1e5ea814 50%, transparent 50.1%), var(--color-ice)}.reviews-empty-state{border-radius:var(--radius-large);min-height:420px;box-shadow:var(--shadow-card);background:#ffffffb8;border:1px solid #1e5ea82e;grid-template-columns:minmax(0,1fr) minmax(230px,.55fr);align-items:center;gap:clamp(38px,8vw,110px);padding:clamp(32px,6vw,76px);display:grid;overflow:hidden}.reviews-empty-state__copy{min-width:0;max-width:720px}.reviews-empty-state__copy h2{overflow-wrap:anywhere;margin-bottom:24px}.reviews-empty-state__copy>p:last-child{max-width:650px;color:var(--color-muted);margin-bottom:0;font-size:clamp(1rem,1.4vw,1.18rem)}.reviews-empty-state__mark{place-items:center;min-height:240px;display:grid;position:relative}.reviews-empty-state__mark span{z-index:2;color:var(--color-accent-dark);letter-spacing:-.12em;font-size:clamp(6rem,12vw,10rem);font-weight:900;line-height:1;position:relative}.reviews-empty-state__mark i{border:1px solid #1e5ea838;border-radius:50%;width:190px;height:190px;position:absolute}.reviews-empty-state__mark i:nth-of-type(2){width:140px;height:140px}.reviews-empty-state__mark i:nth-of-type(3){width:90px;height:90px}.review-migration-section{background:var(--color-paper);padding-top:clamp(34px,5vw,58px)}.review-migration-note{border:1px dashed var(--color-accent-dark);border-radius:var(--radius-medium);background:var(--color-white);grid-template-columns:minmax(220px,.65fr) minmax(300px,1fr) auto;align-items:center;gap:clamp(24px,5vw,64px);padding:24px;display:grid}.review-migration-note .small-label{margin-bottom:8px}.review-migration-note h2{margin:0;font-size:clamp(1.45rem,2.5vw,2.2rem)}.review-migration-note ul{color:var(--color-muted);margin:0;padding-left:20px;font-size:.9rem}.review-card a:focus-visible,.review-migration-note a:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px;box-shadow:0 0 0 2px var(--color-focus-contrast)}.tag-list li{border-color:var(--color-line);background:#dff4ff8c}.site-footer{background:radial-gradient(circle at 15% 0,#7ec9f51f,#0000 25rem),#061526;position:relative;overflow:hidden}.site-footer:before{content:"";border:1px solid #7ec9f51f;border-radius:50%;width:430px;height:430px;position:absolute;top:-190px;right:-80px;box-shadow:0 0 0 65px #7ec9f508}.site-footer .brand__mark{background:var(--gradient-action);color:var(--color-white)}.site-footer .brand__copy small,.site-footer .muted,.site-footer__identity>p{color:#9eb6c7}.footer-label{color:var(--color-accent)}.site-footer__nav a,.site-footer__contacts a{color:#c7dbe8}.site-footer__bottom{color:#819bad;border-top-color:#7ec9f52e;font-size:.78rem;line-height:1.5}.process-card p,.format-card>p,.scenario-card p,.faq-item__answer p{font-size:1rem;line-height:1.58}.field label{font-size:.8rem}.page-intro__description{line-height:1.58}.page-intro__aside p{font-size:.95rem;line-height:1.55}@media (max-width:1080px){.hero{min-height:auto}.hero__grid{grid-template-columns:1fr}.hero__content{max-width:860px}.hero__grid{gap:30px}.rink-visual{justify-self:center;max-width:620px;min-height:0;transform:none}.process-grid{grid-template-columns:repeat(2,1fr)}.finder-grid{grid-template-columns:1fr}.finder-intro{max-width:760px}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-migration-note{grid-template-columns:1fr 1fr}.review-migration-note>a{grid-column:1/-1}}@media (max-width:820px){h1{font-size:clamp(3rem,13vw,5.3rem)}h2{font-size:clamp(2.35rem,10vw,4.2rem)}.site-header__inner{min-height:72px}.section[id],.contact-row[id]{scroll-margin-top:84px}.hero{padding-top:46px}.hero:after{width:90vw;top:8%}.route-grid,.directions-grid,.coach-grid,.coach-profile-grid,.proof-grid,.faq-grid,.faq-page-grid,.site-footer__grid{grid-template-columns:minmax(0,1fr)}.proof-grid>*,.proof-card,.archive-card{width:100%;min-width:0;max-width:100%}.reviews-empty-state,.review-migration-note{grid-template-columns:1fr}.reviews-empty-state__mark{min-height:190px}.route-card{min-height:250px}.directions-grid .section-heading,.faq-grid>div:first-child,.faq-page-grid>div:first-child{position:static}.interactive-puck--routes{width:20px;top:50%;right:auto}.coach-section{background:var(--color-paper)}}@media (max-width:620px){.section{padding-block:72px}.coach-section{padding-block:40px}.coach-section .coach-grid{gap:24px}.coach-section .coach-portrait{aspect-ratio:2/3;justify-self:center;width:min(100%,224px);min-height:0}.coach-section .coach-portrait__caption{bottom:12px;left:12px;right:12px}.coach-section .eyebrow{margin-bottom:12px}.coach-section .coach-copy__bio{margin-block:20px}.coach-section .coach-copy__facts{gap:12px;margin-bottom:24px}h2{overflow-wrap:anywhere;font-size:clamp(2rem,9vw,2.5rem)}.page-intro h1{overflow-wrap:anywhere;font-size:clamp(2.4rem,11.8vw,3rem)}.hero{padding-top:28px}.hero__grid{gap:20px}.hero__content h1{font-size:clamp(2.25rem,10.4vw,3rem);line-height:.94}.hero__description{margin-bottom:22px}.hero__actions{display:grid}.rink-visual{border-radius:20px;min-height:0;padding:0}.rink-visual__stage{grid-template-columns:1fr;row-gap:42px;padding-bottom:32px}.rink-visual__ice{width:min(100%,258px)}.rink-visual__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.rink-visual__label{min-width:0;padding:8px 7px;font-size:.74rem;transform:none!important}.rink-visual__label:before{display:none}.interactive-puck{width:68px}.interactive-puck--hero{width:30px;top:43%;left:50%}.rink-game-puck{width:20px}.rink-game-reset{min-height:30px;font-size:.68rem;top:calc(100% + 7px)}.interactive-puck--routes{top:50%;right:auto}.interactive-puck--finder{width:20px;top:50%;bottom:auto;right:auto}.hockey-interaction-zone--routes{width:190px;height:140px;top:-72px;right:0}.hockey-interaction-zone--finder{width:210px;height:150px;bottom:-60px;right:-6px}.hockey-interaction-zone--routes,.hockey-interaction-zone--finder{display:none}.hockey-cursor{display:none!important}.route-grid,.process-grid,.format-grid,.location-grid,.form-grid,.form-summary,.form-summary dl,.reviews-grid{grid-template-columns:1fr}.review-card{min-height:0}.reviews-empty-state{min-height:0;padding:26px 22px}.reviews-empty-state__copy h2{overflow-wrap:normal;word-break:normal;font-size:clamp(1.75rem,8vw,2.2rem)}.reviews-empty-state__mark{min-height:150px}.route-card{min-height:230px;padding:28px 22px}.process-card,.process-card:first-child,.process-card:nth-child(3){min-height:270px}.format-card:first-child{grid-column:span 1}.finder-form{border-radius:18px;padding:20px}.photo-placeholder{padding:22px}.process-photo-placeholder,.location-photo-placeholder{min-height:220px}.proof-card,.archive-card{min-height:0;padding:24px}.proof-card__media{min-height:210px;margin-bottom:26px;padding:20px}.proof-card,.archive-card,.proof-card a,.archive-card p{overflow-wrap:anywhere}.hero__content,.rink-visual,.route-card,.format-card,.finder-form,.form-summary,.site-footer__grid>*{min-width:0}.site-footer a,.site-footer p{overflow-wrap:anywhere}.field input,.field select{min-height:52px}}@media (hover:none),(pointer:coarse){html[data-mobile-ice-mode=true]{overscroll-behavior:none}.mobile-ice-toggle{z-index:20;background:var(--gradient-action);min-height:46px;color:var(--color-white);font:inherit;letter-spacing:.08em;text-transform:uppercase;touch-action:manipulation;border:1px solid #7ec9f59e;border-radius:999px;justify-content:center;align-items:center;margin:44px auto 0;padding:11px 20px;font-size:.82rem;font-weight:800;display:flex;position:relative;box-shadow:0 13px 28px #000c1b47;pointer-events:auto!important}.mobile-ice-toggle:focus-visible{outline:3px solid var(--color-focus-contrast);outline-offset:3px}.mobile-ice-toggle__leave{display:none}.mobile-ice-experience[data-mobile-ice-active=true]{z-index:240;width:100%;max-width:none;padding:12px 12px calc(14px + env(safe-area-inset-bottom));overscroll-behavior:none;background:radial-gradient(circle at 50% 44%, #7ec9f52e, transparent 56%), var(--gradient-night);grid-template-rows:minmax(0,1fr) auto;place-items:center;row-gap:44px;margin:0;display:grid;position:fixed;inset:0;overflow:hidden}.mobile-ice-experience[data-mobile-ice-active=true] .rink-visual__ice{touch-action:none;width:min(100vw - 24px,50dvh - 63px);max-width:none;margin:auto}.mobile-ice-experience[data-mobile-ice-active=true] .mobile-ice-toggle{background:#0a2746;border-color:#ffffff9e;margin:0}.mobile-ice-experience[data-mobile-ice-active=true] .mobile-ice-toggle__enter{display:none}.mobile-ice-experience[data-mobile-ice-active=true] .mobile-ice-toggle__leave{display:inline}.rink-visual__ice{pointer-events:auto;touch-action:pan-y}.interactive-puck--hero,.rink-game-puck{contain:layout style;overflow:visible}.hockey-cursor{display:none!important}.hockey-cursor[data-mobile-ice-active=true]{z-index:260;display:block!important}.interactive-puck{will-change:auto}.interactive-puck--hero[data-mobile-aiming=true] .interactive-puck__mobile-stick,.rink-game-puck[data-mobile-aiming=true] .interactive-puck__mobile-stick{z-index:5;width:calc(16px + var(--mobile-stick-length,0px));height:7px;transform:translateY(-50%) rotate(var(--mobile-stick-angle,0deg));transform-origin:100%;background:linear-gradient(90deg,#0a0e12 0 78%,#f4f3ed 78% 100%);border:1px solid #11161b;border-radius:999px 3px 3px 999px;display:block;position:absolute;top:50%;right:calc(50% + 3px);box-shadow:0 2px 4px #000a1447}.interactive-puck--hero[data-mobile-aiming=true] .interactive-puck__mobile-stick:after,.rink-game-puck[data-mobile-aiming=true] .interactive-puck__mobile-stick:after{content:"";background:repeating-linear-gradient(90deg,#d2d6d3 0 2px,#f8f7f1 2px 4px);border-radius:999px;width:10px;height:3px;position:absolute;top:1px;right:3px}.interactive-puck--hero[data-mobile-armed=true] .interactive-puck__mobile-hint,.rink-game-puck[data-mobile-armed=true] .interactive-puck__mobile-hint{color:#f6fbff;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:#061b32e0;border-radius:999px;width:max-content;padding:3px 6px;font-size:.56rem;font-weight:700;line-height:1.2;display:block;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%)}.interactive-puck--hero[data-mobile-shot=true],.rink-game-puck[data-mobile-shot=true]{filter:brightness(1.12)}.route-card:hover,.process-card:hover,.format-card:hover,.location-card:hover{transform:none}.direction-list li:hover,.faq-item summary:hover{padding-left:0}}@media (hover:none) and (pointer:coarse) and (orientation:landscape){.mobile-ice-experience[data-mobile-ice-active=true]{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) auto;gap:0 18px}.mobile-ice-experience[data-mobile-ice-active=true] .rink-visual__ice{width:min(50dvh - 12px,100vw - 176px)}}@media (prefers-reduced-motion:reduce){.mobile-ice-toggle,.hockey-cursor{display:none!important}.interactive-puck{will-change:auto;--puck-x:0px!important;--puck-y:0px!important;--puck-rotation:0deg!important;--puck-trail-opacity:0!important}.rink-game-puck{--rink-puck-left:50%!important;--rink-puck-top:50%!important;opacity:1!important;transition:none!important}.hockey-rink-graphic__goal-lamp-glow,.hockey-rink-graphic__goal-lamp-lens{transition:none!important;animation:none!important}.rink-game-goal{display:none}.route-card:hover,.process-card:hover,.format-card:hover,.location-card:hover,.button:hover{transform:none}}.reviews-section--home{overflow:hidden}.reviews-section--home .reviews-section__heading{margin-bottom:24px}.reviews-carousel{min-width:0;max-width:100%}.reviews-carousel__controls{justify-content:flex-end;gap:8px;margin-bottom:16px;display:flex}.reviews-carousel__controls button{border:1px solid var(--color-line);background:var(--color-white);width:48px;height:48px;color:var(--color-ink);cursor:pointer;border-radius:50%;place-items:center;font-size:1.25rem;display:grid}.reviews-carousel__controls button:hover:not(:disabled){border-color:var(--color-accent-dark);background:var(--color-focus-contrast)}.reviews-carousel__controls button:disabled{cursor:not-allowed;opacity:.38}.reviews-carousel__controls button:focus-visible,.reviews-carousel__track:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px;box-shadow:0 0 0 2px var(--color-focus-contrast)}.reviews-carousel__track{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-color:var(--color-accent-dark) var(--color-line);scrollbar-width:thin;touch-action:pan-x pan-y;grid-auto-columns:calc(33.3333% - 9.33333px);grid-auto-flow:column;column-gap:14px;max-width:100%;padding:4px 4px 18px;scroll-padding-inline:4px;display:grid;overflow:auto hidden}.reviews-section--home .review-card{scroll-snap-align:start;scroll-snap-stop:normal;min-height:480px}.reviews-section--home .review-card blockquote p{-webkit-line-clamp:9;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.review-card__read-more{margin-top:18px}.reviews-section--archive .review-card[id]{scroll-margin-top:96px}.reviews-section--archive .review-card blockquote p{-webkit-line-clamp:initial;display:block;overflow:visible}@media (max-width:1100px){.reviews-carousel__track{grid-auto-columns:calc(50% - 7px)}}@media (max-width:820px){.reviews-carousel__track{grid-auto-columns:62%}}@media (max-width:620px){.reviews-carousel__controls{justify-content:flex-start}.reviews-carousel__track{grid-auto-columns:86%}.reviews-section--home .review-card{min-height:500px}}@media (prefers-reduced-motion:reduce){.reviews-carousel__track{scroll-behavior:auto}}.gift-certificate-promo-section{background:var(--color-paper);padding-block:clamp(42px,6vw,76px)}.formats-section .format-card{min-height:300px}.formats-section .format-card:first-child{grid-column:span 1}.training-pricing-section .section-heading{max-width:880px}.training-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.training-pricing-grid--with-group{grid-template-columns:repeat(2,minmax(0,1fr))}.training-price-card{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--color-white);flex-direction:column;align-items:flex-start;min-width:0;min-height:330px;padding:clamp(26px,4vw,38px);display:flex;box-shadow:0 12px 34px #0f315812}.training-price-card--group{background:linear-gradient(130deg, #7ec9f52e, transparent 55%), var(--color-white);grid-column:1/-1}.training-price-card h3{max-width:850px;margin-bottom:24px;font-size:clamp(1.65rem,3vw,2.65rem)}.training-price-card__price{white-space:nowrap;display:inline-block}.training-price-card>p:not(.small-label){max-width:760px;color:var(--color-muted);margin:0 0 12px}.training-price-card .review-badge{margin-top:14px}.training-price-card .button{margin-top:auto}.training-price-card__facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin:0 0 24px;display:grid}.training-price-card__facts div{border:1px solid var(--color-line);background:#ffffffb8;border-radius:14px;min-width:0;padding:16px}.training-price-card__facts dt{color:var(--color-muted);text-transform:uppercase;margin-bottom:5px;font-size:.78rem;font-weight:800}.training-price-card__facts dd{margin:0;font-weight:800}.location-card [data-business-offer],.location-card [data-location-price]{display:none}.gift-certificate-promo{border-radius:var(--radius-large);background:linear-gradient(125deg, #246fbd5c, transparent 55%), var(--color-ink);color:var(--color-white);box-shadow:var(--shadow-card);border:1px solid #ffffff1f;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:end;gap:clamp(28px,5vw,72px);padding:clamp(28px,5vw,54px);display:grid;overflow:hidden}.gift-certificate-promo .eyebrow,.gift-certificate-promo .text-link{color:var(--color-accent)}.gift-certificate-promo h2{max-width:780px;margin-bottom:18px}.gift-certificate-promo__subtitle,.page-intro__subtitle{margin:0 0 18px;font-size:clamp(1.125rem,2vw,1.5rem);font-weight:600;line-height:1.4}.gift-certificate-promo>div:first-child>p:last-child{color:#c7d7df;max-width:680px;margin-bottom:0}.gift-certificate-promo__details{align-content:end;gap:22px;display:grid}.gift-certificate-promo__details>p{color:var(--color-white);white-space:nowrap;margin:0;font-size:clamp(1.25rem,1.8vw,1.75rem);font-weight:900;line-height:1.2}.gift-certificate-promo__details .button{width:fit-content}.gift-certificates-page__layout{gap:clamp(30px,5vw,56px);display:grid}.gift-certificates-page__layout>div:first-child{max-width:820px}.gift-certificates-page__layout h2{margin-bottom:20px}.gift-certificates-page__description{color:var(--color-muted);font-size:1.1rem}.gift-certificate-use-cases{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:#7ec9f51a;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:start;gap:clamp(24px,5vw,64px);padding:clamp(24px,4vw,38px);display:grid}.gift-certificate-use-cases h2{margin-bottom:0}.gift-certificate-use-cases ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.gift-certificate-use-cases li{background:var(--color-white);border:1px solid #0f31581a;border-radius:14px;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:12px;padding:16px 18px;display:grid}.gift-certificate-use-cases li>span{color:var(--color-accent-dark);font-weight:900}.gift-certificate-use-cases li strong{line-height:1.35;display:block}.gift-certificate-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.gift-certificate-card{border:1px solid var(--color-line);border-radius:var(--radius-medium);background:var(--color-white);min-height:250px;box-shadow:var(--shadow-card);align-content:space-between;gap:22px;padding:clamp(24px,4vw,36px);display:grid}.gift-certificate-card>span:first-child{color:var(--color-accent-dark);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:800}.gift-certificate-card strong{letter-spacing:-.05em;font-size:clamp(2rem,4vw,3.5rem)}@media (max-width:820px){.gift-certificate-promo{grid-template-columns:minmax(0,1fr);align-items:start}.training-price-card__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.location-card{min-height:0;padding:16px}.location-card__district{margin-bottom:10px}.location-card h3{margin-bottom:6px}.location-card>p:not(.location-card__district){margin-bottom:0;font-size:1rem;line-height:1.45}.location-card .review-badge{margin-top:8px}.process-section .process-photo-placeholder{display:none}.process-section .process-grid{gap:10px}.process-section .process-card,.process-section .process-card:first-child,.process-section .process-card:nth-child(3){grid-template-columns:38px minmax(0,1fr);align-items:start;gap:14px;min-height:0;padding:18px;display:grid}.process-section .process-card>span{width:36px;height:36px}.process-section .process-card h3{margin:0 0 6px;font-size:clamp(1.08rem,5.6vw,1.28rem)}.process-section .process-card p{line-height:1.45}.training-pricing-grid,.training-pricing-grid--with-group{grid-template-columns:minmax(0,1fr)}.training-price-card--group{grid-column:auto}.training-price-card{min-height:0}.training-price-card__facts,.gift-certificate-grid,.gift-certificate-use-cases{grid-template-columns:minmax(0,1fr)}.gift-certificate-promo__details>p{white-space:normal}.gift-certificate-card{min-height:190px}}@media (max-width:360px){.process-section .process-grid{gap:8px}.process-section .process-card,.process-section .process-card:first-child,.process-section .process-card:nth-child(3){padding:16px}}
