/* ===================================================================
   Advanced Pain Solutions — inner page stylesheet
   Loaded AFTER style.css. Reuses the same tokens (--navy, --gold, etc.)
   Covers: breadcrumb + page hero, Our Doctors, Our Services,
   Contact Us, and the Back Pain condition-detail page.
=================================================================== */
/*==================================================
OUR DOCTORS HERO
==================================================*/

.page-hero{
    position:relative;
    overflow:hidden;
    background:#071A37;
    padding:0;
}

.page-hero .container{
    max-width:1280px;
    margin:0 auto;
    padding:0;
}

/*==========================
Breadcrumb
==========================*/

.breadcrumb{
    position:absolute;
    top:38px;
    left:60px;
    z-index:10;
    display:flex;
    align-items:center;
    gap:10px;
    font-size:14px;
    font-weight:500;
}

.breadcrumb a{
    color:rgba(255,255,255,.85);
    text-decoration:none;
    transition:.3s;
}

.breadcrumb a:hover{
    color:#fff;
}

.breadcrumb .sep{
    color:#C89C55;
}

.breadcrumb .current{
    color:#C89C55;
}

/*==========================
Layout
==========================*/

.page-hero-inner{
    display:grid;
    grid-template-columns:45% 55%;
    min-height:400px;
    align-items:stretch;
}

/*==========================
Content
==========================*/

.page-hero-copy{
    position:relative;
    z-index:2;

    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:80px 60px;

    background:linear-gradient(
        90deg,
        #071A37 0%,
        #071A37 76%,
        rgba(7,26,55,.95) 88%,
        rgba(7,26,55,.55) 96%,
        transparent 100%
    );
}

.page-hero-copy h1{
    margin:0;
    color:#fff;
   
    font-size:50px;
    font-weight:400;
    line-height:1.1;
}

.page-hero-copy h1::after{
    content:"";
    display:block;
    width:58px;
    height:2px;
    background:#C89C55;
    margin:22px 0 26px;
}

.page-hero-sub{
    margin:0 0 20px;
    max-width:400px;

    color:#fff;

    font-family:"Marcellus", Georgia, serif;
    font-size:21px;
    line-height:1.45;
}

.page-hero-desc{
    max-width:400px;

    margin:0;

    color:rgba(255,255,255,.82);

    font-size:16px;
    line-height:1.8;
}

/*==========================
Image
==========================*/

.page-hero-media{
    position:relative;
    overflow:hidden;
}

.page-hero-media img{
    width:100%;
    height:100%;
    display:block;

    object-fit:cover;
    object-position:center;

    transform:scale(1.04);
    transition:.6s;
}

.page-hero-media::before{
    content:"";
    position:absolute;
    inset:0;

    background:linear-gradient(
        90deg,
        rgba(7,26,55,.15),
        rgba(7,26,55,0)
    );

    z-index:1;
}

/*==========================
Hover
==========================*/

.page-hero:hover .page-hero-media img{
    transform:scale(1.07);
}

/*==========================
Tablet
==========================*/

@media(max-width:1200px){

.page-hero-inner{
    grid-template-columns:1fr;
}

.breadcrumb{
    left:40px;
    top:32px;
}

.page-hero-copy{
    padding:70px 45px;
    background:#071A37;
}

.page-hero-copy h1{
    font-size:50px;
}

.page-hero-sub{
    font-size:20px;
}

.page-hero-media{
    height:380px;
}

}

/*==========================
Mobile
==========================*/

@media(max-width:767px){

.breadcrumb{
    position:relative;
    top:auto;
    left:auto;

    padding:20px 20px 0;
}

.page-hero-copy{

    padding:40px 20px 45px;

}

.page-hero-copy h1{

    font-size:40px;

}

.page-hero-copy h1::after{

    margin:18px 0 20px;

}

.page-hero-sub{

    font-size:18px;

}

.page-hero-desc{

    font-size:15px;

    line-height:1.7;

}

.page-hero-media{

    height:260px;

}

}
/* ---------- Shared "intro" heading block used on several pages ---------- */
.page-intro{
  max-width:640px;
  margin:0 auto 46px;
  text-align:center;
}
.page-intro .eyebrow{justify-content:center;display:block;}
.page-intro h2{font-size:2rem;margin-bottom:14px;}
.page-intro p{color:var(--muted);font-size:15px;line-height:1.7;margin:0;}

.btn-outline-navy{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 20px;
  border:1px solid var(--navy);
  color:var(--navy);
  border-radius:6px;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  transition:.25s;
}
.btn-outline-navy:hover{background:var(--navy);color:#fff;}

/* =========================================================
   OUR DOCTORS PAGE
========================================================= */
/*==================================================
MEET OUR PHYSICIANS
==================================================*/

/*==================================================
MEET OUR PHYSICIANS
==================================================*/

.doctors{
    position:relative;
    padding:60px 0 0;
    background:#fff;
}

/* footer.php's sitewide scroll-reveal script tags every <section> with
   .reveal-up (opacity:0 until an IntersectionObserver crosses a 15%-of-
   the-element-area threshold). The doctors grid section is taller than
   any viewport can show 15% of at once (especially on mobile, where it
   stacks to a single column), so that threshold never fires and the
   whole doctor list stays invisible — override it to render immediately
   instead of trying to animate it in. */
.doctors.reveal-up{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
}

.doctors .container{
    max-width:1280px;
    margin:0 auto;
    padding:0 40px;
}

/*---------------------------------------
SECTION INTRO
---------------------------------------*/

.page-intro{
    max-width:700px;
    margin:0 auto 48px;
    text-align:center;
}

.page-intro .eyebrow{
    display:block;
    margin-bottom:10px;
    color:#B88A45;
    font-size:12px;
    font-weight:700;
    letter-spacing:2.4px;
    text-transform:uppercase;
}

.page-intro h2{
    margin:0 0 14px;
    font-family:"Marcellus", Georgia, serif;
    font-size:30px;
    font-weight:400;
    line-height:1.25;
    color:#081B36;
}

.page-intro p{
    max-width:560px;
    margin:0 auto;
    font-size:15px;
    line-height:1.75;
    color:#616A78;
}

/*---------------------------------------
DOCTORS GRID
---------------------------------------*/

.doctors-grid{

    display:grid;

    grid-template-columns:repeat(4,minmax(0,1fr));

    gap:22px;

}

/*---------------------------------------
CARD
---------------------------------------*/

.doctor-card{

    background:#fff;

    border:1px solid #E8E6E1;

    border-radius:8px;

    overflow:hidden;

    transition:.35s;

    box-shadow:0 2px 12px rgba(0,0,0,.04);

}

.doctor-card:hover{

    transform:translateY(-5px);

    box-shadow:0 16px 34px rgba(0,0,0,.08);

}

/*---------------------------------------
IMAGE
---------------------------------------*/

.doctor-photo{

    width:100%;

    height:240px;

    display:block;

    object-fit:cover;

    object-position:center;

}

/*---------------------------------------
BODY
---------------------------------------*/

.doctor-body{

    padding:18px;

}

.doctor-body h3{

    margin:0;

    color:#081B36;

    font-family:"Marcellus", Georgia, serif;

    font-size:17px;

    font-weight:400;

    line-height:1.35;

}

.doctor-specialty{

    display:block;

    margin:8px 0 14px;

    color:#081B36;

    font-size:12px;

    font-weight:700;

    line-height:1.5;

}

.doctor-specialty::after{

    content:"";

    display:block;

    width:34px;

    height:2px;

    background:#C79B54;

    margin-top:10px;

}

.doctor-body p{

    margin:0;

    color:#5F6775;

    font-size:15px;

    line-height:1.85;

}

/*---------------------------------------
RESPONSIVE
---------------------------------------*/

@media(max-width:1200px){

.doctors-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:767px){

.doctors{

    padding:60px 0;

}

.doctors .container{

    padding:0 20px;

}

.page-intro{

    margin-bottom:35px;

}

.page-intro h2{

    font-size:26px;

}

.page-intro p{

    font-size:14px;

}

.doctors-grid{

    grid-template-columns:1fr;

    gap:20px;

}

.doctor-photo{

    height:280px;

}

}

/*==================================================
PART 2
DOCTOR CARD DETAILS
==================================================*/

/*----------------------------------
CARD CONTENT
-----------------------------------*/

.doctor-body{
    display:flex;
    flex-direction:column;
  
}

.doctor-body h3{
    margin-bottom:8px;
    transition:.3s;
}

.doctor-card:hover h3{
    color:#B88A45;
}

.doctor-specialty{
    position:relative;
    padding-bottom:16px;
    margin-bottom:18px;
}

.doctor-specialty::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:36px;
    height:2px;
    background:#C89C55;
}

.doctor-body p{font-size:15px;
    flex:1;
    margin-bottom:22px;
}

/*----------------------------------
VIEW PROFILE BUTTON
-----------------------------------*/

.btn-outline-navy{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    width:max-content;

    padding:11px 18px;

    border:1px solid #0A2245;
    border-radius:4px;

    background:#fff;

    color:#081B36;

    text-decoration:none;

    font-size:11px;
    font-weight:700;
    letter-spacing:.8px;
    text-transform:uppercase;

    transition:all .35s ease;
}

.btn-outline-navy span{
    transition:.35s;
}

.btn-outline-navy:hover{
    background:#081B36;
    color:#fff;
    border-color:#081B36;
}

.btn-outline-navy:hover span{
    transform:translateX(4px);
}

/*----------------------------------
CARD HOVER
-----------------------------------*/

.doctor-card{
    position:relative;
}

.doctor-card::before{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:3px;

    background:#C89C55;

    transform:scaleX(0);

    transform-origin:left;

    transition:.35s;

}

.doctor-card:hover::before{

    transform:scaleX(1);

}

.doctor-card:hover{

    border-color:#D8CCB6;

}

/*----------------------------------
FEATURE STRIP
-----------------------------------*/

