@media screen and (min-width: 1700px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1600px;
    }
}

@media screen and (min-width: 1600px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1600px;
    }
}

@media screen and (max-width: 1599px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1480px;
    }
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1320px;
    }

    .logo-img {
        width: 250px;
    }

    h1 {
        font-size: 52px;
    }

    h2 {
        font-size: 46px;
    }

    h3 {
        font-size: 38px;
    }

    h4 {
        font-size: 28px;
    }

    h5 {
        font-size: 22px;
    }

    p {
        font-size: 17px;
    }

    li {
        font-size: 17px;
    }

    .news_content_title h1 {
        font-size: 44px;
    }

    .blog_insider_details_area h2 {
        font-size: 40px;
    }

    .blog_insider_details_area h3 {
        font-size: 34px;
    }

    .blog_insider_details_area h4 {
        font-size: 26px;
    }

    .blog_insider_details_area h5 {
        font-size: 20px;
    }

    .blog_insider_details_area h6 {
        font-size: 17px;
    }


    .news_details_date_area {
        padding: 30px;
    }

    .news_content_title_area {
        padding: 30px;
    }

    .subpage_bigheader_sticker_area span {
        font-size: 17px;
    }

    .principle_header_content_area span img {
        max-width: 150px;
    }

    .principle_main_card_area {
        min-height: 610px;
    }

    .principle_header_content_area {
        padding: 50px 0 80px 0;
    }

    .single_news_area {
        padding: 30px 15px 50px 15px;
    }

    .home-media_folder-wrapper {
        padding-left: 1.5em;
        padding-right: 1.5em;
    }

    .marquee_item {
        font-size: 26px;
    }

    .marquee_footer {
        padding: 20px 0;
    }

    .footer_contact_btn a {
        font-size: 18px;
    }

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

    .footer_social_links ul li a {
        font-size: 18px;
    }

    .news_blog_main_header_area {
        padding: 70px 0;
    }

    .extended_dark_bg_lines {
        height: 70px;
    }

    .more_project_showcase_btn {
        padding-bottom: 100px;
    }

    .recent_work_padding {
        padding: 90px 0 70px 0;
    }

    .bottom_story h2 {
        margin-bottom: 80px;
    }

    .biggerh1 {
        font-size: 114px;
    }

    .mid_story img {
        max-width: 90px;
    }

    .the_difference_part_content_area {
        padding: 30px;
    }

    .blog_insider_details_area {
        max-width: 90ch;
    }


}

@media screen and (min-width: 1200px) and (max-width: 1399px) {}

@media screen and (min-width: 992px) and (max-width: 1199px) {}

