/* Additive funnel styles; existing site selectors remain untouched. */
.wt-section { padding-block:clamp(2.5rem,7vw,5rem); border-bottom:1px solid var(--line); }
.wt-section h2 { font-size:clamp(2.75rem,6vw,5rem); line-height:1; letter-spacing:-.055em; margin:1rem 0 2rem; }
.wt-section h2 em { font-family:var(--serif); font-style:italic; font-weight:400; }
.wt-section > p,.wt-about > p { max-width:740px; color:var(--muted); }
.wt-cards,.wt-shapes { display:grid; gap:1rem; grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr)); }
.wt-cards { margin-block:2rem; }
.wt-option,.wt-product,.wt-shape { min-width:0; padding:1.25rem; border:1px solid var(--line); background:var(--paper); }
.wt-option h3,.wt-product h3,.wt-shape h3 { font-size:1.4rem; line-height:1.2; letter-spacing:-.025em; margin:0 0 1rem; }
.wt-option p,.wt-product p,.wt-shape p { color:var(--muted); }
.wt-actions,.wt-links,.wt-jump { display:flex; flex-wrap:wrap; gap:.75rem 1.25rem; align-items:center; }
.wt-actions .button { max-width:100%; white-space:normal; text-align:center; }
.wt-links a,.wt-jump a,.wt-note a,.wt-section p a,.wt-footer a,.wt-hero-line a { display:inline-flex; align-items:center; min-height:44px; }
.wt-links a,.wt-jump a { overflow-wrap:anywhere; gap:.25rem; }
.wt-jump { margin-top:2rem; }
.wt-hero-line { margin-top:1rem; display:flex; flex-wrap:wrap; gap:.25rem .75rem; align-items:baseline; }
.wt-hero-aside,.wt-note,.wt-status,.wt-optional,.wt-hint,.wt-privacy { color:var(--muted); font-size:.875rem; }
.wt-home { padding-bottom:clamp(3rem,7vw,6rem); }
.wt-intake { margin-block:2rem; }
.wt-intake ul { padding-left:1.25rem; color:var(--muted); line-height:1.9; }
.wt-about > p { margin:0 auto 2rem; }
.wt-about .wt-actions { justify-content:center; }
.wt-end-cta { margin-block:clamp(2rem,6vw,4rem); padding-top:1.5rem; border-top:1px solid var(--line); }
.wt-end-cta-text { max-width:740px; color:var(--muted); }
.wt-form { max-width:740px; margin-top:2rem; }
.wt-field { margin-bottom:1.25rem; }
.wt-field label { display:block; margin-bottom:.5rem; }
.wt-field input,.wt-field textarea { width:100%; font:inherit; font-size:max(16px,1rem); padding:.75rem; min-height:44px; border:1px solid var(--muted); background:var(--paper); color:var(--ink); border-radius:0; }
.wt-field textarea { resize:vertical; }
.wt-consent { display:flex; flex-wrap:wrap; align-items:flex-start; gap:.5rem .75rem; }
.wt-consent input { width:20px; height:20px; min-height:20px; margin:12px 0; flex:none; accent-color:var(--ink); }
.wt-consent label { flex:1; min-width:0; padding-block:.5rem; margin:0; }
.wt-consent .wt-field-error { flex-basis:100%; }
.wt-field-error,.wt-form-status { color:color-mix(in srgb,var(--orange) 25%,var(--ink)); }
.wt-field [aria-invalid="true"] { border-width:2px; }
.wt-hp { position:absolute!important; left:-10000px; width:1px; height:1px; overflow:hidden; }
.wt-topic-clear { min-height:44px; padding:.5rem 1rem; color:var(--ink); background:var(--paper-2); border:1px solid var(--muted); cursor:pointer; }
.wt-submit { min-height:44px; cursor:pointer; }
.wt-form [hidden],.wt-form-success[hidden] { display:none; }
.wt-form-success { padding-block:2rem; }
.wt-nav-link:focus-visible,.wt-footer a:focus-visible,.wt-home :focus-visible,.wt-about :focus-visible,.wt-end-cta :focus-visible,.wt-section :focus-visible,.wt-hero :focus-visible,.wt-close :focus-visible,.wt-hero-line :focus-visible { outline:2px solid currentColor; outline-offset:2px; }
@media(min-width:761px) { .footer-grid:has(> .wt-footer) { grid-template-columns:2.1fr 1fr 1fr 1fr 1fr; gap:32px; } }
.primary-nav .wt-nav-link { display:inline-flex; min-height:44px; align-items:center; }
/* Tablet header has no wrap between 761px and 940px; hide the extra nav item there so the header is no wider than before. Hero, footer and page CTAs still link to /work-together/. */
@media (min-width:761px) and (max-width:940px) { .primary-nav .wt-nav-link { display:none; } }
/* Phones: tighten nav spacing so the brand and five links stay on one row. */
@media (max-width:760px) { .primary-nav:has(> .wt-nav-link) { gap:10px; } }
@media (max-width:374px) { .header-inner:has(.wt-nav-link) { padding-block:12px 4px; } }
/* Mobile overflow guard (pre-existing on live before Work together): long code blocks, tables, commit hashes and long H1 words pushed 44 pages wider than a 390px phone. Layout only; no content changes. */
@media (max-width:760px){.prose,.experiment-card{min-width:0;max-width:100%;overflow-wrap:break-word}main pre{max-width:100%;overflow-x:auto}.prose table{display:block;max-width:100%;overflow-x:auto}.prose :not(pre)>code,.prose a{overflow-wrap:anywhere}.note-hero h1{overflow-wrap:break-word}}
