/* Extracted from header-fixed.css: mobile blog, article, certificate and content polish. */

/* Mobile blog archive: card-based Concept 1 styling for the article listing page. */
@media (max-width: 900px){
  body.kw-blog-page{
    max-width: 100%;
    overflow-x: hidden !important;
    background: linear-gradient(180deg, #fffaf2 0%, #f4eadc 56%, #eddfce 100%) !important;
  }

  body.kw-blog-page .site-header{
    display: none !important;
  }

  body.kw-blog-page .kw-news-page{
    width: min(100%, 430px) !important;
    margin: 0 auto !important;
    padding: max(14px, env(safe-area-inset-top)) 14px 34px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,.82), rgba(255,255,255,0) 30%),
      linear-gradient(180deg, #fffaf2 0%, #f4eadc 56%, #eddfce 100%) !important;
  }

  body.kw-blog-page .kw-news-page .kw-news-page-inner{
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  body.kw-blog-page .kw-news-archive-hero,
  body.kw-blog-page .kw-news-intro{
    margin: 0 0 14px !important;
    padding: 18px !important;
    border: 1px solid rgba(81,108,96,.14) !important;
    border-radius: 22px !important;
    background:
      radial-gradient(circle at 92% 8%, rgba(234,239,229,.62), rgba(234,239,229,0) 36%),
      linear-gradient(145deg, rgba(255,255,255,.98), rgba(248,244,237,.95)) !important;
    box-shadow: 0 18px 46px rgba(74,62,42,.10), inset 0 1px 0 rgba(255,255,255,.92) !important;
  }

  body.kw-blog-page .kw-news-archive-hero p{
    margin: 0 0 8px !important;
    color: #60786e !important;
    font-size: 11px !important;
    font-weight: 750 !important;
    letter-spacing: .04em !important;
  }

  body.kw-blog-page .kw-news-archive-hero h1{
    margin: 0 0 10px !important;
    color: #222521 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(31px, 10vw, 44px) !important;
    line-height: 1.03 !important;
    letter-spacing: 0 !important;
  }

  body.kw-blog-page .kw-news-archive-hero span,
  body.kw-blog-page .kw-news-intro p{
    display: block !important;
    color: #4f5b56 !important;
    font-size: 13px !important;
    line-height: 1.56 !important;
  }

  body.kw-blog-page .kw-news-grid.archive{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card{
    display: grid !important;
    grid-template-columns: 112px minmax(0, 1fr) !important;
    min-height: 118px !important;
    overflow: hidden !important;
    border: 1px solid rgba(81,108,96,.12) !important;
    border-radius: 18px !important;
    background: rgba(255,253,248,.96) !important;
    box-shadow: 0 14px 34px rgba(54,45,31,.08), inset 0 1px 0 rgba(255,255,255,.9) !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card-media{
    aspect-ratio: auto !important;
    height: 100% !important;
    min-height: 118px !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card-body{
    min-width: 0 !important;
    padding: 10px 12px !important;
    gap: 6px !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-badges{
    gap: 5px !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-badge{
    padding: 4px 8px !important;
    font-size: 10px !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-title{
    font-size: 15px !important;
    line-height: 1.18 !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-excerpt,
  body.kw-blog-page .kw-news-grid.archive .kw-news-readmore{
    display: none !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-meta{
    gap: 5px 9px !important;
    color: #6f7774 !important;
    font-size: 10.5px !important;
  }

  body.kw-blog-page .kw-news-actions,
  body.kw-blog-page .kw-news-pagination{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }

  body.kw-blog-page .kw-news-action,
  body.kw-blog-page .kw-news-pagination .page-numbers{
    min-height: 36px !important;
    padding: 9px 13px !important;
    border: 1px solid rgba(81,108,96,.18) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.84) !important;
    color: #3f5a50 !important;
    box-shadow: 0 10px 24px rgba(54,45,31,.06) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
  }
}

/* Mobile polish pass: Concept-style article pages, certificates, pricing and maps. */
@media (max-width: 900px){
  .kw-mobile-concept-home .kwm-map-switcher{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 16px 0 10px !important;
  }

  .kw-mobile-concept-home .kwm-map-tab{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 9px 12px !important;
    border: 1px solid rgba(81,108,96,.17) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.78) !important;
    color: #4b6359 !important;
    box-shadow: 0 10px 24px rgba(54,45,31,.07), inset 0 1px 0 rgba(255,255,255,.92) !important;
    font: inherit !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: transform .18s ease, background-color .18s ease, color .18s ease, box-shadow .18s ease !important;
  }

  .kw-mobile-concept-home .kwm-map-tab.is-active{
    background: #58746b !important;
    color: #fff !important;
    box-shadow: 0 16px 32px rgba(64,82,72,.22), inset 0 1px 0 rgba(255,255,255,.2) !important;
  }

  .kw-mobile-concept-home .kwm-map-item{
    display: none !important;
  }

  .kw-mobile-concept-home .kwm-map-item.is-active{
    display: block !important;
    animation: kwmSoftReveal .24s ease both !important;
  }

  .kw-mobile-concept-home .kwm-map-item iframe{
    min-height: 230px !important;
    height: 230px !important;
    border-radius: 17px !important;
    background: #f7f1e8 !important;
  }

  .kw-mobile-concept-home .kwm-contact-card .kwm-location-card{
    position: relative !important;
    overflow: hidden !important;
  }

  .kw-mobile-concept-home .kwm-contact-card .kwm-contact-icon{
    flex: 0 0 auto !important;
    width: 36px !important;
    height: 36px !important;
    margin-top: 1px !important;
  }

  .kw-mobile-concept-home .kwm-cert-row{
    align-items: center !important;
    margin-top: 4px !important;
  }

  .kw-mobile-concept-home .kwm-cert-card{
    flex: 0 0 clamp(132px, 39vw, 168px) !important;
    min-width: clamp(132px, 39vw, 168px) !important;
    height: clamp(136px, 41vw, 174px) !important;
    padding: 10px !important;
    border-radius: 18px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,.9), rgba(255,255,255,0) 48%),
      rgba(255,253,248,.94) !important;
    box-shadow: 0 15px 34px rgba(58,46,27,.10), inset 0 1px 0 rgba(255,255,255,.94) !important;
  }

  .kw-mobile-concept-home .kwm-cert-card a,
  .kw-mobile-concept-home .kwm-cert-card img{
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  .kw-mobile-concept-home .kwm-cert-card img{
    object-fit: contain !important;
    object-position: center !important;
  }

  .kw-mobile-concept-home .kwm-cert-card figcaption{
    display: none !important;
  }

  .kw-mobile-concept-home .kwm-cert-counter{
    display: table !important;
    margin: 10px auto 0 !important;
    padding: 5px 12px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.68) !important;
    color: #60776e !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    box-shadow: inset 0 0 0 1px rgba(81,108,96,.12) !important;
  }

  .kw-mobile-concept-home .kwm-certificates.is-expanded .kwm-cert-track{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    overflow: visible !important;
    gap: 10px !important;
  }

  .kw-mobile-concept-home .kwm-certificates.is-expanded .kwm-cert-card{
    width: 100% !important;
    min-width: 0 !important;
    height: 168px !important;
  }

  .kw-mobile-concept-home .kwm-price-card .kwm-rich-content ul{
    display: grid !important;
    gap: 8px !important;
    margin: 12px 0 !important;
    padding: 0 !important;
  }

  .kw-mobile-concept-home .kwm-price-card .kwm-rich-content li{
    display: block !important;
    position: relative !important;
    margin: 0 !important;
    padding: 12px 13px 12px 36px !important;
    border: 1px solid rgba(81,108,96,.11) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.78) !important;
    box-shadow: 0 10px 24px rgba(52,43,30,.055), inset 0 1px 0 rgba(255,255,255,.9) !important;
    color: #3f4944 !important;
    line-height: 1.42 !important;
  }

  .kw-mobile-concept-home .kwm-price-card .kwm-rich-content li::before{
    content: "" !important;
    position: absolute !important;
    top: 18px !important;
    left: 16px !important;
    width: 7px !important;
    height: 7px !important;
    border-radius: 999px !important;
    background: #58746b !important;
    box-shadow: 0 0 0 5px rgba(88,116,107,.10) !important;
  }

  .kw-mobile-concept-home .kwm-help-card,
  .kw-mobile-concept-home .kwm-service-detail,
  .kw-mobile-concept-home .kwm-price-card,
  .kw-mobile-concept-home .kwm-contact-card,
  body.kw-city-template-page .kw-city-card,
  body.kw-blog-page .kw-news-card,
  body.kw-news-single .kw-news-single-hero,
  body.kw-news-single .kw-news-author-card,
  body.kw-news-single .kw-news-single-content{
    backdrop-filter: blur(14px) saturate(1.04) !important;
    -webkit-backdrop-filter: blur(14px) saturate(1.04) !important;
  }

  .kw-mobile-concept-home a,
  .kw-mobile-concept-home button,
  body.kw-city-template-page a,
  body.kw-blog-page a,
  body.kw-news-single a{
    -webkit-tap-highlight-color: transparent !important;
  }

  @media (prefers-reduced-motion: no-preference){
    .kw-mobile-concept-home .kwm-primary,
    .kw-mobile-concept-home .kwm-link,
    .kw-mobile-concept-home .kwm-text-link,
    .kw-mobile-concept-home .kwm-contact-action,
    .kw-mobile-concept-home .kwm-cert-card,
    body.kw-city-template-page .kw-city-card,
    body.kw-blog-page .kw-news-card{
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease !important;
    }

    .kw-mobile-concept-home .kwm-primary:active,
    .kw-mobile-concept-home .kwm-link:active,
    .kw-mobile-concept-home .kwm-contact-action:active,
    .kw-mobile-concept-home .kwm-cert-card:active,
    body.kw-city-template-page .kw-city-card:active,
    body.kw-blog-page .kw-news-card:active{
      transform: translateY(1px) scale(.992) !important;
    }
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child{
    position: relative !important;
    display: block !important;
    min-height: 278px !important;
    overflow: hidden !important;
    border-radius: 20px !important;
    background: #181914 !important;
    box-shadow: 0 20px 52px rgba(31,25,17,.18) !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child .kw-news-card-media{
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child .kw-news-card-media::after{
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.76)) !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child .kw-news-card-body{
    position: absolute !important;
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    z-index: 2 !important;
    padding: 0 !important;
    color: #fff !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child .kw-news-title{
    color: #fff !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(24px, 7.5vw, 33px) !important;
    line-height: 1.08 !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child .kw-news-meta{
    color: rgba(255,255,255,.86) !important;
    font-size: 12px !important;
  }

  body.kw-blog-page .kw-news-grid.archive .kw-news-card:first-child .kw-news-badge{
    background: rgba(255,255,255,.9) !important;
    color: #4b6359 !important;
  }

  body.kw-news-single{
    max-width: 100% !important;
    overflow-x: hidden !important;
    background: linear-gradient(180deg, #fffaf2 0%, #f4eadc 58%, #eddfce 100%) !important;
  }

  body.kw-news-single .site-header{
    display: none !important;
  }

  body.kw-news-single .kw-news-single-page{
    width: min(100%, 430px) !important;
    margin: 0 auto !important;
    padding: max(14px, env(safe-area-inset-top)) 14px 38px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,.85), rgba(255,255,255,0) 32%),
      linear-gradient(180deg, #fffaf2 0%, #f4eadc 58%, #eddfce 100%) !important;
  }

  body.kw-news-single .kw-news-page-inner{
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  body.kw-news-single .kw-news-single-hero{
    overflow: hidden !important;
    margin: 0 0 12px !important;
    border: 1px solid rgba(81,108,96,.15) !important;
    border-radius: 24px !important;
    background:
      radial-gradient(circle at 92% 9%, rgba(234,239,229,.72), rgba(234,239,229,0) 38%),
      linear-gradient(145deg, rgba(255,255,255,.98), rgba(248,244,237,.95)) !important;
    box-shadow: 0 20px 52px rgba(74,62,42,.12), inset 0 1px 0 rgba(255,255,255,.94) !important;
  }

  body.kw-news-single .kw-news-single-hero .kw-news-back,
  body.kw-news-single .kw-news-single-hero .kw-news-badges,
  body.kw-news-single .kw-news-single-hero .kw-news-single-title,
  body.kw-news-single .kw-news-single-hero .kw-news-meta{
    margin-left: 17px !important;
    margin-right: 17px !important;
  }

  body.kw-news-single .kw-news-single-hero .kw-news-back{
    display: inline-flex !important;
    margin-top: 17px !important;
    margin-bottom: 10px !important;
    color: #4f6b61 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
  }

  body.kw-news-single .kw-news-single-title{
    color: #222521 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: clamp(32px, 10.6vw, 46px) !important;
    line-height: 1.03 !important;
    letter-spacing: 0 !important;
  }

  body.kw-news-single .kw-news-meta{
    color: #6f7774 !important;
    font-size: 12px !important;
  }

  body.kw-news-single .kw-news-single-image{
    margin: 14px 0 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }

  body.kw-news-single .kw-news-single-image img{
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: 260px !important;
    object-fit: cover !important;
  }

  body.kw-news-single .kw-news-author-card{
    display: grid !important;
    grid-template-columns: 88px minmax(0, 1fr) !important;
    gap: 13px !important;
    align-items: center !important;
    margin: 0 0 12px !important;
    padding: 12px !important;
    border: 1px solid rgba(81,108,96,.13) !important;
    border-radius: 20px !important;
    background: rgba(255,253,248,.94) !important;
    box-shadow: 0 16px 38px rgba(54,45,31,.09), inset 0 1px 0 rgba(255,255,255,.92) !important;
  }

  body.kw-news-single .kw-news-author-card img{
    width: 88px !important;
    height: 88px !important;
    object-fit: cover !important;
    border-radius: 16px !important;
  }

  body.kw-news-single .kw-news-author-card span{
    display: block !important;
    color: #60786e !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
  }

  body.kw-news-single .kw-news-author-card strong{
    display: block !important;
    color: #222521 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: 20px !important;
    line-height: 1.12 !important;
  }

  body.kw-news-single .kw-news-author-card p{
    margin: 5px 0 7px !important;
    color: #56615c !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  body.kw-news-single .kw-news-author-card a{
    color: #3f5a50 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-decoration: underline !important;
    text-underline-offset: 4px !important;
  }

  body.kw-news-single .kw-news-single-content,
  body.kw-news-single .kw-news-city-links,
  body.kw-news-single .kw-news-related{
    margin: 0 0 12px !important;
    padding: 17px !important;
    border: 1px solid rgba(81,108,96,.13) !important;
    border-radius: 22px !important;
    background: rgba(255,253,248,.95) !important;
    box-shadow: 0 16px 38px rgba(54,45,31,.08), inset 0 1px 0 rgba(255,255,255,.92) !important;
  }

  body.kw-news-single .kw-news-single-content h2,
  body.kw-news-single .kw-news-single-content h3{
    color: #222521 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    line-height: 1.08 !important;
  }

  body.kw-news-single .kw-news-single-content p,
  body.kw-news-single .kw-news-single-content li{
    color: #4f5b56 !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  body.kw-news-single .kw-news-actions{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 12px 0 !important;
  }

  body.kw-news-single .kw-news-action{
    min-height: 38px !important;
    padding: 10px 14px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
  }

  body.kw-news-single .kw-news-grid.related{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.kw-city-template-page .kw-city-longform{
    display: grid !important;
    gap: 10px !important;
    margin-top: 12px !important;
  }

  body.kw-city-template-page .kw-city-longform > *{
    max-width: 100% !important;
  }

  body.kw-city-template-page .kw-city-longform h2,
  body.kw-city-template-page .kw-city-longform h3{
    margin: 0 !important;
    color: #222521 !important;
    font-size: 20px !important;
    line-height: 1.15 !important;
  }

  body.kw-city-template-page .kw-city-longform p,
  body.kw-city-template-page .kw-city-longform ul,
  body.kw-city-template-page .kw-city-longform ol{
    margin: 0 !important;
    padding: 14px !important;
    border: 1px solid rgba(81,108,96,.11) !important;
    border-radius: 16px !important;
    background: rgba(255,253,248,.78) !important;
    box-shadow: 0 10px 24px rgba(54,45,31,.055), inset 0 1px 0 rgba(255,255,255,.9) !important;
    color: #4f5b56 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
  }
}

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

@media (max-width: 900px){
  .kw-lightbox{
    padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom)) !important;
  }

  .kw-lightbox-image{
    width: auto !important;
    max-width: calc(100vw - 32px) !important;
    max-height: calc(100dvh - 108px) !important;
    object-fit: contain !important;
    background: #fff !important;
  }

  .kw-mobile-concept-home .kwm-news-card:not(.is-featured) .kw-news-card-media,
  body.kw-blog-page .kw-news-grid.archive .kw-news-card:not(:first-child) .kw-news-card-media,
  body.kw-city-template-page .kw-news-grid.related .kw-news-card .kw-news-card-media{
    display: block !important;
    align-self: stretch !important;
    height: 100% !important;
    min-height: 116px !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background: #ece7dc !important;
  }

  .kw-mobile-concept-home .kwm-news-card:not(.is-featured) .kw-news-card-media img,
  body.kw-blog-page .kw-news-grid.archive .kw-news-card:not(:first-child) .kw-news-card-media img,
  body.kw-city-template-page .kw-news-grid.related .kw-news-card .kw-news-card-media img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.kw-city-template-page .kw-news-grid.related .kw-news-card{
    display: grid !important;
    grid-template-columns: minmax(104px, 34%) minmax(0, 1fr) !important;
    min-height: 124px !important;
    overflow: hidden !important;
  }

  .kw-mobile-concept-home .kwm-certificates{
    overflow: visible !important;
  }

  .kw-mobile-concept-home .kwm-cert-row{
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr) 30px !important;
    gap: 8px !important;
    align-items: center !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  .kw-mobile-concept-home .kwm-cert-track{
    gap: 10px !important;
    padding: 2px 0 6px !important;
    overflow-x: auto !important;
  }

  .kw-mobile-concept-home .kwm-cert-card{
    flex: 0 0 clamp(94px, 29vw, 122px) !important;
    min-width: clamp(94px, 29vw, 122px) !important;
    max-width: clamp(94px, 29vw, 122px) !important;
    height: clamp(112px, 34vw, 146px) !important;
    padding: 8px !important;
    border-radius: 17px !important;
    border: 1px solid rgba(81,108,96,.13) !important;
    background: rgba(255,253,248,.92) !important;
    box-shadow: none !important;
  }

  .kw-mobile-concept-home .kwm-cert-card:hover,
  .kw-mobile-concept-home .kwm-cert-card:active{
    transform: none !important;
    box-shadow: none !important;
  }

  .kw-mobile-concept-home .kwm-cert-arrow{
    width: 30px !important;
    height: 30px !important;
    box-shadow: none !important;
  }

  .kw-mobile-concept-home .kwm-certificates.is-expanded .kwm-cert-track{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 9px !important;
    overflow: visible !important;
  }

  .kw-mobile-concept-home .kwm-certificates.is-expanded .kwm-cert-card{
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 128px !important;
  }

  .kw-mobile-concept-home .kwm-location-card.kwm-contact-line{
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    min-height: 76px !important;
  }

  .kw-mobile-concept-home .kwm-location-card.kwm-contact-line .kwm-contact-icon{
    align-self: center !important;
    margin: 0 !important;
  }

  .kw-mobile-concept-home .kwm-location-card.kwm-contact-line .kwm-contact-direct{
    display: flex !important;
    align-items: center !important;
    min-height: 44px !important;
    line-height: 1.12 !important;
  }

  .kw-mobile-concept-home .kwm-location-card.kwm-contact-line .kwm-contact-direct strong{
    display: block !important;
    margin: 0 !important;
  }

  body.kw-city-template-page .kw-city-grid{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body.kw-city-template-page .kw-city-grid .kw-city-card:first-child{
    grid-column: 1 / -1 !important;
  }

  body.kw-city-template-page .kw-city-grid .kw-city-card{
    padding: 14px !important;
    min-height: 0 !important;
  }

  body.kw-city-template-page .kw-city-grid .kw-city-card h3{
    font-size: 16px !important;
    line-height: 1.15 !important;
  }

  body.kw-city-template-page .kw-city-grid .kw-city-card p{
    font-size: 12px !important;
    line-height: 1.45 !important;
  }

  .kw-mobile-concept-home .kwm-card.kwm-process{
    padding: 18px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(81,108,96,.14) !important;
    background:
      radial-gradient(circle at 92% 8%, rgba(234,239,229,.62), rgba(234,239,229,0) 36%),
      linear-gradient(145deg, rgba(255,255,255,.98), rgba(248,244,237,.95)) !important;
    box-shadow: 0 18px 46px rgba(74,62,42,.10), inset 0 1px 0 rgba(255,255,255,.92) !important;
  }

  .kw-mobile-concept-home .kwm-card.kwm-process h2{
    margin: 0 0 12px !important;
    font-size: clamp(25px, 7.8vw, 34px) !important;
    line-height: 1.06 !important;
  }

  .kw-mobile-concept-home .kwm-steps,
  body.kw-city-template-page .kw-city-steps{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 0 !important;
  }

  .kw-mobile-concept-home .kwm-steps::before{
    display: none !important;
  }

  .kw-mobile-concept-home .kwm-step,
  body.kw-city-template-page .kw-city-step{
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
    justify-items: start !important;
    padding: 10px !important;
    min-height: 0 !important;
    border: 1px solid rgba(81,108,96,.11) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.76) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.9) !important;
    text-align: left !important;
  }

  .kw-mobile-concept-home .kwm-step .kwm-timeline-icon,
  body.kw-city-template-page .kw-city-step-number{
    grid-row: 1 / span 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    border-radius: 13px !important;
    background: rgba(234,239,229,.95) !important;
    color: #58746b !important;
    font-size: 0 !important;
    font-weight: 800 !important;
  }

  body.kw-city-template-page .kw-city-step-number::before{
    content: "" !important;
    display: block !important;
    width: 15px !important;
    height: 15px !important;
    border: 2px solid currentColor !important;
    border-radius: 5px !important;
  }

  .kw-mobile-concept-home .kwm-step strong,
  body.kw-city-template-page .kw-city-step h3{
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.18 !important;
    color: #2c312e !important;
  }

  .kw-mobile-concept-home .kwm-step p,
  body.kw-city-template-page .kw-city-step p{
    grid-column: 2 !important;
    margin: 0 !important;
    color: #66706b !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
}
