/**
 * Digital Kreativ — mobile reference parity layer.
 * Draft-only review pass, 2026-10-26.
 *
 * Scope: homepage page #78 only, 320–767px. This file intentionally loads
 * after the established section and typography styles so desktop/tablet
 * remain byte-for-byte unaffected by these visual overrides.
 */
@media (max-width:767px) {
  body.page-id-78 {
    --dk-mobile-gutter: clamp(16px, 5.2vw, 24px);
    --dk-mobile-accent: #3edfd0;
    overflow-x: clip;
  }

  /* 01 — Header: match the supplied mobile reference. */
  body.page-id-78 .dk2026-header .dk2026-main {
    background: #000d12;
    border-bottom-color: transparent;
  }
  body.page-id-78 .dk2026-header .dk2026-main-inner {
    min-height: 76px;
    padding-inline: clamp(14px, 4.6vw, 22px);
    gap: 12px;
  }
  body.page-id-78 .dk2026-header .dk2026-brand {
    flex: 0 0 clamp(168px, 50vw, 195px);
    width: clamp(168px, 50vw, 195px);
    min-height: 48px;
  }
  body.page-id-78 .dk2026-header .dk2026-logo-image {
    width: clamp(168px, 50vw, 195px) !important;
  }
  body.page-id-78 .dk2026-header .dk2026-mobile summary {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 9px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--dk-mobile-accent);
    box-shadow: none;
  }
  body.page-id-78 .dk2026-header .dk2026-mobile summary svg {
    width: 32px;
    height: 24px;
    stroke-width: 2.4;
    stroke-linecap: round;
  }
  body.page-id-78 .dk2026-header .dk2026-mobile[open] {
    z-index: 130;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile[open] summary {
    position: relative;
    z-index: 140;
    background: rgba(0,20,24,.88);
    color: var(--dk-mobile-accent);
    border: 1px solid rgba(62,223,208,.42);
    border-radius: 50%;
    box-shadow: 0 8px 24px rgba(0,0,0,.32);
  }

  body.page-id-78 .dk2026-header .dk2026-mobile[open] .dk2026-close {
    display: block;
    width: 22px;
    height: 22px;
    stroke-width: 2.3;
  }
  body.page-id-78 .dk2026-header .dk2026-mobile[open]::before {
    content: '';
    position: fixed;
    inset: 76px 0 0;
    z-index: 90;
    background: rgba(0, 8, 12, .68);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    pointer-events: none;
  }

  body.page-id-78 .dk2026-header .dk2026-menu-panel {
    position: fixed;
    top: 88px;
    left: 14px;
    right: 14px;
    z-index: 100;
    width: auto;
    max-height: calc(100dvh - 104px);
    padding: 14px;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid rgba(62,223,208,.38);
    border-radius: 20px;
    background:
      linear-gradient(180deg, rgba(5,29,32,.98), rgba(2,20,23,.99)),
      radial-gradient(circle at 85% 8%, rgba(62,223,208,.10), transparent 34%);
    box-shadow:
      0 26px 60px rgba(0,0,0,.58),
      inset 0 1px 0 rgba(255,255,255,.025);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list {
    gap: 0 !important;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li {
    border-bottom: 1px solid rgba(62,223,208,.10);
  }
  body.page-id-78 .dk2026-header .dk2026-mobile-list > li:has(> a[href*="#ledig-stilling"]),
  body.page-id-78 .dkf-editorial .dkf-linklist > li:has(> a[href*="#ledig-stilling"]) {
    display: none !important;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li:last-child,
  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.dkh-menu-cta {
    border-bottom: 0;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li > a {
    min-height: 56px;
    padding: 15px 12px !important;
    border-radius: 11px;
    color: #f2f8f8 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: -.01em;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li > a:hover,
  body.page-id-78 .dk2026-header .dk2026-mobile-list > li > a:focus-visible,
  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.current-menu-item > a:not([href*="#"]) {
    background: rgba(62,223,208,.08) !important;
    color: var(--dk-mobile-accent) !important;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.dkh-menu-cta {
    margin-top: 12px !important;
    padding-top: 13px !important;
    border-top: 1px solid rgba(62,223,208,.18);
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.dkh-menu-cta > a {
    min-height: 52px;
    padding: 13px 17px !important;
    border-radius: 999px;
    background: var(--dk-mobile-accent) !important;
    color: #032423 !important;
    box-shadow: 0 10px 28px rgba(62,223,208,.16);
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.dkh-menu-cta > a:hover,
  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.dkh-menu-cta > a:focus-visible {
    background: #55e7d9 !important;
    color: #032423 !important;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list > li.dkh-menu-cta > a::after {
    content: '↗';
    font-size: 18px;
    font-weight: 700;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list .sub-menu {
    margin: 0 8px 8px 12px !important;
    padding: 2px 0 4px 12px !important;
    border-left: 1px solid rgba(62,223,208,.24);
    gap: 2px !important;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list .sub-menu a {
    min-height: 44px;
    padding: 11px 12px !important;
    border-radius: 9px;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: rgba(242,248,248,.86) !important;
  }

  body.page-id-78 .dk2026-header .dk2026-mobile-list .dkh-submenu-toggle {
    top: 8px;
    right: 8px;
    width: 44px;
    height: 44px;
    color: var(--dk-mobile-accent);
  }

  /* Mobile-only hero artwork. The source is 909x941 and includes the DK logo;
     render its complete width (no cover crop) while retaining desktop's
     separate PSD/Figma hero image and existing content layout. */
  body.page-id-78 .dk-home-hero {
    min-height: 0;
    background-color: #000a0d;
    background-image: url("https://www.digitalkreativ.no/wp-content/uploads/2026/10/Main-image-mv.png") !important;
    background-position: center top !important;
    background-size: min(100%, 430px) auto !important;
    background-repeat: no-repeat !important;
  }
  body.page-id-78 .dk-home-hero::before {
    background:
      linear-gradient(180deg,
        rgba(0,8,12,.00) 0%,
        rgba(0,8,12,.02) 58%,
        rgba(0,10,13,.55) 78%,
        #000a0d 96%,
        #000a0d 100%),
      linear-gradient(90deg,
        rgba(0,8,12,.08),
        rgba(0,8,12,0) 50%,
        rgba(0,8,12,.08));
  }
  body.page-id-78 .dk-home-hero::after {
    background-size: 210px 50%;
    background-position: left top;
    opacity: .09;
  }
  body.page-id-78 .dk-home-hero .dk-hero-main {
    /* Start the copy below the uncropped 909:941 mobile photograph. */
    padding: clamp(390px, 108vw, 465px) var(--dk-mobile-gutter) 48px;
  }
  body.page-id-78 .dk-home-hero .dk-hero-copy {
    width: min(100%, 390px);
    max-width: 390px;
    margin-inline: auto;
    align-items: center;
    text-align: center;
  }
  body.page-id-78 .dk-home-hero .dk-hero-kicker {
    margin: 0 auto 18px !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-kicker .elementor-heading-title {
    min-height: 32px;
    padding: 7px 16px;
    font-size: 10px !important;
    letter-spacing: .055em !important;
    background: rgba(2,22,25,.58);
  }
  body.page-id-78 .dk-home-hero .dk-hero-line-one,
  body.page-id-78 .dk-home-hero .dk-hero-line-two {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-home-hero .dk-hero-line-one .elementor-heading-title {
    font-size: clamp(27px, 7.2vw, 34px) !important;
    line-height: 1.08 !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-line-two .elementor-heading-title {
    font-size: clamp(34px, 8.8vw, 42px) !important;
    line-height: 1.06 !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-desc {
    max-width: 390px;
    margin: 22px auto 0 !important;
    text-align: center;
  }
  body.page-id-78 .dk-home-hero .dk-hero-desc,
  body.page-id-78 .dk-home-hero .dk-hero-desc p {
    font-size: 14px !important;
    line-height: 1.62 !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-buttons {
    width: 100%;
    justify-content: center;
    gap: 12px;
    margin-top: 30px;
  }
  body.page-id-78 .dk-home-hero .dk-hero-buttons .elementor-widget-button {
    flex: 0 1 auto;
  }
  body.page-id-78 .dk-home-hero .dk-hero-buttons .elementor-button {
    min-height: 44px;
    padding: 11px 20px !important;
    font-size: 12px !important;
  }

  /* 02 — Four mobile benefits: match the reference scale and typography. */
  body.page-id-78 .dk-home-hero .dk-hero-features {
    width: min(100%, 390px);
    margin: 38px auto 0;
    grid-template-columns: repeat(2, minmax(0,1fr));
    row-gap: 0;
    border-top: 0;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature {
    position: relative;
    min-height: 158px;
    padding: 20px 26px 30px !important;
    border-right: 0;
    border-bottom: 0;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature:nth-child(odd)::before {
    content: '';
    position: absolute;
    top: 18px;
    right: 0;
    bottom: 22px;
    width: 1px;
    background: rgba(255,255,255,.30);
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature:nth-child(-n+2)::after {
    content: '';
    position: absolute;
    left: 16%;
    right: 16%;
    bottom: 0;
    height: 1px;
    background: rgba(255,255,255,.27);
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature:nth-child(3) {
    padding-left: 26px !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon-box-wrapper {
    text-align: left !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon-box-icon {
    margin: 0 0 13px !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon,
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon svg {
    width: 40px;
    height: 40px;
    font-size: 39px !important;
    color: var(--dk-mobile-accent) !important;
    fill: var(--dk-mobile-accent) !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon-box-title {
    margin: 0 0 1px !important;
    line-height: 1.42 !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon-box-title span,
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon-box-title a {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    letter-spacing: -.01em;
    color: #f7ffff !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature .elementor-icon-box-description {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    letter-spacing: -.01em;
    color: #f7ffff !important;
  }

  /* 03 — Hero enquiry form */
  body.page-id-78 .dk-hero-lead-wrap {
    padding: 0 var(--dk-mobile-gutter) 24px !important;
    background: #000a0d;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-inner {
    width: min(100%, 390px);
    margin: -18px auto 0;
  }
  body.page-id-78 .dk-hero-lead-wrap .wpcf7 {
    padding: 28px 22px 24px;
    border-radius: 22px;
    border-color: rgba(62,223,208,.74);
    background-position: center, center center;
    box-shadow:
      inset 0 0 0 1px rgba(62,223,208,.05),
      0 13px 34px rgba(0,0,0,.46),
      0 0 18px rgba(62,223,208,.10);
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-intro {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-intro h2 {
    margin-bottom: 14px !important;
    font-size: clamp(24px, 6.4vw, 29px) !important;
    line-height: 1.14 !important;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-consent,
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-consent label {
    font-size: 12px !important;
    line-height: 1.55 !important;
    text-align: left;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-fields {
    gap: 10px;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-row {
    grid-template-columns: 1fr !important;
    gap: 10px;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-row input:not([type=submit]) {
    min-height: 50px;
    padding: 13px 18px !important;
    font-size: 13px !important;
  }
  body.page-id-78 .dk-hero-lead-wrap .dk-hero-lead-row input[type=submit] {
    min-height: 52px;
    font-size: 13px !important;
  }

  /* 04 — Services introduction */
  body.page-id-78 .dk-services-section::before {
    left: -24%;
    top: 44px;
    bottom: auto;
    width: 128vw;
    height: 92%;
    background-position: left top;
    background-size: contain;
    opacity: .58;
  }
  body.page-id-78 .dk-services-section .dk-services-layout {
    display: flex !important;
    flex-direction: column;
    gap: 30px;
    padding: 14px var(--dk-mobile-gutter) 66px;
  }
  body.page-id-78 .dk-services-section .dk-services-intro {
    width: min(100%, 460px);
    max-width: 460px !important;
    margin-inline: auto;
    align-items: center !important;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-services-kicker {
    margin: 0 auto 28px !important;
  }
  body.page-id-78 .dk-services-section .dk-services-kicker .elementor-heading-title {
    min-height: 42px;
    padding: 9px 22px;
    font-size: 12px !important;
    letter-spacing: .04em !important;
  }
  body.page-id-78 .dk-services-section .dk-services-title-a,
  body.page-id-78 .dk-services-section .dk-services-title-b,
  body.page-id-78 .dk-services-section .dk-services-description {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-services-title-a .elementor-heading-title {
    font-size: clamp(31px, 7.8vw, 38px) !important;
    line-height: 1.1 !important;
  }
  body.page-id-78 .dk-services-section .dk-services-title-b .elementor-heading-title {
    font-size: clamp(40px, 9.6vw, 48px) !important;
    line-height: 1.06 !important;
  }
  body.page-id-78 .dk-services-section .dk-services-description {
    max-width: 435px !important;
    margin: 30px auto 32px !important;
  }
  body.page-id-78 .dk-services-section .dk-services-description p {
    font-size: 15px !important;
    line-height: 1.68 !important;
  }
  body.page-id-78 .dk-services-section .dk-services-all {
    margin-inline: auto !important;
  }
  body.page-id-78 .dk-services-section .dk-services-all .elementor-button {
    min-height: 54px;
    padding: 14px 28px !important;
    font-size: 15px !important;
  }
  body.page-id-78 .dk-services-section .dk-services-all .elementor-button::after {
    margin-left: 38px;
    font-size: 24px !important;
  }
  body.page-id-78 .dk-services-section .dk-services-person {
    display: none !important;
  }

  /* 05 — Services: native horizontal snap, no hidden cards */
  body.page-id-78 .dk-services-section .dk-services-grid {
    display: grid !important;
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    grid-template-columns: none !important;
    grid-template-rows: repeat(2, max-content);
    grid-auto-flow: column;
    grid-auto-columns: min(68vw, 260px);
    column-gap: 18px;
    row-gap: 16px;
    align-items: start;
    justify-content: start;
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 16vw;
    overscroll-behavior-inline: contain;
    padding: 10px 16vw 18px;
    scrollbar-width: none;
  }
  body.page-id-78 .dk-services-section .dk-services-grid::-webkit-scrollbar {
    display: none;
  }
  body.page-id-78 .dk-services-section .dk-service-card {
    scroll-snap-align: center;
    align-self: start;
    height: max-content;
    min-height: 0;
    border-radius: 15px;
    overflow: hidden;
  }
  body.page-id-78 .dk-services-section .dk-service-image {
    height: clamp(118px, 42vw, 160px);
    flex-basis: clamp(118px, 42vw, 160px);
    border-radius: 14px 14px 9px 9px;
  }
  body.page-id-78 .dk-services-section .dk-service-card-body {
    min-height: 0;
    padding: 17px 14px 16px;
    align-items: center;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-service-icon {
    width: 34px;
    height: 34px;
    top: -29px;
    left: 13px;
    border-radius: 8px;
  }
  body.page-id-78 .dk-services-section .dk-service-icon .elementor-icon,
  body.page-id-78 .dk-services-section .dk-service-icon .elementor-icon svg {
    width: 17px !important;
    height: 17px !important;
    font-size: 17px !important;
  }
  body.page-id-78 .dk-services-section .dk-service-heading {
    width: 100%;
    margin: 0 0 7px !important;
    padding-right: 0;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-service-heading .elementor-heading-title,
  body.page-id-78 .dk-services-section .dk-service-heading .elementor-heading-title a {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.28 !important;
    letter-spacing: 0 !important;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-service-summary {
    width: 100%;
    max-width: 100%;
    margin: 0 !important;
    padding-right: 0;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-service-summary p {
    margin: 0 !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    letter-spacing: 0 !important;
    text-align: center;
  }
  body.page-id-78 .dk-services-section .dk-service-arrow {
    display: none !important;
  }

  /* 06 — Projects: full mobile network background + two-row horizontal snap. */
  body.page-id-78 .dk-projects-section {
    position: relative;
    left: 50%;
    width: 100vw !important;
    max-width: none !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    background: #155a53 !important;
  }
  body.page-id-78 .dk-projects-section::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    opacity: .44;
    background:
      repeating-linear-gradient(57deg, rgba(0,38,39,.22) 0 1px, transparent 1px 39px),
      repeating-linear-gradient(123deg, rgba(0,30,33,.18) 0 1px, transparent 1px 52px),
      url("../textures/hero-network.svg") left top / 145% auto repeat-y;
  }
  body.page-id-78 .dk-projects-section::after {
    display: none !important;
  }
  body.page-id-78 .dk-projects-section .dk-projects-inner {
    display: flex !important;
    flex-direction: column;
    gap: 0;
    width: 100%;
    max-width: none;
    padding: 34px 0 42px;
  }
  body.page-id-78 .dk-projects-section .dk-project-intro {
    display: contents !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-kicker {
    order: 1;
    margin: 0 auto 14px !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-kicker .elementor-heading-title {
    min-height: 29px;
    padding: 6px 15px !important;
    font-size: 9.5px !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-title-a,
  body.page-id-78 .dk-projects-section .dk-project-title-b,
  body.page-id-78 .dk-projects-section .dk-project-description {
    width: calc(100% - 42px);
    max-width: 310px;
    margin-inline: auto !important;
    text-align: center;
  }
  body.page-id-78 .dk-projects-section .dk-project-title-a {
    order: 2;
  }
  body.page-id-78 .dk-projects-section .dk-project-title-b {
    order: 3;
  }
  body.page-id-78 .dk-projects-section .dk-project-title-a .elementor-heading-title,
  body.page-id-78 .dk-managed-references .dk-project-title-a {
    font-size: clamp(24px, 6.8vw, 29px) !important;
    line-height: 1.12 !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-title-b .elementor-heading-title,
  body.page-id-78 .dk-managed-references .dk-project-title-b {
    font-size: clamp(34px, 9vw, 39px) !important;
    line-height: 1.05 !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-description {
    order: 4;
    margin-top: 15px !important;
    margin-bottom: 18px !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-description p {
    margin: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.62 !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-cta {
    order: 6;
    margin: 24px auto 0 !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-cta .elementor-button {
    min-height: 44px;
    padding: 11px 20px !important;
    font-size: 11.5px !important;
  }
  body.page-id-78 .dk-projects-section .dk-projects-gallery {
    order: 5;
    width: 100%;
    gap: 0;
  }
  body.page-id-78 .dk-projects-section .dk-project-filters {
    display: none !important;
  }
  body.page-id-78 .dk-projects-section .dk-project-list {
    display: grid !important;
    grid-template-columns: none !important;
    grid-template-rows: repeat(2, max-content);
    grid-auto-flow: column;
    grid-auto-columns: min(66vw, 245px);
    column-gap: 16px;
    row-gap: 16px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    overflow-x: auto;
    overflow-y: visible;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 17vw;
    overscroll-behavior-inline: contain;
    padding: 4px 17vw 8px;
    scrollbar-width: none;
  }
  body.page-id-78 .dk-projects-section .dk-project-list::-webkit-scrollbar {
    display: none;
  }
  body.page-id-78 .dk-projects-section .dk-project-card {
    scroll-snap-align: center;
    align-self: start;
    height: max-content;
    border-radius: 12px;
    background: rgba(5,54,51,.50);
  }
  body.page-id-78 .dk-projects-section .dk-project-thumb,
  body.page-id-78 .dk-managed-references .dk-reference-card .dk-reference-thumb {
    min-height: clamp(118px, 45vw, 155px);
    height: clamp(118px, 45vw, 155px);
  }
  body.page-id-78 .dk-projects-section .dk-project-card-content {
    min-height: 70px;
    padding: 12px 10px 13px;
    align-items: center;
    text-align: center;
  }
  body.page-id-78 .dk-projects-section .dk-project-name {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-projects-section .dk-project-name .elementor-heading-title,
  body.page-id-78 .dk-projects-section .dk-project-name .elementor-heading-title a,
  body.page-id-78 .dk-managed-references .dk-project-name a {
    font-size: 12.5px !important;
    line-height: 1.32 !important;
    text-align: center;
  }
  body.page-id-78 .dk-projects-section .dk-project-kind,
  body.page-id-78 .dk-projects-section .dk-project-kind p,
  body.page-id-78 .dk-managed-references .dk-project-kind {
    width: 100%;
    margin: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.45 !important;
    text-align: center;
  }

  /* 07 — About: image first, then centered copy/reasons. */
  body.page-id-78 .dk-about-section .dk-about-inner {
    display: flex !important;
    flex-direction: column;
    gap: 31px !important;
    padding: 58px var(--dk-mobile-gutter) 48px;
  }
  body.page-id-78 .dk-about-section .dk-about-photo-box {
    order: 1;
    width: min(100%, 640px);
    max-width: 640px;
    margin: 0 auto;
    border-radius: 18px;
  }
  body.page-id-78 .dk-about-section .dk-about-photo {
    aspect-ratio: 1.45 / 1;
  }
  body.page-id-78 .dk-about-section .dk-about-copy {
    order: 2;
    width: min(100%, 590px);
    max-width: 590px;
    margin-inline: auto;
    align-items: center !important;
    text-align: center;
  }
  body.page-id-78 .dk-about-section .dk-about-kicker {
    margin: 0 auto 18px !important;
  }
  body.page-id-78 .dk-about-section .dk-about-title-a,
  body.page-id-78 .dk-about-section .dk-about-title-b,
  body.page-id-78 .dk-about-section .dk-about-intro {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-about-section .dk-about-title-a .elementor-heading-title {
    font-family: 'Playfair Display',Georgia,'Times New Roman',serif !important;
    font-size: clamp(26px, 7vw, 34px) !important;
    font-weight: 700 !important;
  }
  body.page-id-78 .dk-about-section .dk-about-title-b .elementor-heading-title {
    font-family: 'Playfair Display',Georgia,'Times New Roman',serif !important;
    font-size: clamp(34px, 8.8vw, 43px) !important;
    font-weight: 700 !important;
  }
  body.page-id-78 .dk-about-section .dk-about-intro {
    max-width: 520px;
    margin: 17px auto 25px !important;
  }
  body.page-id-78 .dk-about-section .dk-about-intro p {
    font-size: 13.5px !important;
    line-height: 1.68 !important;
  }
  body.page-id-78 .dk-about-section .dk-about-reasons {
    width: 100%;
    max-width: 520px;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    text-align: left;
  }
  body.page-id-78 .dk-about-section .dk-about-reason {
    min-height: 64px;
    padding: 10px 0 13px;
    border-bottom: 1px solid rgba(62,223,208,.14);
  }
  body.page-id-78 .dk-about-section .dk-about-reason:last-child {
    border-bottom: 0;
  }

  /* 08 — Collaboration CTA: match the supplied mobile reference card. */
  body.page-id-78 .dk-about-cta-section {
    padding: 24px var(--dk-mobile-gutter) 42px !important;
    background: #010607 !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner {
    display: flex !important;
    flex-direction: column;
    align-items: center !important;
    justify-content: flex-start !important;
    width: min(100%, 330px) !important;
    min-height: 0 !important;
    gap: 0 !important;
    margin: 0 auto !important;
    padding: 22px 20px 20px !important;
    border: 1px solid rgba(62,223,208,.82) !important;
    border-radius: 22px !important;
    text-align: center;
    background-color: #001014 !important;
    background-image:
      radial-gradient(circle at 50% 32%, rgba(9,83,88,.14), transparent 38%),
      radial-gradient(circle, rgba(26,111,116,.25) 1.2px, transparent 1.7px),
      linear-gradient(180deg, rgba(0,18,23,.98), rgba(0,12,16,.99)) !important;
    background-size: 100% 100%, 24px 24px, 100% 100% !important;
    background-position: center, center, center !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.34), inset 0 0 22px rgba(62,223,208,.035) !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-logo {
    order: 1;
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    height: 72px !important;
    min-height: 72px !important;
    position: relative;
    margin: 0 0 20px !important;
    padding: 0 !important;
    border: 0 !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-logo::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    width: 72px;
    height: 1px;
    transform: translateX(-50%);
    background: rgba(62,223,208,.38);
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-logo .elementor-widget-container {
    width: 72px !important;
    height: 72px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-logo img {
    width: 68px !important;
    height: 68px !important;
    object-fit: contain !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-content {
    order: 2;
    width: 100%;
    align-items: center !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-eyebrow,
  body.page-id-78 .dk-about-cta-section .dk-about-banner-title,
  body.page-id-78 .dk-about-cta-section .dk-about-banner-desc {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-eyebrow {
    margin: 0 0 9px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-eyebrow .elementor-heading-title {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: .035em !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-title {
    margin: 0 0 9px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-title .elementor-heading-title {
    font-family: 'Playfair Display',Georgia,'Times New Roman',serif !important;
    font-size: clamp(22px, 6vw, 26px) !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;
    letter-spacing: -.02em !important;
    color: var(--dka-cta) !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-desc {
    max-width: 250px;
    margin: 0 auto 14px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-desc p {
    margin: 0 !important;
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    line-height: 1.58 !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-call {
    order: 3;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    width: 100% !important;
    margin: 0 auto 14px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-phone-icon {
    width: 34px !important;
    min-width: 34px !important;
    margin: 0 0 2px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-phone-icon .elementor-icon {
    font-size: 31px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-phone-icon svg {
    width: 31px !important;
    height: 31px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-call-text {
    align-items: center !important;
    gap: 4px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-phone-label .elementor-heading-title {
    font-size: 12px !important;
    line-height: 1.3 !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-phone .elementor-heading-title,
  body.page-id-78 .dk-about-cta-section .dk-about-banner-phone .elementor-heading-title a {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-btn {
    order: 4;
    justify-self: auto !important;
    margin: 0 auto !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-btn .elementor-button {
    min-width: 138px !important;
    min-height: 42px !important;
    padding: 10px 18px !important;
    font-size: 11px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-btn .elementor-button::after {
    margin-left: 15px !important;
    font-size: 18px !important;
  }
  body.page-id-78 .dk-about-cta-section .dk-about-banner-divider {
    display: none !important;
  }

  /* Preserve the separately corrected DIGITAL STRATEGI artwork. */
  body.page-id-78 .dkg-strategy .dkg-inner.elementor-element {
    padding: 48px var(--dk-mobile-gutter) 38px !important;
    gap: 13px !important;
  }
  body.page-id-78 .dkg-strategy .dkg-copy {
    text-align: center;
    align-items: center !important;
  }
  body.page-id-78 .dkg-strategy .dkg-kicker {
    margin: 0 auto 19px !important;
  }
  body.page-id-78 .dkg-strategy .dkg-heading,
  body.page-id-78 .dkg-strategy .dkg-highlight,
  body.page-id-78 .dkg-strategy .dkg-description {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dkg-strategy .dkg-actions {
    justify-content: center !important;
  }
  body.page-id-78 .dkg-strategy .dkg-visual {
    width: min(100%, 620px) !important;
    aspect-ratio: 1.5 !important;
  }
  body.page-id-78 .dkg-strategy .dkg-image {
    top: -36% !important;
    right: -4% !important;
    width: 110% !important;
  }

  /* 09 — Testimonials */
  body.page-id-78 .dkt-v2 .dkt-v2__inner {
    display: flex;
    flex-direction: column-reverse;
    gap: 28px;
    padding: 58px var(--dk-mobile-gutter) 62px;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__intro {
    width: min(100%, 570px);
    margin-inline: auto;
    align-items: center;
    text-align: center;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__eyebrow {
    margin: 0 auto 18px;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__intro h2 {
    width: 100%;
    font-family: 'Playfair Display',Georgia,'Times New Roman',serif !important;
    font-size: clamp(28px, 7.6vw, 38px) !important;
    line-height: 1.15 !important;
    text-align: center;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__intro p {
    max-width: 520px;
    font-size: 13.5px !important;
    line-height: 1.68 !important;
    text-align: center;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__carousel {
    width: min(100%, 520px);
    margin-inline: auto;
    padding: 24px 20px 15px;
    border-radius: 17px;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__quote {
    font-size: 13px !important;
    line-height: 1.68 !important;
  }
  body.page-id-78 .dkt-v2 .dkt-v2__arrows button,
  body.page-id-78 .dkt-v2 .dkt-v2__dots button {
    min-width: 44px;
    min-height: 44px;
  }

  /* 10 — Statistics: compact 2x2 proof grid matching the mobile reference. */
  body.page-id-78 .dks-statistics .dks-inner.elementor-element {
    position: relative;
    width: min(calc(100% - 48px), 320px);
    max-width: 320px;
    margin: 0 auto;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 0 !important;
    padding: 18px 0 38px;
  }
  body.page-id-78 .dks-statistics .dks-cell {
    position: relative;
    min-height: 88px;
    padding: 12px 18px !important;
    gap: 5px !important;
    border: 0 !important;
    align-items: flex-start !important;
    justify-content: center !important;
  }
  body.page-id-78 .dks-statistics .dks-cell:nth-child(odd) {
    border-right: 1px solid rgba(62,223,208,.28) !important;
  }
  body.page-id-78 .dks-statistics .dks-cell:nth-child(-n+2)::after {
    content: '';
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 1px;
    background: rgba(62,223,208,.26);
  }
  body.page-id-78 .dks-statistics .dks-value {
    margin: 0 !important;
  }
  body.page-id-78 .dks-statistics .dks-value .elementor-heading-title {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    line-height: 1.12 !important;
    letter-spacing: -.02em !important;
    color: #3edfd0 !important;
  }
  body.page-id-78 .dks-statistics .dks-label {
    margin: 1px 0 0 !important;
  }
  body.page-id-78 .dks-statistics .dks-label .elementor-heading-title {
    font-family: 'Poppins', Arial, sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    color: #f2f7f6 !important;
  }
  body.page-id-78 .dks-statistics .dks-note {
    display: none !important;
  }

  /* 11 — Contact */
  body.page-id-78 .dk-contact-section {
    background-position: 43% center !important;
  }
  body.page-id-78 .dk-contact-section::before {
    background: linear-gradient(180deg, rgba(1,9,12,.5) 0%, rgba(1,10,12,.62) 52%, rgba(0,10,11,.4) 100%) !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-inner.elementor-element {
    display: flex !important;
    flex-direction: column !important;
    gap: 27px !important;
    padding: 58px var(--dk-mobile-gutter) 62px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-copy {
    width: min(100%, 560px);
    margin-inline: auto;
    align-items: center !important;
    text-align: center;
  }
  body.page-id-78 .dk-contact-section .dk-contact-eyebrow {
    margin: 0 auto 18px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-heading,
  body.page-id-78 .dk-contact-section .dk-contact-heading-accent,
  body.page-id-78 .dk-contact-section .dk-contact-intro {
    width: 100%;
    text-align: center;
  }
  body.page-id-78 .dk-contact-section .dk-contact-heading .elementor-heading-title {
    font-family: 'Playfair Display',Georgia,'Times New Roman',serif !important;
    font-size: clamp(27px, 7vw, 34px) !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-heading-accent .elementor-heading-title {
    font-family: 'Playfair Display',Georgia,'Times New Roman',serif !important;
    font-size: clamp(34px, 8.7vw, 43px) !important;
    line-height: 1.1 !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-intro {
    max-width: 500px;
    margin: 0 auto 21px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-intro p {
    font-size: 13.5px !important;
    line-height: 1.68 !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-details {
    width: 100%;
    flex-direction: column !important;
    justify-content: center;
    align-items: center !important;
    gap: 10px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-detail {
    width: auto !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-detail a {
    justify-content: center;
    font-size: 12px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-form-panel {
    width: min(100%, 520px);
    margin-inline: auto;
    padding: 19px 17px 17px !important;
    border-radius: 11px !important;
    background: rgba(67,219,207,.72) !important;
    border-color: rgba(196,255,249,.22) !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-two > p {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-form-fields input[type="text"],
  body.page-id-78 .dk-contact-section .dk-contact-form-fields input[type="tel"],
  body.page-id-78 .dk-contact-section .dk-contact-form-fields input[type="email"],
  body.page-id-78 .dk-contact-section .dk-contact-form-fields textarea {
    min-height: 45px !important;
    font-size: 13px !important;
  }
  body.page-id-78 .dk-contact-section .dk-contact-form-fields input[type="submit"] {
    min-height: 48px !important;
    font-size: 13px !important;
  }

  /* 12 — Footer */
  body.page-id-78 .dkf-editorial .dkf-in {
    padding: 50px var(--dk-mobile-gutter) 96px;
  }
  body.page-id-78 .dkf-editorial .dkf-cols {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 36px 20px;
    padding-bottom: 48px;
  }
  body.page-id-78 .dkf-editorial .dkf-brand-col,
  body.page-id-78 .dkf-editorial .dkf-contact {
    grid-column: 1 / -1;
  }
  body.page-id-78 .dkf-editorial .dkf-brand {
    width: 190px;
  }
  body.page-id-78 .dkf-editorial .dkf-description {
    max-width: 345px;
    margin: 17px 0 17px !important;
    font-size: 12.5px !important;
    line-height: 1.75 !important;
  }
  body.page-id-78 .dkf-editorial .dkf-social {
    gap: 12px;
  }
  body.page-id-78 .dkf-editorial .dkf-social a {
    width: 44px;
    height: 44px;
    border: 1px solid rgba(62,223,208,.62);
    border-radius: 50%;
    background: rgba(0,18,22,.32);
  }
  body.page-id-78 .dkf-editorial h3 {
    margin-bottom: 16px !important;
    font-size: 15px !important;
  }
  body.page-id-78 .dkf-editorial .dkf-linklist {
    gap: 10px;
  }
  body.page-id-78 .dkf-editorial .dkf-linklist a,
  body.page-id-78 .dkf-editorial .dkf-contact-line a {
    font-size: 12px !important;
  }
  body.page-id-78 .dkf-editorial .dkf-contact {
    padding-top: 25px;
    border-top: 1px solid rgba(62,223,208,.16);
  }
  body.page-id-78 .dkf-editorial .dkf-contact-cta {
    max-width: 100%;
    min-height: 46px;
  }
  body.page-id-78 .dkf-editorial .dkf-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  body.page-id-78 .dkf-editorial .dkf-legal-list {
    flex-wrap: wrap;
    gap: 10px;
  }

  /* Cross-section mobile safety */
  body.page-id-78 :is(
    .dk-home-hero,
    .dk-hero-lead-wrap,
    .dk-services-section,
    .dk-projects-section,
    .dk-about-section,
    .dk-about-cta-section,
    .dkt-v2,
    .dks-statistics,
    .dkg-strategy,
    .dk-contact-section,
    .dkf-editorial
  ) img {
    max-width: 100%;
  }
  body.page-id-78 :is(
    .dk-services-section .dk-services-grid,
    .dk-projects-section .dk-project-list
  ) {
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width:430px) {
  body.page-id-78 {
    --dk-mobile-gutter: 17px;
  }
  body.page-id-78 .dk2026-header .dk2026-brand {
    flex-basis: clamp(168px, 50vw, 195px);
    width: clamp(168px, 50vw, 195px);
  }
  body.page-id-78 .dk2026-header .dk2026-logo-image {
    width: clamp(168px, 50vw, 195px) !important;
  }
  body.page-id-78 .dk-home-hero {
    /* At narrow phone widths the full image scales to the viewport width,
       preserving the complete brand mark and avoiding horizontal clipping. */
    background-size: 100% auto !important;
    background-position: center top !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-main {
    padding-top: clamp(390px, 108vw, 465px);
    padding-bottom: 44px;
  }
  body.page-id-78 .dk-home-hero .dk-hero-buttons {
    gap: 8px;
  }
  body.page-id-78 .dk-home-hero .dk-hero-buttons .elementor-button {
    padding-inline: 14px !important;
    font-size: 10.5px !important;
  }
  body.page-id-78 .dk-services-section .dk-services-grid {
    grid-auto-columns: min(68vw, 260px);
    scroll-padding-inline: 16vw;
    padding-inline: 16vw;
  }
  body.page-id-78 .dk-projects-section .dk-project-list {
    grid-auto-columns: min(66vw, 245px);
    scroll-padding-inline: 17vw;
    padding-inline: 17vw;
  }
  body.page-id-78 .dk-projects-section .dk-project-thumb,
  body.page-id-78 .dk-managed-references .dk-reference-card .dk-reference-thumb {
    height: clamp(118px, 45vw, 155px);
    min-height: clamp(118px, 45vw, 155px);
  }
}

@media (max-width:360px) {
  body.page-id-78 {
    --dk-mobile-gutter: 15px;
  }
  body.page-id-78 .dk2026-header .dk2026-brand {
    flex-basis: clamp(168px, 50vw, 180px);
    width: clamp(168px, 50vw, 180px);
  }
  body.page-id-78 .dk2026-header .dk2026-logo-image {
    width: clamp(168px, 50vw, 180px) !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-main {
    padding-top: 380px;
  }
  body.page-id-78 .dk-home-hero .dk-hero-buttons .elementor-button {
    padding-inline: 16px !important;
    font-size: 11px !important;
  }
  body.page-id-78 .dk-home-hero .dk-hero-feature {
    padding-inline: 12px !important;
  }
  body.page-id-78 .dk-services-section .dk-services-grid {
    grid-auto-columns: min(68vw, 235px);
    scroll-padding-inline: 16vw;
    padding-inline: 16vw;
  }
  body.page-id-78 .dk-projects-section .dk-project-list {
    grid-auto-columns: min(66vw, 220px);
    scroll-padding-inline: 17vw;
    padding-inline: 17vw;
  }
  body.page-id-78 .dk-projects-section .dk-project-thumb,
  body.page-id-78 .dk-managed-references .dk-reference-card .dk-reference-thumb {
    height: clamp(112px, 45vw, 145px);
    min-height: clamp(112px, 45vw, 145px);
  }
  body.page-id-78 .dks-statistics .dks-cell {
    padding-inline: 10px !important;
  }
}

@media (prefers-reduced-motion:reduce) and (max-width:767px) {
  body.page-id-78 .dk-services-section .dk-services-grid,
  body.page-id-78 .dk-projects-section .dk-project-list {
    scroll-behavior: auto !important;
  }
}
