:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111;background:#fff;font-synthesis:none;--black: #111111;--muted: #6b7280;--border: #e5e7eb;--soft: #f7f7f8;--green: #1f7a4d;--navy: #142a5c;--navy-deep: #0b1c42;--navy-tint: #eef1f8;--gold: #f0b429;--gold-dark: #ab7a14;--orange: #e8501f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1320px,calc(100% - 40px));margin:0 auto}.card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:0 16px 45px #142a5c14}.site-header{position:sticky;top:0;z-index:30;background:#ffffffe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(229,231,235,.8)}.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between}.header-inner nav{display:flex;gap:26px;align-items:center;font-size:14px}.logo-link{display:inline-flex}.brand{display:flex;align-items:center;gap:10px}.brand-wordmark{display:flex;flex-direction:column;line-height:.95}.brand strong{font-size:25px;font-weight:800;letter-spacing:-.01em;color:var(--navy)}.brand small{color:var(--gold-dark);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-top:5px}.footer .brand strong{color:var(--gold)}.footer .brand small{color:#ffffffa6}.button{border:1px solid var(--border);border-radius:10px;min-height:44px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;font-weight:650;transition:.18s ease}.button:hover{transform:translateY(-1px)}.button-dark{background:var(--navy);color:#fff;border-color:var(--navy)}.button-dark:hover{background:var(--navy-deep);border-color:var(--navy-deep)}.button-light{background:#fff;color:var(--black)}.button-white{background:#fff;border-color:#fff;color:var(--black)}.button-danger{background:#fff;color:var(--orange);border-color:var(--orange)}.button-danger:hover{background:var(--orange);color:#fff}.button-small{min-height:38px;padding:0 14px;font-size:13px}.button-full{width:100%}.hero{position:relative;overflow:hidden;padding:88px 0 96px;background:#fff}.hero-photo{position:absolute;inset:0;overflow:hidden;z-index:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scaleX(-1) scale(1.6) translate(18%)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to right,#fffffffa,#ffffffe0 32%,#fff6 62%,#ffffff14 88%)}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:80px;align-items:center}.eyebrow{display:inline-block;font-size:11px;letter-spacing:.15em;font-weight:750;color:var(--navy)}.eyebrow-light{color:var(--gold)}h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(48px,6vw,76px);line-height:.99;letter-spacing:-.055em;margin:20px 0 24px}.hero-copy>p{font-size:19px;line-height:1.65;color:var(--muted);max-width:660px}.hero-actions{display:flex;gap:12px;margin-top:34px}.trust-row{display:flex;flex-wrap:wrap;gap:18px;color:#4b5563;font-size:13px;margin-top:34px}.trust-row span:before{content:"✓";margin-right:7px;color:var(--orange);font-weight:800}.booking-preview{padding:28px;width:470px}.preview-head{display:flex;align-items:center;gap:14px;padding-bottom:22px;border-bottom:1px solid var(--border)}.preview-head div:last-child{display:flex;flex-direction:column;gap:3px}.preview-head span{color:var(--muted);font-size:13px}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-weight:700;font-size:13px;flex:0 0 auto;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-large{width:52px;height:52px}.coach-photo-preview{width:64px;height:64px;border-radius:12px;object-fit:cover;display:block;margin-bottom:8px}.photo-panel{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding:20px 26px}.photo-panel .avatar-large{font-size:18px}.photo-panel strong{display:block;font-size:16px;margin-bottom:4px}.photo-upload-label{flex-direction:row;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--navy)}.photo-upload-label input{width:auto;border:0;padding:0;font-size:12px}.preview-line{display:flex;justify-content:space-between;gap:10px;padding:15px 0;border-bottom:1px solid var(--border);font-size:14px}.preview-line span{color:var(--muted);flex-shrink:0}.preview-line strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.calendar-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:22px 0 14px}.calendar-strip button{background:#fff;border:1px solid var(--border);border-radius:10px;padding:10px 0;display:flex;flex-direction:column;align-items:center;gap:5px}.calendar-strip .selected-day{background:var(--navy);color:#fff;border-color:var(--navy)}.time-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px;min-height:44px}.time-list button{background:#fff;border:1px solid var(--border);border-radius:8px;padding:10px}.preview-loading,.preview-empty{grid-column:1 / -1;text-align:center;color:var(--muted);font-size:13px;padding:11px 0}.section{padding:96px 0}.section-muted{background:var(--navy-tint)}.section-heading{max-width:760px;margin-bottom:42px}.section-heading h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.04em;margin:15px 0 0}.coach-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.coach-card{overflow:hidden;display:grid;grid-template-columns:.8fr 1.2fr}.coach-photo{min-height:330px;background:linear-gradient(135deg,var(--navy-deep),var(--navy));display:grid;place-items:center;color:var(--gold);font-size:72px;font-weight:800}.coach-photo img{width:100%;height:100%;object-fit:cover}.coach-content{padding:34px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.coach-content>small,.service-card>span{color:var(--muted);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.coach-content h3,.service-card h3{font-size:28px;margin:8px 0 12px}.coach-content p,.service-card p{color:var(--muted);line-height:1.6}.tag-row{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 24px}.tag-row span{padding:6px 9px;border-radius:999px;background:var(--navy-tint);color:var(--navy);font-weight:650;font-size:11px}.coach-content a{font-weight:700;font-size:14px;color:var(--navy)}.steps-grid,.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.steps-grid>div{padding:32px 28px;border-top:3px solid var(--gold)}.steps-grid>div>strong{font-size:13px;color:var(--navy);font-weight:800}.steps-grid h3{margin:32px 0 10px;font-size:22px}.steps-grid p{color:var(--muted);line-height:1.6}.service-card{padding:30px}.service-card small{font-weight:700}.cta-section{padding:0 0 96px}.cta-card{background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:#fff;border-radius:24px;padding:56px 64px;display:flex;justify-content:space-between;align-items:center}.cta-card .button-white{background:var(--gold);border-color:var(--gold);color:var(--navy-deep);font-weight:750}.cta-card h2{font-size:42px;margin:14px 0 0;letter-spacing:-.04em}.footer{background:linear-gradient(160deg,var(--navy-deep),var(--navy));padding:46px 0}.footer-inner{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px}.footer-inner p{margin:0;color:#ffffffb8;text-align:center}.footer-inner>small{text-align:right;color:#ffffff80}.booking-page{background:var(--soft);padding:58px 0 90px;min-height:80vh}.booking-shell{display:grid;grid-template-columns:340px minmax(0,1fr);overflow:hidden}.booking-summary{padding:38px;border-right:1px solid var(--border);background:#fbfbfb}.booking-summary h2{font-size:31px;letter-spacing:-.035em;margin:15px 0 13px}.booking-summary>p{color:var(--muted);line-height:1.6}.summary-item{display:flex;gap:12px;margin-top:25px;align-items:center}.summary-icon{width:34px;height:34px;border:1px solid var(--border);border-radius:9px;display:grid;place-items:center}.summary-item div{display:flex;flex-direction:column;gap:3px}.summary-item small,.selected-summary small{color:var(--muted)}.selected-summary{margin-top:28px;border-radius:12px;background:var(--navy);color:#fff;padding:16px;display:flex;flex-direction:column;gap:6px}.selected-summary strong{color:var(--gold)}.booking-rules{border-top:1px solid var(--border);margin-top:28px;padding-top:24px}.booking-rules p{color:var(--muted);line-height:1.5;font-size:13px;margin:8px 0 0}.booking-form{padding:40px 46px}.form-section{padding-bottom:38px;margin-bottom:38px;border-bottom:1px solid var(--border)}.form-section-title{display:flex;gap:13px;margin-bottom:22px}.form-section-title>span{width:28px;height:28px;border-radius:50%;background:var(--navy);color:var(--gold);display:grid;place-items:center;font-size:12px;font-weight:800;flex:0 0 auto}.form-section-title h3{margin:1px 0 4px;font-size:20px}.form-section-title p{margin:0;color:var(--muted);font-size:13px}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.select-card{text-align:left;background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px;min-height:112px}.select-card strong,.select-card small{display:block}.select-card small{color:var(--muted);line-height:1.45;margin-top:8px}.select-card.active,.coach-select.active,.slots-grid button.active,.date-strip button.active{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.coach-select-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.coach-select{display:flex;align-items:center;gap:12px;text-align:left;background:#fff;border:1px solid var(--border);border-radius:12px;padding:13px}.coach-select div:last-child{display:flex;flex-direction:column}.coach-select small{color:var(--muted);margin-top:3px}.date-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;scroll-padding-left:2px}.date-strip button{min-width:70px;padding:11px 7px;border:1px solid var(--border);border-radius:11px;background:#fff;display:flex;flex-direction:column;gap:3px;align-items:center;flex:0 0 auto;scroll-snap-align:start}.date-strip button.active{background:var(--navy);color:#fff}.date-strip small,.date-strip span{font-size:10px}.slots-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:18px}.slots-grid button{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:3px}.slots-grid button.active{background:var(--navy);color:#fff}.slots-grid button.booked{background:var(--soft);border-style:dashed;color:#b0b3b8;text-decoration:line-through;cursor:not-allowed}.slots-grid button.booked:hover{transform:none}.slots-grid button.booked small{color:#b0b3b8;font-size:10px;text-decoration:none;text-transform:uppercase;letter-spacing:.04em}.empty-state{grid-column:1 / -1;padding:24px;border:1px dashed #d1d5db;border-radius:12px;color:var(--muted);text-align:center}.fields-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:650}input,select,textarea{width:100%;border:1px solid #d7d9dc;border-radius:9px;padding:11px 12px;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px #142a5c1a}textarea{resize:vertical}.field-wide{grid-column:1 / -1}.captcha-section{border-bottom:0;padding-bottom:6px;margin-bottom:20px}.captcha-section label{flex-direction:row;align-items:center;gap:12px;font-size:14px}.captcha-section input{width:120px;flex:0 0 auto}.submit-button{min-height:50px}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-note{text-align:center;color:var(--muted);font-size:12px;margin:12px 0 0}.alert{padding:13px 15px;border-radius:10px;margin-bottom:15px;font-size:14px}.alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.page-center{min-height:220px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.spinner{width:20px;height:20px;border-radius:50%;border:2px solid #ddd;border-top-color:var(--navy);animation:spin .8s linear infinite;flex:0 0 auto}.status-cell{display:flex;align-items:center;gap:10px}.status-cell .spinner,.toggle-row .spinner{width:16px;height:16px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.confirmation-page{min-height:78vh;background:var(--soft);display:grid;place-items:center;padding:60px 20px}.confirmation-card{width:min(650px,100%);padding:46px;text-align:center}.success-icon{width:60px;height:60px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--navy-deep);font-size:28px;font-weight:800}.confirmation-card h1{font-size:38px;letter-spacing:-.04em;margin:12px 0}.confirmation-card>p{color:var(--muted)}.reference-box{margin:26px auto;padding:16px;background:var(--soft);border-radius:12px;display:flex;flex-direction:column;gap:5px}.reference-box small,.confirmation-details small{color:var(--muted)}.reference-box strong{font-size:22px;letter-spacing:.05em}.confirmation-details{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:12px;overflow:hidden;text-align:left;margin-bottom:25px}.confirmation-details>div{background:#fff;padding:16px;display:flex;flex-direction:column;gap:5px}.status-pill{text-transform:capitalize;color:var(--green)}.status-pill.pending{color:var(--gold-dark)}.admin-login{min-height:78vh;background:var(--soft);display:grid;place-items:center;padding:50px 20px}.admin-login-card{width:min(430px,100%);padding:38px;text-align:center}.lock-icon{width:50px;height:50px;border-radius:14px;background:var(--navy);color:var(--gold);display:grid;place-items:center;margin:0 auto 18px;font-size:24px}.admin-login h1{font-size:34px;margin:12px 0}.admin-login p{color:var(--muted);line-height:1.5}.admin-login label{text-align:left;margin:24px 0 14px}.admin-page{min-height:80vh;background:var(--soft);padding:52px 0 90px}.admin-top{display:flex;justify-content:space-between;align-items:center}.admin-top h1{font-size:42px;letter-spacing:-.04em;margin:10px 0 0}.admin-tabs{display:flex;gap:6px;margin:28px 0 22px}.admin-tabs button{border:0;background:transparent;text-transform:capitalize;padding:10px 15px;border-radius:9px;color:var(--muted)}.admin-tabs button.active{background:var(--navy);color:#fff}.metrics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px}.metric{padding:20px;box-shadow:none}.metric small{color:var(--muted)}.metric strong{display:block;font-size:34px;margin-top:10px}.admin-panel{padding:26px;box-shadow:none}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-head h2,.admin-panel h2{margin:0 0 5px;font-size:22px}.panel-head p{margin:0;color:var(--muted);font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-weight:650;padding:11px 12px;border-bottom:1px solid var(--border)}td{padding:14px 12px;border-bottom:1px solid var(--border);vertical-align:middle}td strong,td small{display:block}td small{color:var(--muted);line-height:1.5;margin-top:3px}.status-select{min-width:120px;padding:7px 9px;text-transform:capitalize}.admin-two-column{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.inline-form{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:8px;margin:18px 0}.stack-form{display:grid;gap:14px;margin-top:18px}.schedule-list{display:grid;margin-top:20px}.schedule-list>div{display:grid;grid-template-columns:1fr 1.2fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);font-size:13px}.schedule-list button,.coach-admin-list button{border:0;background:transparent;color:#b42318;font-size:12px}.service-price-list{display:grid;margin-top:20px}.service-price-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border);font-size:13px}.service-price-row span{display:flex;flex-direction:column;gap:3px}.service-price-row small{color:var(--muted)}.service-price-row label{flex-direction:row;align-items:center;gap:6px;font-size:13px}.service-price-row input{width:110px}.pay-block{margin-top:18px}.coach-admin-list{display:grid;margin-top:18px}.coach-admin-list>div{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--border);padding:13px 0}.coach-admin-list div:nth-child(2){display:flex;flex-direction:column;gap:3px}.coach-admin-list small{color:var(--muted)}.coach-stats{font-size:11px}.coach-row-actions{display:flex;gap:10px;align-items:center}.coach-row-actions .edit-link{color:var(--navy);font-weight:700}.candidate-name-link{display:block;background:none;border:none;padding:0;font:inherit;font-weight:700;color:var(--navy);text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .15s ease}.candidate-name-link:hover{text-decoration-color:var(--navy)}.modal-overlay{position:fixed;inset:0;background:#0b1c428c;display:grid;place-items:center;padding:20px;z-index:50}.modal-card{width:min(560px,100%);max-height:85vh;overflow-y:auto;padding:28px}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.modal-head h2{margin:4px 0 0}.modal-close{background:none;border:none;font-size:26px;line-height:1;color:var(--muted);padding:0 4px}.modal-body{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.modal-body-wide{grid-column:1 / -1}.modal-body small{display:block;color:var(--muted);margin-bottom:3px}.coach-edit-form{border:1px solid var(--border);border-radius:12px;padding:18px;margin-bottom:14px;background:var(--soft)}.edit-actions{display:flex;gap:10px}.coach-edit-form .button{border-width:1px;font-size:13px}.coach-edit-form .button-dark{background:var(--navy);border-color:var(--navy);color:#fff}.coach-edit-form .button-light{background:#fff;border-color:var(--border);color:var(--black)}.toggle-row{display:flex;align-items:flex-start;gap:14px;padding:6px 0;cursor:pointer}.toggle-row input[type=checkbox]{width:20px;height:20px;margin-top:2px;accent-color:var(--navy);flex:0 0 auto}.toggle-row span{display:flex;flex-direction:column;gap:4px}.toggle-row small{color:var(--muted)}@media(max-width:900px){.header-inner nav>a:not(.button){display:none}.hero-grid,.booking-shell,.coach-card,.admin-two-column{grid-template-columns:1fr}.hero{padding-top:60px}.booking-preview{width:auto}.booking-summary{border-right:0;border-bottom:1px solid var(--border)}.coach-grid,.steps-grid,.service-grid,.option-grid{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(2,1fr)}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-inner .brand{justify-content:center}.footer-inner>small{text-align:center}}@media(max-width:620px){.container{width:min(100% - 24px,1160px)}.hero h1{font-size:48px}.hero-actions,.cta-card{flex-direction:column;align-items:stretch}.cta-card{padding:38px 28px}.cta-card h2{font-size:34px}.booking-page{padding-top:20px}.booking-shell{border-radius:12px}.booking-summary,.booking-form{padding:26px 20px}.coach-select-grid,.fields-grid,.confirmation-details{grid-template-columns:1fr}.field-wide{grid-column:auto}.slots-grid{grid-template-columns:repeat(3,1fr)}.inline-form,.metrics-grid{grid-template-columns:1fr 1fr}}
