/* ===================================
    Crafto - Logistics 
====================================== */
/* font */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

/* variable */
:root {
    --alt-font: "Outfit", sans-serif;
    --primary-font: "Outfit", sans-serif;
    --base-color: #f75e25;
    --secondary-color: #111111;
    --brand-gradient: #f8f6f0;
    --dark-gray: #111111;
    --medium-gray: #717580;
    --aluminium-gray: rgba(255, 255, 255, 0.4);
    --pearl-white: #f8f6f0;
}

/* background colors */
.bg-dark-blue {
    background-color: var(--secondary-color) !important;
}

.btn-dark-blue {
    background-color: var(--secondary-color) !important;
    color: #ffffff !important;
}

.bg-orange {
    background-color: var(--base-color) !important;
}

.bg-pearl-white {
    background-color: var(--pearl-white) !important;
}

.text-pearl-white {
    color: var(--pearl-white) !important;
}

/* reset */
body {
    font-size: 18px;
    line-height: 30px;
    color: var(--medium-gray);
}

a:hover {
    color: var(--base-color);
}

/* Sticky Header Background */
body header.sticky .navbar.bg-orange,
body header.sticky-active .navbar.bg-orange,
body header.sticky-active [data-header-hover=dark],
body header.sticky.sticky-active [data-header-hover=dark],
body header.sticky-appear .navbar.bg-orange {
    background-color: var(--base-color) !important;
}

header.sticky .navbar.bg-orange .nav-link,
header.sticky-active .navbar.bg-orange .nav-link,
header.sticky .navbar.bg-orange .widget-text,
header.sticky-active .navbar.bg-orange .widget-text,
header.sticky .navbar.bg-orange .navbar-brand span,
header.sticky-active .navbar.bg-orange .navbar-brand span {
    color: #ffffff !important;
}

header.sticky .navbar-brand,
header.sticky-active .navbar-brand {
    background-color: transparent !important;
}

/* header */
.navbar .navbar-nav .nav-link {
    font-size: 18px;
    font-weight: 600;
}

.navbar .navbar-nav .dropdown.open .dropdown-menu {
    background-color: var(--dark-gray);
}

.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a {
    font-size: 17px;
    font-weight: 500;
    color: var(--white);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

header .navbar-brand img {
    max-height: 80px;
}

header.sticky .navbar-brand img {
    max-height: 50px;
}

.header-top-bar div>a {
    color: var(--light-gray);
}

.header-top-bar div>a:hover {
    color: var(--white);
}

.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a i {
    font-size: 30px;
}

.navbar .navbar-nav .dropdown .dropdown-menu a i {
    width: 35px;
}

header .btn.btn-box-shadow.btn-base-color,
.btn.btn-base-color {
    color: var(--dark-gray);
}

header .btn.btn-box-shadow.btn-base-color:hover,
.btn.btn-box-shadow.btn-base-color:hover {
    color: var(--dark-gray);
}

header .btn.btn-small {
    font-size: 15px;
    padding: 10px 18px;
    border-radius: 100px;
}

/* btn */
.btn.btn-hover-animation-switch.btn-link {
    padding-top: 0;
}

.btn {
    text-transform: inherit;
    font-weight: 600;
    letter-spacing: 0;
    border-radius: 12px;
    transition: all 0.3s ease;
}

.btn.btn-base-color {
    background: var(--secondary-color);
    border: none;
    color: var(--white) !important;
}

.btn.btn-base-color:hover {
    background: var(--secondary-color);
    color: var(--white) !important;
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(46, 42, 97, 0.2);
}

.btn.btn-extra-large {
    font-size: 18px;
    padding: 16px 32px;
}

.btn.btn-large {
    font-size: 17px;
    padding: 14px 28px;
}

.btn.btn-medium {
    font-size: 16px;
    padding: 12px 24px;
}

.btn.btn-small {
    font-size: 15px;
    padding: 10px 20px;
}

.btn.btn-very-small {
    font-size: 14px;
    padding: 9px 20px;
}

/* counter style */
.counter-style-04 .vertical-counter:after {
    color: var(--base-color);
}

.review-star-icon i {
    color: var(--base-color);
}

.google-maps-link a:hover {
    color: var(--white);
}

/* footer style */
footer,
footer p,
footer span,
footer li,
footer a {
    color: #000000 !important;
}

footer a:hover {
    color: var(--base-color) !important;
}

footer strong,
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6 {
    color: #000000 !important;
}

footer ul li {
    margin-bottom: 5px;
}

footer p {
    line-height: 28px;
}

/* Modern Card / Box Styles */
.services-box-style-02,
.services-box-style-03,
.feature-box {
    border-radius: 20px !important;
    overflow: hidden;
    transition: all 0.3s ease;
}

.box-shadow-quadruple-large {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05) !important;
}

