:root {
    --dark: #122620;
    --primary: #d3b184;
    --heading: #ffffff;
    --bg1: #122620;
    --bg2: #F6F4F1;

    --font_marcellus: "Marcellus", serif;
    --font_montserrat: "Montserrat", sans-serif;
}

/* Mobile footer hardening: keep the wordmark inside the content gutter and
   remove the desktop edge frame that otherwise cuts through it. Defined in
   the primary stylesheet as well as responsive.css so cached legacy bundles
   cannot restore the frame. */
@media (max-width: 767px) {
    footer.footer-area > span.border-gradient-shape,
    footer.footer-area > span.border-gradient-shape::before,
    footer.footer-area > span.border-gradient-shape::after,
    footer.footer-area > img.shape {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        content: none !important;
    }

    footer.footer-area .footer-left .logo,
    footer.footer-area .footer-left .logo .logo-wordmark {
        width: fit-content !important;
        max-width: 100% !important;
    }

    footer.footer-area .footer-left .logo .logo-wordmark {
        align-items: flex-start !important;
    }

    footer.footer-area .footer-left .logo .logo-wordmark-name {
        font-size: 18px !important;
        line-height: 1.1 !important;
        letter-spacing: -.2px !important;
    }

    footer.footer-area .footer-left .logo .logo-wordmark-tagline {
        align-self: center !important;
        margin-top: 6px !important;
        font-size: 7.5px !important;
        line-height: 1.2 !important;
        letter-spacing: .015em !important;
    }
}

*,*::before,*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/**
*   ------------------------------------------
*   TABLE OF CONTENT
*   ------------------------------------------
*   # Primary Button
*   # Video
*   # Header Bar
*   # Fixed Sidebar
*   # Header
*   # header 2
*   # Header 3
*   # header 4
*   # Responsive menu
*   # Breadcrumb
*   # Hero Slider
*   # hero slider 2
*   # Hero 3
*   # Hero 4
*   # Hero 5
*   # hero 6
*   # Hero 7
*   # Hero 8
*   # Landing Page
*   # Demo Area
*   # Demo Feature
*   # Home 6
*   # Service
*   # Service 2
*   # Service 3
*   # Service 5
*   # Service 6
*   # Service 7
*   # Service 8
*   # Service Single 
*   # Mentor
*   # Client
*   # Portfolio
*   # Gallery 2
*   # Portfolio 3
*   # Portfolio detail
*   # Video 2
*   # Testimonial
*   # About
*   # About 2
*   # About 3
*   # About 4
*   # About 5
*   # About 6
*   # About 7
*   # About 8
*   # Home 10
*   # Ticket
*   # Ticket detail
*   # Story
*   # Story 2
*   # Team
*   # Team 2
*   # Team 3
*   # Faq
*   # Faq 2
*   # Faq 3
*   # Faq 4
*   # Pricing
*   # Pricing Table 2
*   # Gallery
*   # Blog
*   # Blog Detail
*   # Comment Form
*   # Contact
*   # Contact 2
*   # Contact 3
*   # Coming Soon
*   # Home 9
*   # Newsletter
*   # Newsletter 2
*   # Footer
*   # Footer 2
*/
html,
body {
    font-family: var(--font_montserrat);
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 400;
    width: 100%;
    overflow-x: hidden;
	overflow-y: auto;

}
.custom-container {
    max-width: 1440px;
    margin: auto;
    /* padding: 0 32px; */
}

a {
    text-decoration: none;
}
img {
    max-width: 100%;
}
ul,
ol {
    list-style: none;
    margin: 0;
    padding: 0;
}

#custom-cursor {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: white;
    position: fixed;
    top: 0;
    opacity: 0;
    pointer-events: none;
    mix-blend-mode: difference;
    transition: 100ms;
    will-change: transform;
    z-index: 999999;
    pointer-events: none;
}
body:hover #custom-cursor {
  opacity: 1;
}
  
#custom-cursor-inner {
    border-radius: 50%;
    position: fixed;
    top: -12px;
    left: -12px;
    border: 1px solid white;
    width: 32px;
    height: 32px;
    transition: 150ms;
    mix-blend-mode: difference;
    will-change: transform;
    z-index: 999999;
    pointer-events: none;
}

/* # Primary Button */
.theme-btn {
    display: inline-block;
    font-size: 10px;
    text-transform: uppercase;
    line-height: 1;
    position: relative;
    font-weight: 500;
    color: var(--dark);
    padding: 13px 28px 13px 50px;
    transition: .5s;
    border: none;
    background: none;
}
.theme-btn::before {
    content: '';
    position: absolute;
    width: 1px;
    height: 14px;
    background: var(--dark);
    right: 0;
    top: -4px;
    transform-origin: bottom;
    transform: rotate(-45deg);
    transition: .5s;
}
.theme-btn::after {
    content: '';
    height: 1px;
    width: 45px;
    position: absolute;
    left: -12px;
    top: 50%;
    margin-top: -1px;
    background: var(--dark);
    transition: .5s;
}
.theme-btn span {
    width: 100%;
    height: 100%;
    border-left: 1px solid var(--dark);
    border-bottom: 1px solid var(--dark);
    bottom: 0;
    left: 0;
    position: absolute;
    transition: .5s;
}
.theme-btn span::after,
.theme-btn span::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 1px;
    width: calc(100% - 10px);
    background: var(--dark);
    transition: .5s;
}
.theme-btn span::after {
    width: 1px;
    height: calc(100% - 10px);
    left: auto;
    right: 0;
    top: auto;
    bottom: 0;
    transition: .5s;
}
.theme-btn:hover::after {
    left: calc(100% - 33px);
}
.theme-btn:hover span {
    border-color: var(--primary);
}
.theme-btn:hover:before,
.theme-btn:hover:after,
.theme-btn:hover span:before,
.theme-btn:hover span:after {
    background: var(--primary);
}
.theme-btn:hover {
    color: var(--primary);
    padding-left: 28px;
    padding-right: 50px;
}

.custom-row {
    display: flex;
}

.subtitle {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 10px;
    line-height: 18px;
    text-transform: uppercase;
    letter-spacing: 3.91px;
    margin-bottom: 2px;
    position: relative;
}
.title {
    font-size: 31px;
    line-height: 41.4px;
    color: var(--dark);
    font-family: var(--font_marcellus);
}
.section-header p {
    font-size: 14px;
    line-height: 26.6px;
    color: var(--dark);
}

.right-icon {
    width: 6px;
    height: 15px;
    position: relative;
}
.right-icon::before,
.right-icon::after {
    content: '';
    width: 1px;
    height: 50%;
    background: var(--dark);
    position: absolute;
    transform-origin: bottom;
    transform: rotate(-45deg);
    top: 0;
    right: 0;
}
.right-icon::after {
    transform: rotate(45deg);
    transform-origin: top;
    bottom: 0;
    top: auto;

}

main section {
    /* overflow: hidden; */
}


.input-group textarea,
.input-group input {
    font-size: 11px;
    font-weight: 300;
    line-height: 1;
    border: none;
    border-bottom: 1px solid rgb(18 38 32 / 20%);
    display: block;
    width: 100%;
    padding: 10px 0;
    border-radius: 0;
    background: none;
}
.input-group textarea:focus,
.input-group input:focus {
    outline: none;
    box-shadow: none;
    border-color: var(--primary);
}
.input-group textarea {
    height: 88px;
}


/*  # Video  */
.video-popover {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 999999999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: .5s;
}
.video-popover.active {
    opacity: 1;
    visibility: visible;
}
.video-popover::before {
    content: '';
    background: var(--dark);
    left: 0;
    top: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.6;
}
.video-popover .video-popover-inner {
    position: relative;
}
.video-popover .video-popover-inner #close-video-popover {
    position: absolute;
    right: -28px;
    top: -20px;
    color: var(--heading);
    font-size: 26px;
    cursor: pointer;
}



/* # Header Bar */
.header-bar-wrap {
    background: var(--bg1);
    padding: 5px 32px;
}
.header-bar-wrap .custom-container {
    padding: 0 32px;
}
.header-bar-wrap .custom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 36px;
}
.header-bar-wrap .custom-row > .left {
    display: none;
}
.header-bar-wrap .custom-row > .right {
    margin-left: auto;
}
.select-timezone {
    line-height: 1;
}
.select-timezone select {
    border: none;
    background: none;
    font-size: 10px;
    color: var(--heading);
}
.select-timezone select:focus {
    outline: none;
    box-shadow: none;
}
.header-bar-wrap .right ul {
    display: flex;
    align-items: center;
    gap: 46px;
}
.header-bar-wrap .right ul li {
    color: var(--heading);
    font-size: 11px;
    letter-spacing: 0.39px;
    position: relative;
}
.header-bar-wrap .right ul li + li::before {
    content: "";
    position: absolute;
    background: #ffffff;
    width: 1px;
    height: 22px;
    left: -23px;
    top: 50%;
    margin-top: -11px;
}
.header-bar-wrap ul li a {
    color: var(--heading);
}

/* # Fixed Sidebar */
#fixed-sidebar {
    position: fixed;
    right: -500px;
    top: 0;
    height: 100%;
    background: var(--bg1);
    z-index: 999;
    color: var(--heading);
    padding: 200px 65px 40px 65px;
    transition: all .6s cubic-bezier(.77,0,.175,1);
    width: 500px;
    visibility: hidden;
}
#fixed-sidebar.active {
    visibility: visible;
    right: 0;
}
#fixed-sidebar .sidebar-inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
#fixed-sidebar #close-sidebar {
    position: absolute;
    font-size: 30px;
    right: 57px;
    top: 69px;
    cursor: pointer;
    width: 37px;
    height: 29px;
}
#fixed-sidebar #close-sidebar span {
    width: 100%;
    height: 2px;
    position: absolute;
    background: #ffffff;
    transform-origin: right;
    transform: rotate(-30deg);
    top: 0;
    right: 0;
    transition: .5s;
}
#fixed-sidebar #close-sidebar:hover span {
    top: 8px;
}
#fixed-sidebar #close-sidebar span:last-child {
    top: auto;
    bottom: 0;
    transform: rotate(30deg);
}
#fixed-sidebar #close-sidebar:hover span:last-child {
    bottom: 8px;
}
#fixed-sidebar .content p {
    font-size: 14px;
    line-height: 26.1px;
    margin: 25px 0 0 0;
}
#fixed-sidebar .content .social-icons {
    margin-top: 35px;
}
#fixed-sidebar .content .logo img {
    display: block;
    width: 167px;
    max-width: 100%;
    height: auto;
}
#fixed-sidebar .content .logo {
    display: inline-block;
}
#fixed-sidebar .contact-info li {
    display: block;
    font-size: 14px;
    line-height: 1.75em;
    margin-bottom: 8px;
}
#fixed-sidebar .contact-info li:last-child {
    margin-bottom: 0;
}
#fixed-sidebar .contact-info li a {
    color: var(--heading);
}
.home10-page #fixed-sidebar,
.home9-page #fixed-sidebar,
.home4-page #fixed-sidebar,
.home3-page #fixed-sidebar,
.home-page #fixed-sidebar {
    right: auto;
    left: -500px;
}
.home10-page #fixed-sidebar.active,
.home9-page #fixed-sidebar.active,
.home4-page #fixed-sidebar.active,
.home3-page #fixed-sidebar.active,
.home-page #fixed-sidebar.active {
    left: 0;
    right: auto;
}


/* # Header */
.header-wrap {
    padding: 12px 0;
    position: relative;
    z-index: 99;
    background: #ffffff;
}
.header-wrap .custom-container {
    max-width: 1720px;
    padding: 0;
}
.header-wrap .custom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.sidebar-icon svg {
    width: 54px;
    transition: .5s;
}
.sidebar-icon a {
    display: block;
    line-height: 1;
    position: relative;
}
.sidebar-icon a > i {
    position: absolute;
    color: var(--primary);
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    font-size: 22px;
    display: none;
}
.sidebar-icon a svg rect {
    transition: .5s;
}
.sidebar-icon a svg rect:last-child,
.sidebar-icon a svg rect:nth-child(5) {
    animation: floating 4s ease-in-out infinite
}
@keyframes floating {
    0% { transform: translate(0,  0px); }
    50%  { transform: translate(0, -3px); }
    100%   { transform: translate(0, 0px); }
}
.sticky2-menu a:hover svg rect,
.header-wrap .sidebar-icon a:hover svg rect {
    fill: var(--primary);
}
.header-wrap .right {
    display: flex;
    align-items: center;
    gap: 152px;
}
@media (min-width: 992px) {
    .header-bar-wrap .custom-container {
        max-width: 1720px;
        padding-left: 0;
        padding-right: 0;
    }
    .header-wrap.header-style-1 .custom-row {
        position: relative;
    }
    .header-wrap.header-style-1 .right {
        flex: 1;
        justify-content: flex-end;
        gap: 0;
    }
    .header-wrap.header-style-1 .right > .logo {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        line-height: 1;
    }
    .header-wrap.header-style-1 .menu-wrap nav > ul {
        gap: 50px;
    }
}
@media (min-width: 992px) and (max-width: 1759px) {
    .header-wrap .custom-container,
    .header-bar-wrap .custom-container {
        width: calc(100% - 64px);
    }
}
.header-wrap .menu-wrap {
    display: flex;
    align-items: center;
    gap: 46px;
}

.menu-wrap nav > ul {
    display: flex;
    align-items: center;
    gap: 50px;
}
.menu-wrap nav > ul li {
    position: relative;
}
.menu-wrap nav > ul li >.dropdown,
.menu-wrap nav > ul li >.sub-menu{
    position: absolute;
    left: -50px;
    background-color: #fff;
    border: 1px solid var(--primary);
    padding: 26px 0 23px 0;
    top: 100%;
    width: 340px;
    opacity: 0;
    visibility: hidden;
    transition: .2s;
}
.menu-wrap nav > ul > li.dropdown-item:nth-child(3) >.dropdown {
    left: auto;
    right: -50px;
}
.menu-wrap nav > ul > li > ul li .dropdown,
.menu-wrap nav > ul > li > ul li .sub-menu{
    left: -100%;
    top: 0;
}
.sticky-menu .menu-wrap nav ul > li:hover >.dropdown,
.menu-wrap nav ul > li:hover >.sub-menu {
    opacity: 1;
    visibility: visible;
    transition: .5s;
}
.menu-wrap nav > ul li >.dropdown li,
.menu-wrap nav > ul li >.sub-menu li {
    padding: 0 36px;
}
.menu-wrap nav > ul li.dropdown-item a {
    line-height: 54px;
}
.menu-wrap nav > ul li >.dropdown li a,
.menu-wrap nav > ul li >.sub-menu li a {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .24em;
    display: block;
    line-height: 1.6em;
    margin: 12px 0;
    padding-left: 0;
    position: relative;
    white-space: normal;
    overflow-wrap: anywhere;
}
.menu-wrap nav > ul li >.dropdown li a::before,
.menu-wrap nav > ul li >.sub-menu li a::before {
    content: '';
    width: 0;
    height: 1px;
    position: absolute;
    background: var(--primary);
    left: 0;
    top: 8px;
    transition: .5s;
}
.menu-wrap nav > ul li >.dropdown li.current-menu-item a,
.menu-wrap nav > ul li >.dropdown li a:hover,
.menu-wrap nav > ul li >.dropdown li.active-menu a,
.menu-wrap nav > ul li >.sub-menu li.current-menu-item a,
.menu-wrap nav > ul li >.sub-menu li a:hover,
.menu-wrap nav > ul li >.sub-menu li.active-menu a {
    color: var(--primary);
    padding-left: 28px;
}
.menu-wrap nav > ul li >.dropdown li.current-menu-item a:before,
.menu-wrap nav > ul li >.dropdown li.active-menu a::before,
.menu-wrap nav > ul li >.dropdown li a:hover::before,
.menu-wrap nav > ul li >.sub-menu li.current-menu-item a:before,
.menu-wrap nav > ul li >.sub-menu li.active-menu a::before,
.menu-wrap nav > ul li >.sub-menu li a:hover::before {
    width: 20px;
}
.menu-wrap nav > ul li a {
    font-size: 11px;
    text-transform: uppercase;
    position: relative;
    color: var(--dark);
    font-weight: 600;
    line-height: 1;
    display: block;
    transition: 0.5s;
}

/* Preserve the theme's native menu styling; only change the requested order. */
@media (min-width: 992px) {
    .header-wrap .menu-wrap nav > ul > li:nth-child(1) {
        order: 1;
    }

    .header-wrap .menu-wrap nav > ul > li:nth-child(4) {
        order: 2;
    }

    .header-wrap .menu-wrap nav > ul > li:nth-child(2) {
        order: 3;
    }

    .header-wrap .menu-wrap nav > ul > li:nth-child(3) {
        order: 4;
    }

    .header-wrap .menu-wrap nav > ul > li:nth-child(5) {
        order: 5;
    }
}
.menu-wrap nav > ul li a:hover {
    color: var(--primary);
}
.menu-wrap nav > ul li >.dropdown li,
.menu-wrap nav > ul li >.sub-menu li {
    position: relative;
}
.menu-wrap nav > ul > li:first-child > .dropdown {
    display: none;
}

/* # Homepage practice areas
   The theme's Service 3 block is laid out for ~6 entries; with all 13 it ran
   very tall. Widen the container and use three tighter columns. */
.home3-page .service3-area {
    padding: 110px 0 96px;
}

.home3-page .service3-area .custom-container {
    max-width: 1260px;
}

.home3-page .service3-area .custom-row {
    column-gap: 56px;
}

.home3-page .service3-area .section-header {
    max-width: 300px;
}

.home3-page .service3-area .section-header .title {
    font-size: 30px;
    line-height: 1.24;
}

.home3-page .service3-items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 40px;
    row-gap: 34px;
}

.home3-page .service3-box img {
    width: 34px;
    height: 34px;
    margin-bottom: 11px;
}

/* Keep every practice-area icon navy on local and live pages. The broad
   selector and !important override Elementor rules and legacy gold SVGs. */
.service3-area .service3-items .service3-box > img,
.service3-items .service3-box > img {
    filter: brightness(0) saturate(100%) invert(10%) sepia(23%) saturate(2199%) hue-rotate(173deg) brightness(93%) contrast(101%) !important;
    opacity: 1 !important;
}

.home3-page .service3-box .title {
    font-size: 16px;
    line-height: 1.28;
    margin: 0 0 8px;
}

.home3-page .service3-box p {
    font-size: 12px;
    line-height: 1.7;
}

@media (max-width: 1199px) {
    .home3-page .service3-area .custom-row {
        column-gap: 40px;
    }
    .home3-page .service3-items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 32px;
    }
}

@media (max-width: 991px) {
    .home3-page .service3-area {
        padding: 70px 0 64px;
    }
    /* the theme only stacks this row below 768px, which squeezed the grid into
       a sliver between 768 and 991 */
    .home3-page .service3-area .custom-row {
        flex-direction: column;
        column-gap: 0;
    }
    .home3-page .service3-area .section-header {
        max-width: 100%;
        margin-bottom: 34px;
    }
    .home3-page .service3-area .right {
        width: 100%;
    }
}

@media (max-width: 575px) {
    .home3-page .service3-items {
        grid-template-columns: 1fr;
        row-gap: 28px;
    }
}

/* On the homepage header the logo is absolutely centred while the menu is
   right-aligned, so at ~1440px the first item ran underneath the logo. Tighten
   the item spacing to clear it. (.header-wrap .right only exists on this
   header; inner pages put .menu-wrap straight in .custom-row.) */
.header-wrap .right .menu-wrap nav > ul {
    gap: 34px;
}

/* Narrower laptops: the centred logo and the right-aligned menu meet, so pull
   the menu in further and trim the logo. */
@media (max-width: 1400px) {
    .header-wrap .right .menu-wrap nav > ul {
        gap: 22px;
    }
    .header-wrap .right .logo img {
        max-width: 175px;
    }
}

/* Below ~1280 the menu can't shrink far enough, so take the logo out of
   absolute centring and let the flex row space the two apart instead. */
@media (max-width: 1279px) {
    .header-wrap .right {
        justify-content: space-between;
        gap: 24px;
    }
    /* must match .header-wrap.header-style-1 .right > .logo for specificity */
    .header-wrap.header-style-1 .right > .logo,
    .header-wrap .right > .logo {
        position: static;
        left: auto;
        top: auto;
        transform: none;
        flex: 0 0 auto;
        margin-right: 28px;
    }
    .header-wrap .right .menu-wrap nav > ul > li > a {
        font-size: 12px;
    }
}

/* # Practice Areas mega-menu
   Same visual language as the theme's dropdown (white panel, gold hairline,
   uppercase tracked links with the sliding rule) but laid out as a grid so all
   13 practice areas read at a glance. */
.menu-wrap nav > ul li > .dropdown.mega-menu {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 8px;
    row-gap: 2px;
    width: min(880px, calc(100vw - 60px));
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    padding: 26px 22px 24px;
}

/* Anchor the panel to the right edge of the menu rather than to the menu item,
   so it lines up with the end of the nav instead of drifting left as the
   viewport narrows. Making the item position:static hands the positioning
   context to .menu-wrap. */
.header-wrap .menu-wrap {
    position: relative;
}

.header-wrap .menu-wrap nav > ul > li.dropdown-item.has-mega {
    position: static;
}

.menu-wrap nav > ul li > .dropdown.mega-menu,
.menu-wrap nav > ul > li.dropdown-item:nth-child(3) > .dropdown.mega-menu {
    left: auto;
    right: 0;
    transform: none;
}

.menu-wrap nav > ul li > .dropdown.mega-menu > li {
    padding: 0 14px;
}

.menu-wrap nav > ul li > .dropdown.mega-menu > li > a {
    margin: 9px 0;
    line-height: 1.55em;
    /* The theme indents the label by 28px on hover. In a single narrow column
       that reads fine, but in a grid it knocks the item out of alignment with
       its neighbours, so reserve the indent up front and let only the rule
       animate in. */
    padding-left: 28px;
}

.menu-wrap nav > ul li > .dropdown.mega-menu > li.current-menu-item > a,
.menu-wrap nav > ul li > .dropdown.mega-menu > li > a:hover,
.menu-wrap nav > ul li > .dropdown.mega-menu > li.active-menu > a {
    padding-left: 28px;
}

.menu-wrap nav > ul li > .dropdown.mega-menu > li > a::before {
    top: 9px;
}

.header-wrap .menu-wrap nav > ul > li.dropdown-item > a > i.la-angle-down {
    display: inline-block;
    margin-left: 6px;
    font-size: 13px;
    transition: transform .3s;
}

.header-wrap .menu-wrap nav > ul > li.dropdown-item:hover > a > i.la-angle-down {
    transform: rotate(180deg);
}

@media (max-width: 1199px) {
    .menu-wrap nav > ul li > .dropdown.mega-menu {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: min(660px, calc(100vw - 40px));
    }
}

.breadcrumb-heading {
    margin: 18px 0 0;
    color: var(--dark);
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 500;
    line-height: 1.1;
}

.about-firm-page {
    padding: 78px 0 88px;
    border-top: 1px solid rgb(18 38 32 / 20%);
    background: #fff;
}

.about-firm-kicker {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 30px;
    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .32em;
    text-transform: uppercase;
}

.about-firm-kicker span {
    width: 38px;
    height: 1px;
    background: currentColor;
}

.about-firm-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: 56px;
    align-items: start;
}

.about-firm-grid h1 {
    max-width: 900px;
    margin: 0 0 24px;
    color: var(--dark);
    font-size: clamp(38px, 5vw, 78px);
    line-height: 1.03;
    font-weight: 500;
}

.about-firm-grid p {
    max-width: 820px;
    margin: 0 0 18px;
    color: rgb(18 38 32 / 82%);
    font-size: 19px;
    line-height: 1.75;
}

.about-firm-panel {
    border: 1px solid rgb(211 177 132 / 55%);
    padding: 30px;
    background: #fff;
}

.about-firm-panel h3 {
    margin: 0 0 22px;
    color: var(--dark);
    font-size: 24px;
    font-weight: 500;
}

.about-firm-panel a {
    display: block;
    padding: 15px 0;
    border-top: 1px solid rgb(18 38 32 / 12%);
    color: var(--dark);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1.45;
    text-decoration: none;
    text-transform: uppercase;
}

.about-firm-panel a:hover {
    color: var(--primary);
}

@media (max-width: 991px) {
    .about-firm-grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }
}

@media (max-width: 575px) {
    .about-firm-page {
        padding: 54px 0 64px;
    }

    .about-firm-kicker {
        letter-spacing: .18em;
    }

    .about-firm-panel {
        padding: 22px;
    }
}
.menu-wrap nav > ul li >.dropdown li i {
    position: absolute;
    right: 36px;
    top: 2px;
}
.menu-wrap nav > ul li.active a {
    padding-left: 14px;
}
/* Hide the image by default */
.dropdown-item > a::before {
    content: '';
    display: none;
    background: url('../imgs/star-shape.svg') no-repeat;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -6px;
    width: 20px; /* Adjust size as needed */
    height: 20px; /* Adjust size as needed */
}

