@charset "utf-8";

/* 1 - Google Font
------------------------------------------------------------------------*/

@import url('https://fonts.googleapis.com/css?family=Raleway:300,400,500,600,700|Roboto+Condensed:300,400,500,600,700');

/* @import url('https://fonts.googleapis.com/css?family=Ubuntu'); */

@import url('https://fonts.googleapis.com/css2?family=Train+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rampart+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Londrina+Shadow&display=swap');

/*  @import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');*/

@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

/* 2 - General styles
------------------------------------------------------------------------*/


/*======================================================
    VARIABLES
=======================================================*/

:root {
    --color-black: #222;
    --color-grey: #777;
    --color-dark-grey: #111;
    --color-light-grey: #eee;
    --color-dark: #11171a;
    --color-dark-shade: #161717;
    --color-accent: #ff1744;
    --color-sky-blue: #00c2e2;
    --color-coral: #ff4f56;
    --color-neon-green: #4faa50;
    --color-navy-blue: #202A44;
    --color-body: #444;
    ;
    /* --color-facebook: #3b5998;
    --color-twitter: #1DA1F2;
    --color-google-plus: #DD4D40;
    --color-linkedin: #1B86BC;
    --color-behance: #2284E6; */
}


/* Input placeholder text style */

::placeholder {
    color: #FFF;
    letter-spacing: 2px;
    font-size: 12px;
    text-transform: uppercase;
}


/* Body and HTML styles */

body {
    width: 100%;
    height: 100%;
    line-height: 24px;
    color: var(--color-body);
    font-size: 13px;
    font-family: 'Raleway', sans-serif;
    font-weight: normal;
    letter-spacing: 1px;
    /* background: linear-gradient(-135deg, #003366 0%, #001f3f 100%); */
}

p {
    line-height: 26px;
    font-family: "Open Sans", sans-serif;
    /*  'Raleway', sans-serif; */
    font-size: 14px;
    font-weight: 400;
    color: var(--color-body);
}


/* 2.1 - Headings 
--------------------------------------------- */

h1,

/* h2, */

h3 {
    color: var(--color-dark);
    font-family: "Nunito", sans-serif;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 10px;
    text-transform: uppercase;
}

h4,
h5,
h6 {
    color: var(--color-dark);
    font-family: "Open Sans", sans-serif;
    /*  "Roboto Condensed", sans-serif; */
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 10px;
    /*  text-transform: uppercase; */
}

h2 {
    color: var(--color-dark);
    /* font-family: "Train One", system-ui; */
    font-family: "Nunito", sans-serif;
    /*  font-family: "Rampart One", sans-serif; */
    /* font-family: "Londrina Shadow", sans-serif; */
    font-weight: 700;
    margin-top: 0;
   
    /* text-transform: uppercase; */
    /* font-size: 1.68rem; */
    font-size: 2.4rem;
    line-height: 3rem;
    margin-bottom: 20px;
    padding-top: 10px;
}

h1 {
    font-size: 2.68rem;
    letter-spacing: 0.125rem;
    line-height: 2.5rem;
}


/* h2 {
    font-size: 1.68rem;
    line-height: 2.3rem;
    margin-bottom: 20px;
    padding-top: 10px;
} */

h3 {
    font-size: 1.3rem;
    line-height: 2rem;
}

h4 {
    font-size: 1rem;
    line-height: 1.75rem;
    font-weight: 600;
}

#home h4 {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.6rem;
}

@media (max-width: 575.98px) {
    #home h4 {
        font-size: 1.2rem;
        font-weight: 600;
        line-height: 1.4rem;
    }
    #home h2 {
        font-size: 2rem;
        line-height: 2.4rem;
    }
}

h5 {
    font-size: 0.9rem;
    line-height: 1.4rem;
    font-weight: 600;
}

h6 {
    font-size: 0.8rem;
    line-height: 1.125rem;
    font-weight: 600;
}

html {
    width: 100%;
    height: 100%;
}

section {
    position: relative;
    overflow: hidden;
}

a {
    color: var(--color-accent);
    text-decoration: none;
    transition: all 0.25s ease;
}

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

img {
    height: auto;
    max-width: 100%;
    border: none;
    transition: all 0.2s ease;
}

iframe,
audio {
    width: 100%;
    height: auto;
    border: none;
}

b,
strong {
    font-weight: 600;
}

ul,
li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}


/* Container adjustments */

@media (min-width: 1300px) {
    .container {
        max-width: 1200px;
    }
}


/* Borders, colors, and backgrounds */

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

.text-neon-green {
    color: var(--color-neon-green) !important;
}

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

.text-sky-blue {
    color: var(--color-sky-blue) !important;
}

.text-navy-blue {
    color: var(--color-navy-blue) !important;
}


/* 
.color-pink {
    border-color: #ff497c;
    color: #ff497c !important;
}

.color-green-neon {
    border-color: #a0ce4e;
    color: #a0ce4e !important;
}

.color-tirquoise {
    border-color: #00bea3;
    color: #00bea3 !important;
}

.color-coral {
    border-color: #f1894c;
    color: #f1894c !important;
}

.color-dark {
    border-color: #252525;
    color: #252525;
}

.color-darkgrey {
    border-color: #323232;
    color: #323232;
} */

.rounded-20 {
    border-radius: 20px;
}

.box-shadow {
    border-color: transparent;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
}

.bg-dark-shade {
    background-color: var(--color-dark-shade);
}

.bg-navy-blue {
    /* background-color: var(--color-navy-blue); */
    background: linear-gradient(-135deg, #003366 0%, #001f3f 100%);
}


/* Base card look */

.service-card {
    color: #fff;
    border: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}


/* Gradients */

.gradient-blue {
    background: linear-gradient(-135deg, #1b6ef4 0%, #0f4c81 100%);
}


/* Optional: ensure readable text on gradients */

.service-card p,
.service-card h4 {
    color: #fff;
}


/* 
.bg-dark {
    background-color: #252525;
}

.bg-darkgrey {
    background-color: #323232;
    color: #fff;
}

.alt-bg {
    background-color: #f7f7f7;
}
 



/*======================================================
     BUTTONS
=======================================================*/

.btn {
    padding: 10px 20px;
    font-size: 13px;
    font-weight: 700;
    border-radius: 20px;
    text-transform: uppercase;
    transition: all 0.3s ease;
}


/* .btn-primary {
    background: #2a2a2a;
    color: #fff;
    font-weight: bold;
    border: 2px solid #2a2a2a;
    border-radius: 0;
} */

.btn-primary {
    border: 2px solid rgba(255, 255, 255, 0.4);
    /*  background: var(--color-accent); */
    /*  background: rgb(255, 255, 255); */
    background: linear-gradient(225deg, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0.17) 60%, rgba(255, 255, 255, 0.11) 100%);
    color: white;
}

.btn-primary:hover {
    /*  background: rgba(255, 255, 255, 0.5); */
    /* background: transparent; */
    border-color: rgba(255, 255, 255, 067);
    background: var(--color-accent);
    /*  border-color: var(--color-dark-shade); */
    color: white;
    /*  color: var(--color-dark-shade); */
}

.btn-accent {
    border: 2px solid transparent;
    background: var(--color-accent);
    color: white;
}

.btn-accent:hover {
    background: var(--color-coral);
    /*  border-color: var(--color-dark-shade); */
    color: white;
}

.btn-coral {
    border: 2px solid transparent;
    background: var(--color-coral);
    color: white;
}

.btn-coral:hover {
    background: var(--color-accent);
    /*  border-color: var(--color-dark-shade); */
    color: white;
}

.btn-black {
    background: rgba(42, 42, 42, 0.3);
    /* Semi-transparent background */
    border: 2px solid var(--color-dark-shade);
    color: var(--color-dark-shade);
    backdrop-filter: blur(10px);
    /* Apply blur effect */
    transition: background-color 0.3s ease, color 0.3s ease;
}

.btn-black:hover {
    background: rgba(42, 42, 42, 0.6);
    /* Darker on hover */
    color: white;
    border-color: white;
}


/* 
.btn-black {
    background: transparent;
    border: 2px solid #2A2A2A;
    color: #2A2A2A;
}

.btn-black:hover {
    border-color: #2A2A2A;
    background: #2A2A2A;
    color: white;
} */

.btn-grey {
    border-color: var(--color-light-grey);
    background: #FAFAFA;
    color: #2A2A2A;
    padding: 12px 40px;
    margin-top: 20px;
}

.btn-grey:hover {
    background: #2A2A2A;
    color: white;
    border-color: #2A2A2A;
}

.btn-feature {
    background: linear-gradient(-135deg, #003366 0%, #001f3f 100%);
    border: 1px solid #02002a;
    color: white;
}

.btn-feature:hover {
    background: linear-gradient(-135deg, #003366c8 0%, #001f3fbe 100%);
    color: white;
    border-color: #999;
}


/*======================================================
     PORTFOLIO DETAILS
=======================================================*/

.back-link {
    cursor: pointer;
    color: #555454;
    transition: all 0.25s ease;
}

.list-inline {
    list-style: none;
    padding-left: 0;
}

.content-info {
    margin-bottom: 40px;
}

.content-info .single-info {
    margin-bottom: 15px;
    width: 49.6%;
}

.content-info .single-info:not(:last-child) {
    margin-right: 0;
}

.content-info .single-info:nth-last-child(-n+2) {
    margin-bottom: 0;
}

.content-info .single-info>span {
    color: #444;
    font-weight: 600;
    margin-right: 10px;
}

.content-info .single-info>p {
    display: inline-block;
    margin-bottom: 0;
}

@media (max-width: 575.98px) {
    .content-info .single-info {
        display: block;
        margin-bottom: 10px;
        width: auto;
    }
    .content-info .single-info:nth-last-child(-n+2) {
        margin-bottom: 10px;
    }
}


/*==================== SECTION HEADING ========================*/

.section-heading {
    margin-bottom: 70px;
    margin-top: 3vh;
}

.mid-title {
    font-size: 40px;
}

.subtitle {
    font-size: 26px;
    text-transform: uppercase;
    line-height: 36px;
    font-weight: 400;
}

.section-padding {
    padding: 90px 0;
}


/*==============================
section dividers
===============================*/

.gradient {
    height: 20px;
    position: relative;
    width: 100%;
    background: radial-gradient(ellipse farthest-side at top center, rgba(0, 0, 0, 0.08), transparent);
}

.gradient:before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0;
    left: 0;
    height: 3px;
    background: linear-gradient(left, transparent, rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.02), transparent);
}

.section-divider {
    height: 6px;
    width: 100%;
    background: linear-gradient(to right, var(--color-sky-blue), var(--color-accent));
    border-radius: 3px;
    margin: 60px 0;
    /* space around divider */
}

.section-divider-wave {
    height: 20px;
    width: 100%;
    background: radial-gradient(ellipse farthest-side at top center, rgba(0, 0, 0, 0.05), transparent);
    margin: 60px 0;
    position: relative;
}

.section-divider-wave::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(to right, var(--color-sky-blue), var(--color-accent));
}


