body[data-surface=snow]{--background:#f1f5f9;--foreground:#16283a;--card:#fff;--primary:#124363;--primary-foreground:#fff;--secondary:#e7eff6;--muted:#eef2f6;--muted-foreground:#52657a;--accent:#e4edf5;--border:#cddae5;--input:#cddae5;--ring:#124363;--destructive:#a52c24;--radius:12px;color:#16283a;background:radial-gradient(circle at 12% 0,#e2edf6 0,#0000 32rem),linear-gradient(145deg,#fbfdff 0%,#f1f5f9 58%,#e9eff5 100%);margin:0;font-family:Arial,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;font-size:16px;line-height:1.65}body[data-surface=snow] *{box-sizing:border-box;min-width:0}body[data-surface=snow] button,body[data-surface=snow] a,body[data-surface=snow] input,body[data-surface=snow] select,body[data-surface=snow] textarea{touch-action:manipulation}body[data-surface=snow] button:not(:disabled),body[data-surface=snow] summary{cursor:pointer}body[data-surface=snow] button:disabled{cursor:not-allowed}body[data-surface=snow] a{color:inherit;text-decoration:none}:is(body[data-surface=snow] button:focus-visible,body[data-surface=snow] a:focus-visible,body[data-surface=snow] summary:focus-visible){outline-offset:4px;outline:3px solid #2f7fae}body[data-surface=snow] hr{border:0;border-top:1px solid #e0e7ee;margin:22px 0}body[data-surface=snow] .preview-note{color:#e3eef7;text-align:center;background:#0e3550;padding:9px 16px;font-size:13px}body[data-surface=snow] .topbar{background:#fff;border-bottom:1px solid #dae3ec;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;height:auto;min-height:84px;padding:12px max(4vw,14px);font-size:16px;display:flex}body[data-surface=snow] .brand{letter-spacing:1.2px;color:#0e3550;align-items:center;gap:10px;min-height:44px;padding:6px 0;font-size:20px;font-weight:800;line-height:1.15;display:flex}body[data-surface=snow] .brand b{font-weight:400}body[data-surface=snow] .brand small{letter-spacing:2.2px;color:#2f6a91;margin-top:6px;font-size:10px;display:block}body[data-surface=snow] .language{align-items:center;gap:8px;display:flex}body[data-surface=snow] .language select{max-width:150px;min-height:44px}body[data-surface=snow] .shell{max-width:1270px;margin:auto;padding:26px max(3vw,14px) 56px}body[data-surface=snow] .intro{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:26px;display:flex}body[data-surface=snow] .eyebrow{letter-spacing:2px;color:#2f6a91;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}body[data-surface=snow] .intro h1{letter-spacing:-.8px;margin:9px 0 5px;font-size:clamp(23px,3vw,34px);font-weight:750}body[data-surface=snow] .intro p{color:#52657a;max-width:46rem;margin:0}body[data-surface=snow] .season{letter-spacing:1.6px;text-align:right;color:#63768a;font-size:12px;line-height:2}body[data-surface=snow] .season b{color:#1d3a52;font-weight:500}body[data-surface=snow] .booking-layout{grid-template-columns:minmax(0,1fr) minmax(250px,340px);align-items:start;gap:24px;display:grid}body[data-surface=snow] .flow{min-width:0}body[data-surface=snow] .steps{background:#fff;border:1px solid #dae3ec;border-radius:12px 12px 0 0;display:flex;overflow:hidden}body[data-surface=snow] .steps button{color:#6b7d8f;background:#fff;border:0;border-bottom:3px solid #0000;flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:7px;min-width:0;padding:16px 6px;font-size:13px;line-height:1.5;display:flex}body[data-surface=snow] .steps button span{border:1px solid #ccd8e2;border-radius:50%;flex-shrink:0;place-items:center;width:25px;height:25px;font-size:12px;display:grid}body[data-surface=snow] .steps .active{color:#124363;background:#eef4f9;border-bottom-color:#124363;font-weight:700}body[data-surface=snow] .steps .active span,body[data-surface=snow] .steps .done span{color:#fff;background:#124363;border-color:#124363}body[data-surface=snow] .form-panel{background:#fff;border:1px solid #dae3ec;border-top:0;border-radius:0 0 12px 12px;min-width:0;padding:24px 20px}body[data-surface=snow] .section-title{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}body[data-surface=snow] .section-title>span{color:#2f6a91;font-size:13px;font-weight:700}body[data-surface=snow] .section-title h2{letter-spacing:-.5px;margin:0;font-size:22px;font-weight:700}body[data-surface=snow] .form-panel fieldset{border:0;min-width:0;margin:0 0 24px;padding:0}body[data-surface=snow] .form-panel legend{align-items:center;gap:8px;margin-bottom:13px;font-size:16px;font-weight:700;display:flex}body[data-surface=snow] .form-panel label:not(.choice):not(.extra):not(.consent){min-width:0;font-size:14px;font-weight:600;display:block}body[data-surface=snow] .form-panel label input,body[data-surface=snow] .form-panel label textarea,body[data-surface=snow] .form-panel [data-slot=native-select-wrapper]{margin-top:8px}body[data-surface=snow] .form-panel input,body[data-surface=snow] .form-panel select,body[data-surface=snow] .form-panel textarea{background:#fff;border-radius:7px;width:100%;min-width:0;min-height:47px;font-size:16px}body[data-surface=snow] .form-panel textarea{min-height:100px}body[data-surface=snow] .form-panel [data-slot=native-select-wrapper]{width:100%;min-width:0}body[data-surface=snow] .field-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:10px;display:grid}body[data-surface=snow] .hint{color:#5b6e80;overflow-wrap:anywhere;margin:8px 0 18px;font-size:13px;font-weight:400;line-height:1.75}body[data-surface=snow] .choice{cursor:pointer;background:#fff;border:1px solid #ccd8e2;border-radius:8px;align-items:center;gap:11px;min-width:0;padding:15px;font-size:15px;display:flex}body[data-surface=snow] .choice.selected{background:#e7eff6;border-color:#124363;box-shadow:inset 0 0 0 1px #124363}body[data-surface=snow] .choice b{font-weight:650}body[data-surface=snow] .choice small{color:#5b6e80;letter-spacing:.3px;margin-top:3px;font-size:12px;font-weight:400;display:block}body[data-surface=snow] .duration-options{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}body[data-surface=snow] .duration-choice{justify-content:space-between;align-items:flex-start;padding:18px}body[data-surface=snow] .duration-choice strong{margin:10px 0;font-size:34px;line-height:1.1;display:block}body[data-surface=snow] .duration-choice strong small{color:#16283a;margin-left:8px;font-size:14px;display:inline}body[data-surface=snow] .duration-choice b{font-size:14px}body[data-surface=snow] .overline{letter-spacing:1.8px;color:#5b7c93;font-size:11px}body[data-surface=snow] .sport-options{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}body[data-surface=snow] .sport-options .choice{min-height:64px}body[data-surface=snow] .sport-options b{font-size:16px}body[data-surface=snow] .lesson-language-options{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}body[data-surface=snow] .lesson-language-options .choice{justify-content:center;gap:7px;padding:14px 10px}body[data-surface=snow] .venue-select{margin-top:1rem}body[data-surface=snow] .venue-options{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}body[data-surface=snow] .venue-choice{min-height:86px}body[data-surface=snow] .venue-choice.unavailable{cursor:not-allowed;opacity:.65;background:#f2f5f8}body[data-surface=snow] .schedule-inputs>label{background:#f6f9fc;border:1px solid #ccd8e2;border-radius:8px;min-width:0;padding:16px}body[data-surface=snow] .form-panel .schedule-inputs input,body[data-surface=snow] .form-panel .schedule-inputs select{min-height:72px;padding:10px;font-size:clamp(17px,4vw,22px);font-weight:650}body[data-surface=snow] .extra{border:1px dashed #a9c4d8;border-radius:8px;flex-wrap:wrap;align-items:center;gap:11px;margin-top:13px;padding:14px;font-size:14px;display:flex}body[data-surface=snow] .extra div{flex:1;min-width:0}body[data-surface=snow] .extra small{color:#5b6e80;font-size:12px;font-weight:400;display:block}body[data-surface=snow] .extra strong{font-size:15px}body[data-surface=snow] .schedule-box{background:#eff5fa;border-left:3px solid #2f7fae;border-radius:4px;margin:15px 0;padding:12px 14px;font-size:14px}body[data-surface=snow] .schedule-box p{margin:8px 0;line-height:1.8}body[data-surface=snow] .required-mark{color:#b42318;margin-left:5px;font-weight:800}body[data-surface=snow] .required-note{margin:0 0 20px;font-size:14px}body[data-surface=snow] .participant{background:#f5f8fb;border-radius:8px;border:1px solid #dae3ec!important;padding:18px 16px!important}body[data-surface=snow] .participant legend{padding:0 5px}body[data-surface=snow] .shoe-fields{margin-top:1rem}body[data-surface=snow] .level-field{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}body[data-surface=snow] .level-field>label{flex:1;min-width:0}body[data-surface=snow] .level-field>button{flex-shrink:0}body[data-surface=snow] .phone-field{margin-top:1rem;display:block}body[data-surface=snow] .phone-number{background:#fff;border:1px solid #cddae5;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:0;margin-top:8px;display:grid;overflow:hidden}body[data-surface=snow] .phone-number>span{color:#2f6a91;white-space:nowrap;border-right:1px solid #cddae5;padding:0 12px;font-weight:600}body[data-surface=snow] .phone-number input{box-shadow:none!important;border:0!important;border-radius:0!important;margin-top:0!important}body[data-surface=snow] .group-policy{background:#f2f7fb;border:1px solid #b9d0e0;border-radius:9px;margin:18px 0 24px;padding:18px 16px}body[data-surface=snow] .group-policy h3{align-items:center;gap:9px;font-size:17px;font-weight:700;display:flex}body[data-surface=snow] .group-policy p{margin:12px 0;font-size:14px;line-height:1.9}body[data-surface=snow] .mixed-level{color:#8a4f10;font-weight:600}body[data-surface=snow] .consent{background:#e7eff6;border-radius:8px;align-items:flex-start;gap:12px;padding:16px;font-size:15px;font-weight:600;display:flex}body[data-surface=snow] .consent [data-slot=checkbox]{flex-shrink:0;margin-top:4px}body[data-surface=snow] .availability-title{overflow-wrap:anywhere;font-size:15px;font-weight:650}body[data-surface=snow] .instructor{margin-bottom:6px;padding:17px}body[data-surface=snow] .instructor>div{flex:1;min-width:0}body[data-surface=snow] .avatar{color:#124363;background:#dde8f1;border-radius:50%;flex-shrink:0;place-items:center;width:54px;height:54px;font-size:21px;font-weight:700;display:grid;overflow:hidden}body[data-surface=snow] .availability{align-items:center;gap:4px;margin-top:7px;font-size:12px;display:flex}body[data-surface=snow] .availability.yes{color:#12557d}body[data-surface=snow] .availability.no{color:#77675f}body[data-surface=snow] .instructor.unavailable{opacity:.65;background:#f2f5f8}body[data-surface=snow] .review-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}body[data-surface=snow] .review-title button{color:#124363;background:0 0;border:0;font-size:14px;text-decoration:underline}body[data-surface=snow] .review-block{border-bottom:1px solid #dae3ec;margin-bottom:22px;padding-bottom:10px}body[data-surface=snow] .review-block p{overflow-wrap:anywhere;margin:12px 0;font-size:15px}body[data-surface=snow] .review-block h3,body[data-surface=snow] .policy h3{font-size:18px;font-weight:700}body[data-surface=snow] .policy h3{align-items:center;gap:9px;margin:12px 0 16px;display:flex}body[data-surface=snow] .policy-rates{border:1px solid #ccd8e2;border-radius:8px;overflow:hidden}body[data-surface=snow] .policy-rates>div{border-bottom:1px solid #ccd8e2;justify-content:space-between;align-items:center;gap:10px;padding:13px 15px;font-size:14px;display:flex}body[data-surface=snow] .policy-rates>div:last-child{border-bottom:0}body[data-surface=snow] .policy-rates b{color:#124363;font-size:20px}body[data-surface=snow] .policy>p,body[data-surface=snow] .policy details p{color:#52657a;font-size:13px;line-height:1.8}body[data-surface=snow] .policy h4{margin:16px 0 5px;font-size:14px;font-weight:700}body[data-surface=snow] .policy details{border:1px solid #d5e0e9;border-radius:8px;margin:18px 0;padding:14px}body[data-surface=snow] .policy summary{font-size:14px;font-weight:700}body[data-surface=snow] .deadlines{overflow-wrap:anywhere}body[data-surface=snow] .final-total{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-top:22px;display:flex}body[data-surface=snow] .final-total strong{color:#124363;font-size:clamp(24px,7vw,32px)}body[data-surface=snow] .error{color:#9d3527;overflow-wrap:anywhere;background:#fff0ec;border-radius:7px;padding:12px;font-size:14px}body[data-surface=snow] .form-actions{border-top:1px solid #e0e7ee;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:26px;padding-top:22px;display:flex}body[data-surface=snow] .form-actions [data-slot=button],body[data-surface=snow] .success [data-slot=button]{white-space:normal;height:auto;min-height:48px;padding:12px 20px;font-size:15px}body[data-surface=snow] .summary{background:#fff;border:1px solid #dae3ec;border-radius:12px;min-width:0;position:sticky;top:18px;overflow:hidden}body[data-surface=snow] .photo{background:linear-gradient(150deg,#0b2b42 0%,#124363 45%,#3f7fa6 100%);height:196px;position:relative;overflow:hidden}body[data-surface=snow] .photo:after{content:"";background:radial-gradient(circle at 78% 18%,#ffffff30 0,#0000 9rem),linear-gradient(90deg,#07202e8f,#0000 92%);position:absolute;inset:0}body[data-surface=snow] .photo>div{z-index:1;color:#fff;position:absolute;bottom:18px;left:20px}body[data-surface=snow] .photo span{letter-spacing:-.8px;font-size:clamp(22px,6vw,29px);font-weight:800;line-height:1.15;display:block}body[data-surface=snow] .photo small{letter-spacing:2px;margin-top:10px;font-size:10px;display:block}body[data-surface=snow] .summary-body{padding:22px 18px}body[data-surface=snow] .summary-body h2{margin:8px 0 20px;font-size:20px;font-weight:700}body[data-surface=snow] .summary-body .eyebrow{letter-spacing:1.8px;font-size:10px}body[data-surface=snow] .summary-line{align-items:flex-start;gap:11px;margin-bottom:15px;font-size:14px;display:flex}body[data-surface=snow] .summary-line svg{color:#4b7fa0;flex-shrink:0;margin-top:4px}body[data-surface=snow] .summary-line span,body[data-surface=snow] .summary-line b{overflow-wrap:anywhere;min-width:0}body[data-surface=snow] .price-line{justify-content:space-between;gap:8px;margin:9px 0;font-size:14px;display:flex}body[data-surface=snow] .rate-tag{color:#12557d;background:#e7eff6;border-radius:4px;margin-top:5px;padding:2px 7px;font-size:12px;display:inline-block}body[data-surface=snow] .summary-total{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;margin:16px 0 7px;display:flex}body[data-surface=snow] .summary-total>span{font-size:14px}body[data-surface=snow] .summary-total strong{letter-spacing:-1px;color:#124363;font-size:clamp(22px,6vw,29px)}body[data-surface=snow] .summary-break{margin-top:4px;font-size:12px;font-weight:400;display:block}body[data-surface=snow] .summary .hint{margin:8px 0;font-size:12px}body[data-surface=snow] .rate-note{color:#63768a;border-top:1px solid #e0e7ee;margin-top:16px;padding-top:13px;font-size:12px}body[data-surface=snow] .coupon-box{background:#f4f8fb;border:1px solid #c3d6e4;border-radius:9px;margin:0 0 18px;padding:12px 14px}body[data-surface=snow] .coupon-box h3{flex-shrink:0;font-size:16px;font-weight:700}body[data-surface=snow] .coupon-heading{flex-wrap:wrap;align-items:baseline;gap:6px 12px;display:flex}body[data-surface=snow] .coupon-heading .hint{margin:0}body[data-surface=snow] .coupon-box .hint{color:#5b6e80;margin:4px 0 7px;font-size:12px;line-height:1.5}body[data-surface=snow] .coupon-entry{flex-wrap:wrap;align-items:center;gap:8px;display:flex}body[data-surface=snow] .coupon-entry input{flex:1;min-width:0;min-height:44px;margin-top:4px!important}body[data-surface=snow] .coupon-entry [data-slot=button]{min-height:44px;margin-top:4px}body[data-surface=snow] .coupon-applied{color:#124363;overflow-wrap:anywhere;margin:5px 0;font-size:14px}body[data-surface=snow] .coupon-box .error{margin-top:7px;padding:8px 10px;font-size:12px}body[data-surface=snow] .success{text-align:center;background:#fff;border:1px solid #dae3ec;border-radius:12px;max-width:760px;margin:26px auto;padding:34px 20px}body[data-surface=snow] .success-check{color:#124363;background:#e2edf6;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 20px;display:grid}body[data-surface=snow] .success h2{font-size:clamp(21px,5vw,25px);font-weight:700}body[data-surface=snow] .success p{color:#52657a;max-width:580px;margin:16px auto}body[data-surface=snow] .success>strong{overflow-wrap:anywhere;color:#124363;letter-spacing:1px;margin:8px 0;font-size:clamp(20px,6vw,24px);display:block}body[data-surface=snow] .receipt-summary{overflow-wrap:anywhere;border-block:1px solid #dae3ec;margin:22px 0;padding:20px 0}body[data-surface=snow] .receipt-summary b{font-size:21px}body[data-surface=snow] .level-guide-dialog{width:min(44rem,100% - 1.5rem);max-height:90dvh;padding:1.25rem;font-size:1rem;overflow-y:auto;max-width:44rem!important}body[data-surface=snow] .level-guide-list{gap:.8rem;display:grid}body[data-surface=snow] .level-guide-list section{border:1px solid #d5e0e9;border-radius:.7rem;padding:1rem}body[data-surface=snow] .level-guide-list h3{color:#124363;font-size:1.1rem;font-weight:700}body[data-surface=snow] .level-guide-list p{margin:.45rem 0 .75rem;line-height:1.7}body[data-surface=snow] footer{color:#63768a;border-top:1px solid #dae3ec;flex-wrap:wrap;justify-content:space-between;gap:12px;max-width:1194px;margin:0 auto;padding:24px max(3vw,14px);font-size:12px;display:flex}body[data-surface=snow] footer a{align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}@media (max-width:900px){body[data-surface=snow] .booking-layout{grid-template-columns:minmax(0,1fr)}body[data-surface=snow] .summary{position:static}body[data-surface=snow] .season{display:none}}@media (max-width:600px){body[data-surface=snow] .shell{padding:20px 12px 32px}body[data-surface=snow] .form-panel{padding:18px 14px}body[data-surface=snow] .steps button{flex-direction:column;gap:5px;padding:13px 4px;font-size:12px}body[data-surface=snow] .level-field{flex-direction:column;align-items:stretch}body[data-surface=snow] .level-field>button{align-self:flex-start}body[data-surface=snow] .summary .photo{display:none}body[data-surface=snow] .level-guide-dialog{padding:1rem}}@media (max-width:420px){body[data-surface=snow] .field-grid,body[data-surface=snow] .duration-options,body[data-surface=snow] .venue-options,body[data-surface=snow] .sport-options,body[data-surface=snow] .lesson-language-options{grid-template-columns:minmax(0,1fr)}body[data-surface=snow] .brand{font-size:17px}body[data-surface=snow] .brand b{display:none}body[data-surface=snow] .topbar{min-height:72px;padding:10px 12px}body[data-surface=snow] .instructor{padding:14px}body[data-surface=snow] .avatar{width:44px;height:44px;font-size:18px}body[data-surface=snow] .coupon-entry input{flex-basis:100%}}body[data-surface=snow] .pay-box{background:#f4f8fb;border:1px solid #dae3ec;border-radius:12px;max-width:580px;margin:0 auto 20px;padding:18px}body[data-surface=snow] .pay-box p{color:#52657a;text-align:left;margin:14px auto 0;font-size:13px;line-height:1.7}body[data-surface=snow] .voucher-link{color:#fff;background:#124363;border-radius:10px;padding:12px 20px;font-size:15px;text-decoration:none;display:inline-block}body[data-surface=snow] .success .preview-note{border-radius:10px;margin:0 0 18px;position:static}@media (prefers-reduced-motion:reduce){body[data-surface=snow] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
