:root{--bg:#071014;--panel:#0d191f;--panel2:#10232a;--text:#f5f8f8;--muted:#a8b6b9;--blue:#28a9e0;--green:#63d29a;--line:#1d343c;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{font-size:12px;letter-spacing:.08em;text-align:center;padding:8px;background:#0b2027;color:#cde8e2}.nav{position:sticky;top:0;z-index:20;background:rgba(7,16,20,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.navin{height:76px;display:flex;align-items:center;gap:28px}.brand{font-weight:900;font-size:25px;letter-spacing:.16em;margin-right:auto}.brand span{color:var(--green)}.links{display:flex;gap:24px;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:999px;font-weight:800;border:1px solid transparent;cursor:pointer}.btn.primary{background:linear-gradient(100deg,var(--blue),var(--green));color:#041014}.btn.ghost{border-color:#31505a}.menu{display:none;background:none;border:0;color:white;font-size:26px}.hero{min-height:72vh;display:grid;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 80% 25%,rgba(40,169,224,.25),transparent 30%),radial-gradient(circle at 20% 80%,rgba(99,210,154,.16),transparent 30%)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,16,20,.3),rgba(7,16,20,0));pointer-events:none}.hero .wrap{position:relative;z-index:1;padding:90px 0}.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);font-weight:900}.hero h1,h1{font-size:clamp(48px,8vw,98px);line-height:.92;letter-spacing:-.055em;margin:18px 0 26px;max-width:1000px}.accent{background:linear-gradient(100deg,var(--blue),var(--green));-webkit-background-clip:text;color:transparent}.lead{font-size:clamp(18px,2.2vw,24px);color:#c3ced0;max-width:720px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{background:#09151a;padding:26px;text-align:center}.stat b{font-size:28px;display:block}.stat small{color:var(--muted)}section{padding:92px 0}.sectionhead{max-width:800px;margin-bottom:42px}.sectionhead h2,h2{font-size:clamp(36px,5vw,66px);line-height:1;letter-spacing:-.045em;margin:12px 0 18px}.sectionhead p{color:var(--muted);font-size:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{background:linear-gradient(145deg,#0d1c22,#0a1419);border:1px solid var(--line);border-radius:22px;padding:30px;min-height:250px}.card h3{font-size:26px;margin:10px 0}.card p{color:var(--muted)}.card .num{font-size:12px;color:var(--green);letter-spacing:.18em}.card a.more{display:inline-block;margin-top:15px;color:#8bd8f4;font-weight:800}.band{background:linear-gradient(120deg,#0e2730,#0c1b20);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quote{font-size:clamp(38px,6vw,78px);font-weight:900;line-height:.98;letter-spacing:-.045em;max-width:1000px}.service{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.visual{min-height:320px;border-radius:24px;background:radial-gradient(circle at 70% 30%,rgba(40,169,224,.38),transparent 25%),linear-gradient(135deg,#15313a,#091318);display:flex;align-items:end;padding:24px;color:#8ba1a6;font-size:12px;letter-spacing:.15em}.pricegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price{position:relative}.price.popular{border-color:var(--green);transform:translateY(-8px)}.price .amount{font-size:54px;font-weight:900}.price ul{padding-left:18px;color:var(--muted)}.tag{display:inline-block;padding:5px 10px;border-radius:999px;background:#173c35;color:#9ff0c6;font-size:11px;font-weight:900;letter-spacing:.1em}.steps{counter-reset:s}.step{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.step:before{counter-increment:s;content:"0" counter(s);color:var(--green);font-weight:900}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-weight:800;font-size:18px}.faq p{color:var(--muted)}.cta{text-align:center;background:radial-gradient(circle at 50% 20%,rgba(99,210,154,.16),transparent 35%)}.cta h2{max-width:850px;margin:12px auto 20px}.footer{border-top:1px solid var(--line);padding:50px 0;color:var(--muted)}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer strong{color:white}.disclaimer{font-size:12px;color:#71858a;margin-top:30px}.formbox{max-width:720px;margin:auto}.progress{height:5px;background:#183039;border-radius:10px;overflow:hidden;margin:20px 0 35px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--green));width:20%;transition:.3s}.question{display:none}.question.active{display:block}.options{display:grid;gap:12px;margin:24px 0}.option{padding:18px;border:1px solid var(--line);border-radius:14px;background:#0c1a20;color:white;text-align:left;font-size:16px;cursor:pointer}.option:hover,.option.selected{border-color:var(--green);background:#102922}.result{display:none}.result.show{display:block}.note{border-left:3px solid var(--green);padding:14px 18px;background:#0b1b1e;color:#c6d4d5}.kicker{color:var(--muted);font-size:14px}.mobile-cta{display:none}@media(max-width:850px){.links,.nav .btn.primary{display:none}.menu{display:block}.links.open{display:flex;position:absolute;top:76px;left:0;right:0;background:#071014;flex-direction:column;padding:24px;border-bottom:1px solid var(--line)}.hero .wrap{padding:70px 0}.stats,.grid3,.grid2,.pricegrid,.footergrid{grid-template-columns:1fr}.service{grid-template-columns:1fr}.price.popular{transform:none}.mobile-cta{display:flex;position:fixed;z-index:30;bottom:12px;left:12px;right:12px}.mobile-cta .btn{width:100%;box-shadow:0 10px 30px #000}.footer{padding-bottom:90px}}

/* Revive brand assets + palette */
:root{--blue:#6589f4;--blue-deep:#0b2b9b;--green:#96f39b;--green-deep:#5fdb77;--bg:#05080c;--panel:#0a1018;--panel2:#0c1520;--line:#1a2a40}
.brand-logo{display:block;width:220px;max-height:64px;object-fit:contain}.navin .brand-logo{width:205px}.footer-logo{width:260px;margin-bottom:14px}.nav{background:rgba(5,8,12,.94);border-bottom-color:rgba(101,137,244,.25)}.topbar{background:#071331;color:#dfe7ff}.btn.primary{background:linear-gradient(100deg,var(--blue),var(--green));color:#06101c}.eyebrow{color:var(--green)}.accent{background:linear-gradient(100deg,#8aa4ff 10%,var(--blue) 45%,var(--green) 92%);-webkit-background-clip:text;color:transparent}.hero{background:radial-gradient(circle at 78% 28%,rgba(101,137,244,.24),transparent 31%),radial-gradient(circle at 17% 78%,rgba(150,243,155,.13),transparent 28%),#05080c}.hero.brand-hero:before{content:"";position:absolute;right:4vw;top:50%;transform:translateY(-48%);width:min(38vw,520px);height:min(38vw,520px);background:url('../images/revive-running-man.png') center/contain no-repeat;opacity:.34;filter:saturate(1.15);pointer-events:none}.hero.brand-hero .wrap{padding-right:min(32vw,390px)}.brand-watermark{position:relative;overflow:hidden}.brand-watermark:after{content:"";position:absolute;right:-55px;bottom:-85px;width:330px;height:330px;background:url('../images/revive-running-man.png') center/contain no-repeat;opacity:.075;pointer-events:none}.card{border-color:#172840;background:linear-gradient(145deg,#0c1420,#070c12)}.card:hover{border-color:rgba(101,137,244,.55)}.band{background:linear-gradient(120deg,#0a1731,#081219)}.tag{background:#132d20;color:#b7ffc0}.progress span{background:linear-gradient(90deg,var(--blue),var(--green))}.option:hover,.option.selected{border-color:var(--green);background:#10251b}.note{border-left-color:var(--green)}
@media(max-width:850px){.navin .brand-logo{width:170px}.hero.brand-hero:before{width:70vw;height:70vw;right:-25vw;top:34%;opacity:.16}.hero.brand-hero .wrap{padding-right:0}.footer-logo{width:230px}}

/* Authentic Revive photography */
.photo-hero{background-size:cover;background-position:center;isolation:isolate}.photo-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,12,.96) 0%,rgba(5,8,12,.78) 48%,rgba(5,8,12,.34) 100%);z-index:-1}.home-photo-hero{background-image:url('../images/revive-studio.jpeg')}.photo-strip{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px;margin-top:42px}.photo-card{min-height:360px;border-radius:22px;overflow:hidden;position:relative;background-size:cover;background-position:center;border:1px solid var(--line)}.photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,8,12,.88),transparent 62%)}.photo-card .photo-label{position:absolute;left:22px;bottom:18px;z-index:2;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.photo-card.cold{background-image:url('../images/cold-plunge.jpeg');background-position:center 42%}.photo-card.red{background-image:url('../images/red-light.jpeg')}.photo-card.sauna{background-image:url('../images/infrared-sauna.jpeg')}.photo-card.hydro{background-image:url('../images/hydro-massage.jpeg')}.photo-card.studio{background-image:url('../images/revive-studio.jpeg')}.service-photo{min-height:360px;border-radius:24px;background-size:cover;background-position:center;border:1px solid var(--line)}.service-photo.red{background-image:url('../images/red-light.jpeg')}.service-photo.sauna{background-image:url('../images/infrared-sauna.jpeg')}.service-photo.cold{background-image:url('../images/cold-plunge.jpeg');background-position:center 40%}.service-photo.hydro{background-image:url('../images/hydro-massage.jpeg')}.authentic-banner{min-height:520px;display:flex;align-items:end;background:url('../images/revive-studio.jpeg') center/cover no-repeat;position:relative}.authentic-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,8,12,.96),rgba(5,8,12,.08) 70%)}.authentic-banner .wrap{position:relative;padding-bottom:55px}.authentic-banner h2{max-width:780px;margin-bottom:0}@media(max-width:850px){.photo-strip{grid-template-columns:1fr}.photo-card{min-height:300px}.home-photo-hero{background-position:35% center}.photo-hero:after{background:linear-gradient(90deg,rgba(5,8,12,.95),rgba(5,8,12,.72))}.authentic-banner{min-height:420px}}
.service-photo.normatec{background-image:url('../images/normatec-athletes.jpeg');background-position:center 45%}.service-photo.hydrogen{background-image:url('../images/hydrogen-water.jpeg');background-position:center}.performance-photo{min-height:600px;display:flex;align-items:end;background:url('../images/normatec-athletes.jpeg') center 42%/cover no-repeat;position:relative}.performance-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,8,12,.96),rgba(5,8,12,.05) 72%)}.performance-photo .wrap{position:relative;padding-bottom:55px}.performance-photo h2{max-width:820px;margin-bottom:0}.hydrogen-feature{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}@media(max-width:850px){.performance-photo{min-height:480px;background-position:center}.hydrogen-feature{grid-template-columns:1fr}}

.service-photo.cryo{background-image:url('../images/acute-cryo.jpg');background-position:center}

.cryo-performance{min-height:520px;display:flex;align-items:end;background:url('../images/acute-cryo.jpg') center/cover no-repeat;position:relative}.cryo-performance:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,8,12,.96),rgba(5,8,12,.08) 72%)}.cryo-performance .wrap{position:relative;padding-bottom:55px}.cryo-performance h2,.cryo-performance p{max-width:760px}

/* Member portal */
.member-btn{border-color:#6589f4;background:rgba(101,137,244,.10);color:#fff;white-space:nowrap}.member-btn:hover{background:rgba(101,137,244,.22);border-color:#96f39b}.mobile-member-link{display:none!important}
@media(max-width:850px){.nav .member-btn{display:inline-flex;margin-left:auto;padding:10px 14px;font-size:13px}.navin{gap:12px}.mobile-member-link{display:block!important;color:#96f39b!important;font-weight:800}}
@media(max-width:520px){.navin .brand-logo{width:135px}.nav .member-btn{padding:9px 11px;font-size:12px}.menu{font-size:23px}}

.pricegrid4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1050px){.pricegrid4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.pricegrid4{grid-template-columns:1fr}}
