@import url('https://fonts.googleapis.com/css2?family=Exo+2:wght@600;700&family=Inter:wght@400;500;600&display=optional');

/* The homepage is independent of the production stylesheet used by secondary pages. */
:root{color-scheme:dark;--surface:#101315;--ivory:#f0eee6;--muted:#afb3b1;--champagne:#ddcba8;--bronze:#9c8562;--line:#454a49;--body:Inter,sans-serif;--display:'Exo 2',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--surface);color:var(--ivory);font-family:var(--body);font-size:16px;line-height:1.6}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--champagne);outline-offset:5px}
button{font:inherit}
.skip-link{position:absolute;top:8px;left:16px;transform:translateY(-160%);z-index:100;background:var(--ivory);color:var(--surface);padding:10px 16px}
.skip-link:focus{transform:none}
.site-header{position:relative;z-index:10;width:100%;padding:28px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff0d}
.brand{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:15px;font-weight:600;letter-spacing:-.03em}
.brand-secondary,.footer-identity .brand span{font-weight:400;color:var(--muted)}
.brand-reference{width:3px;height:17px;background:var(--champagne);margin-right:6px}
.site-nav{display:flex;gap:clamp(14px,1.7vw,28px);align-items:center}
.site-nav a{font-size:12px;min-height:44px;display:flex;align-items:center;color:var(--muted)}
.site-nav a:hover,.site-nav a[aria-current]{color:var(--ivory)}
.site-nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--bronze);text-underline-offset:8px}
.menu{display:none;min-height:44px;padding:8px 16px;background:none;border:1px solid var(--line);color:var(--ivory)}
.experience{position:relative;background:radial-gradient(ellipse at 76% 21%,#c5b49109,transparent 37%),linear-gradient(110deg,#ffffff02,transparent 60%)}
.hero,.principles,.closing,.site-footer{width:min(1360px,91%);margin-inline:auto}
.hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;min-height:740px;padding-top:70px;gap:12px}
.hero-copy{position:relative;z-index:1;padding-bottom:110px}
.eyebrow{font-size:13px;letter-spacing:.015em;color:var(--muted);margin:0 0 30px}
h1{font-family:var(--display);font-size:clamp(46px,5.6vw,84px);font-weight:600;line-height:1.07;letter-spacing:-.055em;margin:0 0 32px}
h1 span{color:var(--champagne);background:linear-gradient(115deg,#f2ecdf 5%,#dccaab 62%,#af9774);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero-lead{max-width:450px;font-size:17px;line-height:1.9;color:var(--muted);margin:0}
.actions{display:flex;align-items:center;gap:32px;margin-top:36px;font-size:13px}
.actions a{min-height:48px;display:inline-flex;align-items:center;gap:28px}
.purpose-link{border-bottom:1px solid var(--bronze)}
.actions a:last-child{color:var(--muted)}
/* Frame the approved sculpture without repeating the mockup's baked-in page copy. */
.homepage .hero-monolith{position:relative;width:100%;aspect-ratio:760/750;margin:0 0 75px;overflow:hidden;isolation:isolate;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}
.homepage .hero-monolith img{position:absolute;display:block;width:220%;max-width:none;height:auto;left:-112.5%;top:-10.666667%;pointer-events:none}
@media(max-width:900px){.homepage .hero-monolith{width:min(100%,460px);margin:32px auto 0}}
@media(max-width:580px){.homepage .hero-monolith{width:min(100%,340px);margin:24px auto 12px}}
.reference-field{position:relative;align-self:stretch;display:flex;align-items:center;min-width:0}
.relationship-art{display:block;width:100%;height:auto;overflow:visible}
.relationship{fill:none;stroke:#747d78;stroke-width:1;vector-effect:non-scaling-stroke}
.relationship.outer{stroke:#424b48}
.relationship.bronze,.relationship.continuation{stroke:var(--bronze)}
.relationship.boundary{stroke:#9ba59f}
.junction{fill:#969f97}.junction.bronze{fill:var(--bronze)}
.human-reference{fill:none;stroke:var(--ivory);stroke-width:3;vector-effect:non-scaling-stroke}
.reference-caption{position:absolute;left:56%;bottom:6%;font-size:12px;line-height:1.65;color:var(--ivory);max-width:170px;margin:0;padding-top:0}
.reference-caption span{color:var(--muted)}
.reference-field::after{content:'';position:absolute;left:16.923%;bottom:0;width:1px;height:calc((100% - (min(1360px, 91vw) - 12px) / 2.3 * 1.076923) / 2);min-height:0;background:var(--bronze)}
.principles{position:relative;padding:60px 0 20px}
.principles::before{content:'';position:absolute;top:0;left:51%;right:calc(36.12043% - 4.33445px);height:calc(100% - 250px);mask-image:linear-gradient(#000 80%,transparent);border-top:1px solid var(--bronze);border-left:1px solid var(--bronze)}
.principles-intro{max-width:470px;padding-bottom:48px}
h2{font-size:clamp(32px,3.3vw,48px);font-weight:400;letter-spacing:-.04em;line-height:1.18;margin:0}
.principles-intro .eyebrow{margin-bottom:24px}
.principles-flow{position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:14%;padding:0 6% 0 8%}
.principles-flow::before{display:none;content:'';position:absolute;left:51%;top:-170px;bottom:230px;width:1px;background:linear-gradient(var(--bronze),#756c59 75%,transparent)}
.principles-flow article{position:relative;max-width:360px;padding:0;background:none;border:none;box-shadow:none}
.principle-name{font-size:13px;color:var(--champagne);margin:0 0 20px}
h3{font-weight:400;font-size:clamp(27px,2.6vw,38px);letter-spacing:-.035em;line-height:1.2;margin:0 0 20px}
.principles-flow article>p:last-child{font-size:15px;line-height:1.9;color:var(--muted);margin:0;max-width:32ch}
.authority{grid-column:2;margin:0 0 35px}.authority::before{content:'';position:absolute;left:-32px;top:5px;width:3px;height:22px;background:var(--ivory)}
.continuity{grid-column:1;margin-top:-65px}.continuity::after{content:'';position:absolute;right:-20%;top:12px;width:15%;height:1px;background:var(--bronze)}
.protection{grid-column:2;margin-top:100px}.protection::before{content:'';position:absolute;left:-32px;top:6px;width:14px;height:65px;border-left:1px solid #8e9791;border-top:1px solid #8e9791}
.restraint{grid-column:1;margin-top:5px;padding-bottom:80px!important}.restraint::before{content:'';display:block;width:38px;height:1px;background:var(--bronze);margin-bottom:38px}
.closing{padding:170px 8% 155px}.closing-primary{font-size:clamp(29px,3.7vw,54px);font-weight:400;line-height:1.3;letter-spacing:-.04em;margin:0 0 42px}.closing-primary span{color:#b7b9b2}.closing-note{font-size:15px;color:var(--champagne);margin:0 0 24px}.text-link{font-size:13px;display:inline-flex;align-items:center;gap:20px;min-height:44px;color:var(--muted)}
.site-footer{border-top:1px solid #ffffff17;padding:48px 0 60px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px;font-size:12px;color:var(--muted)}
.footer-identity p{margin:12px 0 20px}.footer-identity>a:not(.brand){display:block;min-height:32px;overflow-wrap:anywhere}.site-footer nav{display:flex;flex-direction:column;align-items:flex-start}.site-footer nav a{display:flex;align-items:center;min-height:44px}.site-footer a:hover{color:var(--ivory)}
@media(min-width:901px){.homepage .menu{display:none!important}}
@media(max-width:1100px){.brand-secondary{display:none}.hero{min-height:650px}.hero-lead{font-size:16px}.reference-caption{left:54%;font-size:12px}}
@media(max-width:900px){.site-header{flex-wrap:wrap;padding:18px 5%}.site-nav{width:100%;flex-wrap:wrap;gap:0 20px;order:3}.nav-ready .site-nav{display:none}.nav-ready .site-nav.open{display:flex;padding-top:16px}.nav-ready .menu:not([hidden]){display:inline-flex}.hero{grid-template-columns:1fr;gap:0;min-height:0;padding-top:64px}.hero-copy{padding-bottom:0;max-width:660px}h1{font-size:clamp(43px,8.6vw,72px)}.reference-field{width:70%;max-width:460px;height:310px;margin:18px 0 0 auto}.relationship-art{height:100%;width:100%;object-fit:contain}.reference-caption{left:56%;bottom:0;padding-top:0}.reference-field::after{display:none}.principles{padding-top:45px}.principles::before{display:none}.principles-intro{max-width:450px}.principles-flow{column-gap:12%;padding-left:4%;padding-right:0}.principles-flow::before{display:block;top:0;left:48%;bottom:250px}.authority{margin-top:0}.continuity{margin-top:0}.closing{padding:100px 4%}.site-footer{grid-template-columns:1.5fr 1fr;gap:30px}.site-footer nav:last-child{grid-column:2}.footer-identity{grid-row:span 2}}
@media(max-width:580px){.site-header{padding:16px 5%}.hero,.principles,.closing,.site-footer{width:90%}.hero{padding-top:50px}.eyebrow{font-size:12px;margin-bottom:25px}h1{font-size:clamp(36px,9.8vw,56px);line-height:1.12;margin-bottom:24px}.hero-lead{font-size:15px;line-height:1.85}.actions{gap:26px;margin-top:22px}.actions a{gap:18px}.reference-field{width:100%;height:260px;margin-top:24px}.reference-caption{left:55%;font-size:12px;max-width:145px}.relationship.outer,.junction{display:none}.principles{padding-top:24px}.principles-intro{padding-bottom:46px}.principles-intro .eyebrow{max-width:25ch}.principles-flow{display:block;padding:0 0 0 30px}.principles-flow::before{left:1px;top:4px;bottom:240px}.principles-flow article{max-width:none;margin:0 0 52px;padding:0!important}.principles-flow article>p:last-child{max-width:34ch}.authority::before{left:-30px}.continuity::after{left:-29px;width:15px;right:auto}.protection::before{left:-30px}.restraint::before{margin-bottom:28px}.principle-name{margin-bottom:12px}h3{font-size:29px;margin-bottom:15px}.closing{padding:45px 0 85px}.closing-primary{font-size:clamp(25px,6.8vw,37px)}.desktop-break{display:none}.closing-note{max-width:28ch;font-size:14px}.site-footer{grid-template-columns:1fr 1fr;padding-top:35px;gap:24px}.footer-identity{grid-column:1/-1;grid-row:auto}.site-footer nav:last-child{grid-column:auto}.site-footer .brand{font-size:14px}.footer-identity>a:not(.brand){min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){h1 span{background:none;-webkit-text-fill-color:CanvasText;color:CanvasText}.relationship,.human-reference{stroke:CanvasText}.junction{fill:CanvasText}.brand-reference,.authority::before{background:CanvasText}}
