:root{--bg:#08090d;--bg2:#0f1218;--card:rgba(255,255,255,.06);--stroke:rgba(255,255,255,.11);--text:#f5f7fb;--muted:#b7becc;--accent:#ff7a00;--accent2:#ffb15c;--shadow:0 22px 60px rgba(0,0,0,.35);--radius:28px;--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:radial-gradient(circle at 85% 10%,rgba(255,122,0,.16),transparent 18%),radial-gradient(circle at 10% 0%,rgba(255,255,255,.08),transparent 12%),linear-gradient(180deg,#090b10 0%,#0d1118 46%,#090b10 100%);overflow-x:hidden}a{text-decoration:none;color:inherit}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at center,black 38%,transparent 90%);opacity:.35}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 28px));margin:0 auto}.section{padding:84px 0}.section-tight{padding:58px 0}.glass{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);box-shadow:var(--shadow)}
.nav{position:sticky;top:0;z-index:50;background:rgba(8,9,13,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0}.brand{display:flex;align-items:center;gap:14px;font-weight:800;letter-spacing:.02em}.brand-mark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(255,122,0,.22),rgba(255,255,255,.12));border:1px solid rgba(255,255,255,.16)}.nav-links{display:flex;gap:18px;color:var(--muted);font-size:14px;flex-wrap:wrap}.nav-actions{display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:999px;border:1px solid transparent;font-weight:800;font-size:14px;transition:.25s ease;cursor:pointer;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#111;box-shadow:0 12px 30px rgba(255,122,0,.28)}.btn-secondary{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12);color:var(--text)}.btn-ghost{background:transparent;border-color:rgba(255,255,255,.14);color:var(--text)}
.eyebrow{display:inline-flex;padding:10px 14px;border-radius:999px;background:rgba(255,122,0,.12);border:1px solid rgba(255,122,0,.26);color:#ffd4aa;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;margin-bottom:18px}h1,h2,h3{margin:0 0 14px;line-height:1.02;letter-spacing:-.03em}h1{font-size:clamp(40px,6vw,82px)}h2{font-size:clamp(30px,4vw,54px)}h3{font-size:clamp(22px,2.4vw,28px)}p{margin:0}.lead{font-size:clamp(17px,2vw,20px);line-height:1.7;color:var(--muted)}.muted{color:var(--muted)}
.hero-band{position:relative;overflow:hidden}.hero-band:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,6,10,.15),rgba(5,6,10,.78));z-index:1}.hero-band img{width:100%;height:56vh;min-height:320px;max-height:620px;object-fit:cover;filter:saturate(1.03)}.hero-band-copy{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:0 0 34px}.hero-band-copy .wrap{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}.hero-chip{display:inline-flex;padding:12px 16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:999px;backdrop-filter:blur(12px);font-weight:800}
.hero{padding:28px 0 34px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:24px;align-items:stretch}.hero-copy{padding:42px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.hero-photo{min-height:680px;overflow:hidden;position:relative}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,8,12,.12) 0%,rgba(6,8,12,.34) 42%,rgba(6,8,12,.82) 100%)}.hero-card{position:absolute;left:22px;right:22px;bottom:22px;padding:18px 18px 16px;background:rgba(8,10,15,.65);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(18px);border-radius:22px}.mini-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px}.metric{padding:18px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}.metric strong{display:block;font-size:30px;margin-bottom:6px}.metric span{color:var(--muted);font-size:14px;line-height:1.55}
.two-col{display:grid;grid-template-columns:.92fr 1.08fr;gap:24px;align-items:stretch}.image-stack{display:grid;grid-template-columns:1fr 1fr;gap:18px}.image-stack .large{grid-column:span 2;height:340px}.image-stack .small{height:240px}.image-card{overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:#10131a;position:relative}.image-card img{width:100%;height:100%;object-fit:cover}.image-card .label{position:absolute;left:16px;bottom:16px;padding:9px 12px;border-radius:999px;background:rgba(8,10,15,.68);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.about-copy{padding:34px}.points{display:grid;gap:12px;margin-top:20px}.point{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.point-icon{flex:0 0 34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(255,122,0,.16);color:#ffd7af;font-weight:900}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.achievement-grid,.offers,.contact-grid,.app-grid,.maps-grid,.testimonials{display:grid;gap:18px}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ach-card,.offer,.contact-card,.app-card,.map-card,.testimonial{padding:24px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}.ach-card ul,.offer ul{margin:10px 0 0;padding-left:18px;color:var(--muted);line-height:1.75}
.gallery{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}.gallery .tile{position:relative;min-height:260px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#10131a}.gallery .tile.tall{grid-row:span 2;min-height:538px}.gallery .tile img{width:100%;height:100%;object-fit:cover}.gallery .tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(5,6,10,.72) 100%)}.gallery .caption{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;font-weight:700}
.offers{grid-template-columns:repeat(3,minmax(0,1fr))}.offer{position:relative;overflow:hidden}.offer.highlight{border-color:rgba(255,122,0,.3);box-shadow:0 18px 46px rgba(255,122,0,.15)}.price{font-size:38px;font-weight:900;letter-spacing:-.04em;margin:8px 0 12px}.buy-form{display:grid;gap:10px;margin-top:16px}.buy-form input{width:100%;padding:14px 15px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:var(--text);font:inherit}
.app-grid{grid-template-columns:1fr 1fr}.app-mock{overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.1);min-height:400px;position:relative;background:linear-gradient(135deg,#121721,#0a0d13)}.app-mock::before{content:"CoachPRO";position:absolute;right:22px;top:18px;font-size:52px;font-weight:900;letter-spacing:-.05em;color:rgba(255,255,255,.06)}.app-mock .steps{position:absolute;left:20px;right:20px;bottom:20px;display:grid;gap:12px}.step{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.contact-grid{grid-template-columns:1fr .9fr}.contact-list,.map-links,.social-links{display:grid;gap:14px;margin-top:18px}.contact-item{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.map-card h3,.contact-card h3{margin-bottom:10px}.social-links a{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04)}
.footer{padding:34px 0 60px;color:var(--muted);font-size:14px}.flash-stack{position:sticky;top:84px;z-index:60}.flash{padding:14px 16px;border-radius:18px;margin:10px auto;width:min(var(--max),calc(100% - 28px));border:1px solid rgba(255,255,255,.1);background:#11151d}.flash.ok{border-color:rgba(64,194,118,.35)}.flash.error{border-color:rgba(255,87,87,.35)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1080px){.hero-grid,.two-col,.app-grid,.contact-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery .tile.tall{grid-row:span 1;min-height:320px}.offers,.achievement-grid,.testimonials{grid-template-columns:1fr 1fr}.hero-photo{min-height:520px}.hero-band-copy .wrap{display:block}}
@media (max-width:760px){.nav-links{display:none}.nav-actions .btn-secondary{display:none}.hero-copy,.about-copy,.ach-card,.offer,.contact-card,.app-card,.map-card,.testimonial{padding:22px}.mini-metrics,.offers,.achievement-grid,.gallery,.image-stack,.testimonials{grid-template-columns:1fr}.image-stack .large,.gallery .tile.tall{min-height:300px}.image-stack .small{height:220px}.hero-photo{min-height:420px}.btn{width:100%}.hero-actions{display:grid}.section{padding:68px 0}.price{font-size:34px}.hero-band img{height:42vh}}


.locations-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;align-items:stretch}.premium-card{position:relative;overflow:hidden;isolation:isolate}.premium-card::before,.offer::before,.image-card::before,.gallery .tile::before{content:"";position:absolute;inset:0;background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.12),transparent 42%);opacity:0;transition:opacity .25s ease;pointer-events:none;z-index:0}.premium-card:hover::before,.offer:hover::before,.image-card:hover::before,.gallery .tile:hover::before{opacity:1}.premium-card > *, .offer > *, .image-card > *, .gallery .tile > *{position:relative;z-index:1}
.hero-band{padding:14px 14px 0}.hero-band img{height:48vh;min-height:300px;max-height:540px;border-radius:34px;transform:scale(.985);filter:brightness(.68) saturate(.9) contrast(1.02)}.hero-band:before{inset:14px 14px 0;border-radius:34px;background:linear-gradient(180deg,rgba(5,6,10,.20),rgba(5,6,10,.72) 48%,rgba(5,6,10,.92))}.hero-band-copy{padding:0 14px 26px}.hero-chip{box-shadow:0 10px 30px rgba(0,0,0,.22)}.scroll-cue{display:inline-flex;align-items:center;gap:8px;color:#e7ebf4;font-weight:700;padding:12px 14px;border-radius:999px;background:rgba(9,11,16,.46);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);transition:.25s ease}.scroll-cue:hover{transform:translateY(-2px);background:rgba(255,255,255,.08)}
.nav{background:rgba(8,9,13,.58);backdrop-filter:blur(22px)}.brand-mark{box-shadow:0 10px 26px rgba(255,122,0,.18)}
.btn{position:relative;overflow:hidden}.btn::after{content:"";position:absolute;inset:-120% auto auto -30%;width:60%;height:320%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transition:transform .8s ease}.btn:hover::after{transform:translateX(240%) rotate(18deg)}
.hero-copy,.hero-photo,.ach-card,.offer,.contact-card,.app-card,.map-card,.testimonial,.image-card,.gallery .tile{transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.hero-copy:hover,.hero-photo:hover,.ach-card:hover,.offer:hover,.contact-card:hover,.app-card:hover,.map-card:hover,.testimonial:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.16);box-shadow:0 28px 70px rgba(0,0,0,.38)}
.offer.highlight{background:linear-gradient(180deg,rgba(255,145,49,.13),rgba(255,255,255,.05));box-shadow:0 24px 60px rgba(255,122,0,.16)}.offer .price{background:linear-gradient(135deg,#fff,#ffd2ac 58%,#ff9b38);-webkit-background-clip:text;background-clip:text;color:transparent}
.club-list{display:grid;gap:12px}.club-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);transition:.25s ease}.club-item strong{display:block}.club-item span{color:var(--muted);font-size:14px;text-align:right}.club-item:hover{transform:translateY(-2px);border-color:rgba(255,122,0,.28);background:rgba(255,255,255,.06)}
.map-embed{height:430px;border-radius:26px;border:1px solid rgba(255,255,255,.12);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 40px rgba(0,0,0,.24)}.leaflet-container{background:#0e131d;color:#111}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#11161f;color:#f5f7fb;border:1px solid rgba(255,255,255,.1)}.leaflet-popup-content a{color:#ff9b38;font-weight:700}.norbert-pin-wrap{background:transparent;border:none}.norbert-pin{width:26px;height:26px;border-radius:999px;background:linear-gradient(135deg,#ff7a00,#ffb15c);border:3px solid rgba(9,11,16,.85);box-shadow:0 10px 26px rgba(255,122,0,.35);position:relative}.norbert-pin::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:999px;background:#111;transform:translate(-50%,-50%)}
.social-links a:hover,.contact-item:hover{border-color:rgba(255,122,0,.28);background:rgba(255,255,255,.06)}
@media (max-width:1080px){.locations-grid{grid-template-columns:1fr}.hero-band img{height:40vh;max-height:480px}}
@media (max-width:760px){.club-item{display:grid}.club-item span{text-align:left}.map-embed{height:340px}.hero-band{padding:8px 8px 0}.hero-band:before{inset:8px 8px 0}.hero-band img{border-radius:24px;height:36vh}.hero-band-copy{padding:0 8px 18px}.scroll-cue{width:100%;justify-content:center}}


/* premium mobile fixes */
.hero-band-copy .wrap{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.hero-chip{display:inline-flex;align-items:center;justify-content:center;text-align:center;max-width:100%}
.gallery .caption{padding:14px 16px;border-radius:16px;background:linear-gradient(180deg,rgba(5,6,10,0),rgba(5,6,10,.18) 8%,rgba(5,6,10,.78) 48%,rgba(5,6,10,.94) 100%);text-shadow:0 2px 10px rgba(0,0,0,.45)}
.gallery .tile:after{background:linear-gradient(180deg,rgba(0,0,0,0) 24%,rgba(5,6,10,.28) 48%,rgba(5,6,10,.92) 100%)}

@media (max-width:760px){
  .nav-inner{display:grid;grid-template-columns:1fr;gap:12px;align-items:stretch}
  .nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}
  .nav-actions .btn-secondary{display:inline-flex !important}
  .nav-actions .btn{width:100%;justify-content:center;padding:15px 14px;font-size:15px}
  .brand{justify-content:flex-start}
  .hero-band-copy .wrap{align-items:center;gap:12px}
  .hero-band-copy .hero-chip,.hero-band-copy .scroll-cue{width:100%;max-width:540px;justify-content:center;margin-inline:auto;text-align:center}
  .scroll-cue{display:flex}
  .hero-band img{height:32vh;min-height:220px;object-position:center 22%}
  .gallery .caption{left:10px;right:10px;bottom:10px;padding:12px 14px;font-size:15px;line-height:1.4}
  .gallery .tile{min-height:300px}
  .gallery .tile.tall{min-height:360px}
  .points .point{align-items:flex-start}
}


/* visibility and mobile layout fixes */
.gallery .tile{isolation:isolate}
.gallery .tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.gallery .tile::before{z-index:1}
.gallery .tile:after{z-index:1;pointer-events:none}
.gallery .caption{z-index:3;color:#fff;font-weight:800;line-height:1.45;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.section-head-offer{align-items:flex-start}
.offer-intro{max-width:540px;overflow-wrap:anywhere;word-break:normal}
.app-mock{display:flex;align-items:flex-end}
.app-mock .steps{width:100%}
.step strong{display:block;line-height:1.35;margin-bottom:6px}
.step .muted{line-height:1.6}

@media (max-width:760px){
  .section-head-offer{display:grid;gap:14px}
  .offer-intro{max-width:none;font-size:16px;line-height:1.65}
  .app-mock{min-height:auto;padding:20px}
  .app-mock::before{font-size:34px;right:18px;top:16px}
  .app-mock .steps{position:relative;left:auto;right:auto;bottom:auto;margin-top:72px;gap:10px}
  .step{padding:14px}
  .gallery .caption{left:12px;right:12px;bottom:12px;padding:12px 14px;font-size:14px;line-height:1.42}
}


/* contact reorder and hero crop fix */
.hero-band img{object-position:center 18%}
.clubs-block{margin-top:20px}.clubs-title{margin-bottom:12px;font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#ffd4aa}.contact-card .contact-list{margin-bottom:14px}.contact-card .social-links{margin-bottom:0}.contact-card .club-list{margin-top:0}
@media (max-width:1080px){.hero-band img{object-position:center 16%}}
@media (max-width:760px){.hero-band img{object-position:center 18%}.clubs-block{margin-top:18px}.clubs-title{text-align:left;font-size:13px}}


/* final premium tweaks */
.image-stack{grid-template-columns:1.08fr .92fr;grid-template-rows:repeat(2,minmax(180px,1fr));align-items:stretch}
.image-stack .large{grid-column:1;grid-row:1 / span 2;height:auto;min-height:520px}
.image-stack .small{height:auto;min-height:250px}
.image-stack .small:nth-of-type(2){grid-column:2;grid-row:1}
.image-stack .small:nth-of-type(3){grid-column:2;grid-row:2}
.gallery .caption{left:16px;right:16px;bottom:16px;top:auto;display:block;padding:16px 18px 14px;border-radius:18px;line-height:1.5;font-weight:800}
.gallery .caption span{display:block;margin-top:6px;font-size:.94em;line-height:1.45;color:rgba(255,255,255,.9);font-weight:600}
.hero-chip{white-space:nowrap}
@media (max-width:760px){.hero-chip{font-size:13px;padding:10px 12px;letter-spacing:0}.image-stack{grid-template-columns:1fr;grid-template-rows:none}.image-stack .large,.image-stack .small,.image-stack .small:nth-of-type(2),.image-stack .small:nth-of-type(3){grid-column:auto;grid-row:auto;min-height:240px}.image-stack .large{min-height:300px}.gallery .caption{left:10px;right:10px;bottom:10px;padding:12px 14px 12px;font-size:13px;line-height:1.38}.gallery .caption span{margin-top:4px;font-size:.92em;line-height:1.35}}


/* crop tune corrected */
.image-stack .large img{object-position: 62% center;}
.image-stack .small:first-of-type img{object-position: 44% center;}
.hero-band img{object-position: 44% 18%;}
@media (max-width:1080px){.hero-band img{object-position: 42% 16%;}}
@media (max-width:760px){
  .hero-band img{object-position: 40% 18%;}
  .image-stack .large img{object-position: 58% center;}
  .image-stack .small:first-of-type img{object-position: 42% center;}
}


/* requested crop + gallery caption bottom fix */
.image-stack .large img{object-position:50% center !important;transform:scale(.94);}
.image-stack .small:first-of-type img{object-position:50% 18% !important;transform:scale(.96);}
.gallery .tile{display:flex;align-items:flex-end;}
.gallery .tile img{object-position:center center;}
.gallery .caption{top:auto !important;bottom:16px !important;display:flex;flex-direction:column;justify-content:flex-end;min-height:auto;}
.gallery .caption span{display:block;}
@media (max-width:760px){.image-stack .large img{object-position:50% center !important;transform:scale(.9);} .image-stack .small:first-of-type img{object-position:50% 16% !important;transform:scale(.93);} .gallery .caption{bottom:10px !important;}}


/* crop adjustments requested on 2026-03-20 */
.hero-photo > img{object-position:44% center !important;}
.image-stack .small:first-of-type img{object-position:60% 16% !important;transform:scale(.92) !important;}
@media (max-width:1080px){
  .hero-photo > img{object-position:46% center !important;}
  .image-stack .small:first-of-type img{object-position:58% 16% !important;transform:scale(.91) !important;}
}
@media (max-width:760px){
  .hero-photo > img{object-position:48% center !important;}
  .image-stack .small:first-of-type img{object-position:56% 14% !important;transform:scale(.90) !important;}
}