@media screen and (max-width: 992px) {


    .mobile_row_reverse {
        flex-flow: column-reverse;
    }


    .mmt-50 {
        margin-top: 50px;
    }

    p {
        font-size: 16px;
    }

    .tag_item.dark {
        border: 1px solid rgba(255, 255, 255, 0.3);
        color: #fff;
    }

    .project_tags_area {
        display: flex;
        flex-wrap: wrap;
    }

    .tag_item {
        flex-shrink: 0;
    }

    .news_details_main_header_area {
        padding: 0 20px;
    }

    .news_details_header_left {
        width: 100%;
    }

    .news_details_main_header_area {
        display: block
    }

    .main_footer {
        padding: 60px 0;
    }

    .news_details_header_right {
        width: 100%;
    }

    .news_details_date_area {
        padding: 20px;
    }

    .news_details_date_area p {
        font-size: 16px;
    }

    .news_content_title_area {
        padding: 20px;
    }

    .news_content_title h1 {
        font-size: 36px;
        margin-bottom: 60px;
    }


    .blog_insider_details_area h2 {
        font-size: 34px;
    }

    .subpage_bigheader_sticker_area span {
        font-size: 16px;
    }

    .blog_insider_details_area h3 {
        font-size: 28px;
    }

    .blog_insider_details_area h4 {
        font-size: 24px;
    }

    .blog_insider_details_area h5 {
        font-size: 20px;
    }

    .blog_insider_details_area h6 {
        font-size: 16px;
    }

    .contact_tabs_wrapper {
        padding: 0;
    }

    .biggerh1 {
        font-size: 94px;
    }

    .subpage_bigheader_sticker_area {
        transform: translateY(-124%) rotate(6deg);
        padding: 6px 22px;
    }

    .subpage_main_big_header_area,
    .main_scroll_animated_content_area {
        padding-top: 44px;
    }

    .asket_difference_area h2 br {
        display: none;
    }

    .asket_difference_area .header_small_sticker_area {
        top: -24px;
    }

    .blog_details_image_area {
        padding: 0;
    }

    .footer_top_right_area {
        margin-top: 30px;
    }

    .footer_top_left_area h3 {
        margin-bottom: 40px;
    }

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

    .blog_pl_details {
        padding-left: 15px;
    }

    .footer_logo_last {
        display: none;
    }

    .footer_top_area {
        display: block;
        padding-bottom: 60px;
    }

    .custom_nav_container {
        padding: 0 0;
    }

    .navbar .navbar-nav.me-auto {
        padding-right: 0;
    }

    .navbar .navbar-nav.ms-auto {
        padding-left: 0;
    }

    .firstcard_area {
        transform: rotate(0deg);
        margin-top: 0;
    }

    .wireframe_whiteboard_under_icons {
        right: 40px;
        bottom: 40px;
    }

    .design_whiteboard_under_icons {
        right: 40px;
        bottom: 40px;
        left: auto;
        transform: rotate(0deg);
    }

    .tab_mt_20 {
        margin-top: 20px;
    }

    .tab_mb_40 {
        margin-top: 40px;
    }

    .the_difference_part_content_area {
        padding: 30px;
    }

    .drag_drop_elements_header_area p br {
        display: none;
    }

    .bottom_story h2 {
        margin-bottom: 60px;
    }

    .project_tags_area {
        position: relative;
        margin-bottom: 0;
        top: 0;
        left: 0;
    }


    .thirdcard_area {
        transform: rotate(0deg);
        margin-top: 0;
    }

    .coding_whiteboard_under_icons {
        right: auto;
        bottom: 40px;
        left: 40px;
    }

    .home_first_section_padding {
        padding: 60px 0;
    }

    .principle_bg_area {
        padding: 50px 0 20px 0;
    }

    .tab_pr_15 {
        padding-right: 15px;
    }

    .home_second_principles_area h2 {
        margin-bottom: 30px;
    }

    .tab_mt_50 {
        margin-top: 50px;
    }

    .principle_scrolling_cards_area {
        padding: 30px;
        position: relative;
        margin-bottom: 30px;
    }

    .principle_scrolling_cards_area:last-child {
        margin-bottom: 0;
    }

    .principle_icon_area img {
        width: 30px;
    }

    .principle_header_content_area {
        padding: 50px 0 100px 0;
    }

    .principle_main_card_area {
        height: 100%;
    }

    .home_recent_project_showcase_area .header_small_sticker_area {
        top: -24px;
    }

    .recent_work_padding {
        padding: 70px 0 40px 0;
    }

    .project_showcase_content {
        padding-top: 20px;
    }

    .project_card_area {
        margin-bottom: 50px;
    }

    .more_project_showcase_btn a {
        font-size: 48px;
    }

    .showcase_grid_container {
        padding: 0 20px !important;
    }

    .background_grid_lines_area {
        left: 20px;
        right: 20px;
    }

    .more_project_showcase_btn {
        padding-bottom: 80px;
    }

    .extended_dark_bg_lines {
        height: 50px;
    }

    .vertical-line {
        inset: 0% auto auto 20px;
    }

    .vertical-line.right {
        inset: 0% 20px auto auto;
    }

    .news_blog_main_header_area {
        padding: 60px 0;
    }

    .single_news_area {
        padding: 30px 10px 50px 10px;
    }

    .home-media_folder-wrapper {
        padding-left: 2em;
        padding-right: 2em;
    }

    .recent_news_area .row .col-lg-3 {
        border-right: none;
    }

    .recent_news_area .row {
        padding: 0 20px;
    }

}

@media screen and (min-width: 768px) and (max-width: 991px) {}