.hover-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 30px 60px rgba(46, 42, 97, 0.1) !important;
}

/* page title */
.page-title-double-large h1 {
    font-size: 4.375rem;
    line-height: 4.688rem;
}

.page-title-double-large h2 {
    font-size: 16px;
    line-height: 28px;
}

/* top bottom left right class */
.right-12 {
    right: 12%;
}

.bg-jungle-green {
    background-color: #2ebb79;
}

/* Outside box */
/* Modern Utilities */
.bg-base-color-transparent {
    background-color: rgba(238, 113, 33, 0.05);
}

.bg-light-orange {
    background-color: rgba(238, 113, 33, 0.1);
}

.border-radius-15px {
    border-radius: 15px !important;
}

.border-radius-100px {
    border-radius: 100px !important;
}

.highlight-border {
    border: 2px solid var(--base-color) !important;
}

.hover-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 30px 60px rgba(46, 42, 97, 0.15) !important;
}

.transition {
    transition: all 0.3s ease-in-out;
}

/* Transparent background color */
.bg-gradient-gray-light-dark-transparent {
    background-image: linear-gradient(to top, #f7f7f7 0%, transparent 100%);
}

@media (max-width: 1399px) {
    .xl-h-180px {
        height: 180px;
    }

    .xl-w-180px {
        width: 180px;
    }
}

@media (max-width: 1199px) {
    .outside-box-top-200px {
        margin-top: -150px;
    }
}

@media (max-width: 991px) {
    .outside-box-top-200px {
        margin-top: 0;
    }

    .navbar .navbar-nav .dropdown.open .dropdown-menu {
        padding-bottom: 15px;
    }

    .navbar .navbar-nav .dropdown .dropdown-menu.show {
        background-color: var(--dark-gray);
    }
}

.floating-hero-card {
    margin-top: -240px;
    box-shadow: 0 40px 80px rgba(46, 42, 97, 0.35) !important;
    transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.floating-hero-card:hover {
    transform: translateY(-10px);
}

@media (max-width: 1199px) {
    .floating-hero-card {
        margin-top: -180px;
    }
}

@media (max-width: 991px) {
    .floating-hero-card {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

/* Mobile Optimization: Reduce "Zoom" feel */
@media (max-width: 767px) {
    html {
        font-size: 14px;
        /* Scaled down base for mobile */
    }

    body {
        font-size: 16px;
        line-height: 26px;
    }

    section {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }

    h1 {
        font-size: 32px !important;
        line-height: 40px !important;
    }

    h2 {
        font-size: 28px !important;
        line-height: 36px !important;
    }

    h3 {
        font-size: 24px !important;
        line-height: 30px !important;
    }

    .btn.btn-extra-large {
        padding: 12px 24px;
        font-size: 16px;
    }

    .p-50px {
        padding: 30px !important;
    }
}

/* Mobile Header */
@media (max-width: 991px) {
    header .navbar {
        background: var(--base-color) !important;
        padding-top: 5px;
        padding-bottom: 5px;
    }

    /* Toggler lines are white against the Orange header */
    header .navbar-toggler-line {
        background-color: #ffffff !important;
    }

    header .navbar-toggler {
        border-color: rgba(255, 255, 255, 0.5) !important;
    }

    /* Container for the menu items - give this a white background, reduce height, align left */
    header .navbar-collapse {
        background-color: #ffffff;
        margin-top: 0px;
        padding: 15px 20px;
        border-radius: 0 0 8px 8px;
        /* Rounded corners only at the bottom */
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
        max-height: 60vh;
        /* Limit height */
        overflow-y: auto;
        /* Scroll if content is too long */
        text-align: left !important;
    }

    /* Links inside the now-white menu should be dark and aligned left */
    header .navbar-nav .nav-link {
        color: #232323 !important;
        padding-left: 0 !important;
        text-align: left !important;
        display: block;
        padding-top: 8px !important;
        padding-bottom: 8px !important;
        /* Ensure full width for tap targets */
    }
}