/* =====================================================
   HOMEPAGE FPD
   Journey Aesthetics
===================================================== */

:root{

    --white:#fff;

    --text:#F4F6F8;
    --text85:rgba(255,255,255,.85);
    --text80:rgba(255,255,255,.80);
    --text70:rgba(255,255,255,.70);

    --dark:#353D4B;
    --gray:#5A6675;
    --gold:#EED384;
    --brown:#83481E;

    --font-heading:'Newsreader',serif;
    --font-body:'Outfit',sans-serif;

}

/* Reset */

.ultherapy-page{
    overflow-x:hidden;
    background:#fff;
    color:#353D4B;
    font-family:var(--font-body);
    margin:0;
}

.ultherapy-page img{
    max-width:100%;
    display:block;
}

.ultherapy-page a{
    text-decoration:none;
}

.ultherapy-page section{
    position:relative;
}

/* Bootstrap Container Override */

.ultherapy-container{

    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding-left:48px;
    padding-right:48px;

}

@media (max-width: 476px) {
    .ultherapy-container {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/*======================================================
Hero
======================================================*/

.ultherapy-hero{
    position:relative;
    height:664px;
    padding:20px 0 0;
    overflow:hidden;

    background:
        linear-gradient(rgba(0,0,0,.40), rgba(0,0,0,.40)),
        linear-gradient(
            270deg,
            rgba(255,255,255,0) 46%,
            rgba(197,193,185,.5) 76%,
            rgba(210,188,164,.38) 100%
        ),
        url("https://journey-aesthetics.com/wp-content/uploads/2026/08/homepage-hero.jpg") center center/cover no-repeat;
}

.ultherapy-hero .container {
    width:100%;
    max-width:1280px;
    margin:0 auto;
}



/*======================================================
Navigation
======================================================*/

.hero-header{

    width:100%;

    z-index:100;
    position:relative;
    z-index:20;
    padding-top:20px;

}

.hero-header .container{

    max-width:1280px;

}

.hero-nav{

    display:flex;

    align-items:center;

    justify-content:space-between;
    
    position:relative;

}

.hero-logo img{

    width:244px;

    display:block;

}

.hero-menu{

    display:flex;

    align-items:center;

    gap:36px;
    
    z-index:999;

}

.hero-menu a{

    color:rgba(255,255,255,.9);

    text-decoration:none;

    font-family:'Outfit',sans-serif;

    font-size:14px;

    font-weight:300;

    letter-spacing:.08px;

    transition:.25s;

}

.hero-menu a:hover{

    color:#EED384;

}

.hero-menu span{

    margin-left:4px;

    font-size:16px;

}

.hero-consultation{

    color:#fff;

    text-decoration:none;

    text-transform:uppercase;

    letter-spacing:3px;

    font-size:12px;

    font-family:'Outfit';

    position:relative;

}

.hero-consultation:after{

    content:'';

    position:absolute;

    left:0;

    bottom:-8px;

    width:100%;

    height:1px;

    background:rgba(255,255,255,.5);

}

.hero-consultation:hover{

    color:#EED384;

}

.hero-toggle{
    display:none;
    width:42px;
    height:42px;
    border:0;
    background:none;
    cursor:pointer;
    padding:0;
    position:relative;
    z-index:1001;
}

.hero-toggle span{
    display:block;
    width:26px;
    height:2px;
    background:#fff;
    margin:6px auto;
    transition:.3s;
}

.hero-toggle.active span:nth-child(1){
    transform:translateY(8px) rotate(45deg);
}

.hero-toggle.active span:nth-child(2){
    opacity:0;
}

.hero-toggle.active span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg);
}

/*======================================================
Treatments Dropdown
======================================================*/

.hero-dropdown {
    position: relative;
}

/* Dropdown panel */
.hero-dropdown-menu {
    position: absolute;
    top: calc(100% - 1px);
    left: 50%;
    transform: translateX(-50%);

    width: 280px;
    padding: 25px 30px;

    display: flex;
    flex-direction: column;
    gap: 24px;

    background: rgba(53, 61, 75, 0.95);
    backdrop-filter: blur(10px);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition: opacity .25s ease, visibility .25s ease;

    z-index: 999;
}

