/* fukutrend — mobile drawer + motion + dense home */
@media (max-width:768px){
  .gs-nav{
    z-index:130;
    padding:.45rem .85rem;
    padding-top:calc(.45rem + env(safe-area-inset-top,0px));
    min-height:calc(var(--gs-nav-h) + env(safe-area-inset-top,0px));
    gap:.5rem;
  }
  .gs-nav__logo{min-width:0;flex:1}
  .gs-nav__word{
    font-size:1.15rem;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:min(58vw,240px);
  }
  .gs-nav__links,.gs-nav__cta{display:none !important}
  .gs-burger{
    display:flex !important;
    margin-left:auto;
    z-index:132;
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    flex-shrink:0;
    border-radius:4px;
    background:rgba(79,122,69,.2);
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
    transition:background .3s,transform .3s var(--gs-ease);
  }
  .gs-nav.is-solid .gs-burger{background:rgba(231,239,228,.12)}
  .gs-nav.is-open .gs-burger{background:rgba(212,168,75,.35)}
  .gs-burger:active{transform:scale(.94)}

  .gs-drawer-backdrop{
    z-index:110;
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    pointer-events:none;
  }
  .gs-drawer-backdrop.is-open{pointer-events:auto}
  .gs-drawer-backdrop[hidden]{display:block !important;opacity:0;visibility:hidden}
  .gs-drawer-backdrop.is-open[hidden],
  .gs-drawer-backdrop.is-open:not([hidden]){visibility:visible}

  .gs-drawer{
    z-index:120;
    padding:calc(var(--gs-nav-h) + env(safe-area-inset-top,0px) + .55rem) 1.15rem calc(1.4rem + env(safe-area-inset-bottom,0px));
    box-shadow:-20px 0 48px rgba(26,47,28,.35);
    transform:translateX(105%);
  }
  .gs-drawer.is-open{transform:none}
  .gs-drawer[hidden]{display:flex !important;pointer-events:none;visibility:hidden}
  .gs-drawer.is-open{pointer-events:auto;visibility:visible}
  .gs-drawer__head{
    opacity:0;
    transform:translateY(-10px);
    transition:opacity .38s var(--gs-ease),transform .38s var(--gs-ease);
  }
  .gs-drawer.is-open .gs-drawer__head{opacity:1;transform:none;transition-delay:.05s}
  .gs-drawer__close{
    min-width:48px;
    min-height:48px;
    -webkit-tap-highlight-color:transparent;
  }
  .gs-drawer__nav a{
    opacity:0;
    transform:translateX(28px);
    min-height:52px;
    transition:opacity .45s var(--gs-ease),transform .45s var(--gs-ease),background .2s,color .2s;
  }
  .gs-drawer.is-open .gs-drawer__nav a{opacity:1;transform:none}
  .gs-drawer.is-open .gs-drawer__nav a:nth-child(1){transition-delay:.08s}
  .gs-drawer.is-open .gs-drawer__nav a:nth-child(2){transition-delay:.14s}
  .gs-drawer.is-open .gs-drawer__nav a:nth-child(3){transition-delay:.2s}
  .gs-drawer.is-open .gs-drawer__nav a:nth-child(4){transition-delay:.26s}
  .gs-drawer.is-open .gs-drawer__nav a:nth-child(5){transition-delay:.32s}
  .gs-drawer.is-open .gs-drawer__nav a:nth-child(6){transition-delay:.38s}
  .gs-drawer__cta{justify-content:center;margin-top:.4rem}
  .gs-drawer__meta{
    opacity:0;
    transform:translateY(12px);
    transition:opacity .42s var(--gs-ease) .42s,transform .42s var(--gs-ease) .42s;
  }
  .gs-drawer.is-open .gs-drawer__meta{opacity:1;transform:none}

  body.is-nav-open{
    overflow:hidden !important;
    touch-action:none;
    overscroll-behavior:none;
  }

  .gs-hero__copy{
    margin-left:0;
    padding:5.6rem 1.1rem max(2.2rem, env(safe-area-inset-bottom));
    width:100%;
  }
  .gs-hero__brand{font-size:clamp(2.5rem,17vw,3.6rem)}
  .gs-hero h1{font-size:clamp(1.3rem,5.8vw,1.85rem)}
  .gs-hero__lead{font-size:.98rem;max-width:none}
  .gs-hero__actions{width:100%;flex-direction:column;align-items:stretch}
  .gs-hero__actions .gs-btn,
  .gs-cta .gs-btn,
  .gs-sec .gs-btn{width:100%;min-height:48px}
  .gs-btn{
    min-height:48px;
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
  }
  .gs-btn:active{transform:scale(.96)}

  .gs-season{padding:1.85rem 0 2rem}
  .gs-season__head{margin-bottom:.85rem}
  .gs-season__track{
    display:flex !important;
    gap:.75rem;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding:0 1rem .75rem;
    scroll-padding-inline:1rem;
    -webkit-overflow-scrolling:touch;
  }
  .gs-season__card{
    flex:0 0 min(78vw,260px) !important;
    scroll-snap-align:center;
    min-height:150px;
    padding:1.1rem 1rem;
  }
  .gs-season__jp{font-size:1.7rem}
  .gs-season__card p{
    font-size:.82rem;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }

  .gs-plot__media{
    aspect-ratio:16/11;
    min-height:200px;
    max-height:260px;
    height:auto;
  }
  .gs-bento{gap:.9rem}
  .gs-bento__row,.gs-bento__row--hero{
    min-height:0;
    grid-template-columns:1fr !important;
  }
  .gs-bento__media{
    aspect-ratio:16/10 !important;
    min-height:160px !important;
    max-height:200px !important;
    height:auto !important;
  }
  .gs-bento__body{padding:1.1rem 1rem 1.25rem}

  .gs-spotlight{min-height:72svh}
  .gs-spotlight__copy{
    width:100%;
    margin:0;
    padding:2.4rem 1.1rem max(1.8rem, env(safe-area-inset-bottom));
  }

  .gs-process{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:.65rem}
  .gs-process li{padding:.7rem}
  .gs-process__media{min-height:120px;max-height:150px;aspect-ratio:5/4}

  .gs-voices,.gs-notes{grid-template-columns:1fr !important;gap:.85rem}
  .gs-voice{padding:1.1rem}
  .gs-note__media{min-height:150px;max-height:190px}

  .gs-frame.gs-frame--hold{
    min-height:180px;
    background:var(--gs-soil-grad);
  }
  .gs-frame img.gs-cover,
  .gs-frame > img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  }

  .gs-sec{padding:2.35rem 0}
  .gs-sec--tight{padding:2rem 0}
  .gs-sec__head{margin-bottom:1.25rem}
  .gs-cta{min-height:54svh}

  .js [data-reveal] img,
  .js [data-gs][data-reveal] img,
  .js [data-gs] .gs-cover{
    transform:scale(1.06);
    filter:saturate(.9);
    transition:transform 1.1s var(--gs-ease),filter .85s ease;
  }
  .js [data-reveal].in img,
  .js [data-gs].in[data-reveal] img,
  .js [data-gs].in .gs-cover{
    transform:scale(1);
    filter:none;
  }
  .js .gs-kenburns img,
  .js .gs-hero__media img{
    transform:none;
    filter:none;
    transition:none;
  }

  .gs-hero__brand,
  .gs-hero h1,
  .gs-hero__lead,
  .gs-hero__actions{
    animation:gsRise .9s var(--gs-ease) both;
  }
  .gs-hero h1{animation-delay:.12s}
  .gs-hero__lead{animation-delay:.2s}
  .gs-hero__actions{animation-delay:.28s}
  @keyframes gsRise{
    from{opacity:0;transform:translateY(18px)}
    to{opacity:1;transform:none}
  }
}

@media (max-width:768px){
  .gs-fields{grid-template-columns:1fr 1fr;gap:.55rem}
  .gs-fields__cell--wide{grid-column:span 2}
  .gs-fields .gs-frame{min-height:160px;max-height:none}
  .gs-plans{grid-template-columns:1fr;gap:.85rem}
  .gs-plans .gs-frame{min-height:180px;max-height:none}
}

@media (max-width:480px){
  .gs-wrap{width:min(100% - 1.25rem,var(--gs-wrap))}
  .gs-nav{padding:.4rem .75rem;padding-top:calc(.4rem + env(safe-area-inset-top,0px))}
  .gs-hero__copy{padding-left:1rem;padding-right:1rem}
  .gs-drawer{width:100vw;max-width:100vw}
  .gs-season__card{flex:0 0 min(84vw,250px) !important;min-height:142px}
  .gs-bento__media{max-height:180px !important}
}

@media (prefers-reduced-motion:reduce){
  .gs-drawer__nav a,.gs-drawer__head,.gs-drawer__meta,
  .js [data-gs] img,.gs-hero__copy h1,.gs-hero__copy p,.gs-hero__brand,.gs-hero__actions,
  .gs-btn--pulse{
    animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important
  }
}
