
/* Base */
@import url("./base/variables.925e2224c881.css");
@import url("./base/reset.73c3a015e2fd.css");
@import url("./base/utilities.5a3354a927b1.css");

/* Components */
@import url("./components/buttons.0c1e5cc567cc.css");
@import url("./components/cards.a3016e4c0a45.css");
@import url("./components/navbar.986d88089c91.css");
@import url("./components/badges.202858f858a5.css");

/* Layout */
@import url("./layout/header.e9188aa68ebb.css");
@import url("./layout/hero.05d60c148e7c.css");
@import url("./layout/about.5bf097111a25.css");
@import url("./layout/services.4d46a651fa09.css");
@import url("./layout/projects.07bcb4502056.css");
@import url("./layout/team.de6602167cfc.css");
@import url("./layout/contact.4537f2ce8121.css");
@import url("./layout/footer.eb7567cc1a99.css");
@import url("./layout/responsive.aba2563d7519.css");


/* duplicate titles — see SECTION block below
.section-subtitle { color:var(--primary); font-weight:700; letter-spacing:1px; margin-bottom:15px; display:inline-block; }
.section-title { font-size:48px; font-weight:800; color:var(--secondary); margin-bottom:25px; line-height:1.3; }
.section-text { color:var(--gray); font-size:17px; }
*/

/* unused — no .fade-up in templates
.fade-up { opacity:0; transform:translateY(50px); transition:.8s; }
.fade-up.show { opacity:1; transform:translateY(0); }
*/

/* unused — no .hover-up in templates
.hover-up { transition:.35s; }
.hover-up:hover { transform:translateY(-8px); }
*/

/* duplicate — already in reset.css
html { scroll-behavior:smooth; }
::selection { background:var(--primary); color:#fff; }
img { max-width:100%; display:block; }
button { border:none; outline:none; cursor:pointer; font-family:inherit; }
input, textarea, button, select { font-family:inherit; }
a { text-decoration:none; }
ul { list-style:none; }
*/

/*==================================================
                SECTION
==================================================*/

.section{

    padding:120px 0;

}

.section-sm{

    padding:80px 0;

}

.section-title{

    font-size:52px;

    line-height:1.25;

    color:var(--secondary);

    margin-bottom:25px;

}

.section-title span{

    color:var(--primary);

}

.section-subtitle{

    display:inline-block;

    color:var(--primary);

    font-size:15px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:15px;

}

.section-text{

    color:rgba(92, 92, 92, 0.998);

    line-height:2;

    max-width:720px;

}

/*==================================================
                HELPERS
==================================================*/

/* unused — not used in any template
.text-center { text-align:center; }
.text-left { text-align:left; }
.text-right { text-align:right; }
*/

.mx-auto{

    margin-inline:auto;

}

/* unused — not used in any template
.w-100 { width:100%; }
.d-flex { display:flex; }
.align-center { align-items:center; }
.justify-center { justify-content:center; }
.justify-between { justify-content:space-between; }
.gap-20 { gap:20px; }
.mt-20 { margin-top:20px; }
.mt-30 { margin-top:30px; }
.mt-40 { margin-top:40px; }
.mt-60 { margin-top:60px; }
.mb-20 { margin-bottom:20px; }
.mb-30 { margin-bottom:30px; }
.mb-40 { margin-bottom:40px; }
.mb-60 { margin-bottom:60px; }
.shadow-sm { box-shadow:0 10px 25px rgba(0,0,0,.06); }
.shadow { box-shadow:0 20px 45px rgba(0,0,0,.08); }
.shadow-lg { box-shadow:0 35px 80px rgba(0,0,0,.12); }
.radius-sm { border-radius:12px; }
.radius { border-radius:20px; }
.radius-lg { border-radius:30px; }
.hidden { display:none !important; }
.visible { display:block !important; }
.opacity-0 { opacity:0; }
.opacity-100 { opacity:1; }
.active { transition:.35s; }
.loading { pointer-events:none; opacity:.65; }
*/

/* duplicate — already in reset.css
::-webkit-scrollbar { width:11px; }
::-webkit-scrollbar-track { background:#f1f1f1; }
::-webkit-scrollbar-thumb { background:var(--primary); border-radius:20px; }
::-webkit-scrollbar-thumb:hover { background:#a91f1f; }
*/

/*==================================================
                ACCESSIBILITY
==================================================*/

:focus-visible{

    outline:3px solid rgba(198,40,40,.35);

    outline-offset:3px;

}

/*==================================================
                TRANSITIONS
==================================================*/

a,
button,
input,
textarea,
.card,
.service-card,
.project-card,
.contact-card{

    transition:

        background-color .3s ease,

        color .3s ease,

        border-color .3s ease,

        transform .3s ease,

        box-shadow .3s ease,

        opacity .3s ease;

}


/*==================================================
                SCROLL PROGRESS (script.js)
==================================================*/

.scroll-progress{

    position:fixed;

    top:0;

    left:0;

    height:3px;

    width:0;

    background:var(--primary);

    z-index:10002;

    transition:width .1s linear;

}

/* duplicate — already handled in header.css
.header.scrolled { box-shadow:0 15px 40px rgba(89, 89, 89, 0.08); }
*/

@media(max-width:576px){
    .section-title{
        font-size: 30px;
    }
}