/* Show dropdown on hover */
.hero-dropdown:hover .hero-dropdown-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Category */
.treatment-category {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

/* Category heading */
.treatment-category h4 {
    margin: 0 0 5px;

    font-family: 'Outfit', sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2px;
    text-transform: uppercase;

    color: #EED384;
}

/* Treatment links */
.treatment-category a {
    display: block;

    font-family: 'Outfit', sans-serif;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;

    color: #F4F6F8;
    text-decoration: none;
    white-space: nowrap;

    transition: color .2s ease;
}

.treatment-category a:hover {
    color: #EED384;
}


@media (max-width:768px) {
.desktop-only {
    display: none;
}
}

/*======================================================
Hero Content
======================================================*/

.hero-container{
    height:calc(664px - 90px);

    display:flex;
    justify-content:center;
    align-items:center;

}

.hero-content{

    width:100%;
    max-width:1130px;

    text-align:center;

    margin:0 auto;

}

.hero-kicker{

    display:block;

    margin-bottom:30px;

    color:rgba(255,255,255,.80);

    text-transform:uppercase;

    letter-spacing:3.1px;

    font-size:11px;

    font-family:'Outfit';

}

.hero-content h1{

    font-family:var(--font-heading);

    /*font-size:77px;
    line-height:88px;*/
    font-size: 50px;
    line-height: 50px;
    font-weight:300;

    letter-spacing:-2px;

    margin:0 0 28px;

    color:#fff;
}

.hero-content h1 em{

    /* display:block; */

    font-style:italic;

    font-weight:300;
}

.hero-content p{

    max-width:1132px;

    margin:0 auto 54px;

    font-size:25px;

    line-height:36px;

    font-weight:300;

    color:rgba(255,255,255,.9);

    letter-spacing:1px;
}

.hero-btn{

    background:#353D4B;

    color:#F4F6F8;

    padding:19px 34px;

    letter-spacing:3.6px;

    font-size:14px;
}

.hero-btn:hover{

    background:#4A5568;

    color:#fff;
}

.hero-btn span{

    font-size:14px;

}



/*======================================================
Responsive
======================================================*/

@media(max-width:991px){

.ultherapy-hero{

        height:auto;
        min-height:700px;
        padding:20px 0 80px;

}

    .hero-container{
        height:auto;
        padding-top:80px;
    }

.hero-nav{

    flex-direction:row;

    gap:25px;

}

.hero-menu{

    flex-wrap:wrap;

    justify-content:center;

    gap:20px;

}

.hero-content{

    width:100%;

    margin-top:40px;
    text-align:center;

}

.hero-content h1{

        font-size:48px;
        line-height:54px;

}

.hero-content p{

    width:100%;
    font-size:18px;
    line-height:30px;

}

.hero-consultation{

    display:none;

}

    .hero-toggle{
        display:block;
    }

    .hero-consultation{
        display:none;
    }

    .hero-menu{
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        background:#353D4B;
        display:flex;
        flex-direction:column;
        padding:30px;
        gap:20px;

        opacity:0;
        visibility:hidden;
        transform:translateY(-10px);

        transition:.3s;
    }

    .hero-menu.active{
        opacity:1;
        visibility:visible;
        transform:none;
    }

    .hero-menu a{
        color:#fff;
    }

}

/*======================================
Journey Values
======================================*/

.journey-values{

    position:relative;
    overflow:hidden;

    padding:130px 0 145px;

    background:
        linear-gradient(240deg,#7DA1C4 0%,#353D4B 68%);

}

.journey-values::before{

    content:"";

    position:absolute;
    inset:0;

    background:url("https://journey-aesthetics.com/wp-content/uploads/2026/07/shutterstock_2754374857.jpg") center/cover;

    mix-blend-mode:luminosity;
    opacity:.15;

}

.journey-values .journey-container {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 1280px;

    margin-left: auto;
    margin-right: auto;

    padding: 0 48px;
    box-sizing: border-box;
}

.journey-values__intro{

    max-width:100%;

    margin-bottom:60px;

}

.journey-values__intro h2{

    margin:0 0 24px;
    letter-spacing: -0.7px;
    font-family:var(--font-heading);

    font-size:48px;
    font-weight:300;
    line-height:50px;

    color:#F4F6F8;

    text-transform:none;

}

.journey-values__intro h2 em{

    color:#EED384;

    font-style:italic;

}

.journey-values__intro p{

    font-size:18px;

    line-height:29px;

    color:rgba(244,246,248,.9);

    font-weight:300;

}

.journey-values__grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    column-gap:48px;

    row-gap:46px;

}

.journey-value{

    border-top:1px solid rgba(244,246,248,.8);

    padding-top:24px;

}

.journey-value h3{

    margin:0 0 18px;

    font-family:var(--font-heading);

    font-size:20px;

    font-weight:300;

    line-height:28px;

    color:#EED384;

}

.journey-value p{

    margin:0;

    font-family:var(--font-body);

    font-size:16px;

    line-height:26px;

    font-weight:300;

    color:#F4F6F8;

}

@media (max-width:1024px){

    .journey-values__grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media (max-width:767px){

    .journey-values{

        padding:80px 0;

    }

    .journey-values .journey-container{

        padding:0 24px;

    }

    .journey-values__intro h2{

        font-size:38px;
        line-height:44px;

    }

    .journey-values__grid{

        grid-template-columns:1fr;

        gap:35px;

    }

}

/* ======================================================
   Treatments Section
====================================================== */

.treatments-section{
    position:relative;
    padding:144px 0;
    background:#FCF6E7;
    overflow:hidden;
}

.treatments-section::before{
    content:"";
    position:absolute;
    inset:0;
    background:url("https://journey-aesthetics.com/wp-content/uploads/2026/07/flower-image.jpg") center center/cover no-repeat;
    opacity:.12;
    pointer-events:none;
}

.treatments-section .container{
    position:relative;
    z-index:2;
    max-width:1280px;
    margin:0 auto;
    padding:0 48px;
}

/* ======================================================
   Heading
====================================================== */

.treatments-section .section-heading{
    margin-bottom:64px;
}

.treatments-section .section-heading h2{
    margin:0;

    font-family:"Newsreader", serif;
    font-size:60px;
    font-weight:300;
    font-style:italic;
    line-height:1;
    text-align: left;
    letter-spacing:-0.72px;

    color:#353D4B;
}

/* ======================================================
   Grid
====================================================== */

.treatments-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);

    gap:48px;

    align-items:flex-start;

}

