/* MUJO MEDIA v11 — editorial, mobile-first */
:root{--bg:#f7f5ef;--paper:#fff;--ink:#263229;--green:#324f38;--green-2:#496b57;--orange:#fe6a01;--line:rgba(38,50,41,.16);--muted:#697269;--max:1480px;--pad:clamp(20px,4vw,64px);--radius:0px;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button,input,textarea,select{font:inherit}.wrap{width:min(100% - 2*var(--pad),var(--max));margin-inline:auto}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700}.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400}.orange{color:var(--orange)}.green{color:var(--green)}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px 14px}
.site-header{position:fixed;z-index:80;top:0;left:0;width:100%;padding:14px var(--pad);display:flex;align-items:center;justify-content:space-between;mix-blend-mode:normal;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(247,245,239,.94);backdrop-filter:blur(14px);border-color:var(--line)}.brand img{width:170px;max-width:42vw}.nav-desktop{display:none;gap:28px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.nav-desktop a{position:relative}.nav-desktop a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:var(--orange);transition:right .35s var(--ease)}.nav-desktop a:hover::after{right:0}.nav-cta{border:1px solid var(--green);padding:10px 14px}.lang{display:flex;gap:8px;margin-left:6px}.lang button{appearance:none;border:0;background:none;padding:4px;cursor:pointer;font-size:11px;letter-spacing:.08em;color:var(--muted)}.lang button.active{color:var(--green);font-weight:800}.menu-toggle{border:0;background:none;color:var(--green);text-transform:uppercase;letter-spacing:.13em;font-size:11px;padding:9px 0;cursor:pointer}.menu-panel{position:fixed;z-index:70;inset:0;background:var(--green);color:var(--bg);display:grid;align-content:center;padding:90px var(--pad) 32px;transform:translateY(-100%);transition:transform .7s var(--ease)}.menu-open .menu-panel{transform:none}.menu-panel nav{display:grid}.menu-panel a{font-size:clamp(38px,12vw,72px);line-height:1.05;letter-spacing:-.055em;border-bottom:1px solid rgba(255,255,255,.18);padding:10px 0}.menu-meta{display:flex;justify-content:space-between;align-items:end;margin-top:32px;font-size:12px;opacity:.85}.menu-lang{display:flex;gap:14px}.menu-lang button{border:0;background:none;color:inherit;padding:0;cursor:pointer}.menu-lang .active{color:#ff9147}
.hero{min-height:100svh;padding:100px var(--pad) 28px;display:grid;align-content:space-between;position:relative;isolation:isolate}.hero-top{display:flex;justify-content:space-between;align-items:start}.hero-kicker{font-size:11px;letter-spacing:.15em;text-transform:uppercase;max-width:28ch}.hero-number{font-size:11px;letter-spacing:.1em}.hero-type{margin-top:auto}.hero h1{font-size:clamp(66px,17vw,248px);line-height:.75;letter-spacing:-.08em;font-weight:800;margin:0;max-width:1600px;color:var(--green)}.hero h1 .line{display:block}.hero h1 .thin{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.07em}.hero h1 .dot{color:var(--orange)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-top:28px}.hero-copy{max-width:470px;font-size:clamp(15px,2vw,19px)}.scroll-cue{width:54px;height:54px;border-radius:50%;border:1px solid var(--green);display:grid;place-items:center;flex:0 0 auto}.scroll-cue span{transform:rotate(90deg);font-size:20px}.hero-orbit{position:absolute;z-index:-1;width:clamp(80px,18vw,270px);aspect-ratio:1;border-radius:50%;background:var(--orange);right:-4vw;top:18%;filter:none;transform:scale(.78);transition:transform 1s var(--ease)}.loaded .hero-orbit{transform:scale(1)}
.section{padding:clamp(72px,10vw,150px) 0}.section-head{display:grid;gap:20px;margin-bottom:clamp(34px,7vw,90px)}.section-index{font-size:11px;letter-spacing:.15em}.section-title{font-size:clamp(42px,8vw,112px);line-height:.88;letter-spacing:-.065em;margin:0;color:var(--green);max-width:12ch}.section-lede{max-width:580px;font-size:clamp(16px,2vw,22px);margin:0}.dark{background:var(--green);color:var(--bg)}.dark .section-title{color:var(--bg)}
.work-strip{display:grid;gap:32px}.project-card{display:grid;gap:14px}.project-media{position:relative;overflow:hidden;background:#d8ddd8;aspect-ratio:4/3}.project-media img{height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .8s var(--ease)}.project-card:hover .project-media img{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;gap:16px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.project-name{font-size:clamp(24px,3vw,44px);line-height:1;margin:0;letter-spacing:-.04em}.project-arrow{position:absolute;right:14px;bottom:14px;width:48px;height:48px;background:var(--orange);border-radius:50%;display:grid;place-items:center;font-size:22px;transform:scale(0);transition:transform .35s var(--ease)}.project-card:hover .project-arrow{transform:scale(1)}
.featured{padding:0 0 clamp(70px,12vw,170px)}.featured-grid{display:grid;gap:16px}.featured-main{position:relative;min-height:62svh;overflow:hidden;background:#bbb}.featured-main img{height:100%;min-height:62svh;object-fit:cover}.featured-tag{position:absolute;top:18px;left:18px;background:var(--bg);padding:10px 12px;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.featured-copy{padding-top:20px;display:grid;gap:18px}.featured-copy h3{font-size:clamp(38px,7vw,92px);line-height:.9;letter-spacing:-.06em;margin:0;color:var(--green)}.featured-copy p{max-width:50ch;margin:0}.text-link{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:3px;width:max-content;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}.text-link::after{content:'↗';font-size:16px;color:var(--orange)}
.services{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:22px 0}.service-row .num{font-size:10px}.service-row h3{font-size:clamp(30px,7vw,76px);margin:0;line-height:.95;letter-spacing:-.05em;color:var(--green)}.service-row .plus{font-size:26px;color:var(--orange)}.service-detail{grid-column:2/-1;max-height:0;overflow:hidden;transition:max-height .6s var(--ease)}.service-row:hover .service-detail,.service-row:focus-within .service-detail{max-height:140px}.service-detail p{max-width:55ch;margin:8px 0 16px;color:var(--muted)}
.photo-story{display:grid;gap:clamp(18px,4vw,56px)}.photo-story figure{margin:0}.photo-story figcaption{font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:9px}.photo-a{width:100%}.photo-b{width:72%;margin-left:auto!important}.photo-c{width:58%}.photo-d{width:90%;margin-left:auto!important}.photo-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;align-items:end}.photo-pair figure:nth-child(2){margin-bottom:10vw}.photo-note{display:grid;gap:12px;max-width:620px;margin:20px 0 30px}.photo-note h3{font-size:clamp(38px,7vw,92px);line-height:.9;letter-spacing:-.06em;margin:0}.photo-note p{margin:0;max-width:46ch}
.statement{padding:clamp(80px,16vw,220px) 0;text-align:center}.statement p{font-size:clamp(38px,7.5vw,110px);line-height:.98;letter-spacing:-.055em;margin:0;color:var(--green)}.statement em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--orange)}
.about-grid{display:grid;gap:36px}.about-big{font-size:clamp(42px,8vw,110px);line-height:.9;letter-spacing:-.065em;margin:0}.about-copy{max-width:620px;font-size:18px}.about-copy p{margin:0 0 18px}.micro-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(255,255,255,.18);margin-top:48px}.stat{background:var(--green);padding:22px 0}.stat strong{font-size:clamp(32px,5vw,64px);display:block;letter-spacing:-.05em}.stat span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;opacity:.7}
.process-list{counter-reset:item;border-top:1px solid var(--line)}.process-item{display:grid;grid-template-columns:46px 1fr;gap:12px;padding:24px 0;border-bottom:1px solid var(--line)}.process-item::before{counter-increment:item;content:'0' counter(item);font-size:10px;letter-spacing:.13em}.process-item h3{font-size:clamp(28px,5vw,58px);line-height:1;margin:0 0 10px;letter-spacing:-.045em;color:var(--green)}.process-item p{max-width:55ch;margin:0;color:var(--muted)}
.cta{background:var(--orange);color:#1d2d23;padding:clamp(80px,14vw,190px) 0}.cta h2{font-size:clamp(58px,13vw,190px);line-height:.76;letter-spacing:-.085em;margin:0}.cta-row{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:42px;flex-wrap:wrap}.cta a{font-size:clamp(20px,3vw,38px);border-bottom:2px solid currentColor}.cta small{max-width:32ch;display:block}
.site-footer{background:#183525;color:var(--bg);padding:44px var(--pad) 28px}.footer-logo{width:min(250px,60vw);margin-bottom:50px}.footer-grid{display:grid;gap:34px}.footer-grid h4{font-size:10px;text-transform:uppercase;letter-spacing:.15em;opacity:.65;margin:0 0 10px}.footer-grid p,.footer-grid a{margin:0;display:block}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);margin-top:44px;padding-top:16px;font-size:10px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;opacity:.75}
/* inner pages */
.page-hero{padding:150px 0 70px}.page-hero h1{font-size:clamp(66px,14vw,190px);line-height:.78;letter-spacing:-.08em;color:var(--green);margin:0}.page-hero .intro{font-size:clamp(18px,2.4vw,30px);max-width:700px;margin:40px 0 0 auto}.page-grid{display:grid;gap:28px}.work-grid{display:grid;gap:34px}.work-grid .project-card:nth-child(even){margin-left:8vw}.work-grid .project-card:nth-child(odd){margin-right:8vw}.pricing-line{display:grid;gap:16px;border-top:1px solid var(--line);padding:28px 0}.pricing-line:last-child{border-bottom:1px solid var(--line)}.pricing-line h3{font-size:clamp(32px,6vw,70px);margin:0;color:var(--green);letter-spacing:-.05em}.price{font-size:clamp(40px,7vw,84px);letter-spacing:-.06em;color:var(--orange)}.bulletless{list-style:none;padding:0;margin:0;display:grid;gap:8px}.bulletless li::before{content:'↳';color:var(--orange);margin-right:10px}
/* houseboat case */
.case-hero{padding:120px 0 0}.case-title{font-size:clamp(58px,13vw,180px);line-height:.8;letter-spacing:-.08em;color:var(--green);margin:0 0 36px}.case-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:34px}.case-meta span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.case-meta strong{font-weight:500}.case-full{width:100%;max-height:90vh;object-fit:cover}.case-story{padding:clamp(50px,8vw,110px) var(--pad);display:grid;gap:clamp(22px,5vw,72px)}.case-story .land{width:100%}.case-story .portrait{width:65%;margin-left:auto}.case-story .portrait.left{margin-left:0}.case-story .pair{display:grid;grid-template-columns:.78fr 1.22fr;gap:14px;align-items:center}.case-story blockquote{font-family:Georgia,serif;font-size:clamp(32px,5vw,64px);line-height:1.08;color:var(--green);margin:30px 0;max-width:17ch}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(min-width:760px){.section-head{grid-template-columns:110px 1fr minmax(240px,430px);align-items:start}.section-title{grid-column:2}.section-lede{grid-column:3}.section-index{grid-row:1}.work-strip{grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,64px);align-items:start}.work-strip .project-card:nth-child(2){margin-top:14vw}.work-strip .project-card:nth-child(3){margin-top:-4vw}.featured-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:clamp(24px,5vw,72px)}.featured-copy{align-content:end;padding-bottom:3vw}.photo-story{grid-template-columns:repeat(12,1fr)}.photo-a{grid-column:1/-1}.photo-b{grid-column:6/-1;width:100%}.photo-c{grid-column:1/6;width:100%}.photo-d{grid-column:3/12;width:100%}.photo-note{grid-column:2/8}.photo-pair{grid-column:1/-1;gap:24px}.about-grid{grid-template-columns:1.25fr .75fr;align-items:start}.micro-stats{grid-template-columns:repeat(4,1fr)}.process-item{grid-template-columns:90px 1.1fr 1fr;align-items:start}.process-item p{grid-column:3}.footer-grid{grid-template-columns:1.2fr repeat(3,1fr)}.work-grid{grid-template-columns:repeat(2,1fr)}.pricing-line{grid-template-columns:1.2fr .8fr 1fr;align-items:start}.case-meta{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1080px){.nav-desktop{display:flex}.menu-toggle{display:none}.hero{padding-top:118px}.work-strip{grid-template-columns:1.1fr .75fr .9fr}.work-strip .project-card:nth-child(2){margin-top:10vw}.work-strip .project-card:nth-child(3){margin-top:2vw}.service-row{grid-template-columns:90px 1fr 60px}.service-detail{grid-column:2/3}.work-grid{gap:7vw 3vw}.case-story{padding-left:8vw;padding-right:8vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project-media img,.menu-panel{transition:none}}

/* v11.1 refinement pass */
.micro-stats .stat{
  min-height:150px;
  padding:28px 18px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.micro-stats .stat strong{line-height:.95;margin-bottom:14px}
.micro-stats .stat span{line-height:1.45;max-width:20ch}

/* Keep the homepage photography edit editorial, but more compact. */
.photo-story{max-width:1180px;margin-inline:auto}
.photo-story img{display:block;width:100%;max-height:720px;object-fit:cover}
@media(min-width:760px){
  .photo-story{grid-template-columns:repeat(12,1fr);gap:clamp(18px,3vw,40px)}
  .photo-a{grid-column:2/11;width:100%}
  .photo-note{grid-column:2/8;margin:6px 0 12px}
  .photo-b{grid-column:7/12;width:100%;margin-top:-1vw!important}
  .photo-pair{grid-column:2/11;gap:20px;align-items:start}
  .photo-pair figure:nth-child(2){margin:5vw 0 0}
  .photo-d{grid-column:4/11;width:100%;margin-left:0!important}
  .photo-story .photo-a img{max-height:600px}
  .photo-story .photo-b img{max-height:520px}
  .photo-story .photo-pair img{max-height:520px}
  .photo-story .photo-d img{max-height:560px}
}

.page-cta{padding:clamp(80px,12vw,160px) 0;background:var(--orange);color:var(--green)}
.page-cta.dark{background:var(--green);color:var(--bg)}
.page-cta h2{font-size:clamp(48px,9vw,130px);line-height:.86;letter-spacing:-.065em;margin:18px 0 36px;max-width:12ch}
.page-cta-row{display:grid;gap:28px;align-items:end}
.page-cta-row>p{font-size:clamp(17px,2vw,22px);max-width:48ch;margin:0}
.page-cta-actions{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.cta-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800;transition:background .25s ease,color .25s ease}
.cta-button:hover{background:var(--green);color:var(--bg)}
.page-cta.dark .cta-button.invert:hover{background:var(--bg);color:var(--green)}
@media(min-width:760px){.page-cta-row{grid-template-columns:1fr auto}}

/* Pricing: quieter hierarchy, clearer price treatment. */
.pricing-line{position:relative;padding:34px 0 38px}
.price-stack{display:flex;flex-direction:column;align-items:flex-start;gap:4px;color:var(--orange)}
.price-label{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--muted)}
.price-stack strong{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(38px,5.2vw,72px);line-height:.95;letter-spacing:-.055em;color:var(--orange)}
@media(min-width:760px){
  .pricing-line{grid-template-columns:1.15fr .65fr .8fr;gap:clamp(28px,4vw,72px);align-items:center}
  .pricing-line h3{font-size:clamp(34px,4.5vw,64px)}
}


/* v11.2 mobile interaction + menu contrast + back-to-top */
.menu-open .site-header{background:transparent!important;border-color:transparent!important;backdrop-filter:none!important}
.menu-open .menu-toggle{color:var(--bg);position:relative;z-index:2}
.menu-open .menu-toggle::before{content:'×';font-size:28px;line-height:1;font-weight:300;letter-spacing:0}
.menu-open .menu-toggle{font-size:0}
.menu-open .brand img{visibility:hidden}
.menu-open .brand{position:relative;display:block;width:170px;max-width:42vw;height:42px}
.menu-open .brand::after{content:'';position:absolute;inset:0;background:url('../img/mujo-logo-inverse.svg') left center/contain no-repeat}

@media(max-width:1079px){
  .service-row .plus{cursor:pointer;display:grid;place-items:center;min-width:44px;min-height:44px;margin:-8px -8px -8px 0;transition:transform .3s var(--ease)}
  .service-row.is-open .plus{transform:rotate(45deg)}
  .service-row.is-open .service-detail{max-height:220px}
}

.back-to-top{position:fixed;z-index:65;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:48px;height:48px;border:1px solid var(--green);border-radius:50%;background:rgba(247,245,239,.94);color:var(--green);display:grid;place-items:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease,background .25s ease,color .25s ease;backdrop-filter:blur(10px);font-size:20px;line-height:1}
.back-to-top.visible{opacity:1;visibility:visible;transform:none}
.back-to-top:hover{background:var(--green);color:var(--bg)}
body.menu-open .back-to-top{opacity:0;visibility:hidden}
@media(min-width:760px){.back-to-top{right:28px;bottom:28px;width:52px;height:52px}}

/* v11.3 — improve contrast of editorial serif highlights on orange CTA panels */
.page-cta:not(.dark) h2 .serif.orange,
.page-cta:not(.dark) h2 .orange.serif {
  color: var(--bg);
}

/* v11.4 editorial breadcrumbs */
.breadcrumb-rail{--crumb-x:0px;--crumb-start-x:0px;position:relative;display:inline-block;margin:0 0 28px;padding:0 0 14px;color:var(--green);max-width:100%;}
.breadcrumb-rail ol{list-style:none;display:flex;align-items:center;gap:9px;margin:0;padding:0;white-space:nowrap;font-size:10px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;overflow-x:auto;scrollbar-width:none;}
.breadcrumb-rail ol::-webkit-scrollbar{display:none}
.breadcrumb-rail li{display:flex;align-items:center;flex:0 0 auto}
.breadcrumb-rail a,.breadcrumb-rail [aria-current="page"]{color:inherit;text-decoration:none;padding:3px 0}
.breadcrumb-rail a{opacity:.56;transition:opacity .25s ease}
.breadcrumb-rail a:hover,.breadcrumb-rail a:focus-visible{opacity:1}
.breadcrumb-sep{opacity:.32;font-weight:400}
.breadcrumb-line{position:absolute;left:0;right:0;bottom:3px;height:1px;background:rgba(48,83,58,.22);overflow:visible}
.breadcrumb-dot{position:absolute;left:0;top:50%;width:9px;height:9px;border-radius:50%;background:var(--orange);transform:translate(var(--crumb-start-x),-50%);transition:transform .72s cubic-bezier(.2,.82,.2,1);box-shadow:0 0 0 3px var(--bg)}
.breadcrumb-rail.is-positioned .breadcrumb-dot{transform:translate(var(--crumb-x),-50%)}
.dark .breadcrumb-dot,.site-footer .breadcrumb-dot{box-shadow:0 0 0 3px var(--green)}
@media(min-width:760px){.breadcrumb-rail{margin-bottom:34px}.breadcrumb-rail ol{font-size:11px;gap:11px}.breadcrumb-dot{width:10px;height:10px}}
@media(prefers-reduced-motion:reduce){.breadcrumb-dot{transition:none!important}}


/* v11.5 — header CTA + two-project work edit */
.nav-cta{transition:background .28s ease,color .28s ease,border-color .28s ease,transform .28s var(--ease)}
.nav-cta:hover,.nav-cta:focus-visible{background:var(--orange);border-color:var(--orange);color:var(--green);transform:translateY(-2px)}
@media(min-width:760px){.work-strip:has(.project-card:nth-child(2):last-child){grid-template-columns:1.12fr .88fr;max-width:1180px}.work-strip:has(.project-card:nth-child(2):last-child) .project-card:nth-child(2){margin-top:8vw}}
@media(min-width:1080px){.work-strip:has(.project-card:nth-child(2):last-child){grid-template-columns:1.1fr .9fr}.work-strip:has(.project-card:nth-child(2):last-child) .project-card:nth-child(2){margin-top:7vw}}

/* v11.6 — robust mobile menu states + landscape layout */
.menu-panel{
  height:100dvh;
  overflow-y:auto;
  overscroll-behavior:contain;
  visibility:hidden;
  pointer-events:none;
  opacity:0;
  transition:transform .7s var(--ease),opacity .18s ease,visibility 0s linear .7s;
}
.menu-open .menu-panel{
  visibility:visible;
  pointer-events:auto;
  opacity:1;
  transition:transform .7s var(--ease),opacity .18s ease,visibility 0s;
}

/* Phone/tablet landscape: keep the overlay elegant instead of oversized. */
@media (orientation:landscape) and (max-width:1079px) and (max-height:650px){
  .site-header{padding-top:10px;padding-bottom:10px}
  .brand img{width:142px}
  .menu-open .brand{width:142px;height:34px}
  .menu-panel{
    align-content:start;
    padding:72px var(--pad) max(20px,env(safe-area-inset-bottom));
  }
  .menu-panel nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:clamp(24px,5vw,64px);
  }
  .menu-panel a{
    font-size:clamp(28px,7.8vh,48px);
    line-height:.95;
    padding:8px 0;
  }
  .menu-meta{
    margin-top:18px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.18);
    font-size:11px;
  }
}