/* Show the image when the li has the active class */
.dropdown-item.active > a::before {
    display: inline-block;
    vertical-align: middle; /* Align the icon vertically with the text */
}
.language-select {
    display: block;
    background: none;
    border: none;
    color: var(--dark);
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
}
.language-select:focus {
    outline: none;
    box-shadow: none;
}
.header-wrap .logo {
    display: block;
}
.header-wrap .logo img {
    display: block;
}

/* Text-based brand mark: selectable, accessible and independent of images. */
.header-wrap .logo .logo-wordmark,
#fixed-sidebar .logo .logo-wordmark,
.footer-area .logo .logo-wordmark {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: max-content;
    max-width: 100%;
    color: #061d38;
    font-family: Georgia, "Times New Roman", serif;
    white-space: nowrap;
}
.logo-wordmark .logo-wordmark-name {
    font-size: 25px;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -.35px;
}
.logo-wordmark .logo-wordmark-tagline {
    margin-top: 7px;
    color: #966515;
    font-family: Montserrat, Arial, Helvetica, sans-serif;
    font-size: 10px;
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: .06em;
}
/* The footer's left column is narrower than the wordmark, and nowrap lets the
   name overflow it. Without this the wrapper would cap at the column width and
   the tagline would lock to that instead of to the name. */
.footer-area .logo .logo-wordmark {
    max-width: none;
}

/* Match the approved mark: a centred gold tagline below the navy name. */
.logo-wordmark .logo-wordmark-tagline {
    display: flex;
    align-self: center;
    justify-content: center;
    column-gap: 0;
    text-align: center;
}

.logo-wordmark .logo-wordmark-tagline b {
    display: inline-block;
    margin: 0 .55em;
    color: currentColor;
    font-weight: 400;
}
.logo-wordmark.logo-wordmark-light {
    color: #fff;
}

/* Dark-background variants need greater specificity than the shared
   header/footer wordmark selector above. */
#fixed-sidebar .logo .logo-wordmark.logo-wordmark-light,
.footer-area .logo .logo-wordmark.logo-wordmark-light {
    color: #fff;
}

#fixed-sidebar .logo .logo-wordmark.logo-wordmark-light .logo-wordmark-name,
.footer-area .logo .logo-wordmark.logo-wordmark-light .logo-wordmark-name {
    color: #fff;
    text-shadow: 0 1px 12px rgb(0 0 0 / 28%);
}

#fixed-sidebar .logo .logo-wordmark.logo-wordmark-light .logo-wordmark-tagline,
.footer-area .logo .logo-wordmark.logo-wordmark-light .logo-wordmark-tagline {
    color: #d3b184;
}

/* # header 2 */
.header-style-2 {
    padding: 0 67px 0 0;
}
.header-style-2 .left {
    display: flex;
    align-items: center;
    gap: 36px;
}
.header-style-2 .select-timezone {
    background: var(--bg1);
    padding: 29px 18px;
    line-height: 1.2;
}

/* # Header 3 */
.header-style-3 {
    border-bottom: .5px solid rgb(18 38 32 / 30%);
}
.home5-page .header-wrap {
    border-bottom:  .5px solid rgb(18 38 32 / 30%);
}

/* # header 4 */
.header-style-4 {
    border-bottom: 1px solid rgb(18 39 32 / 50%);
    padding: 0;
}
.header-style-4 .custom-container {
    padding: 0 37px;
}
.header-style-4 .logo {
    display: block;
    background: #fff;
    padding: 12px 20px;
}
.header-style-4 .logo img {
    display: block;
    max-width: 300px;
    width: 100%;
}
.header-style-4 .select-timezone svg path {
    fill: var(--dark);
}
.header-style-4 .select-timezone select {
    color: var(--dark);
}
.header-style-4 .custom-container.full-container {
    max-width: 100%;
    padding-left: 0;
    padding-right: 32px;
}

.sticky-menu {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    max-width: 231px;
}
.sticky-menu .menu-wrap nav {
    padding-left: 11px;
    margin-bottom: 30px;
}
.sticky-menu .menu-wrap nav ul {
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}
.sticky-menu .menu-wrap nav ul > li a {
    line-height: 1;
}
.sticky-menu .menu-wrap nav ul > li.active a {
    padding-left: 0;
}
.sticky-menu .menu-wrap nav ul .dropdown-item > a::before {
    left: -19px;
    top: 2px;
    width: 17px;
    height: 17px;
    background-color: #ffffff; /* Set the background color */
/*     background-image: url('../imgs/star-shape.svg'); */
    background-repeat: no-repeat;
    background-position: center center;
}
.sticky-menu .menu-wrap .language-select {
    margin-left: 6px;
}
.sticky-menu .menu-wrap nav ul > li >.dropdown {
    left: 100%;
    top: -50px;
    z-index: 999;
}
.home6-page .menu-wrap nav > ul > li.dropdown-item:nth-child(3) >.dropdown {
    right: auto;
    left: 100%;
}

/* # Responsive menu */
.responsive-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 999999;
    background-color: #ffffff;
    padding: 32px;
    transition: max-height .42s cubic-bezier(.4,0,.2,1), padding .42s cubic-bezier(.4,0,.2,1), opacity .25s ease, transform .42s cubic-bezier(.4,0,.2,1), visibility 0s linear .42s;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    visibility: hidden;
    overflow-x: hidden;
}
.responsive-menu::-webkit-scrollbar {
    width: 0;
}
.responsive-menu nav ul li {
    position: relative;
    margin: 6px 0;
}
.responsive-menu nav ul li.dropdown-active i {
    transform: rotate(90deg);
}
.responsive-menu nav ul li i {
    position: absolute;
    right: 0;
    top: 0;
    text-align: center;
    width: 25px;
    height: 22px;
    line-height: 22px;
    transition: .5s;
}
.responsive-menu nav ul li a {
    font-size: 11px;
    text-transform: uppercase;
    position: relative;
    color: var(--dark);
    font-weight: 500;
    line-height: 1;
    display: block;
    transition: 0.5s;
    width: fit-content;
    line-height: 2em;
}
.responsive-menu nav ul li .dropdown {
    overflow: hidden;
    max-height: 0;
    /* padding-left: 40px; */
    transition: max-height .36s cubic-bezier(.4,0,.2,1);
    will-change: max-height;
}
.responsive-menu nav ul li .dropdown li a {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .6em;
    display: block;
    line-height: 1.6em;
    margin: 12px 0;
    padding-left: 0;
    position: relative;
}
.responsive-menu nav ul li .dropdown .dropdown-item-inner i {
    display: none;
}
.responsive-menu nav ul li .dropdown li a::before {
    content: '';
    width: 0;
    height: 1px;
    position: absolute;
    background: var(--primary);
    left: 0;
    top: 8px;
    transition: .5s;
}
.responsive-menu nav ul li .dropdown li.active-menu a {
    color: var(--primary);
    padding-left: 40px;
}
.responsive-menu nav ul li .dropdown li.active-menu a::before {
    width: 30px;
}
.responsive-menu nav ul li .dropdown li a {
    margin: 0;
}



/* # Breadcrumb */
.breadcrumb-area {
    padding: 368px 0 70px 0;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.breadcrumb-area .custom-container {
    max-width: 1440px;
    padding-left: 32px;
    position: relative;
    z-index: 1;
}
.breadcrumb-area .content ul {
    display: flex;
    align-items: center;
    margin: 0;
    gap: 10px;
}
.breadcrumb-area .content ul .seperate {
    display: block;
    background: #ffffff;
    height: 2px;
    width: 20px;
}
.breadcrumb-area .content ul li a {
    color: var(--heading);
    display: block;
}
.breadcrumb-area .content ul li {
    font-size: 54px;
    line-height: 1;
    display: block;
    font-family: var(--font_marcellus);
    color: var(--heading);
}
.breadcrumb-area .content ul li:last-child {
    text-decoration: underline;
}
.breadcrumb-area::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
/*    background-image: url(../imgs/aboug-breadcrumb-bg.jpeg);*/
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    animation: zoomInAnim 35s infinite linear;
}
.breadcrumb-area::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(2, 13, 28, 0.78) 0%, rgba(2, 13, 28, 0.58) 48%, rgba(2, 13, 28, 0.38) 100%),
        linear-gradient(0deg, rgba(0, 8, 18, 0.28) 0%, rgba(0, 8, 18, 0) 55%);
}
.breadcrumb-area .content ul li,
.breadcrumb-area .content ul li a {
    color: #ffffff !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.28);
}
.breadcrumb-area .content ul .seperate {
    background: #ffffff !important;
}
@keyframes zoomInAnim {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.2);
    }
    100% {
        transform: scale(1);
    }
}
.breadcrumb-team::before {
    background-image: url(../imgs/team-breadcrumb-bg.jpeg);
}
.breadcrumb-contact::before {
    background-image: url(../imgs/contact-breadcrumb-bg.jpeg);
}
.breadcrumb-portfolio::before {
    background-image: url(../imgs/portfolio-breadcrumb-bg.jpeg);
}

.breadcrumb-work-query .content ul .seperate,
.breadcrumb-portfolio-single-3 .content ul .seperate,
.breadcrumb-portfolio .content ul .seperate {
    background: var(--dark);
}
.breadcrumb-work-query .content ul li,
.breadcrumb-work-query .content ul li a,
.breadcrumb-portfolio-single-3 .content ul li,
.breadcrumb-portfolio-single-3 .content ul li a,
.breadcrumb-portfolio .content ul li,
.breadcrumb-portfolio .content ul li a {
    color: var(--dark);
}
.breadcrumb-portfolio-single-1::before {
    background-image: url(../imgs/portfolio-single-breadcrumb-1.jpeg);
}
.breadcrumb-portfolio-single-2::before {
    background-image: url(../imgs/portfolio-single-breadcrumb-2.jpeg);
}
.breadcrumb-portfolio-single-3::before {
    background-image: url(../imgs/portfolio-single-breadcrumb-3.jpeg);
}
.breadcrumb-faq::before {
    background-image: url(../imgs/breadcrumb-faq-bg.jpeg);
}
.breadcrumb-work-query::before {
    background-image: url(../imgs/breadcrumb-work-query-bg.jpeg);
}
.breadcrumb-pricing::before {
    background-image: url(../imgs/breadcrimb-pricing-bg.jpeg);
}
.breadcrumb-ticket::before {
    background-image: url(../imgs/breadcrumb-ticket-bg.jpeg);
}
.breadcrumb-course::before {
    background-image: url(../imgs/breadcrumb-course-bg.jpeg);
}



/* # Hero Slider */
.hero-slider-wrap {
    width: 100%;
    max-width: 1440px;
    min-height: 621px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    z-index: 0;
    transition: all 0.4s ease;
    margin: auto;
}
.hero-style-1 .swiper-slide.slide-bg-image2 .slide-inner:before,
.hero-style-1 .swiper-slide.slide-bg-image3 .slide-inner:before,
.hero-style-1 .swiper-slide.slide-bg-image .slide-inner:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    /* animation: none; */
    /* opacity: 0; */
    /* transition: .5s; */
    animation: zoomingOut 1s forwards;
}
.hero-style-1 .swiper-slide.swiper-slide-active .slide-inner::before {
    animation: zoomingIn 45s forwards;
    /* animation-timing-function: 1500; */
}
@keyframes zoomingOut {
    from {
        transform: scale(1.11);
    }
    to {
        transform: scale(1);
    }
}
@keyframes zoomingIn {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(2);
    }
}
.hero-slider-wrap .swiper-slide {
    overflow: hidden;
    color: var(--heading);
    position: relative;
}
.hero-slider-wrap .swiper-slide.swiper-slide-active {
    z-index: 999;
}
.hero-slider-wrap .swiper-container {
    width: calc(100% - 64px);
    height: 100%;
    position: absolute;
    left: 32px;
    top: 0;
    /* width: 100%; */
}

