/* Rejuvena cinematic home — scoped under .rj-home so nothing leaks to header/footer/other pages */
.rj-home{
  --navy:#062033; --navy2:#0A2C44; --gold:#C8A96B; --gold-soft:#d8c193;
  --cream:#F5F4F1; --ink:#1C2A33;
  --ease:cubic-bezier(.16,1,.3,1);
  font-family:'Inter',system-ui,sans-serif; color:var(--cream); background:var(--navy);
  font-weight:300; line-height:1.65; overflow-x:hidden;
}
.rj-home *{box-sizing:border-box}
.rj-home .serif{font-family:'Cormorant Garamond',Georgia,serif}
.rj-home h1,.rj-home h2,.rj-home h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.05;letter-spacing:.004em;margin:0}
.rj-wrap{max-width:1240px;margin:0 auto;padding:0 40px}
.rj-kicker{font-family:'Inter',sans-serif;font-weight:500;font-size:.72rem;letter-spacing:.4em;text-transform:uppercase;color:var(--gold)}
.rj-rule{width:54px;height:1px;background:var(--gold);margin-bottom:22px}
@media(max-width:680px){.rj-wrap{padding:0 22px}}

/* film grain + vignette overlays (whole page) */
.rj-home .rj-grain{position:fixed;inset:0;z-index:3;pointer-events:none;opacity:.05;mix-blend-mode:overlay}
/* .rj-vignette removed 20260614 — gimmicky halo per client */

/* buttons — selectors are prefixed with .rj-home (0,2,0) so they BEAT the theme's
   .elementor-kit-9 a (0,1,1) cascade rule that otherwise paints all anchors navy
   and makes the outline buttons' text invisible on the dark sections. */
.rj-home .rj-btn{display:inline-flex;align-items:center;gap:.6em;border:1px solid var(--gold);color:var(--gold);
  padding:15px 30px;font-family:'Inter',sans-serif;font-size:.74rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;
  text-decoration:none;position:relative;overflow:hidden;transition:color .5s var(--ease);z-index:0}
.rj-home .rj-btn::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--gold);transform:translateY(101%);transition:transform .5s var(--ease)}
.rj-home .rj-btn:hover{color:var(--navy)} .rj-home .rj-btn:hover::after{transform:translateY(0)}
.rj-home .rj-btn--solid{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.rj-home .rj-btn--solid::after{background:var(--cream)}
.rj-home .rj-link{color:var(--cream);text-decoration:none;font-size:.8rem;letter-spacing:.1em;border-bottom:1px solid rgba(245,244,241,.3);padding-bottom:4px;transition:.3s}
.rj-home .rj-link:hover{color:var(--gold);border-color:var(--gold)}

/* reveal */
.rj-home [data-rj]{opacity:0;transform:translateY(36px)}

/* HERO */
.rj-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}
.rj-hero__bg{position:absolute;inset:0;z-index:0}
.rj-hero__bg img{position:absolute;top:-5%;left:0;width:100%;height:110%;object-fit:cover;object-position:center;filter:contrast(1.05) saturate(.92) brightness(.6);transform:none;will-change:transform}
.rj-hero__bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(6,32,51,.55),rgba(6,32,51,.35) 38%,rgba(6,32,51,.82)),
             radial-gradient(circle at 72% 38%,rgba(200,169,107,.12),transparent 55%)}
