/*==================================================
    ROOFNEST V2
    GLOBAL STYLES
==================================================*/

/*------------------------------
    Theme Variables
------------------------------*/

:root{

    --rn-primary:#2563eb;
    --rn-primary-hover:#1d4ed8;

    --rn-success:#16a34a;
    --rn-success-hover:#15803d;

    --rn-dark:#222;
    --rn-text:#555;
    --rn-light:#666;

    --rn-bg:#f5f7fa;
    --rn-card:#ffffff;

    --rn-border:#e5e7eb;

    --rn-radius-sm:8px;
    --rn-radius-md:12px;
    --rn-radius-lg:16px;

    --rn-shadow:
        0 8px 24px rgba(0,0,0,.08);

    --rn-shadow-hover:
        0 18px 40px rgba(0,0,0,.14);

}


/*------------------------------
    Body
------------------------------*/

body{

    background:var(--rn-bg);
    color:var(--rn-text);

}


/*------------------------------
    Astra Container
------------------------------*/

.ast-container{

    max-width:100% !important;
    width:100% !important;

}


/*------------------------------
    Main Wrapper
------------------------------*/

.roofnest-wrapper{

    width:100%;
    max-width:1500px;

    margin:40px auto;

    padding:20px;

}


/*------------------------------
    Headings
------------------------------*/

h1,h2,h3,h4,h5,h6{

    color:var(--rn-dark);

    font-weight:700;

}


/*------------------------------
    Links
------------------------------*/

a{

    color:var(--rn-primary);

    transition:.25s;

}

a:hover{

    color:var(--rn-primary-hover);

}


/*------------------------------
    Buttons
------------------------------*/

.rn-btn{

    display:inline-block;

    padding:12px 22px;

    border-radius:10px;

    text-decoration:none;

    font-weight:600;

    cursor:pointer;

    transition:.3s;

}


.rn-btn-primary{

    background:var(--rn-primary);

    color:#fff;

}

.rn-btn-primary:hover{

    background:var(--rn-primary-hover);

    color:#fff;

}


.rn-btn-success{

    background:var(--rn-success);

    color:#fff;

}

.rn-btn-success:hover{

    background:var(--rn-success-hover);

}


/*------------------------------
    Cards
------------------------------*/

.rn-card{

    background:var(--rn-card);

    border-radius:var(--rn-radius-md);

    box-shadow:var(--rn-shadow);

    transition:.35s;

}


.rn-card:hover{

    transform:translateY(-5px);

    box-shadow:var(--rn-shadow-hover);

}


/*------------------------------
    Images
------------------------------*/

img{

    max-width:100%;

    height:auto;

}


/*------------------------------
    Utilities
------------------------------*/

.rn-text-center{

    text-align:center;

}

.rn-text-right{

    text-align:right;

}

.rn-flex{

    display:flex;

}

.rn-grid{

    display:grid;

}

.rn-hidden{

    display:none;

}

.rn-radius{

    border-radius:var(--rn-radius-md);

}

.rn-shadow{

    box-shadow:var(--rn-shadow);

}