@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');

:root{--ink:#183a35;--ink-2:#244d45;--deep:#163b36;--paper:#f7f4ed;--cream:#eee5d5;--mist:#e8ede6;--tan:#d5ac78;--text:#283d39;--muted:#61736d;--line:#d8dfd7;--serif:'Libre Caslon Display',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:#d8b080;color:var(--deep)}:focus-visible{outline:3px solid #c9904e;outline-offset:4px}.skip-link{position:absolute;top:-50px;left:12px;z-index:100;background:#fff;padding:10px 14px}.skip-link:focus{top:12px}.shell{width:min(100% - 96px,1260px);margin-inline:auto}

.site-header{position:absolute;top:0;left:0;right:0;z-index:10;color:#f5f0e5;border-bottom:1px solid rgba(241,237,223,.18)}.nav-wrap{min-height:100px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:inline-flex;align-items:center;gap:17px;white-space:nowrap}.wordmark-symbol{font-family:Georgia,serif;font-size:31px;font-weight:bold;line-height:1;letter-spacing:-3px}.wordmark-symbol span{color:var(--tan)}.wordmark-name{font-size:15px;font-weight:700;letter-spacing:.005em}.primary-nav{display:flex;align-items:center;gap:39px;font-size:13px;font-weight:600}.primary-nav>a:not(.nav-contact){opacity:.77;transition:opacity .2s}.primary-nav>a:hover{opacity:1}.nav-contact{margin-left:10px;display:inline-flex;gap:35px;align-items:center;border:1px solid rgba(255,255,255,.55);padding:13px 18px;transition:background .2s,color .2s}.nav-contact:hover{background:#f2e8d8;color:var(--deep)}.nav-contact span{font-size:17px;font-weight:400}.menu-toggle{display:none}

.hero{min-height:760px;position:relative;overflow:hidden;background:radial-gradient(circle at 80% 45%,#25534a 0%,#19443d 31%,#153b36 68%,#12352f 100%);color:#f7f0e4}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 68%,rgba(255,255,255,.025) 68% 68.12%,transparent 68.12%)}.hero-grain{position:absolute;inset:0;opacity:.15;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");pointer-events:none}.hero-inner{position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:25px;min-height:730px;padding-top:95px}.hero-copy{position:relative;z-index:2;padding:35px 0 55px}.eyebrow{display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.19em;font-weight:700;text-transform:uppercase}.eyebrow-line{height:1px;width:32px;background:var(--tan);display:inline-block}.eyebrow-light{color:#e8d4ae}.hero h1{font:400 clamp(58px,5.75vw,88px)/.99 var(--serif);letter-spacing:-.042em;margin:34px 0 30px;white-space:nowrap}.hero h1 em,.section h2 em,.contact-section h2 em{font-weight:400;color:#d5af7f}.hero-intro{max-width:555px;color:#d6dfd5;font-size:17px;line-height:1.78;margin:0}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:36px}.button{min-height:55px;padding:0 21px;display:inline-flex;align-items:center;justify-content:space-between;gap:38px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:17px;font-weight:400}.button-cream{background:#efe7d8;color:var(--deep)}.button-cream:hover{background:white}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px;transition:gap .2s}.text-link:hover{gap:22px}.light-link{color:#ede2ca}.hero-art{height:650px;position:relative;display:grid;place-items:center;transform:translate(34px,22px)}.hero-art svg{width:min(100%,570px);height:100%;filter:drop-shadow(0 28px 40px rgba(0,0,0,.1))}.art-label{position:absolute;background:var(--paper);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.025em;display:flex;align-items:center;gap:10px;box-shadow:0 12px 35px rgba(0,0,0,.08)}.label-top{right:0;top:24%;padding:14px 19px}.label-bottom{left:0;bottom:15%;padding:17px 23px}.label-dot{width:7px;height:7px;border-radius:50%;background:#b8865a}.label-script{font-family:Georgia,serif;color:#b8865a;font-size:16px;font-style:italic}.hero-bottom{position:relative;display:flex;justify-content:space-between;align-items:center;min-height:66px;border-top:1px solid rgba(241,237,223,.18);font-size:10px;letter-spacing:.17em;color:#c8d6ca;font-weight:700}.hero-bottom i{font-style:normal;color:var(--tan);padding:0 12px}.hero-scroll{color:#e4cfac}.hero-scroll span{font-size:15px;margin-left:12px}

.section{scroll-margin-top:20px}.about-section{padding:126px 0 133px}.about-grid{display:grid;grid-template-columns:220px 1fr;gap:50px}.section-index{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:10px;letter-spacing:.16em;font-weight:700;color:#6f8078}.index-number{font-size:12px;color:#b98958;letter-spacing:0}.index-rule{height:1px;width:27px;background:#b98958;display:inline-block}.kicker{font-size:13px;font-weight:700;letter-spacing:.025em;color:#a7784c;margin:0 0 21px}.section h2{font:400 clamp(44px,4.5vw,67px)/1.06 var(--serif);letter-spacing:-.035em;margin:0;color:var(--ink)}.section h2 em{color:#a77d55}.about-content h2{max-width:890px}.about-columns{max-width:880px;margin-top:43px;display:grid;grid-template-columns:1fr 1fr;gap:52px}.about-columns p{margin:0;font-size:15px;line-height:1.9;color:#52655e}.about-signoff{display:flex;align-items:center;gap:25px;margin-top:33px;color:#72837a;font-size:11px;font-weight:600}.signature{font:italic 33px Georgia,serif;color:#bd9166;transform:rotate(-7deg)}

.perspective-section{background:var(--mist);padding:105px 0 126px}.section-topline{display:flex;justify-content:space-between;align-items:center}.topline-aside{font-size:10px;letter-spacing:.13em;font-weight:700;color:#9baaa0}.perspective-heading{margin-top:70px}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:62px;border-top:1px solid #cbd8cc;border-bottom:1px solid #cbd8cc}.principle{min-height:314px;padding:28px 34px 33px 0;position:relative}.principle:not(:first-child){border-left:1px solid #cbd8cc;padding-left:34px}.principle-number{font:italic 15px Georgia,serif;color:#ae835d}.principle-icon{width:50px;height:50px;margin:35px 0 19px;position:relative}.icon-compass{border:1px solid #839d8b;border-radius:50%}.icon-compass:before,.icon-compass:after{content:"";position:absolute;top:8px;bottom:8px;left:24px;border-left:1px solid #839d8b;transform:rotate(45deg)}.icon-compass:after{transform:rotate(-45deg)}.icon-compass span{position:absolute;inset:19px;border-radius:50%;background:#a97d53;z-index:1}.icon-range:before{content:"";position:absolute;left:0;right:0;top:24px;border-top:1px solid #839d8b}.icon-range:after{content:"";position:absolute;width:32px;height:32px;border:1px solid #839d8b;border-radius:50%;top:8px;left:9px}.icon-range span{position:absolute;width:10px;height:10px;left:20px;top:20px;border-radius:50%;background:#a97d53;z-index:1}.icon-spark:before,.icon-spark:after{content:"";position:absolute;left:24px;top:0;height:50px;border-left:1px solid #839d8b}.icon-spark:after{transform:rotate(90deg)}.icon-spark span:before,.icon-spark span:after{content:"";position:absolute;left:24px;top:0;height:50px;border-left:1px solid #839d8b;transform:rotate(45deg)}.icon-spark span:after{transform:rotate(-45deg)}.principle h3{font:400 29px/1.12 var(--serif);letter-spacing:-.02em;margin:0 0 15px;color:var(--ink)}.principle p{font-size:13px;line-height:1.75;color:#64766d;max-width:340px;margin:0}

.background-section{padding:130px 0;background:#f8f6f1}.background-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:110px}.background-grid h2{margin-top:73px}.background-intro{font-size:15px;line-height:1.85;color:#65766e;max-width:390px;margin-top:29px}.chapter-list{border-top:1px solid var(--line)}.chapter{display:grid;grid-template-columns:93px 1fr 20px;gap:22px;align-items:start;padding:29px 0;border-bottom:1px solid var(--line)}.chapter-year{font-size:11px;color:#b08155;font-weight:700;padding-top:4px}.chapter h3{font:400 24px/1.15 var(--serif);color:var(--ink);margin:0 0 10px}.chapter p{font-size:12px;line-height:1.7;color:#6f8177;margin:0;max-width:450px}.chapter-mark{color:#b58b61;font-size:16px}.education-note{padding-top:29px;display:flex;gap:23px;align-items:start}.education-note>span{font-size:10px;font-weight:700;letter-spacing:.12em;color:#ad835a;padding-top:5px}.education-note p{margin:0;font-size:12px;color:#6e8177;line-height:1.7}.education-note b{padding:0 5px;font-weight:400;color:#bc966e}

.work-section{background:#f1efe8;padding:107px 0 118px}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin:66px 0 52px}.work-heading>p{font-size:14px;line-height:1.8;color:#66786f;max-width:330px;margin:0 0 4px}.work-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}.work-card{min-width:0;background:#fff;display:block;transition:transform .22s,box-shadow .22s}.work-card:hover{transform:translateY(-5px);box-shadow:0 18px 32px rgba(22,59,54,.09)}.work-visual{height:275px;position:relative;overflow:hidden}.forecast-visual{background:#203f3b}.forecast-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(219,230,211,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(219,230,211,.1) 1px,transparent 1px);background-size:52px 52px;transform:perspective(600px) rotateX(0deg)}.forecast-visual svg{position:absolute;width:88%;height:65%;left:6%;top:17%;overflow:visible}.forecast-visual path{fill:none;stroke:#e8c496;stroke-width:3.4;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.forecast-visual .forecast-band{stroke:#acc8b3;stroke-width:2;stroke-dasharray:4 9;opacity:.8}.visual-stamp{position:absolute;bottom:20px;left:23px;font-size:9px;font-weight:700;letter-spacing:.16em;color:#ede5d2}.ur-visual{background:#b08b65;display:grid;place-items:center}.ur-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,#c8ab82,transparent 64%),repeating-linear-gradient(0deg,transparent 0 32px,rgba(78,45,22,.05) 32px 33px)}.ur-board{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,48px);grid-template-rows:repeat(3,48px);gap:3px;transform:rotate(-7deg);box-shadow:0 20px 25px rgba(64,42,21,.23)}.ur-board span{display:grid;place-items:center;background:#e8d7b4;border:3px double #775b44;color:#607e75;font-size:34px}.ur-board span:nth-child(6),.ur-board span:nth-child(7){background:#c7a06d}.ur-visual .visual-stamp{color:#fff2d9}.work-card-body{padding:29px 33px 33px;position:relative;min-height:190px}.work-meta{font-size:10px;letter-spacing:.14em;font-weight:700;color:#a67c56}.work-meta i{font-style:normal;padding:0 5px;color:#c6a88d}.work-card h3{font:400 32px/1.15 var(--serif);color:var(--ink);margin:14px 0 11px;letter-spacing:-.015em}.work-card p{font-size:12px;line-height:1.7;color:#6b7b73;max-width:420px;margin:0}.card-arrow{position:absolute;right:27px;top:30px;font-size:21px;color:#b2875d}.writing-strip{border-top:1px solid #d6ded3;margin-top:45px;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:30px}.writing-strip>div{display:flex;align-items:center;gap:21px}.writing-icon{font-size:34px;color:#b5875e}.writing-strip h3{font:400 25px var(--serif);color:var(--ink);margin:5px 0 4px}.writing-strip p{font-size:12px;color:#718078;margin:0}.writing-strip .text-link{color:var(--ink)}

.contact-section{background:#163b36;color:#f2eee3;padding:112px 0;overflow:hidden}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:center}.contact-section h2{font:400 clamp(49px,5vw,74px)/1.04 var(--serif);letter-spacing:-.03em;margin:29px 0}.contact-section p:not(.eyebrow){font-size:15px;color:#cad7cc;line-height:1.75;max-width:445px;margin:0 0 32px}.contact-orbit{height:310px;position:relative;display:grid;place-items:center}.contact-orbit div{position:absolute;border:1px solid rgba(231,223,197,.24);border-radius:50%}.orbit-one{width:270px;height:270px}.orbit-two{width:210px;height:210px}.orbit-three{width:146px;height:146px}.contact-orbit:before,.contact-orbit:after{content:"";position:absolute;z-index:2;width:9px;height:9px;background:#d3ad7c;border-radius:50%}.contact-orbit:before{transform:translate(-129px,-40px)}.contact-orbit:after{transform:translate(91px,55px);width:6px;height:6px;background:#bfd3c5}.contact-orbit span{font:italic 62px var(--serif);color:#e4cbab}.site-footer{background:#f7f4ed}.footer-top{display:flex;align-items:center;justify-content:space-between;padding:37px 0;border-bottom:1px solid var(--line);color:var(--ink)}.footer-links{display:flex;gap:28px;font-size:12px;font-weight:700}.footer-links a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:23px 0 27px;color:#86938b;font-size:10px}

/* The same visual language also supports the two compact legacy project pages. */
.subpage-header{position:relative;background:var(--deep)}.subpage-header .nav-wrap{min-height:82px}.subpage-main{padding:95px 0 120px}.subpage-main .back-link{display:inline-flex;gap:12px;align-items:center;color:#967351;font-size:12px;font-weight:700;margin-bottom:65px}.subpage-main .back-link:hover{text-decoration:underline}.subpage-main h1{font:400 clamp(54px,6vw,82px)/1.03 var(--serif);color:var(--ink);letter-spacing:-.035em;margin:18px 0 23px;max-width:850px}.subpage-lede{font-size:18px;color:#5d7066;line-height:1.75;max-width:760px;margin:0}.subpage-content{max-width:790px;margin:70px 0 0 200px;border-top:1px solid var(--line)}.subpage-content section{padding:33px 0;border-bottom:1px solid var(--line)}.subpage-content h2{font:400 33px var(--serif);color:var(--ink);margin:0 0 14px}.subpage-content p,.subpage-content li{font-size:14px;line-height:1.85;color:#5c6f65}.subpage-content p{margin:0 0 12px}.subpage-content ul{padding-left:20px}.subpage-content a{text-decoration:underline;text-underline-offset:3px}

@media(max-width:1100px){.shell{width:min(100% - 64px,1260px)}.hero h1{font-size:clamp(54px,6vw,75px)}.hero-art{transform:translate(10px,20px)}.background-grid{gap:60px}.about-grid{grid-template-columns:170px 1fr;gap:35px}}
@media(max-width:800px){.shell{width:min(100% - 44px,1260px)}.nav-wrap{min-height:76px}.menu-toggle{display:flex;width:42px;height:42px;background:transparent;border:1px solid rgba(255,255,255,.5);flex-direction:column;align-items:center;justify-content:center;gap:6px;color:white;cursor:pointer}.menu-toggle span{width:18px;border-top:1px solid currentColor}.primary-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#183d37;padding:22px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 18px 24px rgba(0,0,0,.12)}.primary-nav.is-open{display:flex}.primary-nav a{padding:13px 5px}.nav-contact{margin:8px 0 0;border:1px solid rgba(255,255,255,.5);padding:12px 15px!important}.hero{min-height:0}.hero-inner{grid-template-columns:1fr;min-height:0;padding-top:138px;gap:5px}.hero-copy{padding:0}.hero h1{font-size:clamp(52px,10vw,76px)}.hero-intro{max-width:590px}.hero-art{height:370px;max-width:460px;width:100%;justify-self:center;transform:none;margin-top:-20px}.hero-art svg{width:100%;height:100%}.label-top{top:18%;right:0}.label-bottom{bottom:13%;left:0}.hero-bottom{min-height:64px}.about-section,.perspective-section,.background-section,.work-section{padding:90px 0}.about-grid,.background-grid{display:block}.about-grid>.section-index{margin-bottom:55px}.background-grid h2{margin-top:52px}.background-intro{margin-bottom:46px}.principles{grid-template-columns:1fr;margin-top:48px}.principle,.principle:not(:first-child){border-left:0;border-bottom:1px solid #cbd8cc;padding:27px 0;min-height:0}.principle:last-child{border-bottom:0}.principle-icon{margin:25px 0 15px}.work-grid{grid-template-columns:1fr 1fr}.work-visual{height:210px}.work-heading{margin:50px 0 40px}.contact-grid{grid-template-columns:1fr .5fr;gap:10px}.contact-orbit{transform:scale(.75)}.subpage-content{margin-left:0}}
@media(max-width:600px){.shell{width:min(100% - 36px,1260px)}.wordmark-name{font-size:14px}.hero-inner{padding-top:129px}.hero h1{font-size:clamp(48px,12vw,69px);white-space:normal;line-height:1.02;margin:29px 0 24px}.hero-intro{font-size:14px;line-height:1.75}.hero-actions{align-items:flex-start;flex-direction:column;gap:23px;margin-top:29px}.hero-art{height:310px;margin:4px auto -10px}.art-label{font-size:9px}.label-top{padding:10px 12px;right:-4px}.label-bottom{padding:11px 13px}.hero-bottom{font-size:8px;min-height:57px}.hero-bottom i{padding:0 4px}.hero-scroll{display:none}.about-section,.perspective-section,.background-section,.work-section{padding:75px 0 80px}.section h2{font-size:clamp(43px,10vw,57px)}.about-grid>.section-index{margin-bottom:42px}.about-columns{display:block;margin-top:31px}.about-columns p+p{margin-top:20px}.about-columns p{font-size:14px}.about-signoff{margin-top:25px}.topline-aside{display:none}.perspective-heading{margin-top:52px}.principle h3{font-size:28px}.background-grid h2{margin-top:47px}.chapter{grid-template-columns:65px 1fr;gap:15px}.chapter-mark{display:none}.chapter h3{font-size:22px}.education-note{display:block}.education-note p{margin-top:9px}.work-heading{display:block}.work-heading>p{margin-top:21px}.work-grid{grid-template-columns:1fr}.work-visual{height:235px}.work-card-body{min-height:0}.work-card h3{font-size:29px}.writing-strip{align-items:flex-start;flex-direction:column}.writing-strip>div{align-items:flex-start}.writing-strip .text-link{margin-left:49px}.contact-section{padding:79px 0 70px}.contact-grid{display:block}.contact-section h2{font-size:clamp(49px,10vw,62px)}.contact-orbit{display:none}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column;gap:24px}.footer-links{gap:20px}.footer-bottom{gap:8px}.subpage-main{padding:65px 0 85px}.subpage-main .back-link{margin-bottom:45px}.subpage-main h1{font-size:clamp(49px,11vw,67px)}.subpage-lede{font-size:16px}.subpage-content{margin-top:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Editorial details and reading comfort. */
.current-focus{display:grid;grid-template-columns:135px 1fr;gap:24px;align-items:start;max-width:880px;border-top:1px solid var(--line);margin-top:43px;padding-top:22px}.current-focus span{font-size:11px;font-weight:700;letter-spacing:.13em;color:#845d3d;padding-top:5px}.current-focus p{margin:0;max-width:660px;color:#4c6257;font-size:14px;line-height:1.75}.research-strip{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:32px;border-top:1px solid #cbd6cb;border-bottom:1px solid #cbd6cb;margin-top:43px;padding:28px 0}.research-strip h3{font:400 28px/1.15 var(--serif);color:var(--ink);margin:0 0 7px}.research-strip p{font-size:13px;line-height:1.7;color:#4d6258;max-width:570px;margin:0}.research-strip .text-link{color:var(--ink);white-space:nowrap}.writing-strip{border-top:0;margin-top:0}.contact-actions{display:flex;align-items:center;gap:29px;flex-wrap:wrap}.contact-actions .light-link{white-space:nowrap}
.section-index,.topline-aside,.work-meta,.eyebrow{font-size:11px}.section-index{color:#52685d}.topline-aside{color:#586e61}.index-number,.chapter-year,.education-note>span,.work-meta{color:#865d3c}.chapter-year{font-size:12px}.education-note>span{font-size:11px}.principle p,.work-heading>p,.background-intro,.about-columns p,.chapter p,.education-note p,.work-card p,.writing-strip p,.footer-bottom{color:#4d6258}.principle p{font-size:14px}.chapter p,.education-note p,.work-card p,.writing-strip p{font-size:13px}.footer-bottom{font-size:12px}.kicker{color:#835a3a}
@media(max-width:800px){.research-strip{grid-template-columns:1fr auto;gap:12px 30px}.research-strip>.work-meta{grid-column:1/-1}}
@media(max-width:600px){.current-focus{display:block;margin-top:31px;padding-top:22px}.current-focus p{margin-top:11px;font-size:13px}.research-strip{display:block;margin-top:30px}.research-strip h3{font-size:27px;margin-top:11px}.research-strip .text-link{margin-top:17px}.contact-actions{align-items:flex-start;flex-direction:column;gap:24px}.topline-aside{display:none}.section-index{font-size:10px}.footer-bottom{font-size:11px}}
