/* =========================================================
   SANATAN RATAN ACADEMY
   2 YEAR INTEGRATED PROGRAM
   CLASS 11 TO 12
========================================================= */


/* =========================================================
   PAGE BASE
========================================================= */

.sra-2ip-page{

    --two-brown:#70421d;
    --two-dark:#3e2617;
    --two-copper:#a96f35;
    --two-gold:#c89a55;

    --two-cream:#fbf7f0;
    --two-soft:#f3eadc;

    --two-text:#4d4037;
    --two-muted:#6b5d52;

    --two-border:rgba(112,66,29,.14);

    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;

    color:var(--two-text);

    background:#fff;

    overflow:hidden;
}


.sra-2ip-page *,
.sra-2ip-page *::before,
.sra-2ip-page *::after{
    box-sizing:border-box;
}


/* =========================================================
   ASTRA GAP FIX
========================================================= */

#primary.sra-2ip-page{
    margin-top:0 !important;
    margin-bottom:0 !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
}

.sra-2ip-page > section:first-child{
    margin-top:0 !important;
}

.sra-2ip-page > section:last-child{
    margin-bottom:0 !important;
}


/* =========================================================
   CONTAINER
========================================================= */

.sra-2ip-container{

    width:min(1180px,92%);

    margin-left:auto;
    margin-right:auto;
}


/* =========================================================
   HERO
========================================================= */

.sra-2ip-hero{

    position:relative;

    width:100%;

    min-height:620px;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:
        radial-gradient(
            circle at 82% 25%,
            rgba(200,154,85,.20),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #fffdf9 0%,
            #f8efe3 52%,
            #ead9c2 100%
        );
}


.sra-2ip-hero::before{

    content:"";

    position:absolute;

    right:-170px;
    bottom:-220px;

    width:480px;
    height:480px;

    border:1px solid rgba(112,66,29,.15);

    border-radius:50%;

    pointer-events:none;
}


.sra-2ip-hero::after{

    content:"";

    position:absolute;

    right:60px;
    top:-160px;

    width:300px;
    height:300px;

    border:1px solid rgba(112,66,29,.12);

    border-radius:50%;

    pointer-events:none;
}


.sra-2ip-hero-overlay{

    position:absolute;

    inset:0;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.86),
            rgba(255,255,255,.18)
        );

    pointer-events:none;
}


.sra-2ip-hero-content{

    position:relative;

    z-index:2;

    width:100%;

    max-width:900px;

    padding:95px 0;
}


/* =========================================================
   LABEL
========================================================= */

.sra-2ip-label{

    display:inline-block;

    margin:0 0 16px;

    color:var(--two-copper);

    font-size:13px;

    font-weight:800;

    line-height:1.4;

    letter-spacing:2px;

    text-transform:uppercase;
}


/* =========================================================
   HERO HEADING
========================================================= */

.sra-2ip-hero h1{

    margin:0 0 22px;

    color:var(--two-dark);

    font-size:clamp(44px,6vw,76px);

    font-weight:800;

    line-height:1.06;

    letter-spacing:-1.8px;
}


.sra-2ip-hero h1 span{

    display:block;

    color:var(--two-brown);
}


/* =========================================================
   HERO TEXT
========================================================= */

.sra-2ip-hero p{

    max-width:780px;

    margin:0 0 30px;

    color:#625348;

    font-size:18px;

    line-height:1.8;
}


/* =========================================================
   BUTTONS
========================================================= */

.sra-2ip-buttons{

    display:flex;

    flex-wrap:wrap;

    gap:13px;
}


.sra-2ip-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-height:50px;

    padding:0 28px;

    border-radius:8px;

    text-decoration:none !important;

    font-size:14px;

    font-weight:700;

    line-height:1;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        background .3s ease,
        border-color .3s ease;
}


.sra-2ip-btn-primary{

    color:#fff !important;

    background:var(--two-brown);

    border:1px solid var(--two-brown);

    box-shadow:
        0 12px 25px rgba(112,66,29,.20);
}


.sra-2ip-btn-primary:hover{

    transform:translateY(-3px);

    color:#fff !important;

    background:var(--two-dark);

    border-color:var(--two-dark);

    box-shadow:
        0 16px 30px rgba(112,66,29,.25);
}