.doctor-features{

    margin-top:80px;

    padding:55px 0;

    border-top:1px solid #ECE7DF;

    border-bottom:1px solid #ECE7DF;

    background:#fff;

}

.doctor-features-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:0;

}

.feature-item{

    text-align:center;

    padding:0 28px;

    position:relative;

}

.feature-item:not(:last-child)::after{

    content:"";

    position:absolute;

    right:0;
    top:12px;

    width:1px;
    height:85px;

    background:#ECE7DF;

}

/*----------------------------------
FEATURE ICON
-----------------------------------*/

.feature-icon{

    width:56px;
    height:56px;

    margin:0 auto 18px;

    border-radius:50%;

    border:1px solid #DCC8A0;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#C89C55;

    font-size:22px;

    font-weight:600;

}

.feature-item h4{

    margin:0 0 10px;

    font-family:"Marcellus", Georgia, serif;

    font-size:18px;

    font-weight:400;

    color:#081B36;

}

.feature-item p{

    margin:0;

    font-size:15px;

    line-height:1.8;

    color:#666F7A;

}

/*----------------------------------
RESPONSIVE
-----------------------------------*/

@media(max-width:1200px){

.doctor-features-grid{

    grid-template-columns:repeat(2,1fr);

    gap:40px;

}

.feature-item::after{

    display:none;

}

}

@media(max-width:767px){

.doctor-body{

    min-height:auto;

}

.btn-outline-navy{

    width:100%;

}

.doctor-features{

    margin-top:60px;

    padding:45px 0;

}

.doctor-features-grid{

    grid-template-columns:1fr;

    gap:35px;

}

.feature-item{

    padding:0;

}

}
/*==================================================
PART 3
FINISHING TOUCHES
==================================================*/

/*----------------------------------
SECTION BACKGROUND
-----------------------------------*/

.doctors{
    position:relative;
    overflow:hidden;
}

.doctors::before{

    content:"";

    position:absolute;

    left:-180px;
    top:120px;

    width:420px;
    height:420px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(200,156,85,.06) 0%,
        rgba(200,156,85,.03) 40%,
        transparent 75%);

    pointer-events:none;

}

.doctors::after{

    content:"";

    position:absolute;

    right:-220px;
    bottom:80px;

    width:500px;
    height:500px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(8,27,54,.03) 0%,
        transparent 75%);

    pointer-events:none;

}

/*----------------------------------
INTRO ANIMATION
-----------------------------------*/

.page-intro{

    animation:fadeUp .7s ease;

}

.doctor-card{

    animation:fadeUp .7s ease;

}

.doctor-card:nth-child(2){

    animation-delay:.08s;

}

.doctor-card:nth-child(3){

    animation-delay:.16s;

}

.doctor-card:nth-child(4){

    animation-delay:.24s;

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(30px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*----------------------------------
IMAGE HOVER
-----------------------------------*/

.doctor-photo{

    transition:transform .6s ease;

}

.doctor-card:hover .doctor-photo{

    transform:scale(1.04);

}

/*----------------------------------
CARD SHADOW
-----------------------------------*/

.doctor-card{

    box-shadow:
    0 2px 10px rgba(0,0,0,.04),
    0 18px 35px rgba(0,0,0,.03);

}

.doctor-card:hover{

    box-shadow:
    0 8px 22px rgba(0,0,0,.08),
    0 24px 45px rgba(0,0,0,.10);

}

/*----------------------------------
FEATURE ICON
-----------------------------------*/

.feature-icon{

    transition:.35s;

}

.feature-item:hover .feature-icon{

    background:#081B36;

    color:#fff;

    border-color:#081B36;

    transform:translateY(-4px);

}

/*----------------------------------
FEATURE TITLE
-----------------------------------*/

.feature-item h4{

    transition:.3s;

}

.feature-item:hover h4{

    color:#B88A45;

}

/*----------------------------------
BETTER SPACING
-----------------------------------*/

.page-intro{

    padding-bottom:8px;

}

.doctors-grid{

    margin-bottom:0;

}

.doctor-features{

    margin-top:90px;

}

/*----------------------------------
RESPONSIVE
-----------------------------------*/

@media(max-width:1200px){

.page-intro{

    max-width:620px;

}

.doctor-card{

    max-width:420px;

    margin:0 auto;

}

.doctor-features{

    margin-top:70px;

}

}

@media(max-width:991px){

.doctors{

    padding-top:60px;

}

.page-intro{

    margin-bottom:40px;

}

.page-intro h2{

    font-size:28px;

}

.doctor-photo{

    height:260px;

}

}

@media(max-width:767px){

.doctors{

    padding-top:50px;

}

.page-intro{

    margin-bottom:35px;

}

.page-intro h2{

    font-size:24px;

}

.page-intro p{

    font-size:14px;

}

.doctor-photo{

    height:240px;

}

.doctor-body{

    padding:16px;

}

.doctor-body h3{

    font-size:16px;

}

.doctor-specialty{

    font-size:11px;

}

.doctor-body p{

    font-size:13px;

}

.doctor-features{

    margin-top:50px;

    padding:40px 0;

}

.feature-item{

    max-width:320px;

    margin:0 auto;

}

.feature-item h4{

    font-size:17px;

}

.feature-item p{

    font-size:13px;

}

}

/*----------------------------------
REDUCED MOTION
-----------------------------------*/

@media (prefers-reduced-motion: reduce){

*{

    animation:none !important;

    transition:none !important;

}

}
/* =========================================================
   OUR SERVICES PAGE
========================================================= */
.services-section{padding:60px 0;background:#fff;}

.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px 26px;
  margin-bottom:50px;
}
.service-card{
  position:relative;
  background:#fff;
  border:1px solid #ece8dd;
  border-radius:16px;
  overflow:hidden;
  transition:.35s;
}
.service-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(10,25,50,.12);
}
.service-card:hover .service-card-media img{
  transform:scale(1.06);
}
.service-card-media{
  position:relative;
  height:230px;
  overflow:hidden;
}
.service-card-media img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}

/* Category pill, straddling the image/body seam like the reference.
   Positioned relative to .service-card (not .service-card-media, which
   has overflow:hidden to contain the hover zoom) so it isn't clipped. */
.service-card-tag{
  position:absolute;
  left:20px;
  top:214px;
  z-index:2;
  background:var(--navy);
  color:#fff;
  font-size:.68rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  padding:8px 16px;
  border-radius:30px;
  box-shadow:0 8px 18px rgba(10,25,50,.22);
}

.service-card-body{padding:34px 22px 24px;}
.service-card-body h3{
  font-family:"Roboto", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size:1.3rem;
  font-weight:700;
  line-height:1.3;
  letter-spacing:-0.01em;
  margin:0 0 10px;
  color:var(--navy);
}
.service-card-body p{
  font-size:15px;
  color:var(--muted);
  line-height:1.65;
  margin:0 0 20px;
}
.learn-more{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:var(--gold);
  font-size:.78rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.learn-more:hover{color:var(--gold);}
.learn-more-arrow{
  flex-shrink:0;
  width:34px;
  height:34px;
  border-radius:50%;
  border:1px solid #e3ddd0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  color:var(--navy);
  transition:.3s;
}
.learn-more:hover .learn-more-arrow{
  background:var(--gold);
  border-color:var(--gold);
  color:#fff;
  transform:rotate(45deg);
}

.notsure-banner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    background: #f5f6fa;
    border-radius: 12px;
    padding: 39px 34px;
}
.notsure-left{display:flex;align-items:center;gap:20px;}
.notsure-icon{
     width: 85px;
    height: 85px;
    flex: none;
    border-radius: 50px;
    background: #fff;
    border: 1px solid #e6e3da;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--navy);
}
.notsure-left h4{margin:0 0 4px;font-size:1rem;color:var(--navy);}
.notsure-left p {
    margin: 0;
    font-size:15px;
    /* font-weight: 500; */
    color: #3f434e;
    max-width: 549px;
}

@media (max-width:992px){
  .services-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:576px){
  .services-grid{grid-template-columns:1fr;}
  .notsure-banner{flex-direction:column;align-items:flex-start;}
}