/* ======================================================
   Column
====================================================== */

.treatment-column{
    display:flex;
    flex-direction:column;
}

.treatment-column h3{

    display:flex;
    align-items:center;
    gap:10px;

    margin:0 0 32px;
    padding-bottom:16px;

    border-bottom:1px solid rgba(53,61,75,.15);

    font-family:"Newsreader", serif;
    font-size:30px;
    font-weight:300;
    line-height:1.2;

    color:#353D4B;

}

.treatment-column .icon{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    font-size:18px;

    color:#353D4B;

}

/* ======================================================
   Treatment Items
====================================================== */

.treatment-item{

    margin-bottom:34px;

}

.treatment-item:last-child{

    margin-bottom:0;

}

.treatment-item h4{

    margin:0 0 10px;

    font-family:"Newsreader", serif;
    font-size:18px;
    font-weight:300;
    line-height:1.55;

    color:#83481E;

}

.treatment-item p{

    margin:0 0 12px;

    font-family:"Outfit", sans-serif;
    font-size:14px;
    font-weight:300;
    line-height:1.65;

    color:#5A6675;

}

.treatment-item a{

    display:inline-flex;
    align-items:center;
    gap:6px;

    font-family:"Outfit", sans-serif;
    font-size:12px;
    font-weight:300;

    letter-spacing:3px;
    text-transform:uppercase;

    color:#83481E;

    text-decoration:none;

    transition:.3s ease;

}

.treatment-item a::before{

    content:"→";

    transition:.3s ease;

}

.treatment-item a:hover{

    color:#b56c33;

}

.treatment-item a:hover::before{

    transform:translateX(4px);

}

/* ======================================================
   Hover Effects
====================================================== */

.treatment-item{
    transition:all .3s ease;
}

.treatment-item:hover{
    transform:translateY(-2px);
}

.treatment-item:hover h4{
    color:#A15C2C;
}

.treatment-item:hover a{
    letter-spacing:3.5px;
}

/* ======================================================
   Better Paragraph Spacing
====================================================== */

.treatment-item p:last-of-type{
    margin-bottom:12px;
}

.treatment-column .treatment-item:not(:last-child){
    padding-bottom:2px;
}

/* ======================================================
   Desktop Polish
====================================================== */

@media (min-width:1200px){

    .treatment-column{
        min-width:0;
    }

    .treatment-item{
        max-width:360px;
    }

}

/* ======================================================
   Tablet
====================================================== */

@media (max-width:991px){

    .treatments-section{
        padding:100px 0;
    }

    .treatments-section .container{
        padding:0 32px;
    }

    .section-heading{
        margin-bottom:48px;
    }

    .section-heading h2{
        font-size:48px;
    }

    .treatments-grid{
        grid-template-columns:1fr;
        gap:64px;
    }

    .treatment-column h3{
        font-size:28px;
    }

}

/* ======================================================
   Mobile
====================================================== */

@media (max-width:767px){

    .treatments-section{
        padding:80px 0;
    }

    .treatments-section .container{
        padding:0 24px;
    }

    .section-heading{
        margin-bottom:40px;
    }

    .section-heading h2{
        font-size:40px;
        line-height:1.1;
    }

    .treatments-grid{
        gap:56px;
    }

    .treatment-column h3{
        font-size:26px;
        margin-bottom:28px;
    }

    .treatment-item{
        margin-bottom:28px;
    }

    .treatment-item h4{
        font-size:20px;
        margin-bottom:8px;
    }

    .treatment-item p{
        font-size:15px;
        line-height:1.7;
    }

    .treatment-item a{
        font-size:11px;
        letter-spacing:2px;
    }

}

/* ======================================================
   Small Mobile
====================================================== */

@media (max-width:480px){

    .treatments-section{
        padding:64px 0;
    }

    .treatments-section .container{
        padding:0 20px;
    }

    .section-heading h2{
        font-size:34px;
    }

    .treatment-column h3{
        font-size:24px;
    }

}

/* ======================================================
   Accessibility
====================================================== */