.hero-slider-wrap .slide-inner {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    text-align: left;
}
.hero-slider-wrap .slide-inner .hero-slide-content-wrap {
    max-width: 1440px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 62px;
}
.hero-slider-wrap .slide-inner .hero-slide-content {
    max-width: 425px;
    width: 100%;
    padding-bottom: 62px;
}
.hero-slider-wrap .slide-inner .hero-slide-content h4 {
    font-weight: 600;
    text-transform: uppercase;
    line-height: 18px;
    font-size: 10px;
    margin: 0 0 6px;
    letter-spacing: 3.91px;
    position: relative;
    overflow: hidden;
/*     max-height: 0; */
    transition: 1s;
    opacity: 0;
}
.hero-slider-wrap .swiper-slide.swiper-slide-active .slide-inner .hero-slide-content h4 {
    max-height: 20px;
    opacity: 1;
}
.hero-slider-wrap .slide-inner .hero-slide-content h1 {
    font-family: var(--font_marcellus);
    font-size: 54px;
    line-height: 62.5px;
    margin: 0 0 9px;
    position: relative;
    overflow: hidden;
/*     max-height: 0; */
    transition: 1.5s;
    opacity: 0;
}
.hero-slider-wrap .swiper-slide.swiper-slide-active .slide-inner .hero-slide-content h1 {
    max-height: 190px;
    opacity: 1;
}
.hero-slider-wrap .slide-inner .hero-slide-content p {
    font-size: 14px;
    line-height: 26.6px;
    color: var(--heading);
    margin: 0 0 24px;
    opacity: 0.8;
/*     max-height: 0; */
    transition: 1.7s;
    overflow: hidden;
}
.hero-slider-wrap .swiper-slide.swiper-slide-active .slide-inner .hero-slide-content p {
    max-height: 60px;
}
.hero-slider-wrap .slide-inner .hero-slide-content .btn-box {
    transition: 1.7s;
    max-height: 0;
    overflow: hidden;
}
.hero-slider-wrap .swiper-slide.swiper-slide-active .slide-inner .hero-slide-content .btn-box {
    max-height: 40px;
    padding-left: 12px;
    margin-left: -12px;
}
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn {
    color: var(--heading);
}
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn span::before,
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn span::after,
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn::before,
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn::after {
    background: #ffffff;
}
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn span {
    border-color: var(--heading);
}
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn:hover span {
    border-color: var(--primary);
}
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn:hover:before,
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn:hover:after,
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn:hover span:before,
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn:hover span:after {
    background: var(--primary);
}
.hero-slider-wrap .slide-inner .hero-slide-content .theme-btn:hover {
    color: var(--primary);
}
.hero-slider-thumbnail {
    position: absolute;
    right: 32px;
    bottom: -35px;
    background: #ffffff;
    z-index: 99;
}
.hero-slider-thumbnail  .thumb-content {
    padding: 36px 47px 20px 47px;
    transition: all .3s;
    position: relative;
    border-bottom: 1px solid rgb(18 38 32 / 6%);
    border-radius: 0;
    width: 233px;
    height: auto;
    background: #ffffff;
    opacity: 1;
}
.hero-slider-thumbnail .thumb-content:first-child {
    border-left: 1px solid rgb(18 38 32 / 6%);

}
.hero-slider-thumbnail .thumb-content:last-child {
    border-right: 1px solid rgb(18 38 32 / 6%);
}
.hero-slider-thumbnail .thumb-content::before {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -26px;
    height: 54px;
    width: 1px;
    background: var(--dark);
    opacity: 0.1;
}
.hero-slider-thumbnail .thumb-content:last-child::before,
.hero-slider-thumbnail .swiper-pagination-bullet-active.thumb-content::before {
    display: none;
}
.hero-slider-thumbnail .swiper-pagination-bullet-active.thumb-content:last-child,
.hero-slider-thumbnail .swiper-pagination-bullet-active.thumb-content:first-child {
    border-color: var(--dark);
}
.hero-slider-thumbnail .swiper-pagination-bullet-active.thumb-content {
    background: var(--bg1);
}
.hero-slider-thumbnail .swiper-pagination-bullet-active.thumb-content h1 {
    color: var(--heading);
}
.hero-slider-thumbnail .thumb-content span {
    display: block;
    color: var(--primary);
    text-transform: uppercase;
    font-weight: 600;
    font-size: 10px;
    line-height: 1;
    letter-spacing: 3.91px;
    transition: all .3s;
}
.hero-slider-thumbnail .thumb-content h1 {
    font-size: 18px;
    line-height: 41.4px;
    color: var(--dark);
    margin: 0;
    transition: all .3s;
}
/* # hero slider 2 */
.hero-slider-style-2 {
    max-width: 100%;
    position: relative;
    z-index: 1;
    min-height: 653px;
}
.quote-now-btn {
    position: absolute;
    right: 0;
    bottom: 49px;
    z-index: 9;
    background-color: var(--bg1);
    background-image: url(../imgs/footer-bg.png);
    display: inline-flex;
    align-items: center;
    color: var(--heading);
    font-family: var(--font_marcellus);
    line-height: 1;
    font-size: 18px;
    gap: 4px;
    overflow: hidden;
    padding: 40px 90px 30px 40px;
    transition: .5s;
}
.quote-now-btn:hover {
    gap: 6px;
    padding-right: 88px;
}
.quote-now-btn .border-gradient-shape {
    height: calc(100% - 28px);
    width: calc(100% - 28px);
    right: 14px;
    top: 14px;
}
.quote-now-btn img {
    position: absolute;
    right: 14px;
    top: 14px;
    width: calc(100% - 14px);
    height: calc(100% - 14px);
    pointer-events: none;
}
.hero-slider-style-2::before {
    content: '';
    background: var(--bg2);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    width: 100%;
    height: calc(100% - 49px);
}
.hero-slider-style-2 .hero-slide-container2 {
    max-width: 100%;
    width: 100%;
    left: 0;
}
.hero-slider-style-2 .swiper-slide .slide-inner .hero-slide-content-wrap {
    padding-left: 0;
    width: 100%;
    max-width: 100%;
    display: flex;
    gap: 98px;
    /* align-items: center; */
    height: 100%;
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-img-box {
    max-width: 619px;
    width: 100%;
    flex: none;
    overflow: hidden;
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-img-box img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
    animation: zoomInAnim 35s infinite linear;
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content {
    padding-bottom: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content h4 {
    color: var(--dark);
    margin-bottom: 8px;
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content h1 {
    font-size: 54px;
    line-height: 54.7px;
    color: var(--dark);
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content p {
    color: var(--dark);
    opacity: 0.8;
    max-width: 423px;
    width: 100%;
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content .theme-btn {
    color: var(--dark);
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content .theme-btn span::after,
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content .theme-btn span::before,
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content .theme-btn::before,
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content .theme-btn::after {
    background: var(--dark);
}
.hero-slider-style-2 .hero-slide-content-wrap .hero-slide-content .theme-btn span {
    border-color: var(--dark);
}
.hero-slider-style-2 .hero-slider-2-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    bottom: 86px;
    left: 50%;
    transform: translateX(-50%);
    gap: 66px;
    z-index: 9;
    width: auto;
    margin-left: 50px;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet {
    width: 11px;
    height: 11px;
/*     background: url(../imgs/star-shape.svg) no-repeat center; */
    background-size: contain;
    opacity: 1;
    margin: 0;
    position: relative;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet:after,
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet:before {
    content: '';
    position: absolute;
    width: 58px;
    height: 2px;
    cursor: pointer;
    border-radius: 0;
    opacity: 1;
    background: rgb(18 38 32 / 10%);
    top: 5px;
    left: 14px;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet:after {
    width: 0;
    background: var(--dark);
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:after {
    animation: bulletAnim 8s infinite;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet::nth-child(2)::after {
    animation: bulletAnim2 18s infinite;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet:last-child::after,
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet:last-child::before {
    display: none;
}
@keyframes bulletAnim {
    0% {
        width: 0;
    }
    100% {
        width: 58px;
        transition: 0;
    }
}
@keyframes bulletAnim2 {
    0% {
        width: 0;
    }
    100% {
        width: 58px;
        transition: 0;
    }
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet img.first {
    left: -20px;
    top: -5px;
    display: none;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet img.last {
    right: -20px;
    top: -5px;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet:first-child img.first {
    display: block;
}
.hero-slider-style-2 .hero-slider-2-pagination .swiper-pagination-bullet img {
    position: absolute;
}

/* # Hero 3 */
.hero3-area {
    padding-top: 60px;
}
.hero3-area .custom-container {
    max-width: 1440px;
    padding: 0 32px;
}
.hero3-area .hero-banner-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.hero3-area .hero-banner-top .right {
    max-width: 410px;
    width: 100%;
}
.hero3-area .hero-banner-top .left {
    max-width: 611px;
    width: 100%;
}
.hero3-area .hero-banner-top p {
    font-size: 14px;
    line-height: 26.6px;
    color: var(--dark);
    opacity: 0.8;
    margin: 0 0 8px;
}
.hero3-area .hero-banner-top .right {
    padding-top: 20px;
}
.hero3-area .hero-banner-top .right img {
    display: block;
    margin-left: auto;
}
.hero3-area .hero-banner-top .social-icons {
    margin: 0;
}
.hero3-area .hero-banner-top .social-icons li a {
    color: rgb(18 38 32 / 70%);
    border-color: rgb(211 177 132 / 60%);
    transition: .5s;
}
.hero3-area .hero-banner-top .social-icons li a:hover {
    background: var(--primary);
    color: var(--heading);
}
.hero3-area .hero-banner-top .subtitle {
    line-height: 1;
    margin: 0 0 8px;
}
.hero3-area .hero-banner-top .title {
    font-size: 54px;
    line-height: 62.5px;
    margin: 0 0 25px;
}
.hero-banner-bottom {
    position: relative;
    margin-top: 54px;
}
.hero-banner-bottom .box-anim {
    overflow: hidden;
}
.hero-banner-bottom .box-anim img {
    display: block;
    width: 100%;
    height: clamp(280px, 34vw, 470px);
    object-fit: cover;
    object-position: center 40%;
    animation: zoomInAnim 35s infinite linear;
}
.hero-banner-bottom .quote-now-btn {
    top: -23px;
    right: 0;
    bottom: auto;
}
.funfacts-wrap {
    background-color: var(--bg2);
    background-image: url(../imgs/newsletter-bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 60px 0;
}
.funfacts-wrap .custom-container {
    max-width: 1149px;
}
.funfacts-wrap .funfact-items {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.hero3-area .funfact-box {
    min-width: 105px;
}
.funfact-box .title {
    font-size: 34px;
    margin: 0 0 12px;
    line-height: 1;
}
.funfact-box .title span {
    color: var(--primary);
    font-size: 12px;
    display: inline-block;
    line-height: 1;
    border-bottom: 1px solid var(--primary);
    margin-left: 6px;
}
.funfact-box .title .counter {
    font-size: 34px;
    border: none;
    color: var(--dark);
    margin-left: 0;
}
.funfact-box p {
    font-size: 12px;
    line-height: 1;
    margin: 0;
    color: var(--dark);
}
/* # Hero 4 */
.hero4-area .section-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    height: 100%;
}
.hero4-area .custom-row {
    gap: 140px;
    justify-content: space-between;
}
.hero4-area .left {
    padding-left: 66px;
    max-width: 459px;
    width: 100%;
    flex: none;
}
.hero4-area .section-heading .subtitle {
    margin-bottom: 13px;
}
.hero4-area .section-heading .title {
    font-size: 54px;
    line-height: 54.7px;
    margin-bottom: 15px;
}
.hero4-area .section-heading p {
    font-size: 14px;
    line-height: 26.6px;
    max-width: 325px;
    width: 100%;
    margin-bottom: 24px;
}
.hero4-area .right {
    /* max-width: 869px; */
    /* width: 100%; */
    position: relative;
    flex: 1;
    overflow: hidden;
}
.hero4-area .right img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
    animation: zoomInAnim 35s infinite linear;
}
.home4-page {
    background-image: url(../imgs/bg-line-shape.png);
    background-repeat: no-repeat;
    overflow-x: hidden;
}

/* # Hero 5 */
.home5-page {
    overflow-x: hidden;
}
.hero5-area .custom-container {
    position: relative;
    max-width: 1085px;
    padding: 210px 0 100px 0;
}
.hero5-area .img-box {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
}
.hero5-area .img-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: zoomInAnim 35s infinite linear;
}
.hero5-area .content {
    max-width: 571px;
    width: 100%;
    position: relative;
    z-index: 2;
}
.hero5-area .content p {
    font-size: 14px;
    line-height: 26.6px;
    max-width: 332px;
    width: 100%;
    margin-bottom: 21px;
}
.hero5-area .content .title {
    font-size: 70px;
    line-height: 70.3px;
    margin-bottom: 12px;
}
/* # hero 6 */
.hero6-area {
    padding-top: 50px;
    overflow: hidden;
}
.hero6-area .custom-row {
    align-items: center;
}
.hero6-area .img-box {
    max-width: 442px;
    width: 100%;
    flex: none;
    height: 609px;
    position: relative;
    overflow: hidden;
}
.hero6-area .img-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: zoomInAnim 35s infinite linear;
}
.hero6-area .right {
    background: var(--bg2);
    padding: 90px 112px 90px 117px;
}
.hero6-area .content p {
    font-size: 14px;
    line-height: 26.6px;
    margin-bottom: 23px;
}
.hero6-area .content .subtitle {
    margin-bottom: 10px;
}
.hero6-area .content .title {
    font-size: 54px;
    line-height: 54.7px;
    margin-bottom: 13px;
}

/* # Hero 7 */
.hero7-slider-wrap {
    min-height: 634px;
}
.hero7-slider-wrap::before {
    display: none;
}
.hero7-slider-wrap .hero-slide-content-wrap .hero-img-box {
    max-width: 728px;
}
.hero7-slider-wrap .hero-slider-2-pagination {
    left: auto;
    right: 97px;
    margin-left: 0;
    bottom: 47px;
    transform: translateX(0);
}



/* # Hero 8 */
.hero8-wrapper .custom-container {
    max-width: 864px;
    width: 100%;
}
.interactive-portfolio {
    position: relative;
    width: 100%;
    border-bottom: 1px solid rgb(18 38 32 / 10%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 34px;
    padding-top: 34px;
    transition: .5s;
    cursor: pointer;
}
.interactive-portfolio:hover {
    border-color: var(--primary);
    padding-right: 5px;
}
.interactive-portfolio:hover .title a {
    color: var(--primary);
}
.interactive-portfolio .title a {
    color: var(--dark);
    display: block;
    transition: .5s;
}
.interactive-portfolio .title {
    margin: 0;
    color: var(--dark);
    font-size: 28px;
    line-height: 1;
}
.interactive-portfolio .title a > span {
    color: var(--primary);
    font-size: 20px;
}
.interactive-portfolio .date {
    display: block;
    font-size: 11px;
    text-transform: uppercase;
    color: var(--primary);
    font-weight: 500;
}
.interactive-portfolio .box-img {
    visibility: hidden;
    /* opacity: 0; */
    position: fixed;
    transition: .5s;
    z-index: 999;
    left: calc(50% - 50px);
    width: 0;
    height: 282px;
}
.interactive-portfolio .box-img img  {
    object-fit: cover;
    width: 100%;
    height: 100%;
    transition: .5s;
}
/* Show the image on hover */
.interactive-portfolio:hover .box-img {
  visibility: visible;
  /* opacity: 1; */
  width: 232px;
}
.hero-interactive-portfolios {
    height: calc(100vh - 77px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}
.hero-interactive-portfolios .interactive-portfolio:first-child {
    padding-top: 0;
}
.hero-interactive-portfolios .interactive-portfolio:last-child {
    padding-bottom: 0;
    border-bottom: none;
}




/* # Landing Page */
.landing-page {
    overflow-x: hidden;
}
.landing-page .header-wrap {
    background: none;
    box-shadow: none;
    padding: 23px 0 0 0;
    position: absolute;
    left: 0;
    width: 100%;
    top: 26px;
}
.landing-page .header-wrap .custom-container {
    padding:  0 52px;
}
.hero-landing-area {
    background: #f6f4f2;
    padding-top: 200px;
}
.hero-landing-area .custom-row {
    gap: 100px;
    justify-content: space-between;
}
.hero-landing-area .imgs {
    display: flex;
    align-items: flex-end;
    position: relative;
}
.hero-landing-area .imgs img {
    display: block;
}
.hero-landing-area .imgs img:first-child {
    z-index: 2;
    position: absolute;
    left: -255px;
}
.hero-landing-area .custom-container {
    padding: 0 52px;
}
.hero-landing-area .content {
    max-width: 457px;
    width: 100%;
    flex: none;
    padding-bottom: 128px;
    z-index: 4;
    position: relative;
}
.hero-landing-area .content .subtitle {
    margin-bottom: 9px;
}
.hero-landing-area .content .title {
    font-size: 54px;
    line-height: 58.59px;
    margin-bottom: 0;
}
.hero-landing-area .custom-row {
    align-items: flex-end;
}
.hero-landing-area .right img {
    display: block;
    filter: drop-shadow(3.125px 3.125px 23.4375px rgba(0,0,0,0.06));
}




/*  # Demo Area */
.demo-area {
    padding-top: 145px;
}
.demo-area .custom-container {
    padding: 0 87px;
}
.demo-area .section-heading {
    text-align: center;
    margin-bottom: 92px;
}
.demo-area .section-heading .title {
    font-size: 39px;
    line-height: 53.13px;
    margin: 0;
}
.demo-area .demo-boxes {
    display: grid;
    width: 100%;
    column-gap: 82px;
    row-gap: 105px;
    grid-template-columns: 1fr 1fr 1fr;
    margin-bottom: 100px;
}
.demo-area .demo-boxes.column-2 {
    grid-template-columns: 1fr 1fr;
    column-gap: 122px;
}
.demo-area .demo-boxes.first-box .demo-box .demo-img img {
    /* height: 615px; */
}
.demo-box .demo-img a {
    display: block;
    box-shadow: 3.125px 3.125px 7.8125px 3.90625px #0000000F;
    overflow: hidden;
}
.demo-box .demo-img img {
    display: block;
    width: 100%;
    margin: 0;
    transition: .5s;
}
.demo-box .demo-img a:hover img {
    transform: scale(1.05);
}
.demo-box .content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 29px;
}
.demo-box .content h2 {
    font-family: var(--font_marcellus);
    font-size: 18px;
    line-height: 1;
    margin: 0;
}
.demo-box .content h2 a {
    color: var(--dark);
}
.demo-box .content .subtitle {
    color: var(--primary);
}
.innerpages-slider .demo-box .content {
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
}


.inner-pages-area {
    background-color: var(--bg2);
    padding: 105px 0 110px 0;
}
.inner-pages-area .custom-container {
    padding: 0 87px;
}
.inner-pages-area .section-header {
    margin-bottom: 50px;
}
.inner-pages-area .section-header .subtitle {
    margin-bottom: 13px;
}
.inner-pages-area .section-header .title {
    font-size: 39px;
    margin: 0;
    line-height: 53.13px;
    max-width: 496px;
}


/*  # Demo Feature */
.demo-features-area {
    background-color: var(--bg2);
    background-image: url(../imgs/about-9-shape.jpeg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-top: 150px;
    padding-bottom: 200px;
}
.demo-features-area .custom-container {
    padding: 0 84px;
}
.demo-features-area .section-header {
    padding-left: 4px;
    max-width: 448px;
    width: 100%;
    margin-bottom: 80px;
}
.demo-features-area .section-header .subtitle {
    line-height: 1;
    margin-bottom: 12px;
}
.demo-features-area .section-header .title {
    font-size: 39px;
    line-height: 53.13px;
    margin: 0;
}
.demo-features-area .service2-items {
    row-gap: 59px;
    column-gap: 60px;
}
.demo-features-area .service2-items .service2-box-style2 {
    max-width: 292px;
}
.demo-features-area .service2-items .service2-box-style2:nth-child(1) .title img {
    top: -3px;
}
.demo-features-area .service2-items .service2-box-style2:nth-child(3) .title img {
    top: -2px;
}



.fully-responsive-area {
    padding-bottom: 105px;
    position: relative;
    z-index: 1;
    background-color: var(--bg2);
    padding-top: 115px;
}
.fully-responsive-area::before {
    content: '';
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    background: #ffffff;
    height: 628px;
}
.fully-responsive-area .section-heading {
    text-align: center;
    margin-bottom: 30px;
}
.fully-responsive-area .section-heading .title {
    font-size: 34px;
    line-height: 41.41px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    max-width: 309px;
}
.fully-responsive-area .ipad-img img {
    display: block;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}



.demo-blog-area {
    padding-top: 59px;
}
.demo-blog-area .custom-container {
    padding: 0 52px;
}
.demo-blog-area .custom-row {
    align-items: center;
    justify-content: space-between;
}
.demo-blog-area .content {
    max-width: 417px;
    width: 100%;
    flex: none;
}
.demo-blog-area .content p {
    margin-bottom: 0;
}
.demo-blog-area .right {
    display: flex;
    gap: 87px;
}
.demo-blog-area .right img {
    margin-top: auto;
    display: block;
    max-width: 367px;
    width: 100%;
    /* border: 1px solid red; */
}





/* # Home 6 */
home6-page {
    position: relative;
}
.home6-row {
    display: flex;
}
.home6-container {
    max-width: 1440px;
    margin: auto;
}
.home6-row .left {
    max-width: 268px;
    width: 100%;
    flex: none;
    position: relative;
    padding-left: 37px;
    z-index: 99;
}
.home6-row .left::before {
    content: '';
    left: 37px;
    top: 0;
    width: 1px;
    height: 100%;
    background: rgb(18 38 32 / 50%);
    position: absolute;
}
.home6-row .right {
    flex: 1;
}
.home6-page .service3-area .custom-container {
    max-width: 100%;
    padding-right: 87px;   
}
.home6-page .service3-area .section-heading {
    max-width: 353px;
    width: 100%;
}
.home6-page .video-area .custom-container {
    padding: 0;
}
.home6-page .header-wrap {
    background: #ffffff;
    position: sticky;
    top: 0;
    z-index: 99999;
}
.home6-page .header-wrap .sidebar-icon {
    display: none;
}



/* # Service */
.service-area {
    padding: 185px 0 185px 0;
}
.service-area .section-header {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 154px;
    margin-bottom: 150px;
}
.service-area .section-header .left {
    max-width: 403px;
    width: 100%;
}
.service-area .section-header .left .title {
    margin-bottom: 0;
}
.service-area .section-header .left .subtitle {
    position: relative;
    margin-bottom: 5px;
}
.section-header .subtitle::before {
    content: '';
    height: 1.3px;
    background: var(--primary);
    position: absolute;
    opacity: 0.3;
    width: 0px;
    right: calc(100% + 36px);
    transition: all 3s;
}
section.active .section-header .subtitle::before {
    width: 370px;
}
.service-area .section-header .right {
    max-width: 528px;
    width: 100%;
}
.service-area .section-header .right p {
    margin-bottom: 0;
}
.service-area .section-header .right p:first-child {
    margin-bottom: 20px;
}
.service-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
    max-width: 1336px;
    padding: 0 15px;
    margin-left: auto;
    margin-right: auto;
}
.service-box .service-img {
    display: block;
    width: 100%;
    max-width: 319px;
    height: 406px;
    overflow: hidden;
    margin-bottom: 18px;
}
.service-box img {
    display: block;
    width: 100%;
    max-height: 406px;
    object-fit: cover;
    transition: .5s;
}
.service-box .service-img:hover img {
    transform: scale(1.04);
}
.service-box .subtitle {
    color: var(--primary);
    line-height: 1;
    margin-bottom: 10px;
}
.service-box h2 {
    font-size: 18px;
    line-height: 1;
    font-family: var(--font_marcellus);
    margin: 0;
}
.service-box h2 a {
    color: var(--dark);
    display: block;
}
/* # Service 2 */
.service2-area {
    padding: 156px 0 150px;
}
.service2-area .custom-container {
    max-width: 1085px;
}
.service2-area .section-heading {
    text-align: center;
    margin-bottom: 84px;
}
.service2-area .section-heading .title {
    font-size: 34px;
    margin-bottom: 0;
}
.service2-items {
    display: flex;
    flex-wrap: wrap;
    column-gap: 50px;
    row-gap: 68px;
    justify-content: space-between;
}
.service2-items .service2-box {
    max-width: 271px;
    width: 100%;
}
.service2-box {
    position: relative;
    padding-left: 37px;
}
.service2-box .title {
    font-size: 18px;
    line-height: 1;
    margin: 0 0 17px;
}
.service2-box .title span {
    color: var(--primary);
    position: absolute;
    left: 0;
    top: 0;
}
.service2-box .title a {
    color: var(--dark);
}
.service2-box p {
    font-size: 11px;
    line-height: 23.4px;
    margin: 0;
}
.home3-page .service2-area {
    padding: 95px 0 170px;
}

.service2-box-style2 .title img {
    position: absolute;
    max-width: 28px;
    display: block;
    left: 0;
    top: -5px;

}

/* # Service 3 */
.service3-area {
    padding: 160px 0 130px;
}
.service3-area .custom-container {
    max-width: 1085px;
}
.service3-area .custom-row {
    align-items: flex-start;
    column-gap: 131px;
}
.service3-area .section-header {
    max-width: 353px;
    width: 100%;
    flex: none;
}
.service3-area .section-header .title {
    font-size: 34px;
    line-height: 41.4px;
    margin: 0;
}
.service3-area .section-header .subtitle {
    margin: 0;
    line-height: 1;
}
.service3-items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 125px;
    row-gap: 24px;
}
.service3-box img {
    display: block;
    margin-bottom: 13px;
}
.service3-box .title {
    font-size: 18px;
    line-height: 1;
    margin: 0 0 16px;
}
.service3-box .title a {
    color: var(--dark);
}
.service3-box p {
    font-size: 11px;
    line-height: 23.4px;
    margin: 0;
}

/* # Service 5 */
.service5-area {
    padding: 156px 0;
    overflow: hidden;
}
.service5-area .custom-container {
    max-width: 1085px;
}
.service5-area .section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 53px;
}
.service5-area .section-header .title {
    margin-bottom: 0;
}
.service5-area .section-header .left {
    max-width: 353px;
    width: 100%;
    flex: none;
}
.service5-area .section-header p {
    max-width: 533px;
    width: 100%;
    font-size: 14px;
    line-height: 26.6px;
    margin: 0;
}
.service5-area .custom-row {
    gap: 19px;
}
.service5-area .img-box .box-anim {
    overflow: hidden;
    position: relative;
}
.service5-area .img-box img {
    display: block;
    width: 100%;
    height: 100%;
    transition: .5s;
}
.service5-area .img-box img:hover {
    transform: scale(1.1);
}
/* # Service 6 */
.service6-area {
    position: relative;
}
.service6-area .custom-container {
    max-width: 100%;
    position: relative;
    overflow: hidden;
}
.service6-box .content {
    z-index: 2;
    position: relative;
    
}
.service6-box .content .title {
    font-size: 24px;
    line-height: 1;
    color: var(--heading);
    margin-bottom: 10px;
}
.service6-box .content .title a {
    color: var(--heading);
}
.service6-box .content span {
    display: block;
    text-transform: uppercase;
    color: var(--heading);
    font-size: 10px;
    letter-spacing: 3.91px;
}
.service6-lists {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
}
.service6-lists .service6-box {
    flex: 1;
    border-right: 0.5px solid #ffffff;
}
.service6-box > a {
    padding: 0 20px 25px 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    min-height: 360px;
    transition: .5s;
}
.service6-box:hover > a {
    padding-bottom: 35px;
}
.service6-box img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    transition: .5s;
}
.service6-box.active img {
    opacity: 1;
    visibility: visible;
}
/* # Service 7 */
.service7-area .custom-container {
    max-width: 100%;
}
.contact-and-footer-area .left,
.pricing-table2-area .left,
.service8-area .left,
.service7-area .left {
    display: block;
    position: relative;
    height: 100vh;
    z-index: 1;
    max-width: 645px;
    flex: none;
    width: 100%;
}
.contact-and-footer-area .left img,
.pricing-table2-area .left img,
.service8-area .left img,
.service7-area .left img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.contact-and-footer-area .right,
.service8-area .right,
.service7-area .right {
    background-image: url(../imgs/about-9-shape.jpeg);
    background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 0 156px;
}
.service7-area .content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.service7-area .content .section-heading {
    text-align: center;
    margin-bottom: 85px;
}
.service7-area .content .section-heading .title {
    margin-bottom: 0;
}
.contact-and-footer-area .left,
.pricing-table-area .left,
.service8-area .left,
.service7-area .left {
    overflow: hidden;
    /* background-image: url(../imgs/about-9-shape.jpeg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; */
}
.contact-and-footer-area .left img,
.pricing-table-area .left img,
.service8-area .left img,
.service7-area .left img {
    animation: zoomInAnim 35s infinite linear;
}

.service7-area .content .service2-items {
    grid-template-columns: 1fr 1fr;
}

/* # Service 8 */
.service8-area .custom-row {
    justify-content: space-between;
}
.service8-area .content-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
}
.service8-area .content-wrap .content .subtitle {
    line-height: 1;
    margin-bottom: 14px;
}
.service8-area .content-wrap .content .title {
    max-width: 331px;
    width: 100%;
    margin-bottom: 21px;
}
.service8-area .right {
    flex: 1;
}
.service8-area .content-wrap .content-imgs {
    display: flex;
    align-items: flex-start;
    gap: 19px;
}
.service8-area .content-wrap .content-imgs .box-anim {
    overflow: hidden;
}
.service8-area .content-wrap .content-imgs .box-anim img:hover {
    transform: scale(1.05);
}
.service8-area .content-wrap .content-imgs img {
    display: block;
    transition: .5s;
}

.portfolio-page .service-area {
    padding-bottom: 155px;
    padding-top: 164px;
}
.portfolio-page .service-area .service-items {
    row-gap: 75px;
}

.work-query-page .service-area {
    padding-bottom: 150px;
    padding-top: 150px;
}
.work-query-page .service-area .section-header {
    margin-bottom: 0;
}

/* # Service Single */

.service-detail-wrap {
/*    padding-bottom: 150px;*/
    padding-top: 156px;
    overflow-x: hidden;
}
.service-detail-wrap .custom-container {
    max-width: 1374px;
}
.service-detail-wrap .full-img {
    display: block;
    width: 100%;
    margin-bottom: 20px;
}
.service-detail-wrap .imgs {
    display: flex;
    gap: 19px;
}
.service-detail-wrap .imgs .box-anim {
    /* height: 100%; */
    overflow: hidden;
}
.service-detail-wrap .imgs .box-anim img {
    transition: .5s;
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.service-detail-wrap .imgs .box-anim img:hover {
    transform: scale(1.1);
}
.service-detail-wrap .imgs .box-anim:first-child{
    flex: 1;
    /* height: auto; */
}
.service-detail-wrap .imgs .box-anim:last-child {
    max-width: 561px;
    width: 100%;
    flex: none;
}
.service-detail-wrap .imgs img {
    display: block;
}

/* Keep the Careers photography at the original section height regardless of source ratio. */
.elementor-element-hkaw002 .service-detail-wrap .imgs .box-anim {
    height: 620px;
}

.elementor-element-hkaw002 .service-detail-wrap .imgs .box-anim img {
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 1199px) {
    .elementor-element-hkaw002 .service-detail-wrap .imgs .box-anim {
        height: 460px;
    }
}

@media (max-width: 767px) {
    .elementor-element-hkaw002 .service-detail-wrap .imgs .box-anim {
        height: 300px;
    }
}

.service-detail-wrap .service-detail-content {
    /*display: flex;
    align-items: flex-start;
    column-gap: 135px;*/
/*    max-width: 1178px;*/
    margin-top: 75px;
}
/*.service-detail-wrap .service-detail-content .content {
    flex: 1;
}*/
.service-detail-wrap .service-detail-content .content .subtitle {
    color: var(--primary);
    display: block;
    margin-bottom: 21px;
}
.service-detail-wrap .service-detail-content .content .title {
    font-size: 28px;
    line-height: 1;
    margin-bottom: 16px;
}
.service-detail-wrap .service-detail-content .content p:last-child,
.service-detail-wrap .bottom-content p:last-child {
    margin-bottom: 0;
}
.service-detail-wrap .service-detail-content .content p,
.service-detail-wrap .bottom-content p  {
    font-size: 14px;
    line-height: 26.6px;
}
.service-detail-wrap .service-detail-content .detail-list {
    display: flex;
    gap: 70px;
}
.service-detail-wrap .service-detail-content .detail-list li {
    margin-bottom: 39px;
}
.service-detail-wrap .service-detail-content .detail-list li:last-child {
    margin-bottom: 0;
}
.service-detail-wrap .service-detail-content .detail-list li .subtitle {
    color: var(--primary);
    line-height: 1;
    font-size: 9px;
    margin-bottom: 8px;
}
.service-detail-wrap .service-detail-content .detail-list li .title {
    font-size: 18px;
    line-height: 1;
    margin-bottom: 0;
}
.service-detail-wrap .bottom-content{
    display: flex;
    margin-top: 45px;
    gap: 40px;
}
.service-detail-wrap .bottom-content > div {
    flex: 1 1 0;
    min-width: 0;
}
.service-detail-wrap .bottom-content h3 {
    margin: 0 0 18px;
    color: var(--dark);
    font-size: 20px;
    font-weight: 500;
}
.service-detail-wrap .bottom-content .service-includes {
    margin: 0;
    padding: 0;
    list-style: none;
}
.service-detail-wrap .bottom-content .service-includes li {
    position: relative;
    padding: 0 0 12px 26px;
    color: rgb(18 38 32 / 82%);
    font-size: 15px;
    line-height: 1.6;
}
.service-detail-wrap .bottom-content .service-includes li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--primary);
}
.service-detail-wrap .bottom-content .service-close {
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid rgb(18 38 32 / 14%);
    font-style: italic;
}
/* The second column has no heading; keep its first bullet level with the first column's. */
.service-detail-wrap .bottom-content .right-content > .service-includes {
    margin-top: 38px;
}
@media (max-width: 767px) {
    .service-detail-wrap .bottom-content {
        flex-direction: column;
        gap: 0;
    }
    .service-detail-wrap .bottom-content .right-content > .service-includes {
        margin-top: 0;
    }
}
.service-detail-wrap .custom-container .section-header{
    text-align: center;
    margin: 45px auto 40px auto;
}


/* # Mentor */
.mentor-area {
    padding: 170px 0;
    overflow: hidden;
}
.mentor-area .custom-container {
    max-width: 100%;
}
.mentor-area .section-heading {
    margin-bottom: 70px;
}
.mentor-area .section-heading .title {
    font-size: 34px;
    margin: 0;
}
.mentor-lists {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 77px;
}
.mentor-box {
    display: block;
}
.mentor-box .mentor-img {
    position: relative;
    margin-bottom: 26px;
    overflow: hidden;
}
.mentor-box .mentor-img img {
    display: block;
    width: 100%;
    transition: .5s;
    object-fit: cover;
}
.mentor-box .mentor-img img:hover {
    transform: scale(1.05);
}
.mentor-box h1 {
    font-size: 22px;
    line-height: 1;
    margin-bottom: 7px;
}
.mentor-box h1 a {
    color: var(--dark);
}
.mentor-box .subtitle {
    line-height: 1;
    color: var(--primary);
    margin-bottom: 16px;
}
.mentor-box p {
    line-height: 23.4px;
    font-size: 11px;
    margin: 0;
}



/* # Client */
.client-area {
    background-color: var(--bg1);
    background-image: url(../imgs/bg-shape-2.png);
    background-size: cover;
    background-position: bottom;
    background-repeat: no-repeat;
    position: relative;
    z-index: 1;
    padding: 140px 0;
    overflow: hidden;
}
.client-area .border-gradient-shape {
    width: calc(100% - 38px);
    height: calc(100% - 38px);
}
.client-area .border-gradient-shape::after {
    background: linear-gradient(0deg, transparent 10%, var(--primary));
}
.client-area .custom-container {
    max-width: 1340px;
}
.client-area .custom-row {
    display: flex;
    align-items: center;
    gap: 114px;
}
.client-area .left {
    width: 100%;
    max-width: 397px;
    flex: none;
}
.client-area .section-heading {
    color: var(--heading);
}
.client-area .section-heading .subtitle {
    margin-bottom: 10px;
    line-height: 1;
}
.client-area .section-heading .title {
    font-size: 34px;
    line-height: 41.4px;
    color: var(--heading);
    margin: 0 0 22px;
}
.client-area .section-heading p {
    font-size: 14px;
    line-height: 26.6px;
    opacity: 0.7;
    margin: 0 0 30px;
}
.client-area .section-heading .theme-btn {
    color: var(--heading);
}
.client-area .section-heading .theme-btn::before,
.client-area .section-heading .theme-btn::after ,
.client-area .section-heading .theme-btn span::after ,
.client-area .section-heading .theme-btn span::before {
    background: #ffffff;
}
.client-area .section-heading .theme-btn span {
    border-color: var(--heading);
}
.client-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 76px;
    row-gap: 50px;
}
.client-count-box .title {
    color: var(--primary);
    line-height: 1;
    margin: 0 0 18px;
}
.client-count-box p {
    color: var(--heading);
    opacity: 0.7;
    line-height: 23.4px;
    font-size: 11px;
    margin: 0;
}



/* # Portfolio */
.portfolio-area {
    background: var(--bg2);
    overflow: hidden;
    padding: 60px 0 108px;
}
.section-heading .subtitle {
    margin-bottom: 8px;
}
.portfolio-area .section-heading {
    text-align: center;
    margin-bottom: 55px;
}
.portfolio-area .section-heading .title {
    font-size: 34px;
    line-height: 41.4px;
    margin: 0;
}
.portfolio-area .custom-container {
    max-width: 956px;
}
.portfolio-box {
    overflow: hidden;
}
.portfolio-box img {
    display: block;
    width: 100%;
    display: block;
    transition: .5s;
}
.portfolio-box img:hover {
    transform: scale(1.05);
}
.gallery2-slider .swiper-wrapper,
.portfolio-slider .swiper-wrapper {
    transition-timing-function : linear;
}
/* # Gallery 2 */
.portfolio2-area {
    padding-bottom: 0;
}
.portfolio2-area .custom-container {
    max-width: 900px;
}
.portfolio2-area .portfolio-box {
    overflow: hidden;
}
.portfolio2-area .portfolio-box img {
    transition: .5s;
}
.portfolio2-area .portfolio-box img:hover {
    transform: scale(1.05);
}
/* # Portfolio 3 */
.portfolio3-area .custom-container {
    max-width: 100%;
}
.portfolio3-area .portfolio-item {
    flex: none;
    position: relative;
    z-index: 1;
    height: 100vh;
    max-width: 489px;
    width: 100%;
    overflow: hidden;
}
.portfolio3-area .portfolio-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.portfolio3-area .portfolio-item .quote-now-btn {
    left: -100%;
    bottom: 78px;
    right: auto;
    flex-direction: column;
    align-items: flex-start;
    transition: .5s;
    opacity: 0;
    visibility: hidden;
}
.portfolio3-area .portfolio-item:hover .quote-now-btn {
    opacity: 1;
    visibility: visible;
    left: 0;
}
.portfolio3-area .portfolio-item .quote-now-btn .subtitle {
    color: var(--primary);
}
.portfolio3-area .portfolio-item .quote-now-btn .title {
    color: var(--heading);
}
.portfolio3-area .portfolio-item .quote-now-btn:hover {
    padding-right: 90px;
    gap: 4px;
}

/* # Portfolio detail */
.portfolio-detail-wrap {
    padding-bottom: 150px;
    padding-top: 156px;
    overflow-x: hidden;
}
.portfolio-detail-wrap .custom-container {
    max-width: 1374px;
}
.portfolio-detail-wrap .full-img {
    display: block;
    width: 100%;
    margin-bottom: 20px;
}
.portfolio-detail-wrap .imgs {
    display: flex;
    gap: 19px;
}
.portfolio-detail-wrap .imgs .box-anim {
    /* height: 100%; */
    overflow: hidden;
}
.portfolio-detail-wrap .imgs .box-anim img {
    transition: .5s;
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.portfolio-detail-wrap .imgs .box-anim img:hover {
    transform: scale(1.1);
}
.portfolio-detail-wrap .imgs .box-anim:first-child{
    flex: 1;
    /* height: auto; */
}
.portfolio-detail-wrap .imgs .box-anim:last-child {
    max-width: 561px;
    width: 100%;
    flex: none;
}
.portfolio-detail-wrap .imgs img {
    display: block;
}
.portfolio-detail-wrap .portfolio-detail-content {
    display: flex;
    align-items: flex-start;
    column-gap: 135px;
    max-width: 1178px;
    margin-top: 75px;
}
.portfolio-detail-wrap .portfolio-detail-content .content {
    flex: 1;
}
.portfolio-detail-wrap .portfolio-detail-content .content .subtitle {
    color: var(--primary);
    display: block;
    margin-bottom: 21px;
}
.portfolio-detail-wrap .portfolio-detail-content .content .title {
    font-size: 28px;
    line-height: 1;
    margin-bottom: 16px;
}
.portfolio-detail-wrap .portfolio-detail-content .content p:last-child {
    margin-bottom: 0;
}
.portfolio-detail-wrap .portfolio-detail-content .content p {
    font-size: 14px;
    line-height: 26.6px;
}
.portfolio-detail-wrap .portfolio-detail-content .detail-list li {
    margin-bottom: 39px;
}
.portfolio-detail-wrap .portfolio-detail-content .detail-list li:last-child {
    margin-bottom: 0;
}
.portfolio-detail-wrap .portfolio-detail-content .detail-list li .subtitle {
    color: var(--primary);
    line-height: 1;
    font-size: 9px;
    margin-bottom: 8px;
}
.portfolio-detail-wrap .portfolio-detail-content .detail-list li .title {
    font-size: 18px;
    line-height: 1;
    margin-bottom: 0;
}
.portfolio-single-2-page .portfolio-detail-wrap .imgs .box-anim:first-child {
    max-width: 561px;
    width: 100%;
    flex: none;
}
.portfolio-single-2-page .portfolio-detail-wrap .imgs .box-anim:last-child {
    width: 100%;
    flex: 1;
    max-width: 100%;
}

.portfolio-single-3-page .portfolio-detail-wrap .box-anim {
    height: 100%;
    overflow: hidden;
}
.portfolio-single-3-page .portfolio-detail-wrap .box-anim img {
    transition: .5s;
}
.portfolio-single-3-page .portfolio-detail-wrap .box-anim img:hover {
    transform: scale(1.1);
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs {
    margin-bottom: 20px;
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs .right {
    flex: 1;
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs .left img {
    display: block;
    width: 100%;
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs .left {
    max-width: 561px;
    flex: none;
    width: 100%;
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs .right .two-imgs {
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: 100%;
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs .right .two-imgs .box-anim {
    height: 50%;
    flex: 1;
    width: 100%;
    max-width: 100%;
}
.portfolio-single-3-page .portfolio-detail-wrap .imgs .right .two-imgs img {
    height: 100%;
    display: block;
    object-fit: cover;
    width: 100%;
    max-width: 100%;
}
.portfolio-single-3-page .portfolio-detail-wrap .full-img {
    margin-bottom: 0;
}




/* # Video */
.video-area {
    overflow: hidden;
}
.video-area .custom-container {
    max-width: 1336px;
    padding: 0 15px;
}
.video-area .video-content-wrap {
    position: relative;
    overflow: hidden;
}
.video-area .video-content-wrap > img {
    transition: .5s;
    width: 100%;
    height: 100%;
    animation: zoomInAnim 35s infinite linear;
}
.video-area .video-content-wrap .video-play-btn {
    color: var(--heading);
    height: 206px;
    width: 206px;
    z-index: 1;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.video-area .video-content-wrap .video-play-btn .video-play-btn-inner {
    align-items: center;
    display: flex;
    justify-content: center;
}
.video-area .video-content-wrap .video-play-btn svg .qodef--top-half {
    stroke-dasharray: 320;
    stroke-dashoffset: 320;
    animation: playBtnOut 1s forwards; /* Added forwards to keep the final state */
}
.video-area .video-content-wrap .video-play-btn:hover svg .qodef--top-half {
    animation: playBtn 1s forwards; /* Added forwards to keep the final state */

}
.video-area .video-bg {
    position: relative;
    width: 100%;
    height: 660px;
}
.video-area .video-bg iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@keyframes playBtn {
    from {
        stroke-dasharray: 320px;
    }
    to {
        stroke-dasharray: 635px;
    }
}
@keyframes playBtnOut {
    from {
        stroke-dasharray: 635px;
    }
    to {
        stroke-dasharray: 320px;
    }
}
.video-area .video-content-wrap .video-play-btn svg .qodef-m-circle-half,
.video-area .video-content-wrap .video-play-btn svg .qodef-m-arrow,
.video-area .video-content-wrap .video-play-btn svg circle {
    fill: none;
    stroke: #ffffff;
}
.video-area .video-content-wrap > img {
    display: block;
}
.video-area .video-content-wrap .content {
    background-image: url(../imgs/bg.jpeg);
    background-size: cover;
    background-position: left;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    bottom: 0;
    max-width: 422px;
    width: 100%;
    padding: 35px 59px;
    z-index: 1;
}
.video-area .video-content-wrap .content h2 {
    color: var(--heading);
    font-family: var(--font_marcellus);
    font-size: 24px;
    line-height: 29.7px;
    margin-bottom: 21px;
}
.video-area .video-content-wrap .content h2 a {
    color: var(--heading);
}
.video-area .video-content-wrap .content > a {
    display: inline-flex;
    align-items: center;
    color: var(--primary);
    font-size: 9px;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 600;
    gap: 3px;
    transition: .5s;
}
.video-area .video-content-wrap .content > a:hover {
    gap: 6px;
}
.video-area .video-content-wrap .content > a span {
    display: block;
    height: 12px;
}
.video-area .video-content-wrap .content > a span::after,
.video-area .video-content-wrap .content > a span::before {
    background: var(--primary);
}
.video-area .video-content-wrap .content .border-shape {
    position: absolute;
    top: 15px;
    right: 15px;
    height: calc(100% - 30px);
    z-index: -1;
}

/* # Video 2 */
.video2-area {
    position: relative;
    z-index: 1;
    padding-top: 94px;
    overflow: hidden;
}
.video2-area::before {
    content: '';
    position: absolute;
    background-color: var(--bg1);
    background-image: url(../imgs/footer-bg.png);
    background-size: cover;
    background-repeat: no-repeat;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100% - 137px);
    z-index: -1;
}
.video2-area .custom-container {
    max-width: 1085px;
}
.video2-area .section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 53px;
}
.video2-area .section-heading .left {
    max-width: 358px;
    width: 100%;
}
.video2-area .section-heading .subtitle {
    color: var(--heading);
}
.video2-area .section-heading .title {
    font-size: 34px;
    line-height: 41.4px;
    color: var(--heading);
    margin: 0;
}
.video2-area .section-heading p {
    line-height: 26.6px;
    font-size: 14px;
    margin: 0;
    color: var(--heading);
    opacity: 0.7;
    max-width: 364px;
    width: 100%;
}
.video2-area .custom-container > img {
    display: block;
    width: 100%;
}
.video2-area .video-bg {
    max-width: 1085px;
    width: 100%;
    height: 487px;
    overflow: hidden;
}
.video2-area .video-bg iframe {
    height: 100%;
    max-width: 1085px;
    width: 100%;
    height: 612px;
    object-fit: cover;
}
.border-gradient-shape {
    position: absolute;
    right: 19px;
    top: 19px;
    height: calc(100% - 156px);
    width: calc(100% - 38px);
    z-index: -1;
}
.border-gradient-shape::after,
.border-gradient-shape::before {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background: linear-gradient(90deg, transparent 20%, var(--primary));
    right: 0;
    top: 0;
    pointer-events: none;
}
.border-gradient-shape::after {
    width: 1px;
    height: 100%;
    background: linear-gradient(0deg, transparent 20%, var(--primary));

}



/* # Testimonial */
.testimonial-area {
    padding: 164px 0;
}
.testimonial-area .custom-container {
    max-width: 1123px;
    overflow: hidden;
    position: relative;
}
.testimonial-area .testimonial-button-next,
.testimonial-area .testimonial-button-prev {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -20px;
    height: 40px;
    width: 20px;
    cursor: pointer;
    z-index: 99;
    background: #ffffff;
}
.testimonial-area .swiper-button-disabled {
    opacity: 0.5;
    cursor: no-drop;
}
.testimonial-area .testimonial-button-next::before,
.testimonial-area .testimonial-button-next::after,
.testimonial-area .testimonial-button-prev::before,
.testimonial-area .testimonial-button-prev::after {
    content: '';
    width: 1px;
    height: 50%;
    background: var(--primary);
    position: absolute;
    top: 0;
    left: 0;
    transform-origin: bottom;
    transform: rotate(27deg);
}
.testimonial-area .testimonial-button-next::after,
.testimonial-area .testimonial-button-prev::after {
    transform-origin: top;
    top: auto;
    bottom: 0;
    transform: rotate(-27deg);
}
.testimonial-area .testimonial-button-prev {
    left: 5px;
    transition: .5s;
}
.testimonial-area .testimonial-button-prev:hover {
    left: 0;
}
.testimonial-area .testimonial-button-next {
    left: auto;
    right: 5px;
    transition: .5s;
}
.testimonial-area .testimonial-button-next:hover {
    right: 0;
}
.testimonial-area .testimonial-button-next::before,
.testimonial-area .testimonial-button-next::after {
    left: auto;
    right: 0;
    transform: rotate(-27deg);
}
.testimonial-area .testimonial-button-next::after {
    transform: rotate(27deg);
}
.testimonial-area .testimonial-content {
    text-align: center;
    max-width: 842px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.testimonial-area .testimonial-content img {
    width: 78px;
    height: 78px;
    display: block;
    margin-bottom: 22px;
}
.testimonial-area .testimonial-content h4 {
    color: var(--primary);
    font-size: 10px;
    line-height: 1;
    margin-bottom: 20px;
}
.testimonial-area .testimonial-content p {
    font-family: var(--font_marcellus);
    font-size: 20px;
    line-height: 31.3px;
    margin-bottom: 30px;
}
.testimonial-area .testimonial-content .line-shape {
    height: 1px;
    width: 156px;
    background: var(--primary);
    opacity: 0.5;
}




/* # About */
.about-area {
    overflow: hidden;
}
.about-area .custom-container {
    max-width: 1085px;
}
.about-area .custom-row {
    display: flex;
    justify-content: center;
    gap: 282px;
}
.about-area .content {
    max-width: 380px;
    width: 100%;
    padding-top: 207px;
}
.section-header-default-content .subtitle {
    margin-bottom: 15px;
}
.section-header-default-content .title {
    font-size: 34px;
    line-height: 41.4px;
    margin-bottom: 10px;
}
.section-header-default-content .title span {
    position: relative;
}
.section-header-default-content .title span::before {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 5px;
    background: var(--dark);
}
.section-header-default-content ul {
    margin-bottom: 25px;
}
.section-header-default-content ul li {
    font-size: 14px;
    display: block;
    line-height: 31.3px;
    position: relative;
    padding-left: 13px;
}
.section-header-default-content ul li::before {
    content: '';
    width: 2px;
    height: 2px;
    border-radius: 50%;
    background: var(--dark);
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -1px;
}
.about-area .right {
    position: relative;
    z-index: 1;
    padding-top: 133px;
}
.about-area .right::before {
    content: '';
    position: absolute;
    background-color: var(--bg1);
    background-image: url(../imgs/bg-shape-2.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    left: -110px;
    height: calc(100% - 79px);
    width: 1500px;
    z-index: -1;
    top: 0;
}
.about-area .img-box {
    position: relative;
    width: 423px;
    height: 635px;
}
.about-area .img-box .img-box-inner {
    overflow: hidden;
    width: 100%;
    height: 100%;
}
.about-area .img-box:hover img:first-child {
    transform: scale(1.05);
}
.gradient-border {
    background: linear-gradient(180deg, #D3B184, rgb(211 177 132 / 0%));
    position: absolute;
    left: 20px;
    top: -20px;
    width: 100%;
    height: 100%;
}
.gradient-border::before {
    content: '';
    width: 100%;
}
.about-area .img-box img:not(.border-shape) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    transition: .5s;
}
.about-area .img-box .border-shape {
    position: absolute;
    left: 20px;
    top: -20px;
    z-index: -1;
}
/* # About 2 */
.about2-area {
    padding: 155px 0;
}
.about2-area .custom-container {
    max-width: 1085px;
}
.about2-area .custom-row {
    display: flex;
    gap: 129px;
    justify-content: space-between;
}
.about2-area .left-content > img {
    display: block;
    width: 100%;
}
.about2-area .left-content .section-header {
    max-width: 353px;
    width: 100%;
    margin-bottom: 40px;
}
.about2-area .left-content .title {
    font-size: 34px;
    line-height: 41.4px;
}
.about2-area .right-content p {
    font-size: 14px;
    line-height: 26.6px;
    margin-bottom: 25px;
}
.about2-area .right-content {
    max-width: 423px;
    width: 100%;
}
.about2-area .right-content img {
    display: block;
    width: 100%;
    margin-bottom: 25px;
}

/* # About 3 */
.about3-area .custom-container {
    max-width: 1306px;
    padding: 0 66px;
}
.about3-area .border-gradient-shape {
    height: calc(100% - 38px);
}
.about3-area .custom-row {
    display: flex;
}
.about3-area .left {
    width: 50%;
    position: relative;
    overflow: hidden;
}
.about3-area .left img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
}
.about3-area .left img:hover {
    transform: scale(1.1);
}
.about3-area .right {
    width: 50%;
    position: relative;
    padding-left: 110px;
    background-color: var(--bg1);
    background-image: url(../imgs/footer-bg.png);
    background-size: cover;
    background-position: right;
    background-repeat: no-repeat;
    color: var(--heading);
    z-index: 1;
}
.about3-area .about-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    align-items: flex-start;
    max-width: 387px;
    width: 100%;
}
.about3-area .about-content .subtitle {
    margin-bottom: 17px;
}
.about3-area .about-content .title {
    color: var(--heading);
    font-size: 34px;
    margin: 0 0 22px;
    line-height: 41.4px;
}
.about3-area .about-content p {
    font-size: 14px;
    line-height: 26.6px;
    margin: 0 0 40px;
    font-weight: 300;
}
.about3-area .about-content .theme-btn {
    color: var(--heading);
}
.about3-area .about-content .theme-btn span::after,
.about3-area .about-content .theme-btn span::before,
.about3-area .about-content .theme-btn::before,
.about3-area .about-content .theme-btn::after {
    background: #ffffff;
}
.about3-area .about-content .theme-btn span {
    border-color: var(--heading);
}
/* # About 4 */
.about4-area {
    padding: 188px 0 156px 0;
}
.about4-area .custom-container {
    max-width: 1085px;
}
.about4-area .custom-row {
    align-items: flex-start;
    justify-content: space-between;
}
.about4-area .content {
    max-width: 378px;
    width: 100%;
    flex: none;
}
.about4-area .content p {
    line-height: 26.6px;
    font-size: 14px;
    margin: 0 0 32px;
}
.about4-area .content .subtitle {
    margin-bottom: 17px;
}
.about4-area .content .title {
    font-size: 34px;
    margin-bottom: 20px;
}
.about4-area .imgs {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}
.about4-area .imgs img {
    display: block;
    transition: .5s;
}
.about4-area .imgs .box-anim {
    overflow: hidden;
}
.about4-area .imgs .box-anim img:hover {
    transform: scale(1.05);
}

/* # About 5 */
.about5-area {
    padding-top: 156px;
    overflow: hidden;
}
.about5-area .custom-container {
    max-width: 1085px;
}
.about5-area .custom-row {
    display: flex;
    align-items: center;
    gap: 175px;
}
.about5-area .section-header .title {
    font-size: 34px;
    line-height: 41.4px;
    margin-bottom: 20px;
}
.about5-area .section-header p {
    margin-bottom: 31px;
}
.about5-area .right {
    max-width: 533px;
    width: 100%;
    flex: none;
}
.about5-area .right img {
    display: block;
}

/* # About 6 */
.about6-area {
    padding: 188px 0;
    overflow: hidden;
}
.about6-area.pb-0 {
    padding-bottom: 0;
}
.about6-area .custom-container {
    max-width: 1045px;
}
.about6-area .custom-row {
    align-items: center;
    justify-content: space-between;
}
.about6-area .left {
    position: relative;
}
.about6-area .left .box-anim {
    overflow: hidden;
}
.about6-area .left .box-anim img:hover {
    transform: scale(1.05);
}
.about6-area .left img {
    display: block;
    transition: .5s;
}
.about6-area .left .quote-now-btn {
    font-size: 24px;
    line-height: 29.7px;
    max-width: 263px;
    width: 200%;
    padding: 35px 56px;
    right: -61px;
    bottom: 47px;
}
.about6-area .content .subtitle {
    margin-bottom: 8px;
}
.about6-area .content .title {
    font-size: 34px;
    line-height: 41.4px;
    margin-bottom: 23px;
}
.about6-area .right {
    max-width: 393px;
    width: 100%;
    flex: none;
}
.about6-area .content p {
    font-size: 14px;
    line-height: 26.6px;
    margin-bottom: 30px;
}
.home7-page .about6-area .content .subtitle {
    margin-bottom: 17px;
}
.team-page .about6-area .left .quote-now-btn,
.home7-page .about6-area .left .quote-now-btn {
    left: -61px;
    bottom: 47px;
    right: auto;
    flex-direction: column;
    padding-left: 46px;
    padding-right: 46px;
}
.home7-page .about6-area .left .quote-now-btn:hover {
    gap: 4px;
}
.team-page .about6-area .left .quote-now-btn .subtitle,
.home7-page .about6-area .left .quote-now-btn .subtitle {
    color: var(--primary);
}
.team-page .about6-area .left .quote-now-btn .border-gradient-shape::before,
.home7-page .about6-area .left .quote-now-btn .border-gradient-shape::before {
    background: linear-gradient(-90deg, transparent 20%, var(--primary));
}
.team-page .about6-area .left .quote-now-btn .border-gradient-shape::after,
.home7-page .about6-area .left .quote-now-btn .border-gradient-shape::after {
    right: auto;
    left: 0;
}
/* # About 7 */
.about7-area {
    padding: 188px 0;
}
.about7-area .custom-container {
    max-width: 1108px;
}
.about7-area .custom-row {
    justify-content: space-between;
    align-items: flex-end;
    gap: 129px;
}
.about7-area .section-header {
    max-width: 388px;
    width: 100%;
    margin-bottom: 53px;
}
.about7-area .section-header .title {
    font-size: 34px;
    line-height: 41.4px;
    margin-bottom: 0;
}
.about7-area .box-anim {
    margin-left: auto;
    overflow: hidden;
}
.about7-area .left .box-anim {
    max-width: 312px;
    width: 100%;
}
.about7-area .box-anim img {
    display: block;
    object-fit: cover;
    width: 100%;
    transition: .5s;
}
.about7-area .box-anim img:hover {
    transform: scale(1.05);
}
.about7-area .left {
    flex: 1;
}
.about7-area .right {
    max-width: 423px;
    width: 100%;
    flex: none;
}
.about7-area .right .box-anim {
    margin-bottom: 59px;
}
.about7-area .right-main-img {
    display: block;
    width: 100%;
}
.about7-area .right p {
    font-size: 14px;
    line-height: 26.6px;
    margin: 0;
}

/* # About 8 */
.about8-area {
    padding-bottom: 93px;
}
.about8-area {
    overflow: hidden;
}
.about8-area .custom-container {
    max-width: 1154px;
}
.about8-area .custom-row {
    align-items: center;
    gap: 104px;
}
.about8-area .img-box {
    position: relative;
    max-width: 646px;
    width: 100%;
    flex: none;
}
.about8-area .img-box .main-img {
    display: block;
    transition: .5s;
}
.about8-area .img-box .shape-img {
    position: absolute;
    z-index: -1;
    bottom: -93px;
    left: -109px;
}
.about8-area .img-box .img-box-inner {
    overflow: hidden;
}
.about8-area .img-box .img-box-inner .main-img:hover {
    transform: scale(1.1);
}
.about8-area .content .subtitle {
    line-height: 1;
    margin-bottom: 9px;
}
.about8-area .content .title {
    font-size: 34px;
    margin-bottom: 19px;
}
.about8-area .content p {
    font-size: 14px;
    line-height: 26.6px;
    color: var(--dark);
    opacity: 0.7;
    margin-bottom: 23px;
}

/* # Home 10 */
.home10-page {
    /* max-width: 100%; */
    max-width: 100%;
    width: 100%;
    padding-left: 112px;
}
.sticky2-menu {
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    background: var(--bg2);
    z-index: 99;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 46px 30px 67px 30px;
}
.sticky2-menu .logo img,
.sticky2-menu .logo {
    display: block;
}
.sticky2-menu .sidebar-icon {
    max-width: 52px;
}
.sticky2-menu .sidebar-icon a {
    display: block;
}
.sticky2-menu .sidebar-icon a svg {
    max-width: 100%;
}
.hero10-area {
    width: 100%;
}
.hero10-area .custom-container {
    max-width: 1206px;
    margin-left: auto;
    margin-right: 0;
    height: 100%;
}
.hero10-area .custom-row {
    align-items: center;
    justify-content: space-between;
}
.hero10-area .content .subtitle {
    margin-bottom: 11px;
}
.hero10-area .content .title {
    font-size: 53px;
    line-height: 53.8px;
    margin: 0 0 14px;
}
.hero10-area .content p {
    font-size: 13px;
    line-height: 26.1px;
    margin: 0 0 22px;
    max-width: 301px;
}
.hero10-area .right {
    height: 100vh;
    flex: none;
    max-width: 627px;
    width: 100%;
    position: relative;
    overflow: hidden;
}
.hero10-area .right img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: zoomInAnim 35s infinite linear;
}
.horizontal-section-sticky{
    /* overflow: hidden;
    position: sticky;
    top: 0;
    height: 100vh; */
}
/*
.horizontal-section-scroll,  */
.horizontal-section-scroll > .elementor{
    display: flex;
    /* height: 100vh; */
    /* width: 100%; */
    overflow-x: auto;
    flex-wrap: nowrap;
    width: 100%;
}
.hero10-area .right,
.hero10-area .custom-container .custom-row {
    height: 100%;
}

.horizontal-section-scroll::-webkit-scrollbar {
    height: 0;
    width: 0;
}
.horizontal-section-scroll > .elementor > .elementor-element > .elementor-element {
	max-width: none !important;
}
/* .horizontal-section-scroll section, */
.horizontal-section-scroll > .elementor > .elementor-element {
    flex: none;
    /* height: 100%; */
    /* object-position: center; */
    display: block;
    position: relative;
    /* width: 100vw; */
    /* min-width: 100vw;
    flex: 0 0 auto;
    transition: transform 0.5s ease; */
	max-width: none !important;
	transition: none;
}
.horizontal-section-scroll .hero10-area {
    width: 100vw;
    width: 1361px;
	max-width: none;
}
.horizontal-section-scroll .service7-area {
    width: 1636px;
	max-width: none;
}
.horizontal-section-scroll .service8-area {
    width: 2040px;
	max-width: none;
}
.horizontal-section-scroll .portfolio3-area {
    width: 1468px;
    overflow: hidden;
	max-width: none;
}
.horizontal-section-scroll .story2-area {
    width: 1468px;
    padding: 0;
    /* height: 100vh;
    height: 100%; */
	max-width: none;
}
.horizontal-section-scroll .story2-area .section-heading {
    text-align: left;
}
.horizontal-section-scroll .contact-and-footer-area {
    width: 1915px;
    margin-left: -16px;
    height: 100vh;
	max-width: none;
}
.horizontal-section-scroll .story2-area .custom-container {
    max-width: 1084px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.horizontal-section-scroll .empty-section {
    width: 96px;
}




/* # Ticket */
.ticket-area {
    position: relative;
    background-color: var(--bg1);
    background-image: url(../imgs/bg-shape-2.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
    padding: 77px 0 117px;
}
.ticket-area .border-gradient-shape {
    height: calc(100% - 38px);
}
.ticket-area .border-gradient-shape::before {
    background: linear-gradient(-90deg, transparent 20%, var(--primary));
}
.ticket-area .border-gradient-shape::after {
    right: auto;
    left: 0;
}
.ticket-area .section-heading {
    text-align: center;
    margin-bottom: 75px;
}
.ticket-area .section-heading .subtitle {
    color: var(--heading);
}
.ticket-area .section-heading .title {
    font-size: 34px;
    line-height: 41.4px;
    color: var(--heading);
    margin-bottom: 0;
}
.ticket-area .custom-container {
    max-width: 1085px;
}
.ticket-lists .ticket-box:first-child {
    /* padding-top: 0; */
}
.ticket-lists .ticket-box:last-child {
    margin-bottom: 0;
}
.ticket-box {
    position: relative;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    padding-bottom: 18px;
    padding-top: 38px;
    transition: .5s;
    display: block;
}
.ticket-box:hover {
    border-bottom-color: var(--heading);
}
.ticket-box span {
    display: block;
    font-size: 10px;
    letter-spacing: 3.91px;
    color: var(--primary);
    line-height: 1;
}
.ticket-box h4 {
    font-size: 14px;
    color: var(--heading);
    font-weight: 500;
    margin-bottom: 14px;
    transition: .5s;
}
.ticket-box:hover h4 {
    color: var(--primary);
}
.ticket-box > a {
    color: var(--primary);
    font-size: 10px;
    letter-spacing: 3.91px;
    display: block;
    position: absolute;
    right: 0;
    top: 40px;
    padding-right: 14px;
    font-weight: 600;
    transition: .5s;
}

.ticket-box:hover > a {
    padding-right: 18px;
}
.ticket-box > a i {
    position: absolute;
    right: 0;
    top: 3px;
}
.ticket-box .overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;

}


/* # Ticket detail */
.ticket-detail-area {
    overflow: hidden;
    padding: 156px 0;
}
.ticket-detail-area .custom-container {
    max-width: 1375px;
}
.ticket-detail-area .custom-row {
    gap: 136px;
    align-items: flex-start;
    justify-content: space-between;
}
.ticket-detail-area .img-box {
    position: relative;
    width: 100%;
    flex: none;
    max-width: 561px;
    height: 504px;
    overflow: hidden;
}
.ticket-detail-area .img-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
}
.ticket-detail-area .img-box img:hover {
    transform: scale(1.1);
}
.ticket-detail-area .content-box > .subtitle {
    color: var(--primary);
    margin-bottom: 21px;
}
.ticket-detail-area .content-box > .title {
    font-size: 28px;
    line-height: 1;
    margin-bottom: 15px;
}
.ticket-detail-area .content-box p {
    font-size: 14px;
    line-height: 26.56px;
    margin-bottom: 20px;
}
.ticket-detail-area .content-box p.last {
    margin-bottom: 0;
}
.ticket-detail-area .content-box .infos {
    display: flex;
    align-items: flex-start;
    gap: 83px;
    margin-top: 46px;
    margin-bottom: 48px;
}
.ticket-detail-area .content-box .infos .subtitle {
    display: block;
    line-height: 1;
    margin-bottom: 9px;
    color: var(--primary);
}
.ticket-detail-area .content-box .infos .title {
    font-size: 18px;
    line-height: 1;
    margin: 0;
}


/* # Story */
.story-area {
    padding: 150px 0 155px 0;
    overflow: hidden;
}
.story-area .custom-container {
    max-width: 1065px;
}
.story-area .section-header {
    max-width: 353px;
    width: 100%;
    margin-bottom: 60px;
}
.story-area .section-header h1 {
    margin-bottom: 0;
}
.story-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
}
.story-box {
    padding: 14px 14px 25px 14px;
    background: var(--bg2);
    overflow: hidden;
    position: relative;
    z-index: 1;
    transition: .5s;
}
.story-box:hover {
    background: none;
}
.story-box .shape {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.story-box .img-box {
    position: relative;
    margin-bottom: 26px;
}
.story-box .img-box img {
    display: block;
    width: 100%;
}
.story-box .img-box .meta-date {
    position: absolute;
    background: var(--primary);
    font-size: 9px;
    letter-spacing: 1.56px;
    line-height: 1;
    text-transform: uppercase;
    right: 12px;
    top: 12px;
    color: var(--heading);
    padding: 10px 14px;
    font-weight: 600;
}
.story-box .content-box {
    padding: 12px;
}
.story-box .content-box .subtitle {
    color: var(--primary);
    line-height: 1;
    margin-bottom: 8px;
}
.story-box .content-box h1 {
    color: var(--dark);
}
.story-box .content-box h1 {
    font-size: 22px;
    line-height: 29.7px;
    margin-bottom: 5px;
}
.story-box .content-box h1 a {
    color: var(--dark);
}
.story-box .content-box ul {
    margin-bottom: 6px;
}
.story-box .content-box ul li {
    display: flex;
    align-items: center;
    font-size: 11px;
    line-height: 31.3px;
    position: relative;
    gap: 8px;
}
.story-box .content-box ul li i {
    color: var(--primary);
    font-size: 15px;
}
.story-box .content-box .bottom-action {
    display: flex;
    justify-content: flex-end;
}
/* # Story 2 */
.story2-area {
    background-image: url(../imgs/about-9-shape.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 69px 0 70px 0;
    overflow: hidden;
}
.story2-area .section-heading {
    text-align: center;
    margin-bottom: 53px;
}
.story2-area .section-heading .title {
    margin-bottom: 0;
}
.story2-area .story-box {
    background: #ffffff;
}
.story2-area .story-box:hover {
    background: var(--bg2);
}
.story2-area .story-box .content-box ul {
    margin-bottom: 16px;
}
.story2-area .story-box .content-box {
    padding-right: 14px;
    padding-left: 7px;
}



/* # Team */
.team-area {
    padding: 0 0 155px 0;
    overflow: hidden;
}
.team-area .custom-container {
    max-width: 1085px;
}
.team-area .custom-row {
    display: flex;
    /* align-items: center; */
    /* gap: 84px; */
}
.team-area .left {
    max-width: 354px;
    width: 100%;
    flex: none;
    z-index: 9;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 3;
    padding-right: 84px;
}
.team-area .left::before {
    content: '';
    background: #ffffff;
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 1500px;
    z-index: -1;
}
.team-area .team-slider-wrap {
    width: 800px !important;
}
.team-slide-box {
    position: relative;
}
.team-slide-box img {
    display: block;
}
.team-slide-box .content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 28px 30px 0 30px;
    opacity: 0;
    visibility: hidden;
    transition: all .5s;
}
.team-slide-box:hover .content {
    opacity: 1;
    visibility: visible;
    padding-bottom: 28px;
}
.team-slide-box .content .title {
    color: var(--heading);
    font-size: 23px;
    line-height: 1;
    margin: 0;
}
.team-slide-box .content ul {
    display: flex;
    align-items: center;
    gap: 10px;
}
.team-slide-box .content ul li {
    text-transform: uppercase;
    position: relative;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 2.34px;
    line-height: 1;
}
.team-slide-box .content ul li a {
    color: var(--heading);
    display: block;
}
/* Homepage team cards carry a monogram mark, so the caption stays visible and
   the whole block is the link — not just the qualification line. */
.home3-page .team2-area .teams-wrap .team-slide-box .content,
.home3-page .team2-area .teams-wrap .team-slide-box:hover .content {
    top: 0;
    height: auto;
    opacity: 1;
    visibility: visible;
    align-items: flex-end;
    padding-bottom: 26px;
    background: linear-gradient(0deg, rgb(11 31 58 / 94%) 0%, rgb(11 31 58 / 55%) 26%, transparent 54%);
}

.home3-page .team2-area .team-slide-box .content .title {
    color: #fff;
}

.home3-page .team2-area .team-slide-box .content ul li a {
    color: var(--primary);
    transition: .3s;
}

/* A real overlay anchor (not a pseudo-element) so the whole block is the link
   and hit-testing stays predictable. .content spans the full card, so inset:0
   covers it edge to edge. */
.home3-page .team2-area .team-slide-box .content .team-card-link {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: block;
    text-indent: -9999px;
    overflow: hidden;
}

.home3-page .team2-area .team-slide-box .content .title,
.home3-page .team2-area .team-slide-box .content .team-desig {
    position: relative;
    z-index: 3;
}

.home3-page .team2-area .team-slide-box {
    transition: transform .4s;
    border: 1px solid var(--primary);
    box-shadow: 0 0 0 1px rgb(211 177 132 / 18%);
    overflow: hidden;
}

.home3-page .team2-area .team-slide-box:hover {
    transform: translateY(-5px);
}

/* # Team 2 */
.team2-area {
    padding: 155px 0;
}
.team2-area .section-heading {
    text-align: center;
    max-width: 249px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 53px;
}
.team2-area .section-heading .title {
    margin: 0;
}
.teams-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 46px;
}
.teams-wrap .team-slide-box img {
    width: 100%;
}
.teams-wrap .team-slide-box .content {
    padding: 28px 30px 0 30px;
    background: linear-gradient(0deg, rgb(18 38 32 / 50%), transparent);
    height: 50%;
    align-items: flex-end;
}
.teams-wrap .team-slide-box .content ul {
    gap: 18px;
}
.teams-wrap .team-slide-box .content .title {
    font-size: 24px;
}
.teams-wrap .team-slide-box:hover .content {
    padding-bottom: 20px;
}

/* Keep each portrait, name and qualification together as one framed card:
   gold rule around the whole block, dark caption bar beneath the photo. */
.home3-page .team2-area .teams-wrap .team-slide-box,
.about-page .about-home-team .teams-wrap .team-slide-box {
    display: flex;
    flex-direction: column;
    min-width: 0;
    border: 1px solid var(--primary);
    background: var(--bg1);
    box-shadow: 0 0 0 1px rgb(211 177 132 / 18%);
    overflow: hidden;
}

/* About-page deployment safeguard. The team markup is stored in the page
   content and can arrive with AOS' pre-animation state after a database move.
   Keep this important section visible even when animation initialisation or a
   cached responsive stylesheet is delayed on the live server. */
.about-page .about-home-team,
.about-page .about-home-team .team2-area,
.about-page .about-home-team .custom-container,
.about-page .about-home-team .teams-wrap {
    height: auto !important;
    min-height: 0;
    opacity: 1 !important;
    visibility: visible !important;
}

.about-page .about-home-team {
    display: block !important;
    overflow: visible;
}

.about-page .about-home-team .teams-wrap {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-page .about-home-team .team-slide-box,
.about-page .about-home-team .team-slide-box.aos-init,
.about-page .about-home-team .team-slide-box[data-aos] {
    opacity: 1 !important;
    visibility: visible !important;
}

@media (max-width: 991px) {
    .about-page .about-home-team .teams-wrap {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 525px) {
    .about-page .about-home-team .teams-wrap {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* A consistent square image area preserves the source aspect ratio; cover
   crops only the outside edges and never stretches a portrait. */
.home3-page .team2-area .teams-wrap .team-slide-box > img,
.about-page .about-home-team .teams-wrap .team-slide-box > img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: center 20%;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: var(--bg1);
}

/* Production can briefly retain cached Elementor markup with the former SVG
   URLs. These replacements keep the public cards correct until regeneration. */
.teams-wrap .team-slide-box:nth-child(1) > img {
    content: url('../../../../uploads/2026/08/team-members/cs-himanshu-khandelwal.jpg');
}
.teams-wrap .team-slide-box:nth-child(2) > img {
    content: url('../../../../uploads/2026/08/team-members/ca-sudhanshu-khandelwal.jpg');
}
.teams-wrap .team-slide-box:nth-child(3) > img {
    content: url('../../../../uploads/2026/08/team-members/cs-vijay-kumar-khubchandani.png');
}
.teams-wrap .team-slide-box:nth-child(4) > img {
    content: url('../../../../uploads/2026/08/team-members/advocate-priyanka-gupta.jpg');
}
.teams-wrap .team-slide-box:nth-child(5) > img {
    content: url('../../../../uploads/2026/08/team-members/advocate-tanisha-khubchandani.jpg');
}
/* The sixth card was missing here, so it was the only one still showing the
   placeholder monogram wherever the stored markup had not been refreshed -
   the About page content in particular, which never travels with a file
   deploy. */
.teams-wrap .team-slide-box:nth-child(6) > img {
    content: url('../../../../uploads/2026/07/team-graphics/himangi-sharma.png');
}

.home3-page .team2-area .teams-wrap .team-slide-box .content,
.home3-page .team2-area .teams-wrap .team-slide-box:hover .content,
.about-page .about-home-team .teams-wrap .team-slide-box .content,
.about-page .about-home-team .teams-wrap .team-slide-box:hover .content {
    position: static;
    inset: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    align-items: start;
    width: 100%;
    min-height: 78px;
    height: auto;
    padding: 16px 20px 18px;
    opacity: 1;
    visibility: visible;
    background: var(--bg1);
}

.home3-page .team2-area .teams-wrap .team-slide-box .content .title,
.about-page .about-home-team .teams-wrap .team-slide-box .content .title {
    color: var(--heading) !important;
    font-size: 21px;
    line-height: 1.2;
    margin: 0;
}

.home3-page .team2-area .teams-wrap .team-slide-box .content .team-desig,
.about-page .about-home-team .teams-wrap .team-slide-box .content .team-desig {
    justify-content: flex-start;
    margin: 0;
    padding: 0;
}

.home3-page .team2-area .teams-wrap .team-slide-box .content .team-desig li,
.about-page .about-home-team .teams-wrap .team-slide-box .content .team-desig li {
    line-height: 1.35;
    text-align: left;
}

.home3-page .team2-area .teams-wrap .team-slide-box .content .team-desig li a,
.about-page .about-home-team .teams-wrap .team-slide-box .content .team-desig li a {
    color: var(--primary);
}

/* Card layout puts .content in normal flow, so this anchor's containing block
   is .team-slide-box: inset:0 covers the monogram and the caption together,
   matching the fully-clickable team cards on the About page. */
.home3-page .team2-area .teams-wrap .team-slide-box .content .team-card-link,
.about-page .about-home-team .teams-wrap .team-slide-box .content .team-card-link {
    inset: 0;
    cursor: pointer;
}

/* # Team 3 */
.team3-area {
    padding-top: 150px;
}
.team3-area .section-heading {
    max-width: 298px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 70px;
}
.team3-area .section-heading .title {
    font-size: 34px;
    margin-bottom: 0;
}
.team3-area .teams-wrap {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 12px;
}
.team3-area .teams-wrap .team-slide-box {
    height: 300px;
}
.team3-area .teams-wrap .team-slide-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.team3-area .teams-wrap .team-slide-box:nth-child(even) {
    margin-top: 35px;
}
.team3-area .teams-wrap .team-slide-box .content {
    padding-left: 10px;
    padding-right: 10px;
}
.team3-area .teams-wrap .team-slide-box .content ul {
    gap: 8px;
}
.team3-area .teams-wrap .team-slide-box .content .title {
    font-size: 16px;
}


/* # Faq */
.faq-area .custom-container {
    max-width: 1306px;
    padding: 0 66px;
}
.faq-area .custom-row {
    display: flex;
}
.faq-area .custom-row .left {
    width: 50%;
    position: relative;
    z-index: 1;
    background-color: var(--bg1);
    background-image: url(../imgs/footer-bg.png);
    background-size: cover;
    background-position: right;
    background-repeat: no-repeat;
}
.faq-area .border-gradient-shape {
    height: calc(100% - 38px);
}
.faq-area .border-gradient-shape::after {
    background: linear-gradient(0deg, transparent 10%, var(--primary));
}
.faq-area .border-gradient-shape::before,
.faq-area .border-gradient-shape::after {
    right: auto;
    left: 0;
}
.faq-area .border-gradient-shape::before {
    background: linear-gradient(-90deg, transparent 20%, var(--primary));
}
.faq-area .custom-row .right {
    width: 50%;
    position: relative;
    overflow: hidden;
}
.faq-area .custom-row .right img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
}
.faq-area .custom-row .right .img-box-inner {
    overflow: hidden;
}
.faq-area .custom-row .right img:hover {
    transform: scale(1.1);
    
}
.faq-area .left {
    padding: 0 110px;
    color: var(--heading);
}
.faq-area .faq-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    height: 100%;
}
.faq-area .faq-content .subtitle {
    line-height: 1;
    margin-bottom: 20px;
}
.faq-area .faq-content .title {
    font-size: 34px;
    line-height: 41.4px;
    margin: 0 0 24px;
    color: var(--heading);
    max-width: 264px;
    width: 100%;
}
.faq-area .faq-content p {
    font-size: 14px;
    line-height: 26.6px;
    font-weight: 300;
    margin: 0;
}
.faq-list {
    width: 100%;
    margin-top: 43px;
}
.faq-list .faq-item {
    width: 100%;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    margin-bottom: 35px;
    transition: .5s;
}
.faq-list .faq-item:hover {
    border-bottom-color: var(--heading);
}
.faq-list .faq-item:last-child {
    margin-bottom: 0;
}
.faq-list .faq-item .accordion-header {
    margin-bottom: 10px;
}
.faq-list .faq-item .accordion-header button {
    font-size: 12px;
    line-height: 1.3;
    font-weight: 500;
    color: var(--heading);
    position: relative;
}
.faq-list .faq-item .accordion-header button::after {
    display: none;
}
.faq-list .faq-item .accordion-header button .icon {
    position: absolute;
    right: 0;
    top: -1px;
    color: var(--primary);
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    transition: all .3s;
}
.faq-list .faq-item .accordion-header button[aria-expanded="true"] .icon {
    transform: rotate(45deg);
}
.faq-list .faq-item .accordion-body p {
    font-size: 12px;
    line-height: 24.6px;
    margin-bottom: 10px;
}

/* Practice-area pages use a straightforward, full-width FAQ without imagery. */
.faq-area--questions-only .custom-row .left {
    width: 100%;
    background-color: #ffffff;
    background-image: none;
    color: #17231f;
}
.faq-area--questions-only .border-gradient-shape {
    display: none;
}
.faq-area--questions-only .left {
    padding: 80px 110px;
}
.faq-area--questions-only .faq-content {
    max-width: 900px;
    margin: 0 auto;
}
.faq-area--questions-only .faq-content .title {
    max-width: 680px;
    color: #17231f;
}
.faq-area--questions-only .faq-content > p {
    max-width: 680px;
    color: #4f5955;
}
.faq-area--questions-only .faq-content .subtitle {
    color: #9b762e;
}
.faq-area--questions-only .faq-list .faq-item {
    border-bottom-color: #d8dedb;
}
.faq-area--questions-only .faq-list .faq-item:hover {
    border-bottom-color: #9b762e;
}
.faq-area--questions-only .faq-list .faq-item .accordion-header button {
    padding-right: 42px;
    font-size: 15px;
    line-height: 1.5;
    color: #17231f;
}
.faq-area--questions-only .faq-list .faq-item .accordion-body p {
    padding-right: 42px;
    font-size: 14px;
    line-height: 1.8;
    color: #4f5955;
}
.faq-area--questions-only .faq-list .faq-item .accordion-header button .icon {
    top: 2px;
    font-size: 18px;
}
@media (max-width: 767px) {
    .faq-area--questions-only .left {
        padding: 50px 30px;
    }
    .faq-area--questions-only .faq-list {
        margin-top: 32px;
    }
    .faq-area--questions-only .faq-list .faq-item {
        margin-bottom: 26px;
    }
}
.home3-page .faq-area .custom-container {
    max-width: 100%;
}
.home3-page .faq-area .custom-row .left {
    padding: 0 0 0 64px;
}
.home3-page .faq-area .custom-row .right {
    aspect-ratio: 1416 / 1330;
}
.home3-page .faq-area .custom-row .right > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home3-page .faq-area .faq-content {
    max-width: 422px;
    width: 100%;
}
.home3-page .faq-area .faq-content .title {
    max-width: 100%;
}
.home3-page .faq-area .faq-content p {
    opacity: 0.7;
    margin-bottom: 35px;
}
.service4-links {
    width: 100%;
}
.service4-links li {
    margin-bottom: 33px;
}
.service4-links li:last-child {
    margin-bottom: 0;
}
.service4-links li a {
    display: flex;
    align-items: center;
    color: var(--heading);
    font-weight: 400;
    font-size: 12px;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    padding-bottom: 12px;
    transition: .5s;
}
.service4-links li a i {
    color: var(--primary);
}
.service4-links li a:hover {
    border-bottom-color: var(--heading);
    padding-right: 5px; 
}

/* # Faq 2 */
.faq2-area {
    padding: 156px 0 175px 0;
    overflow: hidden;
}
.home3-page .faq2-area .custom-container {
    max-width: 1085px;
    padding: 0;
}
.faq2-area .faq-list .faq-item .accordion-header button {
    padding-right: 12px;
}
.faq2-area .custom-row {
    column-gap: 177px;
    justify-content: space-between;
    align-items: flex-start;
}
.home3-page .faq2-area .faq-list {
    max-width: 440px;
    width: 100%;
}
.faq2-area .custom-row .left {
    background: none;
    width: auto;
}
.faq2-area .faq-content .section-header {
    max-width: 384px;
    width: 100%;
}
.home3-page .faq2-area .faq-content {
    max-width: 100%;
}
.faq2-area .faq-content .subtitle {
    color: var(--dark);
}
.faq2-area .faq-content p {
    margin-bottom: 44px;
}
.faq2-area .faq-content .title {
    color: var(--dark);
}
.faq2-area .faq-list {
    margin-top: 0;
}
.faq2-area .faq-list .faq-item  {
    border-bottom-color: rgb(18 38 32 / 20%);
    transition: .5s;
}
.faq2-area .faq-list .faq-item:hover {
    border-bottom-color: var(--dark);
}
.faq2-area .faq-list .faq-item .accordion-header button {
    color: var(--dark);
}
.faq2-area .faq-list .faq-item .accordion-body p {
    color: var(--dark);
    margin-bottom: 10px;
}
.faq2-area .custom-row .right {
    max-width: 375px;
    width: 100%;
    flex: none;
    position: relative;
    z-index: 1;
}
.faq2-area .right .border-gradient-shape {
    width: 100%;
    height: 100%;
    right: -19px;
    bottom: -19px;
    top: auto;
}
.faq-area .right .border-gradient-shape::before {
    background: linear-gradient(90deg, transparent 20%, var(--primary));
    bottom: 0;
    top: auto;
}
.faq-area .right .border-gradient-shape::after {
    left: auto;
    right: 0;
    background: linear-gradient(180deg, transparent 30%, var(--primary));
}
/* # Faq 3 */
.faq3-area .custom-container {
    max-width: 100%;
}
.faq3-area .border-gradient-shape::before {
    background: linear-gradient(90deg, transparent 20%, var(--primary));
}
.faq3-area .border-gradient-shape::after {
    left: auto;
    right: 0;
}
.faq3-area .custom-row .left {
    width: auto;
    flex: 1;
}
.faq3-area .custom-row .right {
    max-width: 820px;
    width: 100%;
    flex: none;
}
.faq3-area .faq-content .title {
    max-width: 100%;
}
.faq3-area .faq-content p {
    max-width: 384px;
    width: 100%;
    margin-bottom: 35px;
}
/* # Faq 4 */
.faq4-area .right {
    max-width: 442px;
    width: 100%;
}
.faq4-area .left {
    flex: 1;
    max-width: 100%;
    padding-left: 136px;
    padding-right: 191px;
}
.faq4-area .faq-content .title {
    max-width: 100%;
}
.faq4-area .faq-content .theme-btn {
    color: var(--heading);
}
.faq4-area .faq-content .theme-btn::before,
.faq4-area .faq-content .theme-btn::after,
.faq4-area .faq-content .theme-btn span::before,
.faq4-area .faq-content .theme-btn span::after {
    background: #ffffff;
}
.faq4-area .faq-content .theme-btn span {
    border-color: var(--heading);
}
.faq4-area .faq-content p {
    margin-bottom: 23px;
}
.faq4-area .border-gradient-shape::before {
    background: linear-gradient(90deg, transparent 20%, var(--primary));
}
.faq4-area .border-gradient-shape::after {
    left: auto;
    right: 0;
}
.about-page .faq-area .custom-container {
    max-width: 100%;
}
.about-page .faq-area .faq-content > p {
    margin-bottom: 35px;
}
.about-page .faq-area .faq-content .title {
    max-width: 358px;
}
.work-query-page .faq2-area .custom-row .left,
.faq-page .faq2-area .custom-row .left {
    padding-right: 0;
    padding-left: 0;
    width: 100%;
}
.work-query-page .faq2-area .custom-container,
.faq-page .faq2-area .custom-container {
    max-width: 1085px;
    padding: 0;
}



/* # Pricing */
.pricing-table-area {
    padding-bottom: 157px;
    overflow: hidden;
}
.pricing-table-area .custom-container {
    max-width: 1065px;
}
.pricing-table-area .section-header {
    max-width: 442px;
    width: 100%;
    margin-bottom: 53px;
}
.section-header .subtitle {
    margin-bottom: 15px;
}
.pricing-table-area .section-header h1 {
    font-size: 34px;
    margin-bottom: 0;
}
.pricing-table-lists {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 18px;
}
.pricing-table {
    position: relative;
    z-index: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* border: 1px solid rgb(211 177 132 / 40%); */
    padding: 60px 50px 50px 50px;
    transition: .6s;
}
.pricing-table::before {
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border: 1px solid rgb(211 177 132 / 40%);
    position: absolute;
    transition: .6s;
    z-index: -1;
}
.pricing-table:hover::before {
    background: #122620;
    border-color: #122620;
}
.pricing-table .shape {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    object-fit: cover;
    opacity: 0;
    transition: .5s;
}
.pricing-table:hover .shape {
    opacity: 1;
}
.pricing-table .subtitle {
    color: var(--primary);
    line-height: 1;
    margin-bottom: 17px;
}
.pricing-table .title sup {
    top: -0.4em;
    font-size: 21px;
    margin-right: 3px;
}
.pricing-table .title {
    font-size: 34px;
    line-height: 1;
    margin-bottom: 12px;
    transition: .5s;
}
.pricing-table .period {
    font-size: 11px;
    color: #122620;
    line-height: 1;
    opacity: 0.5;
    border-bottom: 1px solid rgb(211 177 132 / 30%);
    padding-bottom: 15px;
    display: block;
    width: 100%;
    text-align: center;
    transition: .5s;
}
.pricing-table ul {
    margin-top: 20px;
    margin-bottom: 40px;
}
.pricing-table ul li {
    font-size: 12px;
    line-height: 31.3px;
    position: relative;
    padding-left: 24px;
    transition: .5s;
}
.pricing-table ul li i {
    color: var(--primary);
    font-size: 15px;
    position: absolute;
    left: 0;
    top: 8px;
}
.pricing-table .highlight-badge {
    position: absolute;
    right: 12px;
    top: 12px;
    background: var(--primary);
    color: var(--heading);
    font-size: 9px;
    line-height: 1;
    padding: 10px 18px;
}
.pricing-table:hover .period {
    color: #FFFFFF;
    opacity: 0.5;
}
.pricing-table:hover ul li,
.pricing-table:hover .title {
    color: var(--heading);
}
.pricing-table:hover .theme-btn {
    color: var(--heading);
}
.pricing-table:hover .theme-btn::before,
.pricing-table:hover .theme-btn::after,
.pricing-table:hover .theme-btn span::before,
.pricing-table:hover .theme-btn span::after {
    background: #ffffff;
}
.pricing-table:hover .theme-btn span {
    border-color: var(--heading);
}
.home6-page .pricing-table-area {
    padding-right: 88px;
    padding-top: 170px;
}

.pricing-table2-area .section-header .subtitle::before,
.home6-page .pricing-table-area .section-header .subtitle::before {
    display: none;
}
.pricing-table2-area .custom-container,
.home6-page .pricing-table-area .custom-container {
    max-width: 100%;
}
.home6-page .pricing-table-area .pricing-table::before {
    background-color: var(--bg2);
}
.home6-page .pricing-table-area .pricing-table:hover::before {
    background: #122620;
}
.home7-page .pricing-table-area {
    padding-top: 170px;
}

/* # Pricing Table 2 */
.pricing-table2-area {
    width: 2276px;
    background-image: url(../imgs/about-9-shape.jpeg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 0;
}
.pricing-table2-area .custom-row {
    align-items: center;
    justify-content: space-between;
}
.pricing-table2-area .pricing-table-lists {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.pricing-table2-area .right {
    flex: 1;
    padding: 0 274px;
}
.pricing-table2-area .pricing-table {
    background: #ffffff;
}
.pricing-table2-area .pricing-table:hover {
    background: #122620;
}

.pricing-page .pricing-table-area {
    padding-top: 156px;
}
.pricing-page .pricing-table-area .pricing-table::before {
    background: var(--bg2);
}
.pricing-page .pricing-table-area .pricing-table:hover::before {
    background: #122620;
}



/* # Gallery */
.gallery-area {
    overflow: hidden;
    background: var(--bg2);
    padding: 120px 0;
}
.gallery-area .custom-container {
    max-width: 1289px;
    padding: 0 32px;
}
.gallery-box {
    position: relative;
}
.gallery-box > img {
    display: block;
    width: 100%;
}
.gallery-box .gallery-content {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    background-color: var(--bg1);
    background-image: url(../imgs/bg-shape-2.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 0 59px 0 59px;
    opacity: 0;
    visibility: hidden;
    transition: all .5s;
}
.gallery-box:hover .gallery-content {
    opacity: 1;
    visibility: visible;
    padding-bottom: 35px;
}
.gallery-box .gallery-content .shape {
    position: absolute;
    right: 18px;
    top: 18px;
    z-index: -1;
}
.gallery-box .gallery-content .title {
    font-size: 24px;
    line-height: 29.7px;
    color: var(--heading);
    margin-bottom: 24px;
}
.gallery-box .gallery-content .title a {
    color: var(--heading);
}
.gallery-box .gallery-content > a {
    display: inline-flex;
    color: var(--primary);
    font-size: 9px;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 600;
    gap: 4px;
    align-items: center;
    transition: .3s;
}
.gallery-box .gallery-content > a:hover {
    gap: 6px;
}
.gallery-box .gallery-content > a span {
    display: block;
    height: 12px;
}
.gallery-box .gallery-content > a span::before,
.gallery-box .gallery-content > a span::after {
    background: var(--primary);
}



/* # Blog */
.blog-area {
    padding: 125px 0 150px 0;
}
.blog-detail-area .custom-container,
.blog-area .custom-container {
    max-width: 1142px;
}
.blog-area .custom-row {
    gap: 99px;
}
.blog-area .blog-post:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border: none;
}
.blog-post {
    border-bottom: 1px solid rgb(18 38 32 / 10%);
    padding-bottom: 75px;
    margin-bottom: 75px;
}
.blog-post .img-box {
    margin-bottom: 45px;
    overflow: hidden;
}
.blog-post .img-box img {
    display: block;
    width: 100%;
    transition: .5s;
}
.blog-post .img-box:hover> img {
    transform: scale(1.1);
}
.blog-post .meta {
    display: flex;
    line-height: 1;
    align-items: center;
    gap: 24px;
    font-size: 14px;
    margin-bottom: 23px;
}
.blog-post .meta .subtitle {
    display: block;
    margin: 0;
    color: var(--primary);
}
.blog-post .meta a {
    color: var(--dark);
    font-weight: 500;
}
.blog-post .title {
    font-size: 28px;
    line-height: 29.69px;
    margin-bottom: 12px;
}
.blog-post .title a {
    color: var(--dark);
    display: block;
}
.blog-post p {
    font-size: 14px;
    line-height: 26.56px;
    margin-bottom: 0;
}
.blog-detail-area .sidebar,
.blog-area .sidebar {
    max-width: 289px;
    width: 100%;
    flex: none;
}
.blog-widget form .input-group input::placeholder {
    color: var(--dark);
}
.blog-widget form .input-group input {
    background: var(--bg2);
    border: none;
    font-size: 11px;
    color: var(--dark);
    padding: 16px 23px;
}
.blog-widget form .input-group {
    position: relative;
}
.blog-widget form .input-group button {
    background: #D3B184;
    border: none;
    color: var(--dark);
    font-size: 11px;
    line-height: 1;
    position: absolute;
    padding: 10px 24px;
    right: 4px;
    top: 4px;
    bottom: 4px;
    cursor: pointer;
    font-weight: 500;
    transition: .5s;
}
.blog-widget form .input-group button:hover {
    background: var(--dark);
    color: var(--heading);
}
.blog-widget {
    position: relative;
    background-image: url(../imgs/about-9-shape.jpeg);
    background-color: var(--bg2);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    margin-bottom: 32px;
    padding: 36px 59px 35px 23px;
}
.sidebar .blog-widget:last-child {
    margin-bottom: 0;
}
.blog-widget.widget-search-bar {
    background: none;
    padding: 0;
}
.blog-widget h3 {
    font-size: 14px;
    color: var(--primary);
    font-weight: 600;
    margin: 0 0 21px 0;
    line-height: 1;
    text-transform: uppercase;
}
.blog-widget.blog-widget-links ul li:last-child {
    margin-bottom: 0;
}
.blog-widget.blog-widget-links ul li {
    margin-bottom: 10px;
}
.blog-widget.blog-widget-links ul li a {
    display: block;
    color: var(--dark);
    font-size: 12px;
    line-height: 25px;
    font-weight: 500;
    transition: .5s;
}
.blog-widget.blog-widget-links ul li a:hover {
    color: var(--primary);
    padding-left: 5px;
}
.blog-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 8px;
}
.blog-tags li a{
    display: block;
    background: #ffffff;
    color: var(--dark);
    font-size: 11px;
    padding: 7px 16px;
    transition: .5s;
}
.blog-tags li a:hover {
    background: var(--primary);
    color: var(--heading);
}

/* # Blog Detail */
.blog-detail-area {
    padding: 124px 0 155px;
}
.blog-detail-area .custom-row {
    gap: 100px;
}
.blog-detail-area .blog-post {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}
.blog-detail-area .blog-post > .box-anim {
    margin-bottom: 50px;
}
.blog-detail-area .blog-post .box-anim {
    overflow: hidden;
}
.blog-detail-area .blog-post .box-anim img {
    transition: .5s;
}
.blog-detail-area .blog-post .box-anim img:hover {
    transform: scale(1.1);
}
.blog-detail-area .blog-post .title {
    margin-bottom: 34px;
}
.blog-detail-area .blog-post p {
    margin-bottom: 30px;
}
.blog-detail-area .blog-post {
    font-size: 28px;
}
.blog-detail-area .blog-post .img1 {
    display: block;
    width: 100%;
}
.blog-detail-area .blog-post .img-box1 {
    display: flex;
    gap: 20px;
    margin-bottom: 45px;
}
.blog-detail-area .blog-post .img-box1 .left {
    flex: 1;
}
.blog-detail-area .blog-post .img-box1 img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.blog-detail-area .blog-post .img-box1 .right {
    max-width: 287px;
    width: 100%;
    flex: none;
}
.blog-detail-area .blog-post .img-box1 .right .box-anim {
    height: 100%;
}
.blog-detail-area .blog-post h2 {
    margin-bottom: 33px;
    font-size: 20px;
}
.blog-detail-area .blog-post .tags {
    display: flex;
    align-items: center;
    gap: 19px;
}
.blog-detail-area .blog-post .tags .subtitle {
    color: var(--primary);
    font-size: 14px;
}
.blog-detail-area .blog-post .tags li a {
    display: block;
    color: var(--heading);
    background: var(--primary);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 3.91px;
    font-weight: 500;
    padding: 6px 15px 4px 15px;
    transition: .5s;
}
.blog-detail-area .blog-post .tags li a:hover {
    background: var(--dark);
    color: var(--heading);
}
.blog-detail-area .blog-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 46px;
}
.blog-detail-area .blog-pagination .paginate-blog {
    font-size: 12px;
    color: var(--dark);
    display: inline-flex;
    align-items: center;
    gap: 16px;
    font-weight: 500;
    text-transform: uppercase;
    transition: .5s;
}
.blog-detail-area .blog-pagination .paginate-blog:hover {
    gap: 10px;
    color: var(--primary);
}
.blog-author-box {
    display: flex;
    align-items: flex-start;
    gap: 19px;
    margin-top: 94px;
}
.blog-author-box .img-box {
    max-width: 202px;
    width: 100%;
    height: 202px;
    position: relative;
    flex: none;
    margin: 0;
}
.blog-author-box .img-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.blog-author-box .content {
    margin-top: -7px;
}
.blog-author-box .content .subtitle {
    color: var(--primary);
    line-height: 1;
    font-size: 14px;
    margin: 0 0 22px;
}
.blog-author-box .content p {
    margin-bottom: 26px;
}
.blog-author-box .content .socials {
    display: flex;
    align-items: center;
    gap: 20px;
}
.blog-author-box .content .socials li a {
    display: block;
    background: var(--primary);
    color: var(--heading);
    text-transform: uppercase;
    font-weight: 500;
    font-size: 9px;
    letter-spacing: 3.91px;
    line-height: 1;
    padding: 7px 13px 6px 14px;
    transition: .5s;
}
.blog-author-box .content .socials li a:hover {
    background: var(--dark);
    color: var(--heading);
}

.blog-comments {
    padding-top: 115px;
}
.blog-comments .comment-count {
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    margin: 0 0 25px;
}
.comment-lists .comment + .comment {
    padding-top: 32px;
}
.comment {
    border-bottom: 1px solid #1226201A;
    padding-bottom: 32px;
}
.comment-lists .comment:last-child {
    padding-bottom: 72px;
}
.comment .comment {
    padding-left: 63px;
    border-top: 1px solid #1226201A;
    padding-top: 32px;
    margin-top: 32px;
}
.comment .comment:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.comment .comment-inner {
    display: flex;
    align-items: flex-start;
    gap: 33px;
}
.comment .comment-inner .comment-img-box {
    max-width: 80px;
    height: 80px;
    width: 100%;
    flex: none;
}
.comment .comment-inner .comment-content {
    flex: 1;
}
.comment .comment-inner .comment-content .date {
    color: var(--primary);
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 600;
    display: block;
    line-height: 1;
}
.comment .comment-inner .comment-content h2 {
    color: var(--dark);
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
    margin: 10px 0 9px 0;
}
.comment .comment-inner .comment-content p {
    margin-bottom: 23px;
}
.comment .comment-inner .comment-content .reply-btn {
    display: inline-block;
    background: var(--dark);
    color: var(--heading);
    padding: 7px 19px;
    font-size: 11px;
    transition: .5s;
}
.comment .comment-inner .comment-content .reply-btn:hover {
    background: var(--primary);
}
/* # Comment Form */
.blog-detail-area .blog-post .blog-comment-form .title {
    font-size: 28px;
    line-height: 1;
    margin-bottom: 56px;
}
.blog-comment-form {
    padding-top: 60px;
}
.blog-comment-form form .row-group {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 48px;
    align-items: flex-start;
}
.blog-comment-form form .input-group {
    margin-bottom: 40px;
}
.blog-comment-form form .input-group textarea {
    height: 34px;
    resize: none;
}
.blog-comment-form form > .input-group:last-child {
    margin-bottom: 0;
    margin-top: 6px;
}




/* # Contact */
.contact-area {
    padding: 156px 0;
}
.contact-area .custom-row {
    display: flex;
    align-items: center;
    gap: 178px;
}
.contact-area .custom-container {
    max-width: 1085px;
}
.contact-detail-content li {
    display: block;
    border-bottom: 1px solid rgb(211 177 132 / 30%);
    padding-bottom: 30px;
    margin-bottom: 32px;
}
.contact-detail-content li:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.contact-detail-content .subtitle {
    color: var(--primary);
    line-height: 1;
    margin: 0;
}
.contact-detail-content .title span {
    font-size: 12px;
    color: var(--primary);
    border-bottom: 1px solid var(--primary);
    display: inline-block;
}
.contact-detail-content .title {
    font-size: 34px;
    line-height: 1;
    margin: 0 0 8px;
}
.contact-detail-content p {
    font-size: 12px;
    line-height: 20px;
    margin: 0;
}
.contact-area .contact-form {
    flex: 1;
}
.contact-form #result {
    color: var(--dark);
}
.contact-form #result.text-red-500 {
    color: red;
}
.contact-form #result.text-green-500 {
    color: rgb(16,185,129);
}
#result1 {
    margin-top: 8px;
}
.newsletter2-area #result1 {
    color: red;
}
.contact-form .subtitle {
    color: var(--primary);
    line-height: 1;
    margin-bottom: 14px;
}
.contact-form .title {
    font-size: 34px;
    line-height: 1;
    margin-bottom: 24px;
}
.contact-form form .input-group {
    margin-bottom: 27px;
}
.contact-form form .input-group:last-child {
    margin-top: 39px;
}

/* Contact page uses only the useful address details and enquiry form. The
   promotional statistics column is intentionally removed here and the two
   remaining columns share the available width. */
.contact-page .contact-area .contact-left {
    display: none !important;
}

.contact-page .contact-area .custom-row {
    justify-content: space-between;
    gap: clamp(70px, 10vw, 170px);
}

.contact-page .contact-area .contact-right {
    width: min(520px, 56%);
    flex: 0 1 520px;
}

.contact-page .contact-area .contact-form {
    width: min(340px, 40%);
    flex: 0 1 340px;
}

@media (max-width: 991px) {
    .contact-page .contact-area .custom-row {
        gap: 60px;
    }

    .contact-page .contact-area .contact-right,
    .contact-page .contact-area .contact-form {
        width: 100%;
        max-width: 100%;
        flex-basis: auto;
    }
}

/* # Contact 2 */
.contact2-area {
    background: var(--bg2);
    overflow: hidden;
}
.contact2-area .custom-row {
    display: flex;
    align-items: center;
}
.contact2-area .img-box {
    width: 50%;
    aspect-ratio: 2560 / 1844;
    position: relative;
    overflow: hidden;
}
.contact2-area .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: .5s;
}
.contact2-area .img-box:hover img {
    transform: scale(1.1);
}
.contact2-area .right {
    width: 50%;
    padding: 0 110px;
}
.contact2-area .content .subtitle {
    line-height: 1;
    margin: 0 0 17px;
}
.contact2-area .content .title {
    margin-bottom: 37px;
}
.contact2-area .content form .input-group {
    margin-bottom: 27px;
}
.contact2-area .content form .input-group:last-child {
    margin-bottom: 0;
    margin-top: 44px;
    display: flex;
    justify-content: flex-end;
}
.home6-page .contact-area {
    padding-right: 88px;
}
.home6-page .contact-area .custom-container {
    max-width: 100%;
}

/* # Contact 3 */
.contact-and-footer-area .border-gradient-shape {
    pointer-events: none;
    z-index: 1;
    height: 602px;
    top: auto;
    bottom: 19px;
    width: calc(100% - 645px);
}
.contact-and-footer-area .border-gradient-shape::before {
    top: auto;
    bottom: 0;
}
.contact-and-footer-area .border-gradient-shape::after {
    background: linear-gradient(180deg, transparent 20%, var(--primary));
}
.contact-and-footer-area .right {
    padding: 0 212px;
    flex: 1;
}
.contact-and-footer-area .contact-and-footer-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.contact-and-footer-area .right-content {
    max-width: 385px;
    width: 100%;
    flex: none;
}
.contact-and-footer-area .contact-form-and-info {
    display: flex;
    justify-content: space-between;
}
.contact-and-footer-area .right-content .subtitle {
    color: var(--primary);
}
.contact-and-footer-area .right-content .title {
    font-size: 34px;
}
.contact-and-footer-area .right-content form .input-group {
    margin-bottom: 26px;
}
.contact-and-footer-area .right-content form .input-group > p {
	width: 100%;
}
.contact-and-footer-area .right-content form .input-group:last-child {
    margin-bottom: 0;
    margin-top: 39px;
}
.contact-and-footer-area .contact-detail-content li {
    margin-bottom: 27px;
    padding-bottom: 25px;
}
.contact-and-footer-area .contact-detail-content li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
}
.contact-and-footer-area .footer-infos {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding-top: 92px;
}
.contact-and-footer-area .footer-infos .footer-widget h3 {
    color: var(--dark);
}
.contact-and-footer-area .footer-infos .footer-widget-link li,
.contact-and-footer-area .footer-infos .footer-widget-link li a {
    color: var(--dark);
}
.contact-and-footer-area .footer-infos .footer-widget-link li a:hover {
    color: var(--primary);
}


/* # Coming Soon */
.coming-soon {
    position: relative;
    height: 100vh;
    overflow: hidden;
}
.coming-soon >img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    object-fit: cover;
    height: 100%;
    z-index: -1;
    animation: zoomInAnim 35s infinite linear;
}
.coming-soon .content {
    position: absolute;
    left: 0;
    bottom: 0;
    background: url(../imgs/about-9-shape.jpeg) no-repeat center;
    background-size: cover;
    max-width: 600px;
    width: 100%;
    padding: 54px 139px 54px 63px;
    z-index: 2;
}
.coming-soon .content .border-gradient-shape {
    height: calc(100% - 38px);
}
.coming-soon .content .title {
    font-size: 34px;
    margin: 0 0 22px;
}
.coming-soon .content p {
    font-size: 14px;
    line-height: 26.6px;
    margin: 0 0 36px;
}
.coming-soon .content #countdown {
    margin-bottom: 36px;
}
.coming-soon .content #countdown ul {
    display: flex;
    align-items: center;
    gap: 63px;
}
.coming-soon .content #countdown ul li {
    font-size: 11px;
    color: var(--dark);
}
.coming-soon .content #countdown ul li span {
    display: block;
    color: var(--primary);
    font-family: var(--font_marcellus);
    line-height: 1;
    font-size: 31px;
}



/* # Home 9 */
.home9-page #multiscroll .hero-content .subtitle {
    margin-bottom: 13px;
}
.home9-page #multiscroll .hero-content .title {
    font-size: 54px;
    line-height: 54.7px;
    max-width: 524px;
    width: 100%;
}
.home9-page #multiscroll .ms-left .hero-content {
    padding-left: 66px;
    padding-top: 78px;
}
.home9-page #multiscroll .hero-content p {
    font-size: 14px;
    line-height: 26.6px;
    max-width: 363px;
    width: 100%;
}
.home9-page #multiscroll .hero-img {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.home9-page #multiscroll .hero-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.home9-page #multiscroll .hero-img img {
    animation: zoomInAnim 35s infinite linear;
}
.home9-page #multiscroll .ms-right .hero-content {
    padding-top: 78px;
}
.home9-page #multiscroll .ms-right .right-content {
    padding-left: 170px;
}
.home9-page #multiscroll .ms-right .right-content .p {
    margin-bottom: 32px;
}
.home9-page #multiscroll .ms-left .service3-items {
    padding: 78px 101px 0 66px;
}
.home9-page #multiscroll .ms-right .hero-content .title {
    font-size: 34px;
    line-height: 41.4px;
}
.home9-page #multiscroll .ms-right .right-content .title {
    max-width: 482px;
}
.home9-page #multiscroll .ms-right .hero-content ul {
    margin-bottom: 25px;
}
.home9-page #multiscroll .ms-right .hero-content ul li {
    font-size: 14px;
    display: block;
    line-height: 31.3px;
    position: relative;
    padding-left: 13px;
}
.home9-page #multiscroll .ms-right .hero-content ul li:before {
    content: '';
    width: 2px;
    height: 2px;
    border-radius: 50%;
    background: var(--dark);
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -1px;
}
.home9-page #multiscroll .ms-right .service-consulting {
    padding-left: 170px;
}
.home9-page #multiscroll .ms-left .faq-list .faq-item {
    border-bottom-color: rgb(18 38 32 / 20%);
    transition: .5s;
}
.home9-page #multiscroll .ms-left .faq-list .faq-item:hover {
    border-bottom-color: rgb(18 38 32 / 100%);
}
.home9-page #multiscroll .ms-left .faq-list {
    max-width: 533px;
    width: 100%;
    margin-top: 48px;
}
.home9-page #multiscroll .ms-left .faq-list .faq-item .accordion-header button {
    color: var(--dark);
}
.home9-page #multiscroll .ms-left .faq-list .faq-item .accordion-header button[aria-expanded=true] {
    color: var(--primary);
}
.home9-page #multiscroll .ms-left .faq-list .faq-item .accordion-body p{
    max-width: 100%;
}
.home9-page #multiscroll .ms-left .hero-content-faq p {
    margin-bottom: 0;
}
.home9-page #multiscroll .ms-left .hero-content-faq .title {
    margin-bottom: 22px;
    font-size: 34px;
    line-height: 41.41px;
    max-width: 264px;
}
.home9-page #multiscroll .ms-left .faq-list .faq-item .accordion-body p {
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 26.6px;
}
.home9-page #multiscroll .ms-right .contact-form-content {
    padding: 0 135px;
}
.home9-page #multiscroll .ms-right .contact-form-content .input-group {
    margin-bottom: 26px;
}
.home9-page #multiscroll .ms-right .contact-form-content .input-group:last-child {
    margin-bottom: 0;
    margin-top: 39px;
}
.home9-page #multiscroll .ms-right .contact-form-content .subtitle {
    margin-bottom: 14px;
    line-height: 1;
}
.home9-page #multiscroll .ms-right .contact-form-content .title {
    margin-bottom: 37px;
}



