/* Interior layout variations: maintain Julep identity but avoid identical hero and section compositions. */
/* About: editorial portrait is flush to the edge rather than nested in a frame. */
.pp-about .pp-hero{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);min-height:710px}
.pp-about .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
/* Hormone health: image-first opening, copy follows on right. */
.pp-hormone-health .pp-hero{grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);background:linear-gradient(120deg,#0e3a43,#17313b)}
.pp-hormone-health .pp-hero-art{grid-column:1;grid-row:1}
.pp-hormone-health .pp-hero-content{grid-column:2;grid-row:1}
.pp-hormone-health .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
/* Functional and integrative care: broad photographic banner, not another framed 50/50 split. */
.pp-functional-integrative-care .pp-hero{position:relative;display:flex;align-items:center;min-height:660px;background:#052730}
.pp-functional-integrative-care .pp-hero-content{position:relative;z-index:2;width:min(720px,52%);margin-left:auto;padding:100px max(5vw,60px) 100px 38px}
.pp-functional-integrative-care .pp-hero-content h1{max-width:620px}
.pp-functional-integrative-care .pp-hero-lead{max-width:620px}
.pp-functional-integrative-care .pp-hero-art{position:absolute;inset:0;min-height:0;opacity:1}
.pp-functional-integrative-care .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
.pp-functional-integrative-care .pp-hero-art:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(4,29,35,.02) 0%,rgba(4,29,35,.08) 30%,rgba(4,29,35,.52) 52%,rgba(4,29,35,.91) 72%,rgba(4,29,35,.98) 100%)}
.pp-functional-integrative-care .pp-hero-art img{object-position:40% center}
.pp-functional-integrative-care .fi-medicine-shift{background:#e8f0eb}
.pp-functional-integrative-care .fi-medicine-shift .pp-split-copy{padding-top:82px;padding-bottom:82px}
.pp-functional-integrative-care .fi-medicine-shift .pp-split-img img{object-position:35% center}
.pp-functional-integrative-care .fi-institutions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 34px;width:100%;max-width:700px;margin-top:38px;padding-top:22px;border-top:1px solid rgba(20,70,72,.22)}
.pp-functional-integrative-care .fi-institutions span{display:flex;align-items:center;min-height:72px;padding:18px 2px;border-bottom:1px solid rgba(20,70,72,.2);font-size:17px;font-weight:800;line-height:1.15;letter-spacing:.08em;text-transform:uppercase;color:#173f45}
.pp-functional-integrative-care .fi-testing .pp-editorial{max-width:1100px}
.pp-functional-integrative-care .fi-testing .pp-editorial p{font-size:18px}
/* Labs: smaller, practical opening and flush image treatment. */
.pp-labs .pp-hero{min-height:525px;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr)}
.pp-labs .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
/* Insurance: less theatrical, shorter heading region. */
.pp-insurance .pp-hero{min-height:495px;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.pp-insurance .pp-hero-content{padding-top:68px;padding-bottom:68px}
.pp-insurance .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
/* Contact: location details should appear near the top, so the opening remains compact. */
.pp-contact .pp-hero{min-height:430px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.pp-contact .pp-hero-content{padding-top:65px;padding-bottom:65px}
.pp-contact .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
/* Telehealth: reverse layout with no image frame to distinguish it from clinic/insurance. */
.pp-telehealth .pp-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:575px}
.pp-telehealth .pp-hero-art{grid-column:1;grid-row:1}
.pp-telehealth .pp-hero-content{grid-column:2;grid-row:1}
.pp-telehealth .pp-hero-art figure{margin:0;border-radius:0;box-shadow:none}
/* Technology: more horizontal framing and a calmer, product-led hero. */
.pp-technology .pp-hero{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);min-height:610px}
.pp-technology .pp-hero-art figure{margin:60px 40px;border-radius:14px}
/* Lab menu: compact searchable catalog entry rather than another tall promotional hero. */
.pp-lab-menu .pp-hero{min-height:410px;grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr)}
.pp-lab-menu .pp-hero-content{padding-top:60px;padding-bottom:60px}
.pp-lab-menu .pp-hero-art figure{margin:20px;border-radius:12px}
@media(max-width:760px){
 .pp-about .pp-hero,.pp-hormone-health .pp-hero,.pp-labs .pp-hero,.pp-insurance .pp-hero,.pp-contact .pp-hero,.pp-telehealth .pp-hero,.pp-technology .pp-hero,.pp-lab-menu .pp-hero{display:flex;flex-direction:column;min-height:0}
 .pp-hormone-health .pp-hero-art,.pp-hormone-health .pp-hero-content,.pp-telehealth .pp-hero-art,.pp-telehealth .pp-hero-content{grid-column:auto;grid-row:auto}
 .pp-hormone-health .pp-hero-content,.pp-telehealth .pp-hero-content{order:0}
 .pp-hormone-health .pp-hero-art,.pp-telehealth .pp-hero-art{order:1}
 .pp-functional-integrative-care .pp-hero{min-height:0;display:flex;flex-direction:column;align-items:stretch;background:#052730}
 .pp-functional-integrative-care .pp-hero-content{order:2;width:100%;margin-left:0;padding:42px 22px 56px;background:#052730}
 .pp-functional-integrative-care .pp-hero-art{order:1;position:relative;inset:auto;opacity:1;height:310px;min-height:310px;max-height:310px}
 .pp-functional-integrative-care .pp-hero-art:after{background:linear-gradient(180deg,rgba(4,29,35,0) 62%,rgba(4,29,35,.18) 100%)}
 .pp-functional-integrative-care .pp-hero-art img{object-position:31% center}
 .pp-functional-integrative-care .fi-institutions{grid-template-columns:1fr;gap:0;margin-top:30px;padding-top:12px}
 .pp-functional-integrative-care .fi-institutions span{min-height:0;padding:17px 0;font-size:15px;letter-spacing:.065em}
 .pp-functional-integrative-care .fi-medicine-shift .pp-split-copy{padding-top:58px;padding-bottom:65px}
 .pp-about .pp-hero-art figure,.pp-hormone-health .pp-hero-art figure,.pp-labs .pp-hero-art figure,.pp-insurance .pp-hero-art figure,.pp-contact .pp-hero-art figure,.pp-telehealth .pp-hero-art figure{margin:0;border-radius:0;min-height:300px}
 .pp-technology .pp-hero-art figure,.pp-lab-menu .pp-hero-art figure{margin:16px 22px 24px}
}


/* v15 insurance page: compact overview intro instead of full service hero */
.insurance-intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:clamp(24px,4vw,46px);align-items:start;padding:48px max(5vw,40px) 34px;max-width:1380px;margin:0 auto}
.insurance-intro-copy{padding-top:10px}
.insurance-intro h1{font-size:clamp(46px,5vw,72px);line-height:.96;letter-spacing:-.05em;color:var(--ink);max-width:760px}
.insurance-intro-lead{font-size:18px;line-height:1.72;color:#486168;max-width:760px;margin-top:18px}
.insurance-intro .pp-actions{margin-top:28px;flex-wrap:wrap}
.insurance-intro .button.secondary{background:transparent;color:var(--ink);border:1px solid rgba(7,29,38,.16)}
.insurance-intro-aside{display:grid;gap:18px}
.insurance-intro-aside figure{margin:0;border-radius:24px;overflow:hidden;box-shadow:0 22px 58px rgba(7,29,38,.12)}
.insurance-intro-aside img{display:block;width:100%;height:320px;object-fit:cover}
.insurance-quick-card{background:#f4f8f5;border:1px solid #d8e5de;border-radius:24px;padding:26px 26px 28px;box-shadow:0 14px 42px rgba(7,29,38,.05)}
.insurance-quick-card h2{font-size:clamp(28px,2.5vw,38px);line-height:1.08;letter-spacing:-.04em;color:var(--ink);max-width:12ch}
.insurance-quick-card p:last-child{font-size:16px;line-height:1.72;color:#4a6468;margin-top:14px}
.pp-insurance .pp-split.reverse{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
.pp-insurance .pp-split.reverse .pp-split-img{min-height:400px}
.pp-insurance .pp-split.reverse .pp-split-img img{object-fit:cover;object-position:center}
@media(max-width:980px){.insurance-intro{grid-template-columns:1fr}.insurance-intro-aside{grid-template-columns:1fr 1fr;align-items:start}.insurance-intro-aside img{height:280px}.insurance-quick-card h2{max-width:none}}
@media(max-width:760px){.insurance-intro{padding:34px 22px 24px}.insurance-intro h1{font-size:44px}.insurance-intro-lead{font-size:16px}.insurance-intro .pp-actions{margin-top:22px}.insurance-intro .button{width:100%;text-align:center}.insurance-intro-aside{grid-template-columns:1fr}.insurance-intro-aside img{height:240px}.insurance-quick-card{padding:22px 20px 24px}.insurance-quick-card h2{font-size:28px}}


/* v16 insurance: access card paired directly with stethoscope image */
.insurance-intro{grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center}
.insurance-intro-aside{display:block}
.insurance-intro-aside figure{margin:0}
.insurance-intro-aside img{height:360px}
.insurance-choice-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;max-width:1380px;margin:0 auto 90px;padding:0 max(5vw,40px);gap:0}
.insurance-choice-image{margin:0;min-width:0;overflow:hidden;border-radius:28px 0 0 28px;background:#e7eeea}
.insurance-choice-image picture,.insurance-choice-image img{display:block;width:100%;height:100%}
.insurance-choice-image img{object-fit:cover;object-position:center;min-height:430px}
.insurance-choice-card{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#082e38,#113f48);color:#fff;padding:clamp(42px,5.5vw,82px);border-radius:0 28px 28px 0}
.insurance-choice-card .pp-kicker{color:#86e2ca}
.insurance-choice-card h2{font-size:clamp(38px,4.2vw,62px);line-height:1.02;letter-spacing:-.05em;color:#fff;max-width:680px;text-wrap:balance}
.insurance-choice-card p:last-child{font-size:17px;line-height:1.72;color:rgba(255,255,255,.82);max-width:650px;margin-top:22px}
@media(max-width:980px){
  .insurance-intro{grid-template-columns:1fr}
  .insurance-intro-aside img{height:300px}
  .insurance-choice-feature{grid-template-columns:1fr;gap:0}
  .insurance-choice-image{border-radius:24px 24px 0 0}
  .insurance-choice-image img{min-height:320px;max-height:420px}
  .insurance-choice-card{border-radius:0 0 24px 24px;padding:48px 34px}
}
@media(max-width:760px){
  .insurance-intro-aside img{height:240px}
  .insurance-choice-feature{margin-bottom:65px;padding:0 22px}
  .insurance-choice-image img{min-height:245px;max-height:300px}
  .insurance-choice-card{padding:36px 24px 40px}
  .insurance-choice-card h2{font-size:36px}
  .insurance-choice-card p:last-child{font-size:16px}
}

/* v25: real portal trend view beside Technology > Lab review support. */
.pp-technology .tech-lab-review-card{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:18px;align-items:start}
.pp-technology .tech-lab-review-card .pp-card-index{margin-bottom:26px}
.pp-technology .tech-lab-review-image{margin:0;border-radius:12px;overflow:hidden;align-self:stretch;background:#eef2ef;min-height:190px}
.pp-technology .tech-lab-review-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:760px){.pp-technology .tech-lab-review-card{grid-template-columns:minmax(0,1fr) 100px}.pp-technology .tech-lab-review-image{min-height:170px}}
@media(max-width:460px){.pp-technology .tech-lab-review-card{grid-template-columns:1fr}.pp-technology .tech-lab-review-image{height:280px}}

/* v48: Contact page compact, text-only header. */
.pp-contact .hero-contact{display:block;min-height:0}
.pp-contact .hero-contact .pp-hero-content{max-width:1100px;padding:48px max(5vw,28px) 52px}
.pp-contact .hero-contact h1{font-size:clamp(42px,4.5vw,64px)}
.pp-contact .hero-contact .pp-hero-lead{margin-top:18px}
.pp-contact .hero-contact .pp-actions{margin-top:24px}
@media(max-width:760px){
 .pp-contact .hero-contact .pp-hero-content{padding:38px 20px 42px}
 .pp-contact .hero-contact h1{font-size:clamp(40px,10vw,52px)}
}
