/* frontend/app/globals.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */

:root {
  --cream: #f7f0e3;
  --ivory: #fffaf1;
  --paper: #fffdf8;
  --sage: #dce1d3;
  --khaki: #e8d7bc;
  --green: #163c2d;
  --green-2: #2f5143;
  --ink: #243129;
  --muted: #687269;
  --rust: #c84e2f;
  --rust-dark: #9c3520;
  --line: #e5dccb;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--cream); color: var(--ink); font-family: "Avenir Next", "Nunito Sans", "Segoe UI", Arial, sans-serif; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--green); letter-spacing: -.035em; }
h1 { font-size: clamp(3.25rem, 6.6vw, 7.3rem); line-height: .92; font-weight: 650; }
h2 { font-size: clamp(2.25rem, 4vw, 4.6rem); line-height: 1; font-weight: 630; }
h3 { line-height: 1.12; }
p { color: var(--muted); line-height: 1.7; }

.site-shell { min-height: 100vh; overflow: hidden; }
.site-header { position: sticky; top: 0; z-index: 50; height: 88px; display: flex; align-items: center; gap: 32px; padding: 10px 3.5vw; background: rgba(247,240,227,.93); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(22,60,45,.1); }
.brand { width: min(310px, 24vw); flex: 0 0 auto; }
.brand img { width: 100%; height: 66px; object-fit: contain; object-position: left center; mix-blend-mode: multiply; }
.header-panel { flex: 1; display: flex; align-items: center; justify-content: flex-end; gap: 26px; }
.main-nav { display: flex; align-items: center; gap: 22px; }
.main-nav a { color: var(--green-2); font-size: .82rem; font-weight: 700; white-space: nowrap; padding: 10px 0; border-bottom: 2px solid transparent; }
.main-nav a:hover, .main-nav a.active { color: var(--rust); border-color: var(--rust); }
.header-actions { display: flex; gap: 9px; }
.menu-toggle { display: none; }

.button { min-height: 49px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 0 24px; border: 1px solid transparent; font-weight: 800; letter-spacing: .01em; cursor: pointer; transition: .2s ease; }
.button:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(22,60,45,.12); }
.button-primary { background: var(--rust); color: white; }
.button-primary:hover { background: var(--rust-dark); }
.button-outline { background: transparent; color: var(--green); border-color: rgba(22,60,45,.45); }
.button-dark { background: var(--green); color: white; }
.button-light { background: var(--ivory); color: var(--green); }
.button.compact { min-height: 40px; padding: 0 17px; font-size: .76rem; }
.text-button { border: 0; padding: 0; background: transparent; color: var(--rust); font-weight: 800; cursor: pointer; text-align: left; display: inline-flex; align-items: center; gap: 5px; }
.arrow-link { color: var(--rust); font-weight: 800; white-space: nowrap; display: inline-flex; align-items: center; gap: 5px; }
.text-button svg, .arrow-link svg, .home-insight-link svg { width: 17px; height: 17px; flex: 0 0 17px; }
.eyebrow { margin-bottom: 20px; color: var(--rust); font-size: .73rem; line-height: 1.2; font-weight: 900; letter-spacing: .18em; }
.eyebrow.light { color: #f9c7b7; }

.hero { min-height: calc(100vh - 88px); display: grid; grid-template-columns: 49% 51%; align-items: stretch; padding: 3.5vw 3.5vw 4.5vw; }
.hero-copy { display: flex; flex-direction: column; justify-content: center; padding: 4vw 4.5vw 3vw 0; }
.hero h1 { max-width: 820px; margin-bottom: 28px; }
.hero-text { max-width: 660px; font-size: 1.13rem; }
.hero-actions { display: flex; gap: 12px; margin-top: 22px; }
.hero-trust { margin-top: 50px; padding-top: 20px; border-top: 1px solid var(--line); display: flex; gap: 25px; align-items: center; color: var(--green-2); font-size: .82rem; }
.hero-trust strong { color: var(--green); font-size: 1.15rem; }
.hero-visual { position: relative; min-height: 640px; overflow: hidden; border-radius: 40px 40px 8px 40px; box-shadow: 0 30px 70px rgba(49,62,49,.12); }
.hero-visual > img { width: 100%; height: 100%; object-fit: cover; }
.hero-note { position: absolute; left: 24px; bottom: 24px; display: flex; align-items: center; gap: 13px; padding: 13px 17px; background: rgba(255,250,241,.94); border-radius: 999px; color: var(--green); font-weight: 800; font-size: .83rem; }
.hero-note span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--rust); }

.section { padding: 110px 5vw; }
.section-heading { max-width: 780px; margin-bottom: 52px; }
.section-heading h2 { margin-bottom: 0; }
.split-heading { max-width: none; display: flex; align-items: flex-end; justify-content: space-between; gap: 50px; }
.split-heading > div { max-width: 780px; }
.split-heading > p { width: min(380px, 34vw); margin: 0; }

.category-grid, .product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.product-grid { grid-template-columns: repeat(3, 1fr); }
.product-card { min-width: 0; }
.product-image { position: relative; width: 100%; aspect-ratio: 1 / 1; padding: 0; overflow: hidden; border: 0; border-radius: 18px; background: var(--paper); cursor: pointer; }
.product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.product-image:hover img { transform: scale(1.035); }
.image-index { position: absolute; top: 14px; left: 14px; width: 35px; height: 35px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,250,241,.9); color: var(--green); font-weight: 900; font-size: .75rem; }
.product-copy { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 18px 4px 8px; }
.product-copy h3 { margin: 0 0 7px; font-size: 1.22rem; }
.product-copy p { margin: 0; font-size: .83rem; line-height: 1.45; }
.product-copy .arrow-link, .product-copy .text-button { margin-top: 4px; font-size: .78rem; }

.sage-section { background: var(--sage); }
.case-home .case-card { display: grid; grid-template-columns: 58% 42%; min-height: 560px; background: var(--paper); border-radius: 30px; overflow: hidden; }
.case-grid { display: grid; grid-template-columns: 1fr; gap: 26px; }
.case-grid .case-card { display: grid; grid-template-columns: minmax(340px, 42%) 1fr; min-height: 390px; background: var(--paper); border: 1px solid var(--line); border-radius: 24px; overflow: hidden; }
.case-image { position: relative; width: 100%; min-height: 340px; padding: 0; border: 0; overflow: hidden; background: var(--khaki); cursor: pointer; }
.case-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.case-image:hover img { transform: scale(1.025); }
.case-image span { position: absolute; right: 17px; bottom: 17px; padding: 10px 15px; border-radius: 999px; background: rgba(255,250,241,.94); color: var(--green); font-size: .77rem; font-weight: 800; }
.case-copy { display: flex; flex-direction: column; justify-content: center; padding: 55px; }
.case-copy h3 { font-size: clamp(1.7rem, 2.5vw, 3.2rem); margin-bottom: 20px; }
.case-grid .case-image { min-height: 390px; }
.case-grid .case-copy { padding: 36px 42px; }
.case-grid .case-copy h3 { margin-bottom: 14px; font-size: clamp(1.75rem, 2.5vw, 2.8rem); }
.case-tag { margin-bottom: 20px; color: var(--rust); font-size: .72rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.case-challenge { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); }
.case-challenge strong { display: block; margin-bottom: 7px; color: var(--green); font-size: .76rem; letter-spacing: .1em; text-transform: uppercase; }
.case-challenge p { margin: 0; font-size: .88rem; line-height: 1.55; }
.case-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }

.process-section { background: var(--ivory); }
.process-bar { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; border: 1px solid var(--line); border-radius: 24px; overflow: hidden; background: var(--paper); }
.process-step { min-height: 255px; padding: 30px 24px; border-right: 1px solid var(--line); transition: .25s ease; }
.process-step:last-child { border-right: 0; }
.process-step:hover { background: var(--sage); }
.process-step > span { width: 40px; height: 40px; display: grid; place-items: center; margin-bottom: 45px; border-radius: 50%; background: var(--cream); color: var(--rust); font-weight: 900; }
.process-step h3 { font-size: 1.05rem; }
.process-step p { margin: 0; font-size: .8rem; line-height: 1.5; }

.resource-preview { background: var(--cream); }
.resource-feature-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.resource-card { padding: 40px; border-radius: 22px; background: var(--paper); border-top: 4px solid var(--rust); }
.resource-card > span { color: var(--rust); font-size: .7rem; font-weight: 900; letter-spacing: .13em; }
.resource-card h3 { max-width: 560px; margin: 25px 0 14px; font-size: clamp(1.5rem, 2.2vw, 2.5rem); }
.resource-card a { color: var(--rust); font-weight: 800; }
.testimonial-section { padding: 110px 14vw; text-align: center; background: var(--khaki); }
.testimonial-section blockquote { margin: 0 auto; max-width: 970px; color: var(--green); font-size: clamp(2rem, 3.6vw, 4.3rem); line-height: 1.08; font-weight: 620; letter-spacing: -.03em; }
.testimonial-note { margin: 30px auto 0; font-size: .75rem; }
.cta-band { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 80px 7vw; background: var(--green); }
.cta-band h2 { max-width: 850px; margin: 0; color: var(--ivory); }

.page-hero { padding: 150px 8vw 100px; background: var(--ivory); }
.page-hero h1 { max-width: 1100px; }
.page-hero > p:last-child, .page-hero > div > p:not(.eyebrow) { max-width: 760px; font-size: 1.15rem; }
.compact-hero { padding-bottom: 75px; }
.page-hero.standard-page-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-top: 30px;
  padding-bottom: 30px;
  background: var(--sage);
}
.standard-page-hero > :not(.products-hero-botanical) { position: relative; z-index: 1; }
.products-hero h1 { transform: translateY(-5px); }
.products-hero-botanical { position: absolute; z-index: 0; top: 50%; right: 0; width: min(38vw, 500px); height: 150px; transform: translateY(-50%); opacity: .42; pointer-events: none; }
.products-hero-botanical::before,
.products-hero-botanical::after { content: ""; position: absolute; right: -4%; width: 112%; border-top: 1px dashed rgba(47, 81, 67, .58); border-radius: 50% 0 0; }
.products-hero-botanical::before { top: 34px; height: 78px; transform: rotate(-7deg); }
.products-hero-botanical::after { top: 82px; height: 58px; transform: rotate(5deg); opacity: .68; }
.notice-bar { margin: 30px 5vw 0; padding: 18px 24px; border-radius: 14px; background: var(--green); color: var(--ivory); font-size: .88rem; text-align: center; }
.section.product-gallery-section {
  padding-top: 30px;
  padding-bottom: 30px;
}
.section.case-gallery-section {
  padding-top: 30px;
  padding-bottom: 30px;
}
.rights-note { margin: 0 5vw 30px; padding: 18px 24px; border-radius: 14px; background: var(--green); color: var(--ivory); text-align: center; font-size: .88rem; }

.capability-hero { display: grid; grid-template-columns: 1fr; align-items: end; }
.capability-hero h1 { margin-bottom: 0; }
.capability-hero .capability-intro { margin-top: 1.7em; }
.capability-hero .button { margin-top: 20px; }
.capability-summary { padding: 28px; border-radius: 24px; background: var(--sage); }
.capability-summary span, .capability-summary strong { display: block; }
.capability-summary span { color: var(--rust); font-size: .72rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.capability-summary strong { margin-top: 35px; color: var(--green); font-size: 1.4rem; }
.capability-list { padding: 30px 6vw 100px; background: var(--ivory); }
.capability-list article { display: grid; grid-template-columns: 70px 1fr 170px; gap: 28px; align-items: center; padding: 38px 0; border-bottom: 1px solid var(--line); }
.capability-list article > span { color: var(--rust); font-weight: 900; }
.capability-list h2 { margin-bottom: 9px; font-size: clamp(1.5rem, 2.4vw, 2.8rem); }
.capability-list p { max-width: 760px; margin: 0; }
.quality-panel { padding: 110px 6vw; background: var(--sage); }
.quality-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.quality-grid article { padding: 36px; border-radius: 20px; background: rgba(255,253,248,.75); }
.quality-grid article > span { color: var(--rust); font-weight: 900; }
.quality-grid h3 { margin: 32px 0 12px; font-size: 1.45rem; }
.quality-grid p { margin: 0; font-size: .9rem; }
.text-trust-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 25px; }
.text-trust-row span { padding: 11px 16px; border: 1px solid rgba(22,60,45,.18); border-radius: 999px; color: var(--green); font-size: .78rem; font-weight: 750; }
.capabilities-page .capability-list { padding-top: 30px; padding-bottom: 30px; }
.capabilities-page .quality-panel { padding-top: 30px; padding-bottom: 30px; }
.capabilities-page .cta-band { padding-top: 30px; padding-bottom: 30px; }

