/* Mazhaka Foundation V41 — cumulative mobile-first editorial pass.
   This is appended AFTER the existing styles. The cinematic hero and desktop
   compositions remain untouched; programme detail dialogs stay the source of truth.
   V42: Restore the ORIGINAL About three-photo collage and animated multicolour growth divider. */

/* Archive bridge: compact enough to belong to the journal, not another chapter. */
.archive-feature{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid rgba(22,51,42,.23);border-bottom:1px solid rgba(22,51,42,.23);margin-top:clamp(44px,5vw,76px);padding:29px 0;color:var(--forest)}
.archive-feature-lead{max-width:680px}
.archive-eyebrow,.feeding-eyebrow{display:block;color:#a85832;font-family:var(--sans);font-weight:650;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.archive-feature h3{font-family:var(--editorial-serif,Georgia,serif);font-weight:400;font-size:clamp(32px,3.1vw,52px);letter-spacing:-.03em;line-height:1.12;margin:8px 0 5px}
.archive-feature p{max-width:650px;color:var(--ink-soft);font-size:13px;line-height:1.6}
.archive-feature-action{flex-shrink:0;color:var(--forest);font-size:13px;font-weight:650;border-bottom:1px solid #a85832;padding:9px 0;text-decoration:none}
.archive-feature-action span{display:inline-block;margin-left:10px}
.archive-feature-action:focus-visible{outline:2px solid #a85832;outline-offset:4px}

/* Social entrypoints are recognizable links and don't force extra height. */
.mazhaka-social-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px}
.mazhaka-social-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border:1px solid rgba(22,51,42,.23);color:var(--forest);border-radius:100px;font-size:12px;font-family:var(--sans);font-weight:600;text-decoration:none;min-height:38px;transition:border-color .2s,background-color .2s}
.mazhaka-social-link svg{width:16px;height:16px;flex-shrink:0}
.mazhaka-social-link .social-monogram{font-family:Arial,sans-serif;font-weight:800;font-size:18px;line-height:1;width:15px;text-align:center}
.mazhaka-social-link:hover{border-color:#8d492d;background:rgba(141,73,45,.07)}
.mazhaka-social-link:focus-visible{outline:2px solid #a85832;outline-offset:3px}

.mazhaka-live-feed{margin-bottom:30px}
.mazhaka-live-toggle{display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;width:100%;min-height:70px;padding:16px 0;border-top:1px solid rgba(22,51,42,.22);border-bottom:1px solid rgba(22,51,42,.22);background:transparent;color:var(--forest);font-family:var(--sans);font-size:14px;line-height:1.45}
.mazhaka-live-toggle:focus-visible{outline:2px solid #a85832;outline-offset:2px}
.live-label{display:inline-flex;align-items:center;gap:10px;font-weight:650}
.live-orbit{display:inline-block;width:9px;height:9px;border-radius:50%;background:#cf7444;box-shadow:0 0 0 4px rgba(207,116,68,.12);flex-shrink:0}
.live-action{font-weight:600;color:#945135;display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.live-action>span{font-size:22px;font-weight:400;line-height:1;display:inline-block;transition:transform .2s}
.mazhaka-live-toggle[aria-expanded="true"] .live-action>span{transform:rotate(45deg)}
.mazhaka-live-panel[hidden]{display:none!important}
.mazhaka-live-panel{padding:22px 0 12px;max-width:540px}
.mazhaka-live-frame{width:100%;max-width:500px;min-height:450px;overflow:hidden;background:#f4efe5;border:1px solid rgba(22,51,42,.15)}
.mazhaka-live-frame iframe{display:block;width:100%;min-height:450px;border:0;background:transparent}
.mazhaka-live-panel p{color:var(--ink-soft);font-size:12px;line-height:1.6;margin:12px 0 0}
.mazhaka-live-panel p a{text-decoration:underline;text-underline-offset:3px}

.feeding-note{border-left:2px solid #d98b56;padding:3px 0 1px 16px;margin:3px 0 26px}
.feeding-note .feeding-eyebrow{color:#e8af83;margin-bottom:7px}
.upcoming .feeding-note p{font-size:14px;line-height:1.6;margin:0;color:#e7e6d9}

/* Redesigned navigation gets a quiet social index, not an awkward arrow CTA. */
.mobile-menu-socials{display:none}
.mobile-programme-filters,.mobile-more{display:none}

@media(max-width:999px){
  .mobile-menu-socials{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;margin-top:24px}
  .mobile-menu-socials>span{font:600 10px/1.5 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:#d39c75;width:100%}
  .mobile-menu .mobile-menu-socials a{font:500 12px/1.5 var(--sans);display:inline-block;min-height:32px;padding:5px 0;margin:0;color:#f0e7dc;border-bottom:1px solid rgba(240,231,220,.25)}
  .mobile-menu .mobile-menu-socials a:hover{color:#e7a06c}
  .mobile-menu .mobile-menu-action{font-style:normal}
  .archive-feature{gap:18px}
}

/* A genuinely shorter mobile document. Rather than simply compressing the
   entire desktop scroll, we remove duplicate editorial chapters while keeping
   every initiative accessible via its existing programme detail dialog. */
@media(max-width:850px){
  :is(#about,#work,#programmes,#stories,#contact){scroll-margin-top:calc(var(--header-h,60px) + 10px)}
  /* No hidden headings or broken spacing while the reveal observer catches up. */
  .js .reveal{opacity:1!important;transform:none!important}
  /* Preserve the original hero AND the entire original About collage and growth motif. */
  /* The old 8-card carousel and 8-row directory duplicated the same work. */
  .work{padding:40px var(--gutter) 0;background:var(--pine);color:var(--cream)}
  .work-stage{padding:0;margin:0;display:block}
  .work-lead{display:block;padding:0 0 17px}
  .work h2{max-width:620px;font-size:clamp(45px,8.3vw,70px);line-height:1.03;margin:0 0 13px}
  .work-lead p{max-width:590px;font-size:14px;line-height:1.6;margin-bottom:0;color:#d9e1d6}
  .work-lead .link-u,.work .rail,.work .rail-nav,.work .rail-progress{display:none!important}
  .manifesto,.story#impact,.stripe{display:none!important}
  /* Index header is already conveyed by the preceding Our Work intro. */
  .generation-v27 .generation-intro{display:none!important}
  .generation-v27 .generation-browser{padding:4px var(--gutter) 46px;background:var(--pine)}
  .generation-v27 .generation-directory-head{padding-bottom:10px;border-bottom:0;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#e1ae82}
  .generation-v27 .generation-directory-head span:last-child{opacity:.7}
  .generation-v27 .index-list{margin:7px 0 0}
  .generation-v27 .generation-item{margin:0}
  .generation-v27 .generation-directory-note{display:none}
  .generation-v27 .row{grid-template-columns:20px minmax(0,1fr) 80px;gap:10px;min-height:79px;padding:9px 0;border-color:rgba(241,235,223,.16)}
  .generation-v27 .row .n{font-size:10px;line-height:1.5}
  .generation-v27 .row .t{font-size:clamp(24px,4.8vw,35px);letter-spacing:-.025em;line-height:1.08}
  .generation-v27 .row .p{font-size:10px;line-height:1.35;opacity:.62;margin-top:1px}
  .generation-v27 .row .row-thumb{aspect-ratio:1.15;border-radius:2px}
  .generation-v27 .row:hover{padding-left:0}
  .generation-v27 .row.is-current{color:var(--cream)}
  .generation-v27 .generation-feature{display:none!important}
  .mobile-programme-filters{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--gutter)) 5px;padding:9px var(--gutter) 14px;-webkit-overflow-scrolling:touch}
  .mobile-programme-filters::-webkit-scrollbar{display:none}
  .mobile-programme-filters button{flex-shrink:0;border:1px solid rgba(248,244,237,.28);border-radius:100px;padding:8px 14px;color:#e8e8d9;background:transparent;min-height:36px;font:600 12px/1.2 var(--sans);letter-spacing:.01em;transition:background-color .2s,color .2s}
  .mobile-programme-filters button span{font-size:10px;opacity:.7;padding-left:5px}
  .mobile-programme-filters button.is-active{background:#eee5d8;color:#09241b;border-color:#eee5d8}
  .mobile-programme-filters button:focus-visible{outline:2px solid #e7ae7b;outline-offset:3px}
  .generation-v27 .generation-item.mobile-preview-hidden{display:none}
  .mazhaka-mobile-ready .mobile-more{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:19px 0 4px;margin-top:1px;text-align:left;border:0;color:#ebbd94;border-bottom:1px solid rgba(241,235,223,.3);font:600 13px/1.35 var(--sans)}
  .mobile-more-plus{font-size:26px;font-weight:300;line-height:.9}
  .mobile-more:focus-visible{outline:2px solid #e7ae7b;outline-offset:3px}
  .mobile-more[hidden]{display:none!important}
  /* Narrow the journal to one headline, one photo and an optional social rail. */
  .journal{padding:48px var(--gutter) 49px}
  .journal-head{margin-bottom:22px}
  .journal-head h2{font-size:clamp(44px,8.8vw,70px);line-height:1.02}
  .journal-head p{font-size:13.5px;line-height:1.62;margin:12px 0 0;max-width:560px}
  .v37-house-feature{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
  .v37-house-photo-set{display:block;height:clamp(208px,53vw,360px);min-height:0}
  .v37-photo-primary{display:block;width:100%;height:100%}
  .v37-photo-secondary{display:none!important}
  .v37-photo-primary img{object-position:center 54%}
  .v37-house-copy{padding:3px 0 0}
  .v37-house-copy h3{font-size:clamp(38px,8.7vw,62px);margin:7px 0 10px}
  .v37-house-copy p{font-size:13.5px;line-height:1.58;margin-bottom:12px}
  .v37-house-copy .meta{font-size:10px}
  .v37-quiet-link{display:none}
  .v37-underline-action{font-size:12.5px;min-height:36px}
  .archive-feature{margin-top:31px;padding:17px 0 21px;display:block}
  .archive-feature h3{font-size:clamp(29px,5.7vw,40px);margin:7px 0}
  .archive-feature p{font-size:12px;line-height:1.55;max-width:540px}
  .archive-feature-action{display:inline-block;margin-top:8px;font-size:12px}
  .v37-social{margin-top:29px;padding-top:28px}
  .v37-social-top{margin-bottom:20px}
  .v37-social-source{font-size:11px}
  .v37-social h3{font-size:clamp(41px,8.7vw,66px);line-height:1.01;margin-top:11px}
  .v37-social-intro{padding-top:10px;max-width:none}
  .v37-social-intro p{display:none}
  .v37-social-visit{display:none!important}
  .mazhaka-social-links{margin-top:1px;gap:6px}
  .mazhaka-social-link{padding:7px 10px;min-height:34px;font-size:11px}
  .mazhaka-social-link svg{width:14px;height:14px}
  .mazhaka-live-feed{margin:20px 0 15px}
  .mazhaka-live-toggle{min-height:55px;padding:10px 0;font-size:12.5px}
  .live-action{font-size:11.5px;gap:7px}
  .v37-post-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter);padding-bottom:10px}
  .v37-post-grid::-webkit-scrollbar{display:none}
  .v37-post{flex:0 0 min(72vw,290px);scroll-snap-align:start;border-top:0;padding-top:0}
  .v37-post-photo{height:clamp(145px,46vw,210px)}
  .v37-post-meta{font-size:10px;margin:10px 0 6px}
  .v37-post h4{font-size:clamp(24px,5.3vw,30px);line-height:1.1;margin:0 0 7px}
  .v37-post-link{font-size:11px}
  .v37-social-note{font-size:11px;line-height:1.5;margin:10px 0 0}
  .upcoming{margin-top:31px;padding:16px;display:grid;grid-template-columns:minmax(78px,.34fr) minmax(0,1fr);gap:14px;align-items:start}
  .upcoming-img{width:100%;max-width:160px;margin:0}
  .upcoming-img img{display:block;width:100%;height:auto;max-height:none;box-shadow:none}
  .upcoming .meta{font-size:10px;gap:4px 8px}
  .upcoming .meta>*+*::before{margin-right:7px}
  .upcoming h3{font-size:clamp(26px,5.8vw,44px);line-height:1.04;margin:8px 0}
  .upcoming-copy>p{font-size:12px;line-height:1.56;margin-bottom:12px}
  .upcoming .link-u{font-size:11px;line-height:1.5}
  .upcoming .link-u span{display:none}
  .feeding-note{padding-left:10px;margin:9px 0 12px}
  .feeding-note .feeding-eyebrow{font-size:9px;letter-spacing:.07em}
  .upcoming .feeding-note p{font-size:11px;line-height:1.5}
  .join{padding:48px var(--gutter) 45px}
  .join-grid{display:block}
  .join h2{font-size:clamp(44px,9.4vw,75px);line-height:1.01;margin-bottom:12px}
  .join-lead{font-size:13px;line-height:1.6;margin-bottom:20px}
  .contact-lines{margin-top:19px;gap:8px 16px;font-size:12px}
  .ways{margin-top:24px}
  .way{padding:11px 0}
  .way strong{font-size:clamp(23px,5.1vw,32px)}
  .way span.d{font-size:11px;margin-top:3px}
  .way .a{font-size:16px}
  .footer{padding:35px var(--gutter) 20px}
  .footer-top{gap:25px;padding-bottom:29px}
  .footer-lead .brand img{width:190px}
  .footer-lead p{font-size:12px;line-height:1.55;margin-top:12px;max-width:370px}
  .footer-cols{gap:30px 42px}
  .footer h3{margin-bottom:11px;font-size:10px}
  .footer li+li{margin-top:8px}
  .footer a:not(.brand){font-size:12px;word-break:break-word}
  .footer-bottom{font-size:10px;line-height:1.5;padding-top:17px}
  /* Rich detail remains available, but modal covers are no longer page-sized. */
  .panel-cover{height:clamp(230px,45svh,345px)}
  .panel-body{padding:25px 20px 32px}
  .panel-summary{margin-bottom:24px;font-size:16px;line-height:1.55}
  .chapters{gap:20px}
  .gallery img{aspect-ratio:1.5}
}
@media(max-width:480px){
  .work{padding-top:33px}
  .work h2{font-size:clamp(44px,10.4vw,57px)}
  .work-lead p{font-size:12.5px}
  .generation-v27 .generation-browser{padding-bottom:37px}
  .generation-v27 .row{grid-template-columns:16px minmax(0,1fr) 66px;min-height:70px;gap:9px;padding:9px 0}
  .generation-v27 .row .t{font-size:clamp(22px,6vw,26px)}
  .generation-v27 .row .p{font-size:9.5px}
  .journal{padding-top:42px}
  .journal-head h2{font-size:clamp(43px,10vw,51px)}
  .v37-house-photo-set{height:220px}
  .v37-house-copy h3{font-size:43px}
  .v37-social h3{font-size:clamp(43px,9.9vw,50px)}
  .upcoming{grid-template-columns:80px minmax(0,1fr);padding:12px;gap:12px}
  .upcoming h3{font-size:clamp(25px,6.2vw,30px)}
  .upcoming-copy>p{font-size:11px}
  .upcoming .feeding-note p{font-size:10.5px}
}
@media(max-width:355px){
  .mobile-programme-filters button{font-size:11px;padding:7px 11px}
  .upcoming{grid-template-columns:1fr}
  .upcoming-img{max-width:115px}
  .v37-post{flex-basis:82vw}
  .mazhaka-live-toggle{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.mazhaka-social-link,.live-action>span,.mobile-programme-filters button{transition:none}}