@media (orientation:landscape) and (max-width:760px) and (max-height:500px){
  .menu-panel nav{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px}
  .menu-panel a{font-size:clamp(24px,8vh,36px)}
  .menu-meta{margin-top:12px}
}

/* v11.7 — compact mobile breadcrumbs with visible orange position marker */
@media (max-width:759px){
  .breadcrumb-rail{display:block;width:max-content;max-width:100%;margin:0 0 18px;padding:0 0 10px;}
  .breadcrumb-rail ol{list-style:none!important;gap:5px!important;font-size:8.5px!important;line-height:1.2;letter-spacing:.11em;overflow-x:auto;max-width:calc(100vw - 48px);}
  .breadcrumb-rail li{list-style:none!important;}
  .breadcrumb-rail li::marker{content:"";font-size:0;}
  .breadcrumb-rail a,.breadcrumb-rail [aria-current="page"]{padding:2px 0;}
  .breadcrumb-sep{font-size:8px;opacity:.25;}
  .breadcrumb-line{left:0;right:0;bottom:1px;height:1px;background:rgba(48,83,58,.16);overflow:visible;}
  .breadcrumb-dot{top:50%;width:7px;height:7px;box-shadow:0 0 0 2px var(--bg);transition:transform .55s cubic-bezier(.2,.82,.2,1);}
}