/*==================== BACKGROUND OVERLAY ========================*/


/* .background-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
}

.background-overlay.black {
    background: rgba(0, 0, 0, 0.95);
}

.background-overlay.grey {
    background: rgba(255, 255, 255, 0.95);
    background: rgba(0, 0, 0, 0.85);
}

.background-overlay.grey2 {
    background: rgba(255, 255, 255, 0.90);
    background: rgba(0, 0, 0, 0.70);
} */


/*======================================================
     NAVIGATION
=======================================================*/

.navbar-custom {
    margin-bottom: 0;
    /* border-bottom: 1px solid rgba(255, 255, 255, 0.3); */
    text-transform: uppercase;
    font-family: "Roboto Condensed", sans-serif;
}

.navbar-custom .navbar-brand {
    font-weight: 700;
}

.navbar-custom .navbar-brand:focus,
.navbar-custom .navbar-brand .navbar-toggle:focus,
.navbar-custom .navbar-brand .navbar-toggle:active {
    outline: 0;
}

.navbar-custom .navbar-brand .navbar-toggle {
    padding: 4px 6px;
    font-size: 16px;
    color: white;
}

.navbar-custom a {
    color: white;
    font-size: 13px;
    letter-spacing: 3px;
    padding-left: 2rem !important;
}

.navbar-custom .nav li a {
    transition: background 0.3s ease-in-out;
}

.navbar-custom .nav li a:hover {
    outline: 0;
    color: rgba(255, 255, 255, 0.8);
    background-color: transparent;
}

.navbar-custom .nav li a:focus,
.navbar-custom .nav li a:active {
    outline: 0;
    /*  background-color: var(--color-dark); */
    background: linear-gradient(-90deg, #003366 0%, #00162c 100%);
}

.navbar-custom .nav li.active {
    outline: 0;
}

.navbar-nav>li>.dropdown-menu {
    /*  background-color: var(--color-light-grey); */
    background: linear-gradient(-90deg, #003366 0%, #00162c 100%);
    padding-left: 2rem;
}


/* logo icon*/

.logo-container {
    display: flex;
    align-items: center;
    /* Vertically center items */
}

.logo-icon {
    margin-right: 8px;
    /* Adjust space between icon and text */
    width: 52px;
    /* Set the size of the icon */
    height: 52px;
    background-image: url('/images/logo/logo_webmagick.ico');
    background-size: contain;
    /* Ensure the image fits */
    background-repeat: no-repeat;
}


/* menu icon */

.menu-icon {
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.menu-icon.open {
    transform: scaleX(-1);
}

.navbar-toggler:focus {
    /*Below line will remove the border from the icon
    I have used bootstrap icon here */
    /* This will only remove the shadow effect */
    /* Border is still there */
    /* if you don't want any border then set the property equals to zero */
    border: 0 !important;
    box-shadow: none !important;
    /* This will remove the rounded corner(radious-border)
    and give square border */
    /* border-radius: 0 !important; */
}

.navbar-toggler {
    /* This will completely remove border from the icon */
    /* If you need border for the icon then comment this code */
    border: 0 !important;
    color: white;
    /* if you want to check the border please uncomment below code */
    /* border-color: yellow !important; */
}


/*=============================================
    HERO SECTION
==============================================*/

.bg-hero {
    background: #222 url("../images/bg/herooo_wand2.png") no-repeat fixed 50% 50%;
    background-size: cover;
    position: relative;
}

.bg-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1;
}

.bg-hero .container {
    z-index: 2;
    position: relative;
}


/*=============================================
    SLIDER SECTION
==============================================*/


/* 
#section-intro {
    height: 100%;
    background: var(--color-black) url("../images/bg/hero.jpg") no-repeat fixed 50% 50% / cover;
    padding: 0;
    position: relative;
    overflow: hidden;
}

.intro-caption {
    width: 100%;
    text-align: center;
    position: absolute;
    color: white;
    padding-top: 250px;
}

.intro-caption h1 {
    font-size: 60px;
    color: white;
    line-height: 50px;
    margin: 30px 0;
}

.intro-caption .subtitle {
    letter-spacing: 5px;
    margin-bottom: 20px;
}

.intro-caption .btn-container {
    margin-top: 40px;
} */


/*======================== ICON STYLES =========================*/


/* .fa-facebook,
.fa-twitter,
.fa-google-plus,
.fa-linkedin, */


/* .fa-behance {
    border-radius: 32px;
    height: 40px;
    padding: 13px;
    text-align: center;
    width: 40px;
}
 */


/*============================================
   section welcome
===============================================*/


/* .bg-welcome {
    position: relative;
    padding-top: 18vh;
    padding-bottom: 18vh;
    z-index: 1;
    
}

.bg-welcome::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../images/bg/bokeh-element-free-png.png") no-repeat center center / cover;
    background-color: var(--color-navy-blue);
   
    filter: blur(10px);
   
    z-index: -1;
    
    transform: scale(1.1);
    
}

.bg-welcome * {
    position: relative;
    z-index: 2;
    
} */

.bg-welcome {
    background: url("../images/bg/bokeh-blue.jpg") fixed no-repeat 50% 50% / cover;
    background-color: var(--color-navy-blue);
    position: relative;
    padding-top: 18vh;
    padding-bottom: 18vh;
    z-index: -2;
}

.bg-welcome::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.476);
    z-index: -1;
}


/*  .bokeh {
    height: 100vh;
    width: 100vw;
    background-color: #124;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    filter: blur(50px);
    transform: translateZ(0);
    backface-visibility: hidden;
}

.bokeh circle {
    animation: rotate 6s linear infinite;
    fill: #124;
    opacity: 0.43;
    transform-origin: 50%;
}

.bokeh circle:nth-child(2n) {
    fill: #614;
    transform-origin: 20% 110%;
    animation-delay: -3s;
    animation-duration: 4.1316s;
    opacity: 0.2;
}

.bokeh circle:nth-child(3n) {
    opacity: 0.65;
    fill: #469;
    transform-origin: 70% 30%;
    animation-delay: -1.5s;
    animation-duration: 7.9998s;
}

.bokeh circle:nth-child(4n) {
    fill: #c63;
    transform-origin: 110% 70%;
    animation-delay: -2s;
    animation-duration: 4.77996s;
}

.bokeh circle:nth-child(5n) {
    fill: #266;
    transform-origin: 30% 40%;
}

.bokeh circle:nth-child(6n) {
    fill: #124;
    transform-origin: -10% 80%;
    animation-delay: -7.8s;
}

.bokeh circle:nth-child(7n) {
    fill: #614;
    transform-origin: 70% -10%;
}

.bokeh circle:nth-child(8n) {
    fill: #c63;
    transform-origin: -30% 50%;
    animation-delay: -2.4s;
}

@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
} */


