/* ALMA MEEO V10.11 — MOBILNI KOMPAKTNI STANDARD
   Cilj: telefon naj bo zračen, berljiv in bistveno manjši od namizne predstavitve.
   Referenčna širina: Xiaomi Poco X3 NFC ~393 CSS px.
   Desktop ni spremenjen. */

@media (max-width: 720px) {
  html {
    font-size: 15px;
    scroll-padding-top: 4.8rem;
  }

  body {
    font-size: 1rem;
    line-height: 1.55;
    overflow-x: hidden;
  }

  main {
    padding-block: 1rem 2rem !important;
  }

  .site-shell,
  .header-inner,
  .development-banner-inner {
    width: min(calc(100% - 1.5rem), var(--content-width, 1180px)) !important;
  }

  /* Enoten mobilni tipografski sistem — preglasi stare velike premium naslove. */
  main h1,
  main .home-hero h1,
  main .hero h1,
  main .page-header h1,
  main .public-page-header h1,
  main .standalone-page h1,
  main .article h1,
  main .am1005-hero h1,
  main .am1005-page-hero h1 {
    font-size: clamp(1.95rem, 8.4vw, 2.35rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.035em !important;
    margin-bottom: .72rem !important;
  }

  main h2,
  main .standalone-page h2,
  main .article h2,
  main .am1005-section-head h2,
  main .am1005-split h2,
  main .am1005-final h2,
  main .am1005-manifest .big {
    font-size: clamp(1.48rem, 6.2vw, 1.82rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.025em !important;
    margin-bottom: .7rem !important;
  }

  main h3,
  main .standalone-page h3,
  main .article h3,
  main .am1005-three-grid h3,
  main .am1005-why-grid h3 {
    font-size: clamp(1.12rem, 4.8vw, 1.28rem) !important;
    line-height: 1.22 !important;
    letter-spacing: -0.015em !important;
  }

  main h4 {
    font-size: 1.03rem !important;
    line-height: 1.3 !important;
  }

  main p,
  main li,
  main .article p,
  main .article li,
  main .standalone-lead,
  main .am1005-page-lead,
  main .am1005-hero-side .lead,
  main .am1005-section-head > p:last-child,
  main .am1005-final p {
    font-size: .98rem !important;
    line-height: 1.58 !important;
  }

  main small,
  main figcaption,
  main .am1005-caption {
    font-size: .72rem !important;
    line-height: 1.42 !important;
  }

  /* Kompaktna glava in meni. */
  .am-menu-engine .header-inner,
  .header-inner {
    min-height: 3.65rem !important;
    gap: .55rem !important;
  }

  .am-menu-engine .brand,
  .brand {
    gap: .45rem !important;
    font-size: .91rem !important;
    line-height: 1.15 !important;
  }

  .am-menu-engine .brand-symbol,
  .brand-symbol {
    width: 2.45rem !important;
    height: auto !important;
  }

  .am-menu-engine .nav-toggle {
    width: 2.65rem !important;
    height: 2.65rem !important;
    min-height: 2.65rem !important;
    padding: .55rem !important;
  }

  .am-menu-engine .site-nav {
    top: calc(100% + .35rem) !important;
    left: .15rem !important;
    right: .15rem !important;
    max-height: calc(100vh - 5rem) !important;
    padding: .5rem !important;
    border-radius: .8rem !important;
  }

  .am-menu-engine .site-nav-link,
  .am-menu-engine .nav-group-toggle,
  .am-menu-engine .nav-submenu-section-toggle,
  .am-menu-engine .nav-submenu-topic-toggle {
    min-height: 2.7rem !important;
    padding: .58rem .62rem !important;
    font-size: .86rem !important;
    line-height: 1.28 !important;
  }

  .am-menu-engine .nav-submenu a,
  .am-menu-engine .nav-submenu-nested > a,
  .am-menu-engine .nav-submenu-topic-items > a {
    min-height: 2.35rem !important;
    padding: .48rem .56rem !important;
    font-size: .82rem !important;
    line-height: 1.28 !important;
  }

  /* Hero: fotografija ostane cela; naslov ne zavzame polovice zaslona. */
  .am1005-hero {
    padding: .35rem 0 2rem !important;
  }

  .am1005-hero-media,
  .am1005-page-hero figure {
    border-radius: .85rem !important;
  }

  .am1005-hero-media img,
  .am1005-page-hero img,
  .am1005-split img,
  .am1005-home img,
  .am1005-page img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center !important;
  }

  .am1005-hero-media figcaption {
    padding: .45rem .65rem !important;
  }

  .am1005-hero-copy {
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    padding-top: 1.15rem !important;
  }

  .am1005-hero-side {
    padding-bottom: 0 !important;
  }

  .am1005-overline {
    margin-bottom: .45rem !important;
    font-size: .67rem !important;
    letter-spacing: .1em !important;
  }

  .am1005-kicker-row {
    gap: .38rem !important;
    margin: .8rem 0 1rem !important;
  }

  .am1005-kicker-row span,
  .am1005-flow span,
  .am1005-name-cloud span {
    padding: .4rem .58rem !important;
    font-size: .67rem !important;
    letter-spacing: .045em !important;
  }

  /* Gumbi ostanejo tap-friendly, vendar niso ogromne plošče čez celo širino. */
  .am1005-actions,
  .home-hero-actions,
  .home-services-actions,
  .val-actions,
  .offer-final-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: .48rem !important;
    width: 100% !important;
  }

  .am1005-btn,
  .home-hero-cta,
  .home-hero-actions .home-hero-cta,
  .home-services-actions .home-hero-cta,
  .val-actions .home-hero-cta,
  .val-actions button,
  .offer-final-actions a,
  main button:not(.nav-toggle) {
    width: auto !important;
    max-width: 100% !important;
    min-height: 2.75rem !important;
    padding: .62rem .84rem !important;
    border-radius: 999px !important;
    font-size: .73rem !important;
    line-height: 1.2 !important;
    letter-spacing: .035em !important;
    white-space: normal !important;
    text-align: center !important;
  }

  /* Vertikalni ritem: precej manj praznega prostora. */
  .am1005-section {
    padding: 2.35rem 0 !important;
  }

  .am1005-section-head {
    margin-bottom: 1.25rem !important;
  }

  .am1005-manifest {
    margin-bottom: 2.6rem !important;
    padding: 1.85rem .25rem !important;
  }

  .am1005-manifest p {
    font-size: 1rem !important;
  }

  .am1005-split,
  .am1005-ai-grid {
    grid-template-columns: 1fr !important;
    gap: 1.2rem !important;
  }

  .am1005-split[style] {
    margin-bottom: 2.3rem !important;
  }

  .am1005-origin-band,
  .am1005-adventures {
    padding-inline: .75rem !important;
  }

  .am1005-quote {
    margin: 1rem 0 !important;
    padding: .85rem .9rem !important;
    font-size: .98rem !important;
    line-height: 1.5 !important;
  }

  .am1005-ai {
    padding: 1.15rem !important;
    border-radius: 1rem !important;
  }

  .am1005-final {
    margin-top: 2.7rem !important;
    margin-bottom: 1.5rem !important;
    padding: 2rem .85rem !important;
    border-radius: 1.15rem !important;
  }

  .am1005-page-hero {
    padding: .35rem 0 2.1rem !important;
  }

  .am1005-page-hero figure {
    margin-bottom: 1.2rem !important;
  }

  .am1005-page-lead {
    margin-top: .7rem !important;
  }

  /* Kartice: manj notranjega prostora in manjši naslovi. */
  .am1005-why-grid,
  .am1005-three-grid,
  .am1005-roots-grid,
  .am1005-timeline,
  .am1006-complete-grid {
    grid-template-columns: 1fr !important;
    gap: .72rem !important;
  }

  .am1005-why-grid article,
  .am1005-three-grid article,
  .am1005-roots-grid article,
  .am1005-timeline article,
  .am1006-complete-grid a {
    min-height: 0 !important;
    padding: .95rem !important;
    border-radius: .85rem !important;
  }

  .am1005-why-grid span,
  .am1005-three-grid span,
  .am1005-timeline small {
    font-size: .66rem !important;
    letter-spacing: .085em !important;
  }

  /* Dogodivščine na ~393 px: dve kompaktni kartici v vrsti. */
  .am1005-adventure-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .65rem !important;
  }

  .am1005-adventure-card {
    border-radius: .9rem !important;
  }

  .am1005-adventure-card div {
    padding: .7rem .68rem .78rem !important;
  }

  .am1005-adventure-card small {
    font-size: .63rem !important;
  }

  .am1005-adventure-card strong {
    margin: .18rem 0 .24rem !important;
    font-size: .9rem !important;
    line-height: 1.12 !important;
  }

  .am1005-adventure-card span {
    font-size: .75rem !important;
    line-height: 1.38 !important;
  }

  /* Procesni trakovi: na telefonu brez velikih puščic in razmetanih čipov. */
  .am1005-flow {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .42rem !important;
    margin: 1rem 0 .75rem !important;
  }

  .am1005-flow b {
    display: none !important;
  }

  .am1005-flow span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 2.2rem !important;
    border-radius: .7rem !important;
    text-align: center !important;
  }

  /* Legacy premium vsebine: manjši paneli, tabele in obrazci. */
  main .article,
  main .standalone-page,
  main .portal-header,
  main .public-page-header,
  main .hero,
  main .home-hero {
    max-width: 100% !important;
  }

  main .article {
    padding: 0 !important;
  }

  main blockquote {
    margin: 1rem 0 !important;
    padding: .85rem .9rem !important;
    font-size: .96rem !important;
  }

  main table {
    font-size: .82rem !important;
  }

  main input,
  main select,
  main textarea {
    font-size: 16px !important; /* prepreči samodejni zoom na mobilnih brskalnikih */
  }

  main textarea {
    min-height: 7rem !important;
  }

  /* Skoraj vse vsebinske mreže v starem delu portala naj bodo na telefonu enostolpčne. */
  main .content-grid,
  main .direction-grid,
  main .information-grid,
  main .service-grid,
  main .review-grid,
  main .studio-app-grid,
  main .offer-grid,
  main .community-grid,
  main .research-grid,
  main .learning-grid,
  main .future-service-grid,
  main .val-coin-method-grid,
  main .val-coin-profile-grid,
  main .val-coin-check-grid {
    grid-template-columns: 1fr !important;
    gap: .7rem !important;
  }

  /* Razmiki starih panelov. */
  main .section-heading,
  main .service-section-heading,
  main .offer-section-heading {
    margin-bottom: 1.1rem !important;
  }

  main .portal-card,
  main .direction-card,
  main .content-group,
  main .tool-card,
  main .service-use-path-card,
  main .val-coin-method-card,
  main .val-coin-result,
  main .val-coin-profile-grid article {
    padding: .95rem !important;
    border-radius: .9rem !important;
  }
}

@media (max-width: 420px) {
  html { font-size: 14.75px; }

  .site-shell,
  .header-inner,
  .development-banner-inner {
    width: calc(100% - 1.15rem) !important;
  }

  main h1,
  main .am1005-hero h1,
  main .am1005-page-hero h1 {
    font-size: clamp(1.82rem, 8.1vw, 2.12rem) !important;
  }

  main h2,
  main .am1005-section-head h2,
  main .am1005-split h2,
  main .am1005-final h2,
  main .am1005-manifest .big {
    font-size: clamp(1.4rem, 5.9vw, 1.68rem) !important;
  }

  .am1005-section { padding-block: 2.1rem !important; }
  .am1005-adventures,
  .am1005-origin-band { padding-inline: .58rem !important; }
}

@media (max-width: 350px) {
  .am1005-adventure-grid,
  .am1005-flow {
    grid-template-columns: 1fr !important;
  }
}