/* v11.8 — rebuilt breadcrumbs + bulletproof menu state */
.breadcrumb-rail{display:inline-block;max-width:100%}
.breadcrumb-items{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:10px;font-weight:750;letter-spacing:.16em;text-transform:uppercase;overflow-x:auto;scrollbar-width:none;max-width:100%}
.breadcrumb-items::-webkit-scrollbar{display:none}
.breadcrumb-items>a,.breadcrumb-items>[aria-current="page"],.breadcrumb-items>.breadcrumb-sep{flex:0 0 auto}
.breadcrumb-items>a{opacity:.56;transition:opacity .25s ease}
.breadcrumb-items>a:hover,.breadcrumb-items>a:focus-visible{opacity:1}
.breadcrumb-items>[aria-current="page"]{color:var(--green)}
body:not(.menu-open) .menu-panel{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
body.menu-open .menu-panel{display:grid!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}
@media(max-width:759px){
  .breadcrumb-rail{width:100%;margin:0 0 16px;padding:0 0 9px}
  .breadcrumb-items{gap:6px;font-size:9px;line-height:1;letter-spacing:.10em;max-width:100%;padding-right:4px}
  .breadcrumb-sep{font-size:8px;opacity:.28}
  .breadcrumb-line{left:0;right:0;bottom:0}
  .breadcrumb-dot{width:7px;height:7px;box-shadow:0 0 0 2px var(--bg)}
}
@media(orientation:landscape) and (max-width:1079px){
  .site-header{padding:8px max(var(--pad),env(safe-area-inset-left))}
  .brand img{width:132px}
  .menu-open .brand{width:132px;height:32px}
  .menu-panel{align-content:start!important;padding:58px max(var(--pad),env(safe-area-inset-left)) max(14px,env(safe-area-inset-bottom))!important;overflow-y:auto!important}
  .menu-panel nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 clamp(22px,5vw,60px)!important}
  .menu-panel nav a{font-size:clamp(24px,6.5vw,42px)!important;line-height:.92!important;padding:7px 0!important}
  .menu-meta{margin-top:14px!important;padding-top:10px!important;border-top:1px solid rgba(255,255,255,.18)!important;font-size:10px!important}
  .menu-meta>div:first-child{display:none!important}
  .menu-lang{margin-left:auto}
}
@media(orientation:landscape) and (max-width:760px){
  .menu-panel{padding-top:52px!important}
  .menu-panel nav{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:18px!important}
  .menu-panel nav a{font-size:clamp(21px,6vw,32px)!important;padding:6px 0!important}
  .menu-meta{margin-top:8px!important;padding-top:8px!important}
}


