:root{--paper:#f3f0e8;--paper-light:#fbfaf6;--ink:#142329;--ink-soft:#405055;--line:#d8d3c8;--copper:#ae5d3a;--forest:#204c47;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper-light);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}::selection{color:var(--ink);background:#d9b8a8}.container{width:min(1180px,100% - 48px);margin-inline:auto}.narrow{width:min(780px,100% - 48px);margin-inline:auto}.site-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfaf6eb;border-bottom:1px solid #1423291f;position:sticky;top:0}.nav-shell{justify-content:space-between;align-items:center;min-height:78px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:13px;font-size:.95rem;font-weight:700;display:inline-flex}.brand-logo-mark{flex:0 0 38px;width:38px;height:38px;display:block;position:relative;overflow:hidden}.brand-logo-mark img{width:96px;max-width:none;height:auto;position:absolute;top:-18px;left:-29px}.desktop-nav{align-items:center;gap:30px;font-size:.82rem;font-weight:700;display:flex}.desktop-nav a:not(.nav-cta){border-bottom:1px solid #0000;padding-block:6px}.desktop-nav a:not(.nav-cta):hover{border-color:var(--ink)}.nav-cta,.button{border:1px solid var(--ink);background:var(--ink);min-height:46px;color:var(--paper-light);letter-spacing:.04em;text-transform:uppercase;justify-content:center;align-items:center;gap:12px;padding:10px 18px;font-size:.78rem;font-weight:700;transition:all .18s;display:inline-flex}.button:hover,.nav-cta:hover{background:var(--forest);border-color:var(--forest);transform:translateY(-1px)}.button-secondary{color:var(--ink);background:0 0}.button-secondary:hover{background:var(--ink);color:var(--paper-light)}.button-light{border-color:var(--paper-light);background:var(--paper-light);color:var(--ink)}.button-light:hover{border-color:var(--white);background:var(--white)}.arrow{font-size:1.1rem;line-height:1}.mobile-nav{display:none;position:relative}.mobile-nav summary{cursor:pointer;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:700;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-panel{border:1px solid var(--line);background:var(--paper-light);width:220px;padding:12px;display:grid;position:absolute;top:42px;right:0;box-shadow:0 18px 44px #14232924}.mobile-panel a{padding:10px 8px;font-weight:700}.eyebrow{color:var(--copper);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:12px;margin:0 0 24px;font-size:.73rem;font-weight:800;display:flex}.eyebrow:before{content:"";background:currentColor;width:34px;height:1px}.display{letter-spacing:-.065em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.35rem,7.5vw,7.4rem);font-weight:400;line-height:.92}.display em{color:var(--copper);font-weight:400}.hero{border-bottom:1px solid var(--line);background:linear-gradient(#14232909 1px, transparent 1px), linear-gradient(90deg, #14232909 1px, transparent 1px), var(--paper);background-size:64px 64px;overflow:hidden}.hero-grid{min-height:calc(100svh - 78px);display:block}.hero-copy{flex-direction:column;justify-content:center;min-height:calc(100svh - 78px);padding:100px 0;display:flex}.hero-copy .display{max-width:1100px}.hero-lead{max-width:690px;color:var(--ink-soft);margin:40px 0 0;font-size:clamp(1.05rem,1.7vw,1.28rem);line-height:1.55}.button-row{flex-wrap:wrap;gap:12px;margin-top:38px;display:flex}.discipline-strip{background:var(--ink);color:var(--paper-light)}.discipline-strip .container{grid-template-columns:repeat(3,1fr);display:grid}.discipline-strip span{text-align:center;padding:22px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.05rem,2vw,1.35rem)}.discipline-strip span+span{border-left:1px solid #fff3}.section{padding-block:110px}.section-sm{padding-block:76px}.section-head{grid-template-columns:.9fr 1.4fr;gap:8vw;margin-bottom:68px;display:grid}.section-head h2,.page-title,.feature-title,.contact-title{letter-spacing:-.045em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.02}.section-head h2{font-size:clamp(2.4rem,4.5vw,4.2rem)}.section-head p{max-width:640px;color:var(--ink-soft);margin:0;font-size:1.1rem}.section-head .section-lead{max-width:700px;color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.45}.section-lead strong{color:var(--forest);margin-top:12px;font-weight:400;display:block}.service-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(145deg,#ffffffb8,#f3f0e86b);min-height:270px;padding:30px;transition:background-color .18s,transform .18s;position:relative;overflow:hidden}.service-card:hover{z-index:1;background:var(--white);transform:translateY(-3px)}.service-card-top{z-index:1;justify-content:space-between;align-items:flex-start;display:flex;position:relative}.service-icon{width:54px;height:54px;color:var(--forest);border:1px solid #204c473d;border-radius:50%;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:1.4rem;line-height:1;display:grid}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 1}.service-number{color:var(--copper);letter-spacing:.12em;font-size:.7rem;font-weight:800}.service-card h3{z-index:1;margin:48px 0 16px;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:400;line-height:1.15;position:relative}.service-card p{z-index:1;color:var(--ink-soft);margin:0;font-size:.92rem;position:relative}.credentials{background:var(--paper)}.credential-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.credential{padding:34px 32px 20px 0}.credential+.credential{border-left:1px solid var(--line);padding-left:32px}.credential strong{letter-spacing:-.04em;margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:400;display:block}.credential span{color:var(--ink-soft);font-size:.85rem}.product-feature{background:var(--forest);min-height:520px;color:var(--paper-light);grid-template-columns:1.05fr .95fr;display:grid}.product-copy{flex-direction:column;justify-content:center;padding:clamp(46px,7vw,92px);display:flex}.product-copy .eyebrow{color:#e4a889}.feature-title{font-size:clamp(3.2rem,6vw,6rem)}.product-copy>p:not(.eyebrow){color:#fbfaf6bf;max-width:560px;margin:28px 0 0;font-size:1.08rem}.product-graphic{background:radial-gradient(circle,#ffffff1f,#0000 38%),repeating-radial-gradient(circle,#0000 0 42px,#ffffff1f 43px 44px);border-left:1px solid #ffffff2e;place-items:center;display:grid;overflow:hidden}.orbit{aspect-ratio:1;letter-spacing:-.05em;border:1px solid #ffffff80;border-radius:50%;place-items:center;width:min(58%,290px);font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.4rem);display:grid}.cta-section{background:var(--copper);color:var(--paper-light)}.cta-inner{grid-template-columns:1.3fr auto;align-items:end;gap:40px;padding-block:90px;display:grid}.cta-inner h2{letter-spacing:-.055em;max-width:850px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.7rem,6vw,5.8rem);font-weight:400;line-height:.98}.page-hero{border-bottom:1px solid var(--line);background:var(--paper);padding-block:110px 86px}.page-hero-grid{grid-template-columns:1.45fr .55fr;align-items:end;gap:8vw;display:grid}.page-title{max-width:900px;font-size:clamp(3.6rem,8vw,7.3rem)}.page-intro{color:var(--ink-soft);margin:0 0 8px;font-size:1.04rem}.service-list{border-top:1px solid var(--line)}.service-row{border-bottom:1px solid var(--line);grid-template-columns:70px .8fr 1.2fr;gap:30px;padding-block:48px;display:grid}.service-row>span{color:var(--copper);font-size:.72rem;font-weight:800}.service-row h2{letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,2.6rem);font-weight:400;line-height:1.08}.service-row p{max-width:580px;color:var(--ink-soft);margin:0 0 18px}.service-row ul{color:var(--ink-soft);grid-template-columns:repeat(2,1fr);gap:8px 24px;margin:0;padding:0;font-size:.88rem;list-style:none;display:grid}.service-row li:before{color:var(--copper);content:"+";margin-right:8px}.products-stack{gap:24px;display:grid}.product-card{border:1px solid var(--line);grid-template-columns:.85fr 1.15fr;min-height:380px;display:grid}.product-card-heading,.product-card-body{padding:clamp(34px,6vw,72px)}.product-card-heading{background:var(--ink);color:var(--paper-light);flex-direction:column;justify-content:space-between;display:flex}.product-card:nth-child(2) .product-card-heading{background:var(--paper);color:var(--ink)}.product-status{letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:800}.product-name{letter-spacing:-.055em;margin:70px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,5vw,5.4rem);font-weight:400;line-height:.95}.product-card-body{flex-direction:column;justify-content:center;display:flex}.product-card-body h2{letter-spacing:-.04em;margin:0 0 22px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3.4vw,3rem);font-weight:400;line-height:1.08}.product-card-body p{max-width:580px;color:var(--ink-soft);margin:0}.text-link{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:12px;width:fit-content;margin-top:30px;padding-bottom:4px;font-size:.76rem;font-weight:800;display:inline-flex}.about-grid{grid-template-columns:.8fr 1.2fr;gap:10vw;display:grid}.about-aside{border-top:1px solid var(--ink);padding-top:20px}.about-aside p{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.about-copy p{color:var(--ink-soft);margin:0 0 28px;font-size:1.1rem}.about-copy .lead{color:var(--ink);letter-spacing:-.035em;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.25}.director-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.director-heading{grid-template-columns:minmax(180px,.55fr) minmax(0,1.05fr) minmax(240px,.75fr);align-items:end;gap:clamp(28px,5vw,72px);margin-bottom:clamp(56px,8vw,96px);display:grid}.director-heading .eyebrow,.director-heading p{margin:0}.director-heading h2{letter-spacing:-.05em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,4.6vw,4.6rem);font-weight:400;line-height:1}.director-heading>p:last-child{color:var(--ink-soft);font-size:.96rem;line-height:1.7}.director-grid{border-top:1px solid var(--line);grid-template-columns:minmax(220px,.58fr) minmax(0,1.42fr);align-items:start;gap:clamp(44px,8vw,120px);padding-top:clamp(32px,4vw,52px);display:grid}.director-image-wrap{aspect-ratio:4/5;background:#d8d6d1;width:min(100%,360px);position:relative;overflow:hidden}.director-image-wrap:after{content:"";pointer-events:none;background:#11223409;position:absolute;inset:0}.director-image{object-fit:cover;object-position:center top;filter:saturate(.92)contrast(.96);opacity:.96;width:100%;height:100%;display:block}.director-profile{padding-top:4px}.director-profile h3{letter-spacing:-.05em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,4.5vw,4.4rem);font-weight:400;line-height:1}.director-intro{max-width:650px;color:var(--ink-soft);margin:24px 0 36px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.18rem,1.8vw,1.55rem);line-height:1.5}.director-details{border-top:1px solid var(--line)}.director-details>div{border-bottom:1px solid var(--line);grid-template-columns:175px 1fr;gap:24px;padding-block:22px;display:grid}.director-details span{color:var(--copper);letter-spacing:.1em;text-transform:uppercase;padding-top:3px;font-size:.68rem;font-weight:800}.director-details p{color:var(--ink-soft);margin:0;font-size:.94rem}.principles-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.principle{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px}.principle h3{margin:36px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:400}.principle p{color:var(--ink-soft);margin:0;font-size:.9rem}.contact-wrap{grid-template-columns:1.1fr .9fr;min-height:calc(100svh - 78px);display:grid}.contact-main{background:var(--paper);flex-direction:column;justify-content:center;padding:9vw;display:flex}.contact-title{max-width:720px;font-size:clamp(3.5rem,7.5vw,7rem)}.contact-main>p:not(.eyebrow){max-width:580px;color:var(--ink-soft);margin:34px 0 0;font-size:1.08rem}.contact-side{background:var(--ink);color:var(--paper-light);flex-direction:column;justify-content:center;padding:9vw 7vw;display:flex}.contact-item{border-top:1px solid #ffffff38;padding-block:26px}.contact-item:last-child{border-bottom:1px solid #ffffff38}.contact-label{color:#ffffff8c;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.68rem;font-weight:800;display:block}.contact-value{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.2rem,2vw,1.7rem)}.site-footer{border-top:1px solid var(--line);background:var(--paper);color:var(--ink);padding-block:60px 28px}.footer-top{grid-template-columns:1.4fr repeat(2,.55fr);gap:40px;padding-bottom:56px;display:grid}.footer-statement{max-width:470px;color:var(--ink-soft);margin:22px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.15rem}.footer-brand{letter-spacing:-.02em;align-items:center;gap:13px;font-size:.95rem;font-weight:700;display:inline-flex}.footer-col strong{color:var(--copper);letter-spacing:.13em;text-transform:uppercase;margin-bottom:16px;font-size:.66rem;display:block}.footer-col a{width:fit-content;margin-bottom:8px;font-size:.84rem;display:block}.footer-col a:hover{color:var(--copper)}.footer-bottom{border-top:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;padding-top:24px;font-size:.7rem;display:flex}.not-found{text-align:center;place-items:center;min-height:70vh;padding:48px;display:grid}.not-found h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(4rem,12vw,9rem);font-weight:400}@media (max-width:900px){.desktop-nav{display:none}.mobile-nav{display:block}.hero-grid,.page-hero-grid,.product-feature,.product-card,.about-grid,.director-heading,.director-grid,.contact-wrap{grid-template-columns:1fr}.hero-grid{min-height:auto}.hero-copy{border-right:0;padding:84px 0 70px}.section-head{grid-template-columns:1fr;gap:24px}.service-grid,.credential-grid,.principles-grid{grid-template-columns:1fr}.credential+.credential{border-left:0;padding-left:0}.product-graphic{border-top:1px solid #ffffff2e;border-left:0;min-height:360px}.service-row{grid-template-columns:46px 1fr}.service-row>div{grid-column:2}.contact-side{padding-block:80px}.director-image-wrap{aspect-ratio:4/5;width:min(70vw,340px)}.director-heading{gap:18px}}@media (max-width:620px){.container,.narrow{width:min(100% - 32px,1180px)}.nav-shell{min-height:68px}.brand{font-size:.84rem}.brand-logo-mark{flex-basis:34px;width:34px;height:34px}.brand-logo-mark img{width:88px;top:-16px;left:-27px}.display{font-size:clamp(3.05rem,15vw,4.6rem)}.hero-copy{padding-top:68px}.discipline-strip .container{grid-template-columns:1fr}.discipline-strip span+span{border-top:1px solid #fff3;border-left:0}.section{padding-block:78px}.section-sm{padding-block:58px}.section-head{margin-bottom:44px}.service-card{min-height:auto;padding:25px}.service-card h3{margin-top:42px}.cta-inner{grid-template-columns:1fr;align-items:start;padding-block:70px}.page-hero{padding-block:76px 60px}.page-title{font-size:clamp(3.2rem,16vw,5.4rem)}.service-row{grid-template-columns:34px 1fr;gap:18px;padding-block:36px}.service-row ul{grid-template-columns:1fr}.product-card-heading,.product-card-body{padding:34px 26px}.product-name{margin-top:50px}.principle{padding:26px}.director-details>div{grid-template-columns:1fr;gap:8px}.contact-main,.contact-side{padding:76px 24px}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