.sra-2ip-btn-outline{

    color:var(--two-brown) !important;

    background:rgba(255,255,255,.58);

    border:1px solid rgba(112,66,29,.30);
}


.sra-2ip-btn-outline:hover{

    transform:translateY(-3px);

    color:var(--two-brown) !important;

    background:#fff;

    border-color:rgba(112,66,29,.45);
}


/* =========================================================
   GENERAL SECTION
========================================================= */

.sra-2ip-section{

    position:relative;

    width:100%;

    margin:0;

    padding:95px 0;

    background:#fff;
}


.sra-2ip-light{

    background:
        linear-gradient(
            180deg,
            #fbf7f0 0%,
            #f8f1e7 100%
        );
}


/* =========================================================
   SECTION HEADING
========================================================= */

.sra-2ip-heading{

    max-width:800px;

    margin:0 auto 50px;

    text-align:center;
}


.sra-2ip-heading h2,
.sra-2ip-intro h2,
.sra-2ip-split h2,
.sra-2ip-balance h2,
.sra-2ip-cta h2{

    margin:0 0 18px;

    color:var(--two-dark);

    font-size:clamp(32px,4vw,48px);

    font-weight:800;

    line-height:1.18;
}


.sra-2ip-heading h2 span,
.sra-2ip-intro h2 span,
.sra-2ip-split h2 span,
.sra-2ip-balance h2 span,
.sra-2ip-cta h2 span{

    color:var(--two-brown);
}


.sra-2ip-heading p{

    margin:0;

    color:var(--two-muted);

    font-size:16px;

    line-height:1.75;
}


/* =========================================================
   INTRO
========================================================= */

.sra-2ip-intro{

    max-width:870px;

    margin:0 auto;

    text-align:center;
}


.sra-2ip-intro p{

    max-width:800px;

    margin:0 auto 16px;

    color:var(--two-text);

    font-size:17px;

    line-height:1.85;
}


/* =========================================================
   YEAR CARDS
========================================================= */

.sra-2ip-year-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:22px;

    max-width:900px;

    margin:0 auto;
}


.sra-2ip-year-card{

    height:100%;

    padding:35px 30px;

    border:1px solid var(--two-border);

    border-radius:16px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(74,45,24,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}


.sra-2ip-year-card:hover{

    transform:translateY(-7px);

    border-color:rgba(112,66,29,.25);

    box-shadow:
        0 20px 42px rgba(74,45,24,.11);
}


.sra-2ip-year-top{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:10px;

    margin-bottom:24px;
}


.sra-2ip-year-top span{

    color:var(--two-gold);

    font-size:12px;

    font-weight:800;
}


.sra-2ip-year-top strong{

    color:var(--two-copper);

    font-size:11px;

    letter-spacing:1px;
}


.sra-2ip-year-card h3{

    margin:0 0 12px;

    color:var(--two-dark);

    font-size:25px;

    line-height:1.25;
}


.sra-2ip-year-card p{

    margin:0 0 20px;

    color:var(--two-text);

    font-size:14px;

    line-height:1.7;
}


.sra-2ip-year-card ul{

    margin:0;

    padding:0;

    list-style:none;
}


.sra-2ip-year-card li{

    position:relative;

    margin:0 0 9px;

    padding-left:18px;

    color:var(--two-text);

    font-size:13px;

    line-height:1.55;
}


.sra-2ip-year-card li::before{

    content:"";

    position:absolute;

    left:0;

    top:8px;

    width:6px;

    height:6px;

    border-radius:50%;

    background:var(--two-copper);
}


/* =========================================================
   WHY TWO YEARS
========================================================= */

.sra-2ip-split{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:70px;

    align-items:center;
}


.sra-2ip-split-content p{

    max-width:680px;

    margin:0 0 15px;

    color:var(--two-text);

    font-size:16px;

    line-height:1.8;
}


.sra-2ip-benefits{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:14px;
}


.sra-2ip-benefits div{

    padding:22px;

    border:1px solid var(--two-border);

    border-radius:12px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(74,45,24,.04);
}


.sra-2ip-benefits strong{

    display:block;

    margin-bottom:8px;

    color:var(--two-gold);

    font-size:12px;

    font-weight:800;
}


.sra-2ip-benefits span{

    color:var(--two-dark);

    font-size:14px;

    font-weight:700;

    line-height:1.5;
}


/* =========================================================
   SUBJECTS
========================================================= */

.sra-2ip-subject-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:24px;

    max-width:900px;

    margin:0 auto;
}