.rj-hero__in{position:relative;z-index:2;width:100%}
.rj-hero .rj-kicker{display:block;margin-bottom:26px;overflow:hidden}
.rj-hero .rj-kicker span{display:inline-block}
.rj-hero h1{font-size:clamp(2.6rem,5.4vw,4.9rem);max-width:16ch;margin-bottom:26px}
.rj-mask{display:block;overflow:hidden}.rj-mask span{display:block}
.rj-hero__sub{font-size:1.04rem;max-width:50ch;color:rgba(245,244,241,.82);margin-bottom:40px}
.rj-hero__cta{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.rj-scroll{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:3;font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(245,244,241,.5);display:flex;flex-direction:column;align-items:center;gap:10px}
.rj-scroll i{width:1px;height:46px;background:linear-gradient(var(--gold),transparent);animation:rjpulse 2.4s var(--ease) infinite}
@keyframes rjpulse{0%,100%{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}

/* TRUST STRIP */
.rj-trust{background:#04161f;border-top:1px solid rgba(200,169,107,.16);border-bottom:1px solid rgba(200,169,107,.16)}
.rj-trust .rj-wrap{display:flex;flex-wrap:wrap;gap:18px 40px;align-items:center;justify-content:space-between;padding:26px 40px}
.rj-trust__i{display:flex;align-items:center;gap:10px;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(245,244,241,.66)}
.rj-trust__i b{color:var(--gold);font-weight:600;font-size:.92rem}
.rj-trust__i .stars{color:var(--gold);letter-spacing:2px}

/* SECTION base */
.rj-sec{padding:130px 0;position:relative}
.rj-sec--cream{background:var(--cream);color:var(--ink)}
.rj-sec--cream h1,.rj-sec--cream h2,.rj-sec--cream h3{color:var(--navy)}
.rj-sec__head{margin-bottom:64px}
.rj-sec__head.center{text-align:center}
.rj-sec__head h2{font-size:clamp(2.1rem,4.4vw,3.6rem);margin-top:14px}

/* INTRO / WHY split */
.rj-split{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}
.rj-split p{margin-bottom:16px;max-width:52ch}
.rj-sec--cream .rj-split p{color:rgba(28,42,51,.82)}
.rj-why{list-style:none;padding:0;margin:26px 0 0}
.rj-why li{position:relative;padding:16px 0 16px 30px;border-top:1px solid rgba(28,42,51,.12);font-size:.98rem;color:rgba(28,42,51,.86)}
.rj-why li::before{content:"";position:absolute;left:0;top:24px;width:9px;height:9px;background:var(--gold);transform:rotate(45deg)}
.rj-why li b{color:var(--navy);font-weight:600}
.rj-figure{position:relative;aspect-ratio:4/5;overflow:hidden}
.rj-figure img{width:100%;height:100%;object-fit:cover;filter:contrast(1.03) saturate(.94)}
.rj-figure::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,transparent,rgba(6,32,51,.4))}
@media(max-width:880px){.rj-split{grid-template-columns:1fr;gap:44px}}

/* SIGNATURE TREATMENTS grid */
.rj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rj-card{position:relative;aspect-ratio:3/4;overflow:hidden;text-decoration:none;display:block}
.rj-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.6) contrast(1.05) saturate(.85);transition:transform 1.1s var(--ease),filter .6s}
.rj-card:hover img{transform:scale(1.07);filter:brightness(.72)}
.rj-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(6,32,51,.9))}
.rj-card__b{position:absolute;left:26px;right:26px;bottom:24px;z-index:2}
.rj-card__b h3{font-size:1.55rem;color:var(--cream);margin-bottom:4px}
.rj-card__b span{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);opacity:0;transform:translateY(8px);transition:.5s var(--ease);display:inline-block}
.rj-card:hover .rj-card__b span{opacity:1;transform:translateY(0)}
.rj-more{text-align:center;margin-top:56px}
@media(max-width:880px){.rj-grid{grid-template-columns:1fr 1fr;gap:14px}}
@media(max-width:560px){.rj-grid{grid-template-columns:1fr}}

/* TWO-DISCIPLINE category blocks */
.rj-grid--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1080px){.rj-grid--4{grid-template-columns:repeat(2,1fr);gap:14px}}
@media(max-width:560px){.rj-grid--4{grid-template-columns:1fr}}
.rj-cat{margin-top:70px}
.rj-cat:first-of-type{margin-top:0}
.rj-cat__head{display:flex;justify-content:space-between;align-items:flex-end;gap:34px;margin-bottom:32px;padding-bottom:22px;border-bottom:1px solid rgba(200,169,107,.22)}
.rj-cat__txt .rj-kicker{display:block}
.rj-cat__head h3{font-size:clamp(1.7rem,3vw,2.5rem);color:var(--cream);margin:12px 0 10px}
.rj-cat__head p{color:rgba(245,244,241,.66);max-width:50ch;font-size:.97rem;margin:0}
.rj-cat__head .rj-link{white-space:nowrap;flex:0 0 auto}
@media(max-width:880px){.rj-cat__head{flex-direction:column;align-items:flex-start;gap:16px}.rj-cat{margin-top:54px}}

