:root{--ivory:#f0eee7;--ink:#15242a;--copper:#876649;--metal:#c69967;--sage:#63706b;--emerald:#07553d;--line:#d2d2c8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:5px}button{cursor:pointer}.skip{position:fixed;left:12px;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:12px}.reviewbar{background:var(--ink);color:var(--ivory);font-size:12px;padding:12px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px}.reviewbar div{display:flex;gap:18px;align-items:center}.reviewbar button{background:none;border:1px solid #6d797c;border-radius:2px;padding:5px 10px;color:inherit;font-size:11px}header{display:flex;align-items:center;justify-content:space-between;padding:16px 5%;border-bottom:1px solid var(--line);gap:30px}.identity{width:137px;flex-shrink:0;line-height:0}.identity img{width:100%;height:auto}nav{display:flex;gap:30px}nav a{text-decoration:none;font-size:13px}nav a[aria-current]{color:var(--emerald);border-bottom:2px solid var(--emerald)}.header-tag{font-size:9px;letter-spacing:1.6px;line-height:1.8;color:var(--sage)}main>section{padding:85px 7%}h1,h2,h3,h4,p{margin:0 0 20px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2px;line-height:1.06}h1{font-size:clamp(48px,5.9vw,88px)}h2{font-size:clamp(35px,3.7vw,53px)}h3{font-size:25px;font-weight:400;line-height:1.3;letter-spacing:-.5px}h4{font-size:15px;font-weight:500}em{font-weight:400;color:var(--emerald)}.eyebrow{font-size:10px;letter-spacing:2px;line-height:1.5;font-weight:600;color:var(--copper);margin-bottom:27px}.hero{display:grid;grid-template-columns:1.15fr 1fr;min-height:620px;align-items:center;gap:30px;padding-top:65px;padding-bottom:55px}.lead{font-size:23px;line-height:1.5;max-width:720px}.hero-sub{font-size:15px;color:var(--sage);max-width:395px}.hero-art{position:relative;align-self:center}.hero-art img{width:100%;height:auto;display:block;mix-blend-mode:multiply}.hero-art span{display:block;text-align:center;font-size:9px;letter-spacing:2.3px;color:var(--copper);margin-top:14px}.actions{display:flex;align-items:center;gap:30px;margin-top:35px}.button{display:inline-flex;gap:38px;justify-content:space-between;align-items:center;background:var(--emerald);color:white;border:0;padding:15px 23px;text-decoration:none;font-size:12px}.button span{font-size:18px}.textlink{font-size:12px;font-weight:600}.annotation{background:#e4e8df;border-left:2px solid var(--copper);padding:14px 18px;font-size:12px;line-height:1.7;color:#45534a;margin:0 7% 20px}.hide-notes .annotation{display:none}.sectionhead{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:start}.sectionhead p:last-child{font-size:14px;color:var(--sage);max-width:200px}.focusgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:55px}.focusgrid article{border-top:1px solid var(--copper);padding-top:22px}.number{font-size:10px;letter-spacing:1px;color:var(--copper);display:block;margin-bottom:30px}.focusgrid p{font-size:14px;color:var(--sage)}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;border-top:1px solid var(--line)}.split p{max-width:490px}.dark{background:var(--ink);color:var(--ivory);border:0}.dark .eyebrow,.dark .textlink{color:#d2ae83}.dark h2{margin-bottom:0}.cta{background:var(--emerald);color:var(--ivory);text-align:center}.cta h2{font-size:clamp(38px,4vw,58px);margin-bottom:32px}.cta .eyebrow{color:#d2ae83}.light{background:var(--ivory);color:var(--ink)}.pagehero{padding-top:75px;padding-bottom:65px;max-width:1200px}.pagehero h1{margin-bottom:32px}.pagehero .lead{max-width:690px}.story{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid var(--line);gap:10%}.story>div{max-width:690px}.story h2{margin-bottom:35px}.large{font-size:23px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.three h2{font-size:32px;letter-spacing:-1px}.three p{color:var(--sage);font-size:15px}.principles{border-top:1px solid var(--line)}.person{display:grid;grid-template-columns:320px 1fr;gap:10%;align-items:center;border-top:1px solid var(--line);padding:50px 0}.people{padding-top:0}.portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:saturate(.45)}.person .bio{max-width:600px;font-size:18px}.person .annotation{margin:25px 0 0}.person h2{font-size:46px}.monogram{height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e1e5dc;color:var(--emerald);font:80px Georgia,serif}.monogram small{font:9px Arial,sans-serif;letter-spacing:2px;margin-top:25px;color:var(--sage)}.contactgrid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;border-top:1px solid var(--line)}.contactgrid p{max-width:360px}.contactdetail{border-top:1px solid var(--line);margin-top:45px;padding-top:25px}.contactdetail span{font-size:9px;letter-spacing:2px;color:var(--copper)}.contactdetail p{font-size:12px;margin-top:15px;color:var(--sage)}form label{display:block;font-size:12px;margin-bottom:22px}.two{display:grid;grid-template-columns:1fr 1fr;gap:22px}input,select,textarea{width:100%;padding:12px;border:1px solid #acb5ac;background:#f7f6f1;color:var(--ink);margin-top:8px;border-radius:0}textarea{resize:vertical}.formnote{font-size:12px;color:var(--sage)}#form-status{font-size:13px;color:var(--emerald);margin-top:20px}.swatches{display:grid;grid-template-columns:repeat(7,1fr);gap:16px}.swatches article>div{height:120px;border:1px solid #ddd;margin-bottom:18px}.swatches h3{font-size:16px;margin-bottom:5px}.swatches p{font-size:11px;color:var(--sage);margin-top:10px}.swatches code{font-size:11px}.brandproof{width:100%;height:auto}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;vertical-align:top;padding:20px;border-bottom:1px solid var(--line)}th{font-size:11px;letter-spacing:1px;color:var(--copper)}footer{padding:50px 5%;display:flex;justify-content:space-between;gap:30px;align-items:start;border-bottom:1px solid var(--line)}footer strong{font:26px Georgia,serif}footer p,footer small{font-size:10px;color:var(--sage);margin-top:10px}footer nav{gap:20px}.reviewnotes{padding:30px 7%;background:#e4e8df}.reviewnotes label{font-size:14px}.reviewnotes p{font-size:11px;margin:8px 0 0}.reviewnotes button{font-size:11px;background:none;border:0;text-decoration:underline;color:var(--emerald)}@media(max-width:950px){.header-tag{display:none}.hero{grid-template-columns:1.2fr 1fr}.focusgrid{grid-template-columns:1fr 1fr}.sectionhead{grid-template-columns:1fr 2fr}.sectionhead p:last-child{display:none}.swatches{grid-template-columns:repeat(4,1fr)}.person{grid-template-columns:250px 1fr;gap:6%}.monogram{height:250px}.person h2{font-size:36px}footer{flex-wrap:wrap}.reviewbar{align-items:start}.reviewbar div{gap:10px;flex-wrap:wrap}}@media(max-width:640px){.reviewbar{display:block}.reviewbar div{margin-top:10px}.reviewbar a{font-size:11px}header{padding:15px 6%;flex-wrap:wrap;gap:10px}.identity{width:103px}header nav{gap:19px;flex:1;justify-content:flex-end;flex-wrap:wrap}nav a{font-size:11px}main>section{padding:48px 6%}.hero{display:flex;flex-direction:column;gap:10px}.hero h1{font-size:49px}.hero-art{max-width:300px;align-self:center;margin-top:20px}.lead{font-size:20px}.hero-sub{font-size:14px}.actions{gap:20px}.button{gap:25px}.sectionhead,.split,.story,.contactgrid{display:block}.sectionhead h2{font-size:38px}.focusgrid{gap:25px}.focusgrid h3{font-size:23px}.focusgrid h4{font-size:14px}.three{grid-template-columns:1fr;gap:20px}.split>div+div{margin-top:30px}.annotation{margin:0 6% 15px;font-size:11px}.pagehero h1{font-size:54px}.person{display:block;padding:35px 0}.portrait{max-width:280px;margin-bottom:28px}.person .bio{font-size:16px}.person .annotation{margin-top:20px}.contactgrid form{margin-top:45px}.two{grid-template-columns:1fr;gap:0}.swatches{grid-template-columns:repeat(2,1fr)}footer{display:block}footer nav{margin:25px 0}footer small{display:block}.reviewnotes{padding:25px 6%}}@media print{.reviewbar,.reviewnotes,.skip{display:none}.hero{min-height:0}main>section{padding:35px 6%}body{font-size:12px}h1{font-size:50px}h2{font-size:32px}.annotation{break-inside:avoid}.person{break-inside:avoid}.dark,.cta{print-color-adjust:exact;-webkit-print-color-adjust:exact}footer{font-size:10px}}
.identity{display:flex;align-items:center;width:205px;gap:7px;line-height:1}.identity img{width:85px;height:57px;object-fit:contain}.identity>span{font:25px Georgia,serif;letter-spacing:-1px}.identity small{display:block;font:8px Arial,sans-serif;letter-spacing:3px;margin-top:7px}.identity{text-decoration:none}@media(max-width:640px){.identity{width:155px;gap:3px}.identity img{width:59px;height:45px}.identity>span{font-size:21px}header nav{gap:13px}.header-tag{display:none}}

.news-heading h1{max-width:1000px;font-size:clamp(36px,5vw,68px)}.news-list{padding-top:0}.news-card{display:grid;grid-template-columns:1.15fr 1fr;gap:6%;align-items:center}.news-card img,.news-cover,.article-prose img{width:100%;height:auto;display:block}.news-card h2{font-size:34px}.news-card h2 a{color:inherit;text-decoration:none}.news-article{padding-top:0}.article-prose{max-width:780px;margin:50px auto;font-size:18px;line-height:1.75}.article-prose h2{font-size:34px;line-height:1.2;margin-top:40px}.article-prose figure{margin:35px 0}.article-prose figcaption,.source-note{font-size:14px}.article-prose a{color:var(--emerald)}.article-prose a.button{color:white}@media(max-width:640px){.news-card{display:block}.news-card>div{margin-top:25px}.news-card h2,.article-prose h2{font-size:28px}.article-prose{font-size:17px}.news-heading h1{font-size:38px}}

/* Align numbers, headings, subtitles and descriptions across each focus row. */
.focusgrid article{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;align-content:start}

main>.film-hero{padding:0;position:relative;background:#071f1b}.film-hero video{display:block;width:100%;height:auto;max-height:85vh;object-fit:contain}.film-mute{position:absolute;right:24px;bottom:65px;padding:11px 20px;border:1px solid #c69967;border-radius:6px;background:#071f1bee;color:#fff;z-index:2}.film-mute:focus-visible{outline:3px solid #fff}.news-logo{display:block;width:150px;height:auto;margin:0 0 24px}@media(max-width:640px){.film-mute{right:12px;bottom:50px;padding:7px 12px;font-size:13px}}

/* Approved transparent horizontal logo, repeated in the footer. */
header{position:sticky;top:0;z-index:100;background:var(--ivory);box-shadow:0 2px 8px #15242a08}header .identity{display:block;width:245px;line-height:0;flex-shrink:0}header .identity img{display:block;width:100%;height:auto;object-fit:contain}.footer-identity{display:block;width:245px;line-height:0}.footer-identity img{display:block;width:100%;height:auto}html{scroll-padding-top:120px}@media(max-width:640px){header .identity,.footer-identity{width:210px}header{gap:15px}header nav{width:100%;justify-content:flex-start}html{scroll-padding-top:160px}}

/* Keep Dennis’s full head visible in the square team portrait. */
#dennis-mclaughlin .portrait img{object-position:50% 0%}

footer nav{flex-wrap:wrap;max-width:100%}footer nav a{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}.legal-content{max-width:960px;margin:auto;overflow-wrap:anywhere}.legal-content h1{font-size:clamp(36px,7vw,64px);line-height:1.15}.legal-content h2{font-size:26px;line-height:1.3;margin-top:36px}.legal-content p{max-width:75ch}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.6;cursor:wait}

/* Three aligned columns with legal links in their own bottom row. */
footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);align-items:center;gap:28px 24px}
footer .footer-brand{grid-column:1;min-width:0}
footer .footer-identity{width:min(100%,245px)}
footer .footer-menu{grid-column:2;justify-content:center;align-items:center;gap:12px 24px;margin:0}
footer .footer-copyright{grid-column:3;text-align:right;margin:0}
footer .footer-legal{grid-column:1/-1;justify-content:center;gap:24px;margin:0;padding-top:20px;border-top:1px solid var(--line)}
footer .footer-legal a{font-size:11px}
@media(max-width:700px){footer{grid-template-columns:1fr;justify-items:center;gap:24px;padding:36px 6%}footer .footer-brand,footer .footer-menu,footer .footer-copyright,footer .footer-legal{grid-column:1;text-align:center}footer .footer-menu{gap:8px 20px}footer .footer-legal{width:100%}}