@media screen and (max-width: 768px) {

    .form-wrapper h3,
    .form-wrapper .heading-as-h3 {
        font-size: 22px;
    }

    .workdetails_shorten_description_area h2 {
        font-size: 22px;
    }

    .folder-paper {
        transform: translate(0px, -55%) rotate(-5deg);
        opacity: 1;
    }

    .folder-front {
        transform: rotateX(-25deg);
    }



    .used_elements_header_area .header_small_sticker_area {
        top: -24px;
    }

    .workdetails_shorten_description_area h4 {
        text-align: left;
    }

    .mpt-50 {
        padding-top: 50px;
    }

    .mpb-50 {
        padding-bottom: 50px;
    }

    .workdetails_more_images_area {
        border-radius: 8px;
    }


    .subpage_main_big_header_area h1,
    .subpage_main_big_header_area h2.biggerh1 {
        line-height: 90%;
    }

    .visit_website_url_btn a {
        font-size: 14px;
        gap: 12px;
    }

    .visit_website_url_btn {
        margin-top: 30px;
    }

    .workdetails_main_header_image {
        border-radius: 8px;
    }

    .visit_website_url_btn a img {
        width: 24px;
    }

    .work_portfolio_company_name_data {
        gap: 10px;
    }

    .work_portfolio_company_name_data h5 {
        font-size: 20px;
    }

    .work_portfolio_more_details_area {
        padding: 15px 12px 0 12px;
    }

    .top-story {
        padding-top: 20px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .work_portfolio_company_name_data img {
        width: 36px;
    }

    .bottom_story {
        padding: 20px 20px 30px 20px;
    }

    .mid_story img {
        max-width: 80px;
    }

    .subpage_bigheader_sticker_area span {
        font-size: 14px;
    }

    h6 {
        font-size: 14px;
    }

    .drag_drop_elements_header_area .header_small_sticker_area {
        top: -24px;
    }

    .subpage_main_big_header_area h1,
    .subpage_main_big_header_area h2.biggerh1 {
        padding: 0 20px;
    }

    .biggerh1 {
        font-size: 80px;
    }

    .kin-counter {
        font-size: 30vw;
    }

    h4 {
        font-size: 22px;
    }

    .tmt-80 {
        margin-top: 80px;
    }

    .tmt-30 {
        margin-top: 30px;
    }

    .work_portfolio_more_tags_area {
        display: none;
    }

    /* Portfolio Filter Tabs Responsive */
    .portfolio_filter_tab_area {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        gap: 10px;
        padding-bottom: 10px;
        /* Optional space for a native scrollbar if it shows */
        justify-content: flex-start;
        border: none;
    }

    /* Hide standard webkit scrollbar for sleekness if desired */
    .portfolio_filter_tab_area::-webkit-scrollbar {
        display: none;
    }

    .portfolio_filter_tab_area a {
        flex-shrink: 0;
        white-space: nowrap;
        padding: 8px 16px;
        font-size: 12px;
    }

    .work_main_header_area {
        padding: 50px 0;
    }

    .about_intro_header_text_area .sticker_2 {
        display: none;
    }

    .principle_header_content_area span img {
        height: 100px;
    }

    .principle_header_content_area {
        padding: 40px 0 60px 0;
    }

    .blog_insider_details_area table {
        margin: 30px 0;
        font-size: 14px;
    }

    .blog_insider_details_area table th,
    .blog_insider_details_area table td {
        padding: 16px 20px;
        min-width: 160px;
    }

    .principle_scrolling_cards_area {
        padding: 24px;
    }

    .tag_item {
        font-size: 10px;
    }

    .new_blog_header_area .header_small_sticker_area {
        top: -22px;
    }

    h1 {
        font-size: 38px;
    }


    h2 {
        font-size: 36px;
    }

    h3 {
        font-size: 28px;
    }

    .home_intro_header_text_area .sticker_3 {
        width: 20px;
        bottom: -10px;
    }

    .home_intro_header_text_area .sticker_2 {
        width: 20px;
        left: -16px;
        top: 68%
    }

    .home_intro_header_text_area .sticker_1 {
        width: 60px;
        right: 0;
        top: -10px;
    }

    .recent_news_area .service_lede p {
        margin: 10px !important;
    }

    .home-media_folder-block {
        padding-top: 15em;
    }

}

@media screen and (min-width: 441px) and (max-width: 767px) {}

@media screen and (max-width: 440px) {
    .blog_insider_details_area table {
        margin: 20px 0;
        font-size: 13.5px;
    }

    .blog_insider_details_area table th,
    .blog_insider_details_area table td {
        padding: 14px 16px;
        min-width: 140px;
    }

    .home-media_folder-block {
        padding-top: 8em;
    }
}

/* =====================================================================
   Service pages (services.php + service.php), added 3 Sep 2026.
   Breakpoint companions to the rules at the end of style.css.
   ===================================================================== */
@media screen and (min-width: 1400px) and (max-width: 1599px) {
    .bottom_story .story_title {
        font-size: 46px;
        margin-bottom: 80px;
    }

    .services_grid .principle_title {
        font-size: 38px;
    }
}

@media screen and (max-width: 992px) {
    .bottom_story .story_title {
        margin-bottom: 60px;
    }

    .service_intro .principle_bg_area {
        padding: 40px 20px;
    }

    .service_lede p {
        font-size: 22px;
        margin-top: 0px;
    }

    .services_grid .principle_header_content_area {
        padding: 40px 0 24px 0;
    }

    .service_faq_q {
        font-size: 22px;
        padding: 22px 0;
    }

    .service_faq_header {
        margin-bottom: 44px;
    }

    .service_faq_header .header_small_sticker_area {
        top: -24px;
    }

    .service_proof_grid {
        padding-top: 50px;
    }
}

@media screen and (max-width: 768px) {
    .bottom_story .story_title {
        font-size: 36px;
    }

    .services_grid .principle_title {
        font-size: 28px;
    }

    .service_hero_deck span {
        font-size: 14px;
    }

    .service_faq_q {
        font-size: 20px;
        gap: 16px;
    }

    .service_faq_a p {
        font-size: 16px;
    }
}


/* service pages, second pass: breakpoint companions */
@media screen and (max-width: 992px) {

    /* a centred flex row that overflows hides its left end; start-align it so
       the first tab is always reachable, as on Contact */
    .service_tabs .contact_tab_list {
        justify-content: flex-start;
    }

    .service_tab_panel {
        padding-top: 40px;
    }

    .service_tab_art {
        margin-top: 36px;
    }

    .service_tab_art .art_board {
        transform: rotate(0deg);
    }

    .service_hero_deck span {
        font-size: 12px;
        /* 11px sat below the site's own floor */
        line-height: 175%;
    }

    .service_section_header {
        margin-bottom: 40px;
    }

    .service_section_header .header_small_sticker_area {
        top: -24px;
    }
}

@media screen and (max-width: 768px) {
    .home_intro_header_text_area .art_sticker {
        width: 92px;
        right: -10px;
        top: -26px;
    }

    .art_label {
        font-size: 13px;
        padding: 7px 12px 8px;
    }

    .service_tab_copy h3 {
        font-size: 24px;
    }

    .service_tab_copy p,
    .service_tab_list li {
        font-size: 16px;
    }
}


/* hub card thumbnails: smaller, with less reserved space, on phones */
@media screen and (max-width: 992px) {
    .services_grid .service_card {
        padding-bottom: 170px;
    }

    .service_card_art {
        width: 220px;
        right: -26px;
        bottom: -38px;
    }
}

@media screen and (max-width: 768px) {
    .services_grid .service_card {
        padding-bottom: 160px;
    }

    .service_card_art {
        width: 190px;
    }

    /* Portfolio hides its tag chips on phones; the service cards share that
       class but their chips are content, not decoration, so keep them. */
    .services_grid .service_card .work_portfolio_more_tags_area {
        display: flex;
    }
}


/* before / after slider on phones */
@media screen and (max-width: 768px) {
    .compare_widget {
        border-radius: 10px;
    }

    .compare_tag {
        font-size: 12px;
        padding: 7px 12px 8px;
        bottom: 12px;
    }

    .compare_tag_before {
        left: 12px;
    }

    .compare_tag_after {
        right: 12px;
    }

    .compare_grip {
        width: 38px;
        height: 38px;
    }

    .compare_deliverables {
        padding-top: 40px;
    }

    /* these chips are the content of the section, so they stay on phones */
    .compare_chips.work_portfolio_more_tags_area {
        display: flex;
        gap: 8px;
    }

    /* At 16px each chip took a whole row: fourteen of them made a 700px wall.
       Smaller type packs two or three to a row without losing legibility. */
    .compare_chips .work_portfolio_single_tag {
        padding: 7px 12px;
    }

    .compare_chips .work_portfolio_single_tag p {
        font-size: 13px;
    }
}


/* ---------------------------------------------------------------------------
   Phones: keep everything inside the two vertical rules.
   The rules sit 20px from each edge, but a Bootstrap container only insets
   12px, so the mono deck line and the proof thumbnails were crossing them.
   Home solves the same thing on its news grid with padding: 0 30px.
--------------------------------------------------------------------------- */
@media screen and (max-width: 991px) {

    .service_hub_hero .container,
    .service_proof .container {
        padding-left: 36px;
        padding-right: 36px;
    }

    .service_hub_hero .subpage_main_big_header_area h1,
    .service_hub_hero .subpage_main_big_header_area h2.biggerh1 {
        padding: 0;
    }
}


/* On the narrowest phones "Without Asket Studio" ran to two lines while
   "With Asket Studio" stayed on one, leaving the two panel headers uneven.
   360px and up are unaffected. */
@media screen and (max-width: 359px) {
    .the_difference_part_header_area h3 {
        font-size: 24px;
    }
}


/* case study extras on smaller screens */
@media screen and (max-width: 992px) {
    .case_facts {
        gap: 20px 24px;
        margin-bottom: 40px;
    }

    /* the preview would sit off-screen beside the link, so it is desktop-only */
    .case_next_preview {
        display: none;
    }

    .case_lb_prev,
    .case_lb_next {
        width: 44px;
        height: 44px;
        font-size: 22px;
    }

    .case_lb_prev {
        left: 12px;
    }

    .case_lb_next {
        right: 12px;
    }

    .case_lb_close {
        top: 14px;
        right: 14px;
    }

    .case_lightbox {
        padding: 76px 14px 88px;
    }

    .case_lb_img {
        max-height: calc(100vh - 200px);
    }
}

@media screen and (max-width: 768px) {
    .case_facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 22px 0;
    }

    .case_fact dd {
        font-size: 15px;
    }

    .case_sticky_name {
        font-size: 16px;
    }

    .case_sticky_cta {
        font-size: 12px;
        padding: 11px 15px;
    }

    /* the hover cue never fires on touch, so show it as a static badge */
    .case_gallery_cue {
        opacity: 1;
        transform: none;
        right: 10px;
        bottom: 10px;
        padding: 7px 11px;
        font-size: 11px;
    }
}