/* MEET DR NICK */
.rj-doc{background:#04161f}
.rj-doc .rj-split{gap:70px;grid-template-columns:.85fr 1.15fr}
.rj-doc__img{position:relative;aspect-ratio:3/4;overflow:hidden}
.rj-doc__img img{width:100%;height:100%;object-fit:cover;object-position:top center;filter:contrast(1.04) saturate(.95) brightness(.92)}
.rj-doc__img .rj-tag{position:absolute;left:22px;bottom:22px;background:rgba(6,32,51,.8);backdrop-filter:blur(8px);border:1px solid rgba(200,169,107,.3);padding:13px 18px}
.rj-doc__img .rj-tag .n{font-family:'Cormorant Garamond',serif;font-size:1.3rem;color:var(--cream)}
.rj-doc__img .rj-tag .t{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.rj-doc h2{font-size:clamp(2.1rem,4vw,3.4rem);margin:16px 0 8px}
.rj-doc .sub{font-size:1rem;color:var(--gold);letter-spacing:.04em;margin-bottom:22px}
.rj-doc p{color:rgba(245,244,241,.74);margin-bottom:16px;max-width:54ch}
@media(max-width:880px){.rj-doc .rj-split{grid-template-columns:1fr}}

/* PARTNERS */
.rj-partners{background:var(--cream);color:var(--ink);text-align:center;padding:90px 0}
.rj-partners .rj-kicker{color:#9a8048}
.rj-partners__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:46px;margin-top:40px}
.rj-partners__row img{height:46px;width:auto;object-fit:contain;filter:grayscale(1);opacity:.62;transition:.4s}
.rj-partners__row img:hover{filter:grayscale(0);opacity:1}

/* REVIEWS */
.rj-reviews{text-align:center}
.rj-reviews__score{font-family:'Cormorant Garamond',serif;font-size:3.4rem;color:var(--gold);line-height:1}
.rj-reviews__stars{color:var(--gold);letter-spacing:4px;font-size:1.1rem;margin:6px 0 4px}
.rj-reviews__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:54px;text-align:left}
.rj-quote{border:1px solid rgba(200,169,107,.2);padding:30px;background:rgba(255,255,255,.02)}
.rj-quote p{color:rgba(245,244,241,.8);font-size:.96rem;margin-bottom:18px}
.rj-quote .who{font-family:'Cormorant Garamond',serif;font-size:1.2rem;color:var(--cream)}
.rj-quote .g{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
@media(max-width:880px){.rj-reviews__cards{grid-template-columns:1fr}}

/* CALL-BACK form wrapper (the form itself is styled cinematically by rj-derm-cinematic.css → .rjc-cbform) */
.rj-cbform-wrap{max-width:760px;margin:0 auto}

/* The chrome's footer "Request a Call Back" band would render a second copy of the form below
   our dedicated body section — hide it on the home so the page only ever shows one form. */
.rjc-ftr__band{display:none!important}

/* CTA band */
.rj-cta{position:relative;text-align:center;padding:150px 0;overflow:hidden;background:var(--navy2)}
.rj-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(200,169,107,.14),transparent 60%)}
.rj-cta h2{font-size:clamp(2.4rem,5.4vw,4.4rem);max-width:20ch;margin:18px auto 22px;position:relative}
.rj-cta p{color:rgba(245,244,241,.76);max-width:46ch;margin:0 auto 36px;position:relative}

/* TREATMENT JOURNEY */
.rj-journey{background:var(--navy)}
.rj-journey .rj-split{grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
.rj-journey__sticky{position:sticky;top:18vh}
.rj-journey__sticky h2{font-size:clamp(2rem,3.8vw,3.2rem);margin:14px 0 18px}
.rj-journey__sticky p{color:rgba(245,244,241,.72);max-width:40ch}
.rj-step{padding:38px 0;border-top:1px solid rgba(200,169,107,.16)}
.rj-step:last-child{border-bottom:1px solid rgba(200,169,107,.16)}
.rj-step .num{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--gold);letter-spacing:.1em}
.rj-step h3{font-size:1.7rem;color:var(--cream);margin:6px 0 8px}
.rj-step p{color:rgba(245,244,241,.66);max-width:46ch}
@media(max-width:880px){.rj-journey .rj-split{grid-template-columns:1fr;gap:22px}.rj-journey__sticky{position:relative;top:0}}

/* reduced motion */
@media(prefers-reduced-motion:reduce){
  .rj-home [data-rj]{opacity:1!important;transform:none!important}
  .rj-mask span,.rj-hero .rj-kicker span{transform:none!important}
  .rj-scroll i{animation:none}
}