/*============================================
   section who
===============================================*/

.bg-who {
    /* background: url("../images/bg/bg-light-who.webp") no-repeat 50% 50% / cover; */
    background: url("../images/bg/bg_pattern.webp") no-repeat 50% 50% / cover;
    position: relative;
    padding-top: 18vh;
    padding-bottom: 18vh;
    z-index: -2;
}


/* .img-who {
    height: 70% !important;
    width: auto !important;
}
 */

.polaroid {
    background-color: white;
    border: 10px solid white;
    padding: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transform: rotate(-3deg);
    display: inline-block;
    margin: 20px;
    border-radius: 10px;
    width: 80%;
    /* Optional */
}

.polaroid img {
    max-width: 100%;
    /* Ensure the image is responsive */
    border-radius: 5px;
    /* Optional: round corners of the image */
}


/*================================================================
        section about
===============================================================*/


/* .about-wrap {} */


/* .about-wrap h4 {
    text-transform: capitalize;
    font-family: "Raleway", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 34px;
    margin: 20px 0px 40px;
    width: 80%;
}

.about-wrap h4 span {
    font-weight: 700;
}

.about-wrap a {
    margin-top: 40px;
} */


/*======================================================
    section service/what
============================================================*/

.bg-what {
    background: url("../images/bg/bg-light-what.webp") no-repeat 50% 50% / cover;
    position: relative;
    padding-top: 18vh;
    padding-bottom: 18vh;
    z-index: -2;
}

.row-eq-height>[class^=col] {
    display: flex;
    flex-direction: column;
}

.row-eq-height>[class^=col] div {
    flex-grow: 1;
}


/* #section-services {
    background: #f9f9f9;
} */

.section-heading {
    text-align: center;
}

.service-box {
    /* border-bottom: 5px solid transparent; */
    /* background-color: var(--color-dark-shade);*/
    padding: 25px 30px;
    position: relative;
    /* Ensure the overlay is positioned relative to this container */
    overflow: hidden;
    /* Prevent the overlay from spilling out */
    border-radius: 25px;
}

.service-box img {
    width: 52px;
    /*  height: auto; */
}

.service-box .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(10px);
    /* Apply the blur effect */
    /*  background-color: rgba(248, 96, 96, 0.9); */
    /* Dark semi-transparent overlay */
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.4s ease-out, margin-top 0.3s;
    /* transition: opacity 0.5s ease-in-out; */
    /* Smooth transition */
}

.service-box:hover .overlay {
    opacity: 1;
    /* Show the overlay on hover */
}

.service-box .overlay .btn-neon-green {
    background: white;
    border: 2px solid var(--color-dark-shade);
    color: var(--color-dark-shade);
}

.service-box .overlay .btn-neon-green:hover {
    border-color: var(--color-dark-shade);
    background: var(--color-neon-green);
    color: white;
}

.service-box .overlay .btn-sky-blue {
    background: white;
    border: 2px solid var(--color-dark-shade);
    color: var(--color-dark-shade);
}

.service-box .overlay .btn-sky-blue:hover {
    border-color: var(--color-dark-shade);
    background: var(--color-sky-blue);
    color: white;
}

.service-box .overlay .btn-coral {
    background: white;
    border: 2px solid var(--color-dark-shade);
    color: var(--color-dark-shade);
}

.service-box .overlay .btn-coral:hover {
    border-color: var(--color-dark-shade);
    background: var(--color-coral);
    color: white;
}

.service-box .overlay .btn-black {
    background: white;
    border: 2px solid var(--color-dark-shade);
    color: var(--color-dark-shade);
}

.service-box .overlay .btn-black:hover {
    border-color: var(--color-dark-shade);
    background: var(--color-dark-shade);
    color: white;
}


/* .service-box .overlay .btn { */


/* color: #000; */


/* background-color: #fff; */


/* Light button for visibility */


/*  padding: 10px 20px;
    text-transform: uppercase; */


/* } */


/* .service-box {
    border-bottom: 5px solid transparent;
    background-color: var(--color-dark-shade);
    padding: 25px 30px;
} */


/* .service-box:hover {
    -webkit-box-shadow: 0px 0px 2px #777;
    box-shadow: 0px 0px 2px #777;
    box-shadow: 0 3px 3px 1px rgba(201, 201, 201, 0.55);
    color: #fff;
    -webkit-transition: all .4s ease 0s;
    -o-transition: all .4s ease 0s;
    transition: all .4s ease 0s;
}

.service-box i {
    font-size: 50px;
    text-align: center;
    height: 80px;
    padding-top: 10px;
    -webkit-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}

.service-box:hover i {
    color: #cccccc;
    padding: 0px;
} */

.service-box h4 {
    margin: 20px 0px;
}


/*=================================
        HOW
===================================*/


/*=================================
CTA - Hire me
===================================*/

