/* Dr.Takumi — Garden stack mobile */
@media (max-width:768px){
  .br-drawer{
    display:flex!important;
    flex-direction:column;
    justify-content:flex-start;
    position:fixed;
    inset:0;
    z-index:100;
    width:100vw;
    width:100dvw;
    height:100%;
    min-height:100vh;
    min-height:100dvh;
    min-height:100svh;
    max-height:100dvh;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateX(8%);
    background:
      radial-gradient(ellipse 90% 55% at 8% -5%,rgba(63,107,58,.28),transparent 58%),
      radial-gradient(ellipse 50% 40% at 100% 100%,rgba(232,197,71,.16),transparent 50%),
      #F3EFE6;
    color:#1A2E22;
    padding-top:calc(var(--nav-h) + env(safe-area-inset-top,0px) + 1.25rem);
    padding-bottom:calc(var(--pad) + env(safe-area-inset-bottom,0px) + .5rem);
    padding-left:max(var(--pad),env(safe-area-inset-left,0px));
    padding-right:max(var(--pad),env(safe-area-inset-right,0px));
    transition:opacity .42s var(--ease),visibility .42s,transform .48s var(--ease);
    overflow-y:auto;-webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    box-sizing:border-box;
  }
  .br-drawer[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
  .br-drawer.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }
  .br-drawer::before{
    content:"Dr.Takumi";
    display:block;
    font-family:var(--font-display);
    font-size:clamp(1.1rem,4.5vw,1.45rem);
    letter-spacing:.18em;
    color:var(--br-gold);
    margin-bottom:1.35rem;
    padding-bottom:.85rem;
    border-bottom:1px solid rgba(26,46,34,.12);
    opacity:0;
    transform:translateY(12px);
    transition:opacity .45s var(--ease),transform .45s var(--ease);
  }
  .br-drawer.is-open::before{opacity:1;transform:none}
  .br-drawer a{
    opacity:0;
    transform:translateY(26px);
    transition:opacity .5s var(--ease),transform .5s var(--ease),color .25s,padding-left .4s var(--ease);
    border-bottom-color:rgba(26,46,34,.1);
  }
  .br-drawer.is-open a{opacity:1;transform:none}
  .br-drawer.is-open a:nth-child(1){transition-delay:.1s}
  .br-drawer.is-open a:nth-child(2){transition-delay:.16s}
  .br-drawer.is-open a:nth-child(3){transition-delay:.22s}
  .br-drawer.is-open a:nth-child(4){transition-delay:.28s}
  .br-drawer.is-open a:nth-child(5){transition-delay:.34s}
  .br-drawer.is-open a:nth-child(6){transition-delay:.4s}
  .br-drawer a[aria-current="page"]{color:var(--br-gold)}
  .br-drawer__cta{
    color:var(--br-ink)!important;
    background:var(--br-gold);
    border-bottom:0!important;
    margin-top:1.1rem;
    justify-content:center;
    padding:1rem 1.15rem;
    letter-spacing:.18em;
    font-family:var(--font-ui);
    font-size:.82rem;
    font-weight:700;
    text-transform:uppercase;
    box-shadow:0 8px 28px rgba(201,162,39,.32);
    min-height:48px;
  }
  .br-drawer__cta:hover{padding-left:1.15rem;color:var(--br-ink)!important}
  .br-drawer__meta{
    margin-top:1.65rem;
    opacity:0;
    transform:translateY(12px);
    transition:opacity .45s var(--ease) .48s,transform .45s var(--ease) .48s;
    letter-spacing:.1em;
  }
  .br-drawer.is-open .br-drawer__meta{opacity:.72;transform:none}

  .br-nav{
    padding-top:calc(.65rem + env(safe-area-inset-top,0px));
    padding-left:max(1rem,env(safe-area-inset-left,0px));
    padding-right:max(.75rem,env(safe-area-inset-right,0px));
    z-index:90;
  }
  body.is-nav-open .br-nav{
    z-index:110;
    background:transparent;
    border-bottom-color:transparent;
    box-shadow:none;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }
  .br-burger{
    border-radius:0;
    border-color:rgba(26,46,34,.18);
    background:rgba(243,239,230,.7);
    position:relative;
    z-index:2;
  }
  body.is-nav-open .br-burger{background:rgba(63,107,58,.28)}

  .js [data-br] img,.js [data-br-clip] img{
    transform:scale(1.06);
    filter:saturate(.92);
    transition:transform 1.15s var(--ease),filter .85s ease;
  }
  .js [data-br].in img,.js [data-br-clip].in img{transform:scale(1);filter:none}

  .br-hero__center .br-hero__locale,
  .br-hero__center .br-hero__brand,
  .br-hero__center .br-hero__rule,
  .br-hero__center h1,
  .br-hero__center .br-hero__lead,
  .br-hero__center .br-hero__axes,
  .br-hero__center .br-hero__actions{animation:brRise .88s var(--ease) both}
  .br-hero__center .br-hero__brand{animation-delay:.06s}
  .br-hero__center .br-hero__rule{animation-delay:.1s}
  .br-hero__center h1{animation-delay:.14s}
  .br-hero__center .br-hero__lead{animation-delay:.2s}
  .br-hero__center .br-hero__axes{animation-delay:.24s}
  .br-hero__center .br-hero__actions{animation-delay:.3s}
  .br-hero__copy h2,.br-hero__copy p,.br-hero__copy .br-btn{animation:brRise .82s var(--ease) both}
  .br-hero__copy p{animation-delay:.12s}
  .br-hero__copy .br-btn{animation-delay:.22s}

  .br-hero--cover .br-hero__content-in .br-hero__locale,
  .br-hero--cover .br-hero__content-in .br-hero__brand,
  .br-hero--cover .br-hero__content-in .br-hero__rule,
  .br-hero--cover .br-hero__content-in h1,
  .br-hero--cover .br-hero__content-in .br-hero__lead,
  .br-hero--cover .br-hero__content-in .br-hero__axes,
  .br-hero--cover .br-hero__content-in .br-hero__actions,
  .br-hero--cover .br-hero__content-in .br-hero__edition{animation:brRise .88s var(--ease) both}
  .br-hero--cover .br-hero__content-in .br-hero__brand{animation-delay:.06s}
  .br-hero--cover .br-hero__content-in .br-hero__rule{animation-delay:.1s}
  .br-hero--cover .br-hero__content-in h1{animation-delay:.14s}
  .br-hero--cover .br-hero__content-in .br-hero__lead{animation-delay:.2s}
  .br-hero--cover .br-hero__content-in .br-hero__axes{animation-delay:.24s}
  .br-hero--cover .br-hero__content-in .br-hero__actions{animation-delay:.3s}
  .br-hero--cover .br-hero__content-in .br-hero__edition{animation-delay:.36s}
  body[data-page="index"] .br-nav:not(.is-solid){background:rgba(26,58,42,.38)}
  body[data-page="index"] .br-nav.is-solid{background:rgba(26,58,42,.96);color:#F3EFE6}

  .br-btn:active,.br-link:active{transform:scale(.97)}
  .br-hero .br-btn,.br-cta .br-btn,.br-store .br-btn{width:100%}
  .br-hero .br-btn--gold{animation:none}

  .br-hero:not(.br-hero--cover),
  .br-hero__pane,
  .br-intro__media,.br-style__media,.br-spot__media,.br-spot__thumb,
  .br-dual__pane,.br-mosaic__cell,.br-mosaic-home__lead,.br-mosaic-home__cell,.br-film__frame,.br-card__media,.br-crop,.br-note__media,
  .br-faq__media,.br-season__media,.br-store,.br-cta,.br-categories__media{
    background:var(--br-ink-lift);
  }
  .br-hero--cover{background:var(--br-ink-lift)}
  .br-hero:not(.br-hero--cover){background:var(--br-paper)}
  .br-hero__center{background:var(--br-paper)!important}
  .br-hero__pane + .br-hero__center,
  .br-hero__center + .br-hero__pane{margin:0}
  .br-store,.br-cta{min-height:62svh}
  .br-intro__media,.br-style__media,.br-spot__media,.br-faq__media{
    aspect-ratio:4/3;min-height:180px;max-height:none;overflow:hidden;
  }
  .br-dual__media,.br-mosaic__cell,.br-mosaic-home__lead,.br-mosaic-home__cell,.br-film__frame,.br-card__media,.br-crop,.br-note__media,.br-season__media,.br-spot__thumb,.br-categories__media{min-height:170px;overflow:hidden}
  .br-intro__media img,.br-style__media img,.br-spot__media img,.br-faq__media img,
  .br-dual__media img,.br-mosaic__cell img,.br-film__frame img,.br-card__media img,
  .br-crop img,.br-note__media img,.br-season__media img,.br-spot__thumb img,.br-categories__media img,
  .br-store__media img,.br-cta__media img,.br-hero__media img{width:100%;height:100%;object-fit:cover}
  body.is-nav-open{overflow:hidden;touch-action:none}

  .br-hero--page .br-hero__center .br-hero__brand,
  .br-hero--page .br-hero__center h1,
  .br-hero--page .br-hero__center .br-hero__lead{animation:brRise .85s var(--ease) both}
  .br-hero--page .br-hero__center h1{animation-delay:.1s}
  .br-hero--page .br-hero__center .br-hero__lead{animation-delay:.18s}

  .br-intro,.br-split,.br-style,.br-spot,.br-faq,.br-feature,.br-map,.br-dual,.br-mosaic,.br-contact{gap:0}
  .br-intro__copy,.br-split__copy,.br-style__copy,.br-spot__copy{padding:1.75rem var(--pad) 2rem}
  .br-process,.br-arrivals,.br-notes,.br-team,.br-time,.br-price,.br-social,.br-fabric,.br-season,.br-topics,.br-voices,.br-categories,.br-mosaic-home{
    padding-left:max(var(--pad),env(safe-area-inset-left,0px));
    padding-right:max(var(--pad),env(safe-area-inset-right,0px));
  }

  .br-contact{grid-template-columns:1fr;min-height:auto}
  .br-contact__form-wrap{order:1;border-right:0;border-bottom:1px solid var(--br-line);padding:1.75rem max(var(--pad),env(safe-area-inset-left,0px)) 2rem max(var(--pad),env(safe-area-inset-right,0px))}
  .br-contact__aside{order:2;padding:1.75rem max(var(--pad),env(safe-area-inset-left,0px)) 2.25rem max(var(--pad),env(safe-area-inset-right,0px))}
  .br-form{max-width:none;gap:1.1rem}
  .br-form input,.br-form textarea{font-size:16px;padding:.9rem .2rem}
  .br-form .br-btn--gold{width:100%;min-width:0;justify-content:center;min-height:48px}
  .br-contact__shot{aspect-ratio:16/10;min-height:180px;margin-bottom:1.25rem}

  .br-foot{padding:2rem max(var(--pad),env(safe-area-inset-left,0px)) calc(1.5rem + env(safe-area-inset-bottom,0px)) max(var(--pad),env(safe-area-inset-right,0px))}
  .br-foot__split{font-size:.6rem;letter-spacing:.3em;margin-bottom:1.35rem}
  .br-foot__grid{gap:1.35rem}
  .br-foot__brand{font-size:1.5rem}
  .br-foot a{min-height:40px}
  .br-foot__copy{margin-top:1.4rem;font-size:.72rem}

  .br-feature__media,.br-split__media,.br-map__frame,.br-contact__shot,.br-team__media,.br-voices__face{
    aspect-ratio:16/10;min-height:180px;max-height:none;overflow:hidden;
    box-shadow:0 12px 32px rgba(26,46,34,.1);
  }
  .br-card__media,.br-note__media{min-height:200px;box-shadow:0 10px 28px rgba(26,46,34,.1)}
  .br-film__frame{flex:0 0 min(78vw,300px);min-height:220px;box-shadow:0 12px 36px rgba(26,46,34,.12)}
  .br-crop,.br-season__media,.br-spot__thumb,.br-categories__media{min-height:150px;overflow:hidden}
  .br-card:hover,.br-note:hover,.br-film__frame:hover,.br-categories__cell:hover{transform:none}
  .br-marquee{padding:.85rem 0}
}

@media (max-width:480px){
  .br-hero__pane{
    aspect-ratio:3/4;
    min-height:min(46svh,420px);
    max-height:none;
  }
  .br-hero__center{
    padding-top:1.2rem;
    padding-bottom:1.35rem;
  }
  .br-hero__brand{letter-spacing:.1em}
  .br-hero__copy{bottom:6%}
  .br-drawer a{font-size:clamp(1.55rem,7.5vw,2.25rem);padding:.55rem 0}
  .br-drawer::before{font-size:1.05rem;letter-spacing:.16em}
  .br-intro__media,.br-style__media,.br-spot__media,.br-dual__pane,.br-mosaic__cell,.br-mosaic-home__stack,.br-faq__media{aspect-ratio:4/3;min-height:160px;max-height:none;overflow:hidden}
  .br-mosaic-home__stack{aspect-ratio:auto;grid-template-columns:1fr}
  .br-hero--page .br-hero__center h1{font-size:1.28rem}
  .br-hero--page .br-hero__lead{font-size:.92rem}
  .br-contact__form-wrap,.br-contact__aside{padding-top:1.5rem;padding-bottom:1.75rem}
  .br-form textarea{min-height:7rem}
  .br-foot__grid{grid-template-columns:1fr;gap:1.2rem}
  .br-foot__editorial{letter-spacing:.28em}
  .br-foot__mast,.br-foot__brand-block{text-align:center}
  .br-foot__social{align-items:center}
  .br-feature__media,.br-split__media,.br-map__frame,.br-contact__shot,.br-intro__media,.br-style__media,.br-spot__media,.br-faq__media{aspect-ratio:4/3;min-height:160px}
  .br-card__media,.br-note__media,.br-film__frame{min-height:180px}
  .br-film__frame{flex-basis:82vw}
}

@keyframes brRise{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:none}
}

