/* Eijou — mobile nav + dense frames */
@media (max-width:767.98px){
  html, body { overflow-x: hidden; max-width: 100%; }
  .kt-nav{
    z-index:120;
    padding:.4rem .85rem;
    padding-top:calc(.4rem + env(safe-area-inset-top,0px));
    min-height:calc(var(--kt-nav-h) + env(safe-area-inset-top,0px));
    gap:.45rem;
  }
  .kt-nav__logo{min-width:0}
  .kt-nav__word{
    font-size:1.18rem;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .kt-nav__links,.kt-nav__cta{display:none !important}
  .kt-nav{animation:ktNavIn .55s var(--kt-ease) both}
  .kt-burger{
    display:flex !important;
    margin-left:auto;
    position:relative;
    z-index:122;
    flex-shrink:0;
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    border-radius:14px;
    background:rgba(233,196,106,.28);
    -webkit-tap-highlight-color:transparent;
    transition:background .25s,transform .2s var(--kt-ease);
  }
  .kt-burger:active{transform:scale(.92)}
  .kt-nav.is-open .kt-burger{background:rgba(233,196,106,.4)}

  .kt-drawer-backdrop{
    z-index:110;
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
    pointer-events:none;
  }
  .kt-drawer-backdrop.is-open{pointer-events:auto}
  .kt-drawer-backdrop[hidden]{display:block !important}
  .kt-drawer{
    z-index:115;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:calc(var(--kt-nav-h) + env(safe-area-inset-top,0px) + .5rem) 1.2rem calc(1.5rem + env(safe-area-inset-bottom,0px));
    transform:translateX(100%);
  }
  .kt-drawer[hidden]{display:flex !important;pointer-events:none}
  .kt-drawer.is-open{transform:none;pointer-events:auto}
  .kt-drawer__nav a{
    opacity:0;
    transform:translateX(22px);
    transition:opacity .42s var(--kt-ease),transform .42s var(--kt-ease),background .2s,color .2s;
  }
  .kt-drawer.is-open .kt-drawer__nav a{opacity:1;transform:none}
  .kt-drawer.is-open .kt-drawer__nav a:nth-child(1){transition-delay:.08s}
  .kt-drawer.is-open .kt-drawer__nav a:nth-child(2){transition-delay:.14s}
  .kt-drawer.is-open .kt-drawer__nav a:nth-child(3){transition-delay:.2s}
  .kt-drawer.is-open .kt-drawer__nav a:nth-child(4){transition-delay:.26s}
  .kt-drawer.is-open .kt-drawer__nav a:nth-child(5){transition-delay:.32s}
  .kt-drawer.is-open .kt-drawer__nav a:nth-child(6){transition-delay:.38s}
  .kt-drawer__head strong{
    opacity:0;
    transform:translateY(10px);
    transition:opacity .4s var(--kt-ease),transform .4s var(--kt-ease);
  }
  .kt-drawer.is-open .kt-drawer__head strong{opacity:1;transform:none}
  .kt-drawer__cta{
    justify-content:center;
    margin-top:.5rem;
    background:var(--kt-blossom);
    box-shadow:0 8px 0 #b85a42;
    min-height:48px;
  }
  .kt-drawer__phone{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    margin-top:1.1rem;
    padding:.55rem 1rem;
    border:1px dashed var(--kt-pollen);
    border-radius:999px;
    color:var(--kt-pollen);
  }

  .kt-hero{min-height:100svh}
  .kt-hero--page{min-height:78svh}
  .kt-hero__copy{
    margin-left:0;
    padding:6.2rem 1.1rem max(2.4rem, env(safe-area-inset-bottom));
    width:100%;
    max-width:none;
  }
  .kt-hero__brand{font-size:clamp(2.4rem,15vw,3.6rem)}
  .kt-hero h1{font-size:clamp(1.35rem,6.2vw,1.9rem)}
  .kt-hero__lead{font-size:.98rem;max-width:none}
  .js .kt-hero [data-kt]{opacity:1;transform:none}
  .kt-badge{animation:ktMobRise .7s var(--kt-ease) both}
  .kt-hero h1{animation:ktMobRise .7s var(--kt-ease) .12s both}
  .kt-hero__lead{animation:ktMobRise .7s var(--kt-ease) .2s both}
  .kt-hero__actions{animation:ktMobRise .7s var(--kt-ease) .28s both}
  .kt-hero__actions{width:100%;flex-direction:column}
  .kt-hero__actions .kt-btn,
  .kt-cta .kt-btn,
  .kt-sec .kt-btn,
  .kt-form .kt-btn{width:100%;min-height:48px}
  .kt-btn:active{transform:scale(.96)}
  .kt-hero__actions .kt-btn--terra,
  .kt-cta .kt-btn--terra{
    animation:ktBtnPulse 2.2s ease-in-out infinite
  }
  .kt-hero__actions .kt-btn--terra:active,
  .kt-cta .kt-btn--terra:active{animation:none;transform:scale(.96)}

  .kt-wrap{width:min(100% - 1.35rem,var(--kt-wrap))}
  .kt-sec{padding:3.1rem 0}
  .kt-vine{display:none}
  .kt-season__veil{background:linear-gradient(180deg,rgba(251,246,236,.88) 0%,rgba(239,231,217,.82) 50%,rgba(251,246,236,.9) 100%)}

  .kt-wheel{
    --size:auto;
    width:100%;
    height:auto;
    border-radius:var(--kt-radius);
    display:grid;
    grid-template-columns:1fr;
    gap:.75rem;
    border:0;
    box-shadow:none;
    margin-bottom:1rem;
  }
  .kt-wheel__hub{
    position:static;
    inset:auto;
    width:92px;
    height:92px;
    margin:0 auto 1rem;
  }
  .kt-wheel__seg{
    border-radius:calc(var(--kt-radius) - .35rem);
    min-height:220px;
    aspect-ratio:16/10;
    align-items:flex-start !important;
    text-align:left !important;
    justify-content:flex-end !important;
    padding:1.1rem !important;
  }
  .kt-packet,
  .kt-card,
  .kt-post,
  .kt-voice {
    background:var(--kt-cream);
    border-radius:calc(var(--kt-radius) - .25rem);
    overflow:hidden;
    box-shadow:0 10px 28px rgba(8,28,21,.08);
  }

  .kt-packets,
  .kt-cards--3,
  .kt-cards--4,
  .kt-cards--2,
  .kt-timeline,
  .kt-cal,
  .kt-voices,
  .kt-team,
  .kt-posts,
  .kt-stats,
  .kt-plots,
  .kt-foot__grid,
  .kt-glass,
  .kt-mosaic,
  .kt-split,
  .kt-split--flip,
  .kt-split--wide,
  .kt-quoteblock,
  .kt-formgrid{grid-template-columns:1fr}

  .kt-mosaic__hero{min-height:280px}
  .kt-glass--split{min-height:0}
  .kt-glass .kt-frame{min-height:280px;aspect-ratio:4/3}

  .kt-frame,
  .kt-frame--blob,
  .kt-press .kt-frame,
  .kt-split > .kt-frame,
  .kt-split > .kt-frame--tall,
  .kt-card .kt-frame,
  .kt-packet .kt-frame,
  .kt-post .kt-frame,
  .kt-timeline .kt-frame,
  .kt-team .kt-frame,
  .kt-card--overlay .kt-frame,
  .kt-mosaic .kt-frame,
  .kt-formgrid__photo{
    min-height:280px !important;
    max-height:none;
    height:auto;
    aspect-ratio:4/3;
  }
  .kt-frame--tall,.kt-team .kt-frame{aspect-ratio:3/4;min-height:320px !important}
  .kt-frame--round{width:80px;height:80px;min-height:80px !important;aspect-ratio:1}
  .kt-frame--slim{min-height:200px !important;aspect-ratio:16/10}
  .kt-frame--wide{min-height:220px !important;aspect-ratio:16/9}
  .kt-map,.kt-map iframe{min-height:280px}

  .js [data-kt] img,
  .js [data-kt] .kt-cover{
    transform:scale(1.07);
    filter:saturate(.94);
    transition:transform 1.1s var(--kt-ease),filter .85s ease;
  }
  .js [data-kt].in img,
  .js [data-kt].in .kt-cover{
    transform:scale(1);
    filter:none;
  }

  .kt-cta{min-height:440px}
  .kt-cta__in{padding:3.2rem 1.1rem}
}

@media (max-width:480px){
  .kt-wrap{width:min(100% - 1.15rem,var(--kt-wrap))}
  .kt-nav{padding:.35rem .7rem;padding-top:calc(.35rem + env(safe-area-inset-top,0px))}
  .kt-hero__copy{padding-left:.95rem;padding-right:.95rem}
  .kt-display{font-size:clamp(1.45rem,7.4vw,2.1rem)}
  .kt-wheel__seg .kt-meta{display:none}
}

@keyframes ktNavIn{
  from{transform:translateY(-110%)}
  to{transform:none}
}
@keyframes ktBtnPulse{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
@keyframes ktMobRise{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:none}
}

@media (prefers-reduced-motion:reduce){
  .kt-drawer__nav a,
  .kt-drawer__head strong,
  .kt-nav,
  .js [data-kt] img,
  .kt-letter,
  .kt-pollen i,
  .kt-scatter i,
  .kt-kenburns img,
  .kt-badge,
  .kt-hero h1,
  .kt-hero__lead,
  .kt-hero__actions,
  .kt-hero__actions .kt-btn--terra,
  .kt-cta .kt-btn--terra{
    animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important
  }
}
