/* Brook Mitchell Editorial 1.4.3 — clean responsive interior stylesheet */
:root{
  --bm-ink:#111;
  --bm-muted:#666;
  --bm-bg:#fff;
  --bm-soft:#f3f3f3;
  --bm-pad:clamp(22px,4.2vw,72px);
  --bm-frame-edge:24px;
  --bm-header:94px;
  --bm-footer:58px;
  --bm-serif:Georgia,'Times New Roman',serif;
  --bm-sans:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
}

*{box-sizing:border-box}
html{background:var(--bm-bg);overflow-x:hidden}
body.bm-editorial-site{margin:0;padding-bottom:var(--bm-footer);background:var(--bm-bg);color:var(--bm-ink);font-family:var(--bm-sans);overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.bm-editorial-site #page-wrapper{min-height:calc(100svh - var(--bm-footer));background:#fff}
body.bm-editorial-site img{max-width:100%;height:auto}
body.bm-editorial-site a{color:inherit}

/* Hide parent Fluxus chrome only; child header/footer remain authoritative. */
body.bm-editorial-site .site-header:not(.bm-header),
body.bm-editorial-site .site-footer:not(.bm-footer),
body.bm-editorial-site .site-footer-push{display:none!important}

/* Header */
body.bm-editorial-site .bm-header.site-header{
  position:relative!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;
  z-index:1000!important;width:100%!important;max-width:none!important;height:var(--bm-header)!important;
  margin:0!important;padding:0 var(--bm-frame-edge)!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important;
  background:#fff!important;border:0!important;box-shadow:none!important
}
.bm-header__brand{display:flex;flex-direction:column;gap:6px;min-width:0;flex:0 1 auto}
.bm-brand{font:500 24px/1 var(--bm-sans);letter-spacing:.16em;color:#111!important;text-decoration:none!important;white-space:nowrap}
.bm-role{font:500 10px/1.15 var(--bm-sans);letter-spacing:.2em;text-transform:uppercase;color:#555;white-space:nowrap}
.bm-nav-wrap{display:flex;align-items:center;min-width:0}
.bm-nav{display:flex;align-items:center}
.bm-nav__menu{display:flex;align-items:center;gap:clamp(24px,3.1vw,52px);list-style:none;margin:0;padding:0}
.bm-nav__menu>li{position:relative;margin:0;padding:0}
.bm-nav__menu a{font:600 11px/1 var(--bm-sans)!important;letter-spacing:.16em!important;text-transform:uppercase!important;color:#111!important;text-decoration:none!important;white-space:nowrap;background:transparent!important}
.bm-nav__menu a:hover,.bm-nav__menu .current-menu-item>a,.bm-nav__menu .current-menu-parent>a{opacity:.5}
.bm-nav__menu .sub-menu{display:none;position:absolute;top:100%;left:-16px;min-width:190px;margin:0;padding:18px 16px;list-style:none;background:#fff;z-index:1001}
.bm-nav__menu li:hover>.sub-menu{display:block}
.bm-nav__menu .sub-menu li+li{margin-top:14px}
.bm-menu-toggle{display:none;border:0;background:transparent;padding:8px 0;font:600 11px/1 var(--bm-sans);letter-spacing:.13em;text-transform:uppercase;color:#111}

/* Footer */
.bm-footer{
  position:fixed;left:0;right:0;bottom:0;z-index:1002;
  width:100%;min-height:var(--bm-footer);padding:0 var(--bm-pad);display:flex;align-items:center;background:#fff;border:0;box-shadow:none
}
.bm-footer__left{display:flex;align-items:center;gap:20px;min-width:0}
.bm-footer__copyright,.bm-footer__contact{font:600 9px/1 var(--bm-sans)!important;letter-spacing:.13em!important;text-transform:uppercase!important;color:#111!important;text-decoration:none!important;white-space:nowrap}
.bm-footer__instagram,.bm-footer__instagram--inactive{display:inline-flex!important;width:19px;height:19px;align-items:center;justify-content:center;flex:0 0 auto}
.bm-footer__instagram img{display:block;width:19px!important;height:19px!important}
.bm-footer__instagram--inactive{opacity:.55}

/* About and ordinary editorial content */
body.bm-about-page .bm-about-page-main{width:100%;min-height:calc(100svh - var(--bm-header) - var(--bm-footer));background:#fff}
body.bm-about-page .bm-about-content{width:min(1120px,calc(100% - (2 * var(--bm-pad))));margin:0 auto;padding:clamp(48px,6vw,92px) 0 clamp(72px,8vw,120px)!important;background:#fff!important;color:#111!important}
body.bm-about-page .bm-about-content *{background-color:transparent!important;color:#111!important;border:0!important;box-shadow:none!important}
body.bm-about-page .bm-about-content> :first-child{margin-top:0!important}
body.bm-about-page .bm-about-content h1{font:400 clamp(48px,6vw,78px)/.98 var(--bm-serif)!important;letter-spacing:-.04em!important;text-transform:none!important;margin:0 0 clamp(34px,4vw,58px)!important}
body.bm-about-page .bm-about-content h2,body.bm-about-page .bm-about-content h3{font-family:var(--bm-serif)!important;font-weight:400!important;text-transform:none!important;letter-spacing:-.02em!important;max-width:760px;margin-left:auto!important;margin-right:auto!important}
body.bm-about-page .bm-about-content p,body.bm-about-page .bm-about-content li{font:400 clamp(16px,1.2vw,19px)/1.62 var(--bm-serif)!important;max-width:760px;margin-left:auto!important;margin-right:auto!important}
body.bm-about-page .bm-about-content img{display:block;max-width:min(360px,50vw)!important;height:auto!important;margin:0 auto clamp(34px,5vw,64px)!important}

/* Portfolio/category archive: current custom template only. */
.bm-archive-main{width:100%!important;height:auto!important;min-height:calc(100svh - var(--bm-header) - var(--bm-footer))!important;margin:0!important;padding:30px var(--bm-pad) 64px!important;overflow:visible!important;background:#fff!important}
.bm-portfolio-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.5vw,22px);align-items:start}
.bm-portfolio-card{position:relative;width:100%;min-width:0;margin:0;aspect-ratio:3/2;overflow:hidden;background:var(--bm-soft)}
.bm-portfolio-card__link{position:absolute;inset:0;display:block;color:#fff!important;text-decoration:none!important;overflow:hidden}
.bm-portfolio-card__image{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important}
.bm-portfolio-card__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;pointer-events:none;background:transparent}
.bm-portfolio-card__title{display:block;width:100%;max-width:90%;margin:0 auto;font:400 clamp(18px,1.7vw,30px)/1.08 var(--bm-serif);letter-spacing:-.025em;color:#fff;text-align:center;text-shadow:0 1px 12px rgba(0,0,0,.38);overflow-wrap:anywhere}

/* Single portfolio story: desktop horizontal rail. */
html.horizontal-page body.bm-editorial-site{overflow:hidden}
html.horizontal-page body.bm-editorial-site .bm-page-wrapper{height:calc(100svh - var(--bm-footer));min-height:0}
html.horizontal-page body.bm-editorial-site #main.bm-project-shell{
  position:relative!important;left:0!important;right:auto!important;top:auto!important;transform:none!important;
  width:100%!important;max-width:none!important;height:calc(100svh - var(--bm-header) - var(--bm-footer))!important;
  min-height:0!important;margin:0!important;padding:0!important;display:flex!important;overflow:hidden!important;background:#fff!important
}
.bm-project-intro{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:clamp(360px,28vw,520px)!important;flex:0 0 clamp(360px,28vw,520px)!important;height:100%!important;min-width:0!important;overflow-x:visible!important;overflow-y:auto!important;overscroll-behavior:contain;background:#fff!important}
.bm-project-intro__inner{position:relative!important;top:auto!important;transform:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(30px,4.5vh,54px) clamp(28px,3vw,48px) 36px!important;overflow:visible!important}
.bm-project-kicker{margin:0 0 18px;font:600 9px/1.2 var(--bm-sans);letter-spacing:.16em;text-transform:uppercase;color:#777}
.bm-project-title{position:relative!important;top:auto!important;left:auto!important;transform:none!important;display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:0 0 26px!important;padding:0!important;font:400 clamp(30px,2.55vw,44px)/1.06 var(--bm-serif)!important;letter-spacing:-.035em!important;color:#111!important;text-transform:none!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}
.bm-project-copy,.bm-project-copy p{font:400 15px/1.62 var(--bm-serif)!important;color:#222!important;margin:0 0 1em}
.bm-project-copy img{height:auto!important}
.bm-project-copy a{color:#111!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px}

.bm-native-gallery{flex:1 1 auto;min-width:0;height:100%;overflow:hidden;background:#fff}
.bm-native-gallery__rail{height:100%;display:flex;align-items:flex-start;gap:18px;padding:0 18px 0 14px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;background:#fff}
.bm-native-gallery__rail::-webkit-scrollbar{display:none}
.bm-native-slide{flex:0 0 auto;height:100%;min-width:0;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#fff}
.bm-native-slide__media{flex:0 0 var(--bm-media-height,100%);height:var(--bm-media-height,100%);min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff}
.bm-native-slide__media img,.bm-native-slide__media video{display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center center!important}
.bm-native-slide__embed{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff}
.bm-native-slide__embed iframe,.bm-native-slide__embed embed,.bm-native-slide__embed object{display:block;width:100%!important;height:100%!important;border:0!important}
.bm-native-slide__caption{width:100%;min-height:42px;margin:0;padding:9px 2px 0;font:400 12px/1.35 var(--bm-serif);color:#333;text-align:center;white-space:normal;overflow:hidden;background:#fff}

.bm-native-other{flex:0 0 min(980px,84vw);width:min(980px,84vw);height:100%;padding:28px 34px;display:flex;align-items:center;background:#fff}
.bm-native-other__inner{width:100%}
.bm-native-other__heading{margin:0 0 20px;font:600 10px/1.2 var(--bm-sans);letter-spacing:.14em;text-transform:uppercase;color:#111;text-align:center}
.bm-native-other__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bm-native-other__story{display:block;min-width:0;text-decoration:none!important;color:#111!important}
.bm-native-other__image{display:block;width:100%;aspect-ratio:3/2;background-size:cover;background-position:center}
.bm-native-other__title{display:block;margin-top:8px;font:400 16px/1.18 var(--bm-serif);color:#111;text-align:center}


/* Tablet and mobile: normal vertical flow. No horizontal gallery or hidden page overflow. */
@media(max-width:1024px){
  :root{--bm-header:82px;--bm-footer:62px;--bm-pad:20px;--bm-frame-edge:16px}
  html,html.horizontal-page{overflow-x:hidden!important;overflow-y:auto!important}
  body.bm-editorial-site,html.horizontal-page body.bm-editorial-site{overflow-x:hidden!important;overflow-y:auto!important;width:100%!important}
  body.bm-editorial-site #page-wrapper,html.horizontal-page body.bm-editorial-site .bm-page-wrapper{height:auto!important;min-height:calc(100svh - var(--bm-footer))!important;width:100%!important}

  body.bm-editorial-site .bm-header.site-header{height:var(--bm-header)!important;padding:0 var(--bm-frame-edge)!important;gap:16px!important}
  .bm-brand{font-size:19px;letter-spacing:.14em}
  .bm-role{font-size:8px;letter-spacing:.16em}
  .bm-menu-toggle{display:block;flex:0 0 auto}
  .bm-nav-wrap{display:none;position:absolute;top:100%;left:0;right:0;padding:22px var(--bm-frame-edge) 26px;background:#fff;z-index:1005}
  .bm-nav-wrap.is-open{display:block}
  .bm-nav{display:block!important;width:100%}
  .bm-nav__menu{width:100%;flex-direction:column;align-items:flex-start;gap:21px}
  .bm-nav__menu .sub-menu{position:static;display:block!important;min-width:0;padding:11px 0 0 14px}
  .bm-nav__menu .sub-menu li+li{margin-top:12px}

  .bm-footer{min-height:var(--bm-footer);padding:16px 20px}
  .bm-footer__left{gap:15px;flex-wrap:wrap}

  .bm-archive-main{padding:26px 18px 48px!important}
  .bm-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .bm-portfolio-card{aspect-ratio:3/2!important}
  .bm-portfolio-card__overlay{padding:16px}
  .bm-portfolio-card__title{max-width:92%;font-size:clamp(17px,3.3vw,24px);line-height:1.08;text-align:center}

  html.horizontal-page body.bm-editorial-site #main.bm-project-shell{display:block!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important}
  .bm-project-intro{width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;display:block!important}
  .bm-project-intro__inner{width:min(760px,100%);margin:0 auto;padding:32px 24px 38px;text-align:center}
  .bm-project-title{text-align:center!important;font-size:clamp(30px,5vw,44px)!important}
  .bm-project-kicker{text-align:center}
  .bm-project-copy,.bm-project-copy p{text-align:left!important}

  .bm-native-gallery{width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;padding:0 20px 28px}
  .bm-native-gallery__rail{display:block!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important;background:#fff}
  .bm-native-slide{display:block!important;width:min(920px,100%)!important;height:auto!important;min-height:0!important;margin:0 auto 28px!important}
  .bm-native-slide__media{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:3/2;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff}
  .bm-native-slide__media img,.bm-native-slide__media video{width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:center!important}
  .bm-native-slide__embed{width:100%!important;height:auto!important;aspect-ratio:16/9!important}
  .bm-native-slide__caption{width:min(760px,100%);min-height:0;height:auto!important;margin:0 auto;padding:9px 8px 0!important;font-size:12px;line-height:1.4;text-align:center!important;overflow:visible!important}

  .bm-native-other{display:block!important;width:min(920px,100%)!important;min-width:0!important;height:auto!important;min-height:0!important;margin:12px auto 0!important;padding:24px 0 34px!important}
  .bm-native-other__heading{text-align:center;margin-bottom:18px}
  .bm-native-other__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .bm-native-other__title{text-align:center;font-size:16px}

}

@media(max-width:600px){
  :root{--bm-header:78px;--bm-pad:16px;--bm-frame-edge:16px}
  body.bm-editorial-site .bm-header.site-header{padding:0 var(--bm-frame-edge)!important}
  .bm-brand{font-size:17px;letter-spacing:.12em}
  .bm-role{font-size:7.5px;letter-spacing:.12em}
  .bm-nav-wrap{padding-left:var(--bm-frame-edge);padding-right:var(--bm-frame-edge)}
  .bm-footer{padding:16px;min-height:68px}
  .bm-footer__left{gap:12px 14px}
  .bm-footer__copyright,.bm-footer__contact{font-size:8px!important}

  .bm-archive-main{padding:20px 14px 38px!important}
  .bm-portfolio-grid{grid-template-columns:1fr;gap:14px}
  .bm-portfolio-card{width:100%;aspect-ratio:3/2!important}
  .bm-portfolio-card__overlay{padding:18px}
  .bm-portfolio-card__title{font-size:clamp(19px,6vw,27px);max-width:90%;text-align:center}

  .bm-project-intro__inner{padding:28px 18px 34px}
  .bm-project-title{font-size:clamp(30px,9vw,40px)!important}
  .bm-project-copy,.bm-project-copy p{font-size:15px!important;line-height:1.58!important}
  .bm-native-gallery{padding:0 14px 22px}
  .bm-native-slide{margin-bottom:24px!important}
  .bm-native-slide__media{aspect-ratio:3/2}
  .bm-native-slide__caption{font-size:11.5px;padding-left:4px!important;padding-right:4px!important;text-align:center!important}
  .bm-native-other__grid{grid-template-columns:1fr;gap:18px}
  .bm-native-other__title{font-size:16px;text-align:center}

  body.bm-about-page .bm-about-content{width:calc(100% - 32px);padding-top:38px!important}
  body.bm-about-page .bm-about-content h1{font-size:clamp(42px,13vw,58px)!important}
  body.bm-about-page .bm-about-content img{max-width:min(300px,72vw)!important}
}

@supports(height:100dvh){
  html.horizontal-page body.bm-editorial-site .bm-page-wrapper{height:calc(100dvh - var(--bm-footer))}
  html.horizontal-page body.bm-editorial-site #main.bm-project-shell{height:calc(100dvh - var(--bm-header) - var(--bm-footer))!important}
  @media(max-width:1024px){
    html.horizontal-page body.bm-editorial-site .bm-page-wrapper{height:auto!important}
    html.horizontal-page body.bm-editorial-site #main.bm-project-shell{height:auto!important}
  }
}