/* # Newsletter */
.newsletter-area {
    background-color: var(--bg2);
    background-image: url(../imgs/newsletter-bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    padding: 41px 0;
    position: relative;
}
.newsletter-area .shape {
    display: block;
    position: absolute;
    left: 18px;
    top: 18px;
    pointer-events: none;
}
.newsletter-area .custom-container {
    max-width: 1246px;
}
.newsletter-area .custom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.newsletter-area .title {
    line-height: 1;
    margin: 0;
    font-size: 31px;
}
.newsletter-area form {
    max-width: 507px;
    width: 100%;
}
.newsletter-area form input {
    border-bottom: 1px solid rgb(18 38 32 / 50%);
}
.newsletter-area form input::placeholder {
    color: var(--dark);
}
.newsletter-area form .input-group {
    position: relative;
}
.newsletter-area form .input-group button {
    border: none;
    position: absolute;
    right: 0;
    top: 50%;
    padding: 0;
    margin: -7px 0 0 0;
    border: none;
    background: none;
    box-shadow: none;
    cursor: pointer;
}
.newsletter-area form .input-group button span {
    display: block;
}
/* # Newsletter 2 */
.newsletter2-area {
    background: none;
    padding: 0;
}
.newsletter2-area .custom-container {
    max-width: 1306px;
    background-color: var(--bg1);
    background-image: url(../imgs/newsletter-bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 45px 104px 40px 111px;
    position: relative;
    z-index: 1;
}
.newsletter2-area .border-gradient-shape {
    height: calc(100% - 38px);
}
.newsletter2-area .border-gradient-shape::before {
    background: linear-gradient(-90deg, transparent 60%, var(--primary));
}
.newsletter2-area .border-gradient-shape::after {
    right: auto;
    left: 0;
}
.newsletter2-area .title {
    color: var(--heading);
    font-size: 31px;
    line-height: 1;
    margin: 0;
}
.newsletter2-area form input {
    color: var(--heading);
    border-color: rgba(255,255,255,0.5);
}
.newsletter2-area form input::placeholder {
    color: var(--heading);
}
.newsletter2-area form button i {
    color: var(--heading);
}





/* # Footer */
.demo-footer-area,
.footer-area {
    background-color: var(--bg1);
    background-image: url(../imgs/footer-bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    z-index: 1;
    overflow: hidden;
    padding: 100px 0 0;
}
.footer-area .border-gradient-shape {
    top: auto;
    bottom: 19px;
}
.footer-area .border-gradient-shape::before {
    top: auto;
    bottom: 19px;
}
.footer-area .border-gradient-shape::after {
    background: linear-gradient(180deg, transparent 20%, var(--primary));
    bottom: 19px;
    top: auto;
}
.footer-area .shape {
    position: absolute;
    z-index: -1;
    right: 27px;
    bottom: 40px;
    display: block;
    max-width: calc(100% - 17px);
    height: calc(100% - 40px);
}
.footer-area .custom-container {
    max-width: 1087px;
}
.footer-area .custom-row {
    display: flex;
    align-items: flex-start;
    gap: 197px;
}
.footer-area .footer-left {
    max-width: 245px;
    width: 100%;
    flex: none;
}
.social-icons {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 30px;
}
.social-icons li a{
    display: block;
    color: var(--primary);
    width: 46px;
    height: 46px;
    text-align: center;
    line-height: 46px;
    border: 1px solid rgba(255,255,255,0.1);
    font-size: 22px;
    transition: .5s;
}
.social-icons li a:hover {
    border-color: var(--primary);
}
.footer-area .footer-left .logo {
    display: block;
    margin-bottom: 23px;
}
.footer-area .footer-left .logo img {
    display: block;
    max-width: 167px;
}
.footer-widget p {
    font-size: 12px;
    line-height: 23.4px;
    margin: 0;
    color: var(--heading);
    opacity: 0.7;
}
.footer-area .right {
    width: 100%;
    position: relative;
    z-index: 1;
}
.footer-area .right::before {
    content: '';
    position: absolute;
    left: -102px;
    top: 0;
    height: calc(100% - 20px);
    background: rgb(211 177 132 / 30%);
    width: 1px;
}
.footer-area .footer-links {
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    border-bottom: 1px solid rgb(211 177 132 / 30%);
    padding-bottom: 46px;
}
.footer-area .footer-links .footer-widget:last-child {
    min-width: 90px;
}
.footer-area .footer-contact-infos .footer-widget:last-child {
    min-width: auto;
}
.footer-widget h3 {
    color: var(--heading);
    text-transform: uppercase;
    font-weight: 600;
    font-size: 10px;
    letter-spacing: 3.91px;
    line-height: 1;
    margin: 0 0 27px;
}
.footer-widget-link {
    min-width: 137px;
}
.footer-widget-link ul li {
    display: block;
    font-size: 12px;
    line-height: 1;
    margin-bottom: 20px;
    color: rgba(255,255,255,0.7);
}
.footer-widget-link ul li:last-child {
    margin-bottom: 0;
}
.footer-widget-link ul li a {
    color: rgba(255,255,255,0.7);
    display: block;
    transition: .4s;
}
.footer-widget-link ul li a:hover {
    color: var(--heading);
}

.footer-contact-infos {
    padding-top: 50px;
    display: flex;
    justify-content: space-between;
}
.copyright-area {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 90px 0 10px 0;
}
.copyright-area p {
    font-size: 11px;
    line-height: 1;
    margin: 0;
    color: rgba(255,255,255,0.9);
}
.copyright-area p a {
    color: rgba(255,255,255,0.9);
    transition: .5s;
}
.copyright-area p a:hover {
    color: var(--primary);
}
.copyright-area .footer-credit {
    color: rgba(255,255,255,0.78);
    letter-spacing: .04em;
}
.copyright-area .footer-credit span {
    color: #d3b184;
    font-weight: 600;
}

/* Careers call-to-action link: use the brand's warm brown instead of the
   browser-default blue while retaining a clear interactive treatment. */
.page-id-5870 .right-content a {
    color: #9b6a28;
    font-weight: 500;
    text-decoration-color: rgb(155 106 40 / 45%);
    text-underline-offset: 3px;
    transition: color .25s ease, text-decoration-color .25s ease;
}

.page-id-5870 .right-content a:hover,
.page-id-5870 .right-content a:focus {
    color: #061d38;
    text-decoration-color: #d3b184;
}

.copyright-area ul {
    display: flex;
    align-items: center;
    gap: 27px;
}
.copyright-area ul li a {
    font-size: 11px;
    color: rgba(255,255,255,0.8);
    font-weight: 300;
    transition: .5s;
}
.copyright-area ul li:hover a {
    color: var(--heading);
}


.demo-footer-area {
    padding: 0;
    position: relative;
    overflow: hidden;
}
.demo-footer-area .footer-right-imgs {
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    align-items: flex-end;
}
.demo-footer-area .footer-right-imgs img {
    display: block;
}
.demo-footer-area .footer-right-imgs img:first-child {
    box-shadow: 0px 3.125px 3.125px 0px #00000040;
    z-index: 2;
    margin-right: -206px;
}
.demo-footer-area .custom-container {
    padding: 0 0 0 83px;
}
.demo-footer-area .left {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
}
.demo-footer-area .border-gradient-shape {
    width: 50%;
    height: calc(100% - 38px);
    left: 19px;
    right: auto;
    top: auto;
    bottom: 32px;
}
.demo-footer-area .border-gradient-shape::before {
    background: linear-gradient(-90deg, transparent 20%, var(--primary));
    top: auto;
    bottom: 0;
}
.demo-footer-area .border-gradient-shape::after {
    right: auto;
    left: 0;
    background: linear-gradient(180deg, transparent 20%, var(--primary));
}
.demo-footer-area .content {
    padding-bottom: 153px;
    padding-top: 184px;
    position: relative;
    z-index: 4;
}
.demo-footer-area .content .title {
    color: var(--heading);
    font-size: 39px;
    line-height: 46.88px;
}
.demo-footer-area .content .title span {
    color: var(--primary);
}
.demo-footer-area .content p {
    font-size: 14px;
    line-height: 26.56px;
    color: var(--heading);
}
.demo-footer-area .content .theme-btn {
    color: var(--heading);
}
.demo-footer-area .content .theme-btn span {
    border-color: var(--heading);
}
.demo-footer-area .content .theme-btn span::after,
.demo-footer-area .content .theme-btn span::before,
.demo-footer-area .content .theme-btn::before,
.demo-footer-area .content .theme-btn::after {
    background: #ffffff;
}
.demo-footer-area .copyright {
    color: rgba(255,255,255,0.8);
    margin: 0;
    font-size: 11px;
    line-height: 1;
    padding-bottom: 10px;
}
.demo-footer-area .copyright p {
    margin: 0;
}
.demo-footer-area .copyright a {
    color: rgba(255,255,255,0.8);
    transition: .5s;
}
.demo-footer-area .copyright a:hover {
    color: var(--primary);
}

/* # Footer 2 */
.footer2-area {
    background-color: var(--bg2);
}
.footer2-area .footer-widget-link ul li,
.footer2-area .footer-widget p {
    color: var(--dark);
    opacity: 0.7;
}
.footer2-area .social-icons li a {
    border: 1px solid rgb(18 38 32 / 10%);
}
.footer2-area .social-icons li a:hover {
    background: var(--primary);
    color: var(--heading);
    border-color: var(--primary);
}
.footer2-area .copyright-wrap .copyright-area {
    padding-top: 10px;
    margin-top: 80px;
}
.footer2-area .footer-widget-link ul li a,
.footer2-area .footer-widget h3 {
    color: var(--dark);
}
.footer2-area .footer-widget-link ul li {
    opacity: 1;
}
.footer2-area .copyright-area p {
    opacity: 1;
    color: var(--dark);
}
.footer2-area .copyright-area p a {
    color: var(--dark);
}
.footer2-area .copyright-area ul li a {
    color: var(--dark);
}
.footer2-area .copyright-area p a:hover,
.footer2-area .copyright-area ul li a:hover,
.footer2-area .footer-widget-link ul li a:hover {
    color: var(--primary);
}


/* Additional CSS */

/* .menu-blog-menu-container .dropdown-menu {
    position: absolute;
    display:block;
    z-index: 1000;
    opacity: 0;
    min-width: 10rem;
    padding: 0px;
    margin: 0;
    font-size: 1rem;
    color: #212529;
    text-align: center;
    list-style: none;
    background-color: #323232;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, .15);
    border-radius: 0.25rem;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.35s ease-in-out;
}

.menu-blog-menu-container li.dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
} */

.header-wrap .menu-blog-menu-container .menu .dropdown li a {
    font-size: 14px;
    padding:10px 15px;
    color: #fff !important;
}

.breadcrumb-area .content h1 {
    font-size: 54px;
    display: block;
    font-family: var(--font_marcellus);
    color: var(--heading);
    margin-top: 24px;
}
.error-page-area h1,
.error-page-area h2 {
    font-family: var(--font_marcellus);
}
select.country-select,
.select-timezone p{
    margin-bottom: 0px;
}

.service-single-page .service-area
{
    padding: 50px 0 100px;
}
.service-single-page .service-area .section-header{
    margin-bottom: 50px;
}
.service-single-page .service-box .service-img {
    height: auto;
    aspect-ratio: 16 / 10;
}
.service-single-page .service-box .service-img img {
    width: 100%;
    height: 100%;
    max-height: none;
    object-fit: cover;
}

.practice-page-breadcrumb {
    border-top: 1px solid rgb(18 38 32 / 16%);
    border-bottom: 1px solid rgb(18 38 32 / 12%);
    background: #fff;
    padding: 26px 0;
}

.practice-page-breadcrumb .custom-container {
    max-width: 1440px;
    padding-left: 32px;
    padding-right: 32px;
}

.practice-page-breadcrumb ul {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 0;
}

.practice-page-breadcrumb li {
    display: block;
    margin: 0;
    color: var(--dark);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .16em;
    line-height: 1.4;
    text-transform: uppercase;
}

.practice-page-breadcrumb a {
    color: var(--dark);
    text-decoration: none;
}

.practice-page-breadcrumb a:hover,
.practice-page-breadcrumb li:last-child {
    color: var(--primary);
}

.practice-page-breadcrumb .seperate {
    width: 24px;
    height: 1px;
    background: var(--primary);
    display: block;
}

.about-firm-page,
.practice-area-page {
    background: #fff;
}

/* .custom-container is capped at 1440px but carries no horizontal padding (its
   padding declaration near the top of this file is commented out), so on any
   viewport below that cap the hand-authored pages ran text flush to the screen
   edge. Scoped to these two shells rather than fixed globally, because the
   Elementor-built pages lay out around the unpadded container. */
.about-page .custom-container,
.practice-areas-page-shell .custom-container {
    padding-left: 32px;
    padding-right: 32px;
    box-sizing: border-box;
}

.about-firm-page {
    padding: 78px 0 88px;
    border-top: 1px solid rgb(18 38 32 / 18%);
}

.about-firm-kicker,
.practice-area-kicker {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 30px;
    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .28em;
    line-height: 1.4;
    text-transform: uppercase;
}

.about-firm-kicker span,
.practice-area-kicker span {
    width: 38px;
    height: 1px;
    background: currentColor;
    flex: 0 0 auto;
}

.about-firm-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
    gap: 56px;
    align-items: start;
}

.about-firm-grid h1,
.practice-area-head h1 {
    margin: 0 0 24px;
    color: var(--dark);
    font-size: clamp(38px, 5vw, 76px);
    line-height: 1.04;
    font-weight: 500;
    letter-spacing: 0;
}

.about-firm-grid p,
.practice-area-head p {
    max-width: 840px;
    margin: 0 0 18px;
    color: rgb(18 38 32 / 82%);
    font-size: 19px;
    line-height: 1.75;
}

.about-firm-media {
    display: grid;
    grid-template-columns: 1fr .74fr;
    gap: 18px;
    align-items: end;
}

.about-firm-media img,
.practice-area-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 260px;
    object-fit: cover;
}

.about-firm-media img:first-child {
    aspect-ratio: 4 / 5;
}

.about-firm-media img:last-child {
    aspect-ratio: 3 / 4;
    margin-bottom: 44px;
}

/* Side by side, the media column is shorter than the copy column and leaves a
   band of dead space on the right. Let it stretch to the row height instead;
   the offset on the second image keeps the staggered look. */
@media (min-width: 992px) {
    .about-firm-media {
        align-self: stretch;
        align-items: stretch;
        grid-auto-rows: 1fr;
    }

    .about-firm-media img:first-child,
    .about-firm-media img:last-child {
        aspect-ratio: auto;
        height: 100%;
    }
}

/* The About page media grid is published with the founder portrait alone, and
   the rules below cover that. The two- and three-image variants are kept
   because the page content lives in the database and reaches production
   separately from this stylesheet - until the content patch is run, live is
   still serving one of the older shapes, and all of them have to render
   properly in the meantime. Each variant is scoped with :has() so it only
   applies to the markup it was written for.

   One image: it fills the whole media column. With a single child the base
   rules make it both :first-child and :last-child, so it picks up the 44px
   stagger offset intended for the second of a pair - that has to be cleared,
   and the empty second column collapsed. */
.about-firm-media:has(img:only-child) {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
}

.about-firm-media:has(img:only-child) img {
    aspect-ratio: 3 / 4;
    margin-bottom: 0;
}

@media (min-width: 992px) {
    /* This override is not redundant with the base :first-child/:last-child
       rule below: :has() carries its argument's specificity, so the selector
       above outranks it and would otherwise pin the portrait to 3/4 instead of
       letting it fill the row. */
    .about-firm-media:has(img:only-child) img {
        aspect-ratio: auto;
        height: 100%;
    }
}

/* Three images: the portrait holds the full-height left column and the two
   office photos stack beside it. The two-image stagger does not survive a third
   image - the offset on the last one leaves it hanging. */
.about-firm-media:has(img:nth-child(3)) {
    grid-template-rows: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}

.about-firm-media:has(img:nth-child(3)) img:first-child {
    grid-row: 1 / span 2;
    aspect-ratio: 3 / 4;
}

.about-firm-media:has(img:nth-child(3)) img:nth-child(2),
.about-firm-media:has(img:nth-child(3)) img:nth-child(3) {
    aspect-ratio: 4 / 3;
    /* The 260px floor is sized for one tall image per column. Two stacked in
       the narrow column would push the media block far past the copy beside it. */
    min-height: 0;
    margin-bottom: 0;
}

@media (min-width: 992px) {
    /* Let all three fill their tracks, so the stacked pair lines up exactly
       with the top and bottom of the portrait. */
    .about-firm-media:has(img:nth-child(3)) img {
        aspect-ratio: auto;
        height: 100%;
    }
}

@media (max-width: 991px) {
    /* One column on phones: the portrait must stop spanning two rows, or it
       reserves an empty track underneath itself. */
    .about-firm-media:has(img:nth-child(3)) {
        grid-template-rows: none;
    }

    .about-firm-media:has(img:nth-child(3)) img:first-child {
        grid-row: auto;
    }
}

/* Spans both grid columns as its own row. Kept inside the left text column it
   left the media column empty for the full height of the panel. */
.about-firm-panel {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 44px;
    margin-top: 6px;
    border: 1px solid rgb(211 177 132 / 55%);
    padding: 32px 34px 34px;
    background: #fff;
}

.about-firm-panel h3 {
    grid-column: 1 / -1;
    margin: 0 0 22px;
    color: var(--dark);
    font-size: 24px;
    font-weight: 500;
}

.about-firm-panel a,
.practice-area-card {
    color: var(--dark);
    text-decoration: none;
}

.about-firm-panel a {
    display: block;
    padding: 15px 0;
    border-top: 1px solid rgb(18 38 32 / 12%);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .14em;
    line-height: 1.45;
    text-transform: uppercase;
}

.about-firm-panel a:hover,
.practice-area-card:hover h3 {
    color: var(--primary);
}

.practice-area-page {
    padding: 70px 0 88px;
}

.practice-area-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: 42px;
    align-items: end;
    margin-bottom: 54px;
}

