/* ==========================================================
   1024px
========================================================== */

@media (max-width:1024px){
/* ==========================================================
   HERO
========================================================== */
.programs-hero{
    min-height:auto;
    padding:110px 0 90px;
}
.programs-container{
    width:min(96%,1200px);
    grid-template-columns:45% 55%;
    gap:50px;
}
.programs-image-placeholder{
    width:330px;
    height:470px;
    font-size:20px;
}
.programs-title{
    font-size:clamp(2.6rem,4vw,3.6rem);
    letter-spacing:-2px;
}
.programs-title span{
    margin-bottom:12px;
}
.v-divider-black svg{
    height:90px;
}
/* ==========================================================
   GOAL SECTION
========================================================== */
.goal-section{
    padding:90px 0 100px;
}
.goal-title{
    font-size:46px;
    margin-top:-45px;
    margin-bottom:60px;
}
.goal-grid{
    gap:20px;
}
.goal-card{
    padding:20px 22px;
}
.goal-check{
    width:22px;
    height:22px;
}
.goal-text{
    font-size:20px;
}
.v-divider-white svg{
    height:90px;
}
/* ==========================================================
   JOURNEY SECTION
========================================================== */
.journey-section{
    padding:100px 0;
    margin-bottom: 100px;
}
.journey-title{
    font-size:46px;
    margin-top:-45px;
    margin-bottom:50px;
}
.journey-item{
    grid-template-columns:300px 1fr;
    gap:60px;
    margin-bottom:-40px;
}
.journey-book img{
    width:280px;
}
.journey-content h3{
    font-size:42px;
    margin-bottom:18px;
}
.journey-content p{
    font-size:20px;
    line-height:1.65;
    margin-bottom:18px;
    max-width:650px;
}
}
/* ==========================================================
   768px
========================================================== */

@media (max-width:768px){
.program-hero{
    display:flex;
    flex-direction:column-reverse;
    min-height:auto;
    border-top:1px solid #111;
    border-bottom:none;
}
.program-hero__right{
    height:360px;
    border-bottom:2px solid #111;
}
.program-hero__right img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
}
.program-hero__left{
    padding:45px 28px;
    border-right:none;
}
.program-hero__eyebrow{
    margin:10px 0 16px;
    font-size:14px;
}
.program-hero__title{
    font-size:48px;
    line-height:.95;
    margin-bottom:20px;
}
.program-hero__text{
    width:100%;
    font-size:21px;
    margin-bottom:28px;
}
.program-hero__btn{
    width:190px;
    height:54px;
    font-size:18px;
}
.confidence-message{
    padding:70px 0;
    margin-top: 1px;
}
.confidence-message__container{
    display:flex;
    flex-direction:column;
    gap:45px;
}
.confidence-message__left{
    text-align:center;
}
.confidence-message__left h2{
    font-size:46px;
}
.confidence-message__right{
    text-align:left;
}
.confidence-message__right h3{
    font-size:25px;
    margin-bottom:25px;
}
.confidence-message__right p{
    font-size:18px;
    line-height:1.7;
    margin-bottom:24px;
}
.v-divider-black svg{
    height:100px;
    margin-top: 50px;
}
/* ==========================================================
   GOAL SECTION
========================================================== */
.goal-section{
    padding:70px 0 80px;
}
.goal-title{
    font-size:34px;
    margin-top:-25px;
    margin-bottom:45px;
}
.goal-grid{
    gap:14px;
}
.goal-card{
    padding:16px 18px;
    border-radius:14px;
    gap:12px;
}
.goal-check{
    width:18px;
    height:18px;
}
.goal-card input:checked + .goal-check::after{
    font-size:12px;
}
.goal-text{
    font-size:16px;
}
.v-divider-white svg{
    height:70px;
    margin-top: 30px;
    transform:translateY(1px);
}
/* ==========================================================
   JOURNEY SECTION
========================================================== */
.journey-section{
    padding:80px 0;
    margin-bottom: 100px;
}
.journey-title{
    font-size:34px;
    margin-top:-30px;
    margin-bottom:40px;
}
.journey-item{
    grid-template-columns:220px 1fr;
    gap:35px;
    margin-bottom:15px;
    align-items:center;
}
.journey-book img{
    width:200px;
    height: auto;
}
.journey-content h3{
    font-size:30px;
    margin-bottom:14px;
}
.journey-content p{
    font-size:16px;
    line-height:1.6;
    margin-bottom:14px;
    max-width:100%;
}
}
/* ==========================================================
   480px
========================================================== */

@media (max-width:480px){
.program-hero__right{
    position:relative;
    overflow:visible;
}
.program-hero__right img{
    position:absolute;
    bottom:0;
    left:50%;
    transform:translateX(-50%);
    height:300px;
    width:auto;
    object-fit:cover;
}
.program-hero__left{
    padding:45px 20px;
}
.program-hero__eyebrow{
    font-size:13px;
}
.program-hero__title{
    font-size:38px;
}
.program-hero__text{
    font-size:18px;
}
.program-hero__btn{
    width:180px;
    height:52px;
    font-size:18px;
}
.confidence-message{
    padding:55px 0;
}
.confidence-message__left h2{
    font-size:34px;
    margin-top: 20px;
}
.confidence-message__right h3{
    font-size:20px;
}
.confidence-message__right p{
    font-size:16px;
    line-height:1.65;
}
.v-divider-black svg{
    height:100px;
    margin-top: 50px;
}
/* ==========================================================
   GOAL SECTION
========================================================== */
.goal-section{
    padding:55px 0 60px;
}
.goal-title{
    font-size:28px;
    margin-top:-10px;
    margin-bottom:30px;
}
.goal-grid{
    grid-template-columns:1fr;
    gap:12px;
}
.goal-card{
    padding:14px 16px;
    border-radius:12px;
    gap:12px;
}
.goal-check{
    width:18px;
    height:18px;
}
.goal-card input:checked + .goal-check::after{
    font-size:11px;
}
.goal-text{
    font-size:15px;
}
.v-divider-white svg{
    height:55px;
    margin-top: 30px;
}
/* ==========================================================
   JOURNEY SECTION
========================================================== */
.journey-section{
    padding:60px 0;
    margin-bottom: 100px;
}
.journey-title{
    font-size:28px;
    margin-top:-10px;
    margin-bottom:35px;
}
.journey-item{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:0px;
    margin-bottom:55px;
}
.journey-book img{
    width:220px;
    height: auto;
}
.journey-content h3{
    font-size:26px;
    margin-bottom:14px;
}
.journey-content p{
    font-size:15px;
    line-height:1.65;
    margin-bottom:12px;
    max-width:100%;
}
.ready-photo{
    height:350px;
    overflow:hidden;
}
.ready-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 80%;
    display:block;
}
}