/* v11.9 — final breadcrumb cleanup */
.breadcrumb-rail, .breadcrumb-rail * { list-style:none!important; }
.breadcrumb-rail::before,.breadcrumb-rail::after,
.breadcrumb-items::before,.breadcrumb-items::after,
.breadcrumb-items>*::before,.breadcrumb-items>*::after { counter-increment:none!important; }
@media (max-width:759px){
  .breadcrumb-rail{width:auto;max-width:calc(100vw - 40px);margin:0 0 14px;padding-bottom:8px;}
  .breadcrumb-items{font-size:8px;letter-spacing:.09em;gap:5px;line-height:1;}
  .breadcrumb-line{right:auto;width:min(150px,100%);}
  .breadcrumb-dot{width:7px;height:7px;}
}

/* v11.10 — global horizontal-overflow guard
   Keep editorial type oversized visually, but never let any section widen the document. */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
}
@supports (overflow:clip){
  html,
  body{overflow-x:clip!important}
}
body{position:relative}
.site-header{
  left:0!important;
  right:0!important;
  width:auto!important;
  max-width:100vw!important;
  min-width:0!important;
}
main,
section,
footer,
.hero,
.page-hero,
.case-hero,
.statement,
.cta,
.page-cta,
.dark,
.featured{
  max-width:100%;
  min-width:0;
}
.hero,
.page-hero,
.case-hero,
.statement,
.cta,
.page-cta{
  overflow-x:hidden;
}
@supports (overflow:clip){
  .hero,
  .page-hero,
  .case-hero,
  .statement,
  .cta,
  .page-cta{overflow-x:clip}
}
.wrap,
.hero-top,
.hero-type,
.hero-bottom,
.section-head,
.work-strip,
.featured-grid,
.about-grid,
.page-grid,
.work-grid,
.case-story{
  min-width:0;
  max-width:100%;
}
.hero h1,
.page-hero h1,
.case-title,
.statement p,
.cta h2,
.page-cta h2{
  max-width:100%;
}
.hero h1 .line,
.statement p,
.page-cta h2,
.cta h2{
  min-width:0;
}
.hero-orbit{pointer-events:none}
img,video,iframe,svg{max-width:100%}