.element-cover-bg {
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.single-section {
    background-color: #fff;
    padding: 85px 40px;
    padding-top: 85px;
    padding-bottom: 85px;
}

.single-section-dark {
    background-color: #252525;
    padding: 85px 40px;
    padding-top: 85px;
    padding-bottom: 85px;
}

.hire-area {
    background-attachment: fixed;
    padding-bottom: 68px;
    padding-top: 68px;
}

.hire-area:before {
    background-color: rgba(0, 0, 0, .83);
}

.hire-area .row-custom {
    -ms-flex-align: center;
    align-items: center;
}

.hire-area .button-part {
    -ms-flex-pack: end;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
}

.hire-area .hire-title {
    color: #f0f0f0;
    font-weight: 700;
    margin-bottom: 14px;
}

.hire-area .hire-description {
    color: #9f9f9f;
    font-size: 15px;
    margin-bottom: 0;
}

.hire-area .hire-btn {
    padding: 12px 54px;
}

@media (max-width: 767.98px) {
    .hire-area .content-part {
        text-align: center;
    }
    .hire-area .button-part {
        -ms-flex-pack: center;
        justify-content: center;
    }
    .hire-area .hire-title {
        font-size: 34px;
    }
    .hire-area .hire-description {
        font-size: 14px;
        margin-bottom: 26px;
    }
    .hire-area .hire-btn {
        padding: 10px 38px;
    }
}

@media (max-width: 575.98px) {
    .hire-area .hire-title {
        margin-bottom: 18px;
    }
}


/*================================
PROCESS / HOW
================================*/

.process-part .step-center-part img {
    border: 10px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    max-width: 270px;
}

.process-part .step-title {
    font-size: 54px;
    margin-right: -30px;
    /* margin-left: 20%; */
    position: relative;
}

.process-part .step-title span {
    font-size: 100px;
    font-weight: 600;
    left: -50%;
    position: absolute;
    top: 25%;
    width: 100%;
    z-index: -1;
    letter-spacing: 1px;
}

.process-part .step-text {
    margin-left: -30px;
}

.process-part .right .step-title {
    margin-left: -30px;
    margin-right: 0;
}

.process-part .right .step-title span {
    left: 36%;
    top: 1px;
}

.process-part .right .step-text {
    margin-right: -30px;
    margin-left: 0;
}

.process-part .right .part4 span {
    left: 32%;
}

.process-part .step-center-part:after {
    content: "";
    display: block;
    position: absolute;
    width: 34px;
    height: 136px;
    background-image: url(../img/right_arrow_dark.png);
    background-repeat: no-repeat;
    right: 40%;
    z-index: -1;
}

.process-part .right .step-center-part:after {
    background-image: url(../img/left_arrow_dark.png);
    left: 40%;
    right: auto;
}

.process-part .step-center-part.last:after {
    display: none;
}

.process-part .part3 span {
    left: -34%;
}


/* Media Queries */

@media (max-width: 991px) {
    .process-part .step-title {
        font-size: 40px;
        margin: 20px 0 10px;
        text-align: center;
    }
    .process-part .step-title span {
        font-size: 80px;
        font-weight: 600;
        left: 0;
        top: 10px;
        position: relative;
        z-index: -1;
        letter-spacing: 5px;
    }
    .process-part .step-text,
    .process-part .right .step-text {
        margin: 0;
        text-align: center;
    }
    .process-part .right .step-title {
        margin-left: 0;
        margin-top: 40px;
    }
    .process-part .right .step-title span,
    .process-part .right .part4 span,
    .process-part .part3 span {
        left: 0;
        top: 10px;
        position: relative;
    }
    .process-part .step-center-part:after,
    .process-part .right .step-center-part:after {
        display: none;
    }
    .process-part .part3 {
        margin-top: 40px;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .process-part .right .step-center-part:after {
        left: 36%;
    }
    .process-part .step-center-part:after {
        right: 36%;
    }
}


/* @media (min-width: 992px) and (max-width: 1600px) {
    .process-part .step-title span {
        font-size: 100px;
    }
} */


/* .process-part {
    background-image: url(../img/texture_dark.jpg);
    z-index: -2;
}
 */


/* .process-part .step-center-part img {
    border: 10px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    max-width: 270px;
}

.process-part .step-title {
    font-size: 54px;
    margin-right: -30px;
    margin-left: 20%;
}

.process-part .step-title span {
    font-size: 190px;
    font-weight: 600;
    left: -79%;
  

    letter-spacing: 1px;
    position: absolute;
    top: 25%;
    width: 100%;
    z-index: 4;
}

.process-part .step-text {
    margin-left: -30px;
}

.process-part .right .step-title {
    margin-left: -30px;
    margin-right: 0;
}

.process-part .right .step-title span {
    left: 36%;
    position: absolute;
    top: 1px;
}

.process-part .right .step-text {
    margin-left: 0;
    margin-right: -30px;
}

.process-part .right .part4 span {
    left: 32%;
}

.process-part .right .step-center-part:after {
    background-image: url(../img/left_arrow_dark.png);
    left: 40%;
    right: auto;
}

.process-part .part3 span {
    left: -34%;
}

.process-part .step-center-part:after {
    background-image: url(../img/right_arrow_dark.png);
    background-repeat: no-repeat;
    
    content: "";
    display: block;
    height: 136px;
    position: absolute;
    right: 40%;
    width: 34px;
    z-index: -1;
}



.step-center-part.last:after {
    display: none;
}


@media (max-width: 991px) {
    .process-part .step-title {
        font-size: 40px;
        margin-bottom: 10px;
        margin-right: 0;
        margin-top: 20px;
        text-align: center;
    }

    .process-part .step-title span {
        font-size: 80px;
        font-weight: 600;
        left: 0;
        letter-spacing: 5px;
        position: relative;
        top: 10px;
        width: 100%;
        z-index: -1;
    }

    .process-part .step-text {
        margin: 0;
        text-align: center;
    }

    .process-part .right .step-title {
        margin-left: 0;
        margin-top: 40px;
    }

    .process-part .right .step-title span {
        left: 0;
        position: relative;
        top: 10px;
    }

    .process-part .right .step-text {
        margin: 0;
    }

    .process-part .right .part4 span {
        left: 0;
        position: relative;
        top: 10px;
    }

    .process-part .right .step-center-part:after {
        display: none;
    }

    .process-part .part3 {
        margin-top: 40px;
    }

    .process-part .part3 span {
        left: 0;
        position: relative;
        top: 10px;
    }

    .process-part .step-center-part:after {
        display: none;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .process-part .right .step-center-part:after {
        left: 36%;
    }

    .process-part .step-center-part:after {
        right: 36%;
    }
}

@media (min-width: 992px) and (max-width: 1600px) {
    .process-part .step-title span {
        font-size: 180px;
    }
}
 */


/*============================================
   SECTION PORTFOLIO 
===============================================*/

.work {
    background: #fff;
}

.work-inner {
    margin-top: 60px;
}

.work-inner .mix {
    padding: 0;
}

ul.work {
    padding: 0;
    list-style: none;
    margin-left: 8px;
    text-align: center;
}

ul.work li {
    border: 1px solid #ccc;
    color: #777;
    cursor: pointer;
    display: inline-block;
    font-size: 13px;
    font-weight: bold;
    padding: 6px 25px;
}

ul.work li.active {
    border: none;
    color: #000;
}

.work .item {
    position: relative;
}

.work .item img {
    width: 100%;
    z-index: 99999;
    /* This value is quite high; consider if it's necessary */
}

.portfolio-caption {
    position: absolute;
    left: 0;
    top: 0;
    text-align: center;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.8);
    opacity: 0;
    transition: opacity 0.4s ease-out, margin-top 0.3s;
    /* Combined transitions */
}

.portfolio-caption h4 {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 900;
    color: #fff;
    border: 1px solid #fff;
    padding: 10px;
    display: inline-block;
    transition: margin-top 0.3s;
    /* Only transition margin-top */
}

.work .item:hover .portfolio-caption {
    opacity: 1;
}

.work .item:hover .portfolio-caption h4 {
    margin-top: 40%;
    /* Uncommented for clarity */
}


/*=====================================================
    SECTION CONTACT
==========================================================*/

.section-contact {
    padding: 100px 0;
}

.contact-form-col {
    padding: 20px;
    background-color: #f9f9f9;
}

.contact-info {
    background: #2a2a2a;
    padding: 20px 20px 150px;
}

.form-control {
    border-radius: 0;
    box-shadow: none;
    height: 46px;
    border: 1px solid #ddd;
}

.input-group-addon {
    border-radius: 0;
    background: #2a2a2a;
    color: #fff;
    width: 2.7em;
}

.form-padding {
    padding: 20px 0;
}

.list-inline {
    margin-left: 0;
}

.webmagick-address>h2,
.webmagick-address>p,
.calling-address {
    color: #fff;
}

.webmagick-address>p {
    padding: 20px 0;
}

.webmagick-phone {
    background: #fff;
    border-radius: 18px;
    color: #2a2a2a;
    height: 35px;
    margin: 10px 10px 0 0;
    /* Combined margin */
    padding: 10px;
    text-align: center;
    width: 35px;
}

.server-message {
    display: none;
}


/*=====================================================
    SECTION FOOTER
==========================================================*/

#section-footer {
    padding: 70px 0;
    background: var(--color-navy-blue);
}

.social-icon {
    margin: 20px 0 0;
}

.social-icon a {
    color: #fff;
    font-size: 14px;
    margin: 0 3px;
    transition: color 0.3s ease;
}

.social-icon li a {
    text-transform: uppercase;
    font-weight: 700;
}

.social-icon a:hover {
    color: #777;
}

.footer-link p {
    width: 70%;
    margin: 10px auto 0;
    color: #ccc;
}

.copy {
    color: #eee;
    text-transform: capitalize;
}


/* ===== FAQ Section Styling ===== */

#faq {
    background: linear-gradient(180deg, #f8f9fb 0%, #eef1f4 100%);
    color: var(--color-body);
    /*  border-top: 4px solid var(--color-sky-blue);
    border-bottom: 4px solid var(--color-accent); */
}

#faq h2 {
    color: var(--color-navy-blue);
    font-weight: 700;
    margin-bottom: 0.5rem;
}

#faq h3 {
    color: var(--color-grey);
    font-weight: 400;
    font-size: 1.1rem;
}


/* FAQ Items */

.faq-item {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}

.faq-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
}


/* FAQ Question Button */

.faq-question {
    background: linear-gradient(225deg, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0.17) 60%, rgba(255, 255, 255, 0.11) 100%);
    color: var(--color-dark-shade);
    border: 2px solid rgba(0, 0, 0, 0.1);
    border-radius: 16px;
    padding: 1rem 1.25rem;
    font-weight: 500;
    text-align: left;
    width: 100%;
    transition: all 0.3s ease;
    backdrop-filter: blur(8px);
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.faq-question:hover {
    background: rgba(255, 255, 255, 0.5);
    border-color: var(--color-accent);
    color: var(--color-dark);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.faq-question:focus,
.faq-question:active,
.faq-question:focus-visible {
    outline: none !important;
    /* remove default outline */
    box-shadow: 0 0 0 3px rgba(255, 23, 68, 0.5) !important;
    ;
    /* remove Bootstrap focus shadow */
    border-color: transparent !important;
    background-color: white !important;
    /* optional: reset any border color change */
}

.faq-toggle {
    font-size: 1.5rem;
    font-weight: 600;
    transition: transform 0.3s ease, color 0.3s ease;
    color: var(--color-accent);
}

.faq-question.active .faq-toggle {
    transform: rotate(45deg);
    color: var(--color-coral);
}


/* FAQ Answer */

.faq-answer {
    background: rgba(255, 255, 255, 0.95);
    border-top: 2px solid var(--color-sky-blue);
    padding: 1.25rem 1.5rem;
    border-radius: 0 0 16px 16px;
    animation: fadeIn 0.3s ease;
}

.faq-answer p,
.faq-answer li {
    color: var(--color-dark);
    font-size: 0.95rem;
    line-height: 1.6;
}

.faq-answer strong {
    color: var(--color-navy-blue);
}


/* Smooth show animation */

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/*--------------------------------------------------------------
# Overview: Steps Section
--------------------------------------------------------------*/

.steps .process-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem 0;
}

.steps .process-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    padding-bottom: 2.5rem;
}

.steps .process-item:last-child {
    padding-bottom: 0;
}

