/* Bennettek — buildless, local assets, no external fonts or JavaScript. */
:root{color-scheme:light;--paper:#f7f5ef;--ink:#243d34;--body:#4d5a52;--muted:#687268;--line:#d9ddd2;--sage:#dfe5d8;--accent:#9d5d3f;--serif:Georgia,'Times New Roman',serif;--sans:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:36px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}
::selection{background:#d8dfcb;color:#20382e}
.wrap{width:min(1160px,calc(100% - 112px));margin-inline:auto}
.site-header{display:flex;justify-content:space-between;align-items:center;min-height:112px;border-bottom:1px solid var(--line);gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-size:23px;letter-spacing:-1px;font-weight:650}
.brand-mark{font-family:var(--serif);font-size:29px;font-weight:400;background:var(--ink);color:var(--paper);width:39px;height:39px;border-radius:50%;display:grid;place-items:center;line-height:1;padding-bottom:4px;letter-spacing:-2px;padding-right:3px}
.brand-dot{color:var(--accent)}
nav{display:flex;gap:34px;font-size:13px;font-weight:550}
nav a{padding-block:14px;border-bottom:1px solid transparent}
nav a:hover{border-color:var(--ink)}
nav a span{margin-left:7px}
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:68px;align-items:center;padding-block:72px 78px}
.eyebrow{text-transform:uppercase;letter-spacing:2.1px;font-size:10px;font-weight:650;line-height:1.6;margin:0 0 26px;display:flex;align-items:center;gap:12px}
.tiny-line{width:26px;height:1px;background:var(--accent)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:400}
h1{font-size:clamp(57px,6.2vw,86px);letter-spacing:-4.3px;line-height:1.04}
em{font-weight:400;color:#687c62}
.hero-intro{max-width:420px;font-size:15px;line-height:1.85;color:var(--body);margin-top:27px}
.button{display:inline-flex;gap:40px;align-items:center;background:var(--ink);color:var(--paper);padding:17px 22px;font-size:12px;font-weight:550;margin-top:30px;border:1px solid var(--ink);transition:background .18s}
.button:hover{background:#395547}
.button span{font-size:18px;line-height:1}
.portrait{width:100%;max-width:440px;justify-self:end}
.portrait-frame{position:relative;padding:13px;border:1px solid #ccd4c5;border-radius:210px 210px 3px 3px}
.portrait-art,.portrait-photo{aspect-ratio:4/4.7;width:100%;border-radius:200px 200px 1px 1px;display:block}
.portrait-photo{object-fit:cover;height:auto}
.portrait-art{position:relative;isolation:isolate;overflow:hidden;background:#dce3d3;display:flex;flex-direction:column;align-items:center;justify-content:center}
.portrait-art::after{content:'';position:absolute;inset:63% 0 0;background:#cbd5bf;z-index:-1}
.art-monogram{font-family:var(--serif);font-size:210px;font-style:italic;color:#53674a;letter-spacing:-18px;line-height:1.1;position:relative;left:-7px}
.art-monogram span{color:#a76c4f}
.art-signature{text-transform:uppercase;letter-spacing:4px;font-size:10px;font-weight:550;color:#44543d;margin-top:13px}
.art-orbit{position:absolute;border:1px solid #bcc9b2;border-radius:50%;width:390px;height:390px;z-index:-1;transform:rotate(-25deg)}
.orbit-one{top:-100px;left:110px}
.orbit-two{height:480px;width:480px;top:-110px;left:66px}
.photo-note{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);background:var(--paper);border:1px solid #d9dfd0;padding:10px 15px;white-space:nowrap;font-size:10px;letter-spacing:.5px;display:flex;gap:8px;align-items:center;color:var(--body)}
.photo-note>span{font-size:16px}
figcaption{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10px;color:var(--muted);margin-top:17px;line-height:1.5}
.caption-line{height:1px;width:20px;background:#a6b39d}
.chapter-rule{border-block:1px solid var(--line);display:flex;justify-content:space-between;padding-block:16px;text-transform:uppercase;font-size:9px;letter-spacing:1.9px;color:var(--muted)}
.section-space{padding-block:88px}
.story{display:grid;grid-template-columns:1fr 1fr;gap:88px}
h2{font-size:clamp(38px,4.2vw,54px);line-height:1.13;letter-spacing:-1.9px}
.section-lead{font-family:var(--serif);font-size:26px;line-height:1.5;letter-spacing:-.4px;margin-bottom:20px}
.story-copy>p:not(.section-lead){font-size:14px;line-height:1.9;color:var(--body);max-width:465px}
.story-placeholder{border-left:2px solid #adb99e;padding:5px 0 5px 20px;margin-top:27px;color:var(--body)}
.placeholder-label{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:650}
.story-placeholder p{font-size:12px;line-height:1.85;margin-top:8px;max-width:405px}
.connections{background:var(--ink);color:var(--paper)}
.connections-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:70px;margin-bottom:46px}
.connections .eyebrow{color:#c3cfb8}
.connections em{color:#c4d1b9}
.connections-heading>p{font-size:14px;line-height:1.85;color:#d3dbd1;max-width:365px;padding-bottom:5px}
.location-links{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.location-link{border:1px solid #65766a;padding:27px 29px 24px;transition:background .2s,border-color .2s}
.location-link:hover{background:#304d40;border-color:#b7c4ad}
.location-link:focus-visible{outline-color:#e1c6a6}
.location-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:#c9d6c1}
.external-arrow{font-size:24px;font-weight:300;transition:transform .2s}
.location-link:hover .external-arrow{transform:translate(2px,-2px)}
h3{font-size:48px;letter-spacing:-1.7px;margin:25px 0 29px}
h3 span{color:#c1cfae}
.location-bottom{display:flex;gap:12px;justify-content:space-between;align-items:center;border-top:1px solid #65766a;padding-top:19px;font-size:11px}
.location-domain{color:#c9d6c1;font-size:10px}
.connections-note{font-size:10px;line-height:1.6;color:#c2cdbb;margin-top:23px}
.closing{display:flex;align-items:center;gap:23px;padding-block:59px}
.closing-mark{font-family:var(--serif);font-style:italic;font-size:62px;line-height:1;color:#718166;letter-spacing:-6px}
.closing p{font-family:var(--serif);font-size:28px;letter-spacing:-.7px}
.closing div>span{font-size:11px;color:var(--muted);display:block;margin-top:9px}
.back-top{margin-left:auto;font-size:11px;padding:12px 0 12px 12px}
.back-top span{margin-left:17px}
.back-top:hover{text-decoration:underline;text-underline-offset:5px}
.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:24px 30px;font-size:10px;color:var(--muted);line-height:1.7}
.skip-link{position:absolute;left:20px;top:-100px;z-index:10;background:var(--ink);color:white;padding:14px 20px}
.skip-link:focus{top:15px}
.error-page{min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:60px}
.error-page h1{margin-block:20px}
.error-page p{max-width:460px;color:var(--body);line-height:1.8}
@media(min-width:1600px){.hero{padding-block:88px 96px}}
@media(max-width:1000px){.wrap{width:calc(100% - 72px)}.hero{gap:35px;padding-block:60px}h1{font-size:66px;letter-spacing:-3px}.story{gap:45px}.art-monogram{font-size:180px}.location-bottom{align-items:flex-start;flex-direction:column;gap:7px}.connections-heading{gap:45px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{min-height:86px;gap:16px}.brand{font-size:21px;gap:9px}.brand-mark{width:32px;height:32px;font-size:25px}nav{gap:18px;font-size:11px}nav a span{margin-left:2px}.hero{grid-template-columns:1fr;gap:45px;padding-block:46px 44px}.eyebrow{font-size:9px;margin-bottom:22px}h1{font-size:clamp(58px,10.8vw,75px);letter-spacing:-3px}.hero-intro{font-size:14px;max-width:460px;margin-top:23px}.button{margin-top:25px}.portrait{width:88%;max-width:380px;justify-self:center}.art-monogram{font-size:185px}.chapter-rule{font-size:8px;letter-spacing:1.1px;gap:20px;line-height:1.5}.section-space{padding-block:56px}.story{grid-template-columns:1fr;gap:30px}h2{font-size:43px}.section-lead{font-size:24px}.story-copy>p:not(.section-lead){max-width:none}.connections-heading{display:block;margin-bottom:32px}.connections-heading>p{max-width:none;margin-top:25px;font-size:13px}.location-links{grid-template-columns:1fr;gap:18px}.location-link{padding:23px 24px}.location-bottom{flex-direction:row;align-items:center;gap:14px}h3{font-size:45px;margin-block:22px 25px}.closing{padding-block:44px;gap:17px;flex-wrap:wrap}.closing p{font-size:25px}.closing-mark{font-size:53px}.back-top{padding-left:0;margin-left:0;flex-basis:100%}.site-footer{font-size:9px;gap:15px;padding-block:20px 25px}.site-footer span:last-child{text-align:right;max-width:160px}}
@media(max-width:360px){nav{gap:12px;font-size:10px}.brand{font-size:19px;gap:7px}.brand-mark{display:none}.hero h1{font-size:55px}.location-bottom{flex-direction:column;align-items:flex-start}.art-monogram{font-size:160px}.photo-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
