*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 var(--font)}.swiss{--bg:#fff;--ink:#151515;--accent:#FF4F00;--line:#c8c8c8;--font:'Helvetica Neue',Helvetica,Arial,sans-serif;--panel:#F7F7F8}.organic{--bg:#E8DCC7;--ink:#28301d;--accent:#606C38;--line:#89916d;--font:Caslon,Georgia,serif;--panel:#D4B895}.industrial{--bg:#0B0C0A;--ink:#eee;--accent:#FFB800;--line:#63635c;--font:'IBM Plex Mono','SFMono-Regular',Consolas,'Liberation Mono',monospace;--panel:#000;font-variant-numeric:tabular-nums}a{color:inherit;text-underline-offset:.23em;text-decoration-thickness:1px}a:hover{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip{position:fixed;z-index:9;top:8px;left:8px;transform:translateY(-150%);padding:12px;background:var(--bg)}.skip:focus{transform:none}.shell{max-width:1440px;margin:auto;padding:0 5vw}header{display:flex;align-items:center;justify-content:space-between;gap:36px;border-bottom:1px solid var(--line);padding:30px 0}header .brand{font-size:16px;line-height:1.5;text-decoration:none;flex-shrink:0}.brand span,.brand strong{display:block}.brand strong{color:var(--accent);font-weight:500}nav{display:flex;flex-wrap:wrap;gap:12px 24px}header nav{font-size:14px}header nav a{padding:7px 0}.hero{padding:82px 0 68px;border-bottom:1px solid var(--line)}.eyebrow{font-size:15px;margin:0 0 28px}.hero h1{font-size:clamp(48px,7.3vw,112px);line-height:1.03;letter-spacing:-.055em;font-weight:500;max-width:1150px;margin:0 0 40px;overflow-wrap:anywhere}.hero .lead{font-size:clamp(21px,2.3vw,30px);line-height:1.4;max-width:760px;margin:0 0 0 auto}.intro{display:grid;grid-template-columns:1fr 2fr;gap:48px;padding:58px 0}.intro h2{font-size:19px;font-weight:500;margin:0}.intro p{max-width:760px;margin:0;font-size:21px}.directory{margin-bottom:80px}.directory article{display:grid;grid-template-columns:1fr 2fr;gap:48px;border-top:1px solid var(--line);padding:42px 0}.folio{color:var(--accent);font-size:72px;line-height:1}.directory h2{font-size:clamp(26px,3vw,39px);font-weight:500;line-height:1.2;letter-spacing:-.025em;margin:0 0 20px;max-width:750px}.directory h2 a{text-decoration:none}.directory p{max-width:680px;margin:0 0 20px}.read{font-size:16px}.back{display:inline-block;margin-top:35px;font-size:14px}.article-page .hero{padding-top:42px}.article-page .hero h1{font-size:clamp(40px,5.5vw,78px);max-width:1060px}.article-page .hero .lead{margin-left:0;max-width:850px;font-size:24px}.body-copy{max-width:790px;margin:54px auto 85px}.body-copy h2{font-size:30px;line-height:1.2;letter-spacing:-.015em;font-weight:500;margin:46px 0 18px}.body-copy p{margin:0 0 23px}.body-copy a{overflow-wrap:anywhere}.body-copy li{padding-bottom:10px}.body-copy .date{font-size:14px;color:var(--accent)}.worksheet{background:var(--panel);padding:28px;margin:40px 0;border:1px solid var(--line)}.worksheet h2{margin:0 0 23px;font-size:25px}dl{margin:0 0 28px}dt{font-weight:700;margin-top:18px}dd{margin:3px 0 0}blockquote{border-left:3px solid var(--accent);padding:6px 0 6px 26px;margin:26px 0;font-size:23px;line-height:1.5}footer{padding:40px 0 20px;border-top:1px solid var(--line);font-size:14px}footer>p{max-width:840px}footer nav{margin:24px 0 40px;gap:10px 28px}footer nav span{width:100%;font-size:13px}.small{font-size:12px}.organic .hero{background:var(--panel);border:0;border-radius:24px;padding:60px;margin-top:42px}.organic .hero h1{font-weight:400;letter-spacing:-.04em}.organic .hero .lead{margin:0;max-width:770px}.organic .directory article{border-radius:20px;background:var(--panel);border:0;padding:35px;margin-bottom:20px}.organic .worksheet{border-radius:20px}.industrial .hero h1{font-size:clamp(41px,6vw,85px);letter-spacing:-.045em;color:var(--accent)}.industrial .directory h2{font-size:clamp(24px,2.5vw,34px)}.industrial .folio{font-size:50px}.industrial .hero .lead{font-size:24px}.industrial header .brand{font-size:14px}.industrial header nav{font-size:12px}.industrial .body-copy{font-size:17px}.industrial .body-copy h2{font-size:26px}.industrial .intro p{font-size:18px}.industrial .directory{font-size:17px}
@media(max-width:900px){header{align-items:flex-start;flex-direction:column;gap:18px}.hero{padding:60px 0 45px}.hero .lead{margin-left:0}.intro{gap:25px}.directory article{gap:25px;grid-template-columns:140px 1fr}.organic .hero{padding:36px}.organic .directory article{grid-template-columns:100px 1fr}.industrial .hero h1{font-size:clamp(38px,7vw,70px)}}
@media(max-width:550px){body{font-size:17px}.shell{padding:0 22px}header{padding:23px 0}header nav{gap:10px 18px;font-size:13px}.hero{padding:42px 0}.hero h1{font-size:clamp(38px,10vw,56px);letter-spacing:-.045em;margin-bottom:27px}.hero .lead,.article-page .hero .lead{font-size:20px}.eyebrow{margin-bottom:19px;font-size:13px}.intro{display:block;padding:35px 0}.intro h2{margin-bottom:17px}.intro p{font-size:18px}.directory article{display:block;padding:28px 0}.folio{display:block;font-size:38px;margin-bottom:20px}.directory h2{font-size:27px}.article-page .hero h1{font-size:38px}.body-copy{margin:32px 0 60px}.body-copy h2{font-size:25px;margin-top:36px}.worksheet{padding:20px}blockquote{font-size:20px;margin-left:0}.organic .hero{margin-top:24px;padding:27px 22px;border-radius:20px}.organic .hero h1{font-size:39px;overflow-wrap:normal;hyphens:auto}.organic .directory article{display:block;padding:26px}.industrial .hero h1{font-size:37px}.industrial .hero .lead{font-size:20px}.industrial .body-copy{font-size:16px}.industrial .directory h2{font-size:25px}footer nav{display:block}footer nav a,footer nav span{display:block;margin-bottom:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white;color:black;font-size:11pt}header,footer,.skip,.back{display:none}.shell{padding:0}.hero,.organic .hero{padding:0;margin:0;background:none;border:0}.hero h1,.article-page .hero h1{font-size:27pt;color:black}.hero .lead{font-size:13pt}.body-copy{margin:20px 0;max-width:none}.worksheet{break-inside:avoid;background:none}.body-copy h2{font-size:17pt}a{color:black}}

/* Keep small text and hover states above AA contrast on light surfaces. */
.swiss .brand strong,.organic .brand strong{color:var(--ink)}.swiss a:hover,.organic a:hover{color:var(--ink);text-decoration:underline}.organic .folio{color:var(--ink)}