.treatment-item a:focus-visible{
    outline:2px solid #83481E;
    outline-offset:4px;
}

/* ======================================================
   Reduced Motion
====================================================== */

@media (prefers-reduced-motion:reduce){

    .treatment-item,
    .treatment-item a,
    .treatment-item a::before{
        transition:none;
    }

    .treatment-item:hover{
        transform:none;
    }

    .treatment-item:hover a::before{
        transform:none;
    }

}


/* ==========================
   ABOUT
========================== */

.ja-about{
    position:relative;
    overflow:hidden;
    padding:130px 0 175px;
    background:url('https://journey-aesthetics.com/wp-content/uploads/2026/08/homepage_about_bg.jpg') center center/cover no-repeat;
}

.ja-about__overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        270deg,
        rgba(48,53,66,.88) 0%,
        rgba(118,150,188,.78) 155.8%
    );
}

.ja-about .ja-container{
    position:relative;
    z-index:2;
    max-width:1200px;
    margin:0 auto;
    padding:0 48px;
}

.ja-about__content{
    text-align:center;
}

.ja-about h2{
    margin:0 0 38px;
    text-transform: none;
    font-family:var(--font-heading);
    font-style:italic;
    font-weight:300;
    font-size:60px;
    line-height:58px;
    letter-spacing:.08px;
    color:#F4F6F8;
}

.ja-about p{
    margin:0 auto 42px;

    max-width:1130px;

    font-family:var(--font-body);
    font-weight:300;
    font-size:25px;
    line-height:1.45;
    letter-spacing:1px;

    color:rgba(255,255,255,.9);
}

.ja-about p:last-child{
    margin-bottom:0;
}

/* ==========================
   RESPONSIVE
========================== */

@media (max-width:991px){

    .ja-about{
        padding:90px 0;
    }

    .ja-about h2{
        font-size:48px;
        line-height:1.1;
    }

    .ja-about p{
        font-size:20px;
        line-height:1.6;
        letter-spacing:.5px;
    }

}

@media (max-width:767px){

    .ja-about{
        padding:70px 0;
    }

    .ja-about .ja-container{
        padding:0 24px;
    }

    .ja-about h2{
        font-size:38px;
    }

    .ja-about p{
        font-size:18px;
        line-height:1.7;
    }

}

/* ==========================================
   AS FEATURED IN
========================================== */

.ja-featured{
    background:#fff;
    border-top:1px solid #D8E1E2;
    border-bottom:1px solid #D8E1E2;
    padding:64px 0;
}

.ja-featured .ja-container{
    max-width:1280px;
    margin:0 auto;
    padding:0 48px;

    display:flex;
    flex-direction:column;
    align-items:center;
    gap:32px;
}

.featured-label{
    font-family:var(--font-body);
    font-size:11px;
    font-weight:400;
    line-height:1;

    letter-spacing:3px;
    text-transform:uppercase;

    color:#5A6675;
}

.featured-logos{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:48px;
    flex-wrap:wrap;
}

.logo-singalife{
    width:233px;
    height:auto;
    display:block;
}

.logo-bazaar{
    width:262px;
    height:auto;
    display:block;
}

/* ==========================================
   Responsive
========================================== */

@media (max-width:768px){

    .ja-featured{
        padding:48px 0;
    }

    .ja-featured .ja-container{
        padding:0 24px;
    }

    .featured-logos{
        gap:36px;
    }

    .logo-singalife,
    .logo-bazaar{
        width:190px;
        max-width:100%;
    }

}

/* ==================================================
   INSTAGRAM
================================================== */

.ja-instagram{
    position:relative;
    padding:68px 0 128px;
    overflow:hidden;
    background:#FCF6E7;
}

.ja-instagram::before{
    content:"";
    position:absolute;
    inset:0;
    background:url("../images/shutterstock_2754374857.jpg") center/cover no-repeat;
    opacity:.10;
    mix-blend-mode:multiply;
    pointer-events:none;
}

.ja-instagram .ja-container{
    position:relative;
    z-index:2;

    max-width:1280px;
    margin:0 auto;
    padding:0 48px;
}

/*========================*/

.ja-instagram-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:60px;
    margin-bottom:48px;
}

.ja-instagram-copy{
    max-width:670px;
}

.ja-instagram-copy h2{
    margin:0 0 16px;
    text-transform: none;
    font-family:var(--font-heading);
    font-size:36px;
    font-weight:300;
    line-height:40px;
    letter-spacing:-0.54px;
    color:#353D4B;
}

.ja-instagram-copy h2 em{
    color:#83481E;
    font-style:italic;
    font-weight:300;
}

.ja-instagram-copy p{
    margin:0;

    font-family:var(--font-body);
    font-size:16px;
    font-weight:300;
    line-height:26px;
    color:#5A6675;
}