.steps .process-item .content {
    width: 100%;
    position: relative;
    background: linear-gradient(145deg, color-mix(in srgb, var(--accent-color), transparent 95%), var(--surface-color));
    border: 2px solid color-mix(in srgb, var(--accent-color), transparent 85%);
    border-radius: 20px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.steps .process-item .content:hover {
    transform: translateX(10px);
    box-shadow: -8px 8px 25px rgba(0, 0, 0, 0.1);
}

.steps .process-item .content:hover .step-icon {
    background: linear-gradient(135deg, color-mix(in srgb, var(--accent-color), transparent 15%), var(--accent-color));
    transform: rotate(10deg);
}

.steps .process-item .content:hover .step-number {
    transform: translateX(-5px);
    opacity: 1;
}

.steps .process-item .step-number {
    position: absolute;
    left: -30px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 4rem;
    font-weight: 800;
    color: var(--accent-color);
    font-family: var(--heading-font);
    line-height: 1;
    opacity: 0.2;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.steps .process-item .card-body {
    padding: 2rem;
    display: flex;
    align-items: flex-start;
    gap: 2rem;
}

.steps .process-item .step-icon {
    flex-shrink: 0;
    width: 70px;
    height: 70px;
    background-color: var(--accent-color);
    border-radius: 15px;
    display: grid;
    place-items: center;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px color-mix(in srgb, var(--accent-color), transparent 70%);
}

.steps .process-item .step-icon i {
    font-size: 2rem;
    color: var(--contrast-color);
}

.steps .process-item .step-content h3 {
    color: var(--heading-color);
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.steps .process-item .step-content p {
    color: color-mix(in srgb, var(--default-color), transparent 25%);
    font-size: 0.95rem;
    line-height: 1.6;
    margin: 0;
}

.steps .process-item .arrow {
    color: color-mix(in srgb, var(--accent-color), transparent 50%);
    margin: 1rem 0;
    width: 100px;
    height: 100px;
    opacity: 0.7;
}

@media (max-width: 767.98px) {
    .steps .process-container {
        padding: 1rem 0;
    }
    .steps .process-item {
        padding-bottom: 2rem;
    }
    .steps .process-item .content {
        border-width: 1px;
    }
    .steps .process-item .content:hover {
        transform: translateY(-5px);
    }
    .steps .process-item .step-number {
        font-size: 3rem;
        left: 50%;
        top: -1.5rem;
        transform: translateX(-50%);
    }
    .steps .process-item .step-number:hover {
        transform: translateX(-50%);
    }
    .steps .process-item .card-body {
        padding: 2rem 1.5rem 1.5rem;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 1rem;
    }
    .steps .process-item .step-icon {
        width: 60px;
        height: 60px;
        border-radius: 12px;
    }
    .steps .process-item .step-icon i {
        font-size: 1.75rem;
    }
    .steps .process-item .step-content h3 {
        font-size: 1.25rem;
    }
    .steps .process-item .arrow {
        height: 60px;
        margin: 0.5rem 0;
    }
}


/*--- common margin-top ---*/

.mt-1vh {
    margin-top: 1vh;
}

.mt-2vh {
    margin-top: 2vh;
}

.mt-3vh {
    margin-top: 3vh;
}

.mt-4vh {
    margin-top: 4vh;
}

.mt-5vh {
    margin-top: 5vh;
}

.mt-6vh {
    margin-top: 6vh;
}

.mt-7vh {
    margin-top: 7vh;
}

.mt-8vh {
    margin-top: 8vh;
}

.mt-9vh {
    margin-top: 9vh;
}

.mt-10vh {
    margin-top: 10vh;
}


/*-- common padding - */

.pt-1vh {
    padding-top: 1vh;
}

.pt-2vh {
    padding-top: 2vh;
}

.pt-3vh {
    padding-top: 3vh;
}

.pt-4vh {
    padding-top: 4vh;
}

.pt-5vh {
    padding-top: 5vh;
}

.pt-6vh {
    padding-top: 6vh;
}

.pt-7vh {
    padding-top: 7vh;
}

.pt-8vh {
    padding-top: 8vh;
}

.pt-9vh {
    padding-top: 9vh;
}

.pt-10vh {
    padding-top: 10vh;
}


/* Vertical margins for columns in sections and rows
.c - columns
mt-* - margin top value
mb-* - margin bottom value
my-* - same value for top and for bottom margin
*/

.c-mt-0 [class*="col-"],
.row.c-mt-0>[class*="col-"] {
    margin-top: 0;
}

.c-mt-1 [class*="col-"],
.row.c-mt-1>[class*="col-"] {
    margin-top: 1px;
}

.c-mt-2 [class*="col-"],
.row.c-mt-2>[class*="col-"] {
    margin-top: 2px;
}

.c-mt-5 [class*="col-"],
.row.c-mt-5>[class*="col-"] {
    margin-top: 5px;
}

.c-mt-10 [class*="col-"],
.row.c-mt-10>[class*="col-"] {
    margin-top: 10px;
}

.c-mt-15 [class*="col-"],
.row.c-mt-15>[class*="col-"] {
    margin-top: 15px;
}

.c-mt-20 [class*="col-"],
.row.c-mt-20>[class*="col-"] {
    margin-top: 20px;
}

.c-mt-25 [class*="col-"],
.row.c-mt-25>[class*="col-"] {
    margin-top: 25px;
}

.c-mt-30 [class*="col-"],
.row.c-mt-30>[class*="col-"] {
    margin-top: 30px;
}

.c-mt-40 [class*="col-"],
.row.c-mt-40>[class*="col-"] {
    margin-top: 40px;
}

.c-mt-50 [class*="col-"],
.row.c-mt-50>[class*="col-"] {
    margin-top: 50px;
}

.c-mt-60 [class*="col-"],
.row.c-mt-60>[class*="col-"] {
    margin-top: 60px;
}

.c-mb-0 [class*="col-"],
.row.c-mb-0>[class*="col-"] {
    margin-bottom: 0;
}

.c-mb-1 [class*="col-"],
.row.c-mb-1>[class*="col-"] {
    margin-bottom: 1px;
}

.c-mb-2 [class*="col-"],
.row.c-mb-2>[class*="col-"] {
    margin-bottom: 2px;
}

.c-mb-5 [class*="col-"],
.row.c-mb-5>[class*="col-"] {
    margin-bottom: 5px;
}

.c-mb-10 [class*="col-"],
.row.c-mb-10>[class*="col-"] {
    margin-bottom: 10px;
}

.c-mb-15 [class*="col-"],
.row.c-mb-15>[class*="col-"] {
    margin-bottom: 15px;
}

.c-mb-20 [class*="col-"],
.row.c-mb-20>[class*="col-"] {
    margin-bottom: 20px;
}

.c-mb-25 [class*="col-"],
.row.c-mb-25>[class*="col-"] {
    margin-bottom: 25px;
}

.c-mb-30 [class*="col-"],
.row.c-mb-30>[class*="col-"] {
    margin-bottom: 30px;
}

.c-mb-40 [class*="col-"],
.row.c-mb-40>[class*="col-"] {
    margin-bottom: 40px;
}

.c-mb-50 [class*="col-"],
.row.c-mb-50>[class*="col-"] {
    margin-bottom: 50px;
}

.c-mb-60 [class*="col-"],
.row.c-mb-60>[class*="col-"] {
    margin-bottom: 60px;
}

.c-my-0 [class*="col-"],
.row.c-my-0>[class*="col-"] {
    margin-bottom: 0;
    margin-top: 0;
}

.c-my-1 [class*="col-"],
.row.c-my-1>[class*="col-"] {
    margin-bottom: 1px;
    margin-top: 1px;
}

.c-my-2 [class*="col-"],
.row.c-my-2>[class*="col-"] {
    margin-bottom: 2px;
    margin-top: 2px;
}

.c-my-5 [class*="col-"],
.row.c-my-5>[class*="col-"] {
    margin-bottom: 5px;
    margin-top: 5px;
}

.c-my-10 [class*="col-"],
.row.c-my-10>[class*="col-"] {
    margin-bottom: 10px;
    margin-top: 10px;
}

.c-my-15 [class*="col-"],
.row.c-my-15>[class*="col-"] {
    margin-bottom: 15px;
    margin-top: 15px;
}

.c-my-20 [class*="col-"],
.row.c-my-20>[class*="col-"] {
    margin-bottom: 20px;
    margin-top: 20px;
}

.c-my-25 [class*="col-"],
.row.c-my-25>[class*="col-"] {
    margin-bottom: 25px;
    margin-top: 25px;
}

.c-my-30 [class*="col-"],
.row.c-my-30>[class*="col-"] {
    margin-bottom: 30px;
    margin-top: 30px;
}

.c-my-40 [class*="col-"],
.row.c-my-40>[class*="col-"] {
    margin-bottom: 40px;
    margin-top: 40px;
}

.c-my-50 [class*="col-"],
.row.c-my-50>[class*="col-"] {
    margin-bottom: 50px;
    margin-top: 50px;
}

.c-my-60 [class*="col-"],
.row.c-my-60>[class*="col-"] {
    margin-bottom: 60px;
    margin-top: 60px;
}

@media (min-width: 576px) {
    .c-mt-sm-0 [class*="col-"],
    .row.c-mt-sm-0>[class*="col-"] {
        margin-top: 0;
    }
    .c-mt-sm-1 [class*="col-"],
    .row.c-mt-sm-1>[class*="col-"] {
        margin-top: 1px;
    }
    .c-mt-sm-2 [class*="col-"],
    .row.c-mt-sm-2>[class*="col-"] {
        margin-top: 2px;
    }
    .c-mt-sm-5 [class*="col-"],
    .row.c-mt-sm-5>[class*="col-"] {
        margin-top: 5px;
    }
    .c-mt-sm-10 [class*="col-"],
    .row.c-mt-sm-10>[class*="col-"] {
        margin-top: 10px;
    }
    .c-mt-sm-15 [class*="col-"],
    .row.c-mt-sm-15>[class*="col-"] {
        margin-top: 15px;
    }
    .c-mt-sm-20 [class*="col-"],
    .row.c-mt-sm-20>[class*="col-"] {
        margin-top: 20px;
    }
    .c-mt-sm-25 [class*="col-"],
    .row.c-mt-sm-25>[class*="col-"] {
        margin-top: 25px;
    }
    .c-mt-sm-30 [class*="col-"],
    .row.c-mt-sm-30>[class*="col-"] {
        margin-top: 30px;
    }
    .c-mt-sm-40 [class*="col-"],
    .row.c-mt-sm-40>[class*="col-"] {
        margin-top: 40px;
    }
    .c-mt-sm-50 [class*="col-"],
    .row.c-mt-sm-50>[class*="col-"] {
        margin-top: 50px;
    }
    .c-mt-sm-60 [class*="col-"],
    .row.c-mt-sm-60>[class*="col-"] {
        margin-top: 60px;
    }
    .c-mb-sm-0 [class*="col-"],
    .row.c-mb-sm-0>[class*="col-"] {
        margin-bottom: 0;
    }
    .c-mb-sm-1 [class*="col-"],
    .row.c-mb-sm-1>[class*="col-"] {
        margin-bottom: 1px;
    }
    .c-mb-sm-2 [class*="col-"],
    .row.c-mb-sm-2>[class*="col-"] {
        margin-bottom: 2px;
    }
    .c-mb-sm-5 [class*="col-"],
    .row.c-mb-sm-5>[class*="col-"] {
        margin-bottom: 5px;
    }
    .c-mb-sm-10 [class*="col-"],
    .row.c-mb-sm-10>[class*="col-"] {
        margin-bottom: 10px;
    }
    .c-mb-sm-15 [class*="col-"],
    .row.c-mb-sm-15>[class*="col-"] {
        margin-bottom: 15px;
    }
    .c-mb-sm-20 [class*="col-"],
    .row.c-mb-sm-20>[class*="col-"] {
        margin-bottom: 20px;
    }
    .c-mb-sm-25 [class*="col-"],
    .row.c-mb-sm-25>[class*="col-"] {
        margin-bottom: 25px;
    }
    .c-mb-sm-30 [class*="col-"],
    .row.c-mb-sm-30>[class*="col-"] {
        margin-bottom: 30px;
    }
    .c-mb-sm-40 [class*="col-"],
    .row.c-mb-sm-40>[class*="col-"] {
        margin-bottom: 40px;
    }
    .c-mb-sm-50 [class*="col-"],
    .row.c-mb-sm-50>[class*="col-"] {
        margin-bottom: 50px;
    }
    .c-mb-sm-60 [class*="col-"],
    .row.c-mb-sm-60>[class*="col-"] {
        margin-bottom: 60px;
    }
    .c-my-sm-0 [class*="col-"],
    .row.c-my-sm-0>[class*="col-"] {
        margin-bottom: 0;
        margin-top: 0;
    }
    .c-my-sm-1 [class*="col-"],
    .row.c-my-sm-1>[class*="col-"] {
        margin-bottom: 1px;
        margin-top: 1px;
    }
    .c-my-sm-2 [class*="col-"],
    .row.c-my-sm-2>[class*="col-"] {
        margin-bottom: 2px;
        margin-top: 2px;
    }
    .c-my-sm-5 [class*="col-"],
    .row.c-my-sm-5>[class*="col-"] {
        margin-bottom: 5px;
        margin-top: 5px;
    }
    .c-my-sm-10 [class*="col-"],
    .row.c-my-sm-10>[class*="col-"] {
        margin-bottom: 10px;
        margin-top: 10px;
    }
    .c-my-sm-15 [class*="col-"],
    .row.c-my-sm-15>[class*="col-"] {
        margin-bottom: 15px;
        margin-top: 15px;
    }
    .c-my-sm-20 [class*="col-"],
    .row.c-my-sm-20>[class*="col-"] {
        margin-bottom: 20px;
        margin-top: 20px;
    }
    .c-my-sm-25 [class*="col-"],
    .row.c-my-sm-25>[class*="col-"] {
        margin-bottom: 25px;
        margin-top: 25px;
    }
    .c-my-sm-30 [class*="col-"],
    .row.c-my-sm-30>[class*="col-"] {
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .c-my-sm-40 [class*="col-"],
    .row.c-my-sm-40>[class*="col-"] {
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .c-my-sm-50 [class*="col-"],
    .row.c-my-sm-50>[class*="col-"] {
        margin-bottom: 50px;
        margin-top: 50px;
    }
    .c-my-sm-60 [class*="col-"],
    .row.c-my-sm-60>[class*="col-"] {
        margin-bottom: 60px;
        margin-top: 60px;
    }
}

@media (min-width: 768px) {
    .c-mt-md-0 [class*="col-"],
    .row.c-mt-md-0>[class*="col-"] {
        margin-top: 0;
    }
    .c-mt-md-1 [class*="col-"],
    .row.c-mt-md-1>[class*="col-"] {
        margin-top: 1px;
    }
    .c-mt-md-2 [class*="col-"],
    .row.c-mt-md-2>[class*="col-"] {
        margin-top: 2px;
    }
    .c-mt-md-5 [class*="col-"],
    .row.c-mt-md-5>[class*="col-"] {
        margin-top: 5px;
    }
    .c-mt-md-10 [class*="col-"],
    .row.c-mt-md-10>[class*="col-"] {
        margin-top: 10px;
    }
    .c-mt-md-15 [class*="col-"],
    .row.c-mt-md-15>[class*="col-"] {
        margin-top: 15px;
    }
    .c-mt-md-20 [class*="col-"],
    .row.c-mt-md-20>[class*="col-"] {
        margin-top: 20px;
    }
    .c-mt-md-25 [class*="col-"],
    .row.c-mt-md-25>[class*="col-"] {
        margin-top: 25px;
    }
    .c-mt-md-30 [class*="col-"],
    .row.c-mt-md-30>[class*="col-"] {
        margin-top: 30px;
    }
    .c-mt-md-40 [class*="col-"],
    .row.c-mt-md-40>[class*="col-"] {
        margin-top: 40px;
    }
    .c-mt-md-50 [class*="col-"],
    .row.c-mt-md-50>[class*="col-"] {
        margin-top: 50px;
    }
    .c-mt-md-60 [class*="col-"],
    .row.c-mt-md-60>[class*="col-"] {
        margin-top: 60px;
    }
    .c-mb-md-0 [class*="col-"],
    .row.c-mb-md-0>[class*="col-"] {
        margin-bottom: 0;
    }
    .c-mb-md-1 [class*="col-"],
    .row.c-mb-md-1>[class*="col-"] {
        margin-bottom: 1px;
    }
    .c-mb-md-2 [class*="col-"],
    .row.c-mb-md-2>[class*="col-"] {
        margin-bottom: 2px;
    }
    .c-mb-md-5 [class*="col-"],
    .row.c-mb-md-5>[class*="col-"] {
        margin-bottom: 5px;
    }
    .c-mb-md-10 [class*="col-"],
    .row.c-mb-md-10>[class*="col-"] {
        margin-bottom: 10px;
    }
    .c-mb-md-15 [class*="col-"],
    .row.c-mb-md-15>[class*="col-"] {
        margin-bottom: 15px;
    }
    .c-mb-md-20 [class*="col-"],
    .row.c-mb-md-20>[class*="col-"] {
        margin-bottom: 20px;
    }
    .c-mb-md-25 [class*="col-"],
    .row.c-mb-md-25>[class*="col-"] {
        margin-bottom: 25px;
    }
    .c-mb-md-30 [class*="col-"],
    .row.c-mb-md-30>[class*="col-"] {
        margin-bottom: 30px;
    }
    .c-mb-md-40 [class*="col-"],
    .row.c-mb-md-40>[class*="col-"] {
        margin-bottom: 40px;
    }
    .c-mb-md-50 [class*="col-"],
    .row.c-mb-md-50>[class*="col-"] {
        margin-bottom: 50px;
    }
    .c-mb-md-60 [class*="col-"],
    .row.c-mb-md-60>[class*="col-"] {
        margin-bottom: 60px;
    }
    .c-my-md-0 [class*="col-"],
    .row.c-my-md-0>[class*="col-"] {
        margin-bottom: 0;
        margin-top: 0;
    }
    .c-my-md-1 [class*="col-"],
    .row.c-my-md-1>[class*="col-"] {
        margin-bottom: 1px;
        margin-top: 1px;
    }
    .c-my-md-2 [class*="col-"],
    .row.c-my-md-2>[class*="col-"] {
        margin-bottom: 2px;
        margin-top: 2px;
    }
    .c-my-md-5 [class*="col-"],
    .row.c-my-md-5>[class*="col-"] {
        margin-bottom: 5px;
        margin-top: 5px;
    }
    .c-my-md-10 [class*="col-"],
    .row.c-my-md-10>[class*="col-"] {
        margin-bottom: 10px;
        margin-top: 10px;
    }
    .c-my-md-15 [class*="col-"],
    .row.c-my-md-15>[class*="col-"] {
        margin-bottom: 15px;
        margin-top: 15px;
    }
    .c-my-md-20 [class*="col-"],
    .row.c-my-md-20>[class*="col-"] {
        margin-bottom: 20px;
        margin-top: 20px;
    }
    .c-my-md-25 [class*="col-"],
    .row.c-my-md-25>[class*="col-"] {
        margin-bottom: 25px;
        margin-top: 25px;
    }
    .c-my-md-30 [class*="col-"],
    .row.c-my-md-30>[class*="col-"] {
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .c-my-md-40 [class*="col-"],
    .row.c-my-md-40>[class*="col-"] {
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .c-my-md-50 [class*="col-"],
    .row.c-my-md-50>[class*="col-"] {
        margin-bottom: 50px;
        margin-top: 50px;
    }
    .c-my-md-60 [class*="col-"],
    .row.c-my-md-60>[class*="col-"] {
        margin-bottom: 60px;
        margin-top: 60px;
    }
}

@media (min-width: 992px) {
    .c-mt-lg-0 [class*="col-"],
    .row.c-mt-lg-0>[class*="col-"] {
        margin-top: 0;
    }
    .c-mt-lg-1 [class*="col-"],
    .row.c-mt-lg-1>[class*="col-"] {
        margin-top: 1px;
    }
    .c-mt-lg-2 [class*="col-"],
    .row.c-mt-lg-2>[class*="col-"] {
        margin-top: 2px;
    }
    .c-mt-lg-5 [class*="col-"],
    .row.c-mt-lg-5>[class*="col-"] {
        margin-top: 5px;
    }
    .c-mt-lg-10 [class*="col-"],
    .row.c-mt-lg-10>[class*="col-"] {
        margin-top: 10px;
    }
    .c-mt-lg-15 [class*="col-"],
    .row.c-mt-lg-15>[class*="col-"] {
        margin-top: 15px;
    }
    .c-mt-lg-20 [class*="col-"],
    .row.c-mt-lg-20>[class*="col-"] {
        margin-top: 20px;
    }
    .c-mt-lg-25 [class*="col-"],
    .row.c-mt-lg-25>[class*="col-"] {
        margin-top: 25px;
    }
    .c-mt-lg-30 [class*="col-"],
    .row.c-mt-lg-30>[class*="col-"] {
        margin-top: 30px;
    }
    .c-mt-lg-40 [class*="col-"],
    .row.c-mt-lg-40>[class*="col-"] {
        margin-top: 40px;
    }
    .c-mt-lg-50 [class*="col-"],
    .row.c-mt-lg-50>[class*="col-"] {
        margin-top: 50px;
    }
    .c-mt-lg-60 [class*="col-"],
    .row.c-mt-lg-60>[class*="col-"] {
        margin-top: 60px;
    }
    .c-mb-lg-0 [class*="col-"],
    .row.c-mb-lg-0>[class*="col-"] {
        margin-bottom: 0;
    }
    .c-mb-lg-1 [class*="col-"],
    .row.c-mb-lg-1>[class*="col-"] {
        margin-bottom: 1px;
    }
    .c-mb-lg-2 [class*="col-"],
    .row.c-mb-lg-2>[class*="col-"] {
        margin-bottom: 2px;
    }
    .c-mb-lg-5 [class*="col-"],
    .row.c-mb-lg-5>[class*="col-"] {
        margin-bottom: 5px;
    }
    .c-mb-lg-10 [class*="col-"],
    .row.c-mb-lg-10>[class*="col-"] {
        margin-bottom: 10px;
    }
    .c-mb-lg-15 [class*="col-"],
    .row.c-mb-lg-15>[class*="col-"] {
        margin-bottom: 15px;
    }
    .c-mb-lg-20 [class*="col-"],
    .row.c-mb-lg-20>[class*="col-"] {
        margin-bottom: 20px;
    }
    .c-mb-lg-25 [class*="col-"],
    .row.c-mb-lg-25>[class*="col-"] {
        margin-bottom: 25px;
    }
    .c-mb-lg-30 [class*="col-"],
    .row.c-mb-lg-30>[class*="col-"] {
        margin-bottom: 30px;
    }
    .c-mb-lg-40 [class*="col-"],
    .row.c-mb-lg-40>[class*="col-"] {
        margin-bottom: 40px;
    }
    .c-mb-lg-50 [class*="col-"],
    .row.c-mb-lg-50>[class*="col-"] {
        margin-bottom: 50px;
    }
    .c-mb-lg-60 [class*="col-"],
    .row.c-mb-lg-60>[class*="col-"] {
        margin-bottom: 60px;
    }
    .c-my-lg-0 [class*="col-"],
    .row.c-my-lg-0>[class*="col-"] {
        margin-bottom: 0;
        margin-top: 0;
    }
    .c-my-lg-1 [class*="col-"],
    .row.c-my-lg-1>[class*="col-"] {
        margin-bottom: 1px;
        margin-top: 1px;
    }
    .c-my-lg-2 [class*="col-"],
    .row.c-my-lg-2>[class*="col-"] {
        margin-bottom: 2px;
        margin-top: 2px;
    }
    .c-my-lg-5 [class*="col-"],
    .row.c-my-lg-5>[class*="col-"] {
        margin-bottom: 5px;
        margin-top: 5px;
    }
    .c-my-lg-10 [class*="col-"],
    .row.c-my-lg-10>[class*="col-"] {
        margin-bottom: 10px;
        margin-top: 10px;
    }
    .c-my-lg-15 [class*="col-"],
    .row.c-my-lg-15>[class*="col-"] {
        margin-bottom: 15px;
        margin-top: 15px;
    }
    .c-my-lg-20 [class*="col-"],
    .row.c-my-lg-20>[class*="col-"] {
        margin-bottom: 20px;
        margin-top: 20px;
    }
    .c-my-lg-25 [class*="col-"],
    .row.c-my-lg-25>[class*="col-"] {
        margin-bottom: 25px;
        margin-top: 25px;
    }
    .c-my-lg-30 [class*="col-"],
    .row.c-my-lg-30>[class*="col-"] {
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .c-my-lg-40 [class*="col-"],
    .row.c-my-lg-40>[class*="col-"] {
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .c-my-lg-50 [class*="col-"],
    .row.c-my-lg-50>[class*="col-"] {
        margin-bottom: 50px;
        margin-top: 50px;
    }
    .c-my-lg-60 [class*="col-"],
    .row.c-my-lg-60>[class*="col-"] {
        margin-bottom: 60px;
        margin-top: 60px;
    }
}

@media (min-width: 1200px) {
    .c-mt-xl-0 [class*="col-"],
    .row.c-mt-xl-0>[class*="col-"] {
        margin-top: 0;
    }
    .c-mt-xl-1 [class*="col-"],
    .row.c-mt-xl-1>[class*="col-"] {
        margin-top: 1px;
    }
    .c-mt-xl-2 [class*="col-"],
    .row.c-mt-xl-2>[class*="col-"] {
        margin-top: 2px;
    }
    .c-mt-xl-5 [class*="col-"],
    .row.c-mt-xl-5>[class*="col-"] {
        margin-top: 5px;
    }
    .c-mt-xl-10 [class*="col-"],
    .row.c-mt-xl-10>[class*="col-"] {
        margin-top: 10px;
    }
    .c-mt-xl-15 [class*="col-"],
    .row.c-mt-xl-15>[class*="col-"] {
        margin-top: 15px;
    }
    .c-mt-xl-20 [class*="col-"],
    .row.c-mt-xl-20>[class*="col-"] {
        margin-top: 20px;
    }
    .c-mt-xl-25 [class*="col-"],
    .row.c-mt-xl-25>[class*="col-"] {
        margin-top: 25px;
    }
    .c-mt-xl-30 [class*="col-"],
    .row.c-mt-xl-30>[class*="col-"] {
        margin-top: 30px;
    }
    .c-mt-xl-40 [class*="col-"],
    .row.c-mt-xl-40>[class*="col-"] {
        margin-top: 40px;
    }
    .c-mt-xl-50 [class*="col-"],
    .row.c-mt-xl-50>[class*="col-"] {
        margin-top: 50px;
    }
    .c-mt-xl-60 [class*="col-"],
    .row.c-mt-xl-60>[class*="col-"] {
        margin-top: 60px;
    }
    .c-mb-xl-0 [class*="col-"],
    .row.c-mb-xl-0>[class*="col-"] {
        margin-bottom: 0;
    }
    .c-mb-xl-1 [class*="col-"],
    .row.c-mb-xl-1>[class*="col-"] {
        margin-bottom: 1px;
    }
    .c-mb-xl-2 [class*="col-"],
    .row.c-mb-xl-2>[class*="col-"] {
        margin-bottom: 2px;
    }
    .c-mb-xl-5 [class*="col-"],
    .row.c-mb-xl-5>[class*="col-"] {
        margin-bottom: 5px;
    }
    .c-mb-xl-10 [class*="col-"],
    .row.c-mb-xl-10>[class*="col-"] {
        margin-bottom: 10px;
    }
    .c-mb-xl-15 [class*="col-"],
    .row.c-mb-xl-15>[class*="col-"] {
        margin-bottom: 15px;
    }
    .c-mb-xl-20 [class*="col-"],
    .row.c-mb-xl-20>[class*="col-"] {
        margin-bottom: 20px;
    }
    .c-mb-xl-25 [class*="col-"],
    .row.c-mb-xl-25>[class*="col-"] {
        margin-bottom: 25px;
    }
    .c-mb-xl-30 [class*="col-"],
    .row.c-mb-xl-30>[class*="col-"] {
        margin-bottom: 30px;
    }
    .c-mb-xl-40 [class*="col-"],
    .row.c-mb-xl-40>[class*="col-"] {
        margin-bottom: 40px;
    }
    .c-mb-xl-50 [class*="col-"],
    .row.c-mb-xl-50>[class*="col-"] {
        margin-bottom: 50px;
    }
    .c-mb-xl-60 [class*="col-"],
    .row.c-mb-xl-60>[class*="col-"] {
        margin-bottom: 60px;
    }
    .c-my-xl-0 [class*="col-"],
    .row.c-my-xl-0>[class*="col-"] {
        margin-bottom: 0;
        margin-top: 0;
    }
    .c-my-xl-1 [class*="col-"],
    .row.c-my-xl-1>[class*="col-"] {
        margin-bottom: 1px;
        margin-top: 1px;
    }
    .c-my-xl-2 [class*="col-"],
    .row.c-my-xl-2>[class*="col-"] {
        margin-bottom: 2px;
        margin-top: 2px;
    }
    .c-my-xl-5 [class*="col-"],
    .row.c-my-xl-5>[class*="col-"] {
        margin-bottom: 5px;
        margin-top: 5px;
    }
    .c-my-xl-10 [class*="col-"],
    .row.c-my-xl-10>[class*="col-"] {
        margin-bottom: 10px;
        margin-top: 10px;
    }
    .c-my-xl-15 [class*="col-"],
    .row.c-my-xl-15>[class*="col-"] {
        margin-bottom: 15px;
        margin-top: 15px;
    }
    .c-my-xl-20 [class*="col-"],
    .row.c-my-xl-20>[class*="col-"] {
        margin-bottom: 20px;
        margin-top: 20px;
    }
    .c-my-xl-25 [class*="col-"],
    .row.c-my-xl-25>[class*="col-"] {
        margin-bottom: 25px;
        margin-top: 25px;
    }
    .c-my-xl-30 [class*="col-"],
    .row.c-my-xl-30>[class*="col-"] {
        margin-bottom: 30px;
        margin-top: 30px;
    }
    .c-my-xl-40 [class*="col-"],
    .row.c-my-xl-40>[class*="col-"] {
        margin-bottom: 40px;
        margin-top: 40px;
    }
    .c-my-xl-50 [class*="col-"],
    .row.c-my-xl-50>[class*="col-"] {
        margin-bottom: 50px;
        margin-top: 50px;
    }
    .c-my-xl-60 [class*="col-"],
    .row.c-my-xl-60>[class*="col-"] {
        margin-bottom: 60px;
        margin-top: 60px;
    }
}

form[class*="c-mb-"] .row:last-child [class^="col-"],
[class*="c-mb-"] form .row:last-child [class^="col-"] {
    margin-bottom: 0 !important;
}


/* Responsive styles
================================================== */


/* Large Devices, Wide Screens */

@media (min-width: 1200px) {
    .dropdown i {
        display: none;
    }
}


/* Medium Devices, Desktops */

@media (min-width: 992px) {
    .navbar-brand i {
        margin-right: 0;
        font-size: 16px;
        line-height: 16px;
    }
    /* Features */
    .feature-box h5 {
        font-size: 13px !important;
    }
    .owl-carousel.portfolio-item img {
        max-height: 500px;
        max-width: 500px;
    }
}


/* Small Devices, Tablets */

@media (min-width: 768px) and (max-width: 991px) {
    .navbar-default .navbar-nav>li>a {
        padding: 23px 10px;
        letter-spacing: 0;
    }
    .navbar-brand i {
        margin-right: 0;
        font-size: 16px;
        line-height: 16px;
    }
    #section-intro {
        height: 100%;
        background: #222 url("../images/bg/banner2_small.webp") no-repeat fixed 50% 50% / cover;
        padding: 0;
        position: relative;
        overflow: hidden;
    }
    /* Features */
    .feature-box h5 {
        font-size: 13px !important;
    }
    /* Service */
    .service-box {
        margin-bottom: 30px;
    }
    /* Testimonial */
    #testimonial {
        padding-bottom: 100px;
    }
    #testimonial-carousel .item p {
        width: 100%;
    }
    #testimonial-carousel .item h5 {
        margin-top: 20px;
    }
}


/* Extra Small Devices, Phones */

@media (min-width: 480px) and (max-width: 767px) {
    /* Background */
    #section-intro {
        height: 450px;
    }
    .intro-caption {
        padding: 125px 15px;
    }
    .intro-caption h1 {
        font-size: 25px;
        line-height: 35px;
    }
    .mid-title {
        font-size: 30px;
    }
    .navbar-custom {
        margin-top: 0;
        /* background: var(--color-dark); */
        border-right: 0;
        background: linear-gradient(-135deg, #003366 0%, #00162c 100%);
    }
    /* Portfolio */
    .btn-custom {
        padding: 10px;
    }
    /* Header Title */
    .element {
        font-size: 50px;
    }
    /* Service */
    .service-box {
        margin-bottom: 30px;
    }
    /* Testimonial */
    #testimonial {
        padding-bottom: 100px;
    }
    #testimonial-carousel .item p {
        width: 100%;
    }
    #testimonial-carousel .item h5 {
        margin-top: 20px;
    }
    #testimonial-carousel .carousel-indicators {
        margin-top: 30px;
    }
    #testimonial-carousel .carousel-indicators li img {
        width: 45px;
        height: 40px;
        border-radius: 0;
        border: 0;
    }
    #testimonial-carousel .carousel-indicators {
        top: 90%;
    }
    /* Contact */
    .contact-info-wrap {
        margin-bottom: 60px;
    }
}