/* Prevent the mobile/tablet browser from panning a fixed header sideways. */
@media(max-width:1079px){
  .site-header{contain:layout paint}
  .menu-panel{max-width:100vw;overflow-x:hidden!important}
  @supports (overflow:clip){.menu-panel{overflow-x:clip!important}}
}


/* v11.13 legal pages */
.legal-page{padding:150px 0 clamp(80px,10vw,150px)}
.legal-page .legal-head{max-width:980px;margin-bottom:clamp(48px,8vw,100px)}
.legal-page h1{font-size:clamp(58px,11vw,150px);line-height:.8;letter-spacing:-.075em;color:var(--green);margin:0 0 34px}
.legal-page .legal-intro{font-size:clamp(17px,2.2vw,24px);max-width:720px;margin:0;color:var(--muted)}
.legal-content{display:grid;gap:0;max-width:1050px}
.legal-block{border-top:1px solid var(--line);padding:clamp(28px,4vw,52px) 0;display:grid;gap:14px}
.legal-block:last-child{border-bottom:1px solid var(--line)}
.legal-block h2{font-size:clamp(25px,3.5vw,44px);line-height:1;letter-spacing:-.04em;color:var(--green);margin:0}
.legal-block h3{font-size:18px;color:var(--green);margin:12px 0 0}
.legal-block p,.legal-block ul{margin:0;max-width:78ch}
.legal-block ul{padding-left:1.15em;display:grid;gap:8px}
.legal-block a{text-decoration:underline;text-underline-offset:3px}
.legal-company{font-size:clamp(19px,2.4vw,28px);line-height:1.45}
.legal-note{font-size:13px;color:var(--muted)}
.footer-legal{display:flex;gap:14px;flex-wrap:wrap}
.footer-legal a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:760px){
  .legal-block{grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);gap:clamp(28px,6vw,90px)}
  .legal-block>h2{grid-column:1}.legal-block>.legal-copy{grid-column:2}
}