.ja-instagram-link{
    display:inline-flex;
    align-items:center;
    gap:12px;

    padding-bottom:4px;

    font-family:var(--font-body);
    font-size:12px;
    font-weight:300;

    letter-spacing:3px;
    text-transform:uppercase;
    text-decoration:none;

    color:#353D4B;

    border-bottom:1px solid #353D4B;

    transition:.3s;
}

.ja-instagram-link:hover{
    color:#83481E;
    border-color:#83481E;
}

/*========================*/

.ja-instagram-grid{

    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:16px;

}

.ja-instagram-grid a{

    display:block;
    overflow:hidden;

    aspect-ratio:1;

}

.ja-instagram-grid img{

    width:100%;
    height:100%;
    object-fit:cover;

    transition:transform .4s ease;

}

.ja-instagram-grid a:hover img{

    transform:scale(1.06);

}

/*========================*/

@media (max-width:1024px){

    .ja-instagram-header{
        flex-direction:column;
        align-items:flex-start;
        gap:24px;
    }

    .ja-instagram-grid{
        grid-template-columns:repeat(3,1fr);
    }

}

@media (max-width:768px){

    .ja-instagram{

        padding:60px 0 80px;

    }

    .ja-instagram .ja-container{

        padding:0 24px;

    }

    .ja-instagram-copy h2{

        font-size:30px;

    }

    .ja-instagram-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

/* DOCTOR */

.doctor{
    padding:104px 80px 144px;
    background:#E9EEEF;
}

.doctor .ultherapy-container{
    max-width:1180px;
    margin:0 auto;

    display:grid;
    grid-template-columns:456px 1fr;
    gap:112px;
    align-items:start;
}

.doctor__left{
    display:flex;
    flex-direction:column;
}

.doctor__heading{
    margin-bottom:36px;
}

.doctor__heading span{
    display:block;

    font-family:var(--font-heading);
    font-style:italic;
    font-size:80px;
    line-height:.8;
    color:#7DA1C4;
    font-weight: 300;
}

.doctor__heading h2{
    margin-top:6px;
    letter-spacing: -0.72px;
    font-family:var(--font-heading);
    font-size:58px;
    font-weight:300;
    text-transform: none;
}

.doctor__image{
    position:relative;
}

.doctor__image img{
    display:block;
    width:100%;
    aspect-ratio:456/570;
    object-fit:cover;
}

.doctor__card{
    position:absolute;
    right:-18px;
    bottom:-20px;

    width:288px;

    background:#fff;
    padding:18px 22px;
}

.doctor__card h3{
    font-family:var(--font-heading);
    font-size:20px;
    font-style:italic;
    font-weight:300;
    margin-bottom:10px;
}

.doctor__card p{
    font-size:11px;
    letter-spacing:3px;
    text-transform:uppercase;
}

.doctor__right{
    display:flex;
    flex-direction:column;
    gap:42px;
}

.doctor__section{
    display:flex;
    flex-direction:column;
    gap:18px;
}

.eyebrow{
    font-size:11px;
    letter-spacing:3px;
    text-transform:uppercase;
    color:#5A6675;
}

.doctor__section p{
    max-width:576px;

    font-size:18px;
    line-height:1.7;
    color:#5A6675;
}

.doctor__qualifications{
    list-style:none;
    max-width:495px;
}

.doctor__qualifications li{
    display:flex;
    gap:14px;

    padding:14px 0;

    border-top:1px solid rgba(53,61,75,.15);

    font-size:14px;
    line-height:1.6;
    color:#5A6675;
}

.doctor__qualifications li::before{
    content:"—";
    color:#83481E;
    font-family:var(--font-heading);
    font-style:italic;
}

.btn-dark{
    margin-top:12px;

    display:inline-flex;
    align-items:center;
    gap:12px;

    width:max-content;

    padding:16px 28px;

    background:#353D4B;
    color:#fff;

    text-transform:uppercase;
    letter-spacing:3px;
    font-size:12px;

    text-decoration:none;
}

@media (max-width:991px){

    .doctor{
        padding:80px 24px;
    }

    .doctor .ultherapy-container{
        grid-template-columns:1fr;
        gap:60px;
    }

    .doctor__heading span{
        font-size:58px;
    }

    .doctor__heading h2{
        font-size:42px;
    }

    .doctor__image{
        max-width:520px;
    }

    .doctor__card{
        right:16px;
        bottom:-18px;
        width:260px;
    }

    .doctor__section p,
    .doctor__qualifications{
        max-width:none;
    }
}

.why-journey{
    padding:128px 0;
    background:#FCFBF8;
}

.why-journey .ultherapy-container{
    max-width:1180px;
    margin:0 auto;
    padding:0 48px;

    display:flex;
    flex-direction:column;
    gap:64px;
}

.section-heading{
    max-width:1180px;
}

.section-heading h2{
    margin:0;
    text-align:center;
    font-family:var(--font-heading);
    font-size:48px;
    font-weight:100;
    line-height:1.05;
    letter-spacing:-0.72px;
    color:var(--dark);
    text-transform: none;
}

.section-heading span{
    color:#83481E;
    font-style:italic;
}

.section-heading em{
    font-style:italic;
    font-weight:300;
}

.why-journey__grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:40px 56px;
}