/* =========================================================
   CONTACT US PAGE
========================================================= */
.contact-section{padding:70px 0 60px;background:#fff;}
.contact-grid{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:36px;
  margin-bottom:60px;
}
//*==================================================
CONTACT SECTION
==================================================*/

.contact-section{
    padding:60px 0 70px;
    background:#fff;
}

.contact-grid{
    display:grid;
    grid-template-columns:0.92fr 1.08fr;
    gap:56px;
    align-items:start;
}

/*==================================================
INTRO (LEFT COLUMN)
==================================================*/

.contact-eyebrow{
    display:flex;
    align-items:center;
    gap:10px;
    color:#C89C55;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:.72rem;
    font-weight:700;
    margin-bottom:14px;
}
.contact-eyebrow::before{
    content:"";
    width:26px;
    height:2px;
    background:#C89C55;
    display:inline-block;
}

.contact-heading{
    margin:0 0 16px;
    font-family:"Marcellus", Georgia, serif;
    font-size:2.4rem;
    font-weight:400;
    line-height:1.15;
    color:#071A37;
}

.contact-lead{
    margin:0 0 30px;
    font-size:15px;
    line-height:1.75;
    color:#6B7280;
    max-width:460px;
}

.quick-info-list{
    border-top:1px solid #ece8dd;
}

.notsure-callout{
    margin-top:28px;
    padding:20px 24px;
    background:#F7F6F2;
    border-left:3px solid #C89C55;
    border-radius:8px;
}
.notsure-callout h4{
    margin:0 0 6px;
    font-family:"Roboto", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    font-weight:700;
    font-size:.95rem;
    color:#071A37;
}
.notsure-callout p{
    margin:0;
    font-size:15px;
    line-height:1.6;
    color:#6B7280;
}

/*==================================================
CARDS
==================================================*/

.contact-card{
    background:#fff;
    border:1px solid #ebe7de;
    border-radius:16px;
    padding:34px;
    box-shadow:0 20px 50px rgba(10,25,50,.06);
}

.contact-card h2,
.info-card h2{
    margin:0;
    font-family:"Marcellus", Georgia, serif;
    font-size:24px;
    font-weight:400;
    color:#071A37;
    line-height:1.2;
}

.contact-card>p{
    margin:10px 0 22px;
    font-size:15px;
    line-height:1.7;
    color:#6B7280;
    max-width:520px;
}

.form-label{
    display:block;
    font-size:.82rem;
    font-weight:600;
    color:#071A37;
    margin-bottom:7px;
}
.form-label .req{
    color:#C89C55;
    margin-left:2px;
}

/*==================================================
FORM
==================================================*/

form{
    margin:0;
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.form-group{
    margin-bottom:18px;
}

.form-group.full{
    grid-column:1/-1;
}

.contact-card input,
.contact-card select,
.contact-card textarea{

    width:100%;

    border:1px solid #E6E1D7;

    border-radius:6px;

    background:#fff;

    color:#222;

    font-size:14px;

    font-family:inherit;

    padding:12px 15px;

    transition:.25s;

}

.contact-card input,
.contact-card select{

    height:46px;

}

.contact-card textarea{

    height:120px;

    resize:vertical;

}

.contact-card input::placeholder,
.contact-card textarea::placeholder{

    color:#888;

}

.contact-card input:focus,
.contact-card textarea:focus,
.contact-card select:focus{

    outline:none;

    border-color:#C89C55;

    box-shadow:0 0 0 3px rgba(200,156,85,.12);

}

/*==================================================
BUTTON
==================================================*/

.form-submit{

    display:inline-flex;

    align-items:center;

    gap:12px;

    width:auto;

    height:auto;

    padding:15px 30px;

    border:none;

    border-radius:8px;

    background:#071A37;

    color:#fff;

    font-family:"Roboto", "Segoe UI", "Helvetica Neue", Arial, sans-serif;

    font-size:14px;

    font-weight:700;

    text-transform:none;

    letter-spacing:0;

    cursor:pointer;

    transition:.3s;

}

.form-submit-arrow{
    transition:transform .3s;
}

.form-submit:hover{

    background:#C89C55;

}

.form-submit:hover .form-submit-arrow{
    transform:translateX(3px);
}

/*==================================================
INFO CARD
==================================================*/

.info-row{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:18px 0;
    border-bottom:1px solid #ece8dd;
}

.info-row:last-child{
    border-bottom:none;
}

.info-content{
    flex:1;
}

.info-content h4{
    margin:0 0 6px;
    font-size:17px;
    font-family:"Marcellus", Georgia, serif;
    font-weight:400;
    color:#071A37;
}

.info-content p{
    margin:0 0 8px;
    font-size:15px;
    line-height:1.6;
    color:#606774;
}

.inline-action{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    flex-wrap:wrap;
}

.inline-action span{
    font-size:14px;
    color:#606774;
}

.hours-text{
    display:flex;
    flex-direction:column;
    gap:4px;
    font-size:14px;
    color:#606774;
}

.link-blue{
    white-space:nowrap;
    font-size:13px;
    font-weight:600;
    color:#1D5FBF;
    text-decoration:none;
}

.link-blue:hover{
    color:#C89C55;
}

.info-row .info-icon{
    width:46px;
    height:46px;
    min-width:46px;
    border-radius:50%;
    background:#F7F6F2;
    border:1px solid #ECE8DD;
    display:flex;
    align-items:center;
    justify-content:center;
}

.info-row .info-icon img{
    width:20px;
    height:20px;
}

/*==================================================
TABLET
==================================================*/

@media(max-width:992px){

.contact-grid{

    grid-template-columns:1fr;

}

.info-card{

    margin-top:10px;

}

}

/*==================================================
MOBILE
==================================================*/

@media(max-width:767px){

.contact-section{

    padding:40px 0;

}

.contact-card{

    padding:20px;

}

.contact-card h2,
.info-card h2{

    font-size:22px;

}

.form-row{

    grid-template-columns:1fr;

    gap:0;

}

.contact-card input,
.contact-card select{

    height:44px;

}

.contact-card textarea{

    height:110px;

}

.form-submit{

    width:100%;

}

.info-row .info-icon{

    width:42px;

    height:42px;

    min-width:42px;

}

.info-row .info-icon img{

    width:18px;

    height:18px;

}

.info-row h4{

    font-size:16px;

}

.info-row p{

    font-size:13px;

}

}

.help-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  margin-bottom:56px;
}
.help-card{
  text-align:center;
  padding:28px 18px;
  border:1px solid #ece8dd;
  border-radius:12px;
}
.help-icon{
  width:52px;height:52px;
  margin:0 auto 16px;
  border-radius:50%;
  background:#f2f0e6;
  color:var(--navy);
  display:flex;align-items:center;justify-content:center;
}
.help-card h4{font-size:.95rem;margin:0 0 8px;color:var(--navy);}
.help-card p{font-size:15px;color:var(--muted);margin:0 0 12px;line-height:1.55;}
.help-card a{color:#1d5fbf;font-size:.8rem;font-weight:700;}

.map-section{position:relative;margin-bottom:0;border-radius:14px;overflow:hidden;}
.map-frame{
  width:100%;
  height:340px;
  border:0;
  display:block;
  filter:grayscale(.15);
}
.map-address-card{
  position:absolute;
  left:24px;
  top:24px;
  background:#fff;
  padding:16px 20px;
  border-radius:8px;
  box-shadow:0 12px 30px rgba(10,25,50,.18);
  display:flex;
  align-items:flex-start;
  gap:10px;
  max-width:220px;
  font-size:.8rem;
  color:var(--text);
}
.map-address-card strong{
  display:block;
  font-family:"Marcellus", Georgia, serif;
  font-size:.95rem;
  color:#071A37;
  margin-bottom:4px;
}
.map-address-card p{font-size:15px;margin:0 0 8px;line-height:1.5;color:#6B7280;}
.map-address-card a{color:#1d5fbf;font-weight:700;display:inline-block;margin-top:0;}

.contact-map-section{padding:0 0 80px;background:#fff;}
.maps-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}

.assistance-banner{
  background:var(--navy);
  padding:24px 0;
}
.assistance-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.assistance-left{display:flex;align-items:center;gap:18px;}
.assistance-icon{
  width:52px;height:52px;flex:none;
  border-radius:50%;
  border:1px solid var(--gold);
  color:var(--gold);
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;
}
.assistance-left h4{margin:0 0 4px;color:#fff;font-size:1rem;}
.assistance-left p{margin:0;color:#b8c3d1;font-size:15px;}
.assistance-right{display:flex;align-items:center;gap:18px;}
.assistance-phone{color:#fff;font-weight:700;font-size:1.1rem;}

@media (max-width:992px){
  .contact-grid{grid-template-columns:1fr;gap:40px;}
  .help-grid{grid-template-columns:repeat(2,1fr);}
  .maps-grid{grid-template-columns:1fr;}
}
@media (max-width:576px){
  .form-row{grid-template-columns:1fr;}
  .help-grid{grid-template-columns:1fr;}
  .map-address-card{left:16px;right:16px;max-width:none;}
  .contact-heading{font-size:1.9rem;}
  .form-submit{width:100%;justify-content:center;}
}

/* =========================================================
   BACK PAIN (condition detail) PAGE
========================================================= */
/*==================================================
BACK PAIN CONDITIONS
==================================================*/

.bp-condition-section{
    padding:50px 0 50px;
    background:#fff;
}

/*==========================
Heading
==========================*/

.bp-section-heading{
    max-width:650px;
    margin:0 auto 38px;
    text-align:center;
}

.bp-section-heading h2{
    margin:0 0 12px;
    font-family:"Marcellus", Georgia, serif;
    font-size:34px;
    font-weight:400;
    line-height:1.2;
    color:#071A37;
}

.bp-section-heading p{
    margin:0;
    color:#6B7280;
    font-size:15px;
    line-height:1.7;
}

/*==========================
Grid
==========================*/

.bp-condition-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}

/*==========================
Card
==========================*/

.bp-condition-card{

    display:flex;

    align-items:flex-start;

    gap:16px;

    background:#fbfbfc;

    border:1px solid #ECE8DD;

    border-radius:10px;

    padding:18px;

    min-height:118px;

    transition:.25s;

}

.bp-condition-card:hover{

    border-color:#D9C18A;

    box-shadow:0 8px 22px rgba(0,0,0,.05);

}

/*==========================
Icon
==========================*/

.bp-condition-icon{

  



    border-radius:50%;



    display:flex;

    align-items:center;

    justify-content:center;

}

.bp-condition-icon img{

    width:60px;

    height:60px;

    object-fit:contain;

}

/*==========================
Content
==========================*/

.bp-condition-content{

    flex:1;

}

.bp-condition-content h3{

    margin:2px 0 6px;

    font-family:"Marcellus", Georgia, serif;

    font-size:18px;

    font-weight:600;

    color:#071A37;

    line-height:1.3;

}

.bp-condition-content p{

    margin:0;

    color:#6B7280;

    font-size:15px;

    line-height:1.6;

}

/*==========================
Responsive
==========================*/

@media(max-width:991px){

.bp-condition-grid{

grid-template-columns:1fr;

}

}

@media(max-width:767px){

.bp-condition-section{

padding:50px 0;

}

.bp-section-heading{

margin-bottom:28px;

}

.bp-section-heading h2{

font-size:28px;

}

.bp-section-heading p{

font-size:14px;

}

.bp-condition-card{

padding:16px;

gap:14px;

min-height:auto;

}

.bp-condition-icon{

width:46px;

height:46px;

min-width:46px;

}

.bp-condition-icon img{

width:22px;

height:22px;

}

.bp-condition-content h3{

font-size:17px;

}

.bp-condition-content p{

font-size:13px;

line-height:1.55;

}

}


/*==================================================
BACK PAIN BENEFITS
==================================================*/

.bp-benefits-section{
    padding:20px 0 50px;
}

.bp-benefits-grid{



    border-radius:18px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    overflow:hidden;

}

.bp-benefit-item{

    padding:42px 28px;

    text-align:center;

    border-right:1px solid rgba(0,0,0,.08);

}

.bp-benefit-item:last-child{
    border-right:none;
}

.bp-benefit-icon{
    width: 100px;
    height: auto;
    margin: 0 auto 1px;
}



.bp-benefit-icon img{

    width: 70px;
    padding-bottom: 20px;
}

.bp-benefit-item h3 {
      margin: 0 0 4px;
    font-size: 19px;
    color: #13284B;
    font-weight: 600;
}

.bp-benefit-item p{

 margin: 0;
    color: #596577;
    font-size:15px;
    line-height: 25px;

}

/*==================================================
SPECIALIST SECTION
==================================================*/

.bp-specialist-section{

    padding:20px 0 90px;

}

.bp-specialist-grid{

    display:grid;

    grid-template-columns:1.2fr .8fr;

    gap:45px;

    align-items:start;

}

.bp-specialist-content h2{

    font-size:44px;

    margin-bottom:0px;

    color:#0f2344;

}

.bp-intro{

    font-size:17px;

    margin-bottom:16px;

    color:#6c7283;

}

.bp-check-list{

    list-style:none;

    padding:0;

    margin:0;

}

.bp-check-list li{

    position:relative;

    padding-left:34px;

    margin-bottom:10px;

    font-size:16px;

    color:#3c4657;

}

.bp-check-list li:before{

    content:"✓";

    position:absolute;

    left:0;

    top:0;

    width:22px;

    height:22px;

    border-radius:50%;

    background:#eef5ff;

    color:#4b74d8;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:13px;

}

/*==================================================
CTA
==================================================*/

.bp-assessment-card{

    background:#1d4c96;

    color:#fff;

    border-radius:18px;

    padding:40px;

}

.bp-assessment-icon{

    width:60px;

    margin-bottom:22px;

}

.bp-assessment-icon img{

    width:100%;

    filter:brightness(0) invert(1);

}

.bp-assessment-card h3{

    font-size:32px;

    line-height:1.3;

    margin-bottom:16px;

}

.bp-assessment-card p{

    font-size:15px;

    line-height:1.8;

    opacity:.95;

    margin-bottom:30px;

}

.bp-btn-assessment{

    display:inline-block;

    padding:14px 34px;

    background:#d8a84a;

    color:#fff;

    text-decoration:none;

    border-radius:6px;

    font-weight:600;

    text-transform:uppercase;

    letter-spacing:.8px;

}

.bp-btn-assessment:hover{

    background:#c89634;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

.bp-benefits-grid{

grid-template-columns:repeat(2,1fr);

}

.bp-benefit-item:nth-child(2){

border-right:none;

}

.bp-specialist-grid{

grid-template-columns:1fr;

}

}

@media(max-width:767px){

.bp-benefits-grid{

grid-template-columns:1fr;

}

.bp-benefit-item{

border-right:none;

border-bottom:1px solid rgba(0,0,0,.08);

}

.bp-benefit-item:last-child{

border-bottom:none;

}

.bp-specialist-content h2{

font-size:30px;

}

.bp-assessment-card{

padding:28px;

}

.bp-assessment-card h3{

font-size:24px;

}

}



/*=========================================
HELP SECTION
==========================================*/

.bp-help-section{

    padding:40px 0;

}

.bp-help-wrapper{

    display:grid;

    grid-template-columns:1.35fr .9fr;

    gap:55px;

    align-items:center;

}

.bp-help-tag{

display: inline-flex;
    align-items: center;
    padding: 7px 16px;
    background: #fbf5e8;
    color: #bb8a2d;
    border-radius: 30px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.4px;

}

.bp-help-left h2{

    font-size:34px;

    line-height:1.2;

    color:#12284A;

    margin-bottom:18px;

}

.bp-help-intro{

     font-size: 15px;
    color: #617086;
    line-height: 26px;
    margin-bottom: 16px;

}

.bp-help-list{

    list-style:none;

    padding:0;

    margin:0;

}

.bp-help-list li{

     position: relative;
    padding-left: 34px;
    margin-bottom: 16px;
    font-size: 15px;
    color: #34435A;
    line-height: 20px;

}

.bp-help-list li:before{

    content:"✓";

    position:absolute;

    left:0;

    top:2px;

    width:22px;

    height:22px;

    border-radius:50%;

    background:#EEF4FF;

    color:#2E63C7;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:13px;

    font-weight:bold;

}

.bp-help-note{

    margin-top:35px;

    padding:20px 24px;

    background:#F8FBFF;

    border-left:4px solid #2E63C7;

    border-radius:8px;

    color:#24344C;

    font-size:15px;

    line-height:1.8;

}

/* RIGHT */

.bp-help-right{

    background:linear-gradient(135deg,#08182d,#163D81);

    border-radius:22px;

    padding:33px;

    color:#fff;

    position:relative;

    overflow:hidden;

}

.bp-help-right:before{

    content:"";

    position:absolute;

    width:260px;

    height:260px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

    right:-90px;

    top:-90px;

}

.bp-help-icon{

    margin-bottom:25px;

    position:relative;

    z-index:2;

}

.bp-help-small{

    display:block;

    font-size:13px;

    letter-spacing:1px;

    opacity:.75;

    margin-bottom:12px;

    position:relative;

    z-index:2;

}

.bp-help-right h3{

    font-size: 30px;
    line-height: 1.25;
    margin-bottom: 14px;
    color: #fff;
    position: relative;
    z-index: 2;

}

.bp-help-right p{

    font-size:15px;

    line-height:1.8;

    color:rgba(255,255,255,.9);

    margin-bottom:34px;

    position:relative;

    z-index:2;

}

.bp-help-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    background:#D8A844;

    color:#fff;

    text-decoration:none;

    padding:16px 36px;

    border-radius:8px;

    font-weight:600;

    transition:.3s;

    position:relative;

    z-index:2;

}

.bp-help-btn svg{

    flex-shrink:0;

}

.bp-help-btn:hover{

    background:#C8942B;

    transform:translateY(-2px);

}

/* Mobile */

@media(max-width:991px){

    .bp-help-wrapper{

        grid-template-columns:1fr;

    }

    .bp-help-left h2{

        font-size:36px;

    }

    .bp-help-right{

        padding:35px;

    }

}



.doctors-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
margin-bottom:60px;
}

.staff-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
margin-bottom:50px;
}

.doctor-card,
.staff-card{
background:#fff;
border-radius:18px;
overflow:hidden;
box-shadow:0 15px 40px rgba(0,0,0,.08);
transition:.3s;
}

.doctor-card:hover,
.staff-card:hover{
transform:translateY(-8px);
}

.doctor-photo{
width:100%;
display:block;
}

.doctor-body{
padding:26px;
}

.staff-card .doctor-body{
padding:22px;
}

.staff-card h3{
margin-bottom:6px;
font-size:22px;
}

.staff-card .doctor-specialty{
margin-bottom:0;
display:block;
}

.staff-intro{
margin-top:90px;
}


@media(max-width:1200px){

.doctors-grid,
.staff-grid{
grid-template-columns:repeat(3,1fr);
}

}

@media(max-width:992px){

.doctors-grid,
.staff-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:600px){

.doctors-grid,
.staff-grid{
grid-template-columns:1fr;
}

}


/*=========================================================
APS ABOUT HERO
=========================================================*/

.aps-about-hero{
    position:relative;
    width:100%;
    height:450px;
    overflow:hidden;
    background:#06172F;
}

/* Background */

.aps-about-bg{
    position:absolute;
    inset:0;
background:url("img/aps-hero.jpg") center center/cover no-repeat;
    z-index:1;
    transform:scale(1.02);
}

/* Overlay */

.aps-about-overlay{
    position:absolute;
    inset:0;
    z-index:2;

    background:linear-gradient(
        90deg,
        rgba(5,21,45,.88) 0%,
        rgba(5,21,45,.78) 22%,
        rgba(5,21,45,.52) 45%,
        rgba(5,21,45,.18) 70%,
        rgba(5,21,45,0) 100%
    );
}

/* Wrapper */

.aps-about-wrapper{

    position:relative;

    z-index:5;

    width:100%;

    max-width:1280px;

    margin:0 auto;

    height:100%;

    padding:0 70px;

}

/* Content */

.aps-about-content{

    position:absolute;

    top:40px;

    left:70px;

    width:430px;

}

/* Breadcrumb */

.aps-about-breadcrumb{

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:28px;

    font-size:15px;

    font-weight:500;

}

.aps-about-breadcrumb a{

    color:#fff;

    text-decoration:none;

}

.aps-about-breadcrumb span{

    color:#fff;

}

.aps-about-breadcrumb .active{

    color:#D79A37;

}

/* Heading */

.aps-about-content h1{

    margin:0;

    font-family:"Marcellus",serif;

    font-size:56px;

    font-weight:500;

    color:#fff;

    line-height:1;

}

/* Gold Line */

.aps-about-line{

    width:70px;

    height:3px;

    background:#D79A37;

    margin:28px 0;

}

/* Description */

.aps-about-content p{

    margin:0;

    color:#fff;

    font-size:15px;

    line-height:1.8;

    max-width:340px;

}

/* Tablet */

@media(max-width:991px){

.aps-about-hero{

height:470px;

}

.aps-about-wrapper{

padding:0 40px;

}

.aps-about-content{

left:40px;

top:100px;

width:360px;

}

.aps-about-content h1{

font-size:58px;

}

}

/* Mobile */

@media(max-width:767px){

.aps-about-hero{

height:420px;

}

.aps-about-bg{

background-position:72% center;

}

.aps-about-overlay{

background:rgba(5,21,45,.68);

}

.aps-about-wrapper{

padding:0 20px;

}

.aps-about-content{

position:relative;

left:0;

top:90px;

width:100%;

}

.aps-about-content h1{

font-size:46px;

}

.aps-about-content p{

font-size:18px;

max-width:100%;

}

}


/*==========================================
ABOUT INTRO
==========================================*/

.aps-about-intro{

    padding:40px 0;

    background:#fff;

}

.aps-about-intro-grid{

    display:grid;

    grid-template-columns:460px 1fr;

    gap:70px;

    align-items:center;

}

.aps-about-tag{

    display:inline-block;

    color:#D69A3B;

    font-size:14px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.aps-about-text h2{

    margin: 0px 0 9px;
    font-family: "Marcellus", serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
    color: #17365f;
    font-size: 32px;
    margin-bottom: 15px;
    line-height: 1.4;

}

.aps-about-text p{

      color: #4F5B6B;
    font-size:15px;
    line-height: 24px;
    margin: 0 0 10px;

}

.aps-about-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    margin-top:15px;

    background:#D69A3B;

    color:#fff;

    text-decoration:none;

    padding:15px 28px;

    border-radius:6px;

    font-size:15px;

    font-weight:600;

    transition:.3s;

}

.aps-about-btn:hover{

    background:#c58724;

    transform:translateY(-2px);

}

.aps-about-image{

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 20px 60px rgba(0,0,0,.14);

}

.aps-about-image img{

    display:block;

    width:100%;

    height:auto;

}

/*==========================================
Responsive
==========================================*/

@media(max-width:991px){

.aps-about-intro-grid{

grid-template-columns:1fr;

gap:45px;

}

.aps-about-text{

order:2;

}

.aps-about-image{

order:1;

}

.aps-about-text h2{

font-size:46px;

}

}

@media(max-width:767px){

.aps-about-intro{

padding:70px 0;

}

.aps-about-text h2{

font-size:38px;

}

.aps-about-text p{

font-size:16px;

line-height:1.8;

}

}

/*==================================================
OUR VALUES
==================================================*/

.aps-values-section{

    padding:35px 0 40px;

    background:#fff;

}

.aps-values-heading{

    text-align:center;

    margin-bottom:45px;

}

.aps-values-heading h2{

margin: 0px 0 9px;
    font-family: "Marcellus", serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
    color: #17365f;
    font-size: 32px;
    margin-bottom: 15px;
    line-height: 1.4;

}

.aps-values-line{

    width:55px;

    height:3px;

    background:#D79A37;

    margin:18px auto 0;

}

.aps-values-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

}

.aps-value-card{

    padding:0 35px;

    text-align:center;

    border-right:1px solid #ececec;

}

.aps-value-last{

    border-right:none;

}

.aps-value-icon{

    width:70px;

    height:70px;

    margin:0 auto 22px;

}

.aps-value-icon img{

    width:100%;

    display:block;

}

.aps-value-card h3{

       margin: 0 0 4px;
    font-size: 19px;
    color: #13284B;
    font-weight: 600;

}

.aps-value-card p{

    margin:0;

    color:#596577;

    font-size:15px;

    line-height:25px;

}

/*=========================
Tablet
=========================*/

@media(max-width:991px){

.aps-values-grid{

grid-template-columns:repeat(2,1fr);

gap:40px;

}

.aps-value-card{

border:none;

padding:0 20px;

}

}

/*=========================
Mobile
=========================*/

@media(max-width:767px){

.aps-values-section{

padding:35px 0 45px;

}

.aps-values-grid{

grid-template-columns:1fr;

gap:35px;

}

.aps-values-heading h2{

font-size:38px;

}

}

/*====================================
OUR FACILITY
====================================*/

.aps-facility-section{

  padding: 50px 0 25px;

    background:#fff;

}

.aps-facility-grid{

    display:grid;

    grid-template-columns:360px 1fr;

    gap:55px;

    align-items:start;

}

/* Left */

.aps-facility-tag{

    display:inline-block;

    color:#D79A37;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:12px;

}


.aps-facility-line{

    width:58px;

    height:3px;

    background:#D79A37;

    margin:18px 0 28px;

}

.aps-facility-content p{

    color: #5d6676;
    font-size:15px;
    line-height: 25px;
    margin-bottom: 22px;

}

.aps-facility-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:15px 30px;

    border:2px solid #D79A37;

    border-radius:8px;

    color:#D79A37;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.aps-facility-btn:hover{

    background:#D79A37;

    color:#fff;

}

/* Gallery */

.aps-facility-gallery{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:16px;

}

.aps-facility-gallery img{

    width:100%;

    aspect-ratio:1.35;

    object-fit:cover;

    border-radius:14px;

    display:block;

    transition:.35s;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

.aps-facility-gallery img:hover{

    transform:translateY(-5px);

    box-shadow:0 18px 40px rgba(0,0,0,.15);

}

/* Tablet */

@media(max-width:991px){

.aps-facility-grid{

grid-template-columns:1fr;

gap:40px;

}

}

/* Mobile */

@media(max-width:767px){

.aps-facility-gallery{

grid-template-columns:repeat(2,1fr);

}



}


.aps-patient-hero-text {
    margin: 0;
    color: #fff;
    font-size: 20px;
    line-height: 1.8;
    max-width: 552px!important;
}



/*==============================
  PATIENT RESOURCES
==============================*/

/*=========================================
    PATIENT RESOURCES SECTION
=========================================*/

.aps-pr-section{
       padding: 44px 0;
    background: #f7f9fc;
    position: relative;
    overflow: hidden;
}

.aps-pr-section::before{
    content:"";
    position:absolute;
    right:-120px;
    top:-100px;
    width:350px;
    height:350px;
    border-radius:50%;
    background:rgba(200,165,82,.06);
}

.aps-pr-container{
    max-width:1280px;
    margin:auto;
    padding:0 20px;

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px;

    align-items:start;
}

/*=========================================
    PANEL
=========================================*/

.aps-pr-panel{

    background:#fff;

    border-radius:22px;

    padding:38px;

    border:1px solid #edf1f4;

    box-shadow:
    0 12px 30px rgba(17,34,68,.05);

    position:relative;

    overflow:hidden;
}

.aps-pr-panel::before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:4px;

    background:linear-gradient(90deg,#b78b31,#d8ba74);
}

/*=========================================
    HEADER
=========================================*/

.aps-pr-header{

    margin-bottom:19px;
}

.aps-pr-tag{

    display:inline-flex;

    align-items:center;

    padding:7px 16px;

    background:#fbf5e8;

    color:#b4872d;

    border-radius:30px;

    font-size:11px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:1.5px;
}

.aps-pr-header h2{

       margin: 12px 0 5px;
      font-family: "Marcellus", serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
    color: #17365f;
    font-size: 32px;
    margin-bottom: 15px;
    line-height: 1.4;
}

.aps-pr-header p{

    margin:0;

    font-size:15px;

    line-height:1.75;

    color:#6b7280;

    max-width:520px;
}

/*=========================================
    LEFT BLOCKS
=========================================*/

.aps-pr-block{

    padding:26px 0;

    border-top:1px solid #eef2f6;
}

.aps-pr-block:first-of-type{

    border-top:none;

    padding-top:0;
}

.aps-pr-highlight{

    background:#fbfcfe;

    border:1px solid #edf2f6;

    border-radius:18px;

    padding:26px;

    margin-top:20px;
}

/*=========================================
    TITLE
=========================================*/

.aps-pr-block-header{

    display:flex;

    align-items:center;

    gap:16px;

    margin-bottom:18px;
}

.aps-pr-block-header h3{

    margin:0;

    font-size:17px;

    font-weight:600;

    color:#183153;

    line-height:1.3;
}

/*=========================================
    ICON
=========================================*/

.aps-pr-icon{

    width:48px;

    height:48px;

    border-radius:50%;

    flex-shrink:0;

    background:linear-gradient(180deg,#fffaf0,#f8f1df);

    border:1px solid #ecd8a6;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#b4872d;
}

.aps-pr-icon svg{

    width:22px;

    height:22px;

    stroke:currentColor;
}

/*=========================================
    TEXT
=========================================*/

.aps-pr-block p{

    margin:0;

    font-size:15px;

    line-height:1.8;

    color:#667085;
}

.aps-pr-list{

    margin:0;

    padding:0;

    list-style:none;
}

.aps-pr-list li{

  position: relative;
    padding-left: 18px;
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 23px;
    color: #667085;
}

.aps-pr-list li:last-child{

    margin-bottom:0;
}

.aps-pr-list li::before{

    content:"";

    position:absolute;

    left:0;

    top:11px;

    width:6px;

    height:6px;

    border-radius:50%;

    background:#c29b44;
}

.aps-pr-list strong{

    color:#17365f;

    font-weight:600;
}

/*=========================================
    BUTTON
=========================================*/

.aps-pr-actions{

    margin-top:24px;
}

.aps-pr-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 24px;

    background:#17365f;

    color:#fff;

    text-decoration:none;

    font-size:13px;

    font-weight:600;

    border-radius:40px;

    transition:.3s;
}

.aps-pr-btn:hover{

    background:#b4872d;
}

/*=========================================
    RIGHT PANEL
=========================================*/

.aps-pr-category{
    margin-bottom:32px;
}

.aps-pr-category:last-child{
    margin-bottom:0;
}

.aps-pr-category-title{
    margin:0 0 16px;
    font-size:15px;
    font-weight:700;
    color:#17365f;
 
    letter-spacing:1px;
    position:relative;
    padding-left:18px;
        font-family: "Marcellus", serif;
}



/*=========================================
    FORM CARD
=========================================*/

.aps-pr-form-card{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    padding:18px 22px;

    border:1px solid #edf2f6;

    border-radius:16px;

    background:#fff;

    margin-bottom:14px;

    transition:.3s ease;
}

.aps-pr-form-card:hover{

    border-color:#d7b05a;

    box-shadow:0 10px 25px rgba(16,36,68,.06);

    transform:translateY(-2px);
}

.aps-pr-form-left{

    display:flex;

    align-items:center;

    gap:14px;

    flex:1;
}

.aps-pr-form-icon{

    width:42px;

    height:42px;

    border-radius:12px;

    background:#fbf5e8;

    border:1px solid #ecd8a6;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#b4872d;

    flex-shrink:0;
}

.aps-pr-form-icon svg{

    width:20px;

    height:20px;

    stroke:currentColor;
}

.aps-pr-form-left h4{

    margin:0 0 0px;

    font-size:14px;

    font-weight:600;

    color:#17365f;
}

.aps-pr-form-left p{

    margin:0;

    font-size:15px;

    color:#7b8794;

    line-height:1.6;
}

/*=========================================
    BUTTONS
=========================================*/

.aps-pr-form-buttons{

    display:flex;

    gap:10px;

    flex-shrink:0;
}

.aps-pr-form-buttons a{

    padding:10px 18px;

    border-radius:30px;

    text-decoration:none;

    font-size:12px;

    font-weight:600;

    transition:.3s;
}

.aps-pr-form-buttons a:first-child{

    border:1px solid #d8dee7;

    color:#17365f;

    background:#fff;
}

.aps-pr-form-buttons a:first-child:hover{

    border-color:#b4872d;

    color:#b4872d;
}

.aps-pr-primary{

    background:#17365f;

    color:#fff !important;
}

.aps-pr-primary:hover{

    background:#b4872d;
}

/*=========================================
    RIGHT SIDE BLOCKS
=========================================*/

.aps-pr-panel .aps-pr-block{

    margin-top:2px;

    padding-top:20px;

    border-top:1px solid #eef2f6;
}

.aps-pr-panel .aps-pr-block-header{

    margin-bottom:7px;
}

.aps-pr-panel .aps-pr-block p{

    font-size:15px;
}

.aps-pr-panel .aps-pr-list li{

    font-size:14px;
}

/*=========================================
    RESPONSIVE
=========================================*/

@media(max-width:1100px){

    .aps-pr-container{
        grid-template-columns:1fr;
    }

    .aps-pr-panel{
        padding:32px;
    }

}

@media(max-width:768px){

    .aps-pr-section{
        padding:60px 0;
    }

    .aps-pr-panel{
        padding:24px;
        border-radius:18px;
    }

    .aps-pr-header h2{
        font-size:28px;
    }

    .aps-pr-block-header h3{
        font-size:18px;
    }

    .aps-pr-form-card{

        flex-direction:column;

        align-items:flex-start;
    }

    .aps-pr-form-buttons{

        width:100%;

        margin-top:15px;
    }

    .aps-pr-form-buttons a{

        flex:1;

        text-align:center;
    }

}

@media(max-width:480px){

    .aps-pr-header h2{
        font-size:24px;
    }

    .aps-pr-form-left{
        align-items:flex-start;
    }

    .aps-pr-form-buttons{
        flex-direction:column;
    }

    .aps-pr-form-buttons a{
        width:100%;
    }

    .aps-pr-block{
        padding:22px 0;
    }

    .aps-pr-list li{
        font-size:13px;
    }

    .aps-pr-block p{
        font-size:13px;
    }

}


.aps-pr-category {

padding-top: 20px;
    border-top: 1px solid #eef2f6;
}



/*=========================================
  INSURANCE SECTION
=========================================*/

.aps-insurance-section{
    padding:40px 0;
    background:linear-gradient(180deg,#ffffff 0%,#f6f8fc 100%);
    /* Offsets the #insurance anchor (linked from the footer) so the
       section isn't tucked under the sticky main nav when scrolled to
       directly. */
    scroll-margin-top:90px;
}

.aps-container{
    max-width:1280px;
    margin:auto;
    padding:0 20px;
}

/*=========================================
  HEADING
=========================================*/

.aps-insurance-heading{
    text-align:center;
    margin-bottom:50px;
}

.aps-insurance-heading span{
    display:inline-block;
    padding:8px 18px;
    border-radius:30px;
    background:#f9f3e6;
    color:#b98a2d;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.aps-insurance-heading h2{
    margin: 0px 0 9px;
    font-family: "Marcellus", serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
    color: #17365f;
    font-size: 32px;
    margin-bottom: 15px;
    line-height: 1.4;
}

.aps-insurance-heading p{
    max-width:700px;
    margin:auto;
    font-size:15px;
    line-height:1.8;
    color:#667085;
}

/*=========================================
  MAIN CARD
=========================================*/

.aps-insurance-card{

    background:#fff;

    border-radius:24px;

    padding:45px;

    display:grid;

    grid-template-columns:1.2fr .8fr;

    gap:45px;

    border:1px solid #edf1f5;

    box-shadow:
    0 12px 40px rgba(18,40,74,.06);

    margin-bottom:45px;
}

/*=========================================
 LEFT
=========================================*/

.aps-insurance-left h3{

     margin: 0px 0 9px;
    font-family: "Marcellus", serif;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.15;
    color: #17365f;
    font-size: 32px;
    margin-bottom: 15px;
    line-height: 1.4;
}

.aps-insurance-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;
}

.aps-insurance-grid ul{

    margin:0;

    padding:0;

    list-style:none;
}

.aps-insurance-grid li{

    position:relative;

    padding-left:22px;

    margin-bottom:7px;

    font-size:14px;

    color:#55657a;

    line-height:1.7;
}

.aps-insurance-grid li::before{

    content:"";

    position:absolute;

    left:0;

    top:8px;

    width:8px;

    height:8px;

    border-radius:50%;

    background:#c89a3b;
}

.aps-note{

    margin-top:28px;

    padding-top:22px;

    border-top:1px solid #edf1f5;

    font-size:15px;

    color:#17365f;

    font-weight:500;
}

.aps-note-disclaimer{
    margin-top:12px;
    padding-top:0;
    border-top:none;
    font-size:15px;
    font-weight:400;
    color:#68778b;
    line-height:1.6;
}

/*=========================================
 PAYMENT
=========================================*/

.aps-payment-card{

    background:#fafbfd;

    border:1px solid #edf1f5;

    border-radius:20px;

    padding:35px;
}

.aps-payment-icon{

    width:60px;

    height:60px;

    border-radius:50%;

    background:#f8f2e5;

    color:#b98a2d;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:13px;
}

.aps-payment-icon svg{

    width:28px;

    height:28px;

    stroke:currentColor;
}

.aps-payment-card h3{

       margin: 0px 0 9px;
    font-family: "Marcellus", serif;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.15;
    color: #17365f;
    font-size: 32px;
    margin-bottom: 15px;
    line-height: 1.4;
}

.aps-payment-card p{

    margin:0 0 16px;

    font-size:15px;

    line-height:1.8;

    color:#667085;
}

.aps-carecredit{

    margin-top:25px;
}

.aps-carecredit img{

    max-width:190px;

    display:block;
}

/*=========================================
 LOGOS
=========================================*/

.aps-insurance-logos{

    display:grid;

    grid-template-columns:repeat(6,1fr);

    gap:18px;
}

.aps-logo-card{

    background:#fff;

    border:1px solid #edf1f5;

    border-radius:16px;

    height:95px;

    display:flex;

    align-items:center;

    justify-content:center;

    transition:.35s;

    padding:18px;
}

.aps-logo-card:hover{

    transform:translateY(-5px);

    box-shadow:0 15px 30px rgba(18,40,74,.08);

    border-color:#d6b062;
}

.aps-logo-card img{

    max-width:130px;

    max-height:45px;

    width:auto;

    height:auto;

    object-fit:contain;
}

.aps-more{

    font-size:15px;

    font-weight:600;

    color:#17365f;
}

/*=========================================
 RESPONSIVE
=========================================*/

@media(max-width:1100px){

.aps-insurance-card{

grid-template-columns:1fr;

}

.aps-insurance-logos{

grid-template-columns:repeat(4,1fr);

}

}

@media(max-width:768px){

.aps-insurance-section{

padding:70px 0;

}

.aps-insurance-heading h2{

font-size:34px;

}

.aps-insurance-card{

padding:28px;

gap:30px;

}

.aps-insurance-grid{

grid-template-columns:1fr;

gap:0;

}

.aps-insurance-left h3,
.aps-payment-card h3{

font-size:20px;

}

.aps-insurance-logos{

grid-template-columns:repeat(2,1fr);

}

.aps-logo-card{

height:85px;

}

}

@media(max-width:480px){

.aps-insurance-heading h2{

font-size:28px;

}

.aps-payment-card{

padding:25px;

}

.aps-logo-card{

height:75px;

padding:12px;

}

.aps-logo-card img{

max-width:95px;

}

}


/*=========================================
    PATIENT STORIES + FAQ
    PART 1
=========================================*/

.aps-home-proof{
    padding:110px 0;
    background:linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%);
    position:relative;
    overflow:hidden;
}

.aps-home-proof::before{
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(197,157,65,.05);
    right:-180px;
    top:-120px;
}

.aps-proof-grid{

    display:grid;

    grid-template-columns:65% 35%;

    gap:70px;

    align-items:start;
}

/*=========================================
SECTION TITLE
=========================================*/

.aps-section-tag{

    display:inline-flex;

    align-items:center;

    padding:8px 18px;

    border-radius:30px;

    background:#faf3e7;

    color:#b8892d;

    font-size:11px;

    font-weight:700;

    letter-spacing:1.6px;

    text-transform:uppercase;

    margin-bottom:20px;
}

.aps-testimonials h2,
.aps-faq-panel h2{

    margin:0;

    font-family:"Marcellus",serif;

    font-size:52px;

    line-height:1.05;

    font-weight:600;

    color:#183153;
}

.aps-section-desc{

    margin:20px 0 35px;

    max-width:620px;

    font-size:15px;

    line-height:1.9;

    color:#68778b;
}

/*=========================================
FEATURED VIDEO
=========================================*/

.aps-featured-video{

    position:relative;

    display:block;

    border-radius:26px;

    overflow:hidden;

    aspect-ratio:16/9;

    margin-bottom:28px;

    text-decoration:none;

    box-shadow:
    0 18px 45px rgba(20,37,70,.08);
}

.aps-featured-video img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;
}

.aps-featured-video:hover img{

    transform:scale(1.05);
}

.aps-video-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(to top,
    rgba(15,30,55,.85),
    rgba(15,30,55,.1));
}