.capability-explorer { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 30px; padding: 30px; background: var(--cream); }
.capability-process-panel, .capability-compliance-panel { padding: 30px; }
.capability-process-panel { border-radius: 24px; background: var(--paper); }
.capability-compliance-panel { border-radius: 24px; background: #edf0e7; }
.capability-explorer header h2 { max-width: 590px; margin-bottom: 28px; font-size: clamp(2rem, 3.2vw, 3.8rem); }
.capability-flow-list { position: relative; }
.capability-flow-list::before { content: ""; position: absolute; top: 43px; bottom: 43px; left: 43px; border-left: 2px dashed rgba(47,81,67,.6); }
.capability-flow-item { position: relative; z-index: 1; display: grid; grid-template-columns: 86px minmax(0, 1fr); gap: 26px; align-items: center; padding: 18px 0; }
.capability-flow-image { grid-column: 1; grid-row: 1; }
.capability-flow-copy { grid-column: 2; grid-row: 1; min-width: 0; }
.capability-flow-copy h3, .compliance-list h3 { margin-bottom: 9px; font-size: 1.28rem; }
.capability-flow-copy p, .compliance-list p { margin: 0; font-size: .84rem; line-height: 1.6; }
.capability-flow-copy .text-button { margin-top: 14px; }
.capability-flow-image { width: 86px; height: 86px; display: grid; place-items: center; padding: 0; border: 5px solid var(--paper); border-radius: 50%; background: #e7e8d8; box-shadow: 0 0 0 1px rgba(22,60,45,.12); color: var(--green); cursor: pointer; }
.capability-flow-image:disabled { cursor: default; }
.capability-flow-image svg { width: 34px; height: 34px; }
.capability-project-button { margin-top: 30px; }
.compliance-list { display: grid; gap: 0; }
.compliance-list article { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: start; padding: 22px 0; border-top: 1px solid rgba(22,60,45,.16); }
.compliance-list article:last-child { border-bottom: 1px solid rgba(22,60,45,.16); }
.compliance-scope { margin-bottom: 8px !important; color: var(--rust) !important; font-size: .68rem !important; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.compliance-list .text-button { margin-top: 3px; white-space: nowrap; }
.capability-detail-modal { width: min(1120px, 96vw); padding: 42px; }
.capability-detail-hero { display: grid; grid-template-columns: 48% 1fr; gap: 40px; align-items: center; }
.capability-detail-hero figure, .capability-detail-list figure { margin: 0; }
.capability-detail-hero img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 18px; }
.capability-detail-hero figcaption, .capability-detail-list figcaption { margin-top: 9px; color: var(--muted); font-size: .73rem; line-height: 1.5; }
.capability-detail-hero h2 { font-size: clamp(2.1rem, 3.2vw, 4rem); }
.capability-detail-list { display: grid; gap: 18px; margin: 35px 0; }
.capability-detail-list article { display: grid; grid-template-columns: minmax(0, 1fr) 37%; gap: 28px; align-items: center; padding: 26px; border-radius: 18px; background: var(--cream); }
.capability-detail-list h3 { margin-bottom: 10px; font-size: 1.45rem; }
.capability-detail-list p { margin: 0; }
.capability-detail-list img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; }

.anchor-nav { position: sticky; top: 88px; z-index: 30; display: flex; justify-content: center; gap: 28px; padding: 13px 5vw; background: rgba(22,60,45,.95); color: var(--ivory); }
.anchor-nav a { font-size: .76rem; font-weight: 800; white-space: nowrap; }
.about-hero { display: grid; grid-template-columns: 1fr; align-items: end; }
.about-hero h1 { margin-bottom: 0; }
.about-hero > div > p:last-child { margin-top: 1.7em; }
.structure-section { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 18px; row-gap: 20px; padding-top: 30px; padding-bottom: 30px; }
.organization-title { grid-column: 1 / -1; margin: 0; color: var(--rust); font-size: .7rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.location-card { min-height: 330px; display: flex; flex-direction: column; justify-content: space-between; padding: 30px 38px 38px; border-radius: 22px; background: var(--paper); }
.location-card.featured { background: #416b5b; }
.location-card > span { color: var(--rust); font-size: .7rem; font-weight: 900; letter-spacing: .13em; }
.location-card h2 { margin: auto 0 25px; font-size: 2.2rem; }
.location-card.featured h2, .location-card.featured p { color: var(--ivory); }
.story-section { display: grid; grid-template-columns: 1fr 250px 1fr; gap: 55px; align-items: center; margin: 0 5vw; padding: 30px; border-radius: 24px; background: var(--khaki); }
.story-section h2 { margin: 0; }
.story-number { text-align: center; }
.story-number strong { display: block; color: var(--rust); font-size: 5rem; line-height: .9; }
.story-number span { color: var(--green); font-weight: 800; }
.timeline-section { padding-top: 30px; padding-bottom: 15px; }
.timeline { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--green); }
.timeline div { position: relative; padding: 10px 20px 0 0; }
.timeline div::before { content: ""; position: absolute; top: -5px; left: 0; width: 9px; height: 9px; border-radius: 50%; background: var(--rust); box-shadow: 0 0 0 3px var(--ivory); }
.timeline strong, .timeline span { display: block; }
.timeline strong { margin-bottom: 30px; color: var(--rust); font-size: 1.3rem; }
.timeline span { max-width: 200px; color: var(--green); font-weight: 750; }
.facilities-panel, .resources-section { scroll-margin-top: 135px; }
.about-page .quality-panel { padding-top: 30px; padding-bottom: 30px; }
.facilities-panel { padding-top: 30px; padding-bottom: 30px; }
.facility-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.facility-card { min-height: 260px; display: flex; flex-direction: column; align-items: flex-start; padding: 30px 32px 32px; border: 0; border-radius: 18px; background: var(--paper); color: var(--green); text-align: left; cursor: pointer; }
.facility-grid span { color: var(--rust); font-size: .72rem; font-weight: 900; text-transform: uppercase; }
.facility-grid h3 { margin: 30px 0 15px; font-size: 1.6rem; }
.facility-card p { margin: 0; }
.facility-card b { margin-top: auto; padding-top: 25px; color: var(--rust); font-size: .8rem; }
.tag-line { max-width: 450px; color: var(--green-2); font-size: .75rem; font-weight: 800; line-height: 1.6; }
.resources-section { padding-top: 30px; padding-bottom: 30px; }
.about-page .resources-section { margin: 0 5vw 24px; padding: 30px; border: 1px solid var(--line); border-radius: 22px; background: var(--paper); }
.resource-scroll { max-height: 494px; overflow-y: auto; border-top: 1px solid var(--line); scrollbar-color: var(--rust) var(--cream); scrollbar-width: thin; }
.resource-scroll article { display: grid; grid-template-columns: 70px 1fr 130px; gap: 25px; align-items: center; padding: 30px 12px 30px 0; border-bottom: 1px solid var(--line); }
.resource-scroll article > span { color: var(--rust); font-weight: 900; }
.resource-scroll article p { margin: 0 0 6px; color: var(--rust); font-size: .68rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.resource-scroll article h3 { margin: 0 0 8px; font-size: 1.45rem; }
.resource-scroll small { color: var(--muted); }
.resource-scroll .text-button { justify-self: start; }
.clickable-card, .home-insight-link { cursor: pointer; }
.testimonial-evidence { margin: 22px 0 0; }
.testimonial-evidence img { display: block; width: 100%; max-height: 260px; object-fit: cover; border-radius: 12px; }
.testimonial-evidence figcaption { margin-top: 8px; color: var(--muted); font-size: .72rem; }
.about-detail-modal { width: min(1120px, 96vw); max-height: 90vh; overflow-y: auto; padding: 42px; scrollbar-color: var(--rust) var(--cream); scrollbar-width: thin; }
.about-resource-modal { max-width: 780px; }
.about-resource-summary { max-width: 650px; font-size: 1.08rem; }
.about-resource-modal article { margin-top: 35px; padding: 30px; border-radius: 18px; background: var(--cream); }
.about-resource-modal article h3 { margin-bottom: 14px; font-size: 1.55rem; }
.about-resource-modal article p { margin: 0; }
.brand-experience { padding: 30px 8vw; text-align: center; background: var(--ivory); }
.about-page .cta-band, .case-studies-page .cta-band { padding-top: 30px; padding-bottom: 30px; }
.brand-experience h2 { max-width: 1100px; margin: 0 auto 25px; }
.brand-experience h2 span { display: block; }
.brand-experience > p:last-child { max-width: 830px; margin: 0 auto; font-size: .85rem; }

.contact-hero { display: grid; grid-template-columns: 1fr; align-items: end; }
.contact-hero h1 { margin-bottom: 0; }
.contact-hero > div > p:last-child { margin-top: 10px; }
.contact-choice { display: grid; grid-template-columns: 1fr 1fr; }
.contact-option { min-height: 0; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; padding: 30px 7vw; background: var(--ivory); }
.contact-option.primary-option { background: var(--rust); }
.contact-option > span { margin-bottom: 30px; color: var(--rust); font-size: .7rem; font-weight: 900; letter-spacing: .14em; }
.contact-option.primary-option > span { color: #ffd8ca; }
.contact-option h2 { margin: 0 0 20px; }
.contact-option p { max-width: 520px; margin: 0; }
.contact-option .button { margin-top: 10px; }
.contact-option.primary-option h2, .contact-option.primary-option p { color: white; }
.direct-contact { display: grid; grid-template-columns: 42% 58%; gap: 70px; padding: 40px 7vw; }
.direct-contact h2 { font-size: clamp(2.1rem, 3.5vw, 4rem); }
.contact-details { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.contact-details > div { padding: 24px; border-radius: 16px; background: var(--paper); }
.contact-details span { display: block; margin-bottom: 22px; color: var(--rust); font-size: .7rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.contact-details a, .contact-details p { color: var(--green); font-weight: 750; }
.contact-details small { color: var(--muted); line-height: 1.6; }

.site-footer { background: #102d22; color: rgba(255,255,255,.78); }
.footer-top { display: grid; grid-template-columns: 1.4fr .65fr 1fr 1fr; gap: 50px; padding: 70px 5vw 55px; }
.footer-top h3 { margin-bottom: 22px; color: white; font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.footer-top p, .footer-top a { display: block; color: rgba(255,255,255,.66); font-size: .78rem; line-height: 1.65; }
.footer-top a { margin-bottom: 9px; }
.footer-brand img { width: 280px; height: 68px; object-fit: contain; object-position: left center; padding: 5px 10px; border-radius: 10px; background: var(--ivory); }
.footer-brand p { max-width: 390px; margin-top: 22px; }
.pending-link { font-style: italic; }
.footer-bottom { display: flex; justify-content: space-between; gap: 25px; padding: 22px 5vw; border-top: 1px solid rgba(255,255,255,.12); font-size: .72rem; }
.admin-link { color: #f5a388; }

.modal-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 24px; background: rgba(12,35,26,.72); backdrop-filter: blur(8px); overflow: auto; }
.inquiry-modal, .detail-modal { position: relative; width: min(1080px, 96vw); max-height: calc(100vh - 48px); overflow: auto; border-radius: 28px; background: var(--paper); box-shadow: 0 40px 100px rgba(0,0,0,.28); }
.inquiry-modal { display: grid; grid-template-columns: 37% 63%; }
.modal-close { position: absolute; top: 16px; right: 18px; z-index: 5; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(247,240,227,.94); color: var(--green); font-size: 1.55rem; cursor: pointer; }
.modal-intro { padding: 55px 40px; background: var(--sage); }
.modal-intro h2 { font-size: clamp(2rem, 3vw, 3.7rem); }
.form-switch { display: grid; gap: 8px; margin-top: 40px; }
.form-switch button { padding: 13px 15px; border: 1px solid rgba(22,60,45,.25); border-radius: 12px; background: transparent; color: var(--green); text-align: left; font-weight: 800; cursor: pointer; }
.form-switch button.active { background: var(--green); color: white; }
.inquiry-form { padding: 50px 42px 35px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { display: grid; gap: 7px; margin-bottom: 16px; }
.field > span { color: var(--green); font-size: .74rem; font-weight: 800; }
.field em { color: var(--rust); font-style: normal; }
.field input, .field select, .field textarea { width: 100%; padding: 12px 13px; border: 1px solid var(--line); border-radius: 10px; background: white; color: var(--ink); outline: none; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--rust); box-shadow: 0 0 0 3px rgba(200,78,47,.1); }
.consent { display: flex; align-items: flex-start; gap: 10px; margin: 6px 0 20px; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.form-submit { width: 100%; }
.form-note { margin: 12px 0 0; font-size: .68rem; text-align: center; }
.thank-you { grid-column: 1 / -1; padding: 100px 12vw; text-align: center; }
.thank-mark { width: 65px; height: 65px; display: grid; place-items: center; margin: 0 auto 25px; border-radius: 50%; background: var(--sage); color: var(--green); font-size: 1.8rem; }
.detail-modal { padding: 42px; }
.product-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 45px; }
.product-detail > img { width: 100%; height: 100%; max-height: 620px; object-fit: cover; border-radius: 18px; }
.category-gallery-modal { width: min(1180px, 96vw); }
.category-gallery-heading { margin-bottom: 30px; padding-right: 50px; }
.category-gallery-heading > div { max-width: 720px; }
.category-gallery-heading h2 { margin-bottom: 10px; }
.category-gallery-heading p:last-child { margin: 0; }
.category-product-list { display: grid; gap: 18px; }
.category-product-row { display: flex; min-height: 330px; overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: var(--ivory); }
.category-product-row > img { width: 36%; height: 330px; flex: 0 0 36%; display: block; object-fit: cover; }
.category-product-copy { min-width: 0; flex: 1; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 34px 40px; }
.category-product-copy > span { margin-bottom: 22px; color: var(--rust); font-size: .7rem; font-weight: 900; letter-spacing: .14em; }
.category-product-copy h3 { margin-bottom: 12px; font-size: clamp(1.45rem, 2.4vw, 2.35rem); }
.category-product-copy p { max-width: 650px; margin: 0 0 24px; }
.category-gallery-disclaimer { margin: 30px 0 0; padding: 18px 24px; border-radius: 14px; background: var(--green); color: var(--ivory); font-size: .78rem; line-height: 1.6; text-align: center; }
.detail-copy { display: flex; flex-direction: column; justify-content: center; padding: 35px 30px 35px 0; }
.detail-copy h2 { font-size: clamp(2.3rem, 3.5vw, 4.2rem); }
.mini-specs { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 30px; }
.mini-specs span { padding: 8px 12px; border-radius: 999px; background: var(--sage); color: var(--green); font-size: .72rem; font-weight: 750; }
.case-detail-hero { display: grid; grid-template-columns: 48% 52%; gap: 40px; align-items: center; }
.case-detail-hero figure { margin: 0; }
.case-detail-hero img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 18px; }
.case-detail-hero figcaption { margin-top: 10px; color: var(--muted); font-size: .75rem; line-height: 1.5; }
.case-detail-hero h2 { font-size: clamp(2.1rem, 3.3vw, 4rem); }
.case-detail-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 35px 0; }
.case-detail-steps > div { padding: 25px; border-radius: 16px; background: var(--cream); }
.case-detail-steps span { color: var(--rust); font-weight: 900; }
.case-detail-steps h3 { margin: 30px 0 10px; }
.case-detail-steps p { margin: 0; font-size: .82rem; }

.admin-page { min-height: 100vh; display: grid; grid-template-columns: 320px 1fr; background: #f4f2ed; }
.admin-sidebar { position: sticky; top: 0; height: 100vh; padding: 38px 28px; background: var(--green); color: white; }
.admin-sidebar h1 { color: white; font-size: 1.8rem; line-height: 1.05; }
.admin-sidebar p:not(.eyebrow) { color: rgba(255,255,255,.65); font-size: .82rem; }
.admin-sidebar nav { display: grid; gap: 5px; margin: 35px 0; }
.admin-sidebar nav button { padding: 12px 14px; border: 0; border-radius: 9px; background: transparent; color: rgba(255,255,255,.72); text-align: left; cursor: pointer; }
.admin-sidebar nav button.active { background: rgba(255,255,255,.12); color: white; font-weight: 800; }
.admin-module-nav button { display: flex; align-items: center; justify-content: space-between; gap: 12px; font: inherit; }
.admin-module-nav button span { max-width: 185px; }
.admin-module-nav button small { padding: 3px 6px; border-radius: 99px; background: rgba(255,255,255,.12); color: #dce7da; font-size: .6rem; font-weight: 800; letter-spacing: .04em; white-space: nowrap; }
.admin-module-nav button.pending { opacity: .48; cursor: not-allowed; }
.admin-sidebar > a { color: #ffc7b5; font-size: .8rem; font-weight: 800; }
.admin-content { padding: 45px 5vw; }
.admin-top { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 28px; }
.admin-top span { color: var(--muted); font-size: .78rem; }
.admin-top h2 { margin: 4px 0 0; font-size: 2.4rem; }
.admin-top p { max-width: 560px; margin: 8px 0 0; color: var(--muted); font-size: .86rem; }
.admin-panels { display: grid; gap: 18px; }
.settings-card { padding: 28px; border: 1px solid #e0ddd4; border-radius: 18px; background: white; }
.settings-heading { display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; }
.settings-heading h3 { margin: 0; font-size: 1.2rem; }
.settings-heading > span { padding: 6px 10px; border-radius: 999px; background: var(--sage); color: var(--green); font-size: .65rem; font-weight: 900; text-transform: uppercase; }
.settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.admin-field { display: grid; gap: 7px; }
.admin-field > span { color: var(--green); font-size: .72rem; font-weight: 800; }
.admin-field input, .admin-field textarea { padding: 11px 12px; border: 1px solid #d9d6cd; border-radius: 9px; resize: vertical; }
.admin-toggle { display: flex; align-items: center; gap: 8px; color: var(--green); font-size: .78rem; font-weight: 800; }
.add-setting { padding: 18px; border: 1px dashed #a8a398; border-radius: 14px; background: transparent; color: var(--green); font-weight: 800; cursor: pointer; }
.save-message { margin-bottom: 18px; padding: 13px 16px; border-radius: 10px; background: var(--sage); color: var(--green); font-size: .8rem; font-weight: 750; }
.admin-workbench { display: grid; grid-template-columns: minmax(240px, .72fr) minmax(0, 1.75fr); gap: 18px; }
.admin-records, .admin-editor { min-width: 0; }
.admin-records { align-self: start; padding: 22px; border-radius: 18px; background: var(--green); color: white; }
.admin-records-heading { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-bottom: 20px; }
.admin-records-heading .eyebrow { margin: 0 0 5px; color: #c5d2c0; font-size: .6rem; }
.admin-records-heading h3 { margin: 0; color: white; font-size: 1rem; overflow-wrap: anywhere; }
.admin-records-heading > span { color: #d9e1d4; font-size: .68rem; white-space: nowrap; }
.record-list { display: grid; gap: 7px; margin-bottom: 16px; }
.record-list button { display: grid; grid-template-columns: 30px 1fr; gap: 9px; width: 100%; padding: 12px 9px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: rgba(255,255,255,.72); text-align: left; cursor: pointer; }
.record-list button.selected { border-color: rgba(255,255,255,.25); background: rgba(255,255,255,.1); color: white; }
.record-list button strong { color: #e88b70; font-size: .65rem; letter-spacing: .05em; }
.record-list button span { display: grid; gap: 4px; font-size: .76rem; font-weight: 800; line-height: 1.25; }
.record-list button small { color: #cbd7c6; font-size: .61rem; font-weight: 500; }
.admin-records .add-setting { width: 100%; border-color: rgba(255,255,255,.32); color: white; }
.admin-editor { display: grid; gap: 18px; }
.editor-banner { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 23px 27px; border-radius: 18px; background: #e6eadf; }
.editor-banner .eyebrow { margin: 0 0 5px; color: var(--rust); font-size: .64rem; }
.editor-banner h3 { margin: 0; font-size: 1.35rem; }
.settings-heading > div > p { margin: 5px 0 0; color: var(--muted); font-size: .7rem; }
.detail-editor { display: grid; gap: 16px; }
.detail-row { display: grid; grid-template-columns: 30px minmax(0, 1fr) minmax(0, 1fr) auto; gap: 12px; padding: 17px 0; border-top: 1px solid #e5e1d9; }
.detail-row > strong { color: var(--rust); font-size: .7rem; padding-top: 4px; }
.detail-row > div { display: grid; gap: 12px; }
.detail-row .admin-toggle { align-self: start; padding-top: 24px; }
.admin-pending { max-width: 620px; padding: 36px; border: 1px dashed #b7b2a8; border-radius: 18px; background: #fbfaf6; }
.admin-pending .eyebrow { color: var(--rust); font-size: .7rem; }
.admin-pending h3 { margin: 9px 0; font-size: 1.7rem; }
.admin-pending p:not(.eyebrow) { max-width: 470px; color: var(--muted); line-height: 1.7; }
.admin-pending div { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 28px; padding-top: 17px; border-top: 1px solid var(--line); }
.admin-pending div span { color: var(--muted); font-size: .72rem; }
.admin-pending div strong { color: var(--green); font-size: .78rem; }
.legal-page { max-width: 850px; min-height: 70vh; margin: 0 auto; padding: 130px 25px; }
.legal-page h1 { font-size: 4.5rem; }
.legal-page h2 { margin-top: 45px; font-size: 1.8rem; }

@media (max-width: 1180px) {
  .main-nav { gap: 14px; }
  .header-actions .button-outline { display: none; }
  .brand { width: 250px; }
  .hero { grid-template-columns: 47% 53%; }
  .category-grid { grid-template-columns: repeat(2, 1fr); }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-top { grid-template-columns: 1.3fr 1fr 1fr; }
  .footer-top > div:nth-child(2) { display: none; }
}

@media (max-width: 860px) {
  .site-header { height: 74px; padding: 8px 18px; }
  .brand { width: 225px; }
  .brand img { height: 55px; }
  .menu-toggle { margin-left: auto; width: 46px; height: 46px; display: grid; place-content: center; gap: 6px; border: 1px solid var(--line); border-radius: 50%; background: var(--ivory); }
  .menu-toggle span { width: 18px; height: 2px; background: var(--green); }
  .header-panel { position: fixed; inset: 74px 0 auto 0; display: none; padding: 25px; background: var(--ivory); border-bottom: 1px solid var(--line); box-shadow: 0 25px 40px rgba(22,60,45,.14); }
  .header-panel.open { display: block; }
  .main-nav { display: grid; gap: 0; }
  .main-nav a { padding: 13px 0; font-size: 1rem; }
  .header-actions { display: grid; grid-template-columns: 1fr 1fr; margin-top: 18px; }
  .header-actions .button-outline { display: inline-flex; }
  .hero { min-height: auto; grid-template-columns: 1fr; padding: 70px 20px 35px; }
  .hero-copy { padding: 0 0 45px; }
  .hero-visual { min-height: 500px; }
  .hero-trust { align-items: flex-start; flex-direction: column; gap: 5px; }
  .section { padding: 80px 22px; }
  .category-gallery-heading { padding-right: 0; }
  .category-product-row > img { width: 40%; flex-basis: 40%; }
  .category-product-copy { padding: 28px; }
  .split-heading { display: block; }
  .split-heading > p { width: auto; margin-top: 20px; }
  .split-heading > .arrow-link { display: inline-block; margin-top: 22px; }
  .case-home .case-card { grid-template-columns: 1fr; }
  .case-grid .case-card { grid-template-columns: 1fr; }
  .case-grid .case-image { min-height: 360px; }
  .capability-explorer { grid-template-columns: 1fr; gap: 30px; padding: 30px 24px; }
  .capability-process-panel, .capability-compliance-panel { padding: 30px 24px; }
  .capability-detail-hero, .capability-detail-list article { grid-template-columns: 1fr; }
  .process-bar { grid-template-columns: 1fr 1fr; }
  .process-step { min-height: 210px; border-bottom: 1px solid var(--line); }
  .resource-feature-grid, .quality-grid, .structure-section, .facility-grid { grid-template-columns: 1fr; }
  .page-hero { padding: 100px 24px 70px; }
  .anchor-nav { top: 74px; justify-content: flex-start; overflow-x: auto; }
  .capability-hero, .story-section, .direct-contact { grid-template-columns: 1fr; }
  .capability-summary { width: 100%; }
  .capability-list article { grid-template-columns: 50px 1fr; }
  .capability-list article > .text-button { grid-column: 2; }
  .story-section { gap: 35px; padding: 80px 24px; }
  .story-number { text-align: left; }
  .timeline { grid-template-columns: 1fr 1fr; }
  .contact-choice { grid-template-columns: 1fr; }
  .contact-option { min-height: 0; padding: 30px 24px; }
  .contact-details { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-bottom { flex-wrap: wrap; }
  .inquiry-modal { grid-template-columns: 1fr; }
  .modal-intro { padding: 42px 28px 25px; }
  .form-switch { grid-template-columns: 1fr 1fr; margin-top: 25px; }
  .inquiry-form { padding: 32px 28px; }
  .product-detail, .case-detail-hero { grid-template-columns: 1fr; }
  .case-detail-steps { grid-template-columns: 1fr; }
  .admin-page { grid-template-columns: 1fr; }
  .admin-sidebar { position: static; height: auto; }
  .admin-sidebar nav { grid-template-columns: repeat(2, 1fr); }
  .admin-workbench { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  h1 { font-size: 3.2rem; }
  h2 { font-size: 2.35rem; }
  .brand { width: 190px; }
  .hero-actions, .header-actions { grid-template-columns: 1fr; display: grid; }
  .hero-visual { min-height: 390px; border-radius: 26px 26px 6px 26px; }
  .category-grid, .product-grid, .case-grid { grid-template-columns: 1fr; }
  .process-bar { grid-template-columns: 1fr; }
  .product-copy { align-items: center; }
  .timeline { grid-template-columns: 1fr; }
  .resource-scroll article { grid-template-columns: 45px 1fr; }
  .resource-scroll .text-button { grid-column: 2; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-bottom { display: grid; }
  .modal-backdrop { padding: 0; align-items: stretch; }
  .inquiry-modal, .detail-modal { width: 100%; max-height: none; min-height: 100vh; border-radius: 0; }
  .form-grid { grid-template-columns: 1fr; }
  .form-switch { grid-template-columns: 1fr; }
  .detail-modal { padding: 70px 22px 30px; }
  .category-product-row { flex-direction: column; }
  .category-product-row > img { width: 100%; height: auto; flex-basis: auto; aspect-ratio: 1 / 1; }
  .products-hero-botanical { display: none; }
  .settings-grid { grid-template-columns: 1fr; }
  .admin-content { padding: 30px 18px; }
  .admin-top { align-items: flex-start; flex-direction: column; }
  .admin-module-nav button span { max-width: none; }
  .detail-row { grid-template-columns: 25px 1fr; }
  .detail-row > div { grid-column: 2; }
  .detail-row .admin-toggle { grid-column: 2; padding-top: 0; }
}

/* Visual direction simulation: organic backgrounds + line-icon system */
.visual-simulation { overflow: hidden; background: #f8f1e5; }
.visual-simulation .hero h1 { font-size: clamp(2.67rem, 5.4vw, 6rem); }
.visual-simulation .section-heading h2,
.visual-simulation .cta-band h2 { font-size: clamp(2.03rem, 3.6vw, 4.14rem); }
.visual-simulation .testimonial-section blockquote { font-size: clamp(1.8rem, 3.24vw, 3.87rem); }
.visual-hero { position: relative; isolation: isolate; background:
  radial-gradient(circle at 12% 8%, rgba(255,255,255,.9) 0 17%, transparent 18%),
  radial-gradient(circle at 89% 18%, rgba(221,225,207,.7) 0 19%, transparent 20%),
  linear-gradient(132deg, #fbf5eb 0 56%, #efe1cc 56% 74%, #d9ddc9 74% 100%); }
.visual-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .38; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='320' viewBox='0 0 520 320'%3E%3Cg fill='none' stroke='%23b58c63' stroke-width='1'%3E%3Cpath d='M-10 270C90 70 190 360 320 90S520 110 540-20' stroke-dasharray='5 8'/%3E%3Cpath d='M40 320C150 190 250 230 430 20' stroke-dasharray='3 10'/%3E%3C/g%3E%3C/svg%3E"); }
.visual-orbit { position: absolute; z-index: -1; left: -120px; bottom: -220px; width: 540px; height: 420px; border: 1px solid rgba(181,140,99,.32); border-radius: 47% 53% 65% 35%; transform: rotate(-12deg); }
.visual-simulation .hero-copy { position: relative; z-index: 1; }
.visual-simulation .hero-visual { border-radius: 52% 48% 8% 42% / 12% 12% 5% 16%; border: 8px solid rgba(255,250,241,.72); }
.visual-trust-band { position: relative; z-index: 3; width: min(92%, 1260px); margin: -68px auto 0; padding: 20px 26px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; border: 1px solid rgba(181,140,99,.28); border-radius: 22px; background: rgba(255,250,242,.95); box-shadow: 0 18px 45px rgba(52,68,53,.12); backdrop-filter: blur(12px); }
.visual-trust-band article { min-height: 82px; padding: 8px 18px; display: flex; align-items: center; gap: 14px; border-right: 1px solid var(--line); }
.visual-trust-band article:last-child { border-right: 0; }
.visual-trust-band strong { display: block; margin-bottom: 4px; color: var(--green); font-size: .9rem; }
.visual-trust-band p { margin: 0; color: var(--muted); font-size: .7rem; line-height: 1.4; }
.visual-icon, .visual-process-icon { flex: 0 0 auto; display: grid; place-items: center; color: #8f613d; background: #ece8d6; border: 1px solid rgba(143,97,61,.16); border-radius: 50%; }
.visual-icon { width: 48px; height: 48px; }
.visual-icon svg { width: 25px; height: 25px; }
.visual-products, .visual-case, .visual-resources { position: relative; isolation: isolate; overflow: hidden; }
.visual-products { padding-top: 130px; background: linear-gradient(180deg, #f8f1e5 0%, #fbf7ef 55%, #f0eadc 100%); }
.visual-products::after { content: ""; position: absolute; z-index: -1; right: -120px; bottom: -190px; width: 420px; height: 420px; border-radius: 50% 40% 60% 35%; background: #d7dcc9; opacity: .72; transform: rotate(18deg); }
.visual-leaf { position: absolute; z-index: -1; width: 340px; height: 500px; opacity: .2; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 340'%3E%3Cg fill='none' stroke='%235c735b' stroke-width='1.4'%3E%3Cpath d='M110 330C105 240 115 130 180 15'/%3E%3Cpath d='M115 275C75 250 45 220 25 180M125 225C165 205 190 175 205 140M140 165C100 150 75 115 62 78M157 105C185 90 202 65 210 40'/%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-size: contain; }
.visual-leaf-one { left: -40px; top: 120px; transform: rotate(-14deg); }
.visual-case { background: #d9decf; }
.visual-case::before { content: ""; position: absolute; z-index: -1; right: -180px; top: -210px; width: 520px; height: 520px; border-radius: 44% 56% 35% 65%; background: #ead9c1; opacity: .8; transform: rotate(25deg); }
.visual-dots { position: absolute; z-index: -1; inset: 0; opacity: .22; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='560' height='260'%3E%3Cpath d='M-20 210C120 10 270 320 580 20' fill='none' stroke='%238f613d' stroke-width='1.2' stroke-dasharray='4 9'/%3E%3C/svg%3E"); }
.visual-process { background: #fbf7ef; }
.visual-process-bar { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); padding: 18px 8px 12px; color: inherit; text-decoration: none; }
.visual-process-bar::before { content: ""; position: absolute; left: 10%; right: 10%; top: 54px; border-top: 1px dashed rgba(143,97,61,.55); }
.visual-process-step { position: relative; z-index: 1; min-height: 215px; padding: 0 22px 24px; text-align: center; }
.visual-process-icon { width: 72px; height: 72px; margin: 0 auto 16px; color: var(--green); background: #e4e3d0; box-shadow: 0 0 0 8px #fbf7ef; }
.visual-process-icon svg { width: 34px; height: 34px; }
.visual-process-number { color: var(--rust); font-size: .7rem; font-weight: 900; }
.visual-process-step h3 { margin: 8px 0 7px; font-size: 1.05rem; }
.visual-process-step p { margin: 0 auto; max-width: 180px; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.visual-resources { background: linear-gradient(135deg, #f2e7d7 0%, #fbf7ef 60%, #e5e6d4 100%); }
.visual-leaf-two { right: -80px; bottom: -140px; transform: rotate(28deg) scale(.9); }
.visual-testimonial { position: relative; background: #ead7ba; }
.visual-testimonial::before, .visual-testimonial::after { content: ""; position: absolute; width: 200px; height: 260px; opacity: .15; background-image: radial-gradient(ellipse at center, transparent 0 45%, #315744 46% 47%, transparent 48%); background-size: 44px 74px; }
.visual-testimonial::before { left: 0; bottom: 0; }
.visual-testimonial::after { right: 0; top: 0; transform: rotate(180deg); }
.visual-cta { background: linear-gradient(115deg, #103f30 0 70%, #315c49 70% 100%); }

@media (max-width: 860px) {
  .visual-simulation .hero h1 { font-size: 3.25rem; }
  .visual-simulation .section-heading h2, .visual-simulation .cta-band h2 { font-size: 2.5rem; }
  .visual-trust-band { width: calc(100% - 28px); margin-top: -18px; grid-template-columns: 1fr 1fr; }
  .visual-trust-band article:nth-child(2) { border-right: 0; }
  .visual-process-bar { grid-template-columns: 1fr 1fr; gap: 25px 0; }
  .visual-process-bar::before { display: none; }
}

@media (max-width: 560px) {
  .visual-simulation .hero h1 { font-size: 2.85rem; }
  .visual-trust-band { grid-template-columns: 1fr; padding: 12px; }
  .visual-trust-band article { border-right: 0; border-bottom: 1px solid var(--line); }
  .visual-trust-band article:last-child { border-bottom: 0; }
  .visual-products { padding-top: 90px; }
  .visual-process-bar { grid-template-columns: 1fr; }
}

/* Accepted homepage direction — proportional desktop/mobile system */
.reference-site-shell {
  --ref-cream: #f8f1e5;
  --ref-paper: #fffaf2;
  --ref-sage: #d8ddcc;
  --ref-sage-deep: #a9b09a;
  --ref-sand: #ead9c0;
  --ref-green: #173f31;
  --ref-rust: #c74d2c;
  --ref-brown: #8b603e;
  --ref-line: rgba(112, 91, 62, .2);
  container-type: inline-size;
  max-width: 1440px;
  margin: 22px auto;
  overflow: hidden;
  border: 1px solid rgba(116, 96, 67, .13);
  border-radius: 28px;
  background: var(--ref-cream);
  box-shadow: 0 18px 56px rgba(72, 54, 33, .12);
}

.reference-site-header {
  position: relative;
  z-index: 50;
  color: var(--ref-green);
  background: rgba(255, 250, 242, .98);
  border-bottom: 1px solid var(--ref-line);
}

.reference-header-top {
  min-height: 92px;
  padding: 11px 26px 9px;
  display: grid;
  grid-template-columns: 120px minmax(220px, 1fr) auto auto;
  align-items: center;
  gap: 20px;
}

.reference-brand {
  width: 110px;
  height: 78px;
  display: block;
  overflow: hidden;
}

.reference-brand img {
  width: 335px;
  max-width: none;
  height: auto;
  display: block;
  mix-blend-mode: multiply;
}

.reference-positioning {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.reference-positioning strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.03rem;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.reference-positioning span {
  color: #4f5f55;
  font-size: .61rem;
  line-height: 1.35;
}

.reference-header-trust {
  display: flex;
  align-items: center;
  gap: 15px;
}

.reference-header-trust > span {
  width: 62px;
  display: grid;
  grid-template-columns: 25px 1fr;
  align-items: center;
  gap: 5px;
  color: #394d40;
  font-size: .48rem;
  line-height: 1.2;
}

.reference-header-trust svg {
  width: 24px;
  height: 24px;
  color: var(--ref-green);
}

.reference-header-controls {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 7px;
}

.reference-language,
.reference-header-quote,
.reference-header-project {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 7px;
  font-size: .58rem;
  font-weight: 800;
  white-space: nowrap;
}

.reference-language {
  color: var(--ref-green);
  background: transparent;
  border: 1px solid var(--ref-line);
}

.reference-header-quote {
  color: #fff;
  background: var(--ref-rust);
  border: 1px solid var(--ref-rust);
}

.reference-header-project {
  grid-column: 2;
  color: var(--ref-green);
  background: transparent;
  border: 1px solid rgba(23, 63, 49, .45);
}

.reference-header-nav {
  min-height: 45px;
  padding: 0 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 1px solid rgba(112, 91, 62, .1);
}

.reference-header-nav nav {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.reference-header-nav nav a {
  position: relative;
  padding: 15px 2px 13px;
  color: #172a22;
  font-size: .61rem;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.reference-header-nav nav a::after {
  content: "";
  position: absolute;
  left: 2px;
  right: 2px;
  bottom: 5px;
  height: 1px;
  background: transparent;
}

.reference-header-nav nav a.active::after,
.reference-header-nav nav a:hover::after {
  background: var(--ref-brown);
}

.reference-mobile-header,
.reference-mobile-actions {
  display: none;
}

.reference-home {
  overflow: hidden;
  color: var(--ref-green);
  background: var(--ref-cream);
}

.reference-home h1,
.reference-home h2,
.reference-home h3,
.reference-home blockquote {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 500;
  letter-spacing: -.03em;
}

.reference-hero {
  position: relative;
  isolation: isolate;
  min-height: 485px;
  padding: 34px 34px 92px 48px;
  display: grid;
  grid-template-columns: 40% 60%;
  gap: 20px;
  background:
    radial-gradient(ellipse at -4% 91%, var(--ref-sage-deep) 0 20%, transparent 20.4%),
    radial-gradient(ellipse at 100% 2%, var(--ref-sand) 0 25%, transparent 25.4%),
    linear-gradient(112deg, #fbf5eb 0 52%, #f4e8d7 52% 77%, #dfe2d3 77% 100%);
}

.reference-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .52;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='760' height='480' viewBox='0 0 760 480'%3E%3Cg fill='none' stroke='%23a77c51' stroke-width='1'%3E%3Cpath d='M-50 390C90 120 220 530 390 120S720 40 800-80' stroke-dasharray='5 9'/%3E%3Cpath d='M120 510C245 260 410 420 650 40' stroke-dasharray='3 10'/%3E%3C/g%3E%3C/svg%3E");
  background-position: 55% 50%;
  background-repeat: no-repeat;
  background-size: 60% 100%;
}

.reference-hero-copy {
  position: relative;
  z-index: 3;
  align-self: center;
  padding: 4px 0 0 12px;
}

.reference-kicker {
  margin: 0 0 12px;
  color: var(--ref-rust);
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .13em;
}

.reference-hero h1 {
  max-width: 500px;
  margin: 0;
  color: var(--ref-green);
  font-size: clamp(2.75rem, 4.1vw, 4.2rem);
  line-height: 1.01;
}

.reference-intro {
  max-width: 500px;
  margin: 18px 0 0;
  color: #263b31;
  font-size: .76rem;
  line-height: 1.55;
}

.reference-actions {
  margin-top: 18px;
  display: flex;
  align-items: center;
  gap: 13px;
}

.reference-button {
  min-height: 42px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  border-radius: 7px;
  font-size: .66rem;
  font-weight: 850;
  text-decoration: none;
  white-space: nowrap;
}

.reference-button svg {
  width: 17px;
  height: 17px;
}

.reference-button-primary {
  color: #fff;
  background: var(--ref-green);
  border: 1px solid var(--ref-green);
}

.reference-button-outline {
  color: var(--ref-green);
  background: rgba(255, 250, 242, .66);
  border: 1px solid rgba(23, 63, 49, .7);
}

.reference-hero-visual {
  position: relative;
  z-index: 2;
  min-height: 375px;
  align-self: stretch;
  overflow: hidden;
  border: 8px solid rgba(255, 250, 242, .72);
  border-radius: 44% 8% 8% 34% / 22% 8% 8% 18%;
  box-shadow: 0 16px 34px rgba(73, 56, 34, .14);
}

.reference-hero-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.reference-material-note {
  position: absolute;
  right: 26px;
  bottom: 24px;
  padding: 10px 12px;
  color: #5a4633;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .68rem;
  line-height: 1.2;
  transform: rotate(3deg);
  background: rgba(255, 250, 236, .88);
  box-shadow: 0 4px 16px rgba(69, 52, 34, .12);
}

.reference-material-note span {
  font-family: Arial, sans-serif;
  font-size: .49rem;
}

.reference-trust {
  position: relative;
  z-index: 5;
  width: calc(100% - 94px);
  margin: -62px auto 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  overflow: hidden;
  border: 1px solid var(--ref-line);
  border-radius: 14px;
  background: rgba(255, 250, 242, .96);
  box-shadow: 0 12px 30px rgba(65, 49, 31, .1);
}

.reference-trust article {
  min-height: 78px;
  padding: 13px 12px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-right: 1px solid var(--ref-line);
}

.reference-trust article:last-child { border-right: 0; }

.reference-trust-icon {
  flex: 0 0 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: var(--ref-brown);
}

.reference-trust-icon svg { width: 31px; height: 31px; }

.reference-trust strong {
  display: block;
  margin-bottom: 3px;
  color: #21372c;
  font-size: .66rem;
  line-height: 1.15;
}

.reference-trust p {
  margin: 0;
  color: #5d665f;
  font-size: .5rem;
  line-height: 1.35;
}

.reference-section {
  position: relative;
  padding: 34px 48px;
}

.reference-section > h2,
.reference-section-heading h2 {
  margin: 0;
  color: var(--ref-green);
  font-size: 1.78rem;
  line-height: 1.08;
}

.reference-section > h2 { text-align: center; }

.reference-section-intro {
  max-width: 630px;
  margin: 5px auto 0;
  color: #647067;
  font-size: .62rem;
  line-height: 1.45;
  text-align: center;
}

.reference-section-heading {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: 18px;
}

.reference-section-heading.centered { justify-content: center; text-align: center; }

.reference-section-heading p,
.reference-testimonial > div > p,
.reference-cta > div > p {
  margin: 0 0 5px;
  color: var(--ref-rust);
  font-size: .54rem;
  font-weight: 900;
  letter-spacing: .13em;
}

.reference-section-heading > a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--ref-green);
  font-size: .61rem;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.reference-section-heading > a svg { width: 17px; height: 17px; }

.reference-products {
  isolation: isolate;
  padding-top: 28px;
  background:
    radial-gradient(ellipse at 103% 70%, #cdd3bf 0 21%, transparent 21.3%),
    radial-gradient(ellipse at -8% 108%, #eadbc5 0 24%, transparent 24.3%),
    var(--ref-cream);
}

.reference-products::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -30px;
  bottom: -110px;
  width: 210px;
  height: 300px;
  opacity: .33;
  transform: rotate(18deg);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 340'%3E%3Cg fill='none' stroke='%23516c57' stroke-width='1.5'%3E%3Cpath d='M110 330C105 240 115 130 180 15'/%3E%3Cpath d='M115 275C75 250 45 220 25 180M125 225C165 205 190 175 205 140M140 165C100 150 75 115 62 78M157 105C185 90 202 65 210 40'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}

.reference-home .category-grid {
  position: relative;
  z-index: 2;
  margin-top: 15px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.reference-home .product-card {
  min-width: 0;
  min-height: 150px;
  display: grid;
  grid-template-columns: 55% 45%;
  overflow: hidden;
  border: 1px solid var(--ref-line);
  border-radius: 14px;
  background: rgba(255, 250, 242, .9);
  box-shadow: 0 5px 14px rgba(69, 52, 32, .05);
}

.reference-home .product-image {
  grid-column: 2;
  grid-row: 1;
  width: 100%;
  height: 100%;
  min-height: 150px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #efe8da;
}

.reference-home .product-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.reference-home .image-index { display: none; }

.reference-home .product-copy {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  padding: 18px 12px 13px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}

.reference-home .product-copy h3 {
  margin: 0 0 6px;
  color: #20382d;
  font-size: .93rem;
  line-height: 1.05;
}

.reference-home .product-copy p {
  margin: 0;
  color: #5b655d;
  font-size: .54rem;
  line-height: 1.42;
}

.reference-home .product-copy .arrow-link {
  color: var(--ref-green);
  font-size: .57rem;
  font-weight: 850;
  text-decoration: none;
}
.reference-section-more { width: 100%; margin-top: 10px; text-align: right; }
.reference-section-more .text-button { display: inline-block; }

.reference-case-section {
  isolation: isolate;
  background:
    radial-gradient(ellipse at 101% -10%, var(--ref-sand) 0 28%, transparent 28.4%),
    var(--ref-sage);
}

.reference-case-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .28;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='760' height='260'%3E%3Cpath d='M-30 220C110 20 310 330 800 30' fill='none' stroke='%238c6040' stroke-width='1.1' stroke-dasharray='4 9'/%3E%3C/svg%3E") center/72% 100% no-repeat;
}

.reference-home .case-home { position: relative; z-index: 2; }

.reference-home .case-home .case-card {
  min-height: 285px;
  display: grid;
  grid-template-columns: 57% 43%;
  overflow: hidden;
  border: 1px solid rgba(91, 83, 59, .2);
  border-radius: 16px;
  background: rgba(255, 250, 242, .9);
  box-shadow: 0 12px 25px rgba(58, 60, 45, .1);
}

.reference-home .case-home .case-image {
  position: relative;
  min-height: 285px;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: #d7d6c8;
}

.reference-home .case-home .case-image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.reference-home .case-home .case-image span {
  position: absolute;
  left: 18px;
  bottom: 16px;
  padding: 7px 10px;
  color: var(--ref-green);
  border-radius: 6px;
  background: rgba(255, 250, 242, .9);
  font-size: .56rem;
  font-weight: 800;
}

.reference-home .case-home .case-copy {
  padding: 28px 26px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.reference-home .case-tag {
  margin: 0 0 8px;
  color: var(--ref-rust);
  font-size: .54rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.reference-home .case-home .case-copy h3 {
  margin: 0;
  color: var(--ref-green);
  font-size: 1.54rem;
  line-height: 1.08;
}

.reference-home .case-home .case-copy > p:not(.case-tag) {
  margin: 13px 0 18px;
  color: #59655d;
  font-size: .65rem;
  line-height: 1.5;
}

.reference-home .case-home .text-button {
  padding: 0;
  color: var(--ref-green);
  border: 0;
  background: transparent;
  font-size: .62rem;
  font-weight: 850;
}

.reference-process-section {
  isolation: isolate;
  background:
    radial-gradient(ellipse at -9% 120%, #e7d7bd 0 27%, transparent 27.4%),
    var(--ref-paper);
}

.reference-process-section::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: 12px;
  bottom: -72px;
  width: 170px;
  height: 250px;
  opacity: .34;
  transform: rotate(-8deg);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 340'%3E%3Cg fill='none' stroke='%238b603e' stroke-width='1.5'%3E%3Cpath d='M110 330C105 240 115 130 180 15'/%3E%3Cpath d='M115 275C75 250 45 220 25 180M125 225C165 205 190 175 205 140M140 165C100 150 75 115 62 78M157 105C185 90 202 65 210 40'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}

.reference-process {
  position: relative;
  z-index: 2;
  margin-top: 6px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  color: inherit;
  text-decoration: none;
}

.reference-process::before {
  content: "";
  position: absolute;
  left: 9%;
  right: 9%;
  top: 31px;
  border-top: 1px dashed rgba(139, 96, 62, .48);
}

.reference-process article {
  position: relative;
  z-index: 2;
  min-width: 0;
  padding: 0 12px;
  text-align: center;
}

.reference-process-icon {
  width: 62px;
  height: 62px;
  margin: 0 auto 10px;
  display: grid;
  place-items: center;
  color: var(--ref-green);
  border: 1px solid rgba(83, 94, 70, .18);
  border-radius: 50%;
  background: #e4e4d0;
  box-shadow: 0 0 0 8px var(--ref-paper);
}

.reference-process-icon svg { width: 29px; height: 29px; }

.reference-process strong {
  display: block;
  color: #263c31;
  font-size: .63rem;
  line-height: 1.25;
}

.reference-process p {
  max-width: 160px;
  margin: 5px auto 0;
  color: #687069;
  font-size: .51rem;
  line-height: 1.42;
}

.reference-resources {
  isolation: isolate;
  background:
    radial-gradient(ellipse at 103% 108%, #ced4c1 0 28%, transparent 28.4%),
    linear-gradient(125deg, #f1e5d3 0 34%, #faf5ec 34% 100%);
}

.reference-resource-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.reference-resource-grid article {
  min-width: 0;
  padding: 17px 16px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--ref-line);
  border-radius: 13px;
  background: rgba(255, 250, 242, .9);
}

.reference-resource-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  color: var(--ref-green);
  border-radius: 50%;
  background: #e5e4d1;
}

.reference-resource-icon svg { width: 24px; height: 24px; }

.reference-resource-grid article div > p {
  margin: 0 0 4px;
  color: var(--ref-rust);
  font-size: .48rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.reference-resource-grid h3 {
  margin: 0;
  color: var(--ref-green);
  font-size: .86rem;
  line-height: 1.15;
}

.reference-resource-grid article div > span {
  display: block;
  margin-top: 4px;
  color: #667168;
  font-size: .51rem;
  line-height: 1.4;
}

.reference-resource-grid article > a { color: var(--ref-green); }
.reference-resource-grid article > a svg { width: 20px; height: 20px; }

.reference-testimonial {
  position: relative;
  padding: 28px 48px;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  overflow: hidden;
  color: var(--ref-green);
  background: var(--ref-sand);
}

.reference-testimonial::after {
  content: "";
  position: absolute;
  right: -22px;
  top: -60px;
  width: 160px;
  height: 230px;
  opacity: .22;
  transform: rotate(22deg);
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 340'%3E%3Cg fill='none' stroke='%23516c57' stroke-width='1.5'%3E%3Cpath d='M110 330C105 240 115 130 180 15'/%3E%3Cpath d='M115 275C75 250 45 220 25 180M125 225C165 205 190 175 205 140M140 165C100 150 75 115 62 78M157 105C185 90 202 65 210 40'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}

.reference-testimonial-icon {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  color: var(--ref-brown);
  border: 1px solid rgba(139, 96, 62, .25);
  border-radius: 50%;
  background: rgba(255, 250, 242, .55);
}

.reference-testimonial-icon svg { width: 34px; height: 34px; }

.reference-testimonial blockquote {
  max-width: 870px;
  margin: 0;
  font-size: 1.42rem;
  line-height: 1.18;
}

.reference-testimonial > div > span {
  display: block;
  margin-top: 6px;
  color: #6a604f;
  font-size: .5rem;
}

.reference-cta {
  position: relative;
  min-height: 170px;
  padding: 24px 42px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 160px;
  align-items: center;
  gap: 26px;
  overflow: hidden;
  border-top: 1px solid var(--ref-line);
  background:
    radial-gradient(ellipse at 105% 40%, var(--ref-sage) 0 31%, transparent 31.4%),
    var(--ref-paper);
}

.reference-cta h2 {
  margin: 0;
  font-size: 1.75rem;
  line-height: 1.08;
}

.reference-cta > div > span {
  display: block;
  max-width: 520px;
  margin-top: 7px;
  color: #5d6961;
  font-size: .59rem;
  line-height: 1.45;
}

.reference-cta > img {
  position: relative;
  z-index: 2;
  width: 150px;
  height: 150px;
  display: block;
  object-fit: cover;
  border-radius: 44% 44% 16% 44%;
  box-shadow: 0 8px 20px rgba(57, 49, 32, .11);
}

.reference-footer {
  color: #e8e6dc;
  background: #14392d;
}

.reference-footer .footer-top {
  padding: 32px 42px 26px;
  display: grid;
  grid-template-columns: 1.4fr .75fr 1.4fr 1.25fr;
  gap: 28px;
}

.reference-footer .footer-brand img {
  width: 195px;
  max-width: 100%;
  padding: 5px;
  border-radius: 7px;
  background: var(--ref-paper);
  filter: none;
  opacity: 1;
}

.reference-footer .footer-top h3 {
  margin: 0 0 10px;
  color: #fffaf2;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .83rem;
  font-weight: 500;
}

.reference-footer .footer-top p,
.reference-footer .footer-top a {
  display: block;
  margin: 0 0 6px;
  color: #d7ddd7;
  font-size: .54rem;
  line-height: 1.55;
  text-decoration: none;
}

.reference-footer .footer-bottom {
  min-height: 44px;
  padding: 10px 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  color: #bfcac3;
  border-top: 1px solid rgba(255,255,255,.13);
  font-size: .5rem;
}

.reference-footer .footer-bottom a { color: inherit; text-decoration: none; }

.force-mobile-shell {
  width: 390px;
  max-width: 390px;
  margin: 0 auto;
  border-radius: 26px;
}

@container (max-width: 760px) {
  .reference-header-top { display: none; }

  .reference-mobile-header {
    height: 72px;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .reference-menu-toggle {
    width: 34px;
    height: 34px;
    padding: 8px;
    display: grid;
    align-content: center;
    gap: 4px;
    color: var(--ref-green);
    border: 0;
    background: transparent;
  }

  .reference-menu-toggle span {
    width: 18px;
    height: 1.5px;
    display: block;
    background: currentColor;
  }

  .reference-mobile-brand {
    width: 84px;
    height: 60px;
    display: block;
    overflow: hidden;
  }

  .reference-mobile-brand img {
    width: 257px;
    max-width: none;
    height: auto;
    display: block;
    mix-blend-mode: multiply;
  }

  .reference-mobile-header .reference-language {
    min-width: 46px;
    min-height: 32px;
    padding: 0 8px;
    font-size: .57rem;
  }

  .reference-header-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 72px;
    padding: 10px 16px 16px;
    display: none;
    border-top: 1px solid var(--ref-line);
    background: rgba(255, 250, 242, .98);
    box-shadow: 0 16px 24px rgba(45, 38, 25, .12);
  }

  .reference-header-nav.open { display: block; }

  .reference-header-nav nav {
    display: grid;
    gap: 0;
  }

  .reference-header-nav nav a {
    padding: 10px 2px;
    border-bottom: 1px solid rgba(112, 91, 62, .12);
    font-size: .69rem;
  }

  .reference-header-nav nav a::after { display: none; }

  .reference-mobile-actions {
    margin-top: 12px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .reference-hero {
    min-height: 0;
    padding: 34px 18px 27px;
    display: block;
    background:
      radial-gradient(ellipse at 111% 14%, var(--ref-sand) 0 26%, transparent 26.5%),
      radial-gradient(ellipse at 106% 92%, #cdd3bf 0 27%, transparent 27.5%),
      radial-gradient(ellipse at -8% 105%, #c7cfbc 0 18%, transparent 18.5%),
      var(--ref-cream);
  }

  .reference-hero::before {
    opacity: .43;
    background-position: 25% 36%;
    background-size: 190% 110%;
  }

  .reference-hero-copy { padding: 0; }

  .reference-kicker {
    max-width: 300px;
    margin-bottom: 9px;
    font-size: .47rem;
    line-height: 1.4;
  }

  .reference-hero h1 {
    max-width: 330px;
    font-size: 2.25rem;
    line-height: 1.04;
  }

  .reference-intro {
    max-width: 330px;
    margin-top: 13px;
    font-size: .69rem;
    line-height: 1.48;
  }

  .reference-actions {
    margin-top: 16px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .reference-actions .reference-button {
    width: 100%;
    min-height: 39px;
    justify-content: space-between;
    font-size: .64rem;
  }

  .reference-hero-visual { display: none; }

  .reference-trust {
    width: calc(100% - 20px);
    margin: 0 auto;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-radius: 11px;
  }

  .reference-trust article {
    min-height: 89px;
    padding: 10px 5px;
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 4px;
    text-align: center;
  }

  .reference-trust article:nth-child(2) { display: none; }
  .reference-trust article:nth-child(4) { border-right: 0; }

  .reference-trust-icon {
    width: 31px;
    height: 31px;
    flex-basis: 31px;
  }

  .reference-trust-icon svg { width: 25px; height: 25px; }

  .reference-trust strong { font-size: .54rem; }
  .reference-trust p { font-size: .43rem; line-height: 1.25; }

  .reference-section { padding: 27px 12px; }

  .reference-section > h2,
  .reference-section-heading h2 { font-size: 1.35rem; }

  .reference-section-intro {
    max-width: 330px;
    font-size: .54rem;
  }

  .reference-section-heading {
    align-items: flex-end;
    gap: 8px;
    margin-bottom: 13px;
  }

  .reference-section-heading p,
  .reference-testimonial > div > p,
  .reference-cta > div > p { font-size: .45rem; }

  .reference-section-heading > a {
    gap: 4px;
    font-size: .48rem;
  }

  .reference-section-heading > a svg { width: 14px; height: 14px; }

  .reference-products {
    padding-top: 24px;
    background:
      radial-gradient(ellipse at 110% 92%, #ccd2be 0 20%, transparent 20.5%),
      var(--ref-cream);
  }

  .reference-home .category-grid {
    margin-top: 13px;
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .reference-home .product-card {
    min-height: 76px;
    grid-template-columns: 78px minmax(0, 1fr);
    border-radius: 10px;
  }

  .reference-home .product-image {
    grid-column: 1;
    min-height: 76px;
    height: 76px;
  }

  .reference-home .product-copy {
    grid-column: 2;
    padding: 11px 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
  }

  .reference-home .product-copy h3 { margin-bottom: 4px; font-size: .81rem; }
  .reference-home .product-copy p { font-size: .48rem; }
  .reference-home .product-copy .arrow-link { font-size: inherit; }
  .reference-home .product-copy .arrow-link::after { content: none; }

  .reference-case-section { padding-top: 27px; }

  .reference-home .case-home .case-card {
    min-height: 0;
    grid-template-columns: 1fr;
    border-radius: 12px;
  }

  .reference-home .case-home .case-image { min-height: 190px; }

  .reference-home .case-home .case-copy { padding: 18px 16px 19px; }

  .reference-home .case-home .case-copy h3 { font-size: 1.19rem; }

  .reference-home .case-home .case-copy > p:not(.case-tag) {
    margin: 9px 0 12px;
    font-size: .58rem;
  }

  .reference-home .case-home .case-image span { font-size: .49rem; }

  .reference-process-section { padding-left: 8px; padding-right: 8px; }

  .reference-process {
    margin-top: 4px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .reference-process::before {
    left: 9%;
    right: 9%;
    top: 23px;
  }

  .reference-process article { padding: 0 2px; }

  .reference-process-icon {
    width: 45px;
    height: 45px;
    margin-bottom: 7px;
    box-shadow: 0 0 0 5px var(--ref-paper);
  }

  .reference-process-icon svg { width: 22px; height: 22px; }

  .reference-process strong { font-size: .45rem; line-height: 1.2; }
  .reference-process p { display: none; }

  .reference-resource-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .reference-resource-grid article {
    padding: 12px 11px;
    grid-template-columns: 40px minmax(0, 1fr) 19px;
    gap: 9px;
    border-radius: 10px;
  }

  .reference-resource-icon { width: 38px; height: 38px; }
  .reference-resource-icon svg { width: 20px; height: 20px; }
  .reference-resource-grid h3 { font-size: .72rem; }
  .reference-resource-grid article div > p { font-size: .42rem; }
  .reference-resource-grid article div > span { font-size: .46rem; }

  .reference-testimonial {
    padding: 23px 18px;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 13px;
  }

  .reference-testimonial-icon { width: 48px; height: 48px; }
  .reference-testimonial-icon svg { width: 25px; height: 25px; }
  .reference-testimonial blockquote { font-size: 1rem; line-height: 1.18; }
  .reference-testimonial > div > span { font-size: .43rem; line-height: 1.35; }

  .reference-cta {
    min-height: 154px;
    padding: 19px 15px;
    grid-template-columns: minmax(0, 1fr) 98px;
    gap: 8px 12px;
  }

  .reference-cta > div { align-self: end; }
  .reference-cta h2 { font-size: 1.2rem; }
  .reference-cta > div > span { font-size: .5rem; }

  .reference-cta > .reference-button {
    grid-column: 1;
    min-height: 36px;
    align-self: start;
    justify-content: space-between;
    font-size: .57rem;
  }

  .reference-cta > img {
    grid-column: 2;
    grid-row: 1 / span 2;
    width: 96px;
    height: 120px;
    border-radius: 44% 44% 14% 44%;
  }

  .reference-footer .footer-top {
    padding: 25px 18px 18px;
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .reference-footer .footer-brand img { width: 170px; }

  .reference-footer .footer-top > div:nth-child(2) {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 14px;
  }

  .reference-footer .footer-top > div:nth-child(2) h3 { grid-column: 1 / -1; }

  .reference-footer .footer-bottom {
    padding: 11px 18px;
    display: grid;
    gap: 6px;
  }
}

/* Homepage Revision 05 — readability and composition polish */
.reference-hero {
  min-height: 515px;
  padding-top: 42px;
}

.reference-hero h1 {
  max-width: 540px;
  font-size: clamp(3rem, 4.35vw, 4.55rem);
  line-height: .98;
}

.reference-intro {
  max-width: 540px;
  font-size: .96rem;
}

.reference-section > h2,
.reference-section-heading h2,
.reference-process-panel > h2 {
  font-size: 2rem;
}

.reference-section-intro {
  max-width: 700px;
  font-size: .82rem;
}

.reference-trust article { min-height: 86px; }
.reference-trust strong { font-size: .78rem; }
.reference-trust p { font-size: .64rem; line-height: 1.45; }

.reference-home .product-copy { min-height: 112px; }
.reference-home .product-copy h3 { font-size: 1.14rem; }
.reference-home .product-copy p { font-size: .72rem; }
.reference-home .product-copy .arrow-link { font-size: .7rem; }

.reference-process-panel {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 34px 28px;
}
.reference-process-detail { position: absolute; right: 24px; bottom: 18px; }

.reference-process-panel .reference-process { margin-top: 30px; }
.reference-process-panel .reference-process-icon {
  width: 56px;
  height: 56px;
}
.reference-process-panel .reference-process strong {
  font-size: .62rem;
  line-height: 1.35;
}
.reference-process-note {
  margin-top: 30px;
  font-size: .82rem;
}

.reference-featured-case .case-copy h3 { font-size: 1.58rem !important; }
.reference-featured-case .case-copy > p:not(.case-tag) { font-size: .8rem !important; }

.reference-insight-bar h2 { font-size: 1.28rem; }
.reference-insight-partnership blockquote { font-size: 1.14rem; }
.reference-insight-resource div > span,
.reference-insight-partnership div > span { font-size: .69rem; }

.reference-footer .footer-top p,
.reference-footer .footer-top a { font-size: .68rem; line-height: 1.6; }
.reference-footer-cta > span { font-size: .68rem; }

@container (max-width: 760px) {
  .reference-hero {
    min-height: 0;
    padding-top: 24px;
  }

  .reference-hero h1 {
    max-width: none;
    font-size: clamp(2.08rem, 10vw, 2.85rem);
    line-height: 1.02;
  }

  .reference-kicker {
    font-size: .58rem;
    line-height: 1.45;
  }

  .reference-intro {
    font-size: .86rem;
    line-height: 1.58;
  }

  .reference-button {
    min-height: 46px;
    font-size: .72rem;
  }

  .reference-trust article {
    min-height: 96px;
    padding: 12px 7px;
  }
  .reference-trust strong { font-size: .66rem; line-height: 1.25; }
  .reference-trust p { font-size: .57rem; line-height: 1.42; }

  .reference-section > h2,
  .reference-section-heading h2,
  .reference-process-panel > h2 { font-size: 1.55rem; }

  .reference-section-intro {
    padding: 0 10px;
    font-size: .72rem;
    line-height: 1.5;
  }

  .reference-home .product-card { min-height: 256px; }
  .reference-home .product-image {
    height: 166px;
    min-height: 166px;
    flex-basis: 166px;
  }
  .reference-home .product-copy {
    min-height: 90px;
    padding: 11px 10px 10px;
    align-items: start;
  }
  .reference-home .product-copy h3 {
    margin-bottom: 6px;
    font-size: .9rem;
    line-height: 1.08;
  }
  .reference-home .product-copy p {
    font-size: .61rem;
    line-height: 1.45;
  }

  .reference-process-panel {
    display: block;
    padding: 22px 14px 18px;
  }
  .reference-process-panel .reference-process { margin-top: 20px; }
  .reference-process-panel .reference-process-icon {
    width: 46px;
    height: 46px;
  }
  .reference-process-panel .reference-process strong {
    font-size: .52rem;
    line-height: 1.4;
  }
  .reference-process-note {
    margin-top: 20px;
    font-size: .7rem;
    line-height: 1.58;
  }

  .reference-featured-case .case-copy h3 { font-size: 1.34rem !important; }
  .reference-featured-case .case-copy > p:not(.case-tag) {
    font-size: .72rem !important;
    line-height: 1.55;
  }

  .reference-insight-bar p { font-size: .6rem; }
  .reference-insight-bar h2 { font-size: 1.1rem; }
  .reference-insight-partnership blockquote {
    font-size: 1rem;
    line-height: 1.3;
  }
  .reference-insight-resource div > span,
  .reference-insight-partnership div > span { font-size: .61rem; }

  .reference-footer .footer-top p,
  .reference-footer .footer-top a,
  .reference-footer-cta > span { font-size: .72rem; }
}

/* Revision 06 final cascade */
.reference-site-header,
.reference-header-nav { background: rgba(248, 241, 229, .98); }
.reference-brand,
.reference-mobile-brand { background: var(--ref-cream); }
.reference-brand img,
.reference-mobile-brand img,
.reference-footer .footer-brand img { mix-blend-mode: multiply; }
.reference-positioning span { font-size: .72rem; }
.reference-header-trust > span { font-size: .62rem; }
.reference-header-nav nav a { font-size: .75rem; }
.reference-language,
.reference-header-quote,
.reference-header-project { font-size: .71rem; }
.reference-kicker { font-size: .69rem; }
.reference-intro { font-size: 1.02rem; }
.reference-section-intro { font-size: .9rem; }
.reference-trust strong { font-size: .84rem; }
.reference-trust p { font-size: .7rem; }
.reference-home .product-copy h3 { font-size: 1.2rem; }
.reference-home .product-copy p { font-size: .78rem; }
.reference-home .product-copy .arrow-link { font-size: .76rem; }
.reference-process-panel .reference-process strong { font-size: .69rem; }
.reference-process-note { font-size: .9rem; }

.reference-featured-case { display: flex; }
.reference-featured-case .case-home { width: 100%; }
.reference-featured-case .case-card {
  min-height: 410px !important;
  display: grid !important;
  grid-template-columns: 43% 57% !important;
  align-items: stretch;
}
.reference-featured-case { position: relative; }
.reference-more-cases { position: absolute; top: 12px; right: 18px; z-index: 4; }
.reference-featured-case .case-image {
  width: 100%;
  min-height: 410px !important;
  height: 100% !important;
  margin: 0;
  align-self: stretch;
  border-radius: 0;
  box-shadow: none;
}
.reference-featured-case .case-copy { padding: 32px 34px !important; }
.reference-featured-case .case-copy h3 { font-size: 1.72rem !important; }
.reference-featured-case .case-copy > p:not(.case-tag) { font-size: .88rem !important; }
.reference-featured-case .case-image span { font-size: .69rem !important; }

.reference-insight-resource,
.reference-insight-partnership {
  position: relative;
  min-height: 154px;
  grid-template-columns: 56px minmax(0, 1fr);
}
.reference-insight-resource > div,
.reference-insight-partnership > div { position: relative; }
.reference-insight-resource > div > .text-button,
.reference-insight-partnership > div > .text-button { position: absolute; top: -2px; right: 0; }
.home-insight-link { width: 100%; min-height: 28px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 5px 0; color: #41594c; border: 0; border-top: 1px solid rgba(112,91,62,.16); background: transparent; text-align: left; font: inherit; font-size: .76rem; font-weight: 750; line-height: 1.35; }
.home-insight-link span { font-size: 1rem; }
button, a, [role="button"], summary, .product-image, .case-image { cursor: pointer; }
.reference-home .visual-leaf,
.reference-home .reference-products::after,
.reference-home .reference-process-section::after,
.reference-home .reference-testimonial::after { display: none !important; background: none !important; }
.reference-process-detail,
.reference-home .case-home .text-button,
.capability-flow-copy .text-button,
.compliance-list .text-button,
.testimonial-scroll .text-button { color: var(--ref-green); font-size: .76rem; font-weight: 850; }
.reference-section-more .text-button,
.reference-more-cases,
.reference-insight-resource .text-button,
.reference-insight-partnership .text-button { color: var(--ref-rust); font-size: .76rem; font-weight: 850; }
.reference-insight-bar h2 { margin-bottom: 10px; font-size: 1.34rem; }
.reference-insight-resource div > a,
.reference-insight-partnership div > a {
  min-height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 5px 0;
  color: #41594c;
  border-top: 1px solid rgba(112, 91, 62, .16);
  font-size: .76rem;
  font-weight: 750;
  line-height: 1.35;
}
.reference-insight-resource div > a svg,
.reference-insight-partnership div > a svg { width: 16px; height: 16px; flex: 0 0 16px; }
.capability-list article { scroll-margin-top: 110px; }

.reference-footer { color: #203c30; background: #b8c3ad; }
.reference-footer .footer-brand img { background: transparent; }
.reference-footer .footer-top h3,
.reference-footer-cta h2 { color: #173f31; }
.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span,
.reference-footer .footer-bottom { color: #29483b; }
.reference-footer .reference-footer-cta { border-color: rgba(23, 63, 49, .2); }
.reference-footer .reference-footer-cta > p { color: #9b452e; }
.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span { font-size: .76rem; }
.reference-footer .footer-bottom { border-top-color: rgba(23, 63, 49, .18); font-size: .64rem; }

@container (max-width: 760px) {
  .reference-mobile-header,
  .reference-header-nav { background: rgba(248, 241, 229, .98); }
  .reference-kicker { font-size: .64rem; }
  .reference-intro { font-size: .94rem; }
  .reference-button { font-size: .79rem; }
  .reference-trust strong { font-size: .72rem; }
  .reference-trust p { font-size: .63rem; }
  .reference-section-intro { font-size: .79rem; }
  .reference-home .product-copy h3 { font-size: .98rem; }
  .reference-home .product-copy p { font-size: .67rem; }
  .reference-process-panel .reference-process strong { font-size: .58rem; }
  .reference-process-note { font-size: .77rem; }
  .reference-featured-case .case-card {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column;
    justify-content: flex-start;
    padding: 0;
  }
  .reference-featured-case .case-image {
    width: 100%;
    min-height: 210px !important;
    height: 210px !important;
    margin: 0;
    flex: 0 0 210px;
    border-radius: 0;
  }
  .reference-featured-case .case-copy { width: 100%; padding: 18px 17px 20px !important; }
  .reference-featured-case .case-copy h3 { font-size: 1.42rem !important; }
  .reference-featured-case .case-copy > p:not(.case-tag) { font-size: .79rem !important; }
  .reference-insight-resource,
  .reference-insight-partnership { min-height: 152px; grid-template-columns: 46px minmax(0, 1fr); }
  .reference-insight-bar h2 { font-size: 1.18rem; }
  .reference-insight-resource div > a,
  .reference-insight-partnership div > a { font-size: .68rem; }
  .reference-footer .footer-top p,
  .reference-footer .footer-top a,
  .reference-footer-cta > span { font-size: .79rem; }
  .reference-footer .footer-bottom { font-size: .68rem; }
}

/* Homepage Revision 06 — requested visual and content refinements. */
.reference-site-header,
.reference-header-nav {
  background: rgba(248, 241, 229, .98);
}

.reference-brand,
.reference-mobile-brand {
  background: var(--ref-cream);
}

.reference-brand img,
.reference-mobile-brand img,
.reference-footer .footer-brand img {
  mix-blend-mode: multiply;
}

.reference-positioning span { font-size: .72rem; }
.reference-header-trust > span { font-size: .62rem; }
.reference-header-nav nav a { font-size: .75rem; }
.reference-language,
.reference-header-quote,
.reference-header-project { font-size: .71rem; }
.reference-kicker { font-size: .69rem; }
.reference-intro { font-size: 1.02rem; }
.reference-section-intro { font-size: .9rem; }
.reference-trust strong { font-size: .84rem; }
.reference-trust p { font-size: .7rem; }
.reference-home .product-copy h3 { font-size: 1.2rem; }
.reference-home .product-copy p { font-size: .78rem; }
.reference-home .product-copy .arrow-link { font-size: .76rem; }
.reference-process-panel .reference-process strong { font-size: .69rem; }
.reference-process-note { font-size: .9rem; }

.reference-featured-case {
  display: flex;
}

.reference-featured-case .case-home {
  width: 100%;
}

.reference-featured-case .case-card {
  min-height: 410px !important;
  display: grid !important;
  grid-template-columns: 36% 64% !important;
  align-items: center;
}

.reference-featured-case .case-image {
  width: calc(100% - 38px);
  min-height: 145px !important;
  height: 145px !important;
  margin-left: 28px;
  border-radius: 14px;
  box-shadow: 0 8px 20px rgba(67, 52, 33, .12);
}

.reference-featured-case .case-copy {
  padding: 32px 34px !important;
}

.reference-featured-case .case-copy h3 { font-size: 1.72rem !important; }
.reference-featured-case .case-copy > p:not(.case-tag) { font-size: .88rem !important; }
.reference-featured-case .case-image span { font-size: .69rem !important; }

.reference-insight-resource,
.reference-insight-partnership {
  min-height: 154px;
  grid-template-columns: 56px minmax(0, 1fr);
}

.reference-insight-bar h2 {
  margin-bottom: 10px;
  font-size: 1.34rem;
}

.reference-insight-resource div > a,
.reference-insight-partnership div > a {
  min-height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 5px 0;
  color: #41594c;
  border-top: 1px solid rgba(112, 91, 62, .16);
  font-size: .76rem;
  font-weight: 750;
  line-height: 1.35;
}

.reference-insight-resource div > a svg,
.reference-insight-partnership div > a svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.capability-list article { scroll-margin-top: 110px; }

.reference-footer {
  color: #203c30;
  background: #b8c3ad;
}

.reference-footer .footer-brand img {
  background: transparent;
}

.reference-footer .footer-top h3,
.reference-footer-cta h2 {
  color: #173f31;
}

.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span,
.reference-footer .footer-bottom {
  color: #29483b;
}

.reference-footer .reference-footer-cta {
  border-color: rgba(23, 63, 49, .2);
}

.reference-footer .reference-footer-cta > p {
  color: #9b452e;
}

.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span { font-size: .76rem; }

.reference-footer .footer-bottom {
  border-top-color: rgba(23, 63, 49, .18);
  font-size: .64rem;
}

@container (max-width: 760px) {
  .reference-mobile-header,
  .reference-header-nav { background: rgba(248, 241, 229, .98); }

  .reference-kicker { font-size: .64rem; }
  .reference-intro { font-size: .94rem; }
  .reference-button { font-size: .79rem; }
  .reference-trust strong { font-size: .72rem; }
  .reference-trust p { font-size: .63rem; }
  .reference-section-intro { font-size: .79rem; }
  .reference-home .product-copy h3 { font-size: .98rem; }
  .reference-home .product-copy p { font-size: .67rem; }
  .reference-process-panel .reference-process strong { font-size: .58rem; }
  .reference-process-note { font-size: .77rem; }

  .reference-featured-case .case-card {
    min-height: 330px !important;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    padding: 22px 0 0;
  }

  .reference-featured-case .case-image {
    width: 44%;
    min-height: 135px !important;
    height: 135px !important;
    margin: 0 auto;
    flex: 0 0 135px;
  }

  .reference-featured-case .case-copy {
    width: 100%;
    padding: 18px 17px 20px !important;
  }

  .reference-featured-case .case-copy h3 { font-size: 1.42rem !important; }
  .reference-featured-case .case-copy > p:not(.case-tag) { font-size: .79rem !important; }

  .reference-insight-resource,
  .reference-insight-partnership {
    min-height: 152px;
    grid-template-columns: 46px minmax(0, 1fr);
  }

  .reference-insight-bar h2 { font-size: 1.18rem; }
  .reference-insight-resource div > a,
  .reference-insight-partnership div > a { font-size: .68rem; }

  .reference-footer .footer-top p,
  .reference-footer .footer-top a,
  .reference-footer-cta > span { font-size: .79rem; }

  .reference-footer .footer-bottom { font-size: .68rem; }
}

@media (max-width: 760px) {
  .reference-site-shell {
    width: 100%;
    max-width: none;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
}

/* Homepage refinement 02 — one continuous background and consolidated modules */
.reference-header-top {
  grid-template-columns: 112px minmax(290px, 1fr) auto auto;
  gap: 18px;
}

.reference-positioning strong {
  color: var(--ref-green);
  font-size: 1.08rem;
  line-height: 1.05;
}

.reference-positioning b {
  color: #3b5547;
  font-size: .68rem;
  font-weight: 800;
  line-height: 1.2;
}

.reference-positioning span { font-size: .66rem; }

.reference-header-trust { gap: 18px; }
.reference-header-trust > span { width: 67px; font-size: .55rem; }
.reference-header-trust svg { width: 27px; height: 27px; }

.reference-header-controls {
  display: flex;
  align-items: center;
  gap: 7px;
}

.reference-language,
.reference-header-quote,
.reference-header-project {
  min-height: 38px;
  font-size: .64rem;
}

.reference-header-quote {
  color: #713923;
  background: #efb49b;
  border-color: #e9a183;
}

.reference-header-project {
  grid-column: auto;
  color: #fff;
  background: var(--ref-rust);
  border-color: var(--ref-rust);
}

.reference-header-nav { justify-content: flex-start; }

.reference-header-nav nav {
  width: auto;
  justify-content: flex-start;
  gap: 36px;
}

.reference-header-nav nav a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: .68rem;
}

.reference-header-nav nav a > svg {
  width: 15px;
  height: 15px;
  color: var(--ref-brown);
}

.reference-home {
  position: relative;
  isolation: isolate;
  background: #f8f1e5;
}

.reference-home::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  background: url("/images/home-continuous-bg.svg") center top / 100% 100% no-repeat;
  pointer-events: none;
}

.reference-hero,
.reference-products,
.reference-process-case,
.reference-case-section,
.reference-process-section,
.reference-resources,
.reference-testimonial,
.reference-cta {
  background: transparent;
}

.reference-hero::before,
.reference-products::after,
.reference-case-section::before,
.reference-process-section::after,
.reference-testimonial::after { display: none; }

.reference-kicker { font-size: .62rem; }
.reference-intro { font-size: .9rem; line-height: 1.58; }
.reference-section-intro { font-size: .75rem; line-height: 1.5; }
.reference-trust strong { font-size: .74rem; }
.reference-trust p { font-size: .59rem; }

.reference-button-primary {
  color: #fff;
  background: var(--ref-rust);
  border-color: var(--ref-rust);
}

.reference-button-outline {
  color: #713923;
  background: #f0b69d;
  border-color: #e69b7b;
}

.reference-products {
  padding-top: 42px;
  padding-bottom: 45px;
}

.reference-home .category-grid { gap: 15px; }

.reference-home .product-card {
  min-height: 330px;
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  background: rgba(255, 250, 242, .84);
  backdrop-filter: blur(2px);
}

.reference-home .product-image {
  order: 1;
  width: 100%;
  height: 235px;
  min-height: 235px;
  flex: 0 0 235px;
}

.reference-home .product-copy {
  order: 2;
  width: 100%;
  min-height: 96px;
  padding: 15px 16px 14px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.reference-home .product-copy h3 { font-size: 1.05rem; }
.reference-home .product-copy p { font-size: .67rem; line-height: 1.45; }
.reference-home .product-copy .arrow-link { font-size: .65rem; }

.reference-process-case {
  display: grid;
  grid-template-columns: 43% 57%;
  gap: 18px;
  padding-top: 26px;
  padding-bottom: 42px;
}

.reference-process-panel,
.reference-featured-case .case-card {
  overflow: hidden;
  border: 1px solid rgba(112, 91, 62, .2);
  border-radius: 17px;
  background: rgba(255, 250, 242, .88);
  box-shadow: 0 10px 28px rgba(71, 55, 34, .08);
  backdrop-filter: blur(3px);
}

.reference-process-panel {
  padding: 28px 24px 24px;
}

.reference-process-panel > h2 {
  margin: 0;
  color: var(--ref-green);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: -.03em;
  line-height: 1.08;
}

.reference-process-panel .reference-process {
  margin-top: 24px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.reference-process-panel .reference-process::before {
  left: 8%;
  right: 8%;
  top: 25px;
}

.reference-process-panel .reference-process article { padding: 0 3px; }

.reference-process-panel .reference-process-icon {
  width: 50px;
  height: 50px;
  margin-bottom: 9px;
  box-shadow: 0 0 0 6px rgba(255, 250, 242, .96);
}

.reference-process-panel .reference-process-icon svg { width: 24px; height: 24px; }
.reference-process-panel .reference-process strong { font-size: .56rem; }
.reference-process-panel .reference-process p { display: none; }

.reference-process-note {
  max-width: 470px;
  margin: 24px 0 0;
  padding-top: 18px;
  color: #56655c;
  border-top: 1px solid var(--ref-line);
  font-size: .76rem;
  line-height: 1.58;
}

.reference-featured-case .case-home,
.reference-featured-case .case-card { height: 100%; }

.reference-featured-case .case-card {
  min-height: 410px !important;
  display: grid !important;
  grid-template-columns: 61% 39% !important;
}

.reference-featured-case .case-image {
  min-height: 410px !important;
  height: 100%;
}

.reference-featured-case .case-image img {
  position: absolute;
  inset: 0;
}

.reference-featured-case .case-copy {
  padding: 25px 22px !important;
  justify-content: center;
}

.reference-featured-case .case-tag { display: none; }

.reference-featured-case .case-copy h3 {
  font-size: 1.45rem !important;
  line-height: 1.08;
}

.reference-featured-case .case-copy > p:not(.case-tag) {
  margin: 12px 0 16px !important;
  font-size: .74rem !important;
  line-height: 1.52;
}

.reference-featured-case .case-image span { font-size: .62rem !important; }

.reference-insight-bar {
  width: calc(100% - 96px);
  margin: 4px auto 42px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
  border: 1px solid rgba(112, 91, 62, .2);
  border-radius: 15px;
  background: rgba(255, 250, 242, .9);
  box-shadow: 0 10px 28px rgba(71, 55, 34, .08);
}

.reference-insight-resource,
.reference-insight-partnership {
  min-width: 0;
  min-height: 126px;
  padding: 20px 22px;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 14px;
  color: inherit;
  text-decoration: none;
}

.reference-insight-partnership {
  grid-template-columns: 56px minmax(0, 1fr);
  border-left: 1px solid var(--ref-line);
  background: rgba(232, 213, 185, .52);
}

.reference-insight-bar p {
  margin: 0 0 4px;
  color: var(--ref-rust);
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .12em;
}

.reference-insight-bar h2 {
  margin: 0;
  color: var(--ref-green);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.17rem;
  font-weight: 500;
  letter-spacing: -.025em;
}

.reference-insight-resource div > span,
.reference-insight-partnership div > span {
  display: block;
  margin-top: 5px;
  color: #626d65;
  font-size: .64rem;
  line-height: 1.4;
}

.reference-insight-partnership blockquote {
  margin: 0;
  color: var(--ref-green);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.04rem;
  line-height: 1.23;
}

.reference-insight-bar .reference-resource-icon,
.reference-insight-bar .reference-testimonial-icon {
  width: 52px;
  height: 52px;
}

.reference-footer .footer-top {
  grid-template-columns: 1.05fr .62fr 1.17fr .82fr 1.25fr;
  gap: 18px;
  align-items: start;
}

.reference-footer .footer-top p,
.reference-footer .footer-top a { font-size: .62rem; }

.reference-footer-cta {
  padding-left: 20px;
  border-left: 1px solid rgba(255, 255, 255, .17);
}

.reference-footer .reference-footer-cta > p {
  margin: 0 0 6px;
  color: #ef9a77;
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .12em;
}

.reference-footer-cta h2 {
  margin: 0;
  color: #fffaf2;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.08;
}

.reference-footer-cta > span {
  display: block;
  margin: 8px 0 12px;
  color: #ced9d2;
  font-size: .62rem;
  line-height: 1.48;
}

.reference-footer-cta .reference-button {
  min-height: 38px;
  padding: 0 13px;
  font-size: .61rem;
}

@container (max-width: 760px) {
  .reference-header-nav nav a {
    gap: 10px;
    font-size: .73rem;
  }

  .reference-header-nav nav a > svg { width: 17px; height: 17px; }

  .reference-home::before {
    background-image: url("/images/home-continuous-bg-mobile.svg");
  }

  .reference-kicker { font-size: .51rem; }
  .reference-intro { font-size: .76rem; line-height: 1.52; }
  .reference-section-intro { font-size: .62rem; }
  .reference-trust strong { font-size: .59rem; }
  .reference-trust p { font-size: .48rem; }

  .reference-home .category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
  }

  .reference-home .product-card {
    min-height: 230px;
    display: flex;
    border-radius: 11px;
  }

  .reference-home .product-image {
    width: 100%;
    height: 158px;
    min-height: 158px;
    flex-basis: 158px;
  }

  .reference-home .product-copy {
    width: 100%;
    min-height: 72px;
    padding: 10px 10px 9px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .reference-home .product-copy h3 { font-size: .78rem; }
  .reference-home .product-copy p { font-size: .5rem; }

  .reference-process-case {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 18px 11px 24px;
  }

  .reference-process-panel { padding: 20px 12px 16px; }
  .reference-process-panel > h2 { font-size: 1.35rem; }
  .reference-process-panel .reference-process { margin-top: 17px; }
  .reference-process-panel .reference-process-icon { width: 43px; height: 43px; }
  .reference-process-panel .reference-process strong { font-size: .46rem; }
  .reference-process-note { margin-top: 17px; padding-top: 13px; font-size: .62rem; }

  .reference-featured-case .case-card {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
  }

  .reference-featured-case .case-image { min-height: 230px !important; }
  .reference-featured-case .case-copy { padding: 17px 15px 18px !important; }
  .reference-featured-case .case-copy h3 { font-size: 1.2rem !important; }
  .reference-featured-case .case-copy > p:not(.case-tag) { font-size: .64rem !important; }

  .reference-insight-bar {
    width: calc(100% - 22px);
    margin-bottom: 25px;
    grid-template-columns: 1fr;
    border-radius: 11px;
  }

  .reference-insight-resource,
  .reference-insight-partnership {
    min-height: 112px;
    padding: 15px 13px;
    grid-template-columns: 46px minmax(0, 1fr) 18px;
    gap: 10px;
  }

  .reference-insight-partnership {
    grid-template-columns: 46px minmax(0, 1fr);
    border-top: 1px solid var(--ref-line);
    border-left: 0;
  }

  .reference-insight-bar .reference-resource-icon,
  .reference-insight-bar .reference-testimonial-icon { width: 44px; height: 44px; }
  .reference-insight-bar h2 { font-size: 1rem; }
  .reference-insight-partnership blockquote { font-size: .92rem; }
  .reference-insight-resource div > span,
  .reference-insight-partnership div > span { font-size: .54rem; }

  .reference-footer .footer-top { grid-template-columns: 1fr; }

  .reference-footer-cta {
    padding: 17px 0 0;
    border-top: 1px solid rgba(255, 255, 255, .17);
    border-left: 0;
  }
}

/* Revision 05 final cascade — keep copy readable at real browser sizes. */
.reference-hero { min-height: 515px; padding-top: 42px; }
.reference-hero h1 { max-width: 540px; font-size: clamp(3rem, 4.35vw, 4.55rem); line-height: .98; }
.reference-intro { max-width: 540px; font-size: .96rem; }
.reference-section > h2,
.reference-section-heading h2,
.reference-process-panel > h2 { font-size: 2rem; }
.reference-section-intro { max-width: 700px; font-size: .82rem; }
.reference-trust article { min-height: 86px; }
.reference-trust strong { font-size: .78rem; }
.reference-trust p { font-size: .64rem; line-height: 1.45; }
.reference-home .product-copy { min-height: 112px; }
.reference-home .product-copy h3 { font-size: 1.14rem; }
.reference-home .product-copy p { font-size: .72rem; }
.reference-home .product-copy .arrow-link { font-size: .7rem; }
.reference-process-panel { display: flex; flex-direction: column; justify-content: center; padding: 34px 28px; }
.reference-process-panel .reference-process { margin-top: 30px; }
.reference-process-panel .reference-process-icon { width: 56px; height: 56px; }
.reference-process-panel .reference-process strong { font-size: .62rem; line-height: 1.35; }
.reference-process-note { margin-top: 30px; font-size: .82rem; }
.reference-featured-case .case-copy h3 { font-size: 1.58rem !important; }
.reference-featured-case .case-copy > p:not(.case-tag) { font-size: .8rem !important; }
.reference-insight-bar h2 { font-size: 1.28rem; }
.reference-insight-partnership blockquote { font-size: 1.14rem; }
.reference-insight-resource div > span,
.reference-insight-partnership div > span { font-size: .69rem; }
.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span { font-size: .68rem; line-height: 1.6; }

@container (max-width: 760px) {
  .reference-hero { min-height: 0; padding-top: 24px; }
  .reference-hero h1 { max-width: none; font-size: clamp(2.08rem, 10vw, 2.85rem); line-height: 1.02; }
  .reference-kicker { font-size: .58rem; line-height: 1.45; }
  .reference-intro { font-size: .86rem; line-height: 1.58; }
  .reference-button { min-height: 46px; font-size: .72rem; }
  .reference-trust article { min-height: 96px; padding: 12px 7px; }
  .reference-trust strong { font-size: .66rem; line-height: 1.25; }
  .reference-trust p { font-size: .57rem; line-height: 1.42; }
  .reference-section > h2,
  .reference-section-heading h2,
  .reference-process-panel > h2 { font-size: 1.55rem; }
  .reference-section-intro { padding: 0 10px; font-size: .72rem; line-height: 1.5; }
  .reference-home .product-card { min-height: 256px; }
  .reference-home .product-image { height: 166px; min-height: 166px; flex-basis: 166px; }
  .reference-home .product-copy { min-height: 90px; padding: 11px 10px 10px; align-items: start; }
  .reference-home .product-copy h3 { margin-bottom: 6px; font-size: .9rem; line-height: 1.08; }
  .reference-home .product-copy p { font-size: .61rem; line-height: 1.45; }
  .reference-process-panel { display: block; padding: 22px 14px 18px; }
  .reference-process-panel .reference-process { margin-top: 20px; }
  .reference-process-panel .reference-process-icon { width: 46px; height: 46px; }
  .reference-process-panel .reference-process strong { font-size: .52rem; line-height: 1.4; }
  .reference-process-note { margin-top: 20px; font-size: .7rem; line-height: 1.58; }
  .reference-featured-case .case-copy h3 { font-size: 1.34rem !important; }
  .reference-featured-case .case-copy > p:not(.case-tag) { font-size: .72rem !important; line-height: 1.55; }
  .reference-insight-bar p { font-size: .6rem; }
  .reference-insight-bar h2 { font-size: 1.1rem; }
  .reference-insight-partnership blockquote { font-size: 1rem; line-height: 1.3; }
  .reference-insight-resource div > span,
  .reference-insight-partnership div > span { font-size: .61rem; }
  .reference-footer .footer-top p,
  .reference-footer .footer-top a,
  .reference-footer-cta > span { font-size: .72rem; }
}

/* Revision 17 effective overrides */
.reference-site-header,
.reference-header-nav { background: rgba(248, 241, 229, .98); }
.reference-brand,
.reference-mobile-brand { background: var(--ref-cream); }
.reference-brand img,
.reference-mobile-brand img,
.reference-footer .footer-brand img { mix-blend-mode: multiply; }
.reference-positioning strong { font-size: 1.13rem; }
.reference-positioning span { font-size: .72rem; }
.reference-header-trust > span { font-size: .62rem; }
.reference-header-nav nav a { font-size: .75rem; }
.reference-language,
.reference-header-quote,
.reference-header-project { font-size: .71rem; }
.reference-kicker { font-size: .69rem; }
.reference-intro { font-size: 1.02rem; }
.reference-section-intro { font-size: .9rem; }
.reference-trust strong { font-size: .84rem; }
.reference-trust p { font-size: .7rem; }
.reference-home .product-copy h3 { font-size: 1.2rem; }
.reference-home .product-copy p { font-size: .78rem; }
.reference-home .product-copy .arrow-link { font-size: .76rem; }
.reference-process-panel {
  justify-content: flex-start;
  padding: 38px 28px 18px;
}
.reference-process-panel .reference-process strong {
  font-size: .69rem;
}
.reference-process-note {
  position: relative;
  top: -15px;
  font-size: .9rem;
}

.reference-featured-case { display: flex; }
.reference-featured-case .case-home { width: 100%; }
.reference-featured-case .case-card {
  min-height: 310px !important;
  display: grid !important;
  grid-template-columns: 43% 57% !important;
  align-items: stretch;
}
.reference-featured-case .case-image {
  width: 100%;
  min-height: 310px !important;
  height: 100% !important;
  margin: 0;
  align-self: stretch;
  border-radius: 0;
  box-shadow: none;
}
.reference-featured-case .case-copy { padding: 32px 34px !important; }
.reference-featured-case .case-copy h3 { font-size: 1.72rem !important; }
.reference-featured-case .case-copy > p:not(.case-tag) { font-size: .88rem !important; }
.reference-featured-case .case-image span { font-size: .69rem !important; }

.reference-insight-resource,
.reference-insight-partnership {
  min-height: 154px;
  grid-template-columns: 56px minmax(0, 1fr);
}
.reference-insight-bar h2 { margin-bottom: 10px; font-size: 1.34rem; }
.reference-insight-resource div > a,
.reference-insight-partnership div > a {
  min-height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 5px 0;
  color: #41594c;
  border-top: 1px solid rgba(112, 91, 62, .16);
  font-size: .76rem;
  font-weight: 750;
  line-height: 1.35;
}
.reference-insight-resource div > a svg,
.reference-insight-partnership div > a svg { width: 16px; height: 16px; flex: 0 0 16px; }
.capability-list article { scroll-margin-top: 110px; }

.reference-footer { color: #203c30; background: #b8c3ad; }
.reference-footer .footer-brand-lockup {
  display: flex;
  align-items: center;
  gap: 8px;
}
.reference-footer .footer-brand-icon {
  width: 64px;
  height: 48px;
  display: block;
  overflow: hidden;
  flex: 0 0 64px;
}
.reference-footer .footer-brand-icon img {
  width: 206px;
  max-width: none;
  height: 48px;
  padding: 0;
  display: block;
  background: transparent;
}
.reference-footer .footer-brand-name {
  position: relative;
  top: -4px;
  display: grid;
  gap: 1px;
  color: #173f31;
  line-height: 1.1;
}
.reference-footer .footer-brand-name strong { font-size: .71rem; white-space: nowrap; }
.reference-footer .footer-brand-name small {
  position: relative;
  top: 8px;
  font-size: .62rem;
  font-weight: 650;
}
.reference-footer .footer-brand > p { margin-top: 10px; }
.reference-footer-cta h2 { color: #173f31; }
.reference-footer .footer-top h3,
.reference-footer .reference-footer-cta > p {
  margin: 0 0 6px;
  color: var(--ref-rust);
  font-family: inherit;
  font-size: .55rem;
  font-weight: 900;
  line-height: normal;
  letter-spacing: .12em;
}
.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span,
.reference-footer .footer-bottom { color: #29483b; }
.reference-footer .reference-footer-cta > p { color: var(--ref-rust); }
.reference-footer .footer-top a.footer-contact-link {
  display: flex;
  align-items: center;
  gap: 7px;
}
.reference-footer .footer-top a.footer-contact-link svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  color: #173f31;
  stroke-width: 2;
}
.reference-footer .reference-footer-cta { border-color: rgba(23, 63, 49, .2); }
.reference-footer .footer-top p,
.reference-footer .footer-top a,
.reference-footer-cta > span { font-size: .76rem; }
.reference-footer .footer-bottom { border-top-color: rgba(23, 63, 49, .18); font-size: .64rem; }

@container (max-width: 760px) {
  .reference-mobile-header,
  .reference-header-nav { background: rgba(248, 241, 229, .98); }
  .reference-positioning strong { font-size: 1.03rem; }
  .reference-kicker { font-size: .64rem; }
  .reference-intro { font-size: .94rem; }
  .reference-button { font-size: .79rem; }
  .reference-trust strong { font-size: .72rem; }
  .reference-trust p { font-size: .63rem; }
  .reference-section-intro { font-size: .79rem; }
  .reference-home .product-copy h3 { font-size: .98rem; }
  .reference-home .product-copy p { font-size: .67rem; }
  .reference-process-panel { display: block; padding: 22px 14px 18px; }
  .reference-process-panel .reference-process strong { font-size: .58rem; }
  .reference-process-note { position: static; top: auto; font-size: .77rem; }
  .reference-featured-case .case-card {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column;
    justify-content: flex-start;
    padding: 0;
  }
  .reference-featured-case .case-image {
    width: 100%;
    min-height: 210px !important;
    height: 210px !important;
    margin: 0;
    flex: 0 0 210px;
    border-radius: 0;
  }
  .reference-featured-case .case-copy { width: 100%; padding: 18px 17px 20px !important; }
  .reference-featured-case .case-copy h3 { font-size: 1.42rem !important; }
  .reference-featured-case .case-copy > p:not(.case-tag) { font-size: .79rem !important; }
  .reference-insight-resource,
  .reference-insight-partnership { min-height: 152px; grid-template-columns: 46px minmax(0, 1fr); }
  .reference-insight-bar h2 { font-size: 1.18rem; }
  .reference-insight-resource div > a,
  .reference-insight-partnership div > a { font-size: .68rem; }
  .reference-footer .footer-top p,
  .reference-footer .footer-top a,
  .reference-footer-cta > span { font-size: .79rem; }
  .reference-footer .footer-bottom { font-size: .68rem; }
}
.modal-backdrop{position:fixed!important;inset:0;z-index:1000;overflow:auto;overscroll-behavior:contain;display:flex;align-items:flex-start;justify-content:center;padding:clamp(16px,4vw,48px);background:rgba(27,42,34,.58)}
.detail-modal{position:relative;z-index:1001;max-height:calc(100vh - 32px);overflow:auto;overscroll-behavior:contain}
.modal-close,.modal-back-button{border:0;background:transparent;color:var(--ref-green,#29483b);font-size:.72rem;font-weight:800;letter-spacing:.12em;cursor:pointer}
.modal-close{position:sticky;top:0;float:right;z-index:2;padding:10px 0 10px 16px}
.modal-back-button{display:block;margin:22px auto 4px;padding:10px 22px;border-top:1px solid rgba(41,72,59,.2)}

/* frontend/app/v8-adjustments.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 presentation refinements — 2026-08-22 */

/* HOME / OUR PROCESS
   Two-row snake: 1 → 2 → 3, then outside the copy area down to 4 → 5 → 6.
   Fixed row geometry keeps the dashed line on the icon axis instead of through text. */
.reference-process-case {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(350px, .82fr);
  gap: clamp(28px, 4vw, 62px);
  align-items: stretch;
}

.reference-process-panel { min-width: 0; }

.reference-process {
  --process-icon-size: 62px;
  --process-row-height: 156px;
  --process-gap-x: clamp(26px, 3.6vw, 58px);
  --process-gap-y: clamp(26px, 3vw, 44px);
  position: relative;
  width: 100%;
  margin-top: 14px;
  padding: 8px 10px 0;
  grid-template-columns: repeat(3, minmax(108px, 1fr));
  grid-auto-rows: var(--process-row-height);
  column-gap: var(--process-gap-x);
  row-gap: var(--process-gap-y);
}

.reference-process::before { display: none; }

.reference-process article {
  position: relative;
  z-index: 2;
  min-width: 0;
  height: var(--process-row-height);
  padding: 0 4px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.reference-process article:nth-child(1) { grid-column: 1; grid-row: 1; }
.reference-process article:nth-child(2) { grid-column: 2; grid-row: 1; }
.reference-process article:nth-child(3) { grid-column: 3; grid-row: 1; }
.reference-process article:nth-child(4) { grid-column: 3; grid-row: 2; }
.reference-process article:nth-child(5) { grid-column: 2; grid-row: 2; }
.reference-process article:nth-child(6) { grid-column: 1; grid-row: 2; }

.reference-process article::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

/* 1→2 and 2→3 */
.reference-process article:nth-child(1)::after,
.reference-process article:nth-child(2)::after {
  top: calc(var(--process-icon-size) / 2);
  left: calc(50% + var(--process-icon-size) / 2);
  width: calc(100% + var(--process-gap-x) - var(--process-icon-size));
  border-top: 1px dashed rgba(139, 96, 62, .58);
}

/* short legs from icon 3 / icon 4 to the outside turn */
.reference-process article:nth-child(3)::after,
.reference-process article:nth-child(4)::after {
  top: calc(var(--process-icon-size) / 2);
  left: calc(50% + var(--process-icon-size) / 2);
  right: -10px;
  border-top: 1px dashed rgba(139, 96, 62, .58);
}

/* 4→5 and 5→6: connect from each left-hand icon toward the icon on its right */
.reference-process article:nth-child(5)::after,
.reference-process article:nth-child(6)::after {
  top: calc(var(--process-icon-size) / 2);
  left: calc(50% + var(--process-icon-size) / 2);
  width: calc(100% + var(--process-gap-x) - var(--process-icon-size));
  border-top: 1px dashed rgba(139, 96, 62, .58);
}

.reference-process-turn {
  position: absolute;
  z-index: 1;
  top: calc(8px + var(--process-icon-size) / 2);
  right: 0;
  height: calc(var(--process-row-height) + var(--process-gap-y));
  border-right: 1px dashed rgba(139, 96, 62, .58);
  pointer-events: none;
}

.reference-process-icon {
  position: relative;
  z-index: 3;
  flex: 0 0 var(--process-icon-size);
  width: var(--process-icon-size);
  height: var(--process-icon-size);
}

.reference-process strong { margin-top: 1px; }
.reference-process p { max-width: 175px; }

/* Shared process icon language on the Capabilities page. */
.capability-flow-image.capability-shared-process-icon {
  width: 62px;
  height: 62px;
  min-width: 62px;
  min-height: 62px;
  padding: 0;
  display: grid;
  place-items: center;
  color: var(--green);
  border: 1px solid rgba(83, 94, 70, .18);
  border-radius: 50%;
  background: #e4e4d0;
  overflow: visible;
}

.capability-flow-image.capability-shared-process-icon svg {
  width: 29px;
  height: 29px;
}

/* Shared catalog pagination: Previous / First / page numbers / Last / Next in one row. */
.catalog-pagination {
  width: 100%;
  margin-top: 24px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  gap: 10px;
  overflow-x: auto;
  white-space: nowrap;
  scrollbar-width: thin;
}

.catalog-pagination .text-button[disabled] { opacity: .38; cursor: default; }
.catalog-pagination .text-button[aria-current="page"] { color: var(--green); }

/* Isolate portal-based catalogue popups from Home-page descendant styles. */
.catalog-popup-backdrop { z-index: 1000; }
.catalog-popup-isolated {
  isolation: isolate;
  color: var(--ink);
  background: var(--paper);
}
.catalog-popup-isolated .product-card,
.catalog-popup-isolated .case-card { color: var(--ink); }

/* Product category page: image above, then title / short description / description. */
.product-gallery-section .product-category-grid { align-items: stretch; }

.product-gallery-section .product-category-card {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--paper);
}

.product-gallery-section .product-category-card .product-image {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 0;
}

.product-gallery-section .product-category-card .product-copy {
  flex: 1;
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  gap: 18px;
}

.product-gallery-section .product-category-card .product-copy > div:first-child { display: grid; gap: 10px; }
.product-gallery-section .product-category-card .product-copy h3 { margin: 0; }
.product-gallery-section .product-category-card .product-copy p { margin: 0; font-size: .88rem; line-height: 1.58; }
.product-gallery-section .product-category-card .case-actions { margin-top: auto; justify-content: space-between; align-items: center; }

/* Case Studies main page follows the same top-image / lower-content card pattern. */
.case-gallery-section .case-study-card-grid .case-card {
  min-height: 100%;
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
}

.case-gallery-section .case-study-card-grid .case-image {
  width: 100%;
  min-height: 0;
  aspect-ratio: 4 / 3;
}

.case-gallery-section .case-study-card-grid .case-copy {
  flex: 1;
  padding: 22px;
  justify-content: flex-start;
}

.case-gallery-section .case-study-card-grid .case-copy h3 { margin-bottom: 10px; font-size: 1.55rem; }
.case-gallery-section .case-study-card-grid .case-copy > p { margin-bottom: 10px; font-size: .88rem; line-height: 1.58; }
.case-gallery-section .case-study-card-grid .case-actions { margin-top: auto; padding-top: 12px; }

/* Popup: one main record at the top with image left / all non-empty values right. */
.catalog-main-detail-card {
  align-items: stretch;
  gap: 30px;
}

.catalog-main-detail-card > figure {
  min-width: 0;
  overflow: hidden;
  border-radius: 18px;
  background: var(--paper);
}

.catalog-main-detail-card > figure img {
  width: 100%;
  height: 100%;
  min-height: 320px;
  object-fit: cover;
}

.catalog-main-detail-card > div { align-self: center; }
.catalog-main-detail-card .text-button { margin-top: 18px; }

.field-values {
  margin-top: 12px;
  display: grid;
  gap: 9px;
}

.field-values p {
  margin: 0;
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.58;
}

/* Popup child records: image above, every non-empty field below, with no field labels. */
.catalog-child-grid { align-items: stretch; display: grid; gap: 18px; }

.catalog-child-card,
.case-detail .catalog-child-grid .catalog-child-card {
  min-height: 0;
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--paper);
}

.catalog-child-card > img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.category-gallery-modal .catalog-child-card .product-copy,
.case-detail .catalog-child-card .case-copy {
  flex: 1;
  padding: 18px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 12px;
}

.category-gallery-modal .catalog-child-card .product-copy > .text-button { margin-top: auto; }
.case-detail .catalog-child-card .case-copy h3,
.category-gallery-modal .catalog-child-card .product-copy h3 { margin: 0; font-size: 1.12rem; }

/* About page main cards. Core Responsibility is intentionally two visual steps smaller. */
.facilities-panel .about-main-card {
  position: relative;
  padding-bottom: 48px;
  text-align: left;
}
.facilities-panel .about-main-card .about-card-subtitle {
  margin: 10px 0 8px;
  font-size: .88rem !important;
  line-height: 1.25;
  letter-spacing: -.01em;
}
.facilities-panel .about-main-card > p {
  margin-bottom: 0;
  font-size: .76rem;
  line-height: 1.55;
}
.about-card-detail {
  position: absolute;
  right: 18px;
  bottom: 16px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--rust);
  font-size: .72rem;
  font-weight: 850;
}
.about-card-detail svg { width: 16px; height: 16px; }

/* Unified selector strip for Process / Compliance / About popups. */
.unified-selector-modal {
  width: min(1240px, 94vw);
  max-height: 92vh;
  overflow-y: auto;
}

.detail-selector-strip {
  width: 100%;
  margin: 8px 0 28px;
  padding: 0 0 8px;
  display: flex;
  gap: 10px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x proximity;
}

.process-selector-strip .detail-selector-card { flex: 0 0 clamp(190px, 16vw, 225px); }
.capability-selector-strip .detail-selector-card { flex: 0 0 clamp(235px, 22vw, 290px); }
.about-selector-strip .detail-selector-card { flex: 1 0 clamp(255px, 28vw, 340px); }

.detail-selector-card {
  position: relative;
  min-width: 0;
  min-height: 108px;
  padding: 10px;
  color: var(--ink);
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: var(--paper);
  cursor: pointer;
  transition: .2s ease;
  scroll-snap-align: start;
}
.detail-selector-card:hover,
.detail-selector-card.active { border-color: rgba(200, 78, 47, .55); box-shadow: 0 8px 22px rgba(36,49,41,.08); }
.detail-selector-card.active { background: #fff8ee; }

.detail-selector-horizontal {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
}

.detail-selector-image {
  width: 70px;
  height: 92px;
  display: block;
  object-fit: cover;
  border-radius: 9px;
  background: #ece8dd;
}
.detail-selector-icon-fallback {
  display: grid;
  place-items: center;
  color: var(--green);
  background: #e4e4d0;
}
.detail-selector-icon-fallback svg { width: 28px; height: 28px; }
.detail-selector-image-fallback { background: linear-gradient(135deg, #f2eee5, #e1e5d6); }

.detail-selector-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.detail-selector-number { color: var(--rust); font-size: .58rem; font-weight: 900; }
.detail-selector-copy strong {
  margin-top: 2px;
  color: var(--green);
  font-size: .78rem;
  line-height: 1.2;
}
.detail-selector-copy p {
  margin: 4px 0 0;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  color: var(--muted);
  font-size: .57rem;
  line-height: 1.38;
}
.selector-detail-link {
  margin-top: auto;
  padding-top: 6px;
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--rust);
  font-size: .62rem;
  font-weight: 850;
}
.selector-detail-link svg { width: 14px; height: 14px; }

.about-selector-card {
  display: flex;
  align-items: stretch;
  gap: 10px;
}
.about-selector-card .detail-selector-copy { flex: 1; }
.about-selector-preview {
  width: 82px;
  flex: 0 0 82px;
  object-fit: cover;
  border-radius: 9px;
}

.detail-selected-heading { margin: 0 0 20px; max-width: 920px; }
.detail-selected-heading h2 { margin-bottom: 10px; font-size: clamp(1.8rem, 3vw, 3.2rem); }
.detail-selected-heading > p:last-child { margin-bottom: 0; max-width: 900px; }

.capability-popup-card-copy {
  flex: 1;
  padding: 18px;
}
.capability-popup-card-copy h3 { margin: 0 0 10px; font-size: 1.1rem; }
.capability-popup-card-copy p { margin: 0; font-size: .86rem; line-height: 1.58; }
.detail-empty-state { padding: 28px; border: 1px dashed var(--line); border-radius: 14px; background: var(--paper); }

@media (max-width: 1100px) {
  .reference-process-case {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .reference-process {
    --process-gap-x: clamp(30px, 7vw, 74px);
  }
}

@media (max-width: 760px) {
  .reference-process {
    --process-icon-size: 45px;
    --process-row-height: 92px;
    --process-gap-x: clamp(14px, 4vw, 24px);
    --process-gap-y: 20px;
    padding-left: 2px;
    padding-right: 2px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .reference-process article { padding: 0 1px; }
  .reference-process-turn { top: calc(8px + var(--process-icon-size) / 2); right: -1px; }

  .catalog-main-detail-card { grid-template-columns: 1fr; }
  .catalog-main-detail-card > figure img { min-height: 220px; }
  .catalog-pagination { justify-content: flex-start; padding-bottom: 4px; }

  .detail-selector-strip { gap: 9px; }
  .process-selector-strip .detail-selector-card,
  .capability-selector-strip .detail-selector-card,
  .about-selector-strip .detail-selector-card { flex-basis: min(82vw, 300px); }
  .detail-selector-horizontal { grid-template-columns: 76px minmax(0, 1fr); }
  .detail-selector-image { width: 76px; height: 96px; }
  .detail-selector-copy p { -webkit-line-clamp: 4; }
  .about-selector-preview { width: 72px; flex-basis: 72px; }
}

/* frontend/app/v8-adjustments-3.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 presentation refinements — 2026-08-22 pass 3 */

/* HOME: Our Process and Featured Case share one row at 50 / 50. */
.reference-process-case {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(20px, 2.6vw, 38px) !important;
  align-items: stretch;
}
.reference-process-panel,
.reference-featured-case {
  width: 100%;
  min-width: 0;
}

/* What We Make Detail uses the same visual colour as Case Detail. */
.reference-home .reference-products .product-copy .text-button {
  color: var(--ref-green) !important;
}

/* Case Study popup: Start a Project becomes a text CTA and sits at the lower-right. */
.case-detail.catalog-popup-isolated > .button.button-primary {
  width: auto;
  min-height: 0;
  margin: 22px 0 0 auto;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--rust);
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: .8rem;
  font-weight: 850;
}
.case-detail.catalog-popup-isolated > .button.button-primary::after {
  content: "→";
  font-size: 1.05em;
  line-height: 1;
}
.case-detail.catalog-popup-isolated > .button.button-primary:hover {
  transform: none;
  box-shadow: none;
}

/* Capabilities main list: sequence number and Process name are on one line. */
.capability-process-panel .capability-flow-copy {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 8px;
  align-items: baseline;
}
.capability-process-panel .capability-flow-copy > span {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  white-space: nowrap;
}
.capability-process-panel .capability-flow-copy > h3 {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
}
.capability-process-panel .capability-flow-copy > p,
.capability-process-panel .capability-flow-copy > .text-button {
  grid-column: 1 / -1;
}
.capability-process-panel .capability-flow-copy > p { margin-top: 8px; }

/* Process popup: six selector cards in two rows (3 x 2). */
.process-selector-strip {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  overflow: visible !important;
  padding-bottom: 0 !important;
}
.process-selector-strip .detail-selector-card {
  width: 100%;
  min-width: 0;
  max-width: none;
  flex: none !important;
}

/* Quality popup: four selector cards in two rows (2 x 2). */
.capability-selector-strip {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  overflow: visible !important;
  padding-bottom: 0 !important;
}
.capability-selector-strip .detail-selector-card {
  width: 100%;
  min-width: 0;
  max-width: none;
  flex: none !important;
}

/* Process / Quality popup CTA remains a button but moves to the lower-right. */
.unified-selector-modal > .button.button-primary {
  width: fit-content;
  margin: 24px 0 0 auto;
  display: flex;
}

/* About main cards: replace generic 'Core Responsibility' with concise responsibility headings.
   One visual step larger than the previous .88rem treatment. */
.facilities-panel .about-main-card .about-card-subtitle {
  margin: 10px 0 8px;
  font-size: 0 !important;
  line-height: 1.25;
}
.facilities-panel .about-main-card .about-card-subtitle::after {
  display: block;
  color: var(--green);
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.015em;
}
.facilities-panel .facility-grid .about-main-card:nth-child(1) .about-card-subtitle::after {
  content: "Production Execution & Delivery Readiness";
}
.facilities-panel .facility-grid .about-main-card:nth-child(2) .about-card-subtitle::after {
  content: "Customer & Project Coordination";
}
.facilities-panel .facility-grid .about-main-card:nth-child(3) .about-card-subtitle::after {
  content: "Specification, Inspection & Quality Control";
}

@media (max-width: 980px) {
  .reference-process-case {
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
  }

  .process-selector-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  /* On narrow phones the two home blocks stack to preserve legibility. */
  .reference-process-case {
    grid-template-columns: 1fr !important;
  }

  .process-selector-strip,
  .capability-selector-strip {
    grid-template-columns: 1fr !important;
  }

  .unified-selector-modal > .button.button-primary,
  .case-detail.catalog-popup-isolated > .button.button-primary {
    margin-left: auto;
  }
}

/* frontend/app/v8-adjustments-4.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 4 */

.reference-process-panel { padding-left: clamp(14px,1.8vw,22px)!important; padding-right: clamp(14px,1.8vw,22px)!important; }
.reference-process {
  --process-icon-size:62px; --process-row-height:156px; --process-gap-y:clamp(34px,3.4vw,46px);
  width:100%!important; padding:8px 0 0!important; display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important; column-gap:0!important;
  row-gap:var(--process-gap-y)!important; grid-auto-rows:var(--process-row-height)!important;
}
.reference-process article::after,.reference-process-turn{display:none!important;}
.reference-process-route{position:absolute;z-index:1;top:8px;left:0;width:100%;height:calc(var(--process-row-height) + var(--process-gap-y) + var(--process-icon-size));overflow:visible;pointer-events:none;}
.reference-process-route path{fill:none;stroke:rgba(139,96,62,.58);stroke-width:1.2;stroke-dasharray:5 8;vector-effect:non-scaling-stroke;}
.reference-process article{width:clamp(106px,11.5vw,138px)!important;justify-self:center;padding-left:0!important;padding-right:0!important;}
.reference-process article:nth-child(1),.reference-process article:nth-child(6){justify-self:start;}
.reference-process article:nth-child(3),.reference-process article:nth-child(4){justify-self:end;}
.reference-process strong{max-width:138px;font-size:.58rem;line-height:1.25;}
.reference-process p{max-width:138px;font-size:.49rem;line-height:1.42;}

.case-gallery-section .case-study-card-grid .case-actions{width:100%;margin-top:auto!important;align-items:flex-end;}
.case-gallery-section .case-study-card-grid .case-actions .button.button-dark{width:auto;min-height:0;margin-left:auto;padding:0;color:var(--rust);background:transparent;border:0;border-radius:0;box-shadow:none;font-size:.78rem;font-weight:850;}
.case-gallery-section .case-study-card-grid .case-actions .button.button-dark::after{content:"→";margin-left:5px;}
.case-gallery-section .case-study-card-grid .case-actions .button.button-dark:hover{transform:none;box-shadow:none;}

.process-selector-card{min-height:126px!important;padding:12px!important;display:grid!important;grid-template-columns:56px minmax(0,1fr)!important;gap:12px!important;align-items:stretch!important;}
.process-popup-icon{width:54px;height:54px;display:grid;place-items:center;align-self:start;color:var(--green);border:1px solid rgba(83,94,70,.18);border-radius:50%;background:#e4e4d0;}
.process-popup-icon svg{width:26px;height:26px;}
.process-selector-title-line{width:100%;display:flex;align-items:baseline;gap:7px;}
.process-selector-title-line .detail-selector-number{flex:0 0 auto;margin:0;}
.process-selector-title-line strong{margin:0!important;font-size:.82rem!important;}
.quality-selector-card{min-height:116px!important;padding:15px 16px!important;display:block!important;}
.quality-selector-card .detail-selector-copy{min-height:84px;}
.quality-selector-card .detail-selector-copy>strong{margin:0!important;font-size:.88rem!important;}
.about-selector-card-text{min-height:122px!important;padding:15px 16px!important;display:block!important;}
.about-selector-card-text .detail-selector-copy{min-height:90px;}
.about-selector-preview{display:none!important;}
.facilities-panel .about-main-card .about-card-subtitle{margin:10px 0 8px!important;color:var(--green)!important;font-size:1.02rem!important;font-weight:700!important;line-height:1.25!important;letter-spacing:-.015em!important;}
.facilities-panel .about-main-card .about-card-subtitle::after{content:none!important;display:none!important;}

.inquiry-backdrop{z-index:5000!important;}
.inquiry-modal.inquiry-modal-stacked{width:min(980px,96vw)!important;max-height:calc(100vh - 36px)!important;display:block!important;overflow-y:auto;}
.inquiry-type-bar{position:sticky;z-index:3;top:0;padding:24px 64px 18px 28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;border-bottom:1px solid var(--line);background:rgba(255,253,248,.98);backdrop-filter:blur(10px);}
.inquiry-type-bar button{min-height:62px;padding:10px 14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;color:var(--green);text-align:left;border:1px solid var(--line);border-radius:11px;background:var(--ivory);cursor:pointer;}
.inquiry-type-bar button span{font-size:.82rem;font-weight:850;}.inquiry-type-bar button small{color:var(--muted);font-size:.62rem;}
.inquiry-type-bar button.active{color:white;border-color:var(--green);background:var(--green);}.inquiry-type-bar button.active small{color:rgba(255,255,255,.72);}
.inquiry-form-panel{padding:26px 38px 34px;}.inquiry-form-heading{max-width:760px;margin-bottom:24px;}.inquiry-form-heading .eyebrow{margin-bottom:8px;}.inquiry-form-heading h2{margin:0 0 10px;font-size:clamp(1.9rem,3vw,3.1rem);}.inquiry-form-heading>p:last-child{margin-bottom:0;}
.inquiry-modal-stacked .inquiry-form{padding:0!important;}.inquiry-modal-stacked .form-submit{width:auto;min-width:220px;margin-left:auto;display:flex;}.inquiry-modal-stacked .modal-close{z-index:6;}

@media(max-width:980px){.reference-process article{width:clamp(98px,12vw,124px)!important;}.reference-process strong,.reference-process p{max-width:124px;}}
@media(max-width:760px){
  .reference-process{--process-icon-size:45px;--process-row-height:112px;--process-gap-y:24px;}
  .reference-process article{width:clamp(82px,27vw,104px)!important;}.reference-process strong{max-width:104px;font-size:.45rem;}.reference-process p{display:none;}
  .process-selector-card{grid-template-columns:50px minmax(0,1fr)!important;}.process-popup-icon{width:48px;height:48px;}
  .inquiry-type-bar{padding:18px 48px 14px 14px;gap:6px;}.inquiry-type-bar button{min-height:56px;padding:8px 9px;}.inquiry-type-bar button span{font-size:.68rem;}.inquiry-type-bar button small{font-size:.52rem;}
  .inquiry-form-panel{padding:22px 18px 28px;}.inquiry-modal-stacked .form-grid{grid-template-columns:1fr;}.inquiry-modal-stacked .form-submit{width:100%;min-width:0;}
}

/* frontend/app/v8-adjustments-5.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 5 */

/* HOME PROCESS: compact vertical rhythm while keeping the 1→2→3 / 6←5←4 route. */
.reference-process-case {
  align-items: start !important;
}
.reference-process-panel {
  justify-content: flex-start !important;
  padding-top: 28px !important;
  padding-bottom: 24px !important;
}
.reference-process {
  --process-icon-size: 62px;
  --process-row-height: 132px;
  --process-gap-y: 18px;
  grid-auto-rows: var(--process-row-height) !important;
  row-gap: var(--process-gap-y) !important;
  margin-top: 10px !important;
}
.reference-process-route {
  height: calc(var(--process-row-height) + var(--process-gap-y) + var(--process-icon-size)) !important;
}
.reference-process article {
  height: var(--process-row-height) !important;
}
.reference-process article > p {
  margin-top: 4px !important;
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.reference-process-note {
  margin-top: 18px !important;
  margin-bottom: 0 !important;
}
.reference-process-detail {
  margin-top: 8px !important;
}

/* Unified text-jump links: one size, arrow and text always on one line. */
.text-button,
.arrow-link,
.selector-detail-link,
.about-card-detail,
.case-study-card-grid .case-actions .button.button-dark,
.case-detail.catalog-popup-isolated > .button.button-primary {
  font-size: .72rem !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 5px !important;
}
.text-button,
.arrow-link,
.selector-detail-link,
.about-card-detail {
  color: var(--green) !important;
}
.text-button svg,
.arrow-link svg,
.selector-detail-link svg,
.about-card-detail svg {
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
}

/* More links and text-style CTAs are orange. */
.reference-section-more .text-button,
.reference-more-cases,
.reference-insight-resource > div > .text-button,
.reference-insight-partnership .text-button,
.product-gallery-section .product-category-card .case-actions > .text-button:last-child,
.category-gallery-modal .catalog-main-detail-card .text-button,
.category-gallery-modal .catalog-child-card .product-copy > .text-button,
.case-study-card-grid .case-actions .button.button-dark,
.case-detail.catalog-popup-isolated > .button.button-primary {
  color: var(--rust) !important;
}

/* Any true CTA button inside a detail popup sits at the lower-right. */
.detail-modal .button.button-primary:not(.form-submit),
.detail-modal .button.button-dark:not(.form-submit),
.about-resource-modal .button.button-primary,
.about-resource-modal .button.button-dark {
  width: fit-content !important;
  margin-left: auto !important;
  display: flex !important;
}

/* About / Organization: second line (role title) is two visual steps smaller. */
.structure-section .location-card h2 {
  margin-bottom: 10px !important;
  font-size: clamp(1.02rem, 1.4vw, 1.28rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -.02em !important;
}

/* Contact: three CTA choices stay in one horizontal row. */
.contact-choice {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: stretch !important;
}
.contact-choice .contact-option {
  min-width: 0;
}

@media (max-width: 760px) {
  .reference-process {
    --process-icon-size: 45px;
    --process-row-height: 98px;
    --process-gap-y: 16px;
  }
  .reference-process-note {
    margin-top: 16px !important;
  }

  .contact-choice {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x proximity;
  }
  .contact-choice .contact-option {
    flex: 0 0 min(82vw, 320px);
    scroll-snap-align: start;
  }

  .structure-section .location-card h2 {
    font-size: 1rem !important;
  }
}

/* frontend/app/v8-adjustments-6.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 6 */

/* HOME: keep a clear 50px visual gap between What We Make and the next card row. */
.reference-products {
  padding-bottom: 0 !important;
}
.reference-process-case {
  margin-top: 50px !important;
  padding-top: 0 !important;
}

/* ABOUT / ORGANIZATION: one visual step larger than pass 5, tighter vertical rhythm,
   and 50px lower card height than the original 330px cards. */
.structure-section .location-card {
  min-height: 280px !important;
  justify-content: flex-start !important;
  padding: 26px 32px 28px !important;
}
.structure-section .location-card > span {
  margin-bottom: 18px !important;
}
.structure-section .location-card h2 {
  margin: 0 0 12px !important;
  font-size: clamp(1.14rem, 1.58vw, 1.4rem) !important;
  line-height: 1.16 !important;
}
.structure-section .location-card p {
  margin: 0 !important;
  line-height: 1.5 !important;
}

/* ABOUT / Buyer Resources + Client Partnerships:
   content sits exactly 10px from the horizontal divider lines. */
.about-page .resource-scroll article {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* CONTACT: all three first-row CTAs use one height and align to the same baseline. */
.contact-choice .contact-option {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
.contact-choice .contact-option > p {
  margin-bottom: 18px !important;
}
.contact-choice .contact-option > .button {
  min-height: 48px !important;
  height: 48px !important;
  margin-top: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

@media (max-width: 760px) {
  .reference-process-case {
    margin-top: 50px !important;
  }

  .structure-section .location-card {
    min-height: 280px !important;
  }
}

/* frontend/app/v8-adjustments-7.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 7 */

/* HOME: 30px between What We Make and Our Process / Case Studies. */
.reference-process-case {
  margin-top: 30px !important;
}

/* HOME: Explore More text and arrow always stay on one line. */
.reference-section-more .text-button {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}
.reference-section-more .text-button > span,
.reference-section-more .text-button > svg {
  flex: 0 0 auto !important;
}

/* PRODUCT POPUP: all quote CTAs are orange buttons; keep their existing placement. */
.category-gallery-modal .catalog-main-detail-card .text-button,
.category-gallery-modal .catalog-child-card .product-copy > .text-button {
  width: fit-content !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  color: #fff !important;
  background: var(--rust) !important;
  border: 1px solid var(--rust) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}
.category-gallery-modal .catalog-main-detail-card .text-button:hover,
.category-gallery-modal .catalog-child-card .product-copy > .text-button:hover {
  color: #fff !important;
  background: var(--rust-dark) !important;
  border-color: var(--rust-dark) !important;
  transform: none !important;
}
.category-gallery-modal .catalog-main-detail-card .text-button svg,
.category-gallery-modal .catalog-child-card .product-copy > .text-button svg {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
}

/* CASE STUDY POPUP: return the CTA to an orange button while retaining lower-right placement. */
.case-detail.catalog-popup-isolated > .button.button-primary {
  width: fit-content !important;
  min-height: 42px !important;
  margin: 22px 0 0 auto !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  color: #fff !important;
  background: var(--rust) !important;
  border: 1px solid var(--rust) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}
.case-detail.catalog-popup-isolated > .button.button-primary::after {
  content: none !important;
}
.case-detail.catalog-popup-isolated > .button.button-primary:hover {
  color: #fff !important;
  background: var(--rust-dark) !important;
  border-color: var(--rust-dark) !important;
  transform: none !important;
}

/* BUYER RESOURCE / CLIENT PARTNERSHIP POPUPS: CTA begins 10px below the content card. */
.about-resource-modal > article + .button,
.about-resource-modal > article + .button.button-primary,
.about-resource-modal > article + .button.button-dark {
  margin-top: 10px !important;
}

@media (max-width: 760px) {
  .reference-process-case {
    margin-top: 30px !important;
  }
}

/* frontend/app/v8-adjustments-8.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 8
   Unified BACK controls for every website popup. */

/* Shared visual language for both top and bottom BACK controls. */
.detail-modal .modal-close,
.detail-modal .modal-back-button,
.inquiry-modal .modal-close,
.inquiry-modal .modal-back-button {
  min-width: 76px !important;
  min-height: 36px !important;
  width: auto !important;
  height: 36px !important;
  padding: 0 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--green) !important;
  background: #dfe6d7 !important;
  border: 1px solid rgba(22, 60, 45, .22) !important;
  border-radius: 999px !important;
  box-shadow: 0 3px 10px rgba(22, 60, 45, .08) !important;
  font-size: .68rem !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}

.detail-modal .modal-close:hover,
.detail-modal .modal-back-button:hover,
.inquiry-modal .modal-close:hover,
.inquiry-modal .modal-back-button:hover {
  color: var(--green) !important;
  background: #cfd9c5 !important;
  border-color: rgba(22, 60, 45, .34) !important;
  transform: none !important;
  box-shadow: 0 4px 12px rgba(22, 60, 45, .11) !important;
}

/* Top BACK stays in the upper-right, but uses the same pill treatment. */
.detail-modal > .modal-close,
.inquiry-modal > .modal-close {
  position: absolute !important;
  top: 16px !important;
  right: 18px !important;
  z-index: 20 !important;
}

/* Bottom BACK keeps its normal flow position while matching the top control. */
.detail-modal .modal-back-button,
.inquiry-modal .modal-back-button {
  position: static !important;
  margin-top: 22px !important;
}

@media (max-width: 560px) {
  .detail-modal .modal-close,
  .detail-modal .modal-back-button,
  .inquiry-modal .modal-close,
  .inquiry-modal .modal-back-button {
    min-width: 70px !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    font-size: .64rem !important;
  }
}

/* frontend/app/v8-adjustments-9.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 9 */

/* POPUPS: reserve 10px clear space below the upper-right BACK control. */
.detail-modal,
.inquiry-modal.inquiry-modal-stacked {
  padding-top: 62px !important;
}

/* Top BACK: 16px from the top + 36px high = 52px; content begins at 62px,
   so the control has a deliberate 10px clear gap before popup content. */
.detail-modal > .modal-close,
.inquiry-modal > .modal-close {
  top: 16px !important;
  right: 18px !important;
}

/* Bottom BACK: centered consistently in every popup. */
.detail-modal .modal-back-button,
.inquiry-modal .modal-back-button {
  width: fit-content !important;
  margin: 22px auto 0 !important;
  display: flex !important;
  justify-content: center !important;
}

/* Lower CTA bands on Products / Case Studies / Capabilities / About:
   dark-green band, exactly 30px vertical breathing room, one consistent orange CTA. */
.page-lower-cta {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
  background: var(--green) !important;
}
.page-lower-cta .button,
.page-lower-cta .button.button-primary,
.page-lower-cta .button.button-light {
  min-height: 46px !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: var(--rust) !important;
  border: 1px solid var(--rust) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}
.page-lower-cta .button:hover,
.page-lower-cta .button.button-primary:hover,
.page-lower-cta .button.button-light:hover {
  color: #fff !important;
  background: var(--rust-dark) !important;
  border-color: var(--rust-dark) !important;
  transform: none !important;
}
.page-lower-cta-copy {
  max-width: 760px;
  margin: 10px 0 0;
  color: rgba(255,255,255,.72);
  font-size: .78rem;
  line-height: 1.55;
}

@media (max-width: 560px) {
  .detail-modal,
  .inquiry-modal.inquiry-modal-stacked {
    padding-top: 60px !important;
  }

  .detail-modal > .modal-close,
  .inquiry-modal > .modal-close {
    top: 16px !important;
  }

  .page-lower-cta {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
}

/* frontend/app/v8-adjustments-10.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 10 */

/* Products / Case Studies / Capabilities / About lower green CTA bands:
   exactly 30px vertical breathing room. */
.products-page .page-lower-cta,
.case-studies-page .page-lower-cta,
.capabilities-page .page-lower-cta,
.about-page .page-lower-cta {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

/* Home hero CTAs: no arrows in markup, shared CTA geometry,
   while preserving the two original side-by-side fills. */
.reference-home .reference-actions .home-hero-cta {
  min-height: 46px !important;
  height: 46px !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-size: .72rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.reference-home .reference-actions .reference-button-primary.home-hero-cta {
  color: #fff !important;
  background: var(--rust) !important;
  border: 1px solid var(--rust) !important;
}

.reference-home .reference-actions .reference-button-outline.home-hero-cta {
  /* Keep the existing light/peach secondary fill and its text colour. */
  border-radius: 999px !important;
}

.reference-home .reference-actions .home-hero-cta:hover {
  transform: none !important;
  box-shadow: none !important;
}

/* frontend/app/v8-adjustments-11.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V8 refinements — pass 11
   Final pre-checkpoint fixes: Home process order and Product popup CTA arrows. */

/* HOME / Our Process: force the visual order to be
   first row 01 02 03, second row 06 05 04.
   nth-of-type is used so the absolutely-positioned SVG route does not affect indexing. */
.reference-process article:nth-of-type(1) {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
.reference-process article:nth-of-type(2) {
  grid-column: 2 !important;
  grid-row: 1 !important;
}
.reference-process article:nth-of-type(3) {
  grid-column: 3 !important;
  grid-row: 1 !important;
}
.reference-process article:nth-of-type(4) {
  grid-column: 3 !important;
  grid-row: 2 !important;
}
.reference-process article:nth-of-type(5) {
  grid-column: 2 !important;
  grid-row: 2 !important;
}
.reference-process article:nth-of-type(6) {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

/* Keep the outer cards aligned to the route edges after explicit placement. */
.reference-process article:nth-of-type(1),
.reference-process article:nth-of-type(6) {
  justify-self: start !important;
}
.reference-process article:nth-of-type(2),
.reference-process article:nth-of-type(5) {
  justify-self: center !important;
}
.reference-process article:nth-of-type(3),
.reference-process article:nth-of-type(4) {
  justify-self: end !important;
}

/* PRODUCT POPUP: CTA buttons keep their orange button styling but do not show arrows. */
.category-gallery-modal .catalog-main-detail-card .text-button svg,
.category-gallery-modal .catalog-child-card .product-copy > .text-button svg {
  display: none !important;
}

/* frontend/app/v9-adjustments-1.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinements — 2026-08-22
   Scope: Home alignment, shared inner-page hero rhythm, footer layout,
   and popup spacing / selector-card alignment. */

/* HOME / What We Make:
   Keep all four Detail actions on one shared bottom row, regardless of copy length. */
.reference-home .category-grid {
  align-items: stretch;
}

.reference-home .product-card {
  height: 100%;
  align-self: stretch;
}

.reference-home .product-copy {
  flex: 1 1 auto;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
}

.reference-home .product-copy > div:first-child {
  flex: 1 1 auto;
}

.reference-home .product-copy .case-actions {
  width: 100%;
  margin-top: 10px !important;
  flex: 0 0 auto;
}

.reference-home .product-copy .case-actions .text-button {
  margin-top: 0 !important;
  white-space: nowrap;
}

/* HOME / Process + featured Case Study:
   Force both cards in the shared desktop row to inherit the same row height. */
.reference-process-case {
  align-items: stretch !important;
}

.reference-process-panel,
.reference-featured-case {
  height: 100%;
}

.reference-featured-case .case-home {
  width: 100%;
  height: 100%;
  display: flex;
}

.reference-featured-case .case-card {
  flex: 1 1 auto;
  height: 100% !important;
}

/* PRODUCTS / CASE STUDIES / CAPABILITIES / ABOUT:
   One shared first-section rhythm: 30px top/bottom and 10px between text rows. */
.products-page .standard-page-hero,
.case-studies-page .standard-page-hero,
.capabilities-page .standard-page-hero,
.about-page .standard-page-hero {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.products-page .standard-page-hero .eyebrow,
.case-studies-page .standard-page-hero .eyebrow,
.capabilities-page .standard-page-hero .eyebrow,
.about-page .standard-page-hero .eyebrow {
  margin: 0 0 10px !important;
}

.products-page .standard-page-hero h1,
.case-studies-page .standard-page-hero h1,
.capabilities-page .standard-page-hero h1,
.about-page .standard-page-hero h1 {
  margin: 0 0 10px !important;
  transform: none !important;
}

.products-page .standard-page-hero p:not(.eyebrow),
.case-studies-page .standard-page-hero p:not(.eyebrow),
.capabilities-page .standard-page-hero p:not(.eyebrow),
.about-page .standard-page-hero p:not(.eyebrow) {
  margin: 0 !important;
}

.capabilities-page .standard-page-hero .capability-intro {
  margin-top: 0 !important;
}

/* FOOTER / compact desktop hierarchy:
   left two-thirds = 2x2 information grid; right one-third = one CTA card. */
.reference-footer .footer-top {
  padding: 20px 34px 18px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .8fr) minmax(280px, 1fr) !important;
  grid-template-rows: auto auto;
  column-gap: 22px !important;
  row-gap: 12px !important;
  align-items: stretch !important;
}

.reference-footer .footer-top > .footer-brand {
  grid-column: 1;
  grid-row: 1;
}

.reference-footer .footer-top > div:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}

.reference-footer .footer-top > div:nth-child(3) {
  grid-column: 1;
  grid-row: 2;
}

.reference-footer .footer-top > div:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
}

.reference-footer .footer-brand > p {
  margin-top: 6px !important;
  margin-bottom: 0 !important;
}

.reference-footer .footer-top h3 {
  margin-bottom: 5px !important;
}

.reference-footer .footer-top p,
.reference-footer .footer-top a {
  margin-bottom: 4px !important;
  line-height: 1.45 !important;
}

.reference-footer .reference-footer-cta {
  grid-column: 3;
  grid-row: 1 / span 2;
  min-height: 100%;
  padding: 18px 20px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 1px solid rgba(23, 63, 49, .18) !important;
  border-radius: 14px;
  background: rgba(255, 250, 242, .34);
}

.reference-footer .reference-footer-cta > p {
  margin-bottom: 6px !important;
}

.reference-footer .reference-footer-cta h2 {
  margin-bottom: 0;
  font-size: clamp(1.15rem, 1.5vw, 1.5rem);
}

.reference-footer .reference-footer-cta > span {
  margin: 6px 0 10px !important;
  line-height: 1.45 !important;
}

.reference-footer .reference-footer-cta .reference-button {
  width: fit-content;
  min-height: 38px !important;
  margin-top: auto;
  padding-left: 14px !important;
  padding-right: 14px !important;
}

.reference-footer .footer-bottom {
  min-height: 34px !important;
  padding: 6px 34px !important;
}

/* PRODUCT / CASE POPUPS:
   The two-line section heading under the first record uses exact 10px rhythm:
   10px from the main record, 10px between lines, 10px before the child cards. */
.category-gallery-modal .catalog-main-detail-card + .section-heading,
.case-detail.catalog-popup-isolated .catalog-main-detail-card + .section-heading {
  margin: 10px 0 10px !important;
}

.category-gallery-modal .catalog-main-detail-card + .section-heading .eyebrow,
.case-detail.catalog-popup-isolated .catalog-main-detail-card + .section-heading .eyebrow {
  margin: 0 0 10px !important;
}

.category-gallery-modal .catalog-main-detail-card + .section-heading h3,
.case-detail.catalog-popup-isolated .catalog-main-detail-card + .section-heading h3 {
  margin: 0 !important;
}

/* CAPABILITIES POPUPS:
   Reduce the six Process selectors and four Quality selectors by 20px,
   while keeping every Detail action on the same baseline. */
.process-selector-card {
  min-height: 106px !important;
  height: 106px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.process-selector-card .detail-selector-copy {
  height: 100%;
  min-height: 0 !important;
}

.process-selector-card .detail-selector-copy > p {
  -webkit-line-clamp: 2 !important;
}

.quality-selector-card {
  min-height: 96px !important;
  height: 96px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
}

.quality-selector-card .detail-selector-copy {
  height: 100%;
  min-height: 0 !important;
}

.quality-selector-card .detail-selector-copy > p {
  -webkit-line-clamp: 2 !important;
}

.process-selector-card .selector-detail-link,
.quality-selector-card .selector-detail-link {
  margin-top: auto !important;
  align-self: flex-end !important;
}

/* ABOUT POPUP:
   Exactly three selector cards across the available width, no horizontal scroller.
   Their Detail links share one bottom baseline. */
.about-selector-strip {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  padding-bottom: 0 !important;
  scroll-snap-type: none !important;
}

.about-selector-strip .detail-selector-card {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100%;
  flex: none !important;
}

.about-selector-card-text .detail-selector-copy {
  height: 100%;
  min-height: 90px;
}

.about-selector-card-text .selector-detail-link {
  margin-top: auto !important;
  align-self: flex-end !important;
}

@media (max-width: 900px) {
  .reference-footer .footer-top {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }

  .reference-footer .footer-top > .footer-brand,
  .reference-footer .footer-top > div:nth-child(2),
  .reference-footer .footer-top > div:nth-child(3),
  .reference-footer .footer-top > div:nth-child(4) {
    grid-column: auto;
    grid-row: auto;
  }

  .reference-footer .reference-footer-cta {
    grid-column: 1 / -1;
    grid-row: auto;
  }
}

@media (max-width: 760px) {
  .reference-home .product-copy {
    min-height: 90px;
  }

  .reference-process-panel,
  .reference-featured-case,
  .reference-featured-case .case-home,
  .reference-featured-case .case-card {
    height: auto;
  }

  .reference-footer .footer-top {
    padding: 18px 18px 14px !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .reference-footer .footer-top > .footer-brand,
  .reference-footer .footer-top > div:nth-child(2),
  .reference-footer .footer-top > div:nth-child(3),
  .reference-footer .footer-top > div:nth-child(4),
  .reference-footer .reference-footer-cta {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  .reference-footer .reference-footer-cta {
    padding: 15px !important;
  }

  .reference-footer .footer-bottom {
    min-height: 32px !important;
    padding: 7px 18px !important;
  }

  .process-selector-card,
  .quality-selector-card {
    height: auto !important;
    min-height: 96px !important;
  }

  .about-selector-strip {
    grid-template-columns: 1fr !important;
  }
}

/* frontend/app/v9-adjustments-2.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 footer compaction pass — 2026-08-22
   Compact desktop footer with restored horizontal navigation. */

@media (min-width: 901px) {
  .reference-footer .footer-top {
    padding: 14px 30px 12px !important;
    grid-template-columns: minmax(220px, 1.05fr) minmax(230px, 1fr) minmax(190px, .8fr) minmax(280px, 1.1fr) !important;
    grid-template-rows: auto !important;
    column-gap: 20px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }

  .reference-footer .footer-top > div:nth-child(2) {
    display: none !important;
  }

  .reference-footer .footer-top > .footer-brand,
  .reference-footer .footer-top > div:nth-child(3),
  .reference-footer .footer-top > div:nth-child(4),
  .reference-footer .reference-footer-cta {
    grid-row: 1 !important;
  }

  .reference-footer .footer-top > .footer-brand { grid-column: 1 !important; }
  .reference-footer .footer-top > div:nth-child(3) { grid-column: 2 !important; }
  .reference-footer .footer-top > div:nth-child(4) { grid-column: 3 !important; }

  .reference-footer .reference-footer-cta {
    grid-column: 4 !important;
    min-height: 0 !important;
    padding: 13px 16px !important;
    justify-content: flex-start !important;
    border-radius: 12px !important;
  }

  .reference-footer .footer-brand-lockup { gap: 6px !important; }
  .reference-footer .footer-brand-icon { width: 56px !important; height: 42px !important; flex-basis: 56px !important; }
  .reference-footer .footer-brand-icon img { width: 180px !important; height: 42px !important; }
  .reference-footer .footer-brand-name strong { font-size: .68rem !important; }
  .reference-footer .footer-brand-name small { top: 5px !important; font-size: .58rem !important; }
  .reference-footer .footer-brand > p { margin-top: 5px !important; max-width: 250px; }
  .reference-footer .footer-top h3,
  .reference-footer .reference-footer-cta > p { margin-bottom: 4px !important; }
  .reference-footer .footer-top p,
  .reference-footer .footer-top a { margin-bottom: 2px !important; line-height: 1.32 !important; }
  .reference-footer .reference-footer-cta h2 { font-size: clamp(1.02rem, 1.2vw, 1.28rem) !important; line-height: 1.05 !important; }
  .reference-footer .reference-footer-cta > span { margin: 4px 0 7px !important; line-height: 1.32 !important; }
  .reference-footer .reference-footer-cta .reference-button { min-height: 34px !important; margin-top: 0 !important; padding: 0 12px !important; }

  .reference-footer .footer-bottom {
    min-height: 30px !important;
    padding: 4px 30px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
  }

  .reference-footer .footer-desktop-nav {
    min-width: 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: clamp(10px, 1.25vw, 20px);
    white-space: nowrap;
  }

  .reference-footer .footer-desktop-nav a {
    color: #29483b;
    font-size: .61rem;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
  }

  .reference-footer .footer-desktop-nav a:hover { color: var(--rust); }
}

@media (max-width: 900px) {
  .reference-footer .footer-desktop-nav { display: none !important; }
}

@media (max-width: 900px) and (min-width: 761px) {
  .reference-footer .footer-top { padding-top: 14px !important; padding-bottom: 12px !important; gap: 10px 18px !important; }
  .reference-footer .reference-footer-cta { padding: 14px 16px !important; }
}

@media (max-width: 760px) {
  .reference-footer .footer-top { padding-top: 14px !important; padding-bottom: 10px !important; gap: 8px !important; }
  .reference-footer .reference-footer-cta { padding: 12px 14px !important; }
  .reference-footer .footer-bottom { min-height: 28px !important; padding-top: 5px !important; padding-bottom: 5px !important; }
}

/* frontend/app/v9-adjustments-3.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 Contact page refinement — 2026-08-22
   Clear three-route entry, compact direct-contact block, two location cards. */

/* CONTACT hero joins the shared inner-page rhythm. */
.contact-page .standard-page-hero {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.contact-page .standard-page-hero .eyebrow {
  margin: 0 0 10px !important;
}

.contact-page .standard-page-hero h1 {
  margin: 0 0 10px !important;
  transform: none !important;
}

.contact-page .standard-page-hero p:not(.eyebrow) {
  max-width: 760px;
  margin: 0 !important;
}

/* Three clear ways to start. */
.contact-choice-section {
  padding: 34px 5vw 36px;
  background: var(--cream);
}

.contact-section-heading {
  max-width: 760px;
  margin: 0 0 22px;
}

.contact-section-heading .eyebrow {
  margin: 0 0 8px;
}

.contact-section-heading h2 {
  margin: 0 0 8px;
  font-size: clamp(1.75rem, 3vw, 3rem);
}

.contact-section-heading > p:last-child {
  max-width: 680px;
  margin: 0;
  font-size: .9rem;
  line-height: 1.55;
}

.contact-choice-section .contact-choice {
  width: 100%;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  background: transparent !important;
}

.contact-choice-section .contact-option {
  min-width: 0;
  min-height: 220px !important;
  height: 100% !important;
  padding: 24px 24px 22px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  border: 1px solid rgba(22, 60, 45, .14) !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 24px rgba(54, 57, 42, .05) !important;
}

.contact-choice-section .contact-option > span {
  margin-bottom: 12px !important;
  color: var(--rust) !important;
  font-size: .65rem !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
}

.contact-choice-section .contact-option h2 {
  margin: 0 0 10px !important;
  font-size: clamp(1.35rem, 2vw, 2rem) !important;
  line-height: 1.08 !important;
}

.contact-choice-section .contact-option > p {
  margin: 0 0 18px !important;
  font-size: .82rem !important;
  line-height: 1.55 !important;
}

.contact-choice-section .contact-option > .button {
  min-height: 42px !important;
  margin-top: auto !important;
  padding: 0 18px !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

.contact-choice-section .contact-option:nth-child(1) {
  color: #fff;
  background: var(--green) !important;
}

.contact-choice-section .contact-option:nth-child(1) h2 {
  color: #fffaf2 !important;
}

.contact-choice-section .contact-option:nth-child(1) > p {
  color: rgba(255, 255, 255, .74) !important;
}

.contact-choice-section .contact-option:nth-child(1) > span {
  color: #f0a084 !important;
}

.contact-choice-section .contact-option:nth-child(1) > .button {
  color: var(--green) !important;
  background: var(--ivory) !important;
  border-color: var(--ivory) !important;
}

.contact-choice-section .contact-option:nth-child(2) {
  background: #ead7bd !important;
}

.contact-choice-section .contact-option:nth-child(3) {
  background: var(--paper) !important;
}

/* Direct contact + locations: one compact two-column band. */
.direct-contact.direct-contact-v9 {
  padding: 36px 5vw 38px !important;
  display: grid !important;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
  background: var(--sage) !important;
}

.direct-contact-v9 .direct-contact-primary,
.direct-contact-v9 .contact-location-panel {
  min-width: 0;
  padding: 26px;
  border: 1px solid rgba(22, 60, 45, .13);
  border-radius: 18px;
  background: rgba(255, 250, 242, .78);
}

.direct-contact-v9 .eyebrow {
  margin: 0 0 9px;
}

.direct-contact-v9 .direct-contact-primary h2 {
  max-width: 520px;
  margin: 0 0 10px;
  font-size: clamp(1.55rem, 2.5vw, 2.55rem);
  line-height: 1.08;
}

.direct-contact-v9 .direct-contact-primary > p:not(.eyebrow):not(.direct-contact-routing) {
  max-width: 560px;
  margin: 0;
  font-size: .86rem;
  line-height: 1.58;
}

.direct-contact-links {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
}

.direct-contact-links > a {
  min-height: 58px;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(22, 60, 45, .13);
  border-radius: 12px;
  background: rgba(255, 255, 255, .55);
}

.direct-contact-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  color: var(--green);
  border-radius: 50%;
  background: #e1e5d6;
}

.direct-contact-icon svg {
  width: 18px;
  height: 18px;
}

.direct-contact-links a > span:last-child {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.direct-contact-links small {
  color: var(--muted);
  font-size: .64rem;
}

.direct-contact-links strong {
  overflow-wrap: anywhere;
  color: var(--green);
  font-size: .84rem;
}

.direct-contact-routing {
  margin: 12px 0 0 !important;
  color: var(--green-2) !important;
  font-size: .7rem !important;
  font-weight: 800;
}

.contact-location-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.contact-location-grid article {
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(22, 60, 45, .13);
  border-radius: 14px;
  background: rgba(255, 255, 255, .55);
}

.contact-location-grid article > span {
  display: block;
  margin-bottom: 8px;
  color: var(--rust);
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.contact-location-grid h3 {
  margin: 0 0 9px;
  font-size: 1.08rem;
  line-height: 1.15;
}

.contact-location-grid p {
  margin: 0 0 7px;
  color: var(--green-2);
  font-size: .77rem;
  line-height: 1.5;
}

.contact-location-grid small {
  display: block;
  color: var(--muted);
  font-size: .68rem;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .contact-choice-section .contact-choice {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .contact-choice-section .contact-option {
    min-height: 230px !important;
    padding: 20px 18px !important;
  }

  .direct-contact.direct-contact-v9 {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .contact-choice-section {
    padding: 26px 14px 28px;
  }

  .contact-choice-section .contact-choice {
    grid-template-columns: 1fr !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .contact-choice-section .contact-option {
    min-height: 0 !important;
  }

  .direct-contact.direct-contact-v9 {
    padding: 26px 14px 28px !important;
    gap: 12px !important;
  }

  .direct-contact-v9 .direct-contact-primary,
  .direct-contact-v9 .contact-location-panel {
    padding: 19px;
  }

  .contact-location-grid {
    grid-template-columns: 1fr;
  }
}

/* frontend/app/v9-adjustments-4.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 About page structure refinement — 2026-08-23
   Hero -> slim anchors -> compact operating structure -> merged story/timeline -> How We Operate. */

.about-page .about-hero > div:first-child {
  max-width: 820px;
}

.about-page .about-hero > div:first-child > p:last-child {
  max-width: 760px;
}

.about-anchor-nav {
  position: static !important;
  top: auto !important;
  min-height: 42px !important;
  padding: 8px 5vw !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(18px, 3vw, 42px) !important;
  border-top: 1px solid rgba(22,60,45,.1);
  border-bottom: 1px solid rgba(22,60,45,.1);
  background: rgba(255,250,242,.86) !important;
}

.about-anchor-nav a {
  padding: 3px 0 !important;
  color: var(--green) !important;
  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .02em;
  text-decoration: none;
  white-space: nowrap;
}

.about-anchor-nav a:hover {
  color: var(--rust) !important;
}

.about-operating-structure {
  padding: 28px 5vw 30px !important;
  display: block !important;
  background: var(--cream) !important;
}

.about-structure-heading {
  display: grid;
  grid-template-columns: minmax(260px,.8fr) minmax(0,1.2fr);
  gap: 24px;
  align-items: end;
  margin-bottom: 18px;
}

.about-structure-heading .eyebrow {
  grid-column: 1;
  margin: 0 0 7px;
}

.about-structure-heading h2 {
  grid-column: 1;
  margin: 0;
  font-size: clamp(1.65rem,2.7vw,2.65rem);
  line-height: 1.06;
}

.about-structure-heading > p:last-child {
  grid-column: 2;
  grid-row: 1 / span 2;
  max-width: 620px;
  margin: 0;
  align-self: end;
  font-size: .84rem;
  line-height: 1.55;
}

.operating-structure-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-top: 1px solid rgba(22,60,45,.14);
  border-bottom: 1px solid rgba(22,60,45,.14);
}

.operating-structure-item {
  position: relative;
  min-width: 0;
  min-height: 128px;
  padding: 18px 24px 16px 0;
}

.operating-structure-item + .operating-structure-item {
  padding-left: 24px;
  border-left: 1px solid rgba(22,60,45,.14);
}

.operating-structure-item:not(:last-child)::after {
  content: "→";
  position: absolute;
  top: 18px;
  right: -9px;
  z-index: 1;
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  color: var(--rust);
  background: var(--cream);
  font-size: .82rem;
}

.operating-structure-item > span {
  display: block;
  margin-bottom: 7px;
  color: var(--rust);
  font-size: .63rem;
  font-weight: 900;
  letter-spacing: .1em;
}

.operating-structure-item h3 {
  margin: 0 0 7px;
  color: var(--green);
  font-size: clamp(1rem,1.45vw,1.28rem);
  line-height: 1.16;
}

.operating-structure-item p {
  max-width: 360px;
  margin: 0;
  font-size: .75rem;
  line-height: 1.5;
}

.about-story-timeline {
  padding: 32px 5vw 34px;
  display: grid;
  grid-template-columns: minmax(280px,.82fr) minmax(0,1.18fr);
  gap: 38px;
  align-items: center;
  background: var(--sage);
}

.about-story-copy .eyebrow {
  margin: 0 0 8px;
}

.about-story-copy h2 {
  margin: 0 0 10px;
  font-size: clamp(1.75rem,3vw,3rem);
  line-height: 1.06;
}

.about-story-copy > p:last-child {
  max-width: 600px;
  margin: 0;
  font-size: .84rem;
  line-height: 1.58;
}

.about-timeline {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-top: 1px solid rgba(22,60,45,.2);
}

.about-timeline > div {
  min-width: 0;
  padding: 15px 14px 0;
  border-left: 1px solid rgba(22,60,45,.14);
}

.about-timeline > div:first-child {
  padding-left: 0;
  border-left: 0;
}

.about-timeline strong {
  display: block;
  margin-bottom: 6px;
  color: var(--green);
  font-size: 1.05rem;
}

.about-timeline span {
  display: block;
  color: var(--green-2);
  font-size: .68rem;
  line-height: 1.45;
}

.about-operate-section {
  position: relative;
  scroll-margin-top: 90px;
}

.about-operate-section .section-heading > p:last-child {
  max-width: 660px;
}

.legacy-anchor-target {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

#story,
#client-partnerships,
#resources {
  scroll-margin-top: 90px;
}

@media (max-width: 900px) {
  .about-structure-heading,
  .about-story-timeline {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .about-structure-heading > p:last-child {
    grid-column: 1;
    grid-row: auto;
  }

  .operating-structure-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .operating-structure-item {
    padding-right: 16px;
  }

  .operating-structure-item + .operating-structure-item {
    padding-left: 16px;
  }

  .about-timeline {
    grid-template-columns: repeat(4,minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .about-anchor-nav {
    padding: 8px 14px !important;
    justify-content: flex-start !important;
    gap: 18px !important;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .about-anchor-nav::-webkit-scrollbar {
    display: none;
  }

  .about-operating-structure,
  .about-story-timeline {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .operating-structure-grid,
  .about-timeline {
    grid-template-columns: 1fr;
  }

  .operating-structure-item,
  .operating-structure-item + .operating-structure-item {
    min-height: 0;
    padding: 15px 0 !important;
    border-left: 0;
    border-top: 1px solid rgba(22,60,45,.12);
  }

  .operating-structure-item:first-child {
    border-top: 0;
  }

  .operating-structure-item::after {
    display: none !important;
  }

  .about-timeline > div,
  .about-timeline > div:first-child {
    padding: 11px 0 !important;
    border-left: 0;
    border-top: 1px solid rgba(22,60,45,.12);
  }

  .about-timeline > div:first-child {
    border-top: 0;
  }
}

/* frontend/app/v9-adjustments-5.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinements — capabilities process route.
   Keep the dashed route on the 62px process-icon centreline and continue it to the CTA. */

.capability-process-track {
  --capability-process-icon-size: 62px;
  --capability-process-icon-center: calc(var(--capability-process-icon-size) / 2);
  --capability-process-icon-column: 86px;
  --capability-process-column-gap: 26px;
  position: relative;
}

/* Replace the older line that was centred on the former 86px icon. */
.capability-process-track .capability-flow-list::before {
  display: none !important;
}

/* One continuous vertical route: exact centre of every 62px icon, ending at CTA centre. */
.capability-process-track::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: var(--capability-process-icon-center);
  bottom: 24px;
  left: var(--capability-process-icon-center);
  border-left: 2px dashed rgba(47, 81, 67, .6);
  pointer-events: none;
}

.capability-process-track .capability-flow-item,
.capability-process-track .capability-flow-image {
  position: relative;
  z-index: 1;
}

.capability-process-track .capability-flow-image.capability-shared-process-icon {
  justify-self: start;
}

/* Continue the route from the vertical icon axis into the Start a Project CTA. */
.capability-process-cta-row {
  position: relative;
  z-index: 1;
  min-height: 49px;
  margin-top: 18px;
  display: grid;
  grid-template-columns: var(--capability-process-icon-column) minmax(0, 1fr);
  column-gap: var(--capability-process-column-gap);
  align-items: center;
}

.capability-process-cta-row::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 50%;
  left: var(--capability-process-icon-center);
  width: calc(
    var(--capability-process-icon-column) +
    var(--capability-process-column-gap) -
    var(--capability-process-icon-center)
  );
  border-top: 2px dashed rgba(47, 81, 67, .6);
  transform: translateY(-1px);
  pointer-events: none;
}

.capability-process-cta-row .capability-project-button {
  position: relative;
  z-index: 2;
  grid-column: 2;
  justify-self: start;
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  .capability-process-cta-row {
    margin-top: 14px;
  }
}

/* frontend/app/v9-adjustments-6.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinements — mobile lower CTA bands.
   Products / Case Studies / Capabilities / About: copy first, CTA below on narrow screens. */

@media (max-width: 760px) {
  .products-page .page-lower-cta,
  .case-studies-page .page-lower-cta,
  .capabilities-page .page-lower-cta,
  .about-page .page-lower-cta {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 18px !important;
  }

  .products-page .page-lower-cta > div,
  .case-studies-page .page-lower-cta > div,
  .capabilities-page .page-lower-cta > div,
  .about-page .page-lower-cta > div {
    width: 100% !important;
  }

  .products-page .page-lower-cta > .button,
  .case-studies-page .page-lower-cta > .button,
  .capabilities-page .page-lower-cta > .button,
  .about-page .page-lower-cta > .button {
    width: fit-content !important;
    margin: 0 !important;
    align-self: flex-start !important;
  }
}

/* frontend/app/v9-adjustments-7.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 mobile refinement pass 01 — 2026-08-23
   MOBILE ONLY. No desktop/tablet-desktop rules outside max-width: 760px.
   Goals: readable spacing, touch-friendly controls, single-column detail flows,
   compact cards, cleaner popups and footer, while preserving all D1 content/logic. */

@media (max-width: 760px) {
  /* ---------- GLOBAL MOBILE SHELL ---------- */
  .reference-site-shell {
    width: 100% !important;
    max-width: none !important;
    overflow-x: hidden !important;
  }

  .reference-mobile-header {
    height: 68px !important;
    padding: 6px 14px !important;
  }

  .reference-menu-toggle {
    width: 40px !important;
    height: 40px !important;
    padding: 10px !important;
  }

  .reference-mobile-header .reference-language {
    min-width: 48px !important;
    min-height: 36px !important;
    padding: 0 9px !important;
  }

  .reference-header-nav {
    top: 68px !important;
    max-height: calc(100vh - 68px) !important;
    padding: 8px 14px 14px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }

  .reference-header-nav nav a {
    min-height: 46px !important;
    padding: 10px 4px !important;
    gap: 10px !important;
    font-size: .76rem !important;
  }

  .reference-mobile-actions {
    margin-top: 10px !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .reference-mobile-actions .reference-button {
    width: 100% !important;
    min-height: 44px !important;
  }

  /* ---------- SHARED INNER-PAGE HERO ---------- */
  .products-page .standard-page-hero,
  .case-studies-page .standard-page-hero,
  .capabilities-page .standard-page-hero,
  .about-page .standard-page-hero,
  .contact-page .standard-page-hero {
    padding: 24px 16px 26px !important;
  }

  .products-page .standard-page-hero h1,
  .case-studies-page .standard-page-hero h1,
  .capabilities-page .standard-page-hero h1,
  .about-page .standard-page-hero h1,
  .contact-page .standard-page-hero h1 {
    max-width: 100% !important;
    margin-bottom: 9px !important;
    font-size: clamp(2.05rem, 10vw, 2.65rem) !important;
    line-height: 1.02 !important;
  }

  .products-page .standard-page-hero p:not(.eyebrow),
  .case-studies-page .standard-page-hero p:not(.eyebrow),
  .capabilities-page .standard-page-hero p:not(.eyebrow),
  .about-page .standard-page-hero p:not(.eyebrow),
  .contact-page .standard-page-hero p:not(.eyebrow) {
    max-width: 100% !important;
    font-size: .82rem !important;
    line-height: 1.55 !important;
  }

  .products-page .standard-page-hero .eyebrow,
  .case-studies-page .standard-page-hero .eyebrow,
  .capabilities-page .standard-page-hero .eyebrow,
  .about-page .standard-page-hero .eyebrow,
  .contact-page .standard-page-hero .eyebrow {
    margin-bottom: 8px !important;
    font-size: .62rem !important;
  }

  .products-hero-botanical {
    width: 54vw !important;
    height: 120px !important;
    opacity: .28 !important;
  }

  /* ---------- HOME ---------- */
  .reference-home .reference-hero {
    padding: 28px 16px 24px !important;
  }

  .reference-home .reference-kicker {
    margin-bottom: 8px !important;
    font-size: .58rem !important;
  }

  .reference-home .reference-hero h1 {
    max-width: 350px !important;
    font-size: clamp(2.15rem, 11vw, 2.75rem) !important;
    line-height: 1.01 !important;
  }

  .reference-home .reference-intro {
    max-width: 350px !important;
    margin-top: 12px !important;
    font-size: .82rem !important;
    line-height: 1.55 !important;
  }

  .reference-home .reference-actions {
    margin-top: 16px !important;
    gap: 8px !important;
  }

  .reference-home .reference-actions .home-hero-cta {
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
  }

  /* Show all five trust items without squeezing them into one row. */
  .reference-home .reference-trust {
    width: calc(100% - 24px) !important;
    margin: 0 auto !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    border-radius: 12px !important;
  }

  .reference-home .reference-trust article,
  .reference-home .reference-trust article:nth-child(2) {
    min-height: 82px !important;
    padding: 10px 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    text-align: left !important;
    border-right: 1px solid var(--ref-line) !important;
    border-bottom: 1px solid var(--ref-line) !important;
  }

  .reference-home .reference-trust article:nth-child(even) {
    border-right: 0 !important;
  }

  .reference-home .reference-trust article:nth-child(5) {
    grid-column: 1 / -1 !important;
    min-height: 72px !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
  }

  .reference-home .reference-trust article:nth-child(3),
  .reference-home .reference-trust article:nth-child(4) {
    border-bottom: 1px solid var(--ref-line) !important;
  }

  .reference-home .reference-trust-icon {
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
  }

  .reference-home .reference-trust-icon svg {
    width: 24px !important;
    height: 24px !important;
  }

  .reference-home .reference-trust strong {
    font-size: .66rem !important;
  }

  .reference-home .reference-trust p {
    font-size: .57rem !important;
    line-height: 1.35 !important;
  }

  .reference-home .reference-products {
    padding: 30px 12px 0 !important;
  }

  .reference-home .reference-section > h2,
  .reference-home .reference-process-panel > h2 {
    font-size: 1.48rem !important;
  }

  .reference-home .reference-section-intro {
    max-width: 340px !important;
    padding: 0 !important;
    font-size: .72rem !important;
  }

  .reference-home .category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .reference-home .product-card {
    min-height: 0 !important;
    border-radius: 12px !important;
  }

  .reference-home .product-image {
    height: 145px !important;
    min-height: 145px !important;
    flex-basis: 145px !important;
  }

  .reference-home .product-copy {
    min-height: 102px !important;
    padding: 11px 10px 10px !important;
  }

  .reference-home .product-copy h3 {
    font-size: .86rem !important;
    line-height: 1.08 !important;
  }

  .reference-home .product-copy p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-size: .61rem !important;
    line-height: 1.4 !important;
  }

  .reference-home .reference-process-case {
    margin-top: 30px !important;
    padding: 0 12px 26px !important;
    gap: 12px !important;
  }

  .reference-home .reference-process-panel {
    padding: 20px 12px 18px !important;
    border-radius: 13px !important;
  }

  .reference-home .reference-process {
    margin-top: 14px !important;
  }

  .reference-home .reference-process-note {
    margin-top: 14px !important;
    padding-top: 12px !important;
  }

  .reference-featured-case {
    display: block !important;
  }

  .reference-more-cases {
    position: static !important;
    width: 100% !important;
    margin: 0 0 8px !important;
    display: flex !important;
    justify-content: flex-end !important;
  }

  .reference-featured-case .case-card {
    border-radius: 13px !important;
  }

  .reference-featured-case .case-image {
    min-height: 210px !important;
    height: 210px !important;
  }

  .reference-featured-case .case-copy {
    padding: 18px 16px 19px !important;
  }

  .reference-featured-case .case-copy h3 {
    font-size: 1.24rem !important;
  }

  .reference-featured-case .case-copy > p:not(.case-tag) {
    font-size: .7rem !important;
  }

  .reference-insight-bar {
    width: calc(100% - 24px) !important;
    margin: 0 auto 28px !important;
    border-radius: 12px !important;
  }

  .reference-insight-resource,
  .reference-insight-partnership {
    padding: 16px 14px !important;
  }

  /* ---------- PRODUCTS / CASE STUDIES ---------- */
  .products-page .notice-bar,
  .products-page .rights-note {
    margin-left: 14px !important;
    margin-right: 14px !important;
    padding: 13px 15px !important;
    border-radius: 11px !important;
    font-size: .72rem !important;
    line-height: 1.48 !important;
  }

  .products-page .product-gallery-section,
  .case-studies-page .case-gallery-section {
    padding: 22px 14px 26px !important;
  }

  .products-page .product-category-grid,
  .case-studies-page .case-study-card-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .products-page .product-category-card,
  .case-studies-page .case-study-card-grid .case-card {
    border-radius: 14px !important;
  }

  .products-page .product-category-card .product-copy,
  .case-studies-page .case-study-card-grid .case-copy {
    padding: 17px 16px !important;
  }

  .products-page .product-category-card .product-copy h3,
  .case-studies-page .case-study-card-grid .case-copy h3 {
    font-size: 1.28rem !important;
  }

  .products-page .product-category-card .product-copy p,
  .case-studies-page .case-study-card-grid .case-copy > p {
    font-size: .78rem !important;
    line-height: 1.52 !important;
  }

  .products-page .product-category-card .case-actions,
  .case-studies-page .case-study-card-grid .case-actions {
    width: 100% !important;
    margin-top: 14px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  /* ---------- CAPABILITIES ---------- */
  .capabilities-page .capability-explorer {
    padding: 18px 14px 24px !important;
    gap: 12px !important;
  }

  .capabilities-page .capability-process-panel,
  .capabilities-page .capability-compliance-panel {
    padding: 20px 16px !important;
    border-radius: 16px !important;
  }

  .capabilities-page .capability-explorer header h2 {
    margin-bottom: 18px !important;
    font-size: 1.7rem !important;
    line-height: 1.05 !important;
  }

  .capabilities-page .capability-process-track {
    --capability-process-icon-size: 52px;
    --capability-process-icon-column: 62px;
    --capability-process-column-gap: 14px;
  }

  .capabilities-page .capability-flow-item {
    grid-template-columns: 62px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 14px 0 !important;
  }

  .capabilities-page .capability-flow-image.capability-shared-process-icon {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
  }

  .capabilities-page .capability-flow-image.capability-shared-process-icon svg {
    width: 24px !important;
    height: 24px !important;
  }

  .capabilities-page .capability-flow-copy {
    column-gap: 6px !important;
  }

  .capabilities-page .capability-flow-copy > span {
    font-size: .62rem !important;
  }

  .capabilities-page .capability-flow-copy h3 {
    font-size: 1.02rem !important;
  }

  .capabilities-page .capability-flow-copy p {
    margin-top: 6px !important;
    font-size: .74rem !important;
    line-height: 1.5 !important;
  }

  .capabilities-page .capability-flow-copy .text-button {
    margin-top: 9px !important;
  }

  .capabilities-page .capability-process-cta-row {
    min-height: 44px !important;
    margin-top: 12px !important;
  }

  .capabilities-page .capability-process-cta-row .capability-project-button {
    min-height: 42px !important;
    padding: 0 16px !important;
  }

  .capabilities-page .compliance-list article {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 18px 0 !important;
  }

  .capabilities-page .compliance-list h3 {
    font-size: 1.08rem !important;
  }

  .capabilities-page .compliance-list p {
    font-size: .75rem !important;
    line-height: 1.52 !important;
  }

  .capabilities-page .compliance-list .text-button {
    justify-self: start !important;
    margin-top: 2px !important;
  }

  /* ---------- ABOUT ---------- */
  .about-anchor-nav {
    min-height: 40px !important;
    padding: 7px 14px !important;
    gap: 16px !important;
  }

  .about-anchor-nav a {
    font-size: .64rem !important;
  }

  .about-operating-structure,
  .about-story-timeline {
    padding-top: 24px !important;
    padding-bottom: 26px !important;
  }

  .about-structure-heading {
    margin-bottom: 14px !important;
    gap: 10px !important;
  }

  .about-structure-heading h2,
  .about-story-copy h2 {
    font-size: 1.7rem !important;
  }

  .about-structure-heading > p:last-child,
  .about-story-copy > p:last-child {
    font-size: .78rem !important;
    line-height: 1.55 !important;
  }

  .operating-structure-item {
    padding: 13px 0 !important;
  }

  .operating-structure-item h3 {
    font-size: 1.06rem !important;
  }

  .operating-structure-item p,
  .about-timeline span {
    font-size: .72rem !important;
  }

  .about-timeline > div,
  .about-timeline > div:first-child {
    padding: 10px 0 !important;
  }

  .about-page .about-operate-section,
  .about-page .resources-section,
  .about-page .brand-experience {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .about-page .about-operate-section,
  .about-page .resources-section {
    padding-top: 26px !important;
    padding-bottom: 28px !important;
  }

  .about-page .brand-experience {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  .about-page .brand-experience h2 {
    font-size: 1.45rem !important;
    line-height: 1.12 !important;
  }

  .about-page .brand-experience > p:last-child {
    font-size: .7rem !important;
    line-height: 1.5 !important;
  }

  .about-page .facility-grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .about-page .about-main-card {
    min-height: 0 !important;
    padding: 18px 16px 44px !important;
    border-radius: 14px !important;
  }

  .about-page .section-heading.split-heading {
    display: block !important;
    margin-bottom: 18px !important;
  }

  .about-page .section-heading.split-heading h2 {
    font-size: 1.65rem !important;
  }

  /* ---------- CONTACT ---------- */
  .contact-choice-section {
    padding: 24px 14px 26px !important;
  }

  .contact-section-heading {
    margin-bottom: 16px !important;
  }

  .contact-section-heading h2 {
    font-size: 1.65rem !important;
  }

  .contact-section-heading > p:last-child {
    font-size: .78rem !important;
  }

  .contact-choice-section .contact-choice {
    gap: 10px !important;
  }

  .contact-choice-section .contact-option {
    padding: 19px 17px 18px !important;
    border-radius: 14px !important;
  }

  .contact-choice-section .contact-option h2 {
    font-size: 1.32rem !important;
  }

  .contact-choice-section .contact-option > p {
    font-size: .76rem !important;
  }

  .direct-contact.direct-contact-v9 {
    padding: 24px 14px 26px !important;
    gap: 10px !important;
  }

  .direct-contact-v9 .direct-contact-primary,
  .direct-contact-v9 .contact-location-panel {
    padding: 18px 16px !important;
    border-radius: 14px !important;
  }

  .direct-contact-v9 .direct-contact-primary h2 {
    font-size: 1.55rem !important;
  }

  .contact-location-grid article {
    padding: 16px !important;
  }

  /* ---------- LOWER GREEN CTA BANDS ---------- */
  .products-page .page-lower-cta,
  .case-studies-page .page-lower-cta,
  .capabilities-page .page-lower-cta,
  .about-page .page-lower-cta {
    padding: 24px 16px !important;
    gap: 14px !important;
  }

  .products-page .page-lower-cta h2,
  .case-studies-page .page-lower-cta h2,
  .capabilities-page .page-lower-cta h2,
  .about-page .page-lower-cta h2 {
    font-size: 1.55rem !important;
    line-height: 1.08 !important;
  }

  .products-page .page-lower-cta-copy,
  .case-studies-page .page-lower-cta-copy,
  .capabilities-page .page-lower-cta-copy,
  .about-page .page-lower-cta-copy {
    margin-top: 7px !important;
    font-size: .74rem !important;
  }

  .products-page .page-lower-cta > .button,
  .case-studies-page .page-lower-cta > .button,
  .capabilities-page .page-lower-cta > .button,
  .about-page .page-lower-cta > .button {
    min-height: 44px !important;
    padding: 0 18px !important;
  }

  /* ---------- POPUPS / FORMS ---------- */
  .detail-modal,
  .inquiry-modal.inquiry-modal-stacked {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    max-height: calc(100vh - 20px) !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 18px !important;
    border-radius: 18px !important;
  }

  .catalog-main-detail-card,
  .case-detail-hero.catalog-main-detail-card {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .catalog-main-detail-card > figure {
    border-radius: 12px !important;
  }

  .catalog-main-detail-card > figure img {
    min-height: 0 !important;
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }

  .catalog-main-detail-card h2,
  .about-resource-modal h2,
  .detail-selected-heading h2 {
    font-size: 1.7rem !important;
    line-height: 1.08 !important;
  }

  .field-values p,
  .capability-popup-card-copy p,
  .about-resource-modal article p {
    font-size: .78rem !important;
    line-height: 1.52 !important;
  }

  .catalog-child-grid,
  .category-product-list.catalog-child-grid,
  .case-grid.catalog-child-grid,
  .capability-popup-detail-grid,
  .about-popup-detail-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .catalog-child-card {
    border-radius: 13px !important;
  }

  .process-selector-strip,
  .capability-selector-strip,
  .about-selector-strip {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .process-selector-card,
  .quality-selector-card,
  .about-selector-card-text {
    min-height: 0 !important;
    height: auto !important;
  }

  .catalog-pagination {
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 4px 2px 6px !important;
    overflow-x: auto !important;
  }

  .catalog-pagination .text-button {
    flex: 0 0 auto !important;
    min-height: 32px;
  }

  .inquiry-type-bar {
    padding: 16px 44px 12px 12px !important;
    gap: 6px !important;
  }

  .inquiry-form-panel {
    padding: 20px 4px 24px !important;
  }

  .inquiry-form-heading {
    margin-bottom: 18px !important;
  }

  .inquiry-form-heading h2 {
    font-size: 1.75rem !important;
  }

  .inquiry-modal-stacked .field input,
  .inquiry-modal-stacked .field select,
  .inquiry-modal-stacked .field textarea {
    font-size: 16px !important;
  }

  /* ---------- PRIVACY ---------- */
  .legal-page {
    padding: 28px 16px 38px !important;
  }

  .legal-page h1 {
    margin-bottom: 16px !important;
    font-size: 2.2rem !important;
    line-height: 1.05 !important;
  }

  .legal-page h2 {
    margin-top: 26px !important;
    margin-bottom: 8px !important;
    font-size: 1.18rem !important;
  }

  .legal-page p {
    font-size: .8rem !important;
    line-height: 1.6 !important;
  }

  /* ---------- FOOTER ---------- */
  .reference-footer .footer-top {
    padding: 18px 16px 14px !important;
    gap: 12px !important;
  }

  .reference-footer .footer-brand > p,
  .reference-footer .footer-top p,
  .reference-footer .footer-top a,
  .reference-footer-cta > span {
    font-size: .7rem !important;
    line-height: 1.5 !important;
  }

  .reference-footer .footer-top > div:nth-child(2) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 16px !important;
    row-gap: 4px !important;
  }

  .reference-footer .footer-top > div:nth-child(2) h3 {
    grid-column: 1 / -1 !important;
  }

  .reference-footer .reference-footer-cta {
    padding: 15px 14px !important;
    border-radius: 12px !important;
  }

  .reference-footer .reference-footer-cta h2 {
    font-size: 1.2rem !important;
  }

  .reference-footer .reference-footer-cta .reference-button {
    min-height: 42px !important;
  }

  .reference-footer .footer-bottom {
    min-height: 0 !important;
    padding: 9px 16px 11px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: start !important;
    gap: 5px !important;
    font-size: .6rem !important;
  }
}

/* frontend/app/v9-adjustments-8.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinements — mobile spacing + shared image numbering.
   Desktop/tablet changes in this file are limited to the two explicitly shared requests:
   1) Home Buyer Resources / Client Partnerships More alignment;
   2) image sequence badges on Product / Case and detail popup imagery. */

/* ---------- SHARED: HOME INSIGHT MORE ALIGNMENT ---------- */
.reference-insight-resource > div > .text-button,
.reference-insight-partnership > div > .text-button {
  top: 18px !important;
  right: 0 !important;
}

/* ---------- SHARED: IMAGE SEQUENCE BADGES ---------- */
.product-image,
.case-image,
.indexed-media {
  position: relative;
}

.image-index,
.media-sequence {
  position: absolute !important;
  z-index: 4;
  top: 12px !important;
  right: 12px !important;
  left: auto !important;
  width: 32px;
  height: 32px;
  display: grid !important;
  place-items: center;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--green) !important;
  background: rgba(255, 250, 241, .92) !important;
  border: 1px solid rgba(22, 60, 45, .14) !important;
  border-radius: 50% !important;
  box-shadow: 0 3px 10px rgba(22, 60, 45, .08);
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  pointer-events: none;
}

.indexed-media {
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.catalog-child-card > .indexed-media {
  width: 100%;
  aspect-ratio: 4 / 3;
  flex: 0 0 auto;
  background: #ece8dd;
}

.catalog-child-card > .indexed-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.catalog-main-detail-card > figure.indexed-media {
  position: relative;
}

/* ---------- MOBILE ONLY ---------- */
@media (max-width: 760px) {
  /* HOME: More Case Studies moves into the lower-right of the Case Study card,
     sharing the same bottom action line as Case Detail. */
  .reference-featured-case {
    position: relative !important;
  }

  .reference-featured-case .case-copy {
    min-height: 178px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .reference-featured-case .case-actions {
    width: 100% !important;
    margin-top: auto !important;
    padding-top: 12px !important;
    padding-right: 142px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .reference-more-cases {
    position: absolute !important;
    z-index: 6 !important;
    right: 16px !important;
    bottom: 19px !important;
    top: auto !important;
    width: auto !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    white-space: nowrap !important;
  }

  /* HOME insight links: keep More on the H2 title line on narrow screens too. */
  .reference-insight-resource > div > .text-button,
  .reference-insight-partnership > div > .text-button {
    top: 18px !important;
  }

  /* CAPABILITIES: tighter, more even vertical rhythm. */
  .capabilities-page .capability-process-panel header .eyebrow,
  .capabilities-page .capability-compliance-panel header .eyebrow {
    margin-bottom: 6px !important;
  }

  .capabilities-page .capability-explorer header h2 {
    margin-bottom: 14px !important;
    line-height: 1.03 !important;
  }

  .capabilities-page .capability-flow-item {
    padding-top: 11px !important;
    padding-bottom: 11px !important;
  }

  .capabilities-page .capability-flow-copy h3 {
    line-height: 1.14 !important;
  }

  .capabilities-page .capability-flow-copy p {
    margin-top: 5px !important;
    line-height: 1.42 !important;
  }

  .capabilities-page .capability-flow-copy .text-button {
    margin-top: 7px !important;
  }

  .capabilities-page .capability-process-cta-row {
    margin-top: 9px !important;
  }

  .capabilities-page .compliance-list article {
    gap: 6px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  .capabilities-page .compliance-scope {
    margin-bottom: 5px !important;
  }

  .capabilities-page .compliance-list h3 {
    margin-bottom: 6px !important;
    line-height: 1.14 !important;
  }

  .capabilities-page .compliance-list p {
    line-height: 1.44 !important;
  }

  /* ABOUT: reduce excess vertical spacing while keeping sections readable. */
  .about-page .about-structure-heading .eyebrow,
  .about-page .about-story-copy .eyebrow,
  .about-page .about-operate-section .eyebrow,
  .about-page .brand-experience .eyebrow,
  .about-page .resources-section .eyebrow {
    margin-bottom: 6px !important;
  }

  .about-page .about-structure-heading h2,
  .about-page .about-story-copy h2,
  .about-page .about-operate-section .section-heading h2,
  .about-page .resources-section .section-heading h2 {
    line-height: 1.06 !important;
  }

  .about-page .about-structure-heading > p:last-child,
  .about-page .about-story-copy > p:last-child,
  .about-page .about-operate-section .section-heading > p:last-child,
  .about-page .operating-structure-item p,
  .about-page .facilities-panel .about-main-card > p,
  .about-page .brand-experience > p:last-child {
    line-height: 1.44 !important;
  }

  .about-page .operating-structure-item,
  .about-page .operating-structure-item + .operating-structure-item {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  .about-page .operating-structure-item h3 {
    margin-bottom: 5px !important;
    line-height: 1.14 !important;
  }

  .about-page .about-timeline > div,
  .about-page .about-timeline > div:first-child {
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  .about-page .about-timeline strong {
    margin-bottom: 4px !important;
  }

  .about-page .about-timeline span {
    line-height: 1.35 !important;
  }

  .about-page .facilities-panel .about-main-card {
    padding-top: 16px !important;
    padding-bottom: 44px !important;
  }

  .about-page .facilities-panel .about-main-card .about-card-subtitle {
    margin-top: 7px !important;
    margin-bottom: 6px !important;
    line-height: 1.16 !important;
  }

  .about-page .resources-section {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  .about-page .resource-scroll article {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  /* Buyer Resources question text: one visual step smaller on mobile only. */
  .about-page #resources .resource-scroll article h3 {
    font-size: .78rem !important;
    line-height: 1.34 !important;
  }

  /* FOOTER: compact line height and block spacing. */
  .reference-footer .footer-top {
    gap: 7px !important;
  }

  .reference-footer .footer-brand > p {
    margin-top: 4px !important;
    margin-bottom: 0 !important;
    line-height: 1.34 !important;
  }

  .reference-footer .footer-top h3 {
    margin-bottom: 4px !important;
    line-height: 1.18 !important;
  }

  .reference-footer .footer-top p,
  .reference-footer .footer-top a {
    margin-bottom: 2px !important;
    line-height: 1.34 !important;
  }

  .reference-footer .reference-footer-cta {
    padding-top: 13px !important;
    padding-bottom: 13px !important;
  }

  .reference-footer .reference-footer-cta > p {
    margin-bottom: 4px !important;
  }

  .reference-footer .reference-footer-cta h2 {
    line-height: 1.08 !important;
  }

  .reference-footer .reference-footer-cta > span {
    margin-top: 5px !important;
    margin-bottom: 8px !important;
    line-height: 1.34 !important;
  }

  .reference-footer .footer-bottom {
    gap: 4px !important;
    line-height: 1.3 !important;
  }

  /* Slightly smaller sequence badge on phones. */
  .image-index,
  .media-sequence {
    top: 10px !important;
    right: 10px !important;
    width: 30px !important;
    height: 30px !important;
    font-size: .64rem !important;
  }
}

/* frontend/app/v9-adjustments-9.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 mobile refinement pass 03 — footer Explore + About Buyer Resources spacing.
   MOBILE ONLY. Desktop remains unchanged. */

@media (max-width: 760px) {
  /* Footer / Explore: reduce excessive vertical gaps between navigation links. */
  .reference-footer .footer-top > div:nth-child(2) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: start !important;
    gap: 0 !important;
  }

  .reference-footer .footer-top > div:nth-child(2) h3 {
    margin: 0 0 4px !important;
  }

  .reference-footer .footer-top > div:nth-child(2) a {
    margin: 0 !important;
    padding: 2px 0 !important;
    line-height: 1.2 !important;
  }

  /* About / Buyer Resources: tighter row rhythm and cleaner question spacing. */
  .about-page #resources .resource-scroll {
    gap: 0 !important;
  }

  .about-page #resources .resource-scroll article {
    min-height: 0 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    row-gap: 4px !important;
    column-gap: 8px !important;
  }

  .about-page #resources .resource-scroll article > span {
    align-self: center !important;
  }

  .about-page #resources .resource-scroll article h3 {
    margin: 0 !important;
    line-height: 1.26 !important;
  }

  .about-page #resources .resource-scroll article .text-button {
    margin-top: 2px !important;
    line-height: 1.2 !important;
  }
}

/* frontend/app/v9-adjustments-10.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 refinement — About Client Partnerships / Buyer Resources.
   Shared desktop + mobile adjustment explicitly requested by user.
   Preserve original stacked action layout: sequence | content, with action on a new line below content and aligned right. */

.about-page .resource-scroll article {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  column-gap: 14px !important;
  row-gap: 4px !important;
  align-items: start !important;
}

.about-page .resource-scroll article > span {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  align-self: center !important;
}

.about-page .resource-scroll article > div {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
}

.about-page .resource-scroll article > .text-button {
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;
  justify-self: end !important;
  margin: 2px 0 0 !important;
  white-space: nowrap !important;
}

/* Client Partnerships: tighter internal text rhythm. */
.about-page .partnership-section .testimonial-scroll article > div {
  display: grid !important;
  gap: 3px !important;
}

.about-page .partnership-section .testimonial-scroll article > div > p {
  margin: 0 !important;
  line-height: 1.25 !important;
}

.about-page .partnership-section .testimonial-scroll article h3 {
  margin: 0 !important;
  line-height: 1.22 !important;
}

.about-page .partnership-section .testimonial-scroll article small {
  display: block !important;
  margin: 0 !important;
  line-height: 1.34 !important;
}

/* Buyer Resources: compact question rhythm; Read guide stays below and right-aligned. */
.about-page #resources .resource-scroll article h3 {
  margin: 0 !important;
  line-height: 1.28 !important;
}

@media (max-width: 760px) {
  .about-page .resource-scroll article {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    column-gap: 8px !important;
    row-gap: 3px !important;
  }

  .about-page .resource-scroll article > .text-button {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    margin-top: 1px !important;
    font-size: .66rem !important;
  }

  .about-page .partnership-section .testimonial-scroll article > div {
    gap: 2px !important;
  }

  .about-page .partnership-section .testimonial-scroll article > div > p {
    line-height: 1.2 !important;
  }

  .about-page .partnership-section .testimonial-scroll article h3 {
    line-height: 1.18 !important;
  }

  .about-page .partnership-section .testimonial-scroll article small {
    line-height: 1.28 !important;
  }

  .about-page #resources .resource-scroll article h3 {
    line-height: 1.24 !important;
  }
}

/* frontend/app/v9-adjustments-11.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 refinement — Capabilities six-process Detail alignment.
   Shared desktop + mobile adjustment explicitly requested by user.
   Keep Detail below each process description; move only from left to right. */

.capabilities-page .capability-process-panel .capability-flow-copy > .text-button {
  grid-column: 1 / -1 !important;
  width: fit-content !important;
  margin-left: auto !important;
  justify-self: end !important;
  align-self: start !important;
  text-align: right !important;
}

/* frontend/app/v9-adjustments-12.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 refinement — Capabilities Quality Detail alignment.
   Shared desktop + mobile: keep each Detail below the Quality copy and right-align it at the lower-right. */

.capabilities-page .capability-compliance-panel .compliance-list article {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto !important;
  row-gap: 0 !important;
  align-items: start !important;
}

.capabilities-page .capability-compliance-panel .compliance-list article > div {
  grid-column: 1 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
}

.capabilities-page .capability-compliance-panel .compliance-list article > .text-button {
  grid-column: 1 !important;
  grid-row: 2 !important;
  justify-self: end !important;
  align-self: end !important;
  margin: 10px 0 0 !important;
  white-space: nowrap !important;
}

@media (max-width: 760px) {
  .capabilities-page .capability-compliance-panel .compliance-list article > .text-button {
    justify-self: end !important;
    margin-top: 7px !important;
  }
}

/* frontend/app/v9-adjustments-13.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 refinement — desktop Capabilities six-process vertical rhythm.
   DESKTOP ONLY: move Detail 10px closer to the description and tighten process spacing. */

@media (min-width: 761px) {
  .capabilities-page .capability-process-panel .capability-flow-item {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  .capabilities-page .capability-process-panel .capability-flow-copy > h3 {
    line-height: 1.14 !important;
  }

  .capabilities-page .capability-process-panel .capability-flow-copy > p {
    margin-top: 6px !important;
    line-height: 1.48 !important;
  }

  .capabilities-page .capability-process-panel .capability-flow-copy > .text-button {
    margin-top: 4px !important;
  }
}

/* frontend/app/v9-adjustments-14.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 — approved full transparent logo integration.
   V4 asset is server-rebuilt from validated chunks, SHA-256 verified, and Pillow full-decode verified before deployment.
   Complete logo (mark + SILVERWOOD wordmark) is used in desktop header, mobile header and footer.
   Reset all legacy clipping/masking/positioning so the full transparent asset is always visible. */
.reference-brand,
.reference-mobile-brand,
.reference-footer .footer-brand-icon {
  background: transparent !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  mask: none !important;
  -webkit-mask: none !important;
}

.reference-brand {
  width: 110px !important;
  height: 78px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
.reference-brand img,
.reference-mobile-brand img,
.reference-footer .footer-brand-icon img {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  margin: 0 !important;
  clip: auto !important;
  clip-path: none !important;
  mask: none !important;
  -webkit-mask: none !important;
  object-fit: contain !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}
.reference-brand img {
  width: 96px !important;
  height: 70px !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-position: left center !important;
}

.reference-mobile-brand {
  width: 84px !important;
  height: 60px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.reference-mobile-brand img {
  width: 72px !important;
  height: 54px !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-position: center !important;
}

.reference-footer .footer-brand-icon {
  width: 56px !important;
  height: 42px !important;
  flex: 0 0 56px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
.reference-footer .footer-brand-icon img {
  width: 56px !important;
  height: 42px !important;
  max-width: 100% !important;
  max-height: 100% !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  object-position: left center !important;
}

/* frontend/app/v9-adjustments-15.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 typography alignment / Home Hero refinement — 2026-08-25
   Shared scope: Home H1/H2/H3 inherit the same sans-serif family as Products / Case Studies.
   Hero-only refinement: add a stronger 630 weight and slightly tighter tracking.
   Hero size and line height, other Home headings, blockquotes, header/footer decorative type,
   and all layout rules remain unchanged. */

.reference-home h1,
.reference-home h2,
.reference-home h3 {
  font-family: inherit;
}

.reference-home .reference-hero h1 {
  font-weight: 630;
  letter-spacing: -.035em;
}

/* frontend/app/v9-adjustments-16.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinement — 2026-08-25
   Scope:
   1) Header company-name typography follows the Footer company-name sans-serif treatment,
      with the Chinese company name added as a second line.
   2) Home Buyer Resources / Client Partnership More links align with the red kicker line.
   Shared by English and zh-CN; no content/layout redesign. */

/* HEADER COMPANY LOCKUP */
.reference-positioning strong {
  font-family: inherit !important;
  font-weight: 800;
  letter-spacing: 0;
}

.reference-positioning .reference-company-name-zh {
  display: block;
  margin-top: -1px;
  color: var(--ref-green);
  font-family: inherit;
  font-size: .62rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .04em;
}

/* HOME INSIGHT MORE: align with the red section kicker, not the H2 line. */
.reference-insight-resource > div > .text-button,
.reference-insight-partnership > div > .text-button {
  top: -2px !important;
}

@media (max-width: 760px) {
  .reference-insight-resource > div > .text-button,
  .reference-insight-partnership > div > .text-button {
    top: -2px !important;
  }
}

/* frontend/app/v9-adjustments-17.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinement — 2026-08-26
   Scope:
   1) Tighten desktop header vertical rhythm, enlarge the Chinese company name one step,
      and slightly reduce total header height without changing the logo size.
   2) Put Home Buyer Resources / Client Partnership More links on the same structural
      baseline as their red kicker labels instead of positioning them with top offsets. */

/* ---------- HEADER ---------- */
.reference-header-top {
  min-height: 88px;
  padding-top: 5px;
  padding-bottom: 5px;
}

.reference-positioning {
  gap: 2px;
  align-content: center;
}

.reference-positioning strong {
  line-height: 1.02;
}

.reference-positioning .reference-company-name-zh {
  margin-top: 0;
  font-size: .70rem;
  line-height: 1.05;
}

.reference-positioning b {
  line-height: 1.1;
}

.reference-positioning span {
  line-height: 1.22;
}

/* ---------- HOME INSIGHT KICKER + MORE: SAME ROW / SAME BASELINE ---------- */
.reference-insight-kicker-row {
  width: 100%;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.reference-insight-kicker-row > p {
  margin: 0;
}

.reference-insight-resource .reference-insight-kicker-row > .text-button {
  position: static !important;
  top: auto !important;
  right: auto !important;
  flex: 0 0 auto;
  align-self: baseline;
  line-height: 1.1;
}

.reference-insight-partnership > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 12px;
  align-items: baseline;
}

.reference-insight-partnership > div > p {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
}

.reference-insight-partnership > div > .text-button {
  position: static !important;
  top: auto !important;
  right: auto !important;
  grid-column: 2;
  grid-row: 1;
  justify-self: end;
  align-self: baseline;
  line-height: 1.1;
}

.reference-insight-partnership > div > h2,
.reference-insight-partnership > div > .home-insight-link {
  grid-column: 1 / -1;
}

@media (max-width: 760px) {
  .reference-insight-kicker-row,
  .reference-insight-partnership > div {
    column-gap: 8px;
  }
}

/* frontend/app/v9-adjustments-18.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinement — 2026-08-26
   Scope:
   1) Home Buyer Resources / Client Partnership kicker + More visual consistency.
   2) Replace the language-switch button look with a lightweight globe + target-language link.
   3) Give every bottom BACK action a consistent safe distance from the modal bottom edge. */

/* ---------- HOME INSIGHT: ORANGE KICKERS + MORE, SAME SIZE ---------- */
.reference-insight-resource .reference-insight-kicker-row > p,
.reference-insight-partnership > div > p,
.reference-insight-resource .reference-insight-kicker-row > .text-button,
.reference-insight-partnership > div > .text-button {
  color: var(--ref-rust) !important;
  font-size: .76rem !important;
  line-height: 1.1 !important;
}

.reference-insight-resource .reference-insight-kicker-row > p,
.reference-insight-partnership > div > p {
  font-weight: 900;
  letter-spacing: .12em;
}

.reference-insight-resource .reference-insight-kicker-row > .text-button,
.reference-insight-partnership > div > .text-button {
  font-weight: 850;
}

/* ---------- LANGUAGE SWITCH: LIGHTWEIGHT DIRECT TOGGLE ---------- */
.reference-language {
  min-width: 0 !important;
  min-height: 32px !important;
  padding: 2px 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px;
  color: var(--ref-green) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: .68rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.reference-language svg {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  color: var(--ref-brown);
}

.reference-language > span {
  padding-bottom: 2px;
  border-bottom: 1px solid transparent;
}

.reference-language:hover,
.reference-language:focus-visible {
  color: var(--ref-rust) !important;
}

.reference-language:hover > span,
.reference-language:focus-visible > span {
  border-bottom-color: currentColor;
}

/* ---------- ALL POPUPS: CONSISTENT BOTTOM BACK SAFE AREA ---------- */
.detail-modal,
.inquiry-modal {
  padding-bottom: 26px !important;
}

.modal-back-button {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  width: fit-content;
  margin: 24px auto 0 !important;
}

@media (max-width: 760px) {
  .reference-mobile-header .reference-language {
    min-width: 0 !important;
    min-height: 36px !important;
    padding: 0 2px !important;
    font-size: .69rem !important;
  }

  .reference-language svg {
    width: 16px;
    height: 16px;
    flex-basis: 16px;
  }

  .detail-modal,
  .inquiry-modal {
    padding-bottom: 22px !important;
  }

  .modal-back-button {
    margin-top: 20px !important;
  }
}

/* frontend/app/v9-adjustments-19.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 modal interaction rule — 2026-08-26
   All public modal backdrops remain at the highest UI layer.
   Backdrop clicks are intentionally inert; users exit through BACK controls or Escape.
   When two portal modals coexist, the later-mounted sibling wins by DOM order.
   Development deployment trigger recorded after source-level build verification. */
body > .modal-backdrop {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483000 !important;
  isolation: isolate;
  pointer-events: auto;
}

body > .modal-backdrop > .detail-modal,
body > .modal-backdrop > .inquiry-modal {
  position: relative;
  z-index: 1;
}

/* frontend/app/v9-adjustments-20.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinement — 2026-08-26
   Scope: Home What We Make numbering removal and desktop header spacing/text balance. */

/* Home only: remove image number badges from What We Make cards.
   Products page and popup numbering remain unchanged. */
.reference-products .category-grid .image-index {
  display: none !important;
}

@media (min-width: 761px) {
  /* Move the complete company/positioning copy block 10px closer to the logo. */
  .reference-positioning {
    margin-left: -10px;
  }

  /* Keep the four trust labels as balanced two-line lockups beside their icons. */
  .reference-header-trust {
    gap: 14px;
  }

  .reference-header-trust > span {
    width: 78px;
    grid-template-columns: 27px minmax(0, 1fr);
    gap: 5px;
  }

  .reference-header-trust-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1px;
    line-height: 1.08;
  }

  .reference-header-trust-copy > span {
    display: block;
    white-space: nowrap;
  }

  /* English desktop Home Hero only: reduce the tall first-screen rhythm.
     A slightly wider copy column and smaller title prevent the English line breaks
     from forcing the image/row to ~650px high. The image remains cover-cropped,
     never geometrically stretched. Chinese Hero remains unchanged. */
  html:lang(en) .reference-home .reference-hero {
    min-height: 540px !important;
    padding: 30px 34px 78px 48px !important;
    grid-template-columns: 44% 56% !important;
  }

  html:lang(en) .reference-home .reference-hero-copy {
    padding-top: 0 !important;
  }

  html:lang(en) .reference-home .reference-hero h1 {
    max-width: 590px !important;
    font-size: clamp(2.85rem, 3.85vw, 4rem) !important;
    line-height: .99 !important;
  }

  html:lang(en) .reference-home .reference-intro {
    max-width: 560px !important;
    margin-top: 14px !important;
  }

  html:lang(en) .reference-home .reference-actions {
    margin-top: 14px !important;
  }

  html:lang(en) .reference-home .reference-hero-visual {
    min-height: 0 !important;
    height: 410px !important;
    align-self: center !important;
  }

  html:lang(en) .reference-home .reference-hero-visual img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* Six-step Home Process: keep the frozen 1-2-3 / 6-5-4 route, but make the
     icon container truly square and remove excess vertical room inside the card. */
  .reference-home .reference-process-panel {
    padding: 22px 22px 16px !important;
  }

  .reference-home .reference-process-panel .reference-process {
    --process-icon-size: 48px;
    --process-row-height: 100px;
    --process-gap-y: 12px;
    min-height: 0 !important;
    height: auto !important;
    margin-top: 14px !important;
    padding-top: 4px !important;
  }

  .reference-home .reference-process-panel .reference-process article {
    min-height: 0 !important;
    height: var(--process-row-height) !important;
    justify-content: flex-start !important;
  }

  .reference-home .reference-process-panel .reference-process-icon {
    width: var(--process-icon-size) !important;
    height: var(--process-icon-size) !important;
    min-width: var(--process-icon-size) !important;
    min-height: var(--process-icon-size) !important;
    max-width: var(--process-icon-size) !important;
    max-height: var(--process-icon-size) !important;
    flex: 0 0 var(--process-icon-size) !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 auto 6px !important;
    box-shadow: 0 0 0 5px rgba(255, 250, 242, .96) !important;
  }

  .reference-home .reference-process-panel .reference-process-icon svg {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    max-width: 22px !important;
    max-height: 22px !important;
    aspect-ratio: 1 / 1 !important;
  }

  .reference-home .reference-process-panel .reference-process strong {
    line-height: 1.24 !important;
  }

  .reference-home .reference-process-note {
    position: static !important;
    top: auto !important;
    margin-top: 12px !important;
    padding-top: 12px !important;
  }

  .reference-home .reference-process-detail {
    margin-top: 6px !important;
  }
}

@media (max-width: 760px) {
  /* Shared EN/ZH mobile Process compaction; Home Hero mobile geometry is untouched. */
  .reference-home .reference-process-panel {
    padding: 18px 12px 14px !important;
  }

  .reference-home .reference-process-panel .reference-process {
    --process-icon-size: 42px;
    --process-row-height: 104px;
    --process-gap-y: 10px;
    min-height: 0 !important;
    height: auto !important;
    margin-top: 10px !important;
    padding-top: 3px !important;
  }

  .reference-home .reference-process-panel .reference-process article {
    min-height: 0 !important;
    height: var(--process-row-height) !important;
    justify-content: flex-start !important;
  }

  .reference-home .reference-process-panel .reference-process-icon {
    width: var(--process-icon-size) !important;
    height: var(--process-icon-size) !important;
    min-width: var(--process-icon-size) !important;
    min-height: var(--process-icon-size) !important;
    max-width: var(--process-icon-size) !important;
    max-height: var(--process-icon-size) !important;
    flex: 0 0 var(--process-icon-size) !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 auto 5px !important;
  }

  .reference-home .reference-process-panel .reference-process-icon svg {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    aspect-ratio: 1 / 1 !important;
  }

  .reference-home .reference-process-note {
    position: static !important;
    top: auto !important;
    margin-top: 10px !important;
    padding-top: 9px !important;
  }
}

/* Desktop Home Process + Case are intentionally no longer height-coupled.
   The Process panel may become shorter as its internal spacing is tightened,
   while the featured Case Study retains the pre-compaction visual height/crop. */
@media (min-width: 761px) {
  .reference-home .reference-process-case {
    align-items: start !important;
  }

  .reference-home .reference-process-panel {
    height: auto !important;
    align-self: start !important;
  }

  html:lang(en) .reference-home .reference-featured-case {
    --featured-case-height: calc(529px + clamp(26px, 3vw, 44px));
  }

  html:lang(zh-CN) .reference-home .reference-featured-case {
    --featured-case-height: calc(506px + clamp(26px, 3vw, 44px));
  }

  .reference-home .reference-featured-case {
    height: var(--featured-case-height) !important;
    min-height: var(--featured-case-height) !important;
    align-self: start !important;
  }

  .reference-home .reference-featured-case .case-home,
  .reference-home .reference-featured-case .case-card {
    height: 100% !important;
    min-height: 0 !important;
  }
}

/* frontend/app/v9-adjustments-21.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 incremental refinement — 2026-08-26
   Scope: simplify the five Home trust points beneath Hero to icon + balanced two-line title. */

.reference-home .reference-trust {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.reference-home .reference-trust > article {
  min-height: 98px;
  padding: 13px 10px 12px;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto !important;
  justify-items: center !important;
  align-content: center !important;
  gap: 8px !important;
  text-align: center;
}

.reference-home .reference-trust-icon {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: grid !important;
  place-items: center;
  align-self: end;
}

.reference-home .reference-trust-icon svg {
  width: 31px;
  height: 31px;
}

.reference-home .reference-trust strong {
  grid-column: 1 !important;
  grid-row: 2 !important;
  width: 100%;
  max-width: 180px;
  min-height: 2.35em;
  margin: 0 !important;
  display: grid !important;
  place-items: center;
  align-self: start;
  color: #21372c;
  font-size: .82rem;
  line-height: 1.18;
  text-align: center;
  text-wrap: balance;
}

.reference-home .reference-trust p {
  display: none !important;
}

:lang(zh-CN) .reference-home .reference-trust strong {
  max-width: 5.3em;
  line-height: 1.25;
  word-break: break-all;
}

@media (max-width: 760px) {
  .reference-home .reference-trust {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .reference-home .reference-trust > article,
  .reference-home .reference-trust > article:nth-child(2) {
    display: grid !important;
    grid-column: span 2 !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    width: auto !important;
    min-height: 92px;
    padding: 10px 2px;
    text-align: center;
    border-right: 1px solid var(--ref-line);
  }

  .reference-home .reference-trust > article:nth-child(-n+3) { border-bottom: 1px solid var(--ref-line); }
  .reference-home .reference-trust > article:nth-child(3) { border-right: 0; }
  .reference-home .reference-trust > article:nth-child(4) { grid-column: 2 / span 2 !important; }
  .reference-home .reference-trust > article:nth-child(5) { grid-column: 4 / span 2 !important; border-right: 0; }

  .reference-home .reference-trust-icon {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 31px !important;
    height: 31px !important;
    flex-basis: 31px;
    display: grid !important;
    place-items: center;
    align-self: end;
  }

  .reference-home .reference-trust-icon svg { width: 25px; height: 25px; }

  .reference-home .reference-trust strong {
    grid-column: 1 !important;
    grid-row: 2 !important;
    max-width: 128px;
    min-height: 2.4em;
    font-size: .58rem;
    line-height: 1.2;
    letter-spacing: -.01em;
    text-wrap: wrap;
  }

  :lang(en) .reference-home .reference-trust > article:nth-child(5) strong {
    font-size: .51rem;
    letter-spacing: -.025em;
  }

  :lang(zh-CN) .reference-home .reference-trust strong {
    max-width: 5.3em;
    font-size: .66rem;
    letter-spacing: 0;
  }
}

@container (max-width: 760px) {
  .reference-home .reference-trust {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }

  .reference-home .reference-trust > article,
  .reference-home .reference-trust > article:nth-child(2) {
    display: grid !important;
    grid-column: span 2 !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    width: auto !important;
    min-height: 92px;
    padding: 10px 2px;
    text-align: center;
    border-right: 1px solid var(--ref-line);
  }

  .reference-home .reference-trust > article:nth-child(-n+3) { border-bottom: 1px solid var(--ref-line); }
  .reference-home .reference-trust > article:nth-child(3) { border-right: 0; }
  .reference-home .reference-trust > article:nth-child(4) { grid-column: 2 / span 2 !important; }
  .reference-home .reference-trust > article:nth-child(5) { grid-column: 4 / span 2 !important; border-right: 0; }

  .reference-home .reference-trust-icon {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 31px !important;
    height: 31px !important;
    flex-basis: 31px;
    display: grid !important;
    place-items: center;
    align-self: end;
  }

  .reference-home .reference-trust-icon svg { width: 25px; height: 25px; }

  .reference-home .reference-trust strong {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100%;
    max-width: 128px;
    min-height: 2.4em;
    margin: 0 !important;
    display: grid !important;
    place-items: center;
    align-self: start;
    font-size: .58rem;
    line-height: 1.2;
    letter-spacing: -.01em;
    text-align: center;
    text-wrap: wrap;
  }

  :lang(en) .reference-home .reference-trust > article:nth-child(5) strong {
    font-size: .51rem;
    letter-spacing: -.025em;
  }

  :lang(zh-CN) .reference-home .reference-trust strong {
    max-width: 5.3em;
    font-size: .66rem;
    letter-spacing: 0;
    word-break: break-all;
  }
}

/* Pre-launch no-visual optimization pack — kept in this already-bundled file so
   Vinext/Vite reliably includes the rules in the public CSS asset. */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 699px) {
  .product-category-grid,
  .case-study-card-grid {
    grid-template-columns: 1fr !important;
  }

  .product-category-grid > :nth-child(n + 2),
  .case-study-card-grid > :nth-child(n + 2) {
    display: none !important;
  }

  /* The existing card stylesheet also sets display with !important. These
     page-scoped selectors intentionally win the cascade on the SSR first paint. */
  html body .products-page .product-gallery-section .product-category-grid > article.product-category-card:nth-child(n + 2),
  html body .case-studies-page .case-gallery-section .case-study-card-grid > article.case-card:nth-child(n + 2) {
    display: none !important;
  }
}

@media (min-width: 700px) and (max-width: 1099px) {
  .product-category-grid,
  .case-study-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .product-category-grid > :nth-child(n + 3),
  .case-study-card-grid > :nth-child(n + 3) {
    display: none !important;
  }

  html body .products-page .product-gallery-section .product-category-grid > article.product-category-card:nth-child(n + 3),
  html body .case-studies-page .case-gallery-section .case-study-card-grid > article.case-card:nth-child(n + 3) {
    display: none !important;
  }
}

.reference-home .text-button,
.product-copy .text-button,
.case-actions .text-button,
.capability-explorer .text-button,
.resource-scroll .text-button,
.about-anchor-nav a {
  position: relative;
}

.reference-home .text-button::after,
.product-copy .text-button::after,
.case-actions .text-button::after,
.capability-explorer .text-button::after,
.resource-scroll .text-button::after,
.about-anchor-nav a::after {
  content: "";
  position: absolute;
  inset: -7px -6px;
}

.catalog-pagination .text-button {
  min-width: 32px;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 7px;
}

.status-page {
  min-height: 54vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.status-page > p:not(.eyebrow) {
  max-width: 680px;
}

.status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

/* frontend/app/v9-adjustments-22.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 homepage Case Study correction — 2026-08-26
   Restore the confirmed desktop Home Process + selected Case Study equal-height rule.
   The preceding Process compaction should shorten the whole paired row; the featured
   Case Study must not preserve an older standalone fixed height. Scope is Home desktop only. */

@media (min-width: 761px) {
  .reference-home .reference-process-case {
    align-items: stretch !important;
  }

  .reference-home .reference-process-panel {
    height: auto !important;
    align-self: stretch !important;
  }

  .reference-home .reference-featured-case {
    height: auto !important;
    min-height: 0 !important;
    align-self: stretch !important;
  }

  .reference-home .reference-featured-case .case-home,
  .reference-home .reference-featured-case .case-card {
    height: 100% !important;
    min-height: 0 !important;
  }

  .reference-home .reference-featured-case .case-image {
    height: 100% !important;
    min-height: 0 !important;
  }
}

/* frontend/app/v9-adjustments-23.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 Home selected Case Study link correction — 2026-08-26
   Keep the existing More Case Studies CTA visually inside the selected Case Study card,
   anchored at the card's upper-right corner. Home only; no Case Studies page or modal changes. */

.reference-home .reference-featured-case {
  position: relative !important;
}

.reference-home .reference-featured-case .reference-more-cases {
  position: absolute !important;
  top: 12px !important;
  right: 18px !important;
  bottom: auto !important;
  left: auto !important;
  margin: 0 !important;
  transform: none !important;
  z-index: 8 !important;
}

@media (max-width: 760px) {
  .reference-home .reference-featured-case .reference-more-cases {
    top: 12px !important;
    right: 14px !important;
  }
}

/* frontend/app/v9-adjustments-24.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 Home Process description correction — 2026-08-26
   Restore the approved two-line short description beneath each of the six Home Process titles.
   Source descriptions remain database-authoritative; Home only clamps them to two visual lines.
   Slightly increase row height so two-line titles + two-line descriptions do not collide. */

.reference-home .reference-process-panel .reference-process article > p {
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  max-width: 160px;
  min-height: 2.84em;
  max-height: 2.84em;
  margin: 5px auto 0 !important;
  color: #687069;
  font-size: .51rem;
  line-height: 1.42;
  text-align: center;
}

@media (min-width: 761px) {
  .reference-home .reference-process-panel .reference-process {
    --process-row-height: 112px !important;
  }
}

@media (max-width: 760px) {
  .reference-home .reference-process-panel .reference-process {
    --process-row-height: 116px !important;
  }

  .reference-home .reference-process-panel .reference-process article > p {
    max-width: 132px;
    font-size: .48rem;
    line-height: 1.38;
    min-height: 2.76em;
    max-height: 2.76em;
  }
}

/* frontend/app/v9-adjustments-25.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 Home Process + selected Case Study refinement — 2026-08-27
   1) Keep the Home Process Detail link at the card's lower-left, aligned with the note above.
   2) Home selected Case Study uses a vertical content flow only:
      More Case Studies at upper-right; Title, full image, Short Description and Detail left-aligned.
   3) The Home Case image is shown in full with contain scaling: large source images scale down and
      small source images scale up to the available viewport without cropping. Case page/modal unchanged. */

.reference-home .reference-process-panel {
  display: flex !important;
  flex-direction: column !important;
}

.reference-home .reference-process-note {
  align-self: stretch !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

.reference-home .reference-process-detail {
  position: static !important;
  inset: auto !important;
  align-self: flex-start !important;
  justify-self: start !important;
  margin: 6px 0 0 !important;
  transform: none !important;
  text-align: left !important;
}

/* Home Case Study card: More link is positioned by v9-adjustments-23.css at upper-right.
   Reserve its row, then flow Title -> 10px -> full image -> 10px -> Short Description
   -> 10px -> Detail. */
.reference-home .reference-featured-case .case-home,
.reference-home .reference-featured-case .case-card {
  height: 100% !important;
  min-height: 0 !important;
}

.reference-home .reference-featured-case .case-card {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  padding: 46px 18px 18px !important;
}

.reference-home .reference-featured-case .case-copy {
  display: contents !important;
}

.reference-home .reference-featured-case .case-copy h3 {
  order: 1 !important;
  width: 100% !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  text-align: left !important;
}

.reference-home .reference-featured-case .case-image {
  order: 2 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.reference-home .reference-featured-case .case-image img {
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  transform-origin: center center !important;
}

.reference-home .reference-featured-case .case-image:hover img {
  transform: none !important;
}

.reference-home .reference-featured-case .case-copy > p {
  order: 3 !important;
  width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.reference-home .reference-featured-case .case-actions {
  order: 4 !important;
  width: 100% !important;
  justify-content: flex-start !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.reference-home .reference-featured-case .case-actions .text-button {
  margin: 0 !important;
  text-align: left !important;
}

@media (min-width: 761px) {
  /* Any spare vertical room belongs above the final note/detail block so Detail stays
     visually at the lower-left without detaching from the two-line note above it. */
  .reference-home .reference-process-note {
    margin-top: auto !important;
    padding-top: 12px !important;
  }
}

/* Product + Case Study popup main image only.
   Fit the image to the available first-column width while preserving its intrinsic ratio.
   Any unused vertical room intentionally shows the existing media/container background. */
.category-gallery-modal.catalog-popup-isolated .catalog-main-detail-card > .indexed-media,
.case-detail.catalog-popup-isolated .catalog-main-detail-card > .indexed-media {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.category-gallery-modal.catalog-popup-isolated .catalog-main-detail-card > .indexed-media > img,
.case-detail.catalog-popup-isolated .catalog-main-detail-card > .indexed-media > img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
}

/* ABOUT PAGE CONTENT RHYTHM — page header/footer intentionally untouched. */
.about-page .about-story-copy,
.about-page .about-story-copy h2,
.about-page .about-story-copy > p,
.about-page .about-operate-section .section-heading,
.about-page .about-operate-section .section-heading h2,
.about-page .about-operate-section .section-heading > p {
  text-align: left !important;
}

/* How We Operate: move the description below the title instead of the split right column. */
.about-page .about-operate-section .section-heading.split-heading {
  display: block !important;
  max-width: none !important;
  margin-bottom: 20px !important;
}

.about-page .about-operate-section .section-heading.split-heading > div {
  width: 100% !important;
  max-width: 780px !important;
}

.about-page .about-operate-section .section-heading.split-heading > p {
  width: 100% !important;
  max-width: 780px !important;
  margin: 10px 0 0 !important;
}

.about-page .about-story-copy {
  width: 100% !important;
  max-width: 780px !important;
  margin: 0 !important;
}

.about-page .about-story-copy h2,
.about-page .about-operate-section .section-heading h2 {
  margin-bottom: 0 !important;
}

.about-page .about-story-copy > p {
  margin: 10px 0 0 !important;
}

/* Shared internal heading rhythm. */
.about-page .about-structure-heading .eyebrow,
.about-page .about-story-copy .eyebrow,
.about-page .about-operate-section .eyebrow,
.about-page .brand-experience .eyebrow,
.about-page .resources-section .eyebrow {
  margin-bottom: 8px !important;
}

.about-page .about-structure-heading,
.about-page .about-operate-section .section-heading,
.about-page .resources-section .section-heading {
  margin-bottom: 20px !important;
}

/* Main section spacing: compact and consistent without crowding content. */
.about-page .about-operating-structure {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.about-page .about-story-timeline {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.about-page .about-operate-section {
  padding-top: 10px !important;
  padding-bottom: 30px !important;
}

.about-page .brand-experience {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

.about-page .partnership-section,
.about-page #resources.resources-section {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}

/* Operating Structure: reduce the existing label-to-title whitespace by 10px. */
.about-page .about-structure-heading {
  row-gap: 14px !important;
}

/* Keep cards/lists visually grouped inside each section. */
.about-page .operating-structure-grid,
.about-page .facility-grid {
  gap: 16px !important;
}

.about-page .about-timeline {
  margin-top: 18px !important;
}

.about-page .brand-experience h2 {
  margin-bottom: 10px !important;
}

.about-page .brand-experience > p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 760px) {
  .about-page .about-operating-structure {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  .about-page .about-story-timeline {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .about-page .about-operate-section {
    padding-top: 10px !important;
    padding-bottom: 24px !important;
  }

  .about-page .brand-experience,
  .about-page .partnership-section,
  .about-page #resources.resources-section {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  .about-page .about-operate-section .section-heading.split-heading,
  .about-page .about-structure-heading,
  .about-page .resources-section .section-heading {
    margin-bottom: 16px !important;
  }

  .about-page .about-story-copy > p,
  .about-page .about-operate-section .section-heading.split-heading > p {
    margin-top: 8px !important;
  }

  .about-page .about-structure-heading {
    row-gap: 0 !important;
  }

  .about-page .operating-structure-grid,
  .about-page .facility-grid {
    gap: 12px !important;
  }

  .about-page .about-timeline {
    margin-top: 14px !important;
  }
}

/* ABOUT: exact shared left rail for Our Story and How We Operate.
   Our Story is defined at 5vw desktop / 14px mobile, so How We Operate follows it exactly. */
.about-page .about-operate-section {
  padding-left: 5vw !important;
  padding-right: 5vw !important;
}

.about-page .about-operate-section .section-heading,
.about-page .about-operate-section .section-heading > div,
.about-page .about-operate-section .section-heading > p {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 760px) {
  .about-page .about-operate-section {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* ABOUT: balanced two-line wrapping for headings and short section descriptions.
   This keeps natural two-line copy visually even without forcing long body text into artificial breaks. */
.about-page h1,
.about-page h2,
.about-page h3,
.about-page .about-structure-heading > p:last-child,
.about-page .about-story-copy > p:last-child,
.about-page .about-operate-section .section-heading > p:last-child,
.about-page .brand-experience > p:last-child,
.about-page .resources-section .section-heading p {
  text-wrap: balance;
}

/* ABOUT: one shared typography hierarchy for all major content sections.
   Hero, card-internal headings, modal headings and the lower CTA are intentionally excluded. */
.about-page .about-structure-heading .eyebrow,
.about-page .about-story-copy .eyebrow,
.about-page .about-operate-section .section-heading .eyebrow,
.about-page .brand-experience > .eyebrow,
.about-page .resources-section .section-heading .eyebrow {
  font-size: .73rem !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
}

.about-page .about-structure-heading h2,
.about-page .about-story-copy h2,
.about-page .about-operate-section .section-heading h2,
.about-page .brand-experience > h2,
.about-page .resources-section .section-heading h2 {
  font-size: clamp(1.75rem, 3vw, 3rem) !important;
  line-height: 1.06 !important;
  font-weight: 630 !important;
  letter-spacing: -.035em !important;
}

@media (max-width: 760px) {
  .about-page .about-structure-heading .eyebrow,
  .about-page .about-story-copy .eyebrow,
  .about-page .about-operate-section .section-heading .eyebrow,
  .about-page .brand-experience > .eyebrow,
  .about-page .resources-section .section-heading .eyebrow {
    font-size: .62rem !important;
  }

  .about-page .about-structure-heading h2,
  .about-page .about-story-copy h2,
  .about-page .about-operate-section .section-heading h2,
  .about-page .brand-experience > h2,
  .about-page .resources-section .section-heading h2 {
    font-size: 1.7rem !important;
  }
}

/* frontend/app/v9-adjustments-26.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 Home six-process typography alignment — 2026-08-31
   Match the What We Make category-card typography exactly while preserving
   the six-step route and two-line descriptions. */

/* The older single-line pseudo route was based on the former 62px icon size.
   The SVG route is now the only visible route so both rows can pass through
   the exact centreline of the current process icons. */
.reference-home .reference-process-panel .reference-process::before {
  display: none !important;
}

@media (min-width: 761px) {
  .reference-home .reference-process-panel .reference-process {
    --process-row-height: 180px !important;
  }

  .reference-home .reference-process-panel .reference-process-route {
    top: 4px !important;
    height: calc(var(--process-row-height) + var(--process-gap-y) + var(--process-icon-size)) !important;
  }

  .reference-home .reference-process-panel .reference-process strong {
    font-size: 1.2rem !important;
    line-height: 1.16 !important;
    font-weight: 700 !important;
    text-wrap: balance;
  }

  .reference-home .reference-process-panel .reference-process article > p {
    max-width: 190px !important;
    min-height: 2.9em !important;
    max-height: 2.9em !important;
    margin-top: 7px !important;
    font-size: .78rem !important;
    line-height: 1.45 !important;
    text-wrap: balance;
  }
}

@media (max-width: 760px) {
  .reference-home .reference-process-panel .reference-process {
    --process-row-height: 170px !important;
  }

  .reference-home .reference-process-panel .reference-process-route {
    top: 3px !important;
    height: calc(var(--process-row-height) + var(--process-gap-y) + var(--process-icon-size)) !important;
  }

  .reference-home .reference-process-panel .reference-process strong {
    font-size: .98rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    text-wrap: balance;
  }

  .reference-home .reference-process-panel .reference-process article > p {
    display: -webkit-box !important;
    max-width: 132px !important;
    min-height: 2.9em !important;
    max-height: 2.9em !important;
    margin-top: 6px !important;
    font-size: .67rem !important;
    line-height: 1.45 !important;
    text-wrap: balance;
  }
}

/* frontend/app/v9-adjustments-27.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 hero typography hierarchy — 2026-08-31
   1) Home keeps the strongest brand-level Hero and grows one measured step.
   2) Products / Case Studies / Capabilities / About / Contact share a smaller,
      consistent page-Hero hierarchy instead of inheriting the global oversized H1.
   Layout, 30px inner-page Hero spacing, backgrounds and CTA geometry are unchanged. */

/* ---------- INNER PAGE HEROES ---------- */
.page-hero.standard-page-hero h1 {
  font-size: clamp(2.35rem, 3.2vw, 3.5rem) !important;
  line-height: 1.06 !important;
}

.page-hero.standard-page-hero > p:last-child,
.page-hero.standard-page-hero > div > p:not(.eyebrow) {
  font-size: .94rem !important;
  line-height: 1.55 !important;
}

.page-hero.standard-page-hero .eyebrow {
  font-size: .70rem !important;
}

/* ---------- ENGLISH HOME HERO: ONE VISUAL STEP LARGER ---------- */
@media (min-width: 761px) {
  html:lang(en) .reference-home .reference-hero h1 {
    font-size: clamp(3.15rem, 4.3vw, 4.45rem) !important;
    line-height: .99 !important;
  }
}

@media (max-width: 760px) {
  .page-hero.standard-page-hero h1 {
    font-size: clamp(2rem, 8vw, 2.45rem) !important;
    line-height: 1.08 !important;
  }

  .page-hero.standard-page-hero > p:last-child,
  .page-hero.standard-page-hero > div > p:not(.eyebrow) {
    font-size: .84rem !important;
    line-height: 1.55 !important;
  }

  .page-hero.standard-page-hero .eyebrow {
    font-size: .64rem !important;
  }

  html:lang(en) .reference-home .reference-hero h1 {
    font-size: clamp(2.25rem, 10.5vw, 3.05rem) !important;
    line-height: 1.01 !important;
  }
}

/* frontend/app/v9-adjustments-28.css @ 02fbab93af3a88eaf9da0f7827ab80a60ac98129 */
/* Silverwood V9 lower-page CTA typography hierarchy — 2026-08-31
   Applies to Products / Case Studies / Capabilities / About lower CTA bands only.
   Keep the CTA visually important, but one clear step below the inner-page Hero.
   Layout, band height, background and button geometry are unchanged. */

.page-lower-cta h2 {
  font-size: clamp(2rem, 2.7vw, 2.8rem) !important;
  line-height: 1.08 !important;
}

.page-lower-cta .page-lower-cta-copy {
  font-size: .94rem !important;
  line-height: 1.6 !important;
}

.page-lower-cta .eyebrow {
  font-size: .70rem !important;
}

@media (max-width: 760px) {
  .page-lower-cta h2 {
    font-size: clamp(1.75rem, 7.2vw, 2.15rem) !important;
    line-height: 1.1 !important;
  }

  .page-lower-cta .page-lower-cta-copy {
    font-size: .88rem !important;
  }

  .page-lower-cta .eyebrow {
    font-size: .66rem !important;
  }
}

