/* ---------- Tuig — cart horse & working animal welfare 205 ----------
   The structural move: the page spends everything on one full-viewport stage
   and then starves. Four icon tiles, a lone video in a narrow measure, one
   photograph beside the founder's account and a plain address pair — and only
   then do six square tiles land three across and two deep, tight-gapped and
   captionless, as the single wall of pictures on the whole page. Lucerne green
   is rationed to the hairline seams between plates, the four icons and the nav
   underline, and goes to a solid slab exactly once, at the closing band. The
   submit is the only chestnut thing here. No counters, no price table, no logos. */
body.t-tuig.ws-body {
  --bg: #f4f1e7; --fg: #34322b; --heading: #191813; --text: #34322b; --muted: #7a7566;
  --tg-line: #c7cdb4; --tg-green: #4f6b3a; --tg-nut: #7a4526;
  --hero-a: rgba(16, 15, 10, .24); --hero-b: rgba(16, 15, 10, .60);
}
body.t-tuig { background: var(--bg); }

/* the bar — quiet caps, and the only green in it is the underline */
body.t-tuig .ws-brand { color: var(--heading); text-transform: uppercase; letter-spacing: .3em; font-size: 13px; font-weight: 700; }
body.t-tuig .ws-nav-links a { color: var(--heading); opacity: .72; text-transform: uppercase; letter-spacing: .1em; font-size: 11.5px; font-weight: 600; }
body.t-tuig .ws-nav-links a:hover, body.t-tuig .ws-nav-links a.on { color: var(--tg-green); opacity: 1; border-bottom-color: var(--tg-green); }

/* the stage — a whole viewport, one heading, one ask, nothing else in the frame */
body.t-tuig .ws-hero { min-height: 100vh; }
body.t-tuig .ws-hero h1 { font-size: clamp(38px, 6.4vw, 82px); font-weight: 700; letter-spacing: -.036em; line-height: 1.03; max-width: 16ch; text-shadow: none; }
body.t-tuig.ws-body .ws-hero-cta.btn.brand { background: #f4f1e7; color: #191813; border-radius: 0; box-shadow: none; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 700; padding: 17px 36px; }

/* one bone ground the whole way down, cut into plates by lucerne hairlines */
body.t-tuig .ws-section { padding: 92px 0; border-top: 1px solid var(--tg-line); }
body.t-tuig .ws-hero + .ws-section { border-top: 0; }
body.t-tuig.ws-body .ws-section:nth-child(even):not(.ws-cta):not(.ws-shoplink) { background: transparent; }
body.t-tuig .ws-h2, body.t-tuig .ws-story-copy h2 { color: var(--heading); font-size: clamp(24px, 3.2vw, 38px); font-weight: 700; letter-spacing: -.03em; line-height: 1.1; margin: 0 0 14px; }
body.t-tuig .ws-sub, body.t-tuig .ws-video-caption { color: var(--muted); font-size: 13.5px; line-height: 1.7; }
body.t-tuig .ws-story-copy p, body.t-tuig .ws-feature p, body.t-tuig .ws-member p, body.t-tuig .ws-col p { color: var(--text); font-size: 15.5px; line-height: 1.82; }

/* four tiles under a green rule — the icons are the second place green is spent */
body.t-tuig .ws-features-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
body.t-tuig .ws-feature { text-align: left; padding: 18px 0 0; border-top: 2px solid var(--tg-green); }
body.t-tuig .ws-feature-icon { color: var(--tg-green); margin-bottom: 12px; }
body.t-tuig .ws-feature h3, body.t-tuig .ws-col-h { color: var(--heading); text-transform: uppercase; letter-spacing: .13em; font-size: 12.5px; font-weight: 700; margin: 0 0 10px; }

/* the starved middle — a square video in the measure, one picture beside the
   prose, and the address pair set as plain ruled lines rather than a card */
body.t-tuig .ws-video-frame { border-radius: 0; box-shadow: none; }
body.t-tuig .ws-story-media img, body.t-tuig .ws-gallery-item img, body.t-tuig .ws-member-photo img { border-radius: 0; object-fit: cover; }
body.t-tuig .ws-story-media img { aspect-ratio: 4 / 5; }
body.t-tuig .ws-col p { white-space: pre-line; }

/* THE WALL — six squares, three across and two deep, tight and captionless */
body.t-tuig .ws-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
body.t-tuig .ws-gallery-item img { aspect-ratio: 1 / 1; }

/* four square portraits, left-set — the reference's stacked profile page, balanced */
body.t-tuig .ws-team-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
body.t-tuig .ws-member { text-align: left; }
body.t-tuig .ws-member-photo img { width: 100%; height: auto; aspect-ratio: 1 / 1; margin: 0 0 14px; }

/* the one full slab of colour on the page */
body.t-tuig.ws-body .ws-cta { background: var(--tg-green); border-top: 0; padding: 76px 0; }
body.t-tuig .ws-cta-inner h2 { color: #f4f1e7; font-size: clamp(20px, 2.6vw, 30px); font-weight: 700; letter-spacing: -.02em; margin: 0 0 24px; }
body.t-tuig.ws-body .ws-cta .btn.brand { background: #f4f1e7; color: #2e3f21; border-radius: 0; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 700; padding: 16px 34px; }

/* ruled fields, and the one chestnut thing on the page */
body.t-tuig .ws-field input, body.t-tuig .ws-field select, body.t-tuig .ws-field textarea, body.t-tuig .ws-select-trigger { background: transparent; border: 0; border-bottom: 1px solid var(--tg-line); border-radius: 0; color: var(--heading); padding: 12px 2px; }
body.t-tuig.ws-body .ws-contact .btn.brand { background: var(--tg-nut); color: #f7f3ec; border-radius: 0; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; font-weight: 700; padding: 16px 34px; }

@media (max-width: 860px) {
  body.t-tuig .ws-features-grid, body.t-tuig .ws-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.t-tuig .ws-section { padding: 62px 0; }
}

/* night — the same oat room after dark, the green a stop lighter so the closing
   slab still reads as lucerne and not as ink */
html[data-theme="dark"] body.t-tuig.ws-body {
  --bg: #16170f; --fg: #a8a596; --heading: #f1eee2; --text: #a8a596; --muted: #7c7867;
  --tg-line: #2c2f22; --tg-green: #6d8f4f; --tg-nut: #a05f34;
  --hero-a: rgba(6, 7, 4, .30); --hero-b: rgba(6, 7, 4, .66);
}
html[data-theme="dark"] body.t-tuig { background: var(--bg); }
html[data-theme="dark"] body.t-tuig.ws-body .ws-hero-cta.btn.brand, html[data-theme="dark"] body.t-tuig.ws-body .ws-cta .btn.brand { background: #f1eee2; color: #16170f; }