.feature-card{
    border-top:1px solid rgba(53,61,75,.2);
    padding-top:24px;

    display:flex;
    flex-direction:column;
    gap:12px;
}

.feature-card h3{
    margin:0;

    display:flex;
    align-items:center;
    gap:10px;

    font-family:var(--font-heading);
    font-size:24px;
    font-weight:300;
    font-style:normal;
    line-height:1.3;

    color:#83481E;
}

.icon{
    font-size:18px;
    line-height:1;
    flex-shrink:0;
}

.feature-card p{
    margin:0;

    font-size:16px;
    line-height:1.65;
    font-weight:300;

    color:#5A6675;
}

@media (max-width:991px){

    .why-journey{
        padding:80px 24px;
    }

    .why-journey .container{
        padding:0;
        gap:48px;
    }

    .section-heading h2{
        font-size:36px;
    }

    .why-journey__grid{
        grid-template-columns:1fr;
        gap:32px;
    }

    .feature-card h3{
        font-size:22px;
    }
}



/*====================================================
 Consultation
====================================================*/

/*=========================================
 Consultation
=========================================*/

.consultation{

    padding:133px 0 144px;

    background:#FCFBF8;

}

/*--------------------------------*/

.consultation__wrapper{

    width:1101px;

    margin:0 auto;

    display:flex;

    justify-content:space-between;

    align-items:flex-start;

    gap:70px;

}

/*--------------------------------*/

.consultation__content{

    width:598px;

    padding-top:90px;

}

/*--------------------------------*/

.consultation__content h2{

    margin:24px 0 24px;

    font-family:var(--font-heading);

    font-size:95px;

    font-weight:300;

    line-height:100px;

    letter-spacing:-1.42px;

    color:#353D4B;
    text-transform: none;

}

.consultation__content h2 span{

    color:#955421;

    font-style:italic;

}

.consultation__content .section-label {
    font-family:var(--font-body);
    font-size:11px;
    letter-spacing:3.136px;
    text-transform:uppercase;
}

/*--------------------------------*/

.consultation__content p{

    width:448px;

    margin:0;

    font-size:16px;

    line-height:26px;

    font-weight:300;

    color:#5A6675;

}

/*--------------------------------*/

.consultation__form{

    width:469px;

}

/*--------------------------------*/

.consultation__question{

    margin:0 0 14px;

    font-size:16px;

    font-weight:300;

    line-height:36px;

    color:#5A6675;

}

/*--------------------------------*/

.consultation__checkbox{

    display:flex;

    align-items:center;

    margin-bottom:15px;

    cursor:pointer;

}

.consultation__checkbox input{

    appearance:none;

    width:21px;

    height:21px;

    margin-right:16px;

    border:1px solid rgba(90,102,117,.3);

    background:#fff;

}

.consultation__checkbox input:checked{

    background:#353D4B;

}

.consultation__checkbox span{

    font-size:16px;

    line-height:36px;

    font-weight:300;

    color:#5A6675;

}

.consultation-checkboxes .wpcf7-list-item{
    display:block;
    margin:0 0 15px;
}

.consultation-checkboxes .wpcf7-list-item label{
    display:flex;
    align-items:center;
    cursor:pointer;
}

.consultation-checkboxes input[type="checkbox"]{
    appearance:none;
    width:21px;
    height:21px;
    margin-right:16px;
    border:1px solid rgba(90,102,117,.3);
    background:#fff;
    flex-shrink:0;
}

.consultation-checkboxes input[type="checkbox"]:checked{
    background:#353D4B;
}

.consultation-checkboxes .wpcf7-list-item-label{
    font-size:16px;
    line-height:36px;
    font-weight:300;
    color:#5A6675;
}



/*--------------------------------*/

.consultation__phone{

    margin-top:40px;

    display:flex;

    align-items:center;

    border-bottom:1px solid rgba(53,61,75,.35);

}

.consultation__phone input{

    flex:1;

    border:none;

    background:none;

    padding-bottom:18px;

    font-size:11.2px;

    font-weight:400;

    letter-spacing:3.136px;

    text-transform:uppercase;

    color:#5A6675;

}

.consultation__phone input::placeholder{

    color:#5A6675;

}

.consultation__phone button{

    border:none;

    background:none;

    padding-bottom:18px;

    font-size:20px;

    color:#5A6675;

    cursor:pointer;

}

.consultation__phone input[type="submit"]{
    border:none;
    background:none;
    padding-bottom:18px;
    font-size:20px;
    color:#5A6675;
    cursor:pointer;
}