@media (prefers-reduced-motion:reduce){
  .br-drawer,.br-drawer a,.br-drawer__meta,.br-drawer::before,.js [data-br] img,
  .br-hero__center .br-hero__locale,.br-hero__center .br-hero__brand,.br-hero__center .br-hero__rule,
  .br-hero__center h1,.br-hero__center .br-hero__lead,.br-hero__center .br-hero__axes,.br-hero__center .br-hero__actions,
  .br-hero__copy h2,.br-hero__copy p,.br-hero__copy .br-btn,
  .br-hero--cover .br-hero__content-in .br-hero__locale,.br-hero--cover .br-hero__content-in .br-hero__brand,
  .br-hero--cover .br-hero__content-in .br-hero__rule,.br-hero--cover .br-hero__content-in h1,
  .br-hero--cover .br-hero__content-in .br-hero__lead,.br-hero--cover .br-hero__content-in .br-hero__axes,
  .br-hero--cover .br-hero__content-in .br-hero__actions,.br-hero--cover .br-hero__content-in .br-hero__edition,
  .br-hero--page .br-hero__center .br-hero__brand,.br-hero--page .br-hero__center h1,.br-hero--page .br-hero__center .br-hero__lead{
    animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important;visibility:visible!important;
  }
}

/* ═══ eg-home mobile — Forest Almanac ═══ */
@media (max-width:768px){
  .eg-home-page .br-drawer{
    z-index:100;
    background:
      radial-gradient(ellipse 80% 50% at 10% 0%,rgba(232,197,71,.2),transparent 55%),
      radial-gradient(ellipse 55% 45% at 100% 100%,rgba(63,107,58,.4),transparent 50%),
      var(--eg-forest,#1A3A2A);
    color:var(--eg-mist,#F3EFE6);
  }
  .eg-home-page .br-drawer::before{
    font-family:var(--font-eg-display,"Literata",serif);
    color:var(--eg-sun,#E8C547);
    letter-spacing:.16em;
    border-bottom-color:rgba(243,239,230,.14);
  }
  .eg-home-page .br-drawer a[aria-current="page"]{color:var(--eg-sun,#E8C547)}
  .eg-home-page .br-drawer__cta{
    background:var(--eg-sun,#E8C547)!important;
    color:var(--eg-forest,#1A3A2A)!important;
    box-shadow:0 8px 28px rgba(232,197,71,.35)!important;
  }
  body.is-nav-open.eg-home-page .br-nav{
    z-index:110;
    background:transparent;
    color:var(--eg-mist,#F3EFE6);
  }
  body.is-nav-open.eg-home-page .br-burger{
    background:rgba(232,197,71,.22);
    border-color:rgba(243,239,230,.35);
    color:var(--eg-mist,#F3EFE6);
  }

  .eg-hero{min-height:100svh;min-height:100dvh}
  .eg-hero__journal{
    padding:clamp(1.5rem,5vw,2.25rem) max(var(--pad),env(safe-area-inset-left,0px)) clamp(2.25rem,7vw,3.25rem) max(var(--pad),env(safe-area-inset-right,0px));
    max-width:none;
    width:100%;
    box-sizing:border-box;
  }
  .eg-hero__brand{font-size:clamp(3rem,14vw,4.8rem)}
  .eg-hero__journal h1{font-size:clamp(1.5rem,6.2vw,2rem);max-width:none}
  .eg-hero__lead{font-size:clamp(.9rem,3.8vw,1rem);max-width:none}
  .eg-hero__actions{flex-direction:column;width:100%}
  .eg-hero__actions .eg-btn{width:100%;justify-content:center;min-height:48px}
  .eg-hero__scroll{display:none}

  .eg-hero__locale,.eg-hero__journal h1,.eg-hero__lead,.eg-hero__actions{
    animation:egRise .85s var(--eg-ease,cubic-bezier(.19,1,.22,1)) both;
  }
  .eg-hero__journal h1{animation-delay:.08s}
  .eg-hero__lead{animation-delay:.14s}
  .eg-hero__actions{animation-delay:.22s}

  .eg-band__grid{grid-template-columns:1fr 1fr}
  .eg-band__cell{border-right:0;border-bottom:1px solid rgba(243,239,230,.12);padding:1rem .5rem}
  .eg-band__cell:nth-child(odd){border-right:1px solid rgba(243,239,230,.12)}
  .eg-band__cell:nth-last-child(-n+2){border-bottom:0}

  .eg-almanac__grid{grid-template-columns:1fr 1fr;gap:.55rem}
  .eg-almanac__tile{min-height:240px}

  .eg-intro{grid-template-columns:1fr;gap:1.75rem}
  .eg-intro__visual{grid-template-columns:1fr 1fr}
  .eg-intro__visual .eg-frame--sq{margin-bottom:0}
  .eg-intro .eg-btn{width:100%;justify-content:center;min-height:48px}

  .eg-menu__row,.eg-menu__row--flip{grid-template-columns:1fr;gap:1rem}
  .eg-menu__row--flip .eg-menu__photo,.eg-menu__row--flip .eg-menu__text{order:unset;text-align:left}
  .eg-menu__photo{aspect-ratio:16/10;min-height:180px}

  .eg-farm__grid{grid-template-columns:1fr;gap:1.5rem}
  .eg-farm__media{aspect-ratio:16/10;min-height:220px}
  .eg-plots{grid-template-columns:1fr;gap:.65rem}
  .eg-farm .eg-btn{width:100%;justify-content:center;min-height:48px}

  .eg-process{grid-template-columns:1fr 1fr;gap:.85rem}
  .eg-mosaic{grid-template-columns:1fr 1fr}
  .eg-mosaic__hero{grid-column:span 2;grid-row:span 1;min-height:260px}

  .eg-voices-block__grid{grid-template-columns:1fr;gap:2.5rem}
  .eg-card--row{grid-template-columns:96px 1fr}

  .eg-faq{grid-template-columns:1fr}
  .eg-faq__media{aspect-ratio:4/3;min-height:220px}

  .eg-cta{min-height:min(55svh,420px)}
  .eg-cta__in .eg-btn{width:100%;justify-content:center;min-height:48px}

  .eg-sec{padding:clamp(2.75rem,8vw,4rem) 0}
  .eg-wrap{padding-left:max(var(--pad),env(safe-area-inset-left,0px));padding-right:max(var(--pad),env(safe-area-inset-right,0px))}

  .js .eg-home [data-eg] img{
    transform:scale(1.05);
    transition:transform 1.1s var(--eg-ease,cubic-bezier(.19,1,.22,1));
  }
  .js .eg-home [data-eg].in img,
  html.is-revealed .js .eg-home [data-eg] img{transform:scale(1)}

  .eg-btn:active{transform:scale(.97)}
}

@media (max-width:480px){
  .eg-almanac__grid,.eg-band__grid{grid-template-columns:1fr}
  .eg-band__cell,.eg-band__cell:nth-child(odd){border-right:0;border-bottom:1px solid rgba(243,239,230,.12)}
  .eg-band__cell:last-child{border-bottom:0}
  .eg-mosaic{grid-template-columns:1fr}
  .eg-mosaic__hero{grid-column:span 1}
  .eg-hero__brand{font-size:clamp(2.6rem,13vw,4rem)}
  .eg-intro__visual{grid-template-columns:1fr}
  .eg-process{grid-template-columns:1fr}
}

/* ~390px phones (iPhone 12/13/14) */
@media (max-width:390px){
  .br-drawer{
    padding-left:max(1rem,env(safe-area-inset-left,0px));
    padding-right:max(1rem,env(safe-area-inset-right,0px));
  }
  .br-drawer a{font-size:clamp(1.45rem,8vw,1.9rem);padding:.5rem 0;min-height:44px}
  .eg-hero__brand{font-size:clamp(2.45rem,12.5vw,3.4rem);letter-spacing:.02em}
  .eg-hero__journal h1{font-size:1.4rem;line-height:1.25}
  .eg-hero__lead{font-size:.9rem}
  .eg-almanac__tile{min-height:220px}
  .eg-almanac__body{padding:1rem}
  .eg-plots__item{display:grid;grid-template-columns:88px 1fr;grid-template-rows:auto auto auto;gap:0 .75rem;align-items:center}
  .eg-plots__photo{grid-row:1 / span 3;aspect-ratio:1;min-height:88px}
  .eg-plots__item strong{padding:.65rem .65rem 0 0}
  .eg-plots__item span,.eg-plots__item em,.eg-plots__note{padding-left:0;padding-right:.65rem}
  .eg-plots__note{padding-bottom:.65rem}
}

@keyframes egRise{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:none}
}

@media (prefers-reduced-motion:reduce){
  .eg-hero__locale,.eg-hero__journal h1,.eg-hero__lead,.eg-hero__actions,
  .eg-hero__scroll span,.js .eg-home [data-eg],.eg-hero__brand .eg-char,
  .br-drawer,.br-drawer a,.br-drawer__meta,.br-drawer::before{
    animation:none!important;transition:none!important;opacity:1!important;transform:none!important;clip-path:none!important;visibility:visible!important;
  }
}
