/* ==========================================================================
   SKT Copywriter — Responsive  (Bold Editorial / Sharp-edge build)
   --------------------------------------------------------------------------
   Matches the redesigned style.css: ink + signal-yellow, 0 radius,
   hard borders, hard offset shadows.
   ========================================================================== */


/* ==========================================================================
   01. DESKTOP MENU SHOW / MOBILE TOGGLE HIDE  (1025px +)
   ========================================================================== */
@media screen and (min-width: 1025px) {
    .menu-toggle,
    .main-navigation .dropdown-toggle {
        display: none !important;
    }

    .site-navigation {
        align-items: center;
    }
    .site-navigation .primary-menu,
    .site-navigation .social-menu {
        position: static;
    }
    .site-navigation .menu li {
        position: relative;
        width: auto;
        left: unset;
    }
    .site-navigation .menu ul li:first-child {
        border-top: 0;
    }
    .site-navigation .menu a,
    .site-navigation .menu ul a,
    .site-navigation .menu ul ul a {
        padding: 14px 18px;
    }
    .site-navigation .menu ul {
        position: absolute;
        background-color: var(--sps-ink, #0a0a0a);
        text-align: left;
        top: 100%;
        left: -9999em;
        opacity: 0;
        visibility: hidden;
        border: var(--sps-border-w, 2px) solid var(--sps-ink, #0a0a0a);
        box-shadow: var(--sps-shadow, 6px 6px 0 #0a0a0a);
        transition: opacity .18s ease, visibility .18s ease;
    }
    .site-navigation .menu li:hover > ul,
    .site-navigation .menu li:focus-within > ul,
    .site-navigation .menu li.focus > ul {
        left: 0;
        opacity: 1;
        visibility: visible;
    }
    .site-navigation .menu ul li {
        position: relative;
        width: 230px;
    }
    .site-navigation .menu li li:hover > ul,
    .site-navigation .menu li li:focus-within > ul,
    .site-navigation .menu li li.focus > ul {
        top: 0;
        left: 100%;
    }
    .site-navigation .menu ul a:hover,
    .site-navigation .menu ul a:focus {
        color: var(--sps-ink, #0a0a0a);
        background-color: var(--sps-accent, #ffe600);
    }
    #topmenu {
        float: none;
    }
    .container.menuwrapper {
        background: transparent !important;
    }
    #menubar {
        border-top: 3px solid transparent !important;
    }
}


/* ==========================================================================
   02. MOBILE TOGGLE SHOW  (up to 1024px)
   ========================================================================== */
@media (max-width: 1024px) {
    .main-navigation button.menu-toggle {
        display: inline-flex !important;
        width: 46px;
        height: 46px;
        background: var(--sps-accent, #ffe600);
        border: var(--sps-border-w, 2px) solid var(--sps-ink, #0a0a0a);
        cursor: pointer;
        padding: 6px;
        position: absolute;
        top: 22px;
        right: 15px;
        z-index: 99999;
        margin: 0;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 5px;
    }

    .menu-toggle span {
        background: var(--sps-ink, #0a0a0a);
    }

    .main-navigation .dropdown-toggle {
        color: #ffffff;
    }

    /* Hide desktop "+" carets on mobile */
    .main-navigation li.menu-item-has-children > a::after,
    .main-navigation li.page_item_has_children > a::after,
    .main-navigation > div > ul > .menu-item-has-children > a::after,
    .main-navigation > ul > .menu-item-has-children > a::after {
        display: none !important;
    }
}


/* ==========================================================================
   03. MAIN MOBILE NAV PANEL  (up to 1024px)
   --------------------------------------------------------------------------
   Full-screen ink slide-in panel with accent-divided rows.
   ========================================================================== */
@media (max-width: 1024px) {
    :root {
        --sps-container: 100%;
    }

    .menu-toggle {
        display: inline-flex !important;
        position: relative;
        z-index: 100002;
    }

    .main-navigation > div > ul,
    .main-navigation > ul {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        height: 100vh;
        max-height: 100vh;
        margin: 0;
        padding: 88px 0 48px;
        background-color: var(--sps-ink, #0a0a0a);
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 0;
        list-style: none;
        box-shadow: none;
        border-radius: 0;
        border-left: var(--sps-border-w-thick, 3px) solid var(--sps-accent, #ffe600);
        overflow-y: auto;
        overflow-x: hidden;
        -webkit-overflow-scrolling: touch;
        z-index: 100000;
        transform: translateX(100%);
        transition: transform 0.25s cubic-bezier(0.2, 0, 0, 1);
        visibility: hidden;
        pointer-events: none;
    }

    #site-navigation.toggled > div > ul,
    #site-navigation.toggled > ul,
    .main-navigation.toggled > div > ul,
    .main-navigation.toggled > ul {
        transform: translateX(0);
        visibility: visible;
        pointer-events: auto;
        display: flex;
    }

    body.menu-open {
        overflow: hidden;
    }

    #site-navigation.toggled .menu-toggle,
    .main-navigation.toggled .menu-toggle {
        position: fixed;
        top: -85px !important;
        right: 0px !important;
        z-index: 100003;
        background: var(--sps-accent, #ffe600);
        border: var(--sps-border-w, 2px) solid var(--sps-accent, #ffe600);
        border-radius: 0;
    }
    #site-navigation.toggled .menu-toggle span,
    .main-navigation.toggled .menu-toggle span {
        background: var(--sps-ink, #0a0a0a) !important;
    }

    .main-navigation li {
        width: 100%;
        position: relative;
        list-style: none;
    }

    .main-navigation a {
        display: block;
        width: 100%;
        padding: 16px 26px;
        border-radius: 0;
        color: #ffffff;
        font-family: var(--sps-font-heading, sans-serif);
        font-size: 16px;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        text-decoration: none;
        border: 0;
        border-bottom: 1px solid #2a2a2a;
        background: transparent;
        text-align: left;
    }

    .main-navigation a:hover,
    .main-navigation a:focus,
    .main-navigation .current-menu-item > a,
    .main-navigation .current_page_item > a {
        background: var(--sps-accent, #ffe600);
        color: var(--sps-ink, #0a0a0a);
        border-bottom-color: var(--sps-ink, #0a0a0a);
    }

    .main-navigation .dropdown-toggle {
        display: inline-flex !important;
        position: absolute;
        top: 0;
        right: 0;
        width: 58px;
        height: 54px;
        background: transparent;
        border: 0;
        border-left: 1px solid #2a2a2a;
        cursor: pointer;
        padding: 0;
        align-items: center;
        justify-content: center;
        z-index: 5;
        color: #ffffff;
    }
    .main-navigation .dropdown-toggle .dropdown-icon {
        width: 9px;
        height: 9px;
        border-right: 3px solid currentColor;
        border-bottom: 3px solid currentColor;
        transform: rotate(45deg);
        transition: transform 0.18s ease;
    }
    .main-navigation .dropdown-open > .dropdown-toggle .dropdown-icon {
        transform: rotate(-135deg);
    }

    .main-navigation > div > ul > .menu-item-has-children > a::after,
    .main-navigation > ul > .menu-item-has-children > a::after,
    .main-navigation > div > ul > .page_item_has_children > a::after,
    .main-navigation > ul > .page_item_has_children > a::after,
    .main-navigation li.menu-item-has-children > a::after,
    .main-navigation li.page_item_has_children > a::after {
        display: none !important;
    }

    /* Sub-menus: collapsed, expand on .dropdown-open */
    .main-navigation ul ul {
        position: static !important;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
        box-shadow: none;
        border: 0;
        padding: 0;
        margin: 0;
        list-style: none;
        background: #000000;
        min-width: 0;
        width: 100%;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.28s ease;
        border-radius: 0;
        display: block;
    }

    .main-navigation li.dropdown-open > ul {
        max-height: 2000px;
    }

    .main-navigation ul ul li {
        border-bottom: 1px solid #1f1f1f;
    }

    .main-navigation ul ul a {
        padding: 13px 26px 13px 44px;
        font-size: 13px;
        font-weight: 700;
        border: 0;
        border-bottom: 1px solid #1f1f1f;
        color: rgba(255, 255, 255, 0.85);
    }

    .main-navigation ul ul a:hover {
        background: var(--sps-accent, #ffe600);
        color: var(--sps-ink, #0a0a0a);
    }

    .main-navigation ul ul ul a {
        padding-left: 64px;
        font-size: 12px;
        color: rgba(255, 255, 255, 0.7);
    }

    .main-navigation ul ul ul {
        margin: 0;
        left: 0;
        transform: none;
        background: #000000;
    }

    .main-navigation li:hover > ul {
        max-height: 0;
    }
    .main-navigation li.dropdown-open > ul,
    .main-navigation li.dropdown-open:hover > ul {
        max-height: 2000px;
    }

    /* Layout stack */
    .page_content {
        flex-direction: column;
        gap: 44px;
        padding: 44px 0;
    }

    #sidebar {
        width: 100%;
        flex: 1 1 100%;
    }

    .footer-all {
        grid-template-columns: 1fr 1fr;
        gap: 36px;
    }

    .footer-rght {
        grid-column: 1 / -1;
    }

    .rfl-row {
        grid-template-columns: repeat(3, 1fr);
    }
}


/* ==========================================================================
   04. LARGE DESKTOP  (1170px – 1515px)
   ========================================================================== */
@media screen and (min-width: 1170px) and (max-width: 1515px) {
    #navigation {
        width: 65% !important;
    }
    #footer .container {
        padding: 0 24px !important;
    }
}


/* ==========================================================================
   05. MID DESKTOP  (768px – 1169px)
   ========================================================================== */
@media screen and (max-width: 1169px) and (min-width: 768px) {
    .logo {
        float: left;
    }
}


/* ==========================================================================
   06. SMALL DESKTOP  (981px – 1169px)
   ========================================================================== */
@media screen and (min-width: 981px) and (max-width: 1169px) {
    html {
        overflow-x: hidden;
    }
    input.search-field,
    .post-password-form input[type="password"] {
        width: 70%;
    }
    .toggle {
        width: inherit;
    }
    .blog_lists {
        margin: 0 0 36px 0;
    }
    #navigation {
        width: 60%;
        padding-left: 10px;
    }
    .inner-banner-thumb h1,
    .banner-container h1 {
        font-size: 44px;
    }
    .banner-container {
        width: auto;
    }
    input.search-field {
        width: 70% !important;
    }
    .footer h1,
    .footer h2,
    .footer h3,
    .footer h4 {
        font-size: 14px;
        margin: 0 0 20px;
    }
    #footer {
        padding: 0;
    }
    .footer-row {
        padding: 36px 10px 36px 25px;
    }
    .footer-lft {
        padding: 64px 20px;
    }
    .footer-lft,
    .footer-rght {
        display: block;
        float: none;
        width: 100%;
    }
    .footer-rght {
        margin: 20px 0;
        padding: 36px 20px;
    }
    .cols-3 {
        width: 100% !important;
        padding: 0 15px;
        margin-bottom: 24px;
    }
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 44%;
        margin: 12px 2%;
    }
    .footerarea {
        padding: 0 20px;
    }
}


/* ==========================================================================
   07. TABLET  (768px – 1024px)
   ========================================================================== */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    /* ----- Header ----- */
    .header {
        width: 100%;
        position: relative !important;
        overflow: visible;
    }
    .header .container {
        padding: 0 24px !important;
        position: relative;
        overflow: visible;
    }
    .header-inner {
        flex-wrap: wrap;
        min-height: auto;
    }
    .transheader {
        position: relative !important;
        background-color: var(--sps-ink, #0a0a0a) !important;
        width: 100% !important;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    /* ----- Container & Layout ----- */
    .container {
        width: 100%;
        padding: 0 24px;
    }
    .content-area {
        width: auto;
        margin: 0;
        padding: 44px 24px;
    }
    .page_content {
        flex-direction: column;
        gap: 36px;
        padding: 36px 0;
    }
    #sidebar {
        width: 99%;
        flex: 1 1 100%;
		margin:0;
    }
    .site-main {
        width: 100%;
        flex: 1 1 100%;
    }
    .row_area {
        margin-left: 0;
    }

    /* ----- Logo ----- */
    .logo {
        float: left;
        width: auto;
        padding: 22px 0;
        position: relative;
        text-align: left;
        min-height: inherit;
    }
    body.wp-custom-logo .logo {
        padding: 22px 0 !important;
    }
    .logo img {
        max-height: 50px;
        width: auto;
    }
    .logo h2,
    .site-title {
        font-size: 28px;
        line-height: 1.1;
		padding:10px 0 0 0;
    }

    /* ----- Navigation Wrapper ----- */
    #navigation {
        float: none !important;
        width: 100% !important;
        padding: 0 !important;
        clear: both;
        position: static;
        min-height: 0;
        display: block;
    }
    .main-navigation {
        display: block;
        width: 100%;
    }

    /* ----- Hamburger Toggle ----- */
    .main-navigation button.menu-toggle {
        position: absolute !important;
        top: -15px !important;
        right: 0px !important;
        left: auto !important;
        margin: 0 !important;
        z-index: 100002;
        width: 46px;
        height: 46px;
        padding: 6px;
        background: var(--sps-accent, #ffe600);
        border: var(--sps-border-w, 2px) solid var(--sps-ink, #0a0a0a);
        cursor: pointer;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 5px;
    }
    .menu-toggle span {
        background: var(--sps-ink, #0a0a0a);
    }
    .toggled .menu-toggle span {
        background: var(--sps-ink, #0a0a0a) !important;
    }
    .main-navigation.toggled > ul {
        max-height: 100vh;
    }

    /* ----- Get In Touch Button (srcrt) ----- */
    .srcrt {
        float: none !important;
        width: 100% !important;
        display: block;
        text-align: center;
        padding: 0 65px 22px 0;
        position: relative;
        z-index: 9998;
        clear: left;
        margin-top: 0;
    }
    .header-content-right {
        display: inline-block;
        padding: 0;
        min-height: inherit;

        margin-bottom: 0;
        vertical-align: middle;
    }
    .skt-header-extras {
        display: inline-block;
    }
    .skt-header-button {
        float: none;
        display: inline-block;
        padding: 0 24px;
        height: 48px;
        line-height: 48px;
        font-size: 14px;
        text-align: center;
        margin: 0;
    }
    .skt-header-button:after {
        display: none;
    }

    /* ----- Misc Header ----- */
    .head-bar:after {
        display: none;
    }
    .header-extras {
        padding-top: 0;
        margin-top: 0 !important;
    }
    .social-icons {
        margin-top: 0;
    }
    .copyright-area {
        position: relative !important;
    }
    .head-info-area .center {
        width: 98%;
    }

    /* ----- Inner Banner ----- */
    .inner-banner-thumb {
        min-height: 200px;
        height: auto;
    }
    .inner-banner-thumb img {
        min-height: inherit;
        margin: 0 !important;
    }
    .inner-banner-thumb h1,
    .banner-container h1 {
        font-size: 40px !important;
    }
    .banner-container {
        padding: 48px 24px;
    }

    /* ----- Content / Blog ----- */
    .blog-post {
        margin: 0;
    }
    .blog_lists {
        float: none;
        width: 100%;
        margin-bottom: 36px;
        margin-left: 0;
        margin-right: 0;
        min-height: inherit;
    }
    .entry-title {
        font-size: 30px;
    }
    article.single-post .entry-title {
        font-size: 38px;
    }
    .postmeta {
        padding: 0 0 12px 0;
    }
    aside.widget {
        margin-bottom: 24px;
    }
    .header-phone-number {
        margin: 10px 0 15px 0;
        float: none;
    }

    /* ----- SKT Copywriter Banner ----- */
    .skt-copywriter-banner-section .linear {
        top: 0;
    }
    .skt-copywriter-banner-section :where(h2, h4) {
        text-align: left;
    }
    .skt-copywriter-banner-section h4 br {
        display: none;
        visibility: hidden;
    }
    .skt-copywriter-banner-section {
        background-size: cover !important;
    }
    .skt-copywriter-banner-section h2 {
        font-size: 30px !important;
    }
    .skt-copywriter-choose-img-box .skt-blocks-block-section {
        border-width: 0 0 1px 0 !important;
    }
    .skt-testimonials .item {
        padding: 32px !important;
    }
    .skt-testimonials .skt-testimonial-content {
        padding-bottom: 10px !important;
    }

    /* ----- Footer ----- */
    .footer {
        padding-top: 36px;
        padding-bottom: 36px;
    }
    .footer-row {
        padding: 24px;
        margin: 0;
    }
    .footer h1,
    .footer h2,
    .footer h3,
    .footer h4 {
        font-size: 14px;
        margin: 0 0 20px;
    }
    .footer-logo {
        padding: 24px 0 0 0;
    }
    .footer-social,
    .c-footer-social {
        float: none;
        text-align: center;
        width: 100%;
        padding: 24px 0;
    }
    .cols-3 {
        padding: 0 15px;
        margin-bottom: 24px;
    }
    .footer-lft {
        padding: 44px 20px;
    }
    .footer-lft,
    .footer-rght {
        display: block;
        float: none;
        width: 100%;
    }
    .footer-rght {
        margin: 18px 0;
        padding: 28px 20px;
    }
    .footerarea {
        padding-top: 0 !important;
    }
    #footer {
        padding: 0;
    }

    .footer-all {
        grid-template-columns: 1fr 1fr;
        gap: 36px;
    }
    .footer-rght {
        grid-column: 1 / -1;
        display: contents;
    }
    .rfl-row {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        grid-column: 1 / -1;
    }

    .o-layout {
        flex-direction: column;
        text-align: center;
    }
    .o-layout__left,
    .o-layout__right {
        text-align: center;
    }
    .c-footer-logo,
    .c-footer-social {
        padding: 36px 0;
    }

    /* ----- WooCommerce ----- */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 44%;
        margin: 12px 2%;
    }

    /* ----- Elementor ----- */
    .skt-copywriter-relax-resort-img.elementor-widget-image .elementor-widget-container img {
        height: 600px;
        object-fit: cover;
    }
    .skt-copywriter-welcome-rating-column .elementor-container {
        margin: 0 auto !important;
    }
    .skt-copywriter-amenities-icon .elementor-widget-container {
        height: 100px;
        line-height: 100px;
    }

    /* ----- Comments ----- */
    .comment-list .children {
        margin-left: 22px;
    }
}


/* ==========================================================================
   08. TABLET NARROW  (768px – 980px) — extra overrides
   ========================================================================== */
@media screen and (min-width: 768px) and (max-width: 980px) {
    .post-thumb {
        height: auto;
    }
    .ft-infobox .footerarea .container {
        padding: 12px 24px;
    }
    .main-navigation.toggled ul li:last-child {
        margin-bottom: 0;
    }
    .main-navigation.toggled ul ul li:last-child {
        margin-bottom: 0;
    }
}


/* ==========================================================================
   09. em-BASED TABLET  (48em – 63.938em ≈ 768px – 1023px)
   ========================================================================== */
@media screen and (min-width: 48em) and (max-width: 63.938em) {
    #footermenu li {
        padding: 6px 15px;
    }
    .copyright-txt {
        padding: 22px 0;
    }
    .services-box .cols2 {
        padding: 32px 20px;
    }
    .skt-ourservice-title a {
        font-size: 24px !important;
    }
    .service-infobox p {
        padding-top: 15px;
        padding-bottom: 15px;
        font-size: 16px;
    }
    .footer-social,
    .c-footer-social {
        float: none;
        text-align: center;
        width: 100%;
        padding: 32px 0 22px 0;
    }
}


/* ==========================================================================
   10. WIDE TABLET em-based  (63.25em – 72.438em)
   ========================================================================== */
@media screen and (min-width: 63.250em) and (max-width: 72.438em) {
    #topmenu {
        padding-right: 0;
    }
}


/* ==========================================================================
   11. LARGE DESKTOP ELEMENTOR  (1024px – 1199px)
   ========================================================================== */
@media (min-width: 1024px) and (max-width: 1199px) {
    .skt-copywriter-relax-resort-img.elementor-widget-image .elementor-widget-container img {
        height: 850px;
        object-fit: cover;
    }
}


/* ==========================================================================
   12. MOBILE — up to 767px
   ========================================================================== */
@media screen and (max-width: 767px) {
    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    /* ----- Typography scale ----- */
    h1 { font-size: 38px; }
    h2 { font-size: 30px; }
    h3 { font-size: 24px; }
    h4 { font-size: 20px; }

    /* ----- Layout ----- */
    .container {
        width: auto;
        padding: 30px 20px;
    }
    .ft-infobox .container {
        padding: 0 16px !important;
    }
    .header .container {
        border-bottom: none;
        padding: 0 16px !important;
        position: relative;
        overflow: visible;
        min-height: 72px;
        flex-wrap: wrap;
    }
    .header-inner {
        flex-wrap: wrap;
        min-height: 72px;
    }
    .banner-container {
        width: auto;
        padding: 40px 20px;
    }
    .banner-container h1 {
        font-size: 34px;
    }
    .row_area {
        margin: 0;
    }
    .columns-row {
        margin-left: 0;
        margin-right: 0;
    }
    .center {
        width: 100%;
    }
    .wrap_one {
        width: auto;
        text-align: center;
    }

    /* ----- Floats reset ----- */
    .left,
    .right,
    .design-by,
    .headertop .left,
    .headertop .right {
        float: none;
        margin: 0 auto;
        text-align: center;
    }
    .copyright-txt {
        float: none;
        margin: 0 auto;
        text-align: center;
        padding: 0;
    }
    .footerleft {
        float: none;
        text-align: center;
    }

    /* ----- Header ----- */
    .header {
        width: 100%;
        padding: 0;
        position: relative !important;
        overflow: visible;
    }
    .transheader, .transheaderhome{
        position: relative !important;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
    .header.transheader {
        background-color: var(--sps-ink, #0a0a0a) !important;
    }
    .head-bar:after {
        display: none;
    }

    /* ----- Logo ----- */
    .logo {
        float: left;
        text-align: left;
        padding: 16px 0;
        position: relative;
        width: auto;
        min-height: inherit;
        max-width: calc(100% - 65px);
    }
    .logo h2,
    .site-title {
        text-align: left;
        font-size: 23px;
        line-height: 1.1;
    }
    .logo p {
        text-align: left;
        float: none;
        margin: 4px 0 0;
    }
    .logo img {
        max-width: 140px;
        max-height: 46px;
    }

    /* ----- Navigation ----- */
    #navigation {
        float: none !important;
        text-align: left;
        width: 100% !important;
        padding: 0 !important;
        clear: both;
        position: static;
        min-height: 0;
        display: block;
    }
    .main-navigation {
        display: block;
        width: 100%;
    }
    .main-navigation ul li a {
        line-height: inherit;
    }

    /* ----- Hamburger Toggle ----- */
    .main-navigation button.menu-toggle {
        position: absolute !important;
        top: -18px !important;
        right: 0px !important;
        left: auto !important;
        margin: 0 !important;
        z-index: 100002;
        width: 46px;
        height: 46px;
        padding: 6px;
        background: var(--sps-accent, #ffe600);
        border: var(--sps-border-w, 2px) solid var(--sps-ink, #0a0a0a);
        cursor: pointer;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 5px;
    }
    .menu-toggle span {
        background: var(--sps-ink, #0a0a0a);
        width: 22px;
        height: 3px;
    }
    .toggled .menu-toggle span {
        background: var(--sps-ink, #0a0a0a) !important;
    }

    /* ----- Get In Touch Button (srcrt) ----- */
    .srcrt {
        float: none !important;
        width: 100% !important;
        display: block;
        text-align: center;
        padding: 8px 15px 20px;
        position: relative;
        z-index: 99;
        clear: both;
        margin-top: 0;
        order: 4;
        margin-left: 0;
    }
    .header-content-right {
        display: block;
        width: 100%;
        padding: 0;
        min-height: inherit;
        margin-bottom: 0;
        text-align: center;
    }
    .skt-header-extras {
        display: block;
        text-align: center;
    }
    .skt-header-button {
        float: none;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 0 26px;
        height: 50px;
        font-size: 14px;
        margin: 0 auto;
    }
    .skt-header-button:after {
        display: none;
    }
    .header-right-infos {
        float: none;
        width: 100%;
    }

    /* ----- Header extras ----- */
    .header-extras {
        width: 85%;
        margin: 0 auto 16px;
        float: none;
        padding-top: 0;
    }
    .header-extras .header-search-form {
        left: 0;
        right: 0;
        width: 100%;
        bottom: -53px;
    }
    .header-search-toggle {
        float: right;
        margin: 0;
    }
    .header-search-form {
        width: 100%;
        bottom: 0;
        right: 0;
        left: 0;
        z-index: 9999999;
    }
    .header-phone-number {
        margin: 8px auto 16px;
        float: none;
        text-align: center;
    }

    /* ----- Inner banner ----- */
    .inner-banner-thumb {
        min-height: 180px;
        height: auto;
        position: relative;
    }
    .inner-banner-thumb img {
        min-height: inherit;
    }
    .inner-banner-thumb h1,
    .banner-container h1 {
        text-align: left;
        font-size: 30px;
    }

    /* ----- Content ----- */
    .site-main {
        width: auto;
        margin: 0;
        padding: 0 0 20px;
        float: none;
        flex: 1 1 100%;
    }
    .content-area {
        width: auto;
        margin: 0;
        padding: 30px 16px;
    }
    .page_content {
        padding: 0;
        flex-direction: column;
        gap: 36px;
    }
    body.home .page_content {
        padding: 0;
    }
    body.page .page_content .site-main {
        margin: 16px 0 0 0;
    }
    .col-columns-2 {
        width: 100%;
        padding: 20px 16px;
        box-sizing: border-box;
        float: none;
    }
    .blog-post {
        margin: 0;
    }
    .blog_lists {
        float: none;
        width: 100%;
        margin-bottom: 32px;
        margin-left: 0;
        margin-right: 0;
        padding-right: 0;
    }
    .BlogPosts {
        float: none;
        width: auto;
        margin: 0 0 10%;
    }
    .post-thumb {
        width: 100%;
        float: none;
        max-height: none;
    }
    h2.section_title {
        text-align: left;
    }
    .postmeta {
        padding: 14px 0 10px 0;
        gap: 12px;
    }
    .entry-title {
        font-size: 26px;
    }
    article.single-post .entry-title {
        font-size: 32px;
    }

    /* ----- Sidebar ----- */
    #sidebar {
        width: 100%;
        float: none;
        flex: 1 1 100%;
		margin:0;
    }

    /* ----- Forms ----- */
    .wpcf7 input[type="text"],
    .wpcf7 input[type="tel"],
    .wpcf7 input[type="email"],
    .wpcf7 textarea {
        width: 100%;
    }
    input.search-field {
        width: 66%;
    }
    .toggle {
        margin: 0 auto;
    }

    /* ----- Footer ----- */
    .footer {
        padding-bottom: 36px;
    }
    .footer-row {
        padding: 24px;
    }
    .footer aside.widget {
        margin-bottom: 24px;
    }
    .footer h1,
    .footer h2,
    .footer h3,
    .footer h4,
    .footer h5,
    .footer h6 {
        margin: 18px 0;
        font-size: 14px;
    }
    .cols-3 {
        float: none;
        width: 100% !important;
        margin: 0 0 -20px 0;
        padding: 0 16px;
    }
    .cols-3:nth-child(1) {
        width: 100% !important;
    }
    .cols-3.widget-column-1 {
        padding-right: 16px;
    }
    .cols-3:nth-of-type(1) {
        padding-top: 0;
    }
    .footerarea {
        padding: 0 10px;
    }
    .footer-lft {
        padding: 28px 16px !important;
    }
    .footer-lft,
    .footer-rght {
        float: none;
        width: 100%;
        padding: 0 16px 16px 16px;
        display: block;
    }
    .footer-lft .wp-block-spacer {
        display: block !important;
    }
    .footer-rght {
        margin: 12px 0;
        border-radius: 0;
        padding: 24px 16px;
    }
    .footer-social,
    .c-footer-social {
        float: none;
        text-align: center;
        width: 100%;
        padding: 12px 0 24px 0;
    }
    .footer-logo,
    .c-footer-logo {
        float: none;
        text-align: center;
        padding: 24px 0;
    }
    #footermenu {
        margin-top: 0;
        padding: 24px;
    }
    #footermenu li {
        display: block;
        padding: 9px 0;
    }
    .copyright-wrapper {
        text-align: center;
    }

    .footer-all {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .rfl-row {
        grid-template-columns: 1fr;
    }

    .o-layout {
        flex-direction: column;
        text-align: center;
    }
    .o-layout__left,
    .o-layout__right {
        text-align: center;
    }

    /* ----- SKT Copywriter banner ----- */
    .skt-copywriter-banner br {
        display: none;
    }
    .skt-copywriter-banner-section .linear {
        top: 0;
    }
    .skt-copywriter-banner-section :where(h2, h4) {
        text-align: left;
    }
    .skt-copywriter-banner-section h4 br {
        display: none;
        visibility: hidden;
    }
    .skt-copywriter-banner-section {
        background-size: contain !important;
    }
    .skt-copywriter-banner-section h2 {
        font-size: 30px !important;
    }
    .skt-copywriter-choose-img-box .skt-blocks-block-section {
        border-width: 0 0 1px 0 !important;
    }

    /* ----- Comments ----- */
    .comment-list .children {
        margin-left: 16px;
        padding-left: 14px;
    }

    /* ----- WooCommerce ----- */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 90%;
        margin: 12px auto;
        float: none;
        display: block;
    }

    /* ----- Tables: scrollable ----- */
    .woocommerce table.shop_table {
        width: 100%;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* ----- Embeds: responsive iframes ----- */
    .wp-block-embed__wrapper {
        position: relative;
        padding-bottom: 56.25%;
        height: 0;
        overflow: hidden;
    }
    .wp-block-embed__wrapper iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
}


/* ==========================================================================
   13. MOBILE LANDSCAPE  (480px – 767px)
   ========================================================================== */
@media screen and (min-width: 480px) and (max-width: 767px) {
    .container,
    .content-area {
        width: auto;
        margin: 0 auto;
    }
    .logo {
        padding: 16px 0;
    }
    #navigate-main {
        width: 100%;
    }
    .inner-banner-thumb h1,
    .banner-container h1 {
        text-align: left;
        font-size: 34px;
    }
    .blog_lists {
        margin-bottom: 36px;
    }
    .skt-copywriter-banner br {
        display: none;
    }
    #navigation {
        padding: 0 !important;
    }
    .header-phone-number {
        margin: 10px auto;
        float: none;
        text-align: center;
    }
    .skt-copywriter-welcome-rating-column .elementor-container {
        margin: 0 auto !important;
    }
    .skt-copywriter-banner-section .linear {
        top: 0;
    }
    .skt-copywriter-banner-section {
        background-size: contain !important;
    }
    .skt-copywriter-banner-section h2 {
        font-size: 30px !important;
    }
    .footer-social,
    .c-footer-social {
        float: none;
        text-align: center;
        width: 100%;
        padding: 12px 0 24px 0;
    }
    .srcrt {
        text-align: center;
    }
    .skt-header-quote-btn a {
        float: none;
        width: 100%;
        text-align: center;
        border-radius: 0;
        font-size: 15px;
        height: auto;
        padding: 12px;
        margin: 0 0 12px 0;
    }
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 44%;
        margin: 12px 2%;
        display: inline-block;
        float: none;
    }
}


/* ==========================================================================
   14. SMALL MOBILE  (max 479px)
   ========================================================================== */
@media screen and (max-width: 479px) {
	.header-topbar .social-icons {
	  margin-top: -9px;
	  margin-bottom: 9px;
	}
    .container {
        padding: 26px 18px;
    }
    .footer-social,
    .c-footer-social {
        padding: 0 0 24px 0;
        float: none;
        text-align: center;
    }
    .footer-logo,
    .c-footer-logo {
        float: none;
        text-align: center;
        padding: 24px 0;
    }
    #footermenu {
        margin-top: 0;
    }
    #footermenu li {
        display: block;
        padding: 11px 0;
    }
    .header-search-form {
        width: 100%;
        bottom: 0;
        right: 0;
        left: 0;
        z-index: 9999999;
    }
    .cols-3 {
        width: 100% !important;
        padding: 0 12px;
    }
    .col-columns-2 {
        width: 100%;
        float: none;
        padding: 16px;
    }
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        width: 94%;
        margin: 12px auto;
        display: block;
        float: none;
    }
    .inner-banner-thumb h1,
    .banner-container h1 {
        font-size: 28px;
    }
    .banner-container {
        padding: 32px 18px;
    }
    .entry-title {
        font-size: 23px;
    }
    article.single-post .entry-title {
        font-size: 27px;
    }
    .skt-header-button {
        font-size: 13px;
        padding: 0 18px;
        height: 46px;
    }
    .logo img {
        max-width: 150px;
        max-height: 60px;
    }
    .logo h2,
    .site-title {
        font-size: 25px;
		padding:13px 0 0 0;
    }
    .c-social-icons__link {
        width: 35px;
        height: 35px;
    }
    .c-social-icons {
        gap: 8px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .comment-list .children {
        margin-left: 12px;
        padding-left: 10px;
    }
}


/* ==========================================================================
   15. LANDSCAPE ORIENTATION  — Special handling
   ========================================================================== */
@media screen and (max-width: 812px) and (orientation: landscape) {
    .inner-banner-thumb h1,
    .banner-container h1 {
        font-size: 32px;
    }
}

@media screen and (orientation: landscape) and (max-width: 1080px) {
    .blog_lists {
        min-height: inherit;
    }
    .ft-infobox .footerarea .container {
        padding: 44px 24px 12px 24px;
    }
    .footer-row {
        margin: 0;
    }
}


/* ==========================================================================
   16. GENERIC WIDTH FALLBACKS
   ========================================================================== */
@media (max-width: 1170px) {
    .container {
        width: 100%;
    }
}

@media (max-width: 768px) {
    #sidebar {
        width: 98%;
        float: none;
    }

    .content-area {
        width: 100%;
        float: none;
    }
}