@font-face{font-family:"Source Serif 4";src:url("assets/source-serif-4.woff2") format("woff2");font-style:normal;font-weight:200 900;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("assets/source-sans-3.woff2") format("woff2");font-style:normal;font-weight:200 900;font-display:swap}
:root{--paper:#fffefa;--ink:#322631;--wine:#3c2030;--wine-deep:#2c1723;--muted:#655d64;--rule:#d7d1d1;--soft:#f1eeeb;--serif:"Source Serif 4",Georgia,serif;--sans:"Source Sans 3",Arial,sans-serif;--gutter:clamp(24px,5.2vw,88px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #987543;outline-offset:7px}
button:disabled{cursor:default}
::selection{background:#d5bbca;color:var(--wine-deep)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:500}
.skip-link{position:fixed;z-index:100;top:10px;left:16px;background:var(--paper);color:var(--wine);padding:12px 20px;transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.preview-banner{display:flex;justify-content:center;gap:20px;padding:7px 20px;background:#eee9ec;color:#51424d;font-size:12px;letter-spacing:.02em;line-height:1.25}
.preview-banner span+span{border-left:1px solid #c4b9bf;padding-left:20px}
.site-header{min-height:111px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:24px var(--gutter);background:var(--paper)}
.wordmark{font-family:var(--serif);font-weight:600;font-size:37px;line-height:1;letter-spacing:-1.8px;white-space:nowrap;font-optical-sizing:auto}
.brand-period{color:#8c6174}
.site-header nav{display:flex;gap:36px;align-items:center;font-size:16px;font-weight:500}
.site-header nav a{position:relative;padding:8px 0}
.site-header nav a::after{content:"";position:absolute;bottom:2px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.site-header nav a:hover::after{transform:scaleX(1)}
.nav-contact{margin-left:16px}
.nav-contact span{margin-left:20px;font-size:22px}
.hero{position:relative;isolation:isolate;min-height:600px;overflow:hidden;background:var(--wine)}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:-2}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(39,18,31,.96) 0%,rgba(43,20,34,.94) 34%,rgba(45,22,35,.61) 61%,rgba(42,20,33,.04) 84%)}
.hero-content{padding:55px var(--gutter) 45px;color:#fffaf5;max-width:1560px;margin:auto}
.eyebrow{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.135em;line-height:1.4}
.hero .eyebrow{color:#e3cfd8;margin-bottom:25px}
.hero h1{font-family:var(--serif);font-size:clamp(68px,7.7vw,112px);font-weight:500;letter-spacing:-.04em;line-height:1.025;max-width:920px;font-optical-sizing:auto;text-wrap:balance}
.hero-bottom{margin-top:32px;display:block;max-width:560px}
.hero-bottom p{font-size:21px;line-height:1.45;letter-spacing:.005em;color:#f2e6eb}
.hero-link{display:flex;align-items:center;gap:36px;width:fit-content;margin-top:24px;border-bottom:1px solid #c8aeba;padding:0 0 10px;font-size:16px;font-weight:500;white-space:nowrap}
.hero-link span{font-size:22px;transition:transform .2s ease}
.hero-link:hover span{transform:translateY(3px)}
.section-shell{padding-left:var(--gutter);padding-right:var(--gutter)}
.focus-section{display:grid;grid-template-columns:1fr 4fr;gap:40px;padding-top:94px;padding-bottom:98px;max-width:1660px;margin:auto}
.section-heading{padding-top:10px}
.section-heading .eyebrow{color:#78606d}
.focus-content{display:grid;grid-template-columns:1fr 1.05fr;gap:62px}
.focus-content h2{font-family:var(--serif);font-size:clamp(32px,3.4vw,47px);line-height:1.17;letter-spacing:-.025em;font-weight:500;font-optical-sizing:auto}
.focus-copy{font-size:18px;line-height:1.6;color:#514a51;max-width:565px}
.focus-copy p+p{margin-top:16px}
.search-section{background:var(--soft);padding-top:57px;padding-bottom:67px}
.search-intro{display:flex;align-items:baseline;justify-content:space-between;gap:25px;max-width:1475px;margin:0 auto 32px}
.search-intro h2{font-family:var(--serif);font-size:40px;font-weight:500;letter-spacing:-.025em}
.search-intro p{font-size:17px;color:var(--muted)}
.search-listing{display:grid;grid-template-columns:1.9fr .75fr .62fr;align-items:center;gap:36px;width:100%;max-width:1475px;margin:auto;text-align:left;border:0;border-top:1px solid #a69a9e;border-bottom:1px solid #a69a9e;background:transparent;padding:32px 0 34px;transition:color .2s ease}
.search-role{display:flex;flex-direction:column;align-items:flex-start}
.search-role .eyebrow{font-size:11px;letter-spacing:.13em;color:#79636d;margin-bottom:9px}
.role-title{font-family:var(--serif);font-size:clamp(29px,3vw,42px);line-height:1.15;font-weight:500;letter-spacing:-.025em}
.role-qualification{font-size:16px;margin-top:9px;color:var(--muted)}
.search-location{font-size:18px;line-height:1.35;padding-left:27px;border-left:1px solid var(--rule)}
.location-label{display:block;font-size:11px;line-height:1.4;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:#79636d;margin-bottom:12px}
.search-action{display:flex;align-items:center;justify-content:flex-end;gap:28px;font-size:16px;font-weight:600;white-space:nowrap}
.search-arrow{font-size:37px;font-weight:300;transition:transform .2s ease}
.search-listing:hover .role-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.search-listing:hover .search-arrow{transform:translate(3px,-3px)}
.judgment-section{padding-top:89px;padding-bottom:96px;max-width:1660px;margin:auto}
.judgment-heading{display:flex;align-items:flex-start;gap:40px;justify-content:space-between}
.judgment-heading .eyebrow{color:#78606d;max-width:200px;padding-top:11px}
.judgment-heading h2{font-family:var(--serif);font-size:clamp(34px,3.45vw,48px);letter-spacing:-.025em;line-height:1.18;width:79%;font-weight:500}
.priorities{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:57px;margin-left:21%}
.priority{border-top:1px solid var(--rule);padding-top:22px}
.priority h3{font-size:21px;font-weight:600;line-height:1.25;margin-bottom:11px;letter-spacing:-.01em}
.priority p{font-size:17px;line-height:1.55;color:var(--muted);max-width:330px}
.contact-section{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;background:var(--wine);color:#fcf7f4;padding-top:66px;padding-bottom:73px}
.contact-heading .eyebrow{color:#ddc7d2;margin-bottom:22px}
.contact-heading h2{font-family:var(--serif);font-size:clamp(36px,3.8vw,53px);line-height:1.16;letter-spacing:-.025em;font-weight:500}
.contact-copy{align-self:end;max-width:465px;padding-bottom:6px}
.contact-copy p{font-size:18px;line-height:1.55;color:#e6d8df}
.email-link{display:flex;gap:48px;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid #ac8b9c;background:none;padding:11px 0 13px;font-size:23px;font-weight:500;letter-spacing:-.01em;margin-top:19px}
.email-link span{font-size:29px;font-weight:400;transition:transform .2s ease}
.email-link:hover span{transform:translate(3px,-3px)}
.site-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding:45px var(--gutter) 39px}
.footer-wordmark{font-size:31px;letter-spacing:-1.4px}
.site-footer p{font-size:13px;color:var(--muted);margin-top:12px}
.footer-meta{display:flex;gap:35px;color:var(--muted);font-size:13px;align-items:center}
.footer-meta button{border:0;background:none;padding:0;font:inherit;text-decoration:underline;text-underline-offset:3px}
dialog{color:var(--ink);background:var(--paper);border:0;padding:0;box-shadow:0 12px 70px #170c223b;max-height:calc(100dvh - 52px);overscroll-behavior:contain}
dialog::backdrop{background:rgba(26,14,24,.7);backdrop-filter:blur(4px)}
body.dialog-open{overflow:hidden}
.dialog-top{display:flex;align-items:center;justify-content:space-between;padding:23px 38px;border-bottom:1px solid var(--rule);position:sticky;top:0;background:var(--paper);z-index:1}
.dialog-brand{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:-.8px}
.close-dialog{border:0;background:transparent;font-family:var(--sans);font-size:34px;font-weight:300;width:42px;height:42px;line-height:1;display:grid;place-items:center;color:var(--wine);padding:0}
.close-dialog:hover{background:var(--soft)}
.role-dialog{width:min(850px,calc(100vw - 48px))}
.role-dialog-content{padding:45px 65px 57px}
.role-dialog .eyebrow{color:#78606d;font-size:12px}
.role-dialog h2{font-family:var(--serif);font-size:60px;line-height:1.05;letter-spacing:-.035em;margin-top:20px;font-weight:500}
.role-lead{font-size:22px;line-height:1.45;margin-top:25px;max-width:620px}
.role-description{border-top:1px solid var(--rule);margin-top:30px;padding-top:29px;font-size:17px;line-height:1.6;color:#554c53}
.role-description h3{font-size:19px;font-weight:600;color:var(--ink);line-height:1.35;margin-bottom:12px}
.role-description ul{padding-left:21px;margin:0 0 30px}
.role-description li{padding-left:5px;margin-bottom:9px}
.role-description p+p{margin-top:13px}
.dialog-contact{display:inline-flex;align-items:center;gap:55px;border:1px solid var(--wine);padding:14px 22px;background:var(--wine);color:var(--paper);margin-top:29px;font-weight:500}
.dialog-contact:hover{background:#543345}
.small-dialog{width:min(530px,calc(100vw - 40px));padding:47px 42px 42px}
.small-dialog .close-dialog{position:absolute;right:16px;top:13px}
.small-dialog .eyebrow{color:#78606d;font-size:11px;padding-right:30px}
.small-dialog h2{font-family:var(--serif);font-size:38px;line-height:1.15;letter-spacing:-.025em;margin-top:16px;margin-bottom:23px}
.small-dialog p:not(.eyebrow){font-size:17px;line-height:1.6;color:#554c53}
.small-dialog .dialog-email{font-size:23px!important;color:var(--wine)!important;margin-bottom:14px;overflow-wrap:anywhere}
@media(min-width:1700px){.hero-content{padding-left:0;padding-right:0}.hero{min-height:665px}.hero-content{padding-top:65px}.hero h1{font-size:124px}.hero-bottom{margin-top:50px}.site-header,.site-footer{padding-left:max(var(--gutter),calc((100vw - 1475px)/2));padding-right:max(var(--gutter),calc((100vw - 1475px)/2))}.contact-section{padding-left:max(var(--gutter),calc((100vw - 1475px)/2));padding-right:max(var(--gutter),calc((100vw - 1475px)/2))}}
@media(max-width:1100px){.site-header{min-height:102px}.site-header nav{gap:25px;font-size:15px}.nav-contact{margin-left:0}.hero{min-height:550px}.hero-content{padding-top:49px}.hero h1{font-size:clamp(67px,8.6vw,97px)}.hero-bottom{max-width:790px;gap:28px}.hero-bottom p{font-size:19px}.hero-link{gap:23px;font-size:15px}.focus-section{grid-template-columns:1fr;gap:26px;padding-top:67px;padding-bottom:67px}.focus-content{grid-template-columns:1fr 1.1fr;gap:55px}.focus-content h2{font-size:42px}.focus-copy{font-size:17px}.search-listing{grid-template-columns:1.7fr .75fr .55fr;gap:24px}.role-title{font-size:33px}.search-action{gap:18px}.search-location{padding-left:22px;font-size:17px}.judgment-heading{display:block}.judgment-heading .eyebrow{max-width:none;padding:0;margin-bottom:25px}.judgment-heading h2{width:auto;font-size:43px}.priorities{margin-left:0;gap:35px;margin-top:42px}.contact-section{gap:55px}.contact-heading h2{font-size:41px}.contact-copy p{font-size:17px}.email-link{font-size:21px;gap:25px}}
@media(max-width:760px){:root{--gutter:25px}.preview-banner{font-size:11px;gap:12px;padding:7px 10px}.preview-banner span+span{padding-left:12px}.site-header{min-height:110px;display:block;padding-top:22px;padding-bottom:18px}.wordmark{font-size:32px;letter-spacing:-1.4px}.site-header nav{gap:26px;font-size:14px;justify-content:space-between;margin-top:18px}.nav-contact span{margin-left:7px;font-size:18px}.site-header nav a{padding:2px 0}.hero{min-height:560px}.hero-image{object-position:61% 56%;opacity:.83}.hero-shade{background:linear-gradient(90deg,rgba(39,18,31,.92) 0%,rgba(43,20,34,.85) 38%,rgba(45,22,35,.55) 74%,rgba(42,20,33,.3) 100%)}.hero-content{padding-top:39px;padding-bottom:36px}.hero .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:29px}.hero h1{font-size:clamp(54px,10.9vw,82px);letter-spacing:-.04em;line-height:1.055}.hero-bottom{display:block;margin-top:34px}.hero-bottom p{font-size:18px;line-height:1.5}.hero-link{display:inline-flex;margin-top:28px;font-size:15px;gap:41px;padding-bottom:9px}.focus-section{padding-top:50px;padding-bottom:54px;gap:22px}.eyebrow{font-size:11px}.focus-content{grid-template-columns:1fr;gap:24px}.focus-content h2{font-size:37px;line-height:1.17}.focus-copy{font-size:17px;line-height:1.6;max-width:570px}.focus-copy p+p{margin-top:14px}.search-section{padding-top:41px;padding-bottom:43px}.search-intro{display:block;margin-bottom:26px}.search-intro h2{font-size:34px;line-height:1.2}.search-intro p{font-size:16px;margin-top:11px}.search-listing{grid-template-columns:1fr auto;gap:26px 15px;padding-top:27px;padding-bottom:25px}.search-role{grid-column:1/-1}.role-title{font-size:33px}.role-qualification{font-size:15px;margin-top:8px}.search-location{padding:0;border:none;font-size:16px}.search-location br{display:none}.search-location .location-label{font-size:10px;margin-bottom:6px}.search-action{align-self:end;font-size:15px;gap:19px}.search-arrow{font-size:32px}.judgment-section{padding-top:54px;padding-bottom:57px}.judgment-heading .eyebrow{margin-bottom:21px}.judgment-heading h2{font-size:35px;line-height:1.2}.priorities{grid-template-columns:1fr;gap:24px;margin-top:33px}.priority{padding-top:19px}.priority h3{font-size:20px;margin-bottom:7px}.priority p{font-size:17px;max-width:none}.contact-section{grid-template-columns:1fr;gap:28px;padding-top:45px;padding-bottom:48px}.contact-heading .eyebrow{margin-bottom:20px}.contact-heading h2{font-size:36px;line-height:1.18}.contact-copy{max-width:570px}.contact-copy p{font-size:17px}.email-link{font-size:22px;margin-top:20px;width:100%;max-width:340px;gap:15px}.site-footer{display:block;padding-top:34px;padding-bottom:28px}.footer-wordmark{font-size:29px}.site-footer p{margin-top:9px}.footer-meta{justify-content:space-between;gap:25px;margin-top:32px;font-size:12px}.role-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.dialog-top{padding:15px 20px}.role-dialog-content{padding:30px 24px 35px}.role-dialog .eyebrow{font-size:10px}.role-dialog h2{font-size:46px;margin-top:18px}.role-lead{font-size:20px;margin-top:23px}.role-description{font-size:16px;margin-top:26px;padding-top:25px}.role-description h3{font-size:18px}.role-description ul{padding-left:18px}.small-dialog{padding:44px 27px 32px}.small-dialog h2{font-size:35px}}
@media(max-width:380px){:root{--gutter:21px}.site-header nav{gap:12px;font-size:13px}.nav-contact span{margin-left:3px}.hero{min-height:530px}.hero h1{font-size:52px}.hero .eyebrow{font-size:10px}.role-title{font-size:30px}.contact-heading h2{font-size:33px}.email-link{font-size:20px}.search-action{gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* The introduction form */
[hidden]{display:none!important}
.contact-section{align-items:start}
.contact-intro{max-width:440px;font-size:19px;line-height:1.6;color:#e6d8df;margin-top:26px}
.contact-reassurance{color:#d1bbc7;font-size:15px;line-height:1.5;margin-top:20px}
.contact-form-wrap{width:100%;max-width:540px;justify-self:end}
.contact-form{position:relative;display:flex;flex-direction:column;gap:21px}
.form-field{min-width:0}
.form-field label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:17px;font-weight:500;line-height:1.4;margin-bottom:8px}
.optional-label{font-size:13px;font-weight:400;color:#d1bbc7}
.form-field input,.form-field textarea{display:block;width:100%;min-height:52px;border:1px solid #aa8f9f;border-radius:2px;background:#fffdfa;color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.45;padding:12px 14px;box-shadow:none;appearance:none;transition:border-color .15s ease,box-shadow .15s ease}
.form-field textarea{resize:vertical;min-height:132px;max-height:460px}
.form-field input::placeholder,.form-field textarea::placeholder{color:#777078;opacity:1;font-size:16px}
.form-field input:focus,.form-field textarea:focus{outline:2px solid #d4b891;outline-offset:3px;border-color:#d4b891}
.form-field input[aria-invalid="true"],.form-field textarea[aria-invalid="true"]{border:2px solid #ffb7b8;padding:11px 13px}
.field-hint{font-size:14px;line-height:1.45;color:#d6c2ce;margin:-2px 0 10px}
.field-error{color:#ffd0cd;font-size:14px;line-height:1.4;margin-top:8px}
.form-note{font-size:13px;line-height:1.5;color:#d1bbc7;margin-top:-3px}
.form-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.form-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;width:100%;border:1px solid #fffdfa;border-radius:2px;padding:12px 17px;background:#fffdfa;color:var(--wine);font-size:18px;font-weight:600;line-height:1.4;transition:background .18s ease,border-color .18s ease}
.form-submit:hover:not(:disabled){background:#ecdee5;border-color:#ecdee5}
.form-submit:focus-visible{outline-color:#d4b891;outline-offset:5px}
.form-submit:disabled{opacity:.64;cursor:not-allowed}
.form-submit .submit-arrow{font-size:25px;font-weight:400;line-height:1}
.submit-spinner{width:20px;height:20px;flex:0 0 20px;border:2px solid #9d8d98;border-right-color:var(--wine);border-radius:50%;animation:form-spin .8s linear infinite}
.form-status{color:#e6d8df;font-size:14px;line-height:1.5;margin-top:-7px;overflow-wrap:anywhere}
.form-status:empty{display:none}
.form-status[data-state="error"]{color:#ffd0cd}
.form-retry{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;align-self:flex-start;min-height:44px;border:1px solid #ad8d9e;border-radius:2px;padding:9px 15px;background:transparent;color:#fffaf5;font-size:15px;line-height:1.5;margin-top:-7px}
.form-retry:hover:not(:disabled){background:#533447}
.form-retry:focus-visible{outline-color:#d4b891;outline-offset:5px}
.form-retry:disabled{opacity:.65;cursor:wait}
.contact-security{max-width:100%;overflow-x:auto;margin-top:-2px}
.contact-security:focus-visible{outline:2px solid #d4b891;outline-offset:5px}
.contact-success{border-top:1px solid #ad8d9e;padding-top:31px;margin-top:6px}
.contact-success:focus{outline:none}
.success-mark{display:grid;place-items:center;width:47px;height:47px;border:1px solid #ac8b9c;border-radius:50%;font-size:22px;margin-bottom:24px}
.contact-success h3{font-family:var(--serif);font-size:43px;font-weight:500;line-height:1.16;letter-spacing:-.025em}
.contact-success p{font-size:18px;color:#e6d8df;line-height:1.55;margin-top:23px;max-width:400px}
.privacy-preview-note{margin-top:18px}
@keyframes form-spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.contact-intro{font-size:18px}.contact-form-wrap{max-width:none}}
@media(max-width:760px){.contact-section{gap:35px}.contact-intro{font-size:17px;line-height:1.6;margin-top:22px;max-width:540px}.contact-reassurance{font-size:14px;margin-top:13px}.contact-form{gap:21px}.form-field label{font-size:17px}.form-field input,.form-field textarea{font-size:18px;min-height:54px}.form-field textarea{min-height:132px}.form-submit{min-height:56px}.contact-success h3{font-size:37px}.contact-success{margin-top:0}.form-status{font-size:14px}}
@media(prefers-reduced-motion:reduce){.submit-spinner{animation:none}}

/* A quiet moving image, with a visible pause control. */
.hero-image{transform-origin:52% 58%;animation:hero-drift 27s ease-in-out infinite alternate;animation-play-state:paused;will-change:transform}
.motion-control{position:absolute;right:var(--gutter);bottom:25px;display:flex;align-items:center;gap:9px;min-height:44px;padding:9px 13px;border:1px solid #f8edf37a;background:#2c1723cc;color:#fffaf5;font-size:12px;font-weight:500;line-height:1.2;border-radius:2px}
.motion-control:hover{background:#2c1723}
.motion-control [data-motion-icon]{display:block;width:13px;font-size:12px;line-height:1}
.motion-control:focus-visible{outline-color:#fffaf5;outline-offset:4px}
@keyframes hero-drift{from{transform:scale(1.025) translate3d(.2%,0,0)}to{transform:scale(1.105) translate3d(-1.2%,.5%,0)}}
@media(max-width:760px){.hero-content{padding-bottom:88px}.motion-control{bottom:20px;right:var(--gutter);min-height:44px}.hero-image{animation-name:hero-drift-mobile}}
@keyframes hero-drift-mobile{from{transform:scale(1.02) translate3d(0,0,0)}to{transform:scale(1.075) translate3d(-.5%,.3%,0)}}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none!important;transform:none!important}.motion-control{display:none!important}}

/* The current search has a dedicated, shareable page. */
.search-page .site-header{border-bottom:1px solid var(--rule)}
.role-page-hero{padding-top:31px;padding-bottom:64px;background:var(--soft)}
.back-link{display:inline-flex;gap:13px;align-items:center;min-height:44px;font-size:15px;color:var(--muted)}
.back-link:hover{text-decoration:underline;text-underline-offset:4px}
.role-page-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end;padding-top:36px;max-width:1475px;margin:auto}
.role-page-heading .eyebrow{color:#78606d;margin-bottom:22px}
.role-page-heading h1{font-family:var(--serif);font-size:clamp(59px,6.9vw,101px);font-weight:500;line-height:1.03;letter-spacing:-.04em}
.role-page-summary{padding-bottom:8px;max-width:430px}
.role-page-summary p{font-size:22px;line-height:1.5;color:#554c53}
.role-page-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;min-height:52px;padding:13px 20px;background:var(--wine);color:var(--paper);font-size:17px;font-weight:500;line-height:1.45;margin-top:27px;border:1px solid var(--wine)}
.role-page-cta span{font-size:21px;line-height:1}
.role-page-cta:hover{background:#543345;border-color:#543345}
.role-page-body{display:grid;grid-template-columns:.8fr 2fr;gap:90px;padding-top:73px;padding-bottom:83px;max-width:1625px;margin:auto}
.role-facts .eyebrow{color:#78606d;margin-bottom:27px}
.role-facts dl{margin:0}
.role-facts dl div{border-top:1px solid var(--rule);padding:18px 0 21px}
.role-facts dt{font-size:13px;color:var(--muted);margin-bottom:8px}
.role-facts dd{font-size:17px;line-height:1.4;margin:0}
.role-page-copy{max-width:820px}
.role-page-copy h2{font-family:var(--serif);font-size:36px;font-weight:500;letter-spacing:-.025em;line-height:1.2;margin-bottom:24px}
.role-page-copy p{font-size:18px;line-height:1.65;color:#554c53}
.role-requirements{list-style:none;padding:0;margin:35px 0 0}
.role-requirements li{display:block;padding:22px 0 23px;border-top:1px solid var(--rule)}
.role-requirements strong{display:block;font-weight:600;font-size:20px;line-height:1.35;margin-bottom:7px}
.role-requirements span{display:block;font-size:18px;line-height:1.55;color:#655d64}
.role-conversation{margin-top:33px;padding-top:34px;border-top:1px solid var(--rule)}
.role-conversation p+p{margin-top:17px}
.role-conversation .role-contact-note{font-size:14px;margin-top:14px;color:var(--muted)}
.search-page .site-footer{border-top:1px solid var(--rule)}
@media(max-width:1100px){.role-page-heading{gap:42px}.role-page-heading h1{font-size:67px}.role-page-summary p{font-size:20px}.role-page-body{gap:55px;grid-template-columns:.9fr 2fr}.role-page-copy h2{font-size:33px}}
@media(max-width:760px){.role-page-hero{padding-top:22px;padding-bottom:42px}.role-page-heading{grid-template-columns:1fr;gap:27px;padding-top:25px}.role-page-heading .eyebrow{font-size:11px;margin-bottom:20px}.role-page-heading h1{font-size:clamp(49px,11.8vw,72px);line-height:1.06}.role-page-summary{max-width:540px;padding:0}.role-page-summary p{font-size:19px;line-height:1.55}.role-page-cta{min-height:54px;margin-top:24px;gap:47px;font-size:17px}.role-page-body{grid-template-columns:1fr;gap:39px;padding-top:38px;padding-bottom:48px}.role-facts .eyebrow{margin-bottom:17px}.role-facts dl div{display:grid;grid-template-columns:90px 1fr;gap:14px;padding:14px 0}.role-facts dt{font-size:13px;margin:0;padding-top:2px}.role-facts dd{font-size:16px}.role-page-copy h2{font-size:32px;margin-bottom:20px}.role-page-copy p{font-size:17px;line-height:1.65}.role-requirements{margin-top:28px}.role-requirements li{padding:20px 0}.role-requirements strong{font-size:19px}.role-requirements span{font-size:17px}.role-conversation{margin-top:22px;padding-top:30px}}
@media(max-width:380px){.role-page-heading h1{font-size:44px}}

/* Contact is a clear action in both page headers. */
.site-header nav a{display:inline-flex;align-items:center;min-height:44px}
.site-header nav a.nav-contact{display:inline-flex;align-items:center;justify-content:center;gap:19px;min-height:46px;margin-left:4px;padding:11px 18px;border:1px solid var(--wine);border-radius:2px;background:var(--wine);color:var(--paper);line-height:1.3}
.site-header nav a.nav-contact span{margin:0;font-size:20px;line-height:1}
.site-header nav a.nav-contact::after{display:none}
.site-header nav a.nav-contact:hover,.site-header nav a.nav-contact[aria-current]{background:#543345;border-color:#543345}
.site-header nav a[aria-current]:not(.nav-contact)::after{transform:scaleX(1)}
.site-header nav a.nav-contact[aria-current]{box-shadow:0 0 0 3px var(--paper),0 0 0 4px #8c6174}
.site-header nav a:active{transform:translateY(1px)}
.site-header nav a:focus-visible{outline:3px solid #987543;outline-offset:5px}
.form-submit{min-height:58px;border:1px solid #d9bea0;background:#e5ccb0;color:#352130;border-radius:4px;box-shadow:0 3px 0 #a88972;font-size:18px;font-weight:650;padding:14px 20px;margin-top:3px}
.form-submit:hover:not(:disabled){background:#f0d9be;border-color:#f0d9be;box-shadow:0 4px 0 #a88972}
.form-submit:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 #a88972}
.form-submit:disabled{opacity:1;background:#c8b49f;border-color:#d0beac;color:#493342;box-shadow:0 3px 0 #8d776b;cursor:not-allowed}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.attachment-picker{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;min-width:164px;padding:11px 16px;border:1px solid #c4aaba;border-radius:3px;background:#553449;color:#fffaf5;font-size:16px;font-weight:500;line-height:1.4;overflow:hidden}
.attachment-picker:hover{background:#654356}
.attachment-picker:focus-within{outline:2px solid #d4b891;outline-offset:4px}
.attachment-icon{font-size:24px;font-weight:300;line-height:1}
.attachment-picker input.attachment-input{position:absolute;inset:0;width:100%;height:100%;min-height:100%;margin:0;padding:0;opacity:0;cursor:pointer;z-index:1;border:0}
.attachment-picker input.attachment-input:disabled{cursor:wait}
.attachment-selection{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:13px;border-top:1px solid #7d5d71;padding-top:12px}
.attachment-selection>div{min-width:0}
.attachment-name{display:block;overflow-wrap:anywhere;color:#fffaf5;font-size:15px;line-height:1.45}
.attachment-size{display:block;color:#d1bbc7;font-size:12px;line-height:1.4;margin-top:3px}
.attachment-remove{display:flex;align-items:center;gap:9px;flex-shrink:0;min-height:44px;padding:8px 0 8px 10px;border:0;background:none;color:#f4e7ee;font-size:13px;line-height:1.4;text-decoration:underline;text-underline-offset:3px}
.attachment-remove span{font-size:22px;line-height:1;text-decoration:none}
.attachment-remove:focus-visible{outline-color:#d4b891;outline-offset:3px}
.attachment-remove:disabled{opacity:.6;cursor:wait}
@media(max-width:760px){.site-header nav{align-items:center;gap:18px;margin-top:16px}.site-header nav a.nav-contact{min-height:44px;gap:15px;padding:10px 15px;margin-left:0;font-size:14px}.site-header nav a.nav-contact span{font-size:18px}.site-header{padding-bottom:19px}.form-submit{min-height:60px;font-size:18px;padding:15px 18px}.attachment-picker{min-height:50px;min-width:168px}}
@media(max-width:380px){.site-header nav{gap:12px}.site-header nav a.nav-contact{font-size:13px;gap:10px;padding:10px 13px}.attachment-selection{gap:10px}}

/* The selected conversation image stays separate from the text. */
.hero{display:grid;grid-template-columns:44% 56%;min-height:0;overflow:hidden;background:var(--wine)}
.hero-content{grid-column:1;grid-row:1;width:100%;padding:clamp(40px,5vw,78px) clamp(24px,4.2vw,68px);margin:0;align-self:center;max-width:none}
.hero h1{font-size:clamp(47px,5.15vw,82px);line-height:1.08;letter-spacing:-.035em}
.hero-bottom p{font-size:clamp(17px,1.6vw,22px)}
.hero-link{font-size:16px;white-space:normal;gap:22px;border:1px solid #c8aeba;padding:14px 18px;margin-top:32px;line-height:1.4}
.hero-visual{grid-column:2;grid-row:1;position:relative;overflow:hidden;min-height:560px;background:#c4ad96}
.hero-visual .hero-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%;transform-origin:50% 65%;animation:conversation-drift 26s ease-in-out infinite alternate}
.hero-shade{display:none}
.hero-daylight{position:absolute;inset:-20%;pointer-events:none;z-index:1;background:linear-gradient(110deg,transparent 25%,rgba(255,242,211,.09) 45%,transparent 68%);animation:daylight-drift 22s ease-in-out infinite alternate;mix-blend-mode:screen}
.hero .motion-control{z-index:2;right:22px;bottom:22px;background:rgba(45,25,36,.8)}
.hero.motion-paused .hero-daylight{animation-play-state:paused}
@keyframes conversation-drift{from{transform:scale(1)}to{transform:scale(1.035) translate3d(-.35%,-.2%,0)}}
@keyframes daylight-drift{from{transform:translateX(-5%);opacity:.35}to{transform:translateX(7%);opacity:.85}}
@media(max-width:1050px) and (min-width:761px){.hero{grid-template-columns:43% 57%}.hero h1{font-size:49px}.hero-content{padding:40px 28px}.hero-visual{min-height:540px}}
@media(max-width:760px){.hero{grid-template-columns:1fr}.hero-content{grid-column:1;grid-row:1;padding:38px var(--gutter) 40px}.hero h1{font-size:clamp(46px,10vw,65px)}.hero .eyebrow{font-size:11px}.hero-bottom{margin-top:22px}.hero-bottom p{font-size:18px}.hero-link{margin-top:26px;font-size:15px;max-width:330px}.hero-visual{grid-column:1;grid-row:2;min-height:0;aspect-ratio:3/2}.hero .motion-control{right:14px;bottom:14px;font-size:11px;min-height:44px}.hero-visual .hero-image{object-position:50% 62%}}
@media(prefers-reduced-motion:reduce){.hero-visual .hero-image,.hero-daylight{animation:none!important;transform:none!important}.hero-daylight{opacity:.25}}

/* User-approved DT profile logo. */
.wordmark .brand-logo{display:block;width:150px;height:auto;max-width:100%;mix-blend-mode:multiply}.site-header .wordmark{line-height:1;flex-shrink:0}.footer-wordmark .brand-logo{width:150px}@media(max-width:760px){.wordmark .brand-logo{width:128px}.site-header{padding-top:18px}}

/* A single quiet reveal: graphite detail, then watercolor. No procedural movement. */
.hero .illustration-visual{background:#faf8f3;min-height:560px}
.hero .illustration-visual .hero-image{object-fit:contain;object-position:center;opacity:1;transform:none;will-change:auto;animation:illustration-develop 5s ease-out both}
.illustration-paper{position:absolute;inset:0;background:#faf8f3;pointer-events:none;animation:paper-reveal 3.6s cubic-bezier(.2,.55,.2,1) both;mask-image:linear-gradient(115deg,transparent 0%,#000 16%);mask-size:800% 100%}
.hero.motion-paused .illustration-paper{animation-play-state:paused}
@keyframes paper-reveal{from{mask-position:100% 0;opacity:1}to{mask-position:0% 0;opacity:0}}
@keyframes illustration-develop{0%,28%{filter:grayscale(1);opacity:.35}65%{filter:grayscale(.7);opacity:1}100%{filter:grayscale(0);opacity:1}}
@media(max-width:760px){.hero .illustration-visual{min-height:0;aspect-ratio:3/2}.hero .illustration-visual .hero-image{opacity:1}}
@media(prefers-reduced-motion:reduce){.hero .illustration-visual .hero-image{animation:none!important;filter:none;opacity:1}.illustration-paper{display:none}}

.wordmark .brand-logo{filter:brightness(1.04);mix-blend-mode:multiply}

/* Atelier reveal: graphite gestures, feathered pigment blooms, final artwork. */
.hero .atelier-visual{background:#faf8f3;min-height:560px;display:flex;align-items:center}
.atelier-art{display:block;width:100%;height:auto;overflow:hidden}
.pencil-trace{stroke-dasharray:1;stroke-dashoffset:1;animation:trace-draw 2.3s cubic-bezier(.3,.1,.2,1) both}
.trace-b{animation-delay:.45s}.trace-c{animation-delay:.9s}
.pigment-bloom{transform-box:fill-box;transform-origin:center;transform:scale(0);opacity:0;animation:pigment-spread 3.7s cubic-bezier(.15,.55,.2,1) both}
.bloom-a{animation-delay:1.6s}.bloom-b{animation-delay:2s}.bloom-c{animation-delay:2.5s}
.finished-art{opacity:0;animation:art-settle 1.2s ease-in-out 5.2s both}
.graphite-layer{animation:graphite-soften 1.5s ease 4.5s both}
.hero.motion-paused .atelier-art *{animation-play-state:paused!important}
.hero.reveal-reset .atelier-art *{animation:none!important}
.hero .motion-control{background:rgba(60,32,48,.88)}
@keyframes trace-draw{to{stroke-dashoffset:0}}
@keyframes pigment-spread{0%{transform:scale(.015);opacity:0}15%{opacity:.7}75%{opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes art-settle{to{opacity:1}}
@keyframes graphite-soften{to{opacity:0}}
@media(max-width:760px){.hero .atelier-visual{min-height:0;aspect-ratio:3/2}}
@media(prefers-reduced-motion:reduce){.atelier-art *{animation:none!important}.finished-art{opacity:1}.graphite-layer,.color-layer,.paper-impression{display:none}}
.graphite-layer{opacity:.52}

/* Finer edge-derived pencil detail, then the approved watercolor finish. */
.drawn-line{animation-duration:1.65s;animation-timing-function:linear}
.graphite-layer{opacity:.85;animation-delay:5.2s}
.bloom-a{animation-delay:3.5s}.bloom-b{animation-delay:3.9s}.bloom-c{animation-delay:4.3s}
.finished-art{animation-delay:6.6s}
@keyframes trace-draw{0%{stroke-dashoffset:1;opacity:0}4%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}

/* Continuous working order: doctor, patient, hands, clothing, one connected wash. */
.drawn-line{animation-duration:.7s;animation-timing-function:cubic-bezier(.2,.35,.45,1)}
.paint-pass{stroke-dasharray:1;stroke-dashoffset:1;opacity:0;animation:paint-follow 4.2s linear 3.7s both}
.graphite-layer{animation-delay:7s;animation-duration:1s}
.finished-art{animation-delay:7.7s;animation-duration:.8s}
@keyframes paint-follow{0%{stroke-dashoffset:1;opacity:0}2%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}

/* A single editorial opportunity, with criteria on the dedicated search page. */
.opportunity-section{display:grid;grid-template-columns:25% 1fr;gap:44px;padding-top:76px;padding-bottom:84px;background:#f3eee7;border-top:1px solid #dfd5cc}
.opportunity-label>p+p{font-size:16px;color:#786974;margin-top:18px}
.opportunity-story{max-width:870px}.opportunity-story h2{font-family:var(--serif);font-size:clamp(38px,4.2vw,62px);font-weight:400;line-height:1.13;letter-spacing:-.035em;margin:0 0 28px}
.opportunity-lead{font-size:25px;line-height:1.5;max-width:740px;margin:0 0 20px;color:#432c39}
.opportunity-detail{font-size:18px;line-height:1.65;color:#766773;max-width:740px;margin:0 0 38px}
.opportunity-link{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid #bbabb1;border-bottom:1px solid #bbabb1;color:var(--wine);text-decoration:none}
.opportunity-role{display:block;font-size:25px;font-weight:550}.opportunity-link-note{display:block;font-size:15px;margin-top:7px;color:#766773}.opportunity-link>span+span{font-size:36px;transition:transform .2s}.opportunity-link:hover>span+span{transform:translate(3px,-3px)}
@media(max-width:760px){.opportunity-section{grid-template-columns:1fr;gap:28px;padding-top:46px;padding-bottom:50px}.opportunity-label>p+p{margin-top:8px}.opportunity-story h2{font-size:38px}.opportunity-lead{font-size:21px}.opportunity-detail{font-size:17px}.opportunity-role{font-size:23px}.opportunity-link-note{font-size:14px}}

/* Selected hatch direction: an airy, integrated editorial composition. */
.hatch-home{background:#f6f3ed}.hatch-home .site-header{background:transparent;position:relative;justify-content:center;padding-top:25px;padding-bottom:16px;min-height:148px}.hatch-home .brand-logo{width:158px;height:auto;filter:contrast(1.12);mix-blend-mode:multiply}.hatch-home .site-header nav{position:absolute;right:var(--gutter);gap:24px;font-size:14px}.hatch-home .site-header nav a:first-child{display:none}.hatch-home .nav-contact{margin-left:0}.hatch-hero{max-width:1600px;margin:auto;overflow:hidden;padding:34px 5% 12px}.hatch-copy{text-align:center;position:relative;z-index:1}.hatch-copy .eyebrow{font-size:11px;letter-spacing:.17em;margin-bottom:19px}.hatch-copy h1{font-family:var(--serif);font-weight:400;font-size:clamp(62px,6.1vw,94px);letter-spacing:-.055em;line-height:1.03}.hatch-copy h1 br{display:none}.hatch-intro{font-size:18px;line-height:1.6;color:#6d5c65;margin:22px auto}.hatch-link{display:inline-flex;align-items:center;gap:30px;font-size:15px;padding:8px 0 11px;border-bottom:1px solid #998991}.hatch-link span{font-size:20px}.hatch-art{position:relative;width:min(1030px,100%);aspect-ratio:1.5;margin:5px auto 0;isolation:isolate}.hatch-art img,.hatch-art canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.hatch-art canvas{opacity:0}.hatch-art.draw-ready canvas{opacity:1}.hatch-art.draw-ready img{opacity:0}.hatch-art figcaption{position:absolute;bottom:9px;right:4%;font:italic 13px var(--serif);color:#81717a;letter-spacing:.02em}.hatch-home .focus-section{border-top:1px solid #ddd4cd}
@media(max-width:760px){.hatch-home .site-header{min-height:0;padding:22px 24px 14px;flex-direction:column;gap:16px}.hatch-home .brand-logo{width:132px;max-height:none}.hatch-home .site-header nav{position:static;gap:30px;font-size:13px;width:100%;justify-content:center}.hatch-home .site-header .nav-contact{padding:8px 14px}.hatch-hero{padding:25px 22px 8px}.hatch-copy h1{font-size:clamp(46px,12vw,72px);line-height:1.04}.hatch-copy h1 br{display:block}.hatch-copy .eyebrow{font-size:10px;margin-bottom:18px}.hatch-intro{font-size:16px;line-height:1.55;margin:20px auto 16px}.hatch-link{font-size:13px;gap:20px}.hatch-art{width:calc(100% + 44px);margin:10px -22px 0;aspect-ratio:1.38}.hatch-art figcaption{font-size:11px;right:24px;bottom:0}}
.hatch-art img,.hatch-art canvas{mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 91%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 5%,#000 91%,transparent)}
.hatch-home .site-header{display:flex}.hatch-home .site-header nav{margin-top:0}

/* Illustrated secondary pages and complete navigation. */
.hatch-home .site-header{flex-direction:column;gap:16px}.hatch-home .site-header nav{position:static;justify-content:center}.hatch-home .site-header nav a:first-child{display:block}.location-art{max-width:1200px;margin:42px auto 0;padding:0 40px}.location-art img{display:block;width:100%;max-height:480px;object-fit:cover;object-position:center 58%;mix-blend-mode:multiply}.location-art figcaption,.about-story figcaption{font:italic 13px var(--serif);color:var(--muted);padding-top:12px;text-align:right}.about-page{background:#f6f3ed}.about-page .site-header{background:transparent}.about-heading{padding-top:62px;padding-bottom:48px}.about-heading h1{font:400 clamp(50px,5.5vw,84px)/1.06 var(--serif);letter-spacing:-.045em;margin:20px 0}.about-deck{font-size:21px;color:var(--muted)}.about-story{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:start;padding-bottom:90px}.about-story img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.about-story p{font-size:19px;line-height:1.75;margin-bottom:25px}.about-story .role-page-cta{margin-top:9px}.about-page .brand-logo{filter:contrast(1.12)}
@media(max-width:760px){.hatch-home .site-header nav{gap:18px;font-size:12px}.site-header nav{gap:18px;font-size:13px}.location-art{margin-top:25px;padding:0 24px}.location-art img{aspect-ratio:1.35;object-fit:cover}.location-art figcaption{font-size:11px}.about-heading{padding-top:36px;padding-bottom:30px}.about-heading h1{font-size:49px}.about-deck{font-size:18px}.about-story{grid-template-columns:1fr;gap:30px;padding-bottom:55px}.about-story p{font-size:17px;line-height:1.7}.about-story figure{margin:0}.about-story figcaption{font-size:12px}.about-page .site-header nav{justify-content:space-between}.about-page .nav-contact{margin-left:0}}