.practice-area-image {
    aspect-ratio: 4 / 3;
    overflow: hidden;
}

.practice-area-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.practice-area-card {
    display: grid;
    grid-template-rows: 280px 1fr;
    /* Pin the single implicit column to the card width. Without this, the auto
       column sizes to the <img>'s intrinsic width (~600px), overflowing the card;
       overflow: hidden then clips the text in the content row. */
    grid-template-columns: minmax(0, 1fr);
    border: 1px solid rgb(18 38 32 / 14%);
    background: #fff;
    overflow: hidden;
    transition: border-color .25s ease, transform .25s ease;
}

.practice-area-card img,
.practice-area-card-content {
    min-width: 0;
    max-width: 100%;
}

.practice-area-card:hover {
    border-color: rgb(211 177 132 / 85%);
    transform: translateY(-3px);
}

.practice-area-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.practice-area-card:hover img {
    transform: scale(1.04);
}

.practice-area-card-content {
    min-height: 168px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 24px 24px 26px;
}

.practice-area-card span {
    color: var(--primary);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .18em;
}

.practice-area-card h3 {
    margin: 28px 0 0;
    color: var(--dark);
    font-size: 20px;
    line-height: 1.35;
    font-weight: 500;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.practice-area-card p {
    margin: 16px 0 0;
    color: rgb(18 38 32 / 72%);
    font-size: 15px;
    line-height: 1.65;
}

.practice-experience-band {
    background: var(--bg2);
    padding: 84px 0;
}

.practice-experience-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 56px;
    align-items: center;
}