/*=========================================
PLAY BUTTON
=========================================*/

.aps-play{

    position:absolute;

    left:40px;

    top:40px;

    width:74px;

    height:74px;

    border-radius:50%;

    background:rgba(255,255,255,.92);

    display:flex;

    justify-content:center;

    align-items:center;

    color:#17365f;

    font-size:26px;

    transition:.35s;

    z-index:3;
}

.aps-play.small{

    width:54px;

    height:54px;

    left:22px;

    top:22px;

    font-size:18px;
}

.aps-featured-video:hover .aps-play,
.aps-video-card:hover .aps-play{

    background:#c69c3a;

    color:#fff;
}

/*=========================================
VIDEO CONTENT
=========================================*/

.aps-video-content{

    position:absolute;

    left:40px;

    right:40px;

    bottom:35px;

    z-index:3;

    color:#fff;
}

.aps-video-label{

    display:inline-block;

    background:#c69c3a;

    padding:6px 14px;

    border-radius:30px;

    font-size:11px;

    text-transform:uppercase;

    letter-spacing:1.3px;

    margin-bottom:16px;
}

.aps-video-content h3{

    margin:0 0 12px;

    font-size:32px;

    font-weight:600;

    line-height:1.2;
}

.aps-video-content p{

    margin:0;

    font-size:15px;

    line-height:1.8;

    max-width:500px;
}