@media(max-width:991px){

    .consultation{

        padding:90px 24px;

    }

    .consultation__wrapper{

        width:100%;

        display:block;

    }

    .consultation__content{

        width:100%;

        padding:0;

        margin-bottom:60px;

    }

    .consultation__content h2{

        font-size:62px;

        line-height:68px;

    }

    .consultation__content p{

        width:100%;

    }

    .consultation__form{

        width:100%;

    }

}

/*================================================
 OTHER TREATMENTS
================================================*/

.other-treatments{
    position:relative;
    overflow:hidden;

    padding:73px 0 128px;
    background:#F4E4D1;
}

.other-treatments::before{
    content:"";
    position:absolute;
    inset:0;

    background:url("https://journey-aesthetics.com/wp-content/uploads/2026/07/shutterstock_2754374857.jpg")
        center/cover no-repeat;

    opacity:.1;   /* 10% */
    pointer-events:none;
    z-index:0;
}

.other-treatments > *{
    position:relative;
    z-index:1;
}

.other-treatments__container{

    width:1280px;

    margin:0 auto;

    padding:0 48px;

}

.other-treatments__heading{

    margin-bottom:20px;

}

.other-treatments__heading h2{

    margin-top:24px;

    font-family:var(--font-heading);

    font-size:48px;

    line-height:50px;

    font-style:italic;

    font-weight:300;

    letter-spacing:-0.72px;

    color:#353D4B;
    text-transform: none;

}

.other-treatments__heading .section-label{

    font-family:var(--font-body);

    font-size:11px;

    letter-spacing:3.136px;

    text-transform:uppercase;

    color:#5A6675;

}

.other-treatments__grid{

    display:flex;

    gap:40px;

}

.treatment-card{

    display:flex;
    flex-direction:column;

}

.treatment-card a{

    text-decoration:none;

    color:inherit;

    display:flex;
    flex-direction:column;
    flex:1;

}

.treatment-card img{

    width:100%;

    height:130px;

    object-fit:cover;

    border-radius:20px;

    display:block;

}

.treatment-card h3{

    margin:22px 0 16px;

    font-family:var(--font-heading);

    font-size:24px;

    font-weight:300;

    line-height:32px;

    letter-spacing:-0.36px;

    color:#353D4B;

}

.treatment-card p{
    flex:1;

    margin:0;

    font-size:16px;

    line-height:26px;

    font-weight:300;

    color:#5A6675;

}

.learn-more{

    display:inline-block;

    margin-top:28px;

    font-size:12px;

    font-weight:300;

    letter-spacing:3px;

    text-transform:uppercase;

    color:#353D4B;

    transition:.25s;

}

.treatment-card:hover .learn-more{

    letter-spacing:3.5px;

    transform:translateX(4px);

}

@media (max-width:991px){

    .other-treatments{

        padding:80px 24px;

    }

    .other-treatments__container{

        width:100%;

        padding:0;

    }

    .other-treatments__grid{

        flex-direction:column;

        gap:48px;

    }

    .other-treatments__heading h2{

        font-size:38px;

        line-height:44px;

    }

}

/* ==================================================
   FAQ
================================================== */

.ja-faq{
    background:#D8E1E2;
    padding:144px 208px;
}

.ja-faq__container{
    max-width:1024px;
    margin:0 auto;
}

.ja-faq__eyebrow{
    margin:0 0 24px;

    font-family:var(--font-body);
    font-size:11.2px;
    line-height:17px;
    letter-spacing:3.14px;
    text-transform:uppercase;
    color:#5A6675;
}

.ja-faq__title{
    margin:0 0 40px;
	text-transform: none;
    font-family:var(--font-heading);
    font-weight:300;
    font-size:48px;
    line-height:50px;
    letter-spacing:-0.72px;
    color:#353D4B;
}

.ja-faq__title span{
    color:#5A6675;
    font-style:italic;
}

.ja-faq__list{
    border-top:1px solid rgba(53,61,75,.15);
}

.faq-item{
    border-bottom:1px solid rgba(53,61,75,.15);
}

.faq-item summary{
    list-style:none;
    cursor:pointer;

    display:flex;
    justify-content:space-between;
    align-items:flex-start;

    padding:24px 0;

    position:relative;
}

.faq-item summary::-webkit-details-marker{
    display:none;
}

.faq-item summary span{
    width:calc(100% - 40px);

    font-family:var(--font-heading);
    font-weight:300;
    font-size:24px;
    line-height:32px;
    color:#353D4B;
}

.faq-item summary::after{

    content:"+";

    font-family:var(--font-body);
    font-weight:300;
    font-size:28px;
    line-height:32px;

    color:#353D4B;

    transition:.25s;
}

.faq-item[open] summary::after{

    content:"×";

    font-size:26px;
}

.faq-answer{

    max-width:768px;

    padding:0 0 32px;
}

.faq-answer p{

    margin:0;
    font-family:var(--font-body);
    font-weight:300;
    font-size:16px;
    line-height:26px;
    letter-spacing:.08px;
    color:#5A6675;
	margin-bottom: 20px;
}