.practice-experience-media {
    display: grid;
    grid-template-columns: 1fr .72fr;
    gap: 18px;
    align-items: end;
}

.practice-experience-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.practice-experience-media img:first-child {
    aspect-ratio: 4 / 5;
}

.practice-experience-media img:last-child {
    aspect-ratio: 3 / 4;
    margin-bottom: 44px;
}

.practice-section-title {
    margin: 0 0 24px;
    color: var(--dark);
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1.08;
    font-weight: 500;
    letter-spacing: 0;
}

.practice-section-text {
    margin: 0 0 28px;
    color: rgb(18 38 32 / 78%);
    font-size: 18px;
    line-height: 1.75;
}

.practice-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border: 1px solid rgb(18 38 32 / 14%);
    background: #fff;
}

.practice-stat {
    padding: 28px;
    border-right: 1px solid rgb(18 38 32 / 10%);
    border-bottom: 1px solid rgb(18 38 32 / 10%);
}

.practice-stat:nth-child(2n) {
    border-right: 0;
}

.practice-stat:nth-last-child(-n + 2) {
    border-bottom: 0;
}

/* An odd final stat (the fifth) would otherwise leave a half-empty cell, so it
   spans the full width. Its neighbour then needs its bottom rule back, because
   it is no longer on the last row. */
