/* Reusable inner-page components. Extends the approved homepage tokens. */
.inner-page{background:var(--ls-off-white)}
.inner-header{background:rgba(246,245,239,.96);color:var(--ls-ink);border-color:var(--line)}
.inner-header .logo img{filter:none}
.inner-header .nav-cta{background:var(--ls-lime);border-color:var(--ls-lime)}
.page-hero{padding:clamp(9rem,15vw,13rem) var(--page-gutter) var(--space-6);max-width:var(--container-wide);margin:auto}
.breadcrumb{display:flex;gap:.65rem;align-items:center;margin-bottom:var(--space-5);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted)}
.breadcrumb span{opacity:.45}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:clamp(2rem,6vw,7rem);align-items:end}
.page-kicker{margin-bottom:var(--space-3);font-size:var(--text-xs);font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.page-title{max-width:1020px;font-size:clamp(3.7rem,8vw,8.6rem);font-weight:500;line-height:.9;letter-spacing:-.075em}
.page-title em{font-family:var(--font-editorial);font-weight:400}
.page-deck{max-width:520px;font-size:var(--text-lead);color:var(--color-muted)}
.page-hero-media{height:min(62vw,620px);margin-top:var(--space-5);border-radius:var(--radius-lg);overflow:hidden}
.page-hero-media img{object-position:center}
.page-hero.dark-hero{max-width:none;background:var(--ls-dark-green);color:#fff;padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.dark-hero>.page-hero-grid,.dark-hero>.breadcrumb{max-width:calc(var(--container-wide) - 2 * var(--page-gutter));margin-left:auto;margin-right:auto}
.dark-hero .page-deck,.dark-section .muted{color:#bdc9c2}
.content-section{padding:var(--space-7) var(--page-gutter);max-width:var(--container-wide);margin:auto}
.content-section.compact{padding-top:var(--space-6);padding-bottom:var(--space-6)}
.dark-section{max-width:none;background:var(--ls-dark-green);color:#fff}
.dark-section>.content-inner{max-width:calc(var(--container-wide) - 2 * var(--page-gutter));margin:auto}
.section-label{margin-bottom:var(--space-4);font-size:var(--text-xs);font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.display-heading{max-width:1020px;font-size:var(--text-section);font-weight:500;line-height:.98;letter-spacing:-.065em}
.display-heading em{font-family:var(--font-editorial);font-weight:400}
.editorial-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.65fr);gap:clamp(3rem,8vw,10rem);align-items:end}
.editorial-copy{max-width:560px}
.editorial-copy .lead{font-size:clamp(1.25rem,2.2vw,1.8rem);font-weight:600;line-height:1.3}
.editorial-copy p+p{margin-top:var(--space-2)}
.muted{color:var(--color-muted)}
.full-image{aspect-ratio:16/8;border-radius:var(--radius-lg);overflow:hidden;margin-top:var(--space-5)}
.full-image img{object-position:center 45%}
.timeline{margin-top:var(--space-6);border-top:1px solid var(--line)}
.timeline article{display:grid;grid-template-columns:140px minmax(180px,.8fr) 1.4fr;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line)}
.timeline b{font-size:var(--text-xs);letter-spacing:.1em;color:var(--ls-green)}
.timeline h3{font-size:clamp(1.5rem,2.5vw,2.4rem);line-height:1.1;letter-spacing:-.04em}
.timeline p{max-width:580px;color:var(--color-muted)}
.statement-list{margin-top:var(--space-6);border-top:1px solid currentColor}
.statement-list article{display:grid;grid-template-columns:60px 1fr 1fr;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid currentColor}
.statement-list h3{font-size:clamp(1.6rem,3vw,3rem);font-weight:500;letter-spacing:-.04em}
.statement-list p{max-width:500px;opacity:.75}
.team-grid,.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-top:var(--space-5)}
.team-card figure{aspect-ratio:4/5;border-radius:var(--radius-md);overflow:hidden;background:var(--ls-sand)}
.team-card h3{margin-top:var(--space-2);font-size:1.35rem}.team-card span{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted)}
.document-list{margin-top:var(--space-5);border-top:1px solid var(--line)}
.document-list a{display:grid;grid-template-columns:1fr auto;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--line);font-weight:700}
.story-stack{margin-top:var(--space-5)}
.story-panel{display:grid;grid-template-columns:1fr 1fr;min-height:650px;border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-4);background:var(--ls-white)}
.story-panel:nth-child(even) .story-media{order:2}
.story-panel.green{background:var(--ls-dark-green);color:#fff}.story-panel.sage{background:var(--ls-green);color:#fff}.story-panel.sand{background:var(--ls-sand)}
.story-media{min-height:480px}.story-media img{object-position:center}
.story-copy{padding:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}
.story-copy .number{font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;margin-bottom:auto}
.story-copy h2{font-size:clamp(2.8rem,5vw,5.8rem);line-height:.95;letter-spacing:-.06em;font-weight:500}
.story-copy p{max-width:480px;margin-top:var(--space-3);opacity:.78}
.tag-row,.filters{display:flex;flex-wrap:wrap;gap:.65rem}
.tag,.filter{display:inline-flex;align-items:center;min-height:42px;padding:.65rem 1rem;border:1px solid var(--line);border-radius:var(--radius-pill);background:transparent;font:600 .78rem var(--font-primary);color:inherit}
.filter[aria-pressed="true"],.filter:hover,.tag.accent{background:var(--ls-lime);border-color:var(--ls-lime);color:var(--ls-ink)}
.filter-bar{display:flex;justify-content:space-between;gap:var(--space-3);align-items:center;padding:var(--space-4) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:var(--space-5) 0}
.results-count{font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap}
.archive-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-5) var(--space-3)}
.archive-grid .project-card{grid-column:span 6}.archive-grid .project-card:nth-child(4n+1),.archive-grid .project-card:nth-child(4n){grid-column:span 7}.archive-grid .project-card:nth-child(4n+2),.archive-grid .project-card:nth-child(4n+3){grid-column:span 5}
.status{display:inline-flex;margin-left:.5rem;padding:.28rem .55rem;border-radius:var(--radius-pill);background:var(--ls-sand);font-size:.58rem;letter-spacing:.08em}
.output-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2);margin-top:var(--space-5)}
.output-card{min-height:470px;padding:var(--space-3);border-radius:var(--radius-md);background:var(--ls-white);display:flex;flex-direction:column;position:relative}
.output-card:nth-child(4n+1){background:var(--ls-sand)}.output-card:nth-child(4n+2){background:var(--ls-green);color:#fff}.output-card:nth-child(4n+3){background:#fff}.output-card:nth-child(4n){background:var(--ls-lime)}
.output-visual{height:220px;display:grid;place-items:center;border:1px solid currentColor;border-radius:var(--radius-sm);margin-bottom:var(--space-3)}
.output-visual b{font:400 clamp(3rem,6vw,6rem) var(--font-editorial)}
.output-card small,.article-card small{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;opacity:.7}
.output-card h3{font-size:1.35rem;line-height:1.18;margin-top:auto}.output-card p{font-size:.82rem;margin-top:.6rem;opacity:.75}.output-card .card-link{margin-top:var(--space-2);font-size:.75rem;font-weight:700}
.detail-hero{padding-top:10rem}.detail-title{font-size:clamp(4rem,9vw,9.5rem);line-height:.88;letter-spacing:-.08em;font-weight:500}.detail-deck{font-size:var(--text-lead);max-width:680px;margin-top:var(--space-4)}
.quick-facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:var(--space-5)}
.quick-facts div{padding:var(--space-3) var(--space-2) var(--space-3) 0;border-right:1px solid var(--line)}.quick-facts small{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted)}.quick-facts strong{display:block;margin-top:.5rem;font-size:1.05rem}
.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-top:var(--space-5)}
.activity-grid article{padding:var(--space-4);border-top:1px solid currentColor}.activity-grid b{font-size:var(--text-xs)}.activity-grid h3{font-size:1.65rem;margin:var(--space-3) 0 var(--space-2);line-height:1.15}
.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:320px 320px;gap:var(--space-2);margin-top:var(--space-5)}
.gallery-grid figure{border-radius:var(--radius-md);overflow:hidden}.gallery-grid figure:first-child{grid-row:1/3}.gallery-grid img{object-position:center}
.product-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);align-items:center}.product-cover{aspect-ratio:4/5;border-radius:var(--radius-lg);background:var(--ls-lime);display:grid;place-items:center;position:relative;overflow:hidden}.product-cover b{font:400 clamp(5rem,12vw,12rem) var(--font-editorial)}.product-cover span{position:absolute;left:2rem;top:2rem;font-size:var(--text-xs);letter-spacing:.13em;text-transform:uppercase}
.check-list{margin:var(--space-4) 0 0;padding:0;list-style:none}.check-list li{padding:1rem 0;border-bottom:1px solid var(--line)}.check-list li:before{content:"↗";display:inline-block;margin-right:1rem;color:var(--ls-green)}
.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-top:var(--space-5)}
.path-card{min-height:340px;padding:var(--space-4);border-radius:var(--radius-md);background:var(--ls-white);display:flex;flex-direction:column}.path-card:nth-child(3n+1){background:var(--ls-sand)}.path-card:nth-child(3n+2){background:var(--ls-dark-green);color:#fff}.path-card h3{font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.05;letter-spacing:-.045em}.path-card p{max-width:480px;margin-top:var(--space-2);opacity:.72}.path-card a{margin-top:auto;font-size:.78rem;font-weight:700}
.featured-article{display:grid;grid-template-columns:1.3fr .7fr;gap:var(--space-4);align-items:center;margin:var(--space-5) 0}.featured-article figure{aspect-ratio:16/10;border-radius:var(--radius-lg);overflow:hidden}.featured-article h2{font-size:clamp(2.2rem,4vw,4.6rem);line-height:1;letter-spacing:-.055em;margin:var(--space-2) 0}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.article-card figure{aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-2)}.article-card h3{font-size:1.4rem;line-height:1.2;margin:.6rem 0}.article-card p{font-size:.85rem;color:var(--color-muted)}
.article-header{max-width:1050px;margin:auto;padding:11rem var(--page-gutter) var(--space-5)}.article-header h1{font-size:clamp(3.3rem,7vw,7.4rem);line-height:.95;letter-spacing:-.07em;font-weight:500}.article-meta{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em}.article-lead{max-width:760px;margin-top:var(--space-4);font-size:clamp(1.2rem,2vw,1.7rem)}
.article-body{max-width:740px;margin:auto;padding:var(--space-6) var(--page-gutter)}.article-body p{font-size:1.08rem;line-height:1.8}.article-body p+p{margin-top:1.5rem}.article-body h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.1;letter-spacing:-.04em;margin:var(--space-5) 0 var(--space-2)}.article-body blockquote{margin:var(--space-5) 0;padding-left:var(--space-4);border-left:4px solid var(--ls-lime);font:italic 400 clamp(1.7rem,3vw,2.7rem)/1.25 var(--font-editorial)}.article-inline-image{aspect-ratio:3/2;border-radius:var(--radius-md);overflow:hidden;margin:var(--space-5) -10vw}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,9rem);align-items:start}.contact-details{display:grid;gap:var(--space-4)}.contact-details h3{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.13em;margin-bottom:.6rem}.contact-details a{font-size:clamp(1.3rem,2vw,2rem)}
.contact-form{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--ls-white)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.field{margin-bottom:var(--space-3)}.field label{display:block;margin-bottom:.5rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.field input,.field textarea,.field select{width:100%;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ls-off-white);font:inherit;color:inherit}.field textarea{min-height:160px;resize:vertical}
@media(max-width:900px){.page-hero-grid,.editorial-split,.product-hero,.contact-grid{grid-template-columns:1fr}.page-hero-grid{align-items:start}.page-deck{margin-top:var(--space-3)}.timeline article{grid-template-columns:90px 1fr}.timeline p{grid-column:2}.statement-list article{grid-template-columns:40px 1fr}.statement-list p{grid-column:2}.story-panel{grid-template-columns:1fr;min-height:0}.story-panel:nth-child(even) .story-media{order:0}.story-media{min-height:420px}.archive-grid .project-card:nth-child(n){grid-column:span 6}.output-grid{grid-template-columns:1fr 1fr}.team-grid,.card-grid,.article-grid{grid-template-columns:1fr 1fr}.quick-facts{grid-template-columns:1fr 1fr}.activity-grid{grid-template-columns:1fr 1fr}.featured-article{grid-template-columns:1fr}.article-inline-image{margin-left:0;margin-right:0}}
@media(max-width:700px){.page-hero{padding-top:8.5rem}.page-title,.detail-title{font-size:clamp(3.2rem,16vw,5rem)}.page-hero-media{height:62vh;border-radius:var(--radius-md)}.content-section{padding-top:var(--space-6);padding-bottom:var(--space-6)}.full-image{aspect-ratio:4/3}.timeline article{grid-template-columns:1fr;gap:.65rem}.timeline p{grid-column:auto}.statement-list article{grid-template-columns:32px 1fr}.filter-bar{align-items:flex-start;flex-direction:column}.filters{flex-wrap:nowrap;width:100%;overflow-x:auto;padding-bottom:.5rem}.filter{flex:0 0 auto}.archive-grid{grid-template-columns:1fr;gap:var(--space-5)}.archive-grid .project-card:nth-child(n){grid-column:auto}.output-grid,.team-grid,.card-grid,.article-grid,.path-grid{grid-template-columns:1fr}.output-card{min-height:420px}.quick-facts,.activity-grid{grid-template-columns:1fr}.quick-facts div{border-right:0;border-bottom:1px solid var(--line)}.gallery-grid{grid-template-columns:1fr;grid-template-rows:repeat(3,260px)}.gallery-grid figure:first-child{grid-row:auto}.story-media{min-height:300px}.story-copy{min-height:430px}.featured-article{margin-top:var(--space-4)}.article-inline-image{aspect-ratio:4/3}.field-row{grid-template-columns:1fr}}