/* Custom, iPhone Retina */

@media (min-width: 320px) and (max-width: 478px) {
    /* Background */
    .intro-caption {
        padding: 125px 15px;
        text-align: left;
        padding-top: 185px;
        padding-left: 14px;
    }
    .intro-caption h1 {
        font-size: 25px;
        line-height: 35px;
        text-align: center;
    }
    .mid-title {
        font-size: 30px;
    }
    .navbar-custom {
        margin-top: 0;
        /* background: var(--color-dark); */
        background: linear-gradient(-90deg, #003366 0%, #00162c 100%);
        border-right: 0;
    }
    /* Portfolio */
    ul.work {
        margin-left: 0;
    }
    ul.work li {
        padding: 6px 25px;
        margin-top: 5px;
    }
    /* Testimonial */
    #testimonial {
        padding-bottom: 100px;
    }
    #testimonial-carousel .item p {
        width: 100%;
    }
    #testimonial-carousel .item h5 {
        margin-top: 20px;
    }
    #testimonial-carousel .carousel-indicators {
        margin-top: 30px;
    }
    #testimonial-carousel .carousel-indicators li img {
        width: 45px;
        height: 40px;
        border-radius: 0;
        border: 0;
    }
    #testimonial-carousel .carousel-indicators {
        top: 90%;
    }
    /* Contact */
    .contact-info-wrap {
        margin-bottom: 60px;
    }
}