.addons-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:none;isolation:isolate}.addons-overlay.is-open{display:flex;align-items:center;justify-content:center}body.modal-open{overflow:hidden}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#1a1a1a;background-image:url(https://storage.googleapis.com/boulderscss/signup-bg-gradient-pink.png);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;justify-content:center;z-index:9999;opacity:1;transition:opacity .3s ease-out}.loading-overlay.hidden{opacity:0;pointer-events:none}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.spinner{width:48px;height:48px;border:3px solid rgba(244,1,245,.15);border-top:3px solid #F401F5;border-right:3px solid rgba(244,1,245,.15);border-bottom:3px solid rgba(244,1,245,.15);border-left:3px solid rgba(244,1,245,.15);border-radius:50%;animation:spin .8s cubic-bezier(.5,0,.5,1) infinite;will-change:transform;box-sizing:border-box}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.addons-sheet{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--color-surface-dark);color:var(--color-text-secondary);border-radius:16px;border:2px solid var(--color-item-border);width:min(1000px,94vw);max-height:84vh;overflow:hidden;box-shadow:0 22px 70px #0000008c;display:flex;flex-direction:column}.addons-header{display:flex;justify-content:center;align-items:center;position:relative;padding:20px 24px 12px;border-bottom:1px solid var(--color-item-border)}.addons-title{margin:0;text-align:center;font-size:var(--font-size-xl);letter-spacing:.2px;font-weight:700;color:var(--color-text-secondary)}.addons-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:var(--font-size-2xl);line-height:24px;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.addons-close:hover{background:var(--color-item-border);color:var(--color-brand-accent)}.addons-content{display:flex;flex-direction:column;flex:1;min-height:0}.addons-image,.addons-image img{display:none}.addons-main{flex:1 1 auto;display:flex;flex-direction:column;min-width:0;overflow:hidden}.addons-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;padding:16px 24px;overflow-y:auto;flex:1}.addons-grid .addon-card{background:var(--color-surface-dark);color:var(--color-text-secondary);border-radius:12px;border:2px solid var(--color-item-border);box-shadow:0 1px 2px #0000000a;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .2s;position:relative}.addons-grid .addon-card:hover{border-color:var(--color-brand-accent);border:2px solid var(--color-brand-accent);transform:translateY(-2px)}.addons-grid .addon-card .plan-info{display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;gap:16px;min-height:100%}.addons-grid .addon-card .plan-content-left{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;align-items:flex-start;justify-content:space-between;min-height:100%}.addons-grid .addon-card .plan-type{color:var(--color-text-secondary);font-weight:700;font-size:var(--font-size-md);margin:0;line-height:1.4}.addons-grid .addon-card .plan-content-right{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:4px;align-self:flex-start}.addons-grid .addon-card .plan-price{display:flex;align-items:baseline;gap:4px;margin:0;white-space:nowrap}.addons-grid .addon-card .plan-price .price-amount{color:var(--color-brand-accent);font-size:var(--font-size-2xl);line-height:28px;font-weight:700}.addons-grid .addon-card .plan-price .price-unit{color:var(--color-text-muted);font-size:var(--font-size-base)}.addons-grid .addon-card .plan-description{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin:0;text-align:left;align-self:flex-start;width:100%}.addons-grid .addon-card .plan-meta{display:flex;flex-direction:column;gap:8px;flex:1}.addons-grid .addon-card .plan-original{font-size:var(--font-size-base);color:var(--color-text-subtle);text-decoration:line-through}.addons-grid .addon-card .plan-features{margin:0;padding:0;list-style:none}.addons-grid .addon-card .plan-features li{margin:4px 0;font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:18px;position:relative;padding-left:20px}.addons-grid .addon-card .plan-features li:before{content:"✓";position:absolute;left:0;color:var(--color-brand-accent);font-weight:700;font-size:var(--font-size-sm)}.addons-grid .addon-card .plan-actions{display:flex;justify-content:flex-end;margin-top:auto;padding-top:8px}.addons-grid .addon-card .select-btn{background:var(--color-brand-accent);color:var(--color-button-primary);border:none;border-radius:999px;padding:8px 20px;cursor:pointer;font-size:var(--font-size-base);font-weight:600;transition:all .2s}.addons-grid .addon-card .select-btn:hover{background:var(--color-brand-accent-hover);transform:scale(1.02)}.addons-grid .addon-card .select-btn.selected{background:var(--color-success)}.addons-grid .addon-card .check-circle{position:absolute;top:12px;right:12px;width:24px;height:24px;border:2px solid var(--color-item-border);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s ease;cursor:pointer;z-index:10}.addons-grid .addon-card.selected .check-circle{background:var(--color-success);border-color:var(--color-success)}.addons-grid .addon-card .check-circle:after{content:"✓";color:var(--color-button-primary);font-size:var(--font-size-base);font-weight:700;opacity:0;transform:scale(.5);transition:all .2s ease}.addons-grid .addon-card.selected .check-circle:after{opacity:1;transform:scale(1)}.addons-grid .addon-card.selected{border:2px solid var(--color-brand-accent)}.addons-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;background:var(--color-surface-dark);border-top:1px solid var(--color-item-border);flex-shrink:0}.addons-hint{opacity:.75;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-muted)}.addons-actions .addons-actions-right{display:flex;gap:12px;flex-shrink:0}.addons-action-btn{padding:10px 16px;border-radius:10px;cursor:pointer;font-size:var(--font-size-base);font-weight:600;transition:all .2s;min-width:100px}.addons-action-btn.addons-skip{border:1px solid var(--color-item-border);background:transparent;color:var(--color-text-secondary)}.addons-action-btn.addons-skip:hover{background:var(--color-item-border);border-color:var(--color-brand-accent)}.addons-action-btn.addons-continue{border:none;background:var(--color-brand-accent);color:var(--color-button-primary)}.addons-action-btn.addons-continue:hover{background:var(--color-brand-accent-hover)}@media (max-width: 768px){.addons-sheet{width:95vw;max-height:90vh;height:90vh}.addons-content{overflow-y:auto;flex:1;min-height:0}.addons-grid{grid-template-columns:1fr;padding:12px 16px;overflow-y:auto;flex:1}.addons-actions{flex-direction:column;align-items:stretch;gap:12px;flex-shrink:0}.addons-hint{text-align:center}.addons-actions .addons-actions-right{width:100%}.addons-skip,.addons-continue{flex:1}}#addonMode .plan-card{background:#f8fafc;color:#0f172a;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000a}#addonMode .plan-card .plan-type{color:#0f172a;font-weight:700}#addonMode .plan-card .select-btn{background:var(--color-buttons-secondary);color:var(--color-button-primary);border-radius:999px}:root{--color-text-primary: #1F2837;--color-text-white: #FFFFFF;--color-brand-accent: #F0F;--color-brand-accent-hover: #E608E6;--color-student: #3B83F6;--color-junior: #FFA500;--color-adult: #A856F7;--color-surface-dark: #2A2A2A;--color-form-bg: #1A1A1A;--color-card-fill: #f1f1f1;--color-item-bg: #1e293b;--color-item-border: #334155;--color-text-muted: #94a3b8;--color-text-subtle: #64748b;--color-success: #059669;--color-success-transparent: #5a004b41;--plan-section-gap: 32px;--plan-info-horizontal-padding: 0px;--color-buttons-secondary: #1F2837;--color-button-primary: #fff;--color-text-secondary: #D1D5DB;--font-size-xs: 10px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-size-4xl: 36px;--font-size-5xl: 48px}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;height:100%;width:100%;max-width:100vw}body>*{max-width:100vw;overflow-x:hidden}body{background-color:#1a1a1a;background-image:url(https://storage.googleapis.com/boulderscss/signup-bg-gradient-pink.png);width:100%;max-width:100vw;background-size:cover;background-position:center center;background-repeat:no-repeat;background-attachment:fixed;min-height:100vh;display:flex;flex-direction:column;color:#fff;font-family:Inter,system-ui,sans-serif;overflow-x:hidden;-webkit-background-attachment:fixed;-moz-background-attachment:fixed;-o-background-attachment:fixed;will-change:auto}.header{width:100%;background:transparent;position:relative;z-index:10;margin-bottom:32px}.header-container{max-width:1200px;margin:0 auto;padding:0 20px}.header-content{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 0;min-height:80px;gap:12px}.header-text{font-size:var(--font-size-2xl);font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:2px;margin:0;text-align:center}.logo-section{display:flex;align-items:center;flex-shrink:0}.logo-image{height:50px;width:auto;-o-object-fit:contain;object-fit:contain;display:block}.logo-fallback{display:none;align-items:center;justify-content:center;font-size:var(--font-size-xl);font-weight:700;color:#fff;background:var(--color-brand-accent);border-radius:8px;padding:12px 16px;height:50px;min-width:120px}.language-switcher{position:absolute;right:20px;top:50%;transform:translateY(-50%);display:flex;gap:8px;align-items:center}.language-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .2s ease}.language-btn:hover{background:#ffffff26;border-color:#ffffff4d}.language-btn.active{background:#f401f533;border-color:#f401f5;color:#f401f5}.language-flag{font-size:16px;line-height:1}.language-name{font-weight:600}@media (max-width: 768px){.header-container{padding:0 16px}.header-content{padding:16px 0;min-height:60px}.logo-image{height:40px}.logo-fallback{height:40px;font-size:var(--font-size-lg);padding:8px 12px;min-width:100px}.header-text{font-size:var(--font-size-m);letter-spacing:1px}.language-switcher{right:16px;gap:6px}.language-btn{padding:5px 10px;font-size:var(--font-size-xs)}.language-flag{font-size:14px}}@media (max-width: 480px){.header-content{padding:12px 0;min-height:50px}.logo-image{height:24px}.logo-fallback{height:35px;font-size:var(--font-size-base);padding:6px 10px;min-width:80px}.header-text{font-size:var(--font-size-lg);letter-spacing:1px}.language-switcher{right:12px;gap:4px}.language-btn{padding:4px 8px;font-size:var(--font-size-xs)}.language-flag{font-size:12px}.language-name{display:none}}.step-indicator{background-color:transparent;padding:0}.step-indicator-container{max-width:1200px;margin:0 auto;padding:0 16px}.step-indicator-content{display:flex;align-items:center;justify-content:center;gap:8px}.selected-gym-display{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;padding:8px 16px;font-size:var(--font-size-sm);position:relative;z-index:10}.selected-gym-label{color:#ffffffb3;font-weight:500}.selected-gym-link{display:flex;align-items:center;gap:6px;background:none;border:none;color:#f401f5;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease;font-size:var(--font-size-sm);position:relative;z-index:11;pointer-events:auto}.selected-gym-link>*{pointer-events:none}.selected-gym-link:hover{color:#d401d5;background-color:#f401f51a}.selected-gym-link svg{width:14px;height:14px;opacity:.8;transition:opacity .2s ease;pointer-events:none}.selected-gym-link:hover svg{opacity:1}.step{display:flex;flex-direction:column;align-items:center;gap:8px}.step-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-sm);transition:all .3s ease}.step-circle.active{background-color:transparent;border:2px solid #f0f;color:#fff}.step-circle.completed{background-color:#f0f;color:#fff}.step-circle.completed .checkmark{display:block}.step-circle .checkmark{display:none;width:16px;height:16px}.step-circle.inactive{background-color:transparent;border:2px solid white;color:#fff}.step-label{font-size:var(--font-size-base);font-weight:500;color:var(--color-text-secondary);transition:color .3s ease}.step.active .step-label,.step.completed .step-label{color:#f0f}.step.inactive .step-label{color:#9ca3af}.step-connector{width:40px;height:2px;background-color:#374151;margin:0 8px;transition:background-color .3s ease}.step-connector.completed{background-color:#f0f}.main{max-width:1200px;margin:0 auto;padding:24px 22px;text-align:center;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box;display:flex;flex-direction:column;flex:1;min-height:100vh}.main-title{font-size:var(--font-size-2xl);text-transform:uppercase;font-weight:700;text-align:right;margin-bottom:16px}.main-subtitle{font-size:var(--font-size-lg);padding-bottom:20px;color:var(--color-text-white)}.secondary-subtitle{font-size:var(--font-size-base);padding-bottom:20px;color:var(--color-text-secondary);margin-top:-10px;line-height:1.4}.step-content{margin-top:50px;flex:1;display:flex;flex-direction:column;background:transparent}.step-panel{display:none;animation:fadeIn .3s ease-in-out}.step-panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.step-panel-content{max-width:600px;margin:0 auto 24px;text-align:center}#step-4 .step-panel-content{max-width:1200px;text-align:left}#step-4 .main-subtitle,#step-4 .secondary-subtitle{text-align:center}.step-panel-title{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:16px;text-align:center}.step-panel-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:40px;text-align:center}.plan-section{position:relative;margin-top:12px;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.plan-section.collapsed{max-height:0;margin-top:12px;margin-bottom:0;opacity:0;transform:translateY(-20px);visibility:hidden}.plan-section.expanded{max-height:none;height:auto;margin-top:var(--plan-section-gap);opacity:1;transform:translateY(0);visibility:visible}.plan-section[data-state=entering]{animation:expandSection .4s cubic-bezier(.4,0,.2,1) forwards}.plan-section[data-state=leaving]{animation:collapseSection .4s cubic-bezier(.4,0,.2,1) forwards}.plan-section[data-state=entering] .plan-options{animation:contentFadeIn .4s ease-out .2s both}.plan-section[data-state=leaving] .plan-options{animation:contentFadeOut .2s ease-out forwards}.full-bleed{margin-left:calc(-1 * var(--main-padding));margin-right:calc(-1 * var(--main-padding));width:calc(100% + (2 * var(--main-padding)))}@keyframes expandSection{0%{max-height:0;opacity:0;transform:translateY(-20px);margin-top:0}to{max-height:1000px;opacity:1;transform:translateY(0);margin-top:var(--plan-section-gap)}}@keyframes collapseSection{0%{max-height:1000px;opacity:1;transform:translateY(0);margin-top:var(--plan-section-gap)}to{max-height:0;opacity:0;transform:translateY(-20px);margin-top:0}}.plan-options{--carousel-edge-padding: var(--page-gutter, 16px);--carousel-scroll-padding: var(--page-gutter, 16px);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;padding-top:24px;margin-left:calc(-1 * var(--page-gutter, 16px));margin-right:calc(-1 * var(--page-gutter, 16px));padding-left:var(--carousel-edge-padding);padding-right:var(--carousel-edge-padding);scroll-padding-left:var(--carousel-scroll-padding);scroll-padding-right:var(--carousel-scroll-padding)}.plan-options .plan-card{scroll-snap-align:center}#quantityMode{padding-top:12px}.value-card-summary{display:flex;justify-content:center;align-items:center;width:100%;margin-top:24px}.search-wrapper{position:relative;margin-bottom:32px}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--color-text-subtle);width:20px;height:20px;z-index:1}.search-input{width:100%;padding:16px 56px 16px 48px;background:var(--color-item-bg);border:2px solid var(--color-item-border);border-radius:12px;color:var(--color-button-primary);font-size:var(--font-size-md);transition:all .2s ease;outline:none}.location-icon-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;padding:8px;cursor:pointer;color:var(--color-text-subtle);transition:all .2s ease;display:flex;align-items:center;justify-content:center;border-radius:6px;z-index:1}.location-icon-btn:hover:not(:disabled){color:var(--color-brand-accent);background-color:#f401f51a}.location-icon-btn:disabled{opacity:.5;cursor:not-allowed}.location-icon-btn.active{color:#f401f5;background-color:#f401f526}.location-icon-btn.active:hover:not(:disabled){color:#f401f5;background-color:#f401f540}.location-icon-btn svg{width:20px;height:20px}.location-icon-btn.loading{pointer-events:none}.location-icon-btn.loading svg{display:none}.location-icon-btn.loading:after{content:"";width:16px;height:16px;border:2px solid rgba(244,1,245,.3);border-top:2px solid #F401F5;border-radius:50%;animation:spin .8s linear infinite;display:block}.search-input:focus{border-color:#f0f;box-shadow:0 0 0 3px #f000f01a}.search-input::-moz-placeholder{color:var(--color-text-subtle)}.search-input::placeholder{color:var(--color-text-subtle)}.location-status{font-size:var(--font-size-sm);padding:6px 12px;border-radius:6px;display:inline-block}.location-status.success{background-color:#10b98133;color:#10b981;border:1px solid rgba(16,185,129,.3)}.location-status.error{background-color:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.location-status.info{background-color:#3b82f633;color:#3b82f6;border:1px solid rgba(59,130,246,.3);text-align:left}.gym-list{display:flex;flex-direction:column;gap:12px;padding-bottom:0;position:relative}.gym-item{position:relative;background:var(--color-item-bg);border:2px solid var(--color-item-border);border-radius:12px;padding:16px 20px;cursor:pointer;transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .3s ease;display:flex;align-items:center;gap:16px;opacity:1;transform:translateY(0)}.gym-item.reordering{transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .3s ease}.gym-item.fade-out{opacity:0;transform:translateY(-10px)}.gym-item.fade-in{animation:fadeInSlide .4s cubic-bezier(.4,0,.2,1) forwards}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.gym-item:hover{border-color:#f0f;transform:translate(4px)}.gym-item.selected{background:#27193f;border-color:#f0f}.gym-info{flex:1;min-width:0}.gym-name-wrapper{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nearest-badge{position:absolute;top:-12px;right:34px;padding:4px 10px;background-color:#f401f5;color:#fff;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;z-index:10;box-shadow:0}.gym-name{font-size:var(--font-size-md);font-weight:600;text-align:left;color:var(--color-button-primary);margin-bottom:4px}.gym-details{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-start;width:100%;position:relative}.gym-address{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:left;flex-shrink:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding-right:60px}.gym-address-street,.gym-address-postal-city{line-height:1.4}.check-circle{width:24px;height:24px;border:2px solid var(--color-item-border);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.gym-item.selected .check-circle{background:#f0f;border-color:#f0f}.check-circle:after{content:"✓";color:#fff;font-size:var(--font-size-base);font-weight:700;opacity:0;transform:scale(.5);transition:all .2s ease}.gym-item.selected .check-circle:after{opacity:1;transform:scale(1)}.gym-item.nearest-gym{border-color:#f401f5;border-width:3px;box-shadow:0 0 0 1px #f401f54d}.gym-item.nearest-gym:hover{border-color:#f401f5;box-shadow:0 0 0 1px #f401f580}.gym-distance-badge{position:absolute;top:50%;transform:translateY(-50%);right:50px;display:inline-flex;align-items:center;padding:4px 10px;background-color:#37415180;border:1px solid var(--color-item-border);border-radius:12px;color:var(--color-text-muted);font-size:11px;font-weight:500;white-space:nowrap;z-index:1;margin:0}@media (max-width: 768px){.gym-item .gym-distance-badge{background-color:var(--color-item-bg);border:1px solid var(--color-item-border);box-shadow:0 2px 4px #0003}}.no-results{text-align:center;padding:40px 20px;color:var(--color-text-subtle);font-size:var(--font-size-base)}.hidden{display:none}.back-arrow-btn,.forward-arrow-btn{display:none!important}.gym-heads-up{position:fixed;top:20px;right:20px;background:#1e293bf2;border:2px solid var(--color-item-border);border-radius:12px;padding:12px 16px;z-index:1000;opacity:0;transform:translateY(-10px);transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #0000004d}.gym-heads-up.show{opacity:1;transform:translateY(0)}.gym-heads-up-content{display:flex;align-items:center;gap:8px}.gym-heads-up-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.gym-heads-up-name{font-size:var(--font-size-base);color:#f0f;font-weight:600}.access-heads-up{position:fixed;top:20px;right:20px;background:#1e293bf2;border:2px solid var(--color-item-border);border-radius:12px;padding:12px 16px;z-index:1000;opacity:0;transform:translateY(-10px);transition:all .3s cubic-bezier(.25,.46,.45,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 32px #0000004d}.access-heads-up.show{opacity:1;transform:translateY(0)}.access-heads-up-content{display:flex;align-items:center;gap:8px}.access-heads-up-label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.access-heads-up-name{font-size:var(--font-size-base);color:#f0f;font-weight:600}@media (max-width: 640px){.gym-heads-up{top:10px;right:10px;padding:10px 12px}.gym-heads-up-label{font-size:var(--font-size-xs)}.gym-heads-up-name{font-size:var(--font-size-sm)}.access-heads-up{top:10px;right:10px;padding:10px 12px}.access-heads-up-label{font-size:var(--font-size-xs)}.access-heads-up-name{font-size:var(--font-size-sm)}}@media (max-width: 767px){:root{--plan-section-gap: 24px}.value-card-summary{margin-top:20px;justify-content:center}.value-card-continue-btn{width:auto}}.value-card-summary-value{font-size:var(--font-size-lg);font-weight:600;color:#fff}.value-card-continue-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:8px;border:none;background:#f0f;color:#fff;font-weight:600;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.value-card-continue-btn:disabled{opacity:.4;cursor:not-allowed}.value-card-continue-btn:not(:disabled):hover{transform:translateY(-1px)}.value-card-continue-prefix,.value-card-continue-suffix{font-size:var(--font-size-md);font-weight:500;color:#e5e7eb}.plan-info-text{text-align:center;max-width:800px;margin:32px auto;padding-left:var(--plan-info-horizontal-padding);padding-right:var(--plan-info-horizontal-padding)}.plan-info-text p{color:#eee;font-size:var(--font-size-md);line-height:1.6;margin:0}.plan-info-text a{color:var(--color-brand-accent);text-decoration:underline;transition:color .3s ease}.plan-info-text a:hover{color:color-mix(in srgb,var(--color-brand-accent) 80%,white 20%)}.skip-section{display:flex;gap:12px;justify-content:space-between;margin:24px 0}.back-btn,.skip-btn{padding:12px 24px;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.back-btn{background:var(--color-brand-accent);color:#fff}.back-btn:hover{background-color:#4b5563;color:var(--color-text-secondary)}.skip-btn{background:#f0f;color:#fff}.skip-btn:hover{background-color:#374151;color:var(--color-text-secondary);border-color:#4b5563}.plan-card.disabled{opacity:.4;pointer-events:none;filter:grayscale(.3)}.plan-card.disabled .plan-select-btn{background-color:#dbd8d1;color:#6b7280}.category-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.category-item{background:var(--color-item-bg);border:2px solid var(--color-item-border);border-radius:12px;cursor:pointer;transition:all .3s ease;overflow:hidden;position:relative}.category-item:focus{outline:0px solid #f0f}.category-item.expanded:after{content:"";position:absolute;bottom:0;left:0;right:0;height:20px;background:linear-gradient(to bottom,transparent,rgba(34,30,30,.646));pointer-events:none;z-index:1}.category-item[data-category=campaign]{background:var(--color-item-bg);border:2px solid rgba(34,197,94,.4);box-shadow:0 0 8px #22c55e33;transition:all .3s ease,box-shadow .3s ease,border-color .3s ease}.category-item[data-category=campaign]:hover{border-color:#22c55e99;box-shadow:0 0 16px #22c55e66}.category-item[data-category=campaign].expanded{border-color:#22c55eb3;box-shadow:0 0 20px #22c55e80}.category-item.selected{border-color:#f0f;background:#1d283b}.category-header{padding:16px;display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;position:relative}.category-info{flex:1;min-width:0;text-align:center}.category-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-button-primary);margin-bottom:3px;text-align:center}.category-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.4;text-align:center}.category-icon{width:20px;height:20px;color:var(--color-text-subtle);transition:all .3s ease;flex-shrink:0;position:absolute;right:16px}.category-item.expanded .category-icon{transform:rotate(180deg);color:#f0f}.category-content{max-height:0;overflow:hidden;opacity:0;transform:translateY(-10px);transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1) .1s,transform .4s cubic-bezier(.4,0,.2,1) .1s;padding-bottom:0}.category-item.expanded .category-content{max-height:calc(100vh - 200px);opacity:1;transform:translateY(0);overflow:visible;display:flex;flex-direction:column;padding-bottom:0;outline:none}.category-item.expanded .category-content:focus{outline:none}.category-description{padding:0 20px 12px 18px;border-bottom:1px solid var(--color-item-border);margin-bottom:0;flex-shrink:0;opacity:0;transform:translateY(-5px);transition:opacity .3s ease-out .15s,transform .3s ease-out .15s}.category-item.expanded .category-description{opacity:1;transform:translateY(0)}.category-description p{font-size:var(--font-size-sm);line-height:1.5;color:#cbd5e1;margin:0;text-align:center}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{width:0px;height:0px;background:transparent}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:transparent}.plans-list{display:flex;flex-direction:column;gap:0px;padding-bottom:0;flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 250px);opacity:0;transform:translateY(10px);transition:opacity .4s ease-out .2s,transform .4s ease-out .2s}.category-item.expanded .plans-list{opacity:1;transform:translateY(0)}.plan-card{background:#13191f;border-radius:0;border-top:1px solid var(--color-item-border);border-bottom:1px solid transparent;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:stretch;justify-content:flex-start;padding:16px 20px;position:relative;min-height:100px;opacity:0;transform:translateY(15px) scale(.95)}.category-item:not(.expanded) .plan-card{opacity:0;transform:translateY(15px) scale(.95);animation:none}.category-item.expanded .plan-card{animation:fadeInCard .4s cubic-bezier(.4,0,.2,1) forwards}.category-item.expanded .plan-card:nth-child(1){animation-delay:.25s}.category-item.expanded .plan-card:nth-child(2){animation-delay:.3s}.category-item.expanded .plan-card:nth-child(3){animation-delay:.35s}.category-item.expanded .plan-card:nth-child(4){animation-delay:.4s}.category-item.expanded .plan-card:nth-child(5){animation-delay:.45s}.category-item.expanded .plan-card:nth-child(6){animation-delay:.5s}.category-item.expanded .plan-card:nth-child(7){animation-delay:.55s}.category-item.expanded .plan-card:nth-child(8){animation-delay:.6s}.category-item.expanded .plan-card:nth-child(n+9){animation-delay:.65s}@keyframes fadeInCard{0%{opacity:0;transform:translateY(15px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.plan-card:last-child{padding-bottom:24px}.no-products-message{padding:40px 20px;text-align:center;opacity:0;transform:translateY(15px) scale(.95)}.category-item.expanded .no-products-message{animation:fadeInCard .4s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.25s}.no-products-content{color:#cbd5e1;font-size:var(--font-size-base);line-height:1.6}.no-products-content p{margin:0;color:#94a3b8}.plan-card:hover:not(.disabled):not(.selected){transform:scale(1.02);background:#151a24;border-top-color:var(--color-item-border);border-bottom-color:transparent}.plan-card:active{transform:scale(.98)}.plan-card.selected{background:var(--color-success-transparent);border-top:#f0f 1px solid;border-bottom:#f0f 1px solid}.plan-info{flex:1;min-width:0;display:flex;flex-direction:row;justify-content:space-between;align-items:stretch;gap:16px;padding-right:0;min-height:100%}.plan-content-left{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;align-items:flex-start;justify-content:space-between;min-height:100%}.plan-type{font-size:var(--font-size-md);font-weight:600;color:var(--color-button-primary);text-align:left;line-height:1.4;margin:0}.plan-content-right{flex-shrink:0;display:flex;align-items:flex-start;justify-content:flex-end;align-self:flex-start;padding-top:0}.plan-price{display:flex;align-items:baseline;gap:4px;line-height:1;white-space:nowrap}.price-amount{font-size:var(--font-size-2xl);font-weight:700;color:#f0f;line-height:1}.price-unit{font-size:var(--font-size-sm);color:#f0f;font-weight:500;line-height:1.2}.plan-description{font-size:var(--font-size-base);color:var(--color-text-muted);line-height:1.5;white-space:normal;margin:0;text-align:left;align-self:flex-start;width:100%}.plan-card .check-circle{position:absolute;bottom:16px;right:20px;width:28px;height:28px;margin:0 0 4px;flex-shrink:0;border:2px solid var(--color-item-border);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.check-circle:after{content:"✓";color:#fff;font-size:var(--font-size-md);font-weight:700;opacity:0;transform:scale(.5);transition:all .2s ease}@media (hover: none) and (pointer: coarse){.category-header{min-height:72px;padding:18px;text-align:left}.plan-card{min-height:auto;height:auto;padding:16px 18px}.check-circle{width:32px;height:32px}}@media (max-width: 375px){.category-header{padding:14px;text-align:left}.category-title{font-size:var(--font-size-md);text-align:left}.category-subtitle{font-size:var(--font-size-sm);text-align:left}.category-description{padding:12px 16px 8px}.category-description p{font-size:var(--font-size-sm)}.plan-card{padding:14px 16px;min-height:70px}.plan-info{gap:12px;padding-right:0}.plan-content-left{gap:4px}.plan-content-right{align-self:flex-start}.plan-card .check-circle{bottom:14px;right:16px;width:24px;height:24px;margin:0 0 4px}.plan-type{font-size:var(--font-size-base)}.price-amount{font-size:var(--font-size-lg)}.plan-description{font-size:var(--font-size-sm)}.plan-card .check-circle{width:24px;height:24px}}@media (min-width: 641px){.category-list{gap:12px;margin-bottom:32px}.category-header{padding:20px}.category-title{font-size:var(--font-size-lg)}.category-subtitle{font-size:var(--font-size-base)}.category-icon{width:24px;height:24px}.plan-card{padding:16px 20px;min-height:100px}.plan-info{padding-right:0;gap:16px;align-items:stretch;min-height:100%}.plan-content-left{justify-content:space-between;min-height:100%}.plan-card .check-circle{bottom:16px;right:20px;margin:0 0 4px}.plan-card:hover,.category-item:hover{border-color:#f0f}.footer-text{font-size:var(--font-size-base);padding:0 20px}.category-description{padding:0 24px 16px}.category-description p{font-size:var(--font-size-sm);text-align:center}}.plan-card.selected .check-circle{background:#f0f;border-color:#f0f}.plan-card.selected .check-circle:after{opacity:1;transform:scale(1)}.plan-card.selected{transform:scale(1);box-shadow:0 6px 16px #f000f033}.plan-card.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.plan-card.disabled:hover{transform:none;box-shadow:none}.quantity-panel{display:none;padding:16px;background:#0f172acc;border-top:#f0f 1px solid;border-bottom:#f0f 1px solid;border-radius:12px;border:1px solid rgba(240,0,240,.2);position:relative;z-index:1;animation:slideDown .3s ease-out;width:100%;box-sizing:border-box}.quantity-panel.show{display:block}.quantity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.quantity-label{font-size:var(--font-size-base);font-weight:600;color:#cbd5e1;text-transform:uppercase;letter-spacing:.5px}.quantity-total{font-size:var(--font-size-lg);font-weight:700;color:#f0f}.quantity-selector{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:8px 12px;background:var(--color-card-fill);border-radius:12px;width:100%}.quantity-controls{display:flex;align-items:center;gap:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:60px}}.quantity-controls{display:flex;align-items:center;gap:8px;border-radius:6px;padding:4px 6px}.quantity-btn{width:36px;height:36px;border:2px solid var(--color-item-border);border-radius:8px;background:transparent;color:#cbd5e1;font-size:var(--font-size-lg);font-weight:600;line-height:1;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.quantity-btn:hover:not(:disabled){border-color:#f0f;color:#f0f;transform:scale(1.05)}.quantity-btn:active:not(:disabled){transform:scale(.95)}.quantity-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-btn.plus{background:#f0f;border-color:#f0f;color:#fff}.quantity-btn.plus:hover:not(:disabled){background:#e609e6;border-color:#e609e6}.quantity-btn.plus:disabled{background:#f000f04d;opacity:.5}.quantity-display{min-width:48px;height:36px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);font-weight:700;color:#f0f;background:#f000f01a;border-radius:8px;border:1px solid rgba(240,0,240,.2)}.continue-arrow{width:44px;height:44px;background:#f0f;border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);font-weight:600;flex-shrink:0}.continue-arrow:after{content:"→"}.continue-arrow:hover{background:#e609e6;transform:translate(2px)}.continue-arrow:active{transform:translate(0)}.total-display{display:flex;flex-direction:column;align-items:flex-start;gap:1px;line-height:1;margin-left:16px}.total-display .total-amount{font-size:var(--font-size-md);font-weight:700;color:#f0f;line-height:1}.total-unit{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:500;margin-top:1px}.punch-card-continue{margin-top:20px;display:flex;justify-content:center;padding:0 12px 12px}.plan-info .continue-btn{background:#f0f;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #f000f04d;width:100%;margin-top:8px;text-transform:none;letter-spacing:0;display:none}.plan-info .continue-btn:hover{background:#e609e6;transform:translateY(-1px);box-shadow:0 4px 12px #f000f066}.plan-info .continue-btn:active{transform:translateY(0);box-shadow:0 2px 6px #f000f04d}.plan-info .continue-btn:disabled{background:#64748b;cursor:not-allowed;opacity:.5;transform:none;box-shadow:none}@media (max-width: 640px){.plan-card .quantity-selector{padding:6px 8px;gap:8px;border-radius:10px}.quantity-btn{width:44px;height:44px;font-size:var(--font-size-2xl)}.quantity-display{min-width:50px;height:44px;font-size:var(--font-size-2xl)}.total-display .total-amount{font-size:var(--font-size-2xl)}.total-unit{font-size:var(--font-size-sm)}.continue-btn{width:100%;padding:16px 32px;font-size:var(--font-size-base)}}@media (hover: none) and (pointer: coarse){.quantity-btn{width:48px;height:48px}.quantity-display{height:48px;min-width:55px}}.divider{height:1px;background:var(--color-item-border);margin:16px 0}.features-list{list-style:none;display:flex;flex-direction:column;gap:10px}.feature-item{display:flex;align-items:flex-start;gap:10px;font-size:var(--font-size-sm);color:#cbd5e1;line-height:1.5}.feature-check{width:18px;height:18px;border-radius:50%;background:#f000f026;color:#f0f;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;font-size:var(--font-size-xs);font-weight:700}.footer-text{text-align:center;font-size:var(--font-size-base);line-height:1.7;color:#cbd5e1;max-width:900px;margin:0 auto;padding:0 20px}.footer-text a{color:#f0f;text-decoration:none;font-weight:600}.footer-text a:hover{text-decoration:underline}.empty-state{text-align:center;padding:40px 20px;color:var(--color-text-subtle);font-size:var(--font-size-base)}@media (max-width: 640px){.category-header{padding:16px}.category-title{font-size:var(--font-size-md)}.plans-list .plan-card{padding:20px 20px 0}.price-amount{font-size:var(--font-size-2xl)}}.original-price{text-decoration:line-through;color:#9ca3af;font-size:var(--font-size-2xl);margin-right:8px}.discounted-price{color:var(--color-brand-accent);font-size:var(--font-size-4xl);font-weight:700}.plan-info{font-size:var(--font-size-base);color:#6b7280;margin-bottom:0;font-style:none}.plan-separator{height:1px;background-color:var(--color-text-primary);margin:0 0 14px}.plan-content{flex:1;display:flex;flex-direction:column}.plan-features{list-style:none;margin-bottom:32px;flex:1}.plan-features li{color:#374151;position:relative;padding:8px 0 8px 24px}.plan-features li:before{content:"✓";position:absolute;left:0;color:var(--card-accent);font-weight:700}.plan-select-btn{width:100%;padding:12px 24px;background:var(--card-accent);color:var(--color-button-primary);border:1px solid var(--card-accent);border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .3s ease,border-color .3s ease}.plan-select-btn.attention-glare{position:relative;overflow:hidden;box-shadow:0 0 0 3px color-mix(in srgb,var(--card-accent) 20%,transparent)}.plan-select-btn.attention-glare:after{content:"";position:absolute;top:-60%;left:-120%;width:200%;height:220%;background:linear-gradient(120deg,#fff0,#ffffffbf 45%,#fff0 70%);transform:rotate(18deg);opacity:0;pointer-events:none;animation:plan-select-glare .9s ease forwards}.plan-select-btn:hover{background:var(--card-accent-hover);border-color:var(--card-accent-hover)}@keyframes plan-select-glare{0%{transform:translate(0) rotate(18deg);opacity:0}35%{opacity:.85}to{transform:translate(140%) rotate(18deg);opacity:0}}.category-toggle{position:relative;display:flex;justify-content:center;margin:32px auto;background-color:var(--color-item-bg);border:1px solid var(--color-item-border);border-radius:999px;padding:4px;max-width:300px;overflow:hidden;box-shadow:0 4px 16px #00000040,0 1px 4px #00000026,inset 0 1px #ffffff0d;transition:all .3s cubic-bezier(.4,0,.2,1)}.category-toggle:hover{box-shadow:0 6px 20px #0000004d,0 2px 6px #0003,inset 0 1px #ffffff14;transform:translateY(-1px)}.category-toggle:before{content:"";position:absolute;top:4px;left:4px;width:calc(50% - 4px);height:calc(100% - 8px);border-radius:999px;background:linear-gradient(135deg,#f0f,color-mix(in srgb,#f0f 80%,white 20%));transform:translate(0);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #f0f6,0 1px 3px #ff00ff40,inset 0 1px #fff3}.category-toggle.right-active:before{transform:translate(calc(100% + 4px));background:linear-gradient(135deg,#f0f,color-mix(in srgb,#f0f 80%,white 20%))}.toggle-btn{position:relative;z-index:1;flex:1;padding:12px 24px;background-color:transparent;color:#d6d6d6;border:none;border-radius:999px;font-weight:600;font-size:var(--font-size-base);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden}.toggle-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(255,255,255,.08) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.toggle-btn:hover:before{opacity:1}.toggle-btn.active{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);animation:activeButtonPulse .4s ease-out}.toggle-btn:hover:not(.active){color:var(--color-text-secondary);transform:scale(1.02)}.toggle-btn:active{transform:scale(.98)}@keyframes activeButtonPulse{0%{text-shadow:0 1px 2px rgba(0,0,0,.3)}50%{text-shadow:0 1px 2px rgba(0,0,0,.3),0 0 8px rgba(255,255,255,.4)}to{text-shadow:0 1px 2px rgba(0,0,0,.3)}}.toggle-btn:focus-visible{outline:2px solid #f0f;outline-offset:2px}.carousel-container{overflow:hidden}.carousel-container .carousel{overflow:visible}@media (max-width: 480px){.main{padding:0;margin:0}.main-title{font-size:var(--font-size-base)!important;margin-top:12px!important}.category-toggle{max-width:280px;margin:24px auto}.toggle-btn{padding:10px 20px;font-size:var(--font-size-sm)}.step-content{margin:20px 0 0;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:0;width:100%;max-width:100vw}.step-panel-content{max-width:100%;padding:0 6px;margin-top:0;overflow-x:hidden;box-sizing:border-box}.main{padding:24px 16px;max-width:100vw;overflow-x:hidden}.main-subtitle{font-size:var(--font-size-md);padding-bottom:12px;margin-bottom:8px}.secondary-subtitle{font-size:var(--font-size-sm);padding-bottom:12px;margin-bottom:8px;line-height:1.3}.step-panel-title{font-size:var(--font-size-xl);margin-bottom:12px}.step-panel-description{font-size:var(--font-size-base);margin-bottom:24px}.plan-options{margin-left:0;margin-right:0;width:100%;max-width:100%;overflow-x:hidden}.quantity-card{position:relative;max-width:80%}.quantity-selector{background:var(--color-card-fill);border-radius:12px;padding:8px 12px;display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:0 auto;transition:all .3s cubic-bezier(.4,0,.2,1)}.quantity-selector:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.quantity-controls{display:flex;align-items:center;gap:8px;border-radius:12px;padding:4px}.quantity-btn{width:44px;height:44px;border:none;border-radius:10px;background:#f5f5f5;color:#333;font-size:var(--font-size-xl);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;overflow:hidden}.quantity-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(0,0,0,.05) 0%,transparent 70%);opacity:0;transition:opacity .2s ease}.quantity-btn:hover:before{opacity:1}.quantity-btn:hover{background:#e8e8e8;color:#000;transform:scale(1.05)}.quantity-btn:active{transform:scale(.95)}.quantity-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.quantity-btn:disabled:hover{background:#f5f5f5;color:#333;transform:none}.quantity-btn.plus{background:#f0f;color:#fff}.quantity-btn.plus:hover{background:#e609e6;color:#fff}.quantity-btn.plus:before{background:radial-gradient(circle at center,rgba(255,255,255,.2) 0%,transparent 70%)}.quantity-display{min-width:60px;height:44px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:700;color:#000;background:#fff;border-radius:10px;border:1px solid #e0e0e0;position:relative}.total-display{flex:1;text-align:right}.total-display .total-label{font-size:var(--font-size-base);color:#333;font-weight:500;margin-bottom:4px}.total-display .total-amount{font-size:var(--font-size-2xl);font-weight:800;color:#000;line-height:1}.currency{font-size:var(--font-size-xl);color:#f0f;margin-left:2px}.order-summary{margin:0 22px}.quantity-display.updated{animation:quantityPulse .3s ease-out}@keyframes quantityPulse{0%{transform:scale(1)}50%{transform:scale(1.1);background:#f0f;color:#fff}to{transform:scale(1)}}}@media (max-width: 640px){.quantity-selector{padding:6px 8px;gap:8px;border-radius:10px;max-width:100%;margin-bottom:12px}.quantity-controls{order:1;flex-shrink:0}.continue-arrow{order:2;flex-shrink:0}.quantity-btn{width:48px;height:48px;font-size:var(--font-size-2xl);border-radius:12px}.quantity-display{min-width:50px;height:48px;font-size:var(--font-size-xl);border-radius:12px}.total-display .total-amount{font-size:var(--font-size-2xl)}.currency{font-size:var(--font-size-lg)}.total-display .total-label{font-size:var(--font-size-sm)}}@media (max-width: 480px){body{padding:12px}.quantity-selector{padding:4px 6px;gap:6px;border-radius:8px;flex-wrap:wrap;justify-content:space-between;margin-bottom:12px}.quantity-controls{order:1;flex-shrink:0}.continue-arrow{order:2;flex-shrink:0}.total-display{order:3;flex:none;text-align:right;min-width:120px}.quantity-btn{width:44px;height:44px;font-size:var(--font-size-xl)}.quantity-display{min-width:45px;height:44px;font-size:var(--font-size-lg)}.total-display .total-amount{font-size:var(--font-size-2xl)}.currency{font-size:var(--font-size-md)}}@media (hover: none) and (pointer: coarse){.quantity-btn{width:52px;height:52px}.quantity-display{height:52px;min-width:60px}}.info-form-section{min-width:0;margin:0 22px;max-width:calc(100% - 44px);overflow-x:hidden}.quantity-btn:focus-visible{outline:2px solid #f0f;outline-offset:2px}.quantity-selector.loading{pointer-events:none;opacity:.7}.quantity-selector.loading:after{content:"";position:absolute;top:50%;right:24px;width:16px;height:16px;border:2px solid #f0f;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.total-price{font-size:var(--font-size-lg);font-weight:700;color:#1f2837;margin:0;text-align:right;white-space:nowrap}.personal-info-form,.payment-form{max-width:500px;margin:0 auto}.form-group{margin-bottom:24px}.form-row{display:flex;grid-template-columns:1fr 1fr;gap:16px}.form-group label{display:none;margin-bottom:8px;font-weight:500;color:var(--color-text-secondary)}.form-group input,.form-group select{width:100%;padding:12px 16px;background-color:#2a2a2a;border:2px solid #374151;border-radius:8px;color:#fff;font-size:var(--font-size-base);transition:border-color .3s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#f0f}.form-group input::-moz-placeholder{color:#9ca3af}.form-group input::placeholder{color:#9ca3af}.info-section{margin-bottom:40px}.info-section-title{font-size:var(--font-size-md);text-align:left;font-weight:700;margin-bottom:24px;color:#fff}.login-status{margin-bottom:24px;padding:20px;background-color:#111827;border:1px solid #374151;border-radius:12px;position:relative}.login-status-content{display:flex;flex-direction:column;gap:16px}.login-status-profile{flex:1}.login-status-header{margin-bottom:0;padding-bottom:16px}.login-status-label{margin:0 0 16px;font-size:var(--font-size-sm);color:#9ca3af}.profile-info-grid{display:flex;flex-direction:column;gap:0}.profile-info-row{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:var(--font-size-sm);padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}.profile-info-row:last-child{border-bottom:none;padding-bottom:0}.profile-info-row:first-child{padding-top:0}.profile-info-label{color:#9ca3af;font-weight:500;flex-shrink:0;min-width:120px;padding-right:8px}.profile-info-value{color:#fff;text-align:right;flex:1;word-break:break-word;padding-left:8px}.profile-info-row[data-auth-name-row]{padding-top:0;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.15)}.profile-info-row[data-auth-name-row] .profile-info-value{font-size:var(--font-size-base);font-weight:600;color:#fff}.login-status .login-btn{position:absolute;top:12px;right:12px;width:auto;min-width:auto;padding:6px 12px;font-size:var(--font-size-xs);font-weight:500;background-color:transparent;color:#9ca3af;border:1px solid #374151;border-radius:6px;transition:all .2s ease}.login-status .login-btn:hover{background-color:#f401f51a;color:#f401f5;border-color:#f401f5}.buyer-section{margin-bottom:24px}.buyer-title{display:none;text-align:left;font-size:var(--font-size-base);font-weight:700;margin-bottom:16px;color:#fff}.parent-guardian-form{margin-top:32px;padding:24px;background-color:#1a1a1a;border:1px solid #374151;border-radius:12px;animation:slideDown .3s ease-out}.parent-form-title{font-size:var(--font-size-xl);font-weight:700;margin-bottom:24px;color:#fff;text-align:center}.parent-guardian-reminder{margin:24px 0;padding:12px 16px;border-radius:10px;background:#f000ff14;border:1px solid rgba(240,0,255,.35);color:#e5e7eb;font-size:var(--font-size-base);line-height:1.5;text-align:center}.same-address-toggle{margin-bottom:24px;padding:16px;background-color:#2a2a2a;border:1px solid #374151;border-radius:8px;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.info-divider{margin:40px 0;display:flex;align-items:center;justify-content:center}.divider-line{width:100%;height:1px;background-color:#374151}.toggle-container{margin-bottom:24px}.toggle-label{display:flex;align-items:center;cursor:pointer;color:var(--color-text-secondary);font-size:var(--font-size-base)}.toggle-input{display:none}.toggle-slider{position:relative;width:48px;height:24px;background-color:#374151;border-radius:24px;margin-right:12px;transition:background-color .3s ease}.toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:#fff;border-radius:50%;transition:transform .3s ease}.toggle-input:checked+.toggle-slider{background-color:#f401f5}.toggle-input:checked+.toggle-slider:before{transform:translate(24px)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-btn.is-loading{position:relative;color:transparent}.login-btn.is-loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.save-account-btn{width:100%;padding:12px 24px;background-color:#6b7280;color:#fff;border:none;border-radius:8px;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background-color .3s ease;margin-top:8px}.save-account-btn:hover{background-color:#4b5563}.save-account-btn.valid{background-color:#f401f5}.save-account-btn.valid:hover{background-color:#d401d5}.save-account-btn:disabled{opacity:.6;cursor:not-allowed}.save-account-btn.error-flash{animation:redFlash .6s ease-in-out}.save-account-message{margin-top:12px;padding:12px;border-radius:6px;font-size:var(--font-size-sm);font-weight:500}.save-account-message.success{background-color:#10b981;color:#fff}.save-account-message.error{background-color:#ef4444;color:#fff}.forgot-password-link{display:inline-block;margin-top:8px;color:#f401f5;font-size:var(--font-size-sm);text-decoration:none;transition:color .2s ease}.forgot-password-link:hover{color:#d401d5;text-decoration:underline}.forgot-password-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease-out}.forgot-password-modal-content{background-color:#1a1a1a;border:1px solid #374151;border-radius:12px;padding:32px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 22px 70px #0000008c;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.forgot-password-description{color:var(--color-text-muted);font-size:var(--font-size-md);margin-bottom:24px;line-height:1.5}.forgot-password-actions{display:flex;gap:12px;margin-top:24px}.forgot-password-cancel-btn{flex:1;padding:16px 24px;background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-item-border);border-radius:8px;font-size:var(--font-size-md);font-weight:600;cursor:pointer;transition:all .2s ease}.forgot-password-cancel-btn:hover{background-color:#ffffff0d;border-color:var(--color-text-muted)}.forgot-password-success{text-align:center;padding:24px 0}.forgot-password-success-message{color:var(--color-text-secondary);font-size:var(--font-size-md);margin-bottom:24px;line-height:1.5}.terms-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease-out}.terms-modal-content{background-color:#1a1a1a;border:1px solid #374151;border-radius:12px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 22px 70px #0000008c;animation:slideUp .3s ease-out}.terms-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid #374151}.terms-modal-header-actions{display:flex;align-items:center;gap:16px}.terms-modal-language-switcher{display:flex;background:#ffffff0d;border-radius:6px;padding:2px;gap:2px}.language-btn{background:transparent;border:none;color:var(--color-text-muted);padding:6px 12px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s ease;border-radius:4px;min-width:36px}.language-btn:hover{color:var(--color-text-secondary);background:#ffffff0d}.language-btn.active{background:#f401f5;color:#fff}.language-btn.active:hover{background:#f3f;color:#fff}.terms-modal-tabs{display:flex;border-bottom:1px solid #374151;padding:0 32px;gap:0}.terms-modal-search{padding:8px 32px;border-bottom:1px solid #374151;background:transparent;position:relative}.terms-search-input{width:100%;padding:6px 32px 6px 12px;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.1);color:var(--color-text-secondary);font-size:13px;transition:all .2s ease;box-sizing:border-box}.terms-search-input:focus{outline:none;border-bottom-color:#f401f5;background:transparent}.terms-search-input::-moz-placeholder{color:var(--color-text-muted);font-size:13px}.terms-search-input::placeholder{color:var(--color-text-muted);font-size:13px}.terms-search-clear{position:absolute;right:36px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:all .2s ease;width:16px;height:16px}.terms-search-clear:hover{color:var(--color-text-secondary);background:transparent}.terms-search-clear svg{width:14px;height:14px}.terms-modal-content-text .search-highlight{background:#f401f54d;padding:2px 4px;border-radius:3px;font-weight:600}.terms-modal-content-text .search-no-results{text-align:center;padding:40px 20px;color:var(--color-text-muted);font-size:var(--font-size-base)}.terms-tab{background:transparent;border:none;color:var(--color-text-muted);padding:16px 24px;cursor:pointer;font-size:var(--font-size-base);font-weight:500;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-1px}.terms-tab:hover{color:var(--color-text-secondary);background:#ffffff0d}.terms-tab.active{color:#f401f5;border-bottom-color:#f401f5;background:transparent}.terms-tab.active:hover{color:#f401f5}.terms-modal-title{color:#fff;font-size:var(--font-size-lg);font-weight:700;margin:0}.terms-modal-close{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.terms-modal-close:hover{background-color:#ffffff1a;color:var(--color-text-primary)}.terms-modal-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;min-height:0;padding:0}.terms-modal-content-text{padding:32px;color:#f3f4f6;line-height:1.7;flex:1;font-size:15px}.terms-modal-content-text h1,.terms-modal-content-text h2,.terms-modal-content-text h3,.terms-modal-content-text h4{color:#fff;margin-top:6px;margin-bottom:16px;font-weight:700;line-height:1.4}.terms-modal-content-text h1{font-size:1.75rem;color:#fff;margin-top:0}.terms-modal-content-text h2{font-size:1.5rem;color:#fff}.terms-modal-content-text h3{font-size:1.25rem;color:#fff}.terms-modal-content-text h4{font-size:1.1rem;color:#fff}.terms-modal-content-text p{margin-bottom:18px;color:#e5e7eb;line-height:1.7}.terms-modal-content-text ul,.terms-modal-content-text ol{margin-bottom:18px;padding-left:28px;color:#e5e7eb}.terms-modal-content-text li{margin-bottom:10px;color:#e5e7eb;line-height:1.7}.terms-modal-content-text a{color:#f401f5;text-decoration:underline;font-weight:500}.terms-modal-content-text a:hover{color:#f3f;text-decoration:underline}.terms-modal-content-text a:focus{outline:2px solid #F401F5;outline-offset:2px;border-radius:2px}.terms-modal-content-text strong{color:#fff;font-weight:600}.terms-modal-content-text em{color:#e5e7eb;font-style:italic}.terms-modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 32px;color:#d1d5db}.terms-modal-spinner{width:48px;height:48px;border:3px solid rgba(244,1,245,.15);border-top:3px solid #F401F5;border-right:3px solid rgba(244,1,245,.15);border-bottom:3px solid rgba(244,1,245,.15);border-left:3px solid rgba(244,1,245,.15);border-radius:50%;animation:spin .8s cubic-bezier(.5,0,.5,1) infinite;margin-bottom:16px;box-sizing:border-box;will-change:transform}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.terms-modal{padding:10px}.terms-modal-content{max-width:100%;max-height:95vh}.terms-modal-header{padding:16px 20px}.terms-modal-title{font-size:var(--font-size-md)}.terms-modal-body iframe{min-height:400px}}.date-input-container{position:relative}.date-input-container:after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center;pointer-events:none;z-index:1}.date-input{width:100%;color:var(--color-text-secondary);background-color:var(--color-buttons-secondary);border:1px solid var(--color-item-border);border-radius:8px;padding:12px 40px 12px 16px;font-size:var(--font-size-base);transition:all .2s ease;position:relative}.date-input:focus{outline:none;border-color:#f401f5;background-color:#ffffff0d}.date-input::-webkit-calendar-picker-indicator{opacity:0;position:absolute;right:12px;width:20px;height:20px;cursor:pointer;z-index:2}.date-input::-webkit-inner-spin-button,.date-input::-webkit-clear-button{filter:invert(100%) brightness(200%);opacity:1!important}.date-input::-moz-calendar-picker-indicator{opacity:0;position:absolute;right:12px;width:20px;height:20px;cursor:pointer;z-index:2}.date-input::-webkit-datetime-edit{color:var(--color-text-secondary)}.date-input::-webkit-datetime-edit-fields-wrapper{color:var(--color-text-secondary)}.date-input::-webkit-datetime-edit-text{color:var(--color-text-muted);padding:0 4px}.date-input::-webkit-datetime-edit-month-field,.date-input::-webkit-datetime-edit-day-field,.date-input::-webkit-datetime-edit-year-field{color:var(--color-text-secondary);padding:0 2px}.date-input::-webkit-datetime-edit-month-field:focus,.date-input::-webkit-datetime-edit-day-field:focus,.date-input::-webkit-datetime-edit-year-field:focus{background-color:#f401f533;color:#fff;border-radius:3px}.date-input::-webkit-calendar-picker-indicator{background-color:transparent}@media (prefers-color-scheme: dark){.date-input{color-scheme:dark}}.country-selector{display:flex;align-items:center;background-color:#2a2a2a;border:2px solid #374151;border-radius:8px;padding:1px 2px;color:#fff;font-size:var(--font-size-md);transition:border-color .3s ease;width:-moz-fit-content;width:fit-content;min-width:-moz-fit-content;min-width:fit-content;max-width:180px}.country-selector:focus-within{border-color:#f401f5}.flag-icon{margin-left:8px;font-size:var(--font-size-lg)}.country-selector select{background:none;border:none;color:#fff;font-size:var(--font-size-md);outline:none;cursor:pointer;margin-right:8px;width:140px;max-width:140px;overflow:hidden;text-overflow:ellipsis}.country-selector select#countryCode{padding:10px 1px;margin-right:4px;font-size:var(--font-size-base);width:130px;max-width:130px}.select-container{position:relative}.select-container select{width:100%;padding:12px 40px 12px 16px;background-color:#2a2a2a;border:2px solid #374151;border-radius:8px;color:#fff;font-size:var(--font-size-md);transition:border-color .3s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.select-container select:focus{outline:none;border-color:#f401f5}.select-container .dropdown-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}.phone-country{flex:0 0 auto;min-width:-moz-fit-content;min-width:fit-content;max-width:150px}.phone-number{flex:1;min-width:0}.form-group input[readonly]{background-color:#374151;color:#9ca3af;cursor:not-allowed}.readonly-field{background-color:#374151;color:#9ca3af;cursor:not-allowed;opacity:.7}.readonly-field:focus{outline:none;border-color:#374151}.country-selector.readonly-field{background-color:#374151;border-color:#374151;opacity:.7}.country-selector.readonly-field select{color:#9ca3af;cursor:not-allowed}.info-layout{display:grid;grid-template-columns:1fr 400px;gap:40px;margin-top:20px;justify-content:center;max-width:1200px;margin-left:auto;margin-right:auto;align-items:start}@media (min-width: 1024px){.info-layout{grid-template-columns:minmax(500px,600px) minmax(350px,400px)}}.info-form-section{min-width:0;max-width:600px;margin-bottom:-32px;position:relative;z-index:1}.order-summary-section{margin-bottom:32px}.auth-mode-toggle{display:flex;position:relative;background:#0f172a99;border:1px solid var(--color-item-border);border-radius:12px;padding:4px;margin-bottom:32px;gap:4px}.auth-mode-btn{flex:1;padding:12px 24px;background:transparent;border:none;border-radius:8px;color:var(--color-text-muted);font-size:var(--font-size-md);font-weight:600;cursor:pointer;transition:color .3s ease;position:relative;z-index:2}.auth-mode-btn.active{color:var(--color-button-primary)}.auth-mode-slider{position:absolute;top:4px;left:4px;width:calc(50% - 4px);height:calc(100% - 8px);background:linear-gradient(135deg,#f0f,#e609e6);border-radius:8px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease;z-index:1;opacity:0}.auth-mode-btn.active~.auth-mode-slider{opacity:1}.auth-mode-btn[data-mode=login].active~.auth-mode-slider{transform:translate(0)}.auth-mode-btn[data-mode=create].active~.auth-mode-slider{transform:translate(calc(100% + 4px))}.info-section[data-auth-section]{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-container{background-color:#1a1a1a;border:1px solid #374151;border-radius:12px;padding:24px;margin-top:auto;position:relative;z-index:2}.auth-mode-switch-btn{position:absolute;top:16px;right:16px;display:flex;align-items:center;gap:6px;padding:8px 12px;background:#f401f51a;border:1px solid rgba(244,1,245,.3);border-radius:6px;color:#f401f5;font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease;z-index:10}.auth-mode-switch-btn:hover{background:#f401f533;border-color:#f401f580;color:#d401d5}.auth-mode-switch-btn svg{width:14px;height:14px;flex-shrink:0}.auth-mode-switch-text{white-space:nowrap}.order-summary-section{position:sticky;top:20px;height:-moz-fit-content;height:fit-content}.order-summary{background-color:#2a2a2a;border:1px solid #374151;border-radius:12px;padding:24px;position:sticky;top:20px}.summary-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.summary-title{font-size:var(--font-size-xl);font-weight:700;color:#fff}.summary-edit-btn{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff14;color:#f9fafb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease}.summary-edit-btn:hover{background:#ffffff24;transform:translateY(-1px)}.cart-items{margin-bottom:20px}.cart-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.cart-item:first-child{padding-top:0}.cart-item:last-child{border-bottom:none;padding-bottom:0}.item-name{color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:700;display:flex;flex-direction:column;gap:4px}.item-name:has(.home-gym-info){font-weight:500}.item-price{color:#fff;font-weight:500;font-size:var(--font-size-base)}.home-gym-info{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500;margin-top:4px}.home-gym-text{color:var(--color-text-secondary)}.home-gym-info-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:#fff9;cursor:pointer;transition:color .2s ease;position:relative;flex-shrink:0}.home-gym-info-icon:hover{color:#ffffffe6}.home-gym-info-icon svg{width:100%;height:100%}.home-gym-info-wrapper{position:relative;display:inline-flex;align-items:center}.home-gym-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(-8px);background:#000000f2;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:12px 16px;min-width:280px;max-width:320px;box-shadow:0 4px 12px #0000004d;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease,transform .2s ease;pointer-events:none}.home-gym-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid rgba(0,0,0,.95)}.home-gym-tooltip.show{opacity:1;visibility:visible;transform:translate(-50%) translateY(0);pointer-events:auto}.home-gym-tooltip .tooltip-content{color:var(--color-text-secondary);font-size:13px;line-height:1.5}.home-gym-tooltip .tooltip-content p{margin:0 0 8px}.home-gym-tooltip .tooltip-content p:last-child{margin-bottom:0}.home-gym-tooltip .tooltip-content strong{color:#fff;font-weight:600}.cart-item{position:relative}.payment-overview{margin:16px 0;display:flex;flex-direction:column;gap:12px}.payment-overview-item{display:flex;justify-content:space-between;align-items:center;padding:0}.payment-overview-paynow{flex-direction:column;align-items:stretch;gap:8px}.payment-overview-paynow-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.payment-overview-paynow-row .payment-label{flex-shrink:0}.payment-overview-paynow-row .payment-label-period{flex-shrink:0;margin-left:0;vertical-align:baseline;display:inline}.payment-overview-paynow-row .payment-amount{margin-left:auto;align-self:baseline}.payment-overview .payment-label{color:var(--color-text-white);font-size:var(--font-size-base);font-weight:500}.payment-label-period{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-style:normal;font-weight:400;margin-left:4px}.payment-overview .payment-amount{color:var(--color-text-white);font-size:var(--font-size-base);font-weight:300}.payment-period{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-style:normal;font-weight:400;margin-left:4px}.payment-overview-bound-until{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:600;text-align:left;margin-top:4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.discount-section{margin-bottom:20px}.discount-toggle{width:100%;background:none;border:1px solid #374151;border-radius:8px;padding:12px 16px;color:var(--color-text-secondary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}.discount-toggle:hover{border-color:#f401f5;color:#fff}.toggle-icon{font-size:var(--font-size-lg);transition:transform .3s ease}.discount-toggle.active .toggle-icon{transform:rotate(45deg)}.discount-form{margin-top:12px;display:flex;gap:8px}.discount-input{flex:1;padding:8px 12px;background-color:#374151;border:1px solid #4B5563;border-radius:6px;color:#fff;font-size:var(--font-size-base)}.discount-input:focus{outline:none;border-color:#f401f5}.apply-discount-btn{padding:8px 16px;background-color:#f401f5;color:#fff;border:none;border-radius:6px;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background-color .3s ease}.apply-discount-btn:hover{background-color:#d401d5}.apply-discount-btn:disabled{opacity:.6;cursor:not-allowed}.discount-display{margin:12px 0;padding:12px 0;border-top:1px solid #374151}.discount-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:var(--font-size-sm)}.discount-label{color:var(--color-text-secondary)}.discount-value{color:#fff;font-weight:500}.discount-row.discount-applied .discount-label{color:#10b981}.discount-row.discount-applied .discount-value{color:#10b981;font-weight:600}.discount-message{margin-top:8px;padding:10px 14px;border-radius:6px;font-size:var(--font-size-sm);font-weight:500;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.discount-message-success{background-color:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.4);font-weight:600}.discount-message-error{background-color:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.4);font-weight:600}.discount-message-info{background-color:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.price-updated{animation:priceHighlight 1s ease-out;color:#10b981!important;font-weight:700!important}@keyframes priceHighlight{0%{transform:scale(1);color:inherit}50%{transform:scale(1.05);color:#10b981}to{transform:scale(1);color:#10b981}}.consents-section{margin-bottom:32px;display:flex;flex-direction:column;gap:16px}.consent-checkbox{display:flex;align-items:flex-start;cursor:pointer;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.5;transition:opacity .2s ease}.consent-checkbox:hover{opacity:.9}.consent-checkbox input[type=checkbox]{display:none}.consent-checkbox .checkmark{width:20px;height:20px;border:2px solid #4B5563;border-radius:4px;margin-right:12px;margin-top:2px;flex-shrink:0;position:relative;transition:all .2s ease;background-color:transparent}.consent-checkbox:hover .checkmark{border-color:#6b7280}.consent-checkbox input[type=checkbox]:checked+.checkmark{background-color:#f401f5;border-color:#f401f5}.consent-checkbox input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700;line-height:1}.consent-text{flex:1;min-width:0;word-wrap:break-word}.consent-checkbox a{color:#f401f5;text-decoration:underline;transition:color .2s ease}.consent-checkbox a:hover{color:#d401d5;text-decoration:underline}.payment-methods{margin-bottom:24px}.payment-title{font-size:var(--font-size-md);font-weight:700;margin-bottom:16px;color:#fff}.payment-option{margin-bottom:12px}.payment-option input[type=radio]{display:none}.payment-label{display:flex;align-items:center;padding:6px 0;cursor:pointer;transition:all .3s ease;color:var(--color-text-secondary)}.payment-option input[type=radio]:checked+.payment-label{border-color:#f401f5;background-color:#f401f51a;color:#fff}.payment-icon{margin-right:12px;color:#9ca3af}.payment-option input[type=radio]:checked+.payment-label .payment-icon{color:#f401f5}.checkout-btn{width:100%;padding:16px 24px;background-color:#374151;color:#9ca3af;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:700;cursor:not-allowed;transition:all .3s ease;text-transform:uppercase}.checkout-btn:not(:disabled){background-color:#f401f5;color:#fff;cursor:pointer}.checkout-btn:not(:disabled):hover{background-color:#d401d5}.checkout-btn.error-flash{animation:redFlashCheckout .6s ease-in-out}main{flex:1 0 auto;display:flex;flex-direction:column;background:transparent;position:relative;z-index:1;min-height:100vh}#mainContent{min-height:100vh;display:flex;flex-direction:column}.global-footer{background:var(--color-surface-dark);border-top:1px solid var(--color-item-border);padding:24px 0 16px;opacity:0;transform:translateY(20px);animation:footerFadeIn .6s ease-out .3s forwards;box-shadow:0 -4px 20px #0000001a;position:relative;z-index:1;flex-shrink:0;width:100%;margin:auto 0 0}@keyframes footerFadeIn{to{opacity:1;transform:translateY(0)}}.footer-content{max-width:1200px;margin:0 auto 16px;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.footer-section h4{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:600;margin:0 0 8px}.footer-section p{color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5;margin:0}.footer-section ul{list-style:none;padding:0;margin:0}.footer-section ul li{margin-bottom:4px}.footer-section ul li a{color:var(--color-text-muted);text-decoration:none;font-size:var(--font-size-sm);transition:color .2s ease}.footer-section ul li a:hover{color:var(--color-brand-accent)}.language-switcher{display:flex;gap:8px;align-items:center}.language-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:transparent;border:1px solid var(--color-item-border);border-radius:6px;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:all .2s ease}.language-btn:hover{border-color:var(--color-brand-accent);color:var(--color-brand-accent);background-color:#f401f51a}.language-btn.active{border-color:var(--color-brand-accent);color:var(--color-brand-accent);background-color:#f401f526}.language-label{font-weight:500}.language-code{font-size:var(--font-size-xs);opacity:.7;font-weight:600}.security-badge{display:flex;align-items:center;gap:8px;color:var(--color-text-muted);font-size:var(--font-size-sm)}.certified-icon{color:var(--color-success);font-weight:700;font-size:var(--font-size-base)}.footer-bottom{max-width:1200px;margin:0 auto;padding:12px 20px 0;border-top:1px solid var(--color-item-border);text-align:center}.footer-bottom p{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin:0}.footer-bottom p a{color:var(--color-text-muted);text-decoration:none;transition:color .2s ease}.footer-bottom p a:hover{color:var(--color-brand-accent);text-decoration:underline}@media (max-width: 768px){.global-footer{display:none}.footer-content{grid-template-columns:1fr;gap:20px;padding:0 16px;margin-bottom:0}.footer-section h4{font-size:var(--font-size-xs);font-weight:300;text-align:center;margin-bottom:8px}.footer-section p,.footer-section ul li a{font-size:var(--font-size-xs)}}@media (max-width: 480px){.global-footer{display:none}.footer-content{padding:0 20px;gap:16px}.footer-bottom{padding:12px 20px 0}}.footer-note{margin-top:16px;text-align:center;color:#9ca3af;font-size:var(--font-size-sm);display:flex;align-items:center;justify-content:center;gap:6px}.card-payment-form{margin:20px 0;padding:20px;background-color:#1a1a1a;border:1px solid #374151;border-radius:8px}.payment-form-title{font-size:var(--font-size-md);font-weight:700;margin-bottom:16px;color:#fff}.security-features{margin-top:16px;padding:12px;background-color:#2a2a2a;border:1px solid #374151;border-radius:6px}.security-item{display:flex;align-items:center;margin-bottom:6px;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.security-item:last-child{margin-bottom:0}.security-icon{margin-right:8px;font-size:var(--font-size-base)}.toast{position:fixed;top:20px;right:20px;background-color:#ef4444;color:#fff;padding:12px 16px;border-radius:8px;font-size:var(--font-size-base);z-index:1000;animation:slideInRight .3s ease-out}.toast.success{background-color:#10b981}.toast.error{background-color:#ef4444}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.confirmation-header{text-align:center;margin-bottom:40px}.success-badge{width:80px;height:80px;background-color:#10b981;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#fff}.success-title{font-size:var(--font-size-5xl);font-weight:700;color:#10b981;margin-bottom:16px;text-transform:uppercase;letter-spacing:2px}.success-message{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.confirmation-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}.confirmation-left,.confirmation-right{display:flex;flex-direction:column;gap:24px}.confirmation-card{background-color:#1a1a1a;border:1px solid #374151;border-radius:12px;padding:24px}.card-title{font-size:var(--font-size-xl);font-weight:700;color:#fff;margin-bottom:20px;border-bottom:1px solid #374151;padding-bottom:12px}.order-info{margin-bottom:20px}.order-item{display:flex;justify-content:space-between;margin-bottom:8px}.order-label{color:#9ca3af;font-size:var(--font-size-base)}.order-value{color:#fff;font-weight:500}.purchase-items{margin-bottom:20px;padding-top:16px;border-top:1px solid #374151}.purchase-item{display:flex;justify-content:space-between;margin-bottom:12px}.order-total{display:flex;justify-content:space-between;padding-top:16px;border-top:2px solid #374151;font-size:var(--font-size-lg);font-weight:700}.order-total .total-label{color:var(--color-text-primary)}.order-total .total-amount{color:#f401f5}.membership-info{margin-bottom:24px}.membership-item{display:flex;justify-content:space-between;margin-bottom:12px}.membership-label{color:#9ca3af;font-size:var(--font-size-base)}.membership-value{color:#fff;font-weight:500}.login-btn{width:100%;padding:16px 24px;background-color:#f401f5;color:#fff;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:700;cursor:pointer;transition:background-color .3s ease;text-transform:uppercase}.login-btn:hover{background-color:#d401d5}.referral-promo{background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:12px;padding:24px;text-align:center;position:relative;overflow:hidden}.referral-promo:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite}@keyframes shimmer{0%,to{transform:translate(-100%) translateY(-100%) rotate(30deg)}50%{transform:translate(100%) translateY(100%) rotate(30deg)}}.promo-title{font-size:var(--font-size-2xl);font-weight:700;color:#fff;margin-bottom:12px;position:relative;z-index:1}.promo-text{font-size:var(--font-size-md);color:#ffffffe6;margin-bottom:20px;position:relative;z-index:1}.referral-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px 24px;background-color:#fff;color:#8b5cf6;border:none;border-radius:8px;font-size:var(--font-size-md);font-weight:700;cursor:pointer;transition:all .3s ease;position:relative;z-index:1}.referral-btn:hover{background-color:#f3f4f6;transform:translateY(-2px)}.terms-link{display:block;color:#ffffffb3;font-size:var(--font-size-sm);text-decoration:underline;margin-top:12px;position:relative;z-index:1}.terms-link:hover{color:#fff}.next-steps{background-color:#1a1a1a;border:1px solid #374151;border-radius:12px;padding:24px}.steps-title{font-size:var(--font-size-xl);font-weight:700;color:#fff;margin-bottom:20px}.steps-list{list-style:none;padding:0;margin:0}.step-item{display:flex;align-items:center;margin-bottom:16px;color:var(--color-text-secondary)}.step-item:last-child{margin-bottom:0}.step-icon{width:32px;height:32px;background-color:#f401f5;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:16px;flex-shrink:0;color:#fff}.step-item span{font-size:var(--font-size-base);line-height:1.5}.step-indicator.hidden{display:none}@media (max-width: 640px){h1{font-size:var(--font-size-2xl)}.gym-item{padding:14px 16px;align-items:center}.gym-details{flex-direction:column;align-items:flex-start;gap:4px}.gym-item .gym-distance-badge{position:absolute;top:50%;transform:translateY(-50%);right:50px;margin:0;z-index:1}.gym-item .check-circle{align-self:center;margin:0}.search-input{padding:14px 44px}}@media (max-width: 1024px){.confirmation-layout{grid-template-columns:1fr;gap:24px}.success-title{font-size:var(--font-size-4xl)}.success-message{font-size:var(--font-size-md)}}@media (max-width: 768px){.confirmation-header{margin-bottom:30px}.success-badge{width:60px;height:60px}.success-title{font-size:var(--font-size-2xl)}.confirmation-card,.referral-promo,.next-steps{padding:20px}}@media (max-width: 768px){#addonMode.plan-options{display:flex;flex-direction:column;gap:16px;overflow:visible;scroll-snap-type:none;padding:0;grid-template-columns:none}#addonMode .plan-card{width:100%;flex:none;scroll-snap-align:none;margin:0;min-width:auto}#addonMode+.scroll-indicator{display:none}body{background-position:30% center}}.form-group.error input,.form-group.error select{border-color:#ef4444!important;background-color:#ef44441a!important;animation:shake .5s ease-in-out}.consents-section.error,.payment-methods.error{animation:shake .5s ease-in-out}.country-selector.error,.select-container.error select{border-color:#ef4444!important;background-color:#ef44441a!important;animation:shake .5s ease-in-out}.form-group.error .error-message{display:block;color:#ef4444;font-size:var(--font-size-sm);margin-top:4px}.error-message{display:none}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes shakeButton{0%,to{transform:translate(0) scale(1)}10%,30%,50%,70%,90%{transform:translate(-6px) scale(1.02)}20%,40%,60%,80%{transform:translate(6px) scale(1.02)}}@keyframes redFlash{0%{background-color:#6b7280}20%{background-color:#ef4444}to{background-color:#6b7280}}.save-account-btn.valid.error-flash{animation:redFlashValid .6s ease-in-out}@keyframes redFlash{0%{background-color:#6b7280}15%{background-color:#ef4444}to{background-color:#6b7280}}@keyframes redFlashValid{0%{background-color:#f401f5}15%{background-color:#ef4444}to{background-color:#f401f5}}@keyframes redFlashCheckout{0%{background-color:#f401f5}15%{background-color:#ef4444}to{background-color:#f401f5}}@media (max-width: 1024px){.info-layout{grid-template-columns:1fr;gap:24px;max-width:none;margin-left:0;margin-right:0}#step-4 .step-panel-content{max-width:100%;padding:0 6px}.info-form-section{max-width:100%;margin-left:0;margin-right:0;padding:0;order:1;overflow-x:hidden}.order-summary-section{position:static;order:2;width:100%;max-width:100%;margin-left:0;margin-right:0;padding:0}.order-summary{position:static;width:100%;max-width:100%;margin-left:0;margin-right:0}.plan-info-text{--plan-info-horizontal-padding: clamp(16px, 4vw, 32px);margin-top:28px;margin-bottom:28px}.plan-info-text p{font-size:var(--font-size-md)}}@media (max-width: 1024px) and (min-width: 768px){.plan-options{margin-left:0;margin-right:0;padding-left:-22px;padding-right:clamp(16px,4vw,32px)}}.payment-summary{background-color:#2a2a2a;border-radius:12px;padding:24px;margin-bottom:32px}.payment-summary h3{font-size:var(--font-size-xl);font-weight:700;margin-bottom:16px}.summary-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #374151}.summary-total{display:flex;justify-content:space-between;padding:16px 0 0;font-weight:700;font-size:var(--font-size-lg);color:#f0f}.success-content{text-align:center;max-width:600px;margin:0 auto}.success-icon{color:#f0f;margin-bottom:24px}.success-content h3{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:16px}.success-content p{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:32px}.next-steps{background-color:#2a2a2a;border-radius:12px;padding:24px;margin:32px 0;text-align:left}.next-steps h4{font-size:var(--font-size-xl);font-weight:700;margin-bottom:16px;text-align:center}.next-steps ul{list-style:none}.next-steps li{color:var(--color-text-secondary);position:relative;padding:8px 0 8px 24px}.next-steps li:before{content:"→";position:absolute;left:0;color:#f0f;font-weight:700}.cta-button{background-color:#f0f;color:#fff;padding:16px 32px;border:none;border-radius:8px;font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:background-color .3s ease}.cta-button:hover{background-color:#7c3aed}.step-navigation{display:flex;justify-content:space-between;margin-top:40px;max-width:800px;margin-left:auto;margin-right:auto}.nav-button{padding:12px 24px;border:2px solid #f0f;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.prev-button{display:none;background-color:transparent;color:#f0f}.prev-button:hover:not(:disabled){background-color:#f0f;color:#fff}.prev-button:disabled{opacity:.5;cursor:not-allowed}.next-button{display:none;background-color:#f0f;color:#fff}.next-button:hover{background-color:#f401f5}@media (max-width: 767px){.step-indicator-content,.step{gap:4px}.step-circle{width:32px;height:32px;font-size:var(--font-size-sm)}.step-label{font-size:var(--font-size-xs);text-align:center}.step-connector{width:20px;margin:0 4px}.step-content{margin:20px 0 0;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:0;width:100%;max-width:100vw}.step-panel-content{max-width:100%;padding:0 6px;overflow-x:hidden;box-sizing:border-box}.main{padding:24px 2px 0;max-width:100vw;overflow-x:hidden;display:flex;flex-direction:column;flex:1;min-height:0}.main-subtitle{font-size:var(--font-size-md);padding-bottom:12px;margin-bottom:8px}.secondary-subtitle{font-size:var(--font-size-sm);padding-bottom:12px;margin-bottom:8px;line-height:1.3}.plan-section,#singlePlans,#quantityPlans{margin-top:32px;margin-left:0;margin-right:0}.plan-section.expanded{margin-top:32px}.plan-card{height:auto!important;min-height:auto!important;align-items:stretch}.plan-options{--carousel-edge-padding: max(12px, calc((100% - 280px)/2) );--carousel-scroll-padding: max(12px, calc((100% - 280px)/2) );display:flex;gap:16px;overflow-x:auto;scroll-behavior:smooth;padding-top:16px;padding-bottom:16px;padding-left:var(--carousel-edge-padding);padding-right:var(--carousel-edge-padding);scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory;scroll-padding-left:var(--carousel-scroll-padding);scroll-padding-right:var(--carousel-scroll-padding);justify-content:flex-start;margin-left:0;margin-right:0}.plan-options::-webkit-scrollbar{display:none}.plan-options .plan-card{flex:0 0 auto;min-width:280px;scroll-snap-align:center;margin:0}.plan-options.is-centered{justify-content:center}.scroll-indicator{display:block}.plan-info-text{margin-top:24px;--plan-info-horizontal-padding: clamp(18px, 6vw, 28px)}.plan-info-text p{font-size:var(--font-size-md)}.quantity-selector{padding:8px 12px;display:flex;margin:0 auto;width:100%;justify-content:space-between;align-items:center;flex-direction:row;flex-wrap:nowrap;gap:12px}.total-price{text-align:center}}@media (min-width: 768px){.logo-title,.main-title{font-size:var(--font-size-2xl)}}.cart-empty{color:#9ca3af;font-size:var(--font-size-base)}.toggle-container:has(#parentGuardian){display:none}.parent-guardian-reminder{display:none!important}