.practice-stat:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 0;
}

.practice-stat:nth-child(even):nth-last-child(2) {
    border-bottom: 1px solid rgb(18 38 32 / 10%);
}

.practice-stat strong {
    display: block;
    color: var(--dark);
    font-family: var(--font_marcellus);
    font-size: 46px;
    line-height: 1;
    font-weight: 400;
}

.practice-stat span {
    display: block;
    margin-top: 10px;
    color: rgb(18 38 32 / 72%);
    font-size: 14px;
    line-height: 1.55;
}

.practice-detail-band {
    padding: 88px 0;
    background: #fff;
}

.practice-detail-layout {
    display: grid;
    grid-template-columns: minmax(280px, .78fr) minmax(0, 1.22fr);
    gap: 54px;
    align-items: start;
}

.practice-detail-panel {
    border: 1px solid rgb(211 177 132 / 55%);
    padding: 34px;
    background: #fff;
}

.practice-detail-panel img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
    margin-bottom: 28px;
}

.practice-detail-panel h3 {
    margin: 0 0 16px;
    color: var(--dark);
    font-size: 27px;
    font-weight: 500;
}

.practice-detail-panel p {
    margin: 0;
    color: rgb(18 38 32 / 72%);
    font-size: 16px;
    line-height: 1.7;
}

.practice-coverage-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.practice-coverage-item {
    border-top: 1px solid rgb(18 38 32 / 14%);
    padding-top: 22px;
}

.practice-coverage-item span {
    color: var(--primary);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .18em;
}

.practice-coverage-item h3 {
    margin: 18px 0 10px;
    color: var(--dark);
    font-size: 22px;
    font-weight: 500;
    line-height: 1.3;
}