/*=========================================
SMALL VIDEOS
=========================================*/

.aps-video-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:22px;

    margin-bottom:35px;
}

.aps-video-card{

    position:relative;

    display:block;

    overflow:hidden;

    border-radius:22px;

    aspect-ratio:16/10;

    text-decoration:none;

    box-shadow:
    0 10px 25px rgba(20,37,70,.05);
}

.aps-video-card img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.5s;
}

.aps-video-card:hover img{

    transform:scale(1.06);
}

.aps-video-title{

    position:absolute;

    left:22px;

    bottom:20px;

    z-index:3;

    color:#fff;

    font-size:18px;

    font-weight:600;
}

/*=========================================
STATS
=========================================*/

.aps-proof-stats{

    display:flex;

    gap:22px;

    margin:35px 0;
}

.aps-stat{

    flex:1;

    background:#fff;

    border:1px solid #edf2f5;

    border-radius:18px;

    padding:24px;

    text-align:center;

    box-shadow:
    0 8px 20px rgba(20,37,70,.04);
}

.aps-stat h4{

    margin:0;

    font-size:34px;

    color:#183153;

    font-family:"Marcellus",serif;
}

.aps-stat span{

    display:block;

    margin-top:8px;

    font-size:13px;

    color:#748296;
}

/*=========================================
BUTTON
=========================================*/