.sra-2ip-subject-card{

    height:100%;

    padding:36px;

    border:1px solid var(--two-border);

    border-radius:16px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(74,45,24,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.sra-2ip-subject-card:hover{

    transform:translateY(-6px);

    box-shadow:
        0 18px 42px rgba(74,45,24,.10);
}


.sra-2ip-subject-number{

    display:block;

    margin-bottom:20px;

    color:var(--two-gold);

    font-size:13px;

    font-weight:800;
}


.sra-2ip-subject-card h3{

    margin:0 0 12px;

    color:var(--two-dark);

    font-size:28px;
}


.sra-2ip-subject-card p{

    margin:0 0 20px;

    color:var(--two-text);

    font-size:15px;

    line-height:1.75;
}


.sra-2ip-subject-card ul{

    margin:0;

    padding:0;

    list-style:none;
}


.sra-2ip-subject-card li{

    position:relative;

    margin:0 0 10px;

    padding-left:20px;

    color:var(--two-text);

    font-size:14px;

    line-height:1.55;
}


.sra-2ip-subject-card li::before{

    content:"";

    position:absolute;

    left:0;

    top:9px;

    width:7px;

    height:7px;

    border-radius:50%;

    background:var(--two-copper);
}


/* =========================================================
   PROCESS
   IMPORTANT: PHP USES process-card
========================================================= */

.sra-2ip-process{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;
}


.sra-2ip-process-card{

    height:100%;

    padding:30px 25px;

    border-top:2px solid var(--two-gold);

    border-left:1px solid var(--two-border);

    border-right:1px solid var(--two-border);

    border-bottom:1px solid var(--two-border);

    border-radius:0 0 12px 12px;

    background:#fff;

    box-shadow:
        0 10px 30px rgba(74,45,24,.05);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.sra-2ip-process-card:hover{

    transform:translateY(-5px);

    box-shadow:
        0 16px 35px rgba(74,45,24,.09);
}


.sra-2ip-process-card > span{

    display:block;

    margin-bottom:18px;

    color:var(--two-copper);

    font-size:12px;

    font-weight:800;
}


.sra-2ip-process-card h3{

    margin:0 0 10px;

    color:var(--two-dark);

    font-size:20px;
}


.sra-2ip-process-card p{

    margin:0;

    color:var(--two-text);

    font-size:14px;

    line-height:1.7;
}


/* =========================================================
   BALANCE
========================================================= */

.sra-2ip-balance{

    display:grid;

    grid-template-columns:1.1fr .9fr;

    gap:55px;

    align-items:center;

    padding:55px;

    border:1px solid var(--two-border);

    border-radius:20px;

    background:
        linear-gradient(
            135deg,
            #fff,
            #f8eee1
        );

    box-shadow:
        0 18px 45px rgba(74,45,24,.07);
}


.sra-2ip-balance-content p{

    max-width:680px;

    margin:0 0 15px;

    color:var(--two-text);

    font-size:16px;

    line-height:1.8;
}


.sra-2ip-balance-points{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:13px;
}


.sra-2ip-balance-points div{

    padding:20px;

    border:1px solid rgba(112,66,29,.12);

    border-radius:10px;

    background:rgba(255,255,255,.72);
}


.sra-2ip-balance-points strong{

    display:block;

    margin-bottom:7px;

    color:var(--two-dark);

    font-size:14px;
}


.sra-2ip-balance-points span{

    color:var(--two-text);

    font-size:13px;

    line-height:1.5;
}


/* =========================================================
   TESTING
========================================================= */

.sra-2ip-test-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;
}


.sra-2ip-test-card{

    height:100%;

    padding:28px 24px;

    border:1px solid var(--two-border);

    border-radius:13px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(74,45,24,.04);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.sra-2ip-test-card:hover{

    transform:translateY(-5px);

    box-shadow:
        0 15px 32px rgba(74,45,24,.09);
}


.sra-2ip-test-card > span{

    color:var(--two-gold);

    font-size:12px;

    font-weight:800;
}


.sra-2ip-test-card h3{

    margin:18px 0 10px;

    color:var(--two-dark);

    font-size:18px;
}


.sra-2ip-test-card p{

    margin:0;

    color:var(--two-text);

    font-size:14px;

    line-height:1.7;
}


/* =========================================================
   MENTORING
========================================================= */

.sra-2ip-mentor-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:22px;
}


.sra-2ip-mentor-card{

    height:100%;

    padding:32px;

    border:1px solid var(--two-border);

    border-radius:14px;

    background:#fff;

    box-shadow:
        0 12px 35px rgba(74,45,24,.05);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.sra-2ip-mentor-card:hover{

    transform:translateY(-5px);

    box-shadow:
        0 18px 38px rgba(74,45,24,.09);
}


.sra-2ip-mentor-card > span{

    display:flex;

    align-items:center;

    justify-content:center;

    width:44px;
    height:44px;

    margin-bottom:20px;

    border-radius:50%;

    background:#f3e6d5;

    color:var(--two-brown);

    font-size:12px;

    font-weight:800;
}


.sra-2ip-mentor-card h3{

    margin:0 0 11px;

    color:var(--two-dark);

    font-size:20px;
}


.sra-2ip-mentor-card p{

    margin:0;

    color:var(--two-text);

    font-size:14px;

    line-height:1.75;
}


/* =========================================================
   ROADMAP
========================================================= */

.sra-2ip-roadmap{

    max-width:850px;

    margin:0 auto;
}


.sra-2ip-roadmap-item{

    display:grid;

    grid-template-columns:65px 1fr;

    gap:20px;

    align-items:center;

    padding:26px 0;

    border-bottom:1px solid var(--two-border);
}


.sra-2ip-roadmap-item:last-child{

    border-bottom:0;
}


.sra-2ip-roadmap-year{

    display:flex;

    align-items:center;

    justify-content:center;

    width:50px;
    height:50px;

    border-radius:50%;

    background:#f3e6d5;

    color:var(--two-brown);

    font-size:17px;

    font-weight:800;
}


.sra-2ip-roadmap-item h3{

    margin:0 0 6px;

    color:var(--two-dark);

    font-size:21px;
}


.sra-2ip-roadmap-item p{

    margin:0;

    color:var(--two-text);

    font-size:14px;

    line-height:1.7;
}


/* =========================================================
   WHY GRID
========================================================= */

.sra-2ip-why-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;
}


.sra-2ip-why-card{

    height:100%;

    padding:28px 24px;

    border:1px solid var(--two-border);

    border-radius:13px;

    background:#fff;

    box-shadow:
        0 8px 25px rgba(74,45,24,.04);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.sra-2ip-why-card:hover{

    transform:translateY(-5px);

    box-shadow:
        0 15px 32px rgba(74,45,24,.09);
}


.sra-2ip-why-card > span{

    color:var(--two-gold);

    font-size:12px;

    font-weight:800;
}


.sra-2ip-why-card h3{

    margin:18px 0 10px;

    color:var(--two-dark);

    font-size:18px;
}


.sra-2ip-why-card p{

    margin:0;

    color:var(--two-text);

    font-size:14px;

    line-height:1.7;
}


/* =========================================================
   FAQ
========================================================= */

.sra-2ip-faq{

    max-width:850px;

    margin:0 auto;
}


.sra-2ip-faq-item{

    padding:25px 0;

    border-bottom:1px solid var(--two-border);
}


.sra-2ip-faq-item:first-child{

    padding-top:0;
}


.sra-2ip-faq-item:last-child{

    border-bottom:0;
}


.sra-2ip-faq-item h3{

    margin:0 0 10px;

    color:var(--two-dark);

    font-size:18px;
}


.sra-2ip-faq-item p{

    margin:0;

    color:var(--two-text);

    font-size:15px;

    line-height:1.75;
}


/* =========================================================
   CTA
========================================================= */

.sra-2ip-cta{

    position:relative;

    width:100%;

    margin:0 !important;

    padding:95px 0;

    background:
        linear-gradient(
            135deg,
            #3e2617,
            #70421d
        );
}


.sra-2ip-cta-box{

    max-width:820px;

    margin:0 auto;

    text-align:center;
}


.sra-2ip-cta .sra-2ip-label{

    color:#d9b47b;
}


.sra-2ip-cta h2{

    color:#fff;
}


.sra-2ip-cta h2 span{

    color:#e0b976;
}


.sra-2ip-cta p{

    max-width:650px;

    margin:0 auto 28px;

    color:rgba(255,255,255,.78);

    font-size:16px;

    line-height:1.8;
}


.sra-2ip-cta .sra-2ip-btn-primary{

    background:#fff;

    border-color:#fff;

    color:var(--two-brown) !important;

    box-shadow:none;
}


.sra-2ip-cta .sra-2ip-btn-primary:hover{

    background:#f6eee4;

    border-color:#f6eee4;

    color:var(--two-brown) !important;
}


/* =========================================================
   ANIMATION
========================================================= */

.sra-2ip-page .animate{

    opacity:0;

    transform:translateY(28px);

    transition:
        opacity .7s ease,
        transform .7s ease;
}


.sra-2ip-page .animate.show{

    opacity:1;

    transform:translateY(0);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:900px){

    .sra-2ip-hero{
        min-height:550px;
    }


    .sra-2ip-section{
        padding:75px 0;
    }


    .sra-2ip-process{
        grid-template-columns:repeat(2,1fr);
    }


    .sra-2ip-split{
        grid-template-columns:1fr;
        gap:40px;
    }


    .sra-2ip-balance{
        grid-template-columns:1fr;
        gap:35px;
        padding:40px;
    }


    .sra-2ip-test-grid{
        grid-template-columns:repeat(2,1fr);
    }


    .sra-2ip-mentor-grid{
        grid-template-columns:repeat(2,1fr);
    }


    .sra-2ip-why-grid{
        grid-template-columns:repeat(2,1fr);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:600px){

    .sra-2ip-container{
        width:90%;
    }


    .sra-2ip-hero{
        min-height:650px;
    }


    .sra-2ip-hero-content{
        padding:70px 0;
    }


    .sra-2ip-hero h1{
        font-size:42px;
        letter-spacing:-1px;
    }


    .sra-2ip-hero p{
        font-size:16px;
        line-height:1.7;
    }


    .sra-2ip-buttons{
        flex-direction:column;
        align-items:stretch;
    }


    .sra-2ip-btn{
        width:100%;
        min-height:52px;
    }


    .sra-2ip-section{
        padding:65px 0;
    }


    .sra-2ip-heading{
        margin-bottom:35px;
    }


    .sra-2ip-heading h2,
    .sra-2ip-intro h2,
    .sra-2ip-split h2,
    .sra-2ip-balance h2,
    .sra-2ip-cta h2{
        font-size:32px;
        line-height:1.2;
    }


    .sra-2ip-year-grid{
        grid-template-columns:1fr;
    }


    .sra-2ip-year-card{
        padding:30px 25px;
    }


    .sra-2ip-benefits{
        grid-template-columns:1fr;
    }


    .sra-2ip-subject-grid{
        grid-template-columns:1fr;
    }


    .sra-2ip-subject-card{
        padding:29px 24px;
    }


    .sra-2ip-process{
        grid-template-columns:1fr;
    }


    .sra-2ip-balance{
        padding:30px 24px;
        border-radius:15px;
    }


    .sra-2ip-balance-points{
        grid-template-columns:1fr;
    }


    .sra-2ip-test-grid{
        grid-template-columns:1fr;
    }


    .sra-2ip-mentor-grid{
        grid-template-columns:1fr;
    }


    .sra-2ip-why-grid{
        grid-template-columns:1fr;
    }


    .sra-2ip-roadmap-item{
        grid-template-columns:55px 1fr;
        gap:15px;
    }


    .sra-2ip-cta{
        padding:70px 0;
    }

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width:380px){

    .sra-2ip-hero h1{
        font-size:36px;
    }


    .sra-2ip-heading h2,
    .sra-2ip-intro h2,
    .sra-2ip-split h2,
    .sra-2ip-balance h2,
    .sra-2ip-cta h2{
        font-size:29px;
    }

}