.practice-coverage-item p {
    margin: 0;
    color: rgb(18 38 32 / 72%);
    font-size: 15px;
    line-height: 1.7;
}

.practice-process-band {
    padding: 86px 0;
    background: var(--dark);
    color: var(--heading);
}

.practice-process-band .practice-area-kicker,
.practice-process-band .practice-section-title {
    color: var(--heading);
}

.practice-process-band .practice-section-text {
    color: rgb(255 255 255 / 74%);
}

.practice-process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    background: rgb(255 255 255 / 18%);
    margin-top: 42px;
}

.practice-process-step {
    background: var(--dark);
    padding: 30px;
    min-height: 220px;
}

.practice-process-step span {
    color: var(--primary);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .18em;
}

.practice-process-step h3 {
    margin: 24px 0 14px;
    color: var(--heading);
    font-size: 22px;
    line-height: 1.3;
    font-weight: 500;
}

.practice-process-step p {
    margin: 0;
    color: rgb(255 255 255 / 72%);
    font-size: 15px;
    line-height: 1.65;
}

.practice-cta-band {
    padding: 84px 0;
    background: var(--bg2);
}

.practice-cta-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 36px;
    align-items: center;
    border: 1px solid rgb(18 38 32 / 14%);
    background: #fff;
    padding: 42px;
}

.practice-cta-inner h2 {
    margin: 0 0 12px;
    color: var(--dark);
    font-size: clamp(30px, 4vw, 52px);
    line-height: 1.08;
    font-weight: 500;
}

.practice-cta-inner p {
    margin: 0;
    max-width: 760px;
    color: rgb(18 38 32 / 72%);
    font-size: 17px;
    line-height: 1.7;
}

.practice-cta-inner .theme-btn {
    white-space: nowrap;
}

/* # About page: vision & mission, team and client sections */
.about-vm-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
    margin-top: 34px;
}

.about-vm-card {
    border: 1px solid rgb(211 177 132 / 55%);
    background: #fff;
    padding: 28px;
}

.about-vm-card h3 {
    margin: 0 0 14px;
    color: var(--primary);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.about-vm-card p {
    margin: 0;
    color: rgb(18 38 32 / 78%);
    font-size: 17px;
    line-height: 1.7;
}

.about-reasons-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px 34px;
    margin-top: 44px;
}

.about-founder-band {
    padding: 90px 0;
    background: #fff;
    border-top: 1px solid rgb(18 38 32 / 12%);
}

.about-founder-grid {
    display: grid;
    grid-template-columns: minmax(280px, .85fr) minmax(0, 1.15fr);
    gap: 56px;
    align-items: start;
}

.about-founder-media {
    position: relative;
}

.about-founder-media img {
    display: block;
    width: 100%;
    height: 460px;
    object-fit: cover;
}

/* Match the portrait to the height of the bio beside it so the column doesn't
   trail off into empty space. */
@media (min-width: 992px) {
    .about-founder-media {
        align-self: stretch;
    }

    .about-founder-media img {
        height: 100%;
        min-height: 460px;
    }
}

.about-founder-badge {
    position: absolute;
    right: -18px;
    bottom: -18px;
    padding: 22px 26px;
    background: var(--primary);
    color: var(--dark);
    max-width: 190px;
}

.about-founder-badge strong {
    display: block;
    /* The theme colours <strong> with --primary, which is this badge's own background. */
    color: var(--dark);
    font-size: 40px;
    line-height: 1;
    font-weight: 500;
}

.about-founder-badge span {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.about-founder-creds {
    margin: -8px 0 22px;
    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.about-founder-list {
    margin: 30px 0 34px;
    padding: 0;
    list-style: none;
}

.about-founder-list li {
    position: relative;
    padding: 0 0 14px 28px;
    color: rgb(18 38 32 / 78%);
    font-size: 16px;
    line-height: 1.65;
}

.about-founder-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--primary);
}

.about-founder-list strong {
    color: var(--dark);
    font-weight: 600;
}

.about-team-band {
    padding: 84px 0;
    background: #fff;
    border-top: 1px solid rgb(18 38 32 / 12%);
}

/* Flex rather than grid: the team is 5 people, so a 3-up grid leaves an empty
   cell on the right of the last row. Wrapping flex items centre instead. */
.about-team-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    margin-top: 44px;
}

.about-team-card {
    flex: 0 1 calc((100% - 60px) / 3);
    max-width: calc((100% - 60px) / 3);
    display: block;
    border: 1px solid rgb(18 38 32 / 14%);
    background: #fff;
    text-decoration: none;
    overflow: hidden;
    transition: .4s;
}

.about-team-card:hover {
    border-color: rgb(211 177 132 / 75%);
    box-shadow: 0 18px 40px rgb(18 38 32 / 10%);
}

.about-team-card img {
    display: block;
    width: 100%;
    height: 230px;
    /* Team cards carry a monogram mark, not a photo. */
    object-fit: cover;
    background: #122620;
    transition: .6s;
}

.about-team-card:hover img {
    transform: scale(1.03);
}

.about-team-card-body {
    padding: 26px 24px 30px;
}

.about-team-card-body h3 {
    margin: 0 0 6px;
    color: var(--dark);
    font-size: 22px;
    font-weight: 500;
    line-height: 1.25;
}

.about-team-card-body span {
    display: block;
    margin-bottom: 14px;
    color: var(--primary);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.about-team-card-body p {
    margin: 0;
    color: rgb(18 38 32 / 72%);
    font-size: 16px;
    line-height: 1.65;
}

.about-clients-band {
    padding: 84px 0;
    background: var(--bg2);
}

.about-clients-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin: 44px 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgb(18 38 32 / 14%);
    border-left: 1px solid rgb(18 38 32 / 14%);
}

.about-clients-grid li {
    padding: 24px 26px;
    border-right: 1px solid rgb(18 38 32 / 14%);
    border-bottom: 1px solid rgb(18 38 32 / 14%);
    background: #fff;
    color: var(--dark);
    font-size: 17px;
    font-weight: 500;
    line-height: 1.5;
}

/* Homepage client logo ticker. */
.hka-client-ticker {
    --ticker-gap: 24px;
    width: 100%;
    margin-top: 44px;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to right, transparent, #000 5%, #000 95%, transparent);
    mask-image: linear-gradient(to right, transparent, #000 5%, #000 95%, transparent);
}

.hka-client-ticker__track {
    display: flex;
    width: max-content;
    will-change: transform;
    animation: hka-client-ticker-scroll 28s linear infinite;
}

.hka-client-ticker__group {
    display: flex;
    flex: none;
    align-items: stretch;
    gap: var(--ticker-gap);
    margin: 0;
    padding: 0 var(--ticker-gap) 0 0;
    list-style: none;
}

.hka-client-logo {
    display: flex;
    width: 240px;
    min-height: 174px;
    padding: 22px 20px 18px;
    flex: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    border: 1px solid rgb(18 38 32 / 12%);
    border-radius: 4px;
    background: #fff;
    box-shadow: 0 12px 32px rgb(18 38 32 / 6%);
    text-align: center;
}

.hka-client-logo img {
    display: block;
    width: auto;
    max-width: 180px;
    height: 82px;
    object-fit: contain;
}

.hka-client-logo span {
    color: var(--dark);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
}

.hka-client-ticker:focus-within .hka-client-ticker__track {
    animation-play-state: paused;
}

@keyframes hka-client-ticker-scroll {
    to {
        transform: translate3d(-50%, 0, 0);
    }
}

/* Elementor's footer template wrapper must not create a white gutter. */
[data-elementor-id="4163"],
[data-elementor-id="4163"] > .e-con,
[data-elementor-id="4163"] > .elementor-element {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Keep the shared footer flush with the page and inside the viewport. Elementor
   may restore a 20px widget gap or a full-width container offset after its CSS
   cache is regenerated, which produced the white strip and horizontal bar on
   the live site. */
html,
body {
    max-width: 100% !important;
    overflow-x: clip !important;
}

body {
    margin: 0 !important;
}

[data-elementor-id="4163"],
[data-elementor-id="4163"] > .e-con,
[data-elementor-id="4163"] .elementor-widget-mainhomefooter,
[data-elementor-id="4163"] .elementor-widget-container,
[data-elementor-id="4163"] .footer-area {
    width: 100% !important;
    max-width: 100% !important;
    margin-block: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0;
    box-sizing: border-box;
}

[data-elementor-id="4163"] > .e-con {
    --gap: 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    gap: 0 !important;
    padding: 0 !important;
}

[data-elementor-id="4163"] .footer-area {
    padding-top: 100px;
}

main,
main > :last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 767px) {
    .hka-client-ticker {
        --ticker-gap: 14px;
        margin-top: 30px;
    }

    .hka-client-logo {
        width: 190px;
        min-height: 150px;
        padding: 18px 16px 14px;
    }

    .hka-client-logo img {
        max-width: 150px;
        height: 68px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hka-client-ticker {
        overflow-x: auto;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .hka-client-ticker__track {
        animation: none;
    }

    .hka-client-ticker__group[aria-hidden="true"] {
        display: none;
    }
}

@media (max-width: 1199px) {
    .about-reasons-list,
    .about-clients-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-team-card {
        flex-basis: calc((100% - 30px) / 2);
        max-width: calc((100% - 30px) / 2);
    }

    /* 9 reasons over 2 columns leaves a single orphan; let it run full width. */
    .about-reasons-list .practice-coverage-item:last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 991px) {
    .about-founder-grid {
        grid-template-columns: 1fr;
        gap: 46px;
    }

    .about-founder-badge {
        right: 18px;
    }
}

@media (max-width: 767px) {
    .about-vm-grid,
    .about-reasons-list,
    .about-clients-grid {
        grid-template-columns: 1fr;
    }

    .about-team-card {
        flex-basis: 100%;
        max-width: 100%;
    }

    .about-founder-band,
    .about-team-band,
    .about-clients-band {
        padding: 54px 0;
    }

    .about-founder-media img {
        height: 320px;
    }
}

@media (max-width: 991px) {
    .about-firm-grid,
    .practice-area-head,
    .practice-area-grid,
    .practice-experience-grid,
    .practice-detail-layout,
    .practice-cta-inner {
        grid-template-columns: 1fr;
    }

    .practice-area-grid,
    .practice-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .about-firm-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 32px;
        margin-top: 0;
    }

    .practice-area-card {
        grid-template-rows: 240px 1fr;
    }
}

@media (max-width: 575px) {
    .about-firm-page,
    .practice-area-page {
        padding: 54px 0 64px;
    }

    .about-firm-kicker,
    .practice-area-kicker {
        letter-spacing: .16em;
    }

    .about-firm-media {
        grid-template-columns: 1fr;
    }

    .practice-experience-media,
    .practice-coverage-list,
    .practice-process-grid,
    .practice-stat-grid {
        grid-template-columns: 1fr;
    }

    /* Single full-width column on phones. Two columns leaves ~116px for text,
       too narrow for long uppercase terms like "COMPLIANCE" which then clip. */
    .practice-area-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .about-firm-media img:last-child {
        margin-bottom: 0;
    }

    .practice-experience-media img:last-child {
        margin-bottom: 0;
    }

    .about-firm-panel {
        grid-template-columns: 1fr;
        padding: 22px;
    }

    .practice-cta-inner,
    .practice-detail-panel {
        padding: 24px;
    }

    .practice-area-card {
        grid-template-rows: 220px 1fr;
    }
}

/* Shared phone-width safeguards for every public page. */
@media (max-width: 767px) {
    html,
    body {
        max-width: 100%;
        overflow-x: clip;
    }

    .header-bar-wrap {
        display: none;
    }

    .header-wrap .custom-container,
    .hero3-area .custom-container,
    .practice-page-breadcrumb .custom-container,
    .practice-area-page .custom-container,
    .about-firm-page .custom-container {
        width: 100%;
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
    }

    .header-wrap .right {
        min-width: 0;
        gap: 0;
    }

    .header-wrap .logo img {
        width: auto;
        max-width: 180px;
        height: auto;
    }

    .hero3-area .hero-banner-top,
    .hero3-area .hero-banner-top > .left,
    .hero3-area .hero-banner-top > .right,
    .practice-area-head,
    .about-firm-grid {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .hero3-area .hero-banner-top h1,
    .practice-area-head h1,
    .about-firm-grid h1,
    .practice-area-head p,
    .about-firm-grid p {
        max-width: 100%;
        overflow-wrap: break-word;
    }

    .hero3-area .quote-now-btn {
        width: auto;
        max-width: calc(100% - 20px);
        right: 0;
        box-sizing: border-box;
    }
}

/* Long-form legal and consultancy copy follows a clean Word-document rhythm.
   Component headings, controls and deliberately centred copy keep their own
   alignment while substantive paragraphs receive full justification. */
main p,
.elementor-location-single p,
.elementor-widget-text-editor p {
    text-align: justify;
    text-justify: inter-word;
    hyphens: auto;
}

main .text-center p,
main [style*="text-align: center"] p,
main .wpcf7 p,
main .about-team-card-body p,
main .team-slide-box .content p {
    text-align: inherit;
    hyphens: none;
}

main .about-team-card-body p,
main .team-slide-box .content p {
    text-align: left;
}

/* # Floating WhatsApp
   Fixed bottom-right chat shortcut. WhatsApp brand green keeps it instantly
   recognisable; the gold ring ties it back to the theme accent. */
.hka-whatsapp-float {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #25d366;
    box-shadow: 0 0 0 2px rgb(211 177 132 / 85%), 0 10px 26px rgb(18 38 32 / 30%);
    transition: transform .3s, box-shadow .3s;
}

.hka-whatsapp-float:hover,
.hka-whatsapp-float:focus-visible {
    transform: translateY(-4px);
    box-shadow: 0 0 0 2px #d3b184, 0 16px 32px rgb(18 38 32 / 38%);
}

.hka-whatsapp-float svg {
    width: 32px;
    height: 32px;
    fill: #fff;
    display: block;
}

@media (max-width: 767px) {
    .hka-whatsapp-float {
        right: 16px;
        bottom: 16px;
        width: 52px;
        height: 52px;
    }

    .hka-whatsapp-float svg {
        width: 28px;
        height: 28px;
    }
}

/* # Insights listing (blog index, archives, search)
   Card grid replacing the old full-width stacked posts. The first card runs the
   full width as a lead story. */
.blog-area .left {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px;
    align-items: stretch;
    min-width: 0;
}

.blog-area .left .pagi-area {
    grid-column: 1 / -1;
}

.insight-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #fff;
    border: 1px solid rgb(18 38 32 / 12%);
    box-shadow: 0 12px 30px rgb(18 38 32 / 6%);
    overflow: hidden;
    transition: transform .35s, box-shadow .35s, border-color .35s;
}

.insight-card:hover {
    transform: translateY(-6px);
    border-color: var(--primary);
    box-shadow: 0 22px 44px rgb(18 38 32 / 12%);
}

.insight-card-cover {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: var(--bg1);
}

.insight-card-cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s;
}

.insight-card:hover .insight-card-cover img {
    transform: scale(1.06);
}

/* No featured image: a monogram panel in the brand palette, framed in gold so
   the card still reads as deliberate rather than as a missing asset. */
.insight-card-cover.is-placeholder {
    display: grid;
    place-items: center;
    background:
        radial-gradient(120% 130% at 12% 0%, rgb(211 177 132 / 20%) 0%, transparent 58%),
        var(--bg1);
}

.insight-card-cover.is-placeholder::after {
    content: "";
    position: absolute;
    inset: 14px;
    border: 1px solid rgb(211 177 132 / 32%);
    pointer-events: none;
}

.insight-card-mark {
    font-family: var(--font_marcellus);
    font-size: 34px;
    font-weight: 500;
    letter-spacing: .24em;
    /* Offset the trailing letter-space so the wordmark reads optically centred. */
    text-indent: .24em;
    color: var(--primary);
}

.insight-card-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 14px;
    padding: 26px 28px 30px;
    min-width: 0;
}

.insight-card-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .16em;
    line-height: 1;
    text-transform: uppercase;
    color: rgb(18 38 32 / 60%);
}

.insight-card-cat a {
    position: relative;
    z-index: 2;
    color: var(--primary);
}

.insight-card-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgb(18 38 32 / 26%);
}

.insight-card-title {
    margin: 0;
    /* Same display serif the theme applies through .title, so the listing sits
       in the same type system as the rest of the site. */
    font-family: var(--font_marcellus);
    font-size: 24px;
    line-height: 1.26;
}

.insight-card-title a {
    position: relative;
    z-index: 2;
    color: var(--dark);
    transition: color .3s;
}

.insight-card:hover .insight-card-title a {
    color: #1c4a3c;
}

.insight-card-excerpt {
    margin: 0;
    font-size: 14px;
    line-height: 1.75;
    color: rgb(18 38 32 / 78%);
}

.insight-card-more {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: auto;
    padding-top: 4px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .2em;
    line-height: 1;
    text-transform: uppercase;
    color: var(--dark);
}

.insight-card-more i {
    color: var(--primary);
    transition: transform .3s;
}

.insight-card:hover .insight-card-more i {
    transform: translateX(5px);
}

.insight-card-link {
    position: absolute;
    inset: 0;
    z-index: 1;
}

/* Lead story */
.blog-area .left > .insight-card:first-child {
    grid-column: 1 / -1;
    flex-direction: row;
}

.blog-area .left > .insight-card:first-child .insight-card-cover {
    flex: 0 0 44%;
    aspect-ratio: auto;
    min-height: 330px;
}

.blog-area .left > .insight-card:first-child .insight-card-body {
    justify-content: center;
    gap: 18px;
    padding: 42px 46px;
}

.blog-area .left > .insight-card:first-child .insight-card-title {
    font-size: 34px;
    line-height: 1.16;
}

.blog-area .left > .insight-card:first-child .insight-card-excerpt {
    max-width: 62ch;
    font-size: 15px;
}

.blog-area .left > .insight-card:first-child .insight-card-mark {
    font-size: 46px;
}

/* Pagination */
.pagi-area {
    display: flex;
    justify-content: center;
    margin-top: 22px;
}

.pagi-area .pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.pagi-area .page-item {
    list-style: none;
}

.pagi-area .page-numbers {
    display: grid;
    place-items: center;
    min-width: 46px;
    height: 46px;
    padding: 0 14px;
    border: 1px solid rgb(18 38 32 / 14%);
    color: var(--dark);
    font-size: 14px;
    font-weight: 500;
    transition: .3s;
}

.pagi-area .page-numbers:hover,
.pagi-area .page-numbers.current {
    background: var(--bg1);
    border-color: var(--bg1);
    color: var(--primary);
}

.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

@media (max-width: 991px) {
    .blog-area .left {
        grid-template-columns: minmax(0, 1fr);
        gap: 26px;
    }

    .blog-area .left > .insight-card:first-child {
        flex-direction: column;
    }

    .blog-area .left > .insight-card:first-child .insight-card-cover {
        flex: none;
        aspect-ratio: 16 / 9;
        min-height: 0;
    }

    .blog-area .left > .insight-card:first-child .insight-card-body {
        padding: 26px 28px 30px;
    }

    .blog-area .left > .insight-card:first-child .insight-card-title {
        font-size: 26px;
    }
}

/* Practice-area card without a featured image: keeps the 280px media row and
   matches the monogram treatment used on the insights cards. */
.practice-area-card-fallback {
    display: grid;
    place-items: center;
    height: 100%;
    background:
        radial-gradient(120% 130% at 12% 0%, rgb(211 177 132 / 20%) 0%, transparent 58%),
        var(--bg1);
    color: var(--primary);
    font-family: var(--font_marcellus);
    font-size: 34px;
    font-weight: 500;
    letter-spacing: .24em;
    text-indent: .24em;
}

/* Practice-area detail labels: --primary (#d3b184) on the white detail panel
   measures 2.02:1 where WCAG AA wants 4.5:1, so "Scope", "Delivery" and the
   practice-area kicker were effectively invisible. #966515 is the theme's own
   dark gold (same value as the active mobile-menu item) at 5.04:1 on white.
   Colour and weight only - sizes and spacing are left as the theme has them. */
.service-detail-wrap .service-detail-content .content .subtitle,
.service-detail-wrap .service-detail-content .detail-list li .subtitle {
    color: #966515;
    font-weight: 600;
}

/* Homepage header ordering is handled by the mobile rule in responsive.css:
   below 767px .sidebar-icon is position:absolute, so flex `order` has no
   effect on where it renders. Nothing to set here. */

/* ------------------------------------------------------------------
   Site-wide typography system

   Legacy widgets assign body copy anywhere from 14px to 19px and sometimes
   inherit heading weights. These final rules normalize equivalent roles while
   preserving the visual hierarchy between labels, headings and paragraphs.
   ------------------------------------------------------------------ */
main p,
main p span,
main .elementor-widget-text-editor,
main .elementor-widget-text-editor p {
    font-family: var(--font_montserrat) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.72 !important;
    letter-spacing: 0 !important;
}

main p strong,
main p b {
    font-weight: 600 !important;
}

main .section-heading .title,
main .practice-section-title {
    font-family: var(--font_marcellus) !important;
    font-size: clamp(36px, 4vw, 54px) !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
}

main .section-heading .subtitle,
main .practice-area-kicker,
main .about-firm-kicker {
    font-family: var(--font_montserrat) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: .2em !important;
}

main .practice-area-card h3,
main .practice-coverage-item h3,
main .practice-process-step h3,
main .practice-detail-panel h3,
main .about-vm-card h3,
main .about-team-card-body h3 {
    font-family: var(--font_marcellus) !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
}

/* Every FAQ variant uses one question style, regardless of open/closed state
   or the page-specific accordion widget that rendered it. */
main .faq-list .faq-item .accordion-header button,
main .faq2-area .faq-list .faq-item .accordion-header button,
main .faq-area--questions-only .faq-list .faq-item .accordion-header button {
    font-family: var(--font_montserrat) !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    letter-spacing: 0 !important;
}

main .faq-list .faq-item .accordion-body p,
main .faq2-area .faq-list .faq-item .accordion-body p,
main .faq-area--questions-only .faq-list .faq-item .accordion-body p {
    font-family: var(--font_montserrat) !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.72 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 767px) {
    main p,
    main p span,
    main .elementor-widget-text-editor,
    main .elementor-widget-text-editor p {
        font-size: 16px !important;
        line-height: 1.68 !important;
    }

    main .section-heading .title,
    main .practice-section-title {
        font-size: clamp(30px, 9vw, 40px) !important;
    }

    main .faq-list .faq-item .accordion-header button,
    main .faq-list .faq-item .accordion-body p {
        font-size: 16px !important;
    }
}


/* ------------------------------------------------------------------
   Rich-text lists and subheadings inside widget content fields.

   The global reset at the top of this file strips list-style, margin
   and padding from every ul/ol, so a <ul> typed into an Elementor
   description field renders as bare unindented lines with no bullets
   and no spacing (the Careers page "Why Join Us" block). These classes
   restore the same gold-dot idiom used by .about-founder-list so
   editor-authored lists match the rest of the site.
   ------------------------------------------------------------------ */
.hka-list {
    margin: 18px 0 26px;
    padding: 0;
    list-style: none;
}

.hka-list li {
    position: relative;
    margin: 0;
    padding: 0 0 14px 28px;
    color: rgb(18 38 32 / 78%);
    font-size: 16px;
    line-height: 1.65;
}

.hka-list li:last-child {
    padding-bottom: 0;
}

.hka-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--primary);
}

.hka-list strong {
    color: var(--dark);
    font-weight: 600;
}

/* Section subheadings in the two bottom columns ("Career Opportunities",
   "How to Apply"). Without this they fall back to the bare <h3> default
   and sit too tight against the paragraph above. */
.hka-sub {
    margin: 32px 0 14px;
    color: var(--dark);
    font-size: 22px;
    font-weight: 600;
    line-height: 1.35;
}

.hka-sub:first-child {
    margin-top: 0;
}

@media (max-width: 767px) {
    .hka-list li {
        padding-left: 24px;
        font-size: 15px;
    }

    .hka-sub {
        font-size: 20px;
    }
}


/* ------------------------------------------------------------------
   Separate the newsletter card from the section above it.

   .newsletter2-area carries no padding of its own (the dark card is the
   inner .custom-container), so on the homepage its top edge landed on the
   exact pixel where the grey client-ticker band ended - measured gap 0.
   Match the 84px / 54px section rhythm that .about-clients-band already
   uses so the card reads as its own block.

   Top only: .faq2-area below already opens with 156px of padding, so a
   bottom margin here would double up.
   ------------------------------------------------------------------ */
.newsletter2-area {
    margin-top: 84px;
}

@media (max-width: 767px) {
    .newsletter2-area {
        margin-top: 54px;
    }
}