.aps-proof-btn{

    display:inline-flex;

    align-items:center;

    gap:12px;

    padding:15px 28px;

    border-radius:40px;

    background:#183153;

    color:#fff;

    text-decoration:none;

    font-size:14px;

    font-weight:600;

    transition:.35s;
}

.aps-proof-btn:hover{

    background:#c69c3a;
}

/* ===================================================================
   PAGE HERO — shared centered "title" header for inner pages
   (services, doctors, contact, condition pages, about, patient
   resources). Replaces the old image+text .page-hero / .aps-about-hero
   banners with a soft-tinted, centered header: breadcrumb, serif
   heading, optional subtext, optional CTA. Appended last so it wins
   over any earlier .page-hero rules at equal specificity; the old
   .page-hero-inner/-copy/-media/.aps-about-* selectors no longer match
   anything since includes/page-hero.php emits different markup.
=================================================================== */
.page-hero{
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #f6f1e6 0%, #fbf9f4 100%);
    padding: 60px 0 60px;
    text-align: center;
}

.page-hero-crumb{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 22px;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--muted);
}

.page-hero-crumb a{
    color: var(--muted);
    transition: .25s;
}

.page-hero-crumb a:hover{
    color: var(--navy);
}

.page-hero-crumb .sep{
    color: #c9b98a;
}

