/* Hammer public website — Midnight & Copper. Scoped away from the management layout. */
@font-face{font-family:Hammer Condensed;src:url('../fonts/hammer-public/BebasNeue-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.hp-document{background:#10232d;padding-top:0!important;height:100%;scroll-behavior:smooth}
body.hp-public{--hp-ink:#122630;--hp-midnight:#0c1b24;--hp-paper:#f3f0ea;--hp-copper:#ba7952;--hp-copper-dark:#985534;--hp-line:#d3c8bc;--hp-muted:#59676b;background:var(--hp-paper);color:var(--hp-ink);font-family:'Acumin Pro',Arial,sans-serif;font-size:16px;line-height:1.6;min-width:280px}
.hp-public *{box-sizing:border-box}
.hp-public #app{background:var(--hp-paper);min-height:100vh}
.hp-public #app>#hp-main{flex-grow:1;outline:none}
.hp-public a{color:var(--hp-copper-dark)}
.hp-public a:hover{color:var(--hp-ink)}
.hp-public button,.hp-public input,.hp-public select,.hp-public textarea{font:inherit}
.hp-public :focus-visible{outline:3px solid #b16b3c;outline-offset:5px}
.hp-public [hidden]{display:none!important}
.hp-shell{width:calc(100% - 96px);max-width:1320px;margin:0 auto}
.hp-skip{position:fixed;left:20px;top:-100px;z-index:100;padding:12px 24px;background:var(--hp-paper);color:var(--hp-ink)!important}
.hp-skip:focus{top:12px}
.hp-header{background:var(--hp-midnight);color:#fff;position:relative;z-index:40;padding:0;border:0;box-shadow:none}
.hp-home .hp-header{position:absolute;top:0;left:0;width:100%;background:linear-gradient(#07121bed, #07121b7d, transparent)}
.hp-header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.hp-logo{display:inline-flex;flex-shrink:0;align-items:center}
.hp-logo img{display:block;width:226px;height:auto;max-height:52px;object-fit:contain}
.hp-nav{display:flex;align-items:center;gap:32px}
.hp-nav a,.hp-footer nav a{font-family:Hammer Condensed,'Arial Narrow',sans-serif;font-size:20px;letter-spacing:.035em;text-transform:uppercase;color:var(--hp-paper);text-decoration:none;white-space:nowrap}
.hp-nav a:hover,.hp-nav a[aria-current=page],.hp-footer nav a:hover{color:#dfaa83}
.hp-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.hp-nav .hp-nav-login{border:1px solid var(--hp-copper);padding:10px 20px;color:#e4ab83}
.hp-nav .hp-nav-login:hover{background:var(--hp-copper);color:#0c1b24}
.hp-menu-toggle{display:none;align-items:center;justify-content:center;gap:9px;border:1px solid #8f8176;padding:10px 14px;background:transparent;color:var(--hp-paper);min-height:46px;cursor:pointer}
.hp-hero{position:relative;background:#0c151b;color:var(--hp-paper);isolation:isolate}
.hp-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;z-index:-2}
.hp-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,13,20,.93) 0%,rgba(4,13,20,.74) 34%,rgba(4,13,20,.12) 76%),linear-gradient(0deg,rgba(4,13,20,.5),transparent 60%)}
.hp-hero-inner{min-height:650px;padding-top:145px;padding-bottom:65px;display:flex;flex-direction:column;justify-content:space-between;gap:68px}
.hp-eyebrow{font-family:Hammer Condensed,'Arial Narrow',sans-serif;font-size:19px;line-height:1.4;text-transform:uppercase;letter-spacing:.115em;color:var(--hp-copper-dark);margin:0 0 18px}
.hp-hero .hp-eyebrow,.hp-page-hero .hp-eyebrow,.hp-auth-visual .hp-eyebrow{color:#e0a37a}
.hp-hero h1{font-family:Hammer Condensed,'Arial Narrow',sans-serif;font-weight:400;font-style:normal;text-transform:uppercase;font-size:clamp(60px,5.8vw,92px);line-height:1.01;letter-spacing:.008em;margin:0 0 22px}
.hp-hero h1 span{color:#d88f5f}
.hp-rule{width:55px;height:3px;background:var(--hp-copper);margin:20px 0 22px}
.hp-hero-copy>p{font-size:21px;color:#eeebe4;margin:0 0 28px}
.hp-actions{display:flex;align-items:center;gap:36px;flex-wrap:wrap}
.hp-public .hp-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--hp-copper);color:#101c23;border:1px solid var(--hp-copper);font-family:Hammer Condensed,'Arial Narrow',sans-serif;font-size:22px;letter-spacing:.065em;text-transform:uppercase;min-height:58px;padding:14px 33px;cursor:pointer;text-decoration:none;transition:background .18s,transform .18s}
.hp-public .hp-button:hover{background:#d3966c;border-color:#d3966c;color:#101c23;transform:translateY(-2px)}
.hp-public .hp-text-link{display:inline-flex;align-items:center;gap:20px;color:var(--hp-copper-dark);font-size:18px;text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px;padding:8px 0}
.hp-hero .hp-text-link{color:#e5a578}
.hp-text-link i{font-size:16px;transition:transform .18s}
.hp-text-link:hover i{transform:translateX(4px)}
.hp-visit{padding-top:54px;padding-bottom:52px}
.hp-visit h2,.hp-section h2{font-size:34px;line-height:1.2;font-weight:600;margin:0;color:var(--hp-ink)}
.hp-visit>.hp-rule{margin-top:16px;margin-bottom:32px}
.hp-live-grid{display:grid;grid-template-columns:38% 1fr;gap:6%;margin-bottom:38px}
.hp-occupancy{border-right:1px solid var(--hp-line);padding-right:40px;min-height:170px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}
.hp-occupancy strong{font-family:Hammer Condensed,sans-serif;font-size:76px;font-weight:400;line-height:.95;font-variant-numeric:tabular-nums}
.hp-occupancy>p{font-size:22px;margin:6px 0 12px}
.hp-muted{font-size:14px;color:var(--hp-muted)}
.hp-trends{min-width:0;align-self:center}
.hp-trend-heading{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:18px}
.hp-trend-heading h3{display:flex;gap:20px;align-items:center;font:400 21px Hammer Condensed,sans-serif;text-transform:uppercase;letter-spacing:.06em;margin:0}
.hp-trend-heading h3 i{font-size:32px;color:var(--hp-copper-dark)}
.hp-trend-heading select{max-width:100%;min-height:44px;background:transparent;border:1px solid var(--hp-line);padding:7px 28px 7px 10px;border-radius:0;color:var(--hp-ink)}
#hp-trend-message{max-width:380px;color:#42535b;font-size:17px}
#hp-trend-canvas{width:100%;height:170px;display:block}
#hp-trend-chart details{font-size:13px;margin-top:10px}
#hp-trend-chart summary{cursor:pointer;padding:6px 0;color:var(--hp-copper-dark)}
.hp-table-scroll{overflow-x:auto;max-height:220px}
.hp-table-scroll table{width:100%;text-align:left}
.hp-table-scroll td,.hp-table-scroll th{padding:6px 14px;border-bottom:1px solid var(--hp-line)}
.hp-quick-links{border-top:1px solid var(--hp-line)}
.hp-quick-links>a{display:grid;grid-template-columns:44px 1fr auto 24px;align-items:center;gap:24px;padding:23px 8px;border-bottom:1px solid var(--hp-line);color:var(--hp-ink);text-decoration:none;transition:background .18s,padding .18s}
.hp-quick-links>a:last-child{border-bottom:0}
.hp-quick-links>a>i:first-child{font-size:27px;color:var(--hp-copper-dark);text-align:center}
.hp-quick-links>a>span:first-of-type{font-size:27px;line-height:1.2}
.hp-quick-links .hp-quick-label{font:400 21px Hammer Condensed,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--hp-copper-dark)}
.hp-quick-links>a>i:last-child{color:var(--hp-copper-dark);font-size:17px}
.hp-quick-links>a:hover{background:#eae3d9;color:var(--hp-ink);padding-left:16px}
.hp-footer{background:var(--hp-midnight);color:#b6c1c6;padding:35px 0 20px}
.hp-footer-top{display:flex;align-items:center;gap:45px;border-bottom:1px solid #886043;padding-bottom:24px}
.hp-footer .hp-logo img{width:200px}
.hp-footer nav{display:flex;gap:40px;border-left:1px solid #886043;padding-left:42px}
.hp-footer-top>span{margin-left:auto;font-size:14px}
.hp-copyright{text-align:center;font-size:13px;margin:18px 0 0;letter-spacing:.025em}
.hp-section{padding-top:64px;padding-bottom:70px}
.hp-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:36px}
.hp-section-heading .hp-eyebrow{margin-bottom:10px}
.hp-section-heading>p{color:var(--hp-muted);max-width:330px}
.hp-page-hero{position:relative;isolation:isolate;background:var(--hp-midnight);color:var(--hp-paper);overflow:hidden}
.hp-page-hero>img{position:absolute;right:0;top:0;width:55%;height:100%;object-fit:cover;object-position:50% 8%;z-index:-2}
.hp-page-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0c1b24 25%,#0c1b24c9 48%,#0c1b2400 80%)}
.hp-page-hero>.hp-shell{padding-top:54px;padding-bottom:54px;min-height:330px}
.hp-page-hero h1{font:400 clamp(48px,4.8vw,74px)/1.02 Hammer Condensed,sans-serif;letter-spacing:.01em;text-transform:uppercase;margin:0 0 20px}
.hp-page-hero h1 span{color:#d99465}
.hp-page-hero>.hp-shell>p:last-child{font-size:19px;max-width:410px}
.hp-training-hero>img{width:65%;object-position:70% 20%}
.hp-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hp-package{background:#fcfaf6;border:1px solid var(--hp-line);padding:28px;display:flex;flex-direction:column;position:relative}
.hp-package-number{font:400 23px Hammer Condensed,sans-serif;color:var(--hp-copper-dark);border-bottom:1px solid var(--hp-line);padding-bottom:14px;margin-bottom:25px}
.hp-package h3{font:400 34px/1.15 Hammer Condensed,sans-serif;text-transform:uppercase;margin:0 0 14px}
.hp-package>p{color:var(--hp-muted);margin-bottom:28px;flex:1}
.hp-package-price{display:flex;gap:12px;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--hp-line);padding-top:18px;font:400 32px/1.2 Hammer Condensed,sans-serif;font-variant-numeric:tabular-nums}
.hp-package-price small{font:400 14px/1.5 'Acumin Pro',Arial,sans-serif;color:var(--hp-muted)}
.hp-trainer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.hp-trainer{display:block;background:var(--hp-midnight);overflow:hidden}
.hp-trainer>img{display:block;width:100%;height:360px;object-fit:cover;object-position:50% 25%;transition:transform .4s}
.hp-trainer>div{padding:24px;display:flex;justify-content:space-between;gap:15px;align-items:center}
.hp-trainer h3{font:400 30px/1.1 Hammer Condensed,sans-serif;text-transform:uppercase;color:var(--hp-paper);margin:0}
.hp-trainer span{color:#dfaa83;font-size:13px;white-space:nowrap}
.hp-trainer span i{margin-left:9px}
.hp-trainer:hover>img{transform:scale(1.025)}
.hp-auth{display:grid;grid-template-columns:1fr 1fr;min-height:690px}
.hp-auth-visual{position:relative;isolation:isolate;background:#050f15;overflow:hidden;color:var(--hp-paper)}
.hp-auth-visual>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 26%}
.hp-auth-visual:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#07141df5 2%,#07141d44 45%,transparent 80%)}
.hp-auth-visual>div{position:absolute;bottom:52px;left:8%;right:6%}
.hp-auth-visual h2{font:400 clamp(34px,3.3vw,53px)/1.06 Hammer Condensed,sans-serif;text-transform:uppercase}
.hp-auth-visual h2 span{color:#d99465}
.hp-auth-panel{display:flex;align-items:center;justify-content:center;padding:60px 9%}
.hp-auth-content{max-width:450px;width:100%}
.hp-auth-content h1{font:400 clamp(44px,4vw,62px)/1.1 Hammer Condensed,sans-serif;text-transform:uppercase;margin:0 0 14px}
.hp-auth-intro{color:var(--hp-muted);font-size:18px;margin-bottom:42px}
.hp-auth-form .label{font-size:15px;color:var(--hp-ink);margin-bottom:12px;font-weight:600}
.hp-auth-form .input{height:58px;border:1px solid #b5b0a8;border-radius:0;box-shadow:none;background:#fffdfa;color:var(--hp-ink);font-size:22px;padding:12px 16px}
.hp-auth-form .input:focus{border-color:var(--hp-copper-dark);box-shadow:0 0 0 1px var(--hp-copper-dark)}
.hp-phone-input{display:flex;align-items:stretch}
.hp-phone-input>span{display:flex;align-items:center;padding:0 16px;border:1px solid #b5b0a8;border-right:0;background:#e8e2d9;color:#3d515a}
.hp-phone-input .input{min-width:0}
.hp-auth-form .hp-button{width:100%;margin-top:22px;justify-content:space-between}
.hp-field-help{font-size:13px;color:var(--hp-muted);margin-top:11px;line-height:1.6}
.hp-auth-note{font-size:13px;color:var(--hp-muted);margin-top:22px;line-height:1.7}
.hp-auth-note i{margin-right:5px;color:var(--hp-copper-dark)}
.hp-auth-bottom{margin-top:45px;padding-top:24px;border-top:1px solid var(--hp-line);display:flex;gap:8px;flex-direction:column;font-size:14px}
.hp-auth-bottom>span{color:var(--hp-muted)}
.hp-auth-bottom a{display:inline-flex;gap:20px;align-items:center}
.hp-auth-form .hp-otp-input{letter-spacing:.28em}
.hp-public .hp-small-link{color:var(--hp-copper-dark);font-size:14px;background:transparent;padding:8px 0;border:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer;display:inline-block;margin-top:10px}
.hp-public .help.is-danger{color:#a92929;font-size:14px;margin-top:10px}
.hp-public .input.is-danger{border-color:#a92929}
/* Existing public and member screens retain their original application components. */
.hp-public .facade{background:var(--hp-paper);color:var(--hp-ink)}
.hp-public .facade>.section{padding:54px 24px 64px}
.hp-public .facade>.section>.container{max-width:1240px}
.hp-public .styled-title{font-family:Hammer Condensed,'Arial Narrow',sans-serif;font-style:normal;font-weight:400;letter-spacing:.02em}
.hp-public .facade .title{color:var(--hp-ink);line-height:1.15}
.hp-rules h1.title,.hp-beastboard h1.title{font-size:60px}
.hp-public .package{clip-path:none;border:1px solid var(--hp-line);background:#fcfaf6;color:var(--hp-ink);padding:28px;height:100%}
.hp-public .package h3{font-size:28px;line-height:1.15}
.hp-public .package p{opacity:1;color:var(--hp-muted);line-height:1.7}
.hp-public .beastboard-category{clip-path:none;background:var(--hp-midnight);padding:25px;min-height:160px;gap:20px;height:100%;color:var(--hp-paper)}
.hp-public .beastboard-category .caption{min-width:0;flex:1}
.hp-public .beastboard-category .caption h3{font-size:29px}
.hp-public .beastboard-category .tag{white-space:normal;height:auto;font-size:12px;padding:8px;line-height:1.4}
.hp-public .beastboard-category:hover{color:#f0c19d}
.hp-public .beastboard-category .image{flex-shrink:0;width:24%}
.hp-public .beastboard-record{clip-path:none;gap:16px;flex-wrap:wrap;font-size:22px;padding:16px 20px}
.hp-public .beastboard-record a{color:#e5ac83}
.hp-public .slanted-button{clip-path:none;transform:none;border:1px solid var(--hp-copper);background:var(--hp-copper);color:#101c23;line-height:1.4;padding:13px 24px;font-size:21px}
.hp-beastboard .slanted-button{float:right;margin-bottom:20px}
.hp-beastboard .columns{clear:both}
.hp-trainer-detail .trainer-profile{height:390px;padding:0;margin:0;background:var(--hp-midnight);isolation:isolate}
.hp-trainer-detail .trainer-profile img{object-position:50% 30%}
.hp-trainer-detail .trainer-profile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071620e6,transparent);z-index:1}
.hp-trainer-detail .trainer-profile .caption{top:auto;bottom:35px;left:6%;transform:none;min-width:0;text-align:left;z-index:2}
.hp-trainer-detail .trainer-profile .caption h1{font-size:64px;color:var(--hp-paper);margin:0}
.hp-trainer-detail .trainer-profile .caption h1:before{content:'Personal trainer';display:block;font:400 19px Hammer Condensed,sans-serif;letter-spacing:.1em;color:#dfa780;margin-bottom:10px}
.hp-trainer-detail>.section>.container{max-width:880px!important}
.hp-trainer-detail .content{margin-bottom:42px}
.hp-trainer-detail .form{padding:30px;background:#fcfaf6;border:1px solid var(--hp-line)}
.hp-trainer-detail .form .label{font-size:15px;margin-top:20px}
.hp-trainer-detail .form .input,.hp-trainer-detail .form .textarea{border-radius:0;min-height:48px;box-shadow:none}
.hp-trainer-detail .slots .slot{min-width:150px}
.hp-trainer-detail .slots .slot .field{position:relative}
.hp-trainer-detail .slots .slot input[type=radio]{display:block;visibility:visible;position:absolute;opacity:0;width:1px;height:1px}
.hp-trainer-detail .slots .slot label{min-height:48px;padding:12px;border-radius:0}
.hp-trainer-detail .slots .slot input:focus-visible+label{outline:3px solid var(--hp-copper-dark);outline-offset:2px}
.hp-trainer-detail .slots .slot input:checked+label{background:var(--hp-ink)}
.hp-public .button.is-primary{background:var(--hp-copper);color:#101c23;border-color:var(--hp-copper)}
.hp-public .button{min-height:44px}
.hp-public #hp-main>header ul{display:flex;gap:6px;overflow-x:auto;margin:0;padding:8px 10px}
.hp-public #hp-main>header ul li{flex:0 0 auto;width:auto!important;padding:0;float:none}
.hp-public #hp-main>header ul li a{white-space:nowrap;display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px}
.hp-public .hra-heading{background:transparent;border:0;padding:0;text-align:left}
.hp-public .sticky-footer{background:var(--hp-midnight)}
.hp-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:901px){.hp-shell{width:calc(100% - 88px);max-width:1440px}.hp-header-inner{min-height:90px}.hp-hero-inner{min-height:568px;padding-top:145px;padding-bottom:32px;gap:30px}.hp-hero h1{margin-bottom:14px}.hp-hero .hp-rule{margin:16px 0 18px}.hp-hero-copy>p{font-size:20px;margin-bottom:24px}.hp-hero .hp-button{min-height:54px;line-height:1.3;padding:12px 33px}.hp-visit{padding-top:26px;padding-bottom:8px}.hp-visit h2{font-size:28px}.hp-visit>.hp-rule{margin-top:8px;margin-bottom:14px}.hp-live-grid{grid-template-columns:37% 1fr;gap:4%;margin-bottom:22px}.hp-occupancy{min-height:100px;display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;align-content:center;align-items:end}.hp-occupancy strong{font-size:58px}.hp-occupancy>p{margin:0 0 3px}.hp-occupancy>.hp-muted,.hp-occupancy>button{grid-column:1/-1}.hp-trend-heading{margin-bottom:12px}.hp-trend-heading h3{font-size:18px}.hp-trend-heading h3 i{font-size:28px}#hp-trend-message{font-size:14px;max-width:290px}.hp-quick-links>a{padding:12px 0;gap:18px}.hp-quick-links>a>span:first-of-type{font-size:23px}.hp-quick-links .hp-quick-label{font-size:18px}.hp-footer{padding-top:20px;padding-bottom:10px}.hp-footer-top{padding-bottom:12px}.hp-copyright{margin-top:10px}}
@media(max-width:900px){.hp-header-inner{padding-top:16px;padding-bottom:16px}.hp-home .hp-header.hp-menu-open{background:var(--hp-midnight)}}
@media(max-width:1150px){.hp-shell{width:calc(100% - 64px)}.hp-header-inner{gap:20px}.hp-logo img{width:190px}.hp-nav{gap:20px}.hp-nav a{font-size:18px}.hp-nav .hp-nav-login{padding:10px 14px}.hp-footer-top{gap:28px}.hp-footer-top>span{display:none}.hp-trainer>div{display:block}.hp-trainer span{display:block;margin-top:12px}}
@media(max-width:900px){.hp-header-inner{min-height:88px;flex-wrap:wrap}.hp-menu-toggle{display:flex}.hp-nav{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 0 22px}.hp-nav a{padding:12px 10px;font-size:22px;border-top:1px solid #ffffff24}.hp-nav .hp-nav-login{text-align:center;margin-top:12px}.hp-public.hp-enhanced .hp-nav{display:none}.hp-public.hp-enhanced .hp-nav.is-open{display:flex}.hp-home .hp-header:has(.is-open){background:var(--hp-midnight)}.hp-hero-inner{min-height:660px;padding-top:125px}.hp-hero h1{font-size:70px}.hp-hero-photo{object-position:57% 40%}.hp-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-trainer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hp-section-heading{align-items:flex-start;flex-direction:column;gap:22px}.hp-auth{min-height:640px;grid-template-columns:42% 58%}.hp-auth-panel{padding:50px 10%}.hp-auth-visual>div{bottom:40px}.hp-auth-visual h2{font-size:36px}.hp-quick-links>a>span:first-of-type{font-size:24px}.hp-quick-links .hp-quick-label{font-size:19px}.hp-footer nav{gap:26px;padding-left:28px}.hp-trainer>img{height:350px}}
@media(max-width:600px){.hp-shell{width:calc(100% - 40px)}.hp-header-inner{min-height:80px;gap:10px}.hp-logo img{width:166px;max-height:40px}.hp-menu-toggle{font-size:14px;min-height:44px;padding:9px 12px}.hp-home .hp-header{background:#0b1b24d9}.hp-hero-inner{min-height:695px;padding-top:112px;padding-bottom:42px;gap:160px}.hp-hero-photo{object-position:50% 24%;height:100%}.hp-hero:after{background:linear-gradient(0deg,#06131b 0%,#06131bf0 20%,#06131b52 65%,#06131b40 100%)}.hp-hero .hp-eyebrow{font-size:16px}.hp-hero h1{font-size:clamp(36px,10.7vw,64px);line-height:1.05;margin-bottom:18px}.hp-hero-copy>p{font-size:17px;max-width:260px;margin-bottom:24px}.hp-rule{margin:17px 0}.hp-actions{gap:22px}.hp-public .hp-button{font-size:20px;min-height:54px;padding:13px 23px;gap:18px}.hp-public .hp-text-link{font-size:16px;gap:13px}.hp-visit{padding-top:35px;padding-bottom:30px}.hp-visit h2,.hp-section h2{font-size:28px}.hp-visit>.hp-rule{margin-bottom:28px}.hp-live-grid{grid-template-columns:1fr;gap:28px;margin-bottom:32px}.hp-occupancy{min-height:140px;border-right:0;border-bottom:1px solid var(--hp-line);padding:0 0 25px}.hp-occupancy strong{font-size:66px}.hp-occupancy>p{font-size:21px;margin-bottom:9px}.hp-trends{min-height:125px}.hp-trend-heading h3{font-size:20px;gap:15px}.hp-trend-heading h3 i{font-size:27px}.hp-trend-heading{margin-bottom:14px}#hp-trend-message{font-size:16px}.hp-quick-links>a{grid-template-columns:29px 1fr 20px;gap:16px;padding:22px 0}.hp-quick-links>a>span:first-of-type{font-size:22px;line-height:1.2}.hp-quick-links .hp-quick-label{grid-column:2;grid-row:2;font-size:16px;margin-top:-6px}.hp-quick-links>a>i:last-child{grid-column:3;grid-row:1/span 2}.hp-quick-links>a>i:first-child{font-size:23px;grid-row:1/span 2}.hp-footer{padding:30px 0 20px}.hp-footer-top{align-items:flex-start;flex-direction:column;gap:24px;padding-bottom:25px}.hp-footer nav{border:0;padding:0;gap:32px}.hp-footer nav a{font-size:19px}.hp-footer .hp-logo img{width:180px}.hp-copyright{text-align:left;font-size:12px}.hp-section{padding-top:38px;padding-bottom:45px}.hp-page-hero>.hp-shell{min-height:350px;padding-top:45px;padding-bottom:45px}.hp-page-hero>img{width:100%;object-position:70% 10%}.hp-page-hero:after{background:linear-gradient(90deg,#0c1b24e8 3%,#0c1b24a0 60%,#0c1b2440)}.hp-page-hero h1{font-size:54px}.hp-page-hero>.hp-shell>p:last-child{max-width:260px;font-size:17px}.hp-package-grid{grid-template-columns:1fr;gap:18px}.hp-package{padding:24px}.hp-package h3{font-size:31px}.hp-section-heading{margin-bottom:26px}.hp-trainer-grid{grid-template-columns:1fr;gap:24px}.hp-trainer>img{height:auto;aspect-ratio:4/3}.hp-trainer>div{display:flex}.hp-trainer span{margin:0}.hp-auth{display:flex;flex-direction:column;min-height:0}.hp-auth-visual{height:270px;flex-shrink:0;order:1}.hp-auth-visual>img{object-position:50% 29%}.hp-auth-visual>div{left:20px;right:20px;bottom:24px}.hp-auth-visual h2{font-size:34px}.hp-auth-visual .hp-eyebrow{display:none}.hp-auth-panel{padding:40px 24px 44px;order:0}.hp-auth-content h1{font-size:46px}.hp-auth-intro{font-size:16px;margin-bottom:28px}.hp-auth-form .input{font-size:22px}.hp-auth-bottom{margin-top:32px}.hp-auth-form .hp-button{min-height:56px}.hp-public .facade>.section{padding:36px 20px 44px}.hp-rules h1.title,.hp-beastboard h1.title{font-size:46px}.hp-beastboard .slanted-button{float:none;display:inline-flex;margin-bottom:25px}.hp-trainer-detail .trainer-profile{height:310px}.hp-trainer-detail .trainer-profile .caption{left:20px;bottom:25px}.hp-trainer-detail .trainer-profile .caption h1{font-size:45px}.hp-trainer-detail .form{padding:20px}.hp-trainer-detail .slots .slot{width:100%;min-width:0}.hp-public .beastboard-record{font-size:19px}.hp-public .beastboard-record .left{max-width:100%;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.hp-document{scroll-behavior:auto}.hp-public *{transition:none!important;animation:none!important}}

/* Hammer member access — Graphite & Champagne. Login and OTP only. */
body.hp-public.hp-auth-page {
  --hp-ink: #eeece7;
  --hp-midnight: #111315;
  --hp-paper: #181b1e;
  --hp-copper: #c9b995;
  --hp-copper-dark: #dac9a8;
  --hp-line: #414346;
  --hp-muted: #b3b5b7;
  background: #111315;
  color: #eeece7;
  color-scheme: dark;
}
.hp-auth-page #app {
  background: #181b1e;
}
.hp-auth-page .hp-header {
  background: linear-gradient(115deg, #202327 0%, #111315 54%, #1e2124 100%);
  border-bottom: 1px solid #454440;
  box-shadow: inset 0 1px 0 #ffffff0d;
}
.hp-auth-page .hp-logo img { opacity: .94; }
.hp-auth-page .hp-nav a,
.hp-auth-page .hp-footer nav a { color: #d4d5d5; }
.hp-auth-page .hp-nav a:hover,
.hp-auth-page .hp-footer nav a:hover { color: #f0dfba; }
.hp-auth-page .hp-nav .hp-nav-login {
  color: #e0cfab;
  border-color: #8e8066;
  background: linear-gradient(120deg, #b3a48714, #ffffff03);
}
.hp-auth-page .hp-nav .hp-nav-login:hover {
  color: #111315;
  background: #d7c5a3;
  border-color: #d7c5a3;
}
.hp-auth-page .hp-menu-toggle { color: #ded9ce; border-color: #75736e; }
.hp-auth-page .hp-auth { background: #181b1e; }
.hp-auth-page .hp-auth-visual { background: #101214; color: #eeece7; }
.hp-auth-page .hp-auth-visual > img {
  filter: saturate(.38) contrast(1.04) brightness(.88);
}
.hp-auth-page .hp-auth-visual:after {
  background: linear-gradient(0deg, #101214fa 0%, #10121475 33%, #1012140a 75%),
    linear-gradient(90deg, #1012140a 65%, #10121450 100%);
}
.hp-auth-page .hp-auth-visual .hp-eyebrow { color: #d8c7a4; }
.hp-auth-page .hp-auth-visual h2 { color: #eeece7; }
.hp-auth-page .hp-auth-visual h2 span { color: #d4c3a3; }
.hp-auth-page .hp-auth-panel {
  position: relative;
  border-left: 1px solid #55534c;
  background: radial-gradient(ellipse at 8% 0%, #a8a49b12, transparent 65%),
    linear-gradient(125deg, #272b2e 0%, #1c1f22 34%, #16181b 69%, #222529 100%);
  box-shadow: inset 1px 0 0 #ffffff0b;
}
.hp-auth-page .hp-auth-content > .hp-eyebrow {
  color: #d6c4a1;
  letter-spacing: .15em;
  margin-bottom: 18px;
}
.hp-auth-page .hp-auth-content h1 {
  color: #efeee9;
  letter-spacing: .02em;
  text-shadow: 0 1px 1px #0008;
}
.hp-auth-page .hp-auth-intro { color: #bcbfc2; }
.hp-auth-page .hp-auth-form .label { color: #e2e1dd; }
.hp-auth-page .hp-phone-input > span {
  color: #c7c6c1;
  background: linear-gradient(130deg, #34383b, #24282b);
  border-color: #64676a;
}
.hp-auth-page .hp-auth-form .input {
  background: #121518;
  border: 1px solid #64676a;
  color: #f1efea;
  caret-color: #e3cd9e;
  box-shadow: inset 0 2px 5px #0003;
}
.hp-auth-page .hp-auth-form .input::placeholder { color: #959a9f; opacity: 1; }
.hp-auth-page .hp-auth-form .input:focus {
  border-color: #d6c49d;
  box-shadow: 0 0 0 1px #d6c49d, inset 0 2px 5px #0003;
}
.hp-auth-page .hp-auth-form .input:autofill {
  color: #f1efea;
  background: #121518;
}
.hp-auth-page .hp-auth-form .input:-webkit-autofill {
  -webkit-text-fill-color: #f1efea;
  -webkit-box-shadow: 0 0 0 1000px #121518 inset;
  caret-color: #e3cd9e;
}
.hp-auth-page .hp-field-help,
.hp-auth-page .hp-auth-note,
.hp-auth-page .hp-auth-bottom > span { color: #b3b5b7; }
.hp-auth-page .hp-auth-form .hp-button {
  color: #171a1c;
  background: linear-gradient(112deg, #ac9b7c 0%, #e0d3b8 43%, #c0ae8c 77%, #d0bf9d 100%);
  border: 1px solid #e1d3b6;
  box-shadow: inset 0 1px 0 #fff7, 0 8px 20px #0003;
  letter-spacing: .065em;
  transition: background .18s, box-shadow .18s;
}
.hp-auth-page .hp-auth-form .hp-button:hover {
  color: #111315;
  background: linear-gradient(112deg, #c0af8e, #eee1c6 43%, #d5c3a0 85%);
  box-shadow: inset 0 1px 0 #fffb, 0 8px 22px #0005;
}
.hp-auth-page .hp-auth-form .hp-button:active { box-shadow: inset 0 2px 5px #0003; }
.hp-auth-page .hp-auth-form .hp-button:disabled { opacity: .55; cursor: not-allowed; }
.hp-auth-page .hp-auth-note i { color: #d0bd95; }
.hp-auth-page .hp-auth-bottom { border-color: #494b4b; }
.hp-auth-page .hp-auth-bottom a,
.hp-auth-page .hp-small-link { color: #dcc9a4; }
.hp-auth-page .hp-auth-bottom a:hover,
.hp-auth-page .hp-small-link:hover { color: #f5e5c8; }
.hp-auth-page .hp-footer {
  background: linear-gradient(110deg, #1c1f22, #111315 60%, #1b1e20);
  color: #a9acae;
  border-top: 1px solid #434442;
}
.hp-auth-page .hp-footer-top,
.hp-auth-page .hp-footer nav { border-color: #484942; }
.hp-auth-page :focus-visible { outline: 2px solid #e5cf9f; outline-offset: 4px; }
.hp-auth-page .help.is-danger { color: #ffb2ad; }
.hp-auth-page .input.is-danger { border-color: #ffb2ad; }
.hp-auth-page .notification.is-danger,
.hp-auth-page .notification.is-warning { background: #3c2526; color: #ffd8d0; }
.hp-auth-page .notification.is-success,
.hp-auth-page .notification.is-info { background: #25362f; color: #d5ebdd; }
@media (max-width: 600px) {
  .hp-auth-page .hp-auth-panel { border-left: 0; border-bottom: 1px solid #55534c; }
  .hp-auth-page .hp-auth-visual { border-bottom: 0; }
}
@media (forced-colors: active) {
  .hp-auth-page .hp-auth-form .hp-button { border: 1px solid ButtonText; }
}