/* case study story on smaller screens */
@media screen and (max-width: 992px) {
    .case_story_section {
        padding: 10px 0 60px;
    }

    .case_story_block {
        grid-template-columns: 54px 1fr;
        gap: 0 16px;
        padding: 34px 0;
    }

    .case_story_num {
        font-size: 20px;
    }

    .case_story_h {
        font-size: 26px;
        margin-bottom: 14px;
    }

    .case_story_body p {
        font-size: 17px;
        line-height: 152%;
    }

    .case_highlights {
        margin-top: 40px;
        padding: 28px 24px 30px;
    }

    .case_highlights ul {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .case_highlights li {
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {

    /* the number moves above the heading so the copy keeps its full width */
    .case_story_block {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .case_story_num {
        padding-top: 0;
    }

    .case_story_h {
        font-size: 23px;
    }
}


/* Work grid on phones: the type chips were hidden, which left fifteen cards
   showing nothing but a logo and a name. The sector and year line carries
   that job at small sizes, and the chips come back from 576px up. */
@media screen and (max-width: 768px) {
    .work_card_meta {
        font-size: 12px;
    }

    .portfolio_filter_tab_area {
        justify-content: flex-start;
    }

    .portfolio_filter_tab_area a {
        padding: 9px 12px;
        font-size: 14px;
    }
}

@media screen and (min-width: 576px) and (max-width: 768px) {
    .work_portfolio_single_project_area .work_portfolio_more_tags_area {
        display: flex;
    }
}