.page-hero-crumb .current{
    color: #bb8a2d;
    font-weight: 600;
}

.page-hero h1{
    margin: 0 0 18px;
 
    font-size: 50px;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.15;
    color: var(--navy);
}

.page-hero-text{
    max-width: 640px;
    margin: 0 auto;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.8;
}

.page-hero-cta{
    display: inline-flex;
    margin-top: 30px;
}

@media (max-width: 768px){
    .page-hero{
        padding: 85px 0 50px;
    }

    .page-hero h1{
        font-size: 36px;
    }

    .page-hero-text{
        font-size: 15px;
    }
}

@media (max-width: 480px){
    .page-hero h1{
        font-size: 30px;
    }

    .page-hero-crumb{
        font-size: 12px;
    }
}


.aps-values-section {
    position: relative !important;
    overflow: hidden !important;

    background-color: #ffffff !important;
    background-image: url("img/our-values-medical-compassion-background.webp") !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

/* Keep the content above the background */
.aps-values-section > .container {
    position: relative !important;
    z-index: 2 !important;
}




.bp-benefits-section {
    position: relative !important;
    padding: 60px 0 !important;

    background-image:
        url("img/generic-medical-background-all-pages.webp") !important;

    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
}

.bp-benefits-section .container {
    position: relative !important;
    z-index: 2 !important;
}

.doctor-details {
    padding: 60px 0;
    background: #fafafa;
}
.doctor-personal h2 {
     margin: 11px 0 22px!important;
    font-family: "Marcellus", serif!important;
    font-size: 32px!important;
    font-weight: 600!important;
    line-height: 1.15!important;
    color: #17365f!important;
}

.doctor-content h1{
       margin: 11px 0 9px!important;
    font-family: "Marcellus", serif!important;
    font-size: 32px!important;
    font-weight: 600!important;
    line-height: 1.15!important;
    color: #17365f!important;
}


.doctor-content p {
      color: #4F5B6B!important;
    font-size:15px;
    line-height: 24px!important;
    margin: 0 0 10px!important;
}



.doctor-personal p {
      color: #4F5B6B!important;
    font-size:15px;
    line-height: 24px!important;
 
}
.details-grid h2 {
       margin: 11px 0 22px!important;
    font-family: "Marcellus", serif!important;
    font-size: 28px!important;
    font-weight: 600!important;
    line-height: 1.15!important;
    color: #17365f!important;
}

/* ==========================================================
   PRIVACY POLICY / LEGAL PAGE
   Narrow, prose-friendly layout for long-form legal/compliance
   content (privacy-policy.php / privacy-policy-es.php). Reuses the
   site's established heading font, gold-tag label and muted body
   color so it reads as part of the same design system as the other
   inner pages rather than a bolted-on document.
   ========================================================== */
/* footer.php's sitewide scroll-reveal script tags every <section> with
   .reveal-up (opacity:0 until an IntersectionObserver crosses a 15%-of-
   the-element-area threshold). A long legal document like this one is
   taller than any viewport can show 15% of at once, so that threshold
   would never fire and the whole page would stay invisible — override
   it to render immediately instead of trying to animate it in. */
.legal-section.reveal-up{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
}
.legal-section{padding:90px 0 50px;}
.legal-container{max-width:860px;margin:0 auto;padding:0 24px;}

.legal-updated{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:7px 16px;
    background:#fbf5e8;
    color:#b4872d;
    border-radius:30px;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:26px;
}

.legal-intro{
    font-size:16px;
    line-height:1.85;
    color:#5b6675;
    margin:0 0 40px;
}

.legal-block{
    padding:30px 0;
    border-top:1px solid #eef2f6;
}
.legal-block:first-of-type{border-top:none;padding-top:0;}

.legal-block h2{
    font-family:"Marcellus", serif;
    font-size:23px;
    font-weight:600;
    line-height:1.3;
    color:#17365f;
    margin:0 0 14px;
}

.legal-block p{
    margin:0 0 14px;
    font-size:15.5px;
    line-height:1.85;
    color:#5b6675;
}
.legal-block p:last-child{margin-bottom:0;}

.legal-block ul{
    margin:0 0 14px;
    padding:0;
    list-style:none;
}
.legal-block ul:last-child{margin-bottom:0;}

.legal-block ul li{
    position:relative;
    padding-left:20px;
    margin-bottom:8px;
    font-size:15.5px;
    line-height:1.7;
    color:#5b6675;
}
.legal-block ul li:last-child{margin-bottom:0;}
.legal-block ul li::before{
    content:"";
    position:absolute;
    left:0;
    top:10px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#c29b44;
}

.legal-block strong{color:#17365f;font-weight:600;}

/* Numbered sub-heading inside a block (e.g. "Treatment" under a numbered
   "3. How We May Use..." section) — smaller/lighter than the main h2 so
   the hierarchy stays clear without a third heading font. */
.legal-block h3{
    font-family:"Marcellus", serif;
    font-size:17px;
    font-weight:600;
    color:#17365f;
    margin:22px 0 10px;
}
.legal-block h3:first-child{margin-top:0;}

/* Effective-date / last-reviewed pills, shown side by side. */
.legal-badges{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:26px;
}
.legal-badges .legal-updated{margin-bottom:0;}

/* Complaint / "where to report" cards (HIPAA notice section 11). */
.legal-complaint-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
    gap:18px;
    margin-top:18px;
}
.legal-complaint-card{
    background:#fbfcfe;
    border:1px solid #edf2f6;
    border-radius:14px;
    padding:22px 20px;
}
.legal-complaint-card h4{
    font-family:"Marcellus", serif;
    font-size:15.5px;
    font-weight:600;
    color:#17365f;
    margin:0 0 10px;
}
.legal-complaint-card p{
    margin:0 0 4px;
    font-size:14px;
    line-height:1.65;
    color:#5b6675;
}
.legal-complaint-card p:last-child{margin-bottom:0;}
.legal-complaint-card a{color:#17365f;font-weight:600;}
.legal-complaint-card a:hover{color:var(--gold);}

.legal-footnote{
    margin-top:36px;
    padding-top:22px;
    border-top:1px solid #eef2f6;
    text-align:center;
    font-size:13px;
    letter-spacing:.02em;
    color:#9aa3b0;
}

.legal-contact-card{
    margin-top:6px;
    background:#fbfcfe;
    border:1px solid #edf2f6;
    border-radius:18px;
    padding:30px 32px;
}
.legal-contact-card h3{
    font-family:"Marcellus", serif;
    font-size:19px;
    font-weight:600;
    color:#17365f;
    margin:0 0 18px;
}
.legal-contact-list{
    margin:0;
    padding:0;
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.legal-contact-list li{
    display:flex;
    align-items:flex-start;
    gap:12px;
    font-size:15px;
    line-height:1.6;
    color:#5b6675;
}
.legal-contact-list li svg{
    flex-shrink:0;
    margin-top:2px;
    color:#b4872d;
}
.legal-contact-list a{color:#17365f;font-weight:600;}
.legal-contact-list a:hover{color:var(--gold);}
.legal-contact-label{color:#8a94a3;margin-right:4px;}

@media(max-width:768px){
    .legal-section{padding:60px 0 30px;}
    .legal-block{padding:24px 0;}
    .legal-block h2{font-size:20px;}
    .legal-block h3{font-size:16px;}
    .legal-contact-card{padding:24px 22px;}
    .legal-complaint-grid{grid-template-columns:1fr;}
}

/* ==========================================================
   LARGE-SCREEN SCALE-UP (Round 5)
   Companion block to the one appended to style.css: widens the
   inner-page content containers and scales up text (~12%) only
   at 1600px+ viewports. See style.css for the full explanation.
   ========================================================== */
@media (min-width:1600px){
  /* Width now stays at the shared 1280px container width at every
     breakpoint, including here — see the matching note in style.css. */

  .aps-about-breadcrumb{font-size:17px;}
  .aps-about-btn{font-size:17px;}
  .aps-about-content h1{font-size:63px;}
  .aps-about-content p{font-size:17px;}
  .aps-about-tag{font-size:16px;}
  .aps-about-text h2{font-size:36px;}
  .aps-about-text p{font-size:17px;}
  .aps-facility-content p{font-size:17px;}
  .aps-facility-tag{font-size:15px;}
  .aps-insurance-grid li{font-size:16px;}
  .aps-insurance-heading h2{font-size:36px;}
  .aps-insurance-heading p{font-size:17px;}
  .aps-insurance-heading span{font-size:13px;}
  .aps-insurance-left h3{font-size:36px;}
  .aps-more{font-size:17px;}
  .aps-note{font-size:17px;}
  .aps-note-disclaimer{font-size:17px;}
  .aps-patient-hero-text{font-size:22px;}
  .aps-payment-card h3{font-size:36px;}
  .aps-payment-card p{font-size:17px;}
  .aps-play{font-size:29px;}
  .aps-play.small{font-size:20px;}
  .aps-pr-block p{font-size:17px;}
  .aps-pr-block-header h3{font-size:19px;}
  .aps-pr-btn{font-size:15px;}
  .aps-pr-category-title{font-size:17px;}
  .aps-pr-form-buttons a{font-size:13px;}
  .aps-pr-form-left h4{font-size:16px;}
  .aps-pr-form-left p{font-size:17px;}
  .aps-pr-header h2{font-size:36px;}
  .aps-pr-header p{font-size:17px;}
  .aps-pr-list li{font-size:16px;}
  .aps-pr-panel .aps-pr-block p{font-size:17px;}
  .aps-pr-panel .aps-pr-list li{font-size:16px;}
  .aps-pr-tag{font-size:12px;}
  .aps-proof-btn{font-size:16px;}
  .aps-section-desc{font-size:17px;}
  .aps-section-tag{font-size:12px;}
  .aps-stat h4{font-size:38px;}
  .aps-stat span{font-size:15px;}
  .aps-testimonials h2,
.aps-faq-panel h2{font-size:58px;}
  .aps-value-card h3{font-size:21px;}
  .aps-value-card p{font-size:17px;}
  .aps-values-heading h2{font-size:36px;}
  .aps-video-content h3{font-size:36px;}
  .aps-video-content p{font-size:17px;}
  .aps-video-label{font-size:12px;}
  .aps-video-title{font-size:20px;}
  .assistance-icon{font-size:22px;}
  .assistance-left h4{font-size:18px;}
  .assistance-left p{font-size:17px;}
  .assistance-phone{font-size:20px;}
  .bp-assessment-card h3{font-size:36px;}
  .bp-assessment-card p{font-size:17px;}
  .bp-benefit-item h3{font-size:21px;}
  .bp-benefit-item p{font-size:17px;}
  .bp-check-list li{font-size:18px;}
  .bp-check-list li:before{font-size:15px;}
  .bp-condition-content h3{font-size:20px;}
  .bp-condition-content p{font-size:17px;}
  .bp-help-intro{font-size:17px;}
  .bp-help-left h2{font-size:38px;}
  .bp-help-list li{font-size:17px;}
  .bp-help-list li:before{font-size:15px;}
  .bp-help-note{font-size:17px;}
  .bp-help-right h3{font-size:34px;}
  .bp-help-right p{font-size:17px;}
  .bp-help-small{font-size:15px;}
  .bp-help-tag{font-size:12px;}
  .bp-intro{font-size:19px;}
  .bp-section-heading h2{font-size:38px;}
  .bp-section-heading p{font-size:17px;}
  .bp-specialist-content h2{font-size:49px;}
  .breadcrumb{font-size:16px;}
  .btn-outline-navy{font-size:12px;}
  .contact-card h2,
.info-card h2{font-size:27px;}
  .contact-card input,
.contact-card select,
.contact-card textarea{font-size:16px;}
  .contact-card>p{font-size:17px;}
  .contact-eyebrow{font-size:13px;}
  .contact-heading{font-size:43px;}
  .contact-lead{font-size:17px;}
  .details-grid h2{font-size:31px !important;}
  .doctor-body h3{font-size:19px;}
  .doctor-body p{font-size:17px;}
  .doctor-content h1{font-size:36px !important;}
  .doctor-content p{font-size:17px;}
  .doctor-personal h2{font-size:36px !important;}
  .doctor-personal p{font-size:17px;}
  .doctor-specialty{font-size:13px;}
  .feature-icon{font-size:25px;}
  .feature-item h4{font-size:20px;}
  .feature-item p{font-size:17px;}
  .form-label{font-size:15px;}
  .form-submit{font-size:16px;}
  .help-card a{font-size:14px;}
  .help-card h4{font-size:17px;}
  .help-card p{font-size:17px;}
  .hours-text{font-size:16px;}
  .info-content h4{font-size:19px;}
  .info-content p{font-size:17px;}
  .inline-action span{font-size:16px;}
  .learn-more{font-size:14px;}
  .legal-block h2{font-size:26px;}
  .legal-block h3{font-size:19px;}
  .legal-block p,
.legal-block ul li{font-size:17px;}
  .legal-complaint-card h4{font-size:17px;}
  .legal-complaint-card p{font-size:15px;}
  .legal-contact-card h3{font-size:21px;}
  .legal-contact-list li{font-size:16px;}
  .legal-intro{font-size:17px;}
  .learn-more-arrow{font-size:17px;}
  .link-blue{font-size:15px;}
  .map-address-card{font-size:14px;}
  .map-address-card strong{font-size:17px;}
  .notsure-callout h4{font-size:17px;}
  .notsure-callout p{font-size:17px;}
  .notsure-left h4{font-size:18px;}
  .notsure-left p{font-size:17px;}
  .page-hero h1{font-size:56px;}
  .page-hero-copy h1{font-size:56px;}
  .page-hero-crumb{font-size:15px;}
  .page-hero-desc{font-size:18px;}
  .page-hero-sub{font-size:24px;}
  .page-hero-text{font-size:17px;}
  .page-intro .eyebrow{font-size:13px;}
  .page-intro h2{font-size:34px;}
  .page-intro p{font-size:17px;}
  .service-card-body h3{font-size:23px;}
  .service-card-body p{font-size:17px;}
  .service-card-tag{font-size:12px;}
  .staff-card h3{font-size:25px;}
}

/* Hinkapin Health logo — sits between the cash-pricing and
   CareCredit paragraphs in "Flexible Payment Options". */
.aps-hinkapin{margin:4px 0 22px;}
.aps-hinkapin img{display:block;width:180px;max-width:60%;height:auto;}
@media (max-width:768px){ .aps-hinkapin img{width:160px;} }

/* Contact page: small grey helper line under a contact detail. */
.info-content .info-note{font-size:13px;color:#8a94a3;margin-top:2px;}

/* Contact page: JotForm consultation form card */
#consultation-form{scroll-margin-top:90px;}
.contact-card--jotform{padding:30px 26px 18px;}
.contact-card-tag{
    display:inline-block;
    margin-bottom:10px;
    color:#bb8a2d;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.5px;
    text-transform:uppercase;
}
.contact-card--jotform > p{font-size:14px;margin-bottom:12px;}
.jotform-wrap{margin:0 -10px;}
.jotform-wrap iframe{display:block;width:100%;}
@media (max-width:768px){
    .contact-card--jotform{padding:24px 14px 12px;}
    .jotform-wrap{margin:0 -6px;}
}