.faq-answer p a{
	
    color:#5A6675;
    text-decoration: underline;
}

@media (max-width:991px){
    .ja-faq{
        background:#FCFBF8;
        padding:128px 40px;
}
}

/* ======================================
   CONTACT
====================================== */

.ja-contact{

    position:relative;
    padding:128px 80px;
    background:#2d2f33;
    overflow:hidden;

}

/* subtle flower texture */

.ja-contact::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        radial-gradient(
            circle at 50% 55%,
            rgba(238,211,132,.22) 0%,
            rgba(238,211,132,.08) 28%,
            transparent 60%
        ),
        url("https://journey-aesthetics.com/wp-content/uploads/2026/07/contact-flower.jpg") center bottom/1800px auto no-repeat;

    opacity:.28;
    pointer-events:none;
    z-index:0;
}

.ja-contact > *{
    position:relative;
    z-index:1;
}

.ja-contact__container{

    position:relative;
    max-width:1280px;
    margin:0 auto;

}

.ja-contact__top{

    display:flex;
    justify-content:space-between;
    align-items:flex-start;

    gap:90px;

    margin-bottom:64px;

}

.ja-contact__intro{

    width:465px;

}

.ja-eyebrow{

    display:block;

    font-size:11.2px;
    font-family:var(--font-body);

    letter-spacing:3px;
    text-transform:uppercase;

    color:rgba(244,246,248,.60);

    margin-bottom:24px;

}

.ja-contact__intro h2{

    margin:0;

    font-family:var(--font-heading);
    font-size:58px;
    font-weight:300;
    line-height:1.05;

    color:#F4F6F8;
    text-transform: none;

}

.ja-contact__intro h2 span{

    color:#C8D8F4;
    font-style:italic;

}

.ja-contact__intro p{

    margin-top:28px;

    font-size:16px;
    line-height:26px;
    font-weight:300;

    color:rgba(244,246,248,.70);

}

.ja-contact__info{

    display:flex;
    gap:90px;

}

.ja-contact__column{

    width:315px;

}

.ja-contact__column h3{

    margin:0 0 16px;

    font-size:11px;
    font-family:var(--font-body);
    font-weight:400;

    letter-spacing:3px;
    text-transform:uppercase;

    color:#EED384;

}

.ja-contact__column p{

    margin:0 0 18px;

    font-size:16px;
    line-height:26px;
    font-weight:300;

    color:rgba(244,246,248,.90);

}

.ja-contact__column small{

    display:block;

    font-size:14px;
    line-height:20px;

    color:rgba(244,246,248,.60);

}

.mt-40{

    margin-top:34px !important;

}

.ja-contact__column a{

    display:block;

    margin-top:12px;

    font-size:16px;
    line-height:24px;

    color:rgba(244,246,248,.90);
    text-decoration:none;

    transition:.25s;

}

.ja-contact__column a:hover{

    color:#fff;

}

.ja-map{

    border:1px solid rgba(244,246,248,.10);

    overflow:hidden;

}

.ja-map iframe{

    display:block;
    width:100%;
    height:516px;
    border:0;
	filter: none;

}

@media (max-width:991px){
    
        .ja-contact {
            padding: 128px 40px;
        }
        
        .ja-contact__top {
            flex-direction: column;
        }
        
        .ja-contact__intro {
            width: 100%;
        }
}

/* ==================================================
   FOOTER
================================================== */

.ja-footer{
    background:#F4F6F8;
    border-top:1px solid #D8E1E2;
    padding:28px 0;
    position: relative;
    margin-top: 0;
    margin-bottom: 0;
}

.ja-footer__inner{
    max-width:1280px;      /* same width as previous section */
    margin:0 auto;
    padding:0 48px;        /* same horizontal gutter */

    display:flex;
    justify-content:space-between;
    align-items:center;

    min-height:44px;
}

.ja-footer__logo{
    flex:1;
}

.ja-footer__logo img{
    width:165px;           /* matches Figma */
    display:block;
}

.ja-footer__copyright{
    flex:1;

    text-align:center;

    font-family:var(--font-body);
    font-weight:300;
    font-size:12px;
    line-height:16px;
    letter-spacing:.08px;
    color:#5A6675;
}

.ja-footer__socials{
    flex:1;

    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:16px;
}

.ja-footer__socials a{
    width:40px;
    height:40px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#353D4B;
    text-decoration:none;
    transition:.25s;
}

.ja-footer__socials svg{
    width:16px;
    height:16px;
}

.ja-footer__socials a:hover{
    color:var(--gold);
}

@media (max-width:991px){
    
        .ja-footer {
            margin-top: -20px;
        }
        
        .ja-footer__inner {
            flex-direction: column;
            gap: 10px;
        }
}


#logo, #nav, #nav-sub {
	display: none;
}

footer {
	display: none!important;
}

footer.ja-footer {
	display: block!important;
}

#hamburger {
	display: none;
}