:root{--sage: #798f6f;--sage-dark: #66795d;--sage-tint: #dde2da;--sage-wash: #eef0ec;--copper: #a76952;--copper-dark: #8f5743;--midnight: #252525;--ink: #3a3a3a;--paper: #f4f5f3;--white: #ffffff;--font-sans: "Montserrat", "Helvetica Neue", Arial, sans-serif;--font-serif: "Bitter", Georgia, serif;--container: 1120px;--radius: 6px}*{box-sizing:border-box}html{scroll-behavior:smooth}html{overflow-x:hidden}body{margin:0;overflow-x:hidden;font-family:var(--font-sans);font-weight:400;color:var(--ink);background:var(--paper);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}.container{max-width:var(--container);margin:0 auto;padding:0 24px}h1,h2,h3{font-family:var(--font-sans);color:var(--midnight);line-height:1.2;margin:0 0 .6em}h1{font-size:clamp(2rem,4.5vw,3.25rem);font-weight:300;letter-spacing:-.01em}h2{font-size:clamp(1.6rem,3vw,2.3rem);font-weight:400;color:var(--sage-dark)}h3{font-size:1.05rem;font-weight:600}p{margin:0 0 1em}a{color:var(--sage-dark);text-decoration:none}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease;will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:none}.hero__enter{opacity:0;transform:translateY(22px);animation:heroEnter .9s ease forwards}.hero__enter--2{animation-delay:.15s}.hero__enter--3{animation-delay:.3s}.hero__enter--4{animation-delay:.45s}.hero__enter--5{animation-delay:1s}@keyframes heroEnter{to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.reveal,.hero__enter{opacity:1;transform:none;transition:none;animation:none}html{scroll-behavior:auto}}.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin:0 0 1.2em}.eyebrow--light{color:#ffffffd9}.btn{display:inline-block;padding:14px 32px;border-radius:var(--radius);font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--copper{background:var(--copper);color:var(--white)}.btn--copper:hover{background:var(--copper-dark);box-shadow:0 10px 24px #a7695247}.btn--ghost{border:1px solid rgba(255,255,255,.6);color:var(--white)}.btn--ghost:hover{background:#ffffff1f}.btn--outline{border:1px solid var(--sage-dark);color:var(--sage-dark)}.btn--outline:hover{background:var(--sage-dark);color:var(--white)}.logo{display:inline-flex;flex-direction:column;align-items:center;line-height:1;color:var(--sage)}.logo__mark{height:30px;width:auto;display:block}.logo__mark--stacked{height:58px}.logo--light{color:var(--white)}.nav__logo .logo{align-items:flex-start}.nav{position:sticky;top:0;z-index:40;background:#f4f5f3f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--sage-tint);transition:box-shadow .3s ease}.nav--scrolled{box-shadow:0 6px 24px #25252512}.nav__inner{position:relative;display:flex;align-items:center;gap:28px;height:76px}.nav__links{display:flex;gap:24px}.nav__links a{position:relative;font-size:.76rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--midnight);transition:color .2s ease;white-space:nowrap;padding-bottom:4px}.nav__links a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--sage);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.nav__links a:hover,.nav__links a.is-active{color:var(--sage-dark)}.nav__links a:hover:after,.nav__links a.is-active:after{transform:scaleX(1)}.nav__cta{font-size:.85rem;font-weight:600;color:var(--copper);white-space:nowrap}.nav__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;background:none;border:none;cursor:pointer}.nav__toggle span{display:block;height:2px;background:var(--midnight)}.hero{position:relative;min-height:min(88vh,760px);display:flex;align-items:center;overflow:hidden;background:var(--white)}.hero__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:translate(12%)}.hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#fff,#fffffff7 24%,#ffffffbf 42%,#ffffff40 58%,#fff0 72%)}.hero__inner{position:relative;z-index:1;width:100%;padding-top:72px;padding-bottom:72px}.hero h1{color:var(--midnight);max-width:640px}.hero__lead{max-width:540px;font-size:1.05rem;color:var(--ink);margin-bottom:2.2em}.hero__actions{display:flex;flex-wrap:wrap;gap:16px}.hero__scroll{position:absolute;left:50%;bottom:26px;transform:translate(-50%);z-index:1;width:26px;height:42px;border:1.5px solid rgba(37,37,37,.35);border-radius:14px;display:flex;justify-content:center}.hero__scroll span{display:block;width:3px;height:8px;border-radius:2px;background:var(--copper);margin-top:7px;animation:scrollCue 1.8s ease-in-out infinite}@keyframes scrollCue{0%,to{transform:translateY(0);opacity:1}60%{transform:translateY(14px);opacity:.2}}.stats{background:var(--paper);padding:64px 0}.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.stat{text-align:center;color:var(--sage)}.stat__value{display:block;font-size:clamp(2.2rem,4vw,3rem);font-weight:500;line-height:1;margin-bottom:12px}.stat__label{display:block;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-dark)}.section{padding:96px 0}.section--tinted{background:var(--sage-wash)}.section--sage{background:var(--sage)}.section--sage h2{color:var(--white)}.section__grid{display:grid;grid-template-columns:1fr 1.6fr;gap:48px}.section__body p{max-width:60ch}.section__intro{max-width:62ch;margin-bottom:3em}.section__note{max-width:62ch;margin-top:3em;font-family:var(--font-serif);font-style:italic;color:var(--sage-dark)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:3em}.card{background:var(--white);border:1px solid var(--sage-tint);border-radius:var(--radius);padding:32px 28px;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease,opacity .8s ease}.card:hover{transform:translateY(-5px);border-color:var(--sage);box-shadow:0 16px 36px #25252514}.card p{margin:0;font-size:.95rem}.card__index{display:block;font-size:.78rem;font-weight:600;letter-spacing:.2em;color:var(--copper);margin-bottom:1.4em}.card--dark{background:#ffffff14;border-color:#ffffff38}.card--dark h3{color:var(--white)}.card--dark p{color:#ffffffe0}.cards--contact .card a{font-weight:500}.contact{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:stretch;min-width:0}.contact__form,.contact__aside{min-width:0}.contact__form{background:var(--white);border:1px solid var(--sage-tint);border-top:3px solid var(--copper);border-radius:var(--radius);padding:42px 40px}.contact__form-intro{font-family:var(--font-serif);font-style:italic;color:var(--sage-dark);margin:0 0 2em}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{margin-bottom:26px}.field label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-dark);margin-bottom:8px}.field input,.field select,.field textarea{width:100%;border:none;border-bottom:1.5px solid var(--sage-tint);background:transparent;padding:10px 2px;font-family:var(--font-sans);font-size:.98rem;color:var(--midnight);transition:border-color .3s ease,background .3s ease;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;resize:vertical}.field select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2366795d' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;padding-right:20px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.field input::placeholder,.field textarea::placeholder{color:#3a3a3a61}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--sage);background:#798f6f0d}.contact__form-footer{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.contact__form-footer .btn{border:none;cursor:pointer;font-family:var(--font-sans)}.contact__sent{margin:0;font-family:var(--font-serif);font-style:italic;font-size:.92rem;color:var(--sage-dark)}.contact__aside{display:flex;flex-direction:column;gap:24px}.contact__info{margin:0;background:var(--white);border:1px solid var(--sage-tint);border-radius:var(--radius);padding:28px 32px}.contact__info-row{display:grid;grid-template-columns:92px 1fr;gap:16px;padding:12px 0}.contact__info-row+.contact__info-row{border-top:1px solid var(--sage-wash)}.contact__info dt{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--copper);padding-top:3px}.contact__info dd{margin:0}.contact__info dd a,.contact__info dd span{display:block;font-size:.95rem;font-weight:500;color:var(--midnight);line-height:1.7;overflow-wrap:anywhere}.contact__info dd a:hover{color:var(--sage-dark)}.contact__map{position:relative;flex:1;min-height:280px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--sage-tint)}.contact__map iframe{width:100%;height:100%;min-height:280px;border:0;display:block;filter:grayscale(.55) sepia(.06);transition:filter .5s ease}.contact__map:hover iframe{filter:none}.contact__map-link{position:absolute;right:12px;bottom:12px;background:#fffffff0;border:1px solid var(--sage-tint);border-radius:var(--radius);padding:8px 14px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sage-dark);transition:background .2s ease,color .2s ease}.contact__map-link:hover{background:var(--sage-dark);color:var(--white)}.timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--sage-tint)}.timeline__item{position:relative;display:grid;grid-template-columns:130px 1fr;gap:24px;padding:0 0 48px 40px}.timeline__item:last-child{padding-bottom:0}.timeline__item:before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--sage);border:2px solid var(--paper)}.timeline__year{font-size:.85rem;font-weight:600;letter-spacing:.08em;color:var(--copper);white-space:nowrap}.timeline__item p{margin:0;font-size:.95rem;max-width:58ch}.team{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}.team__card{text-align:left}.team__photo{position:relative;overflow:hidden;border-radius:var(--radius);aspect-ratio:3 / 4;margin-bottom:20px;background:var(--sage-wash)}.team__photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(37,37,37,.06);border-radius:var(--radius);pointer-events:none}.team__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.team__card:hover .team__photo img{transform:scale(1.04)}.team__card h3{margin:0 0 4px;font-size:1.02rem}.team__role{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--copper)}.carousel__stage{position:relative;aspect-ratio:16 / 9;max-height:560px;width:100%;overflow:hidden;border-radius:var(--radius);background:var(--sage-tint);cursor:pointer}.carousel__slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity .9s ease,transform 1.4s ease;pointer-events:none}.carousel__slide--active{opacity:1;transform:scale(1)}.carousel__caption{position:absolute;left:0;right:0;bottom:0;padding:60px 26px 20px;font-size:.8rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--white);background:linear-gradient(180deg,#25252500,#25252580);pointer-events:none}.carousel__counter{position:absolute;top:18px;right:20px;padding:6px 14px;border-radius:20px;background:#2525256b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--white);font-size:.72rem;font-weight:600;letter-spacing:.18em;pointer-events:none}.carousel__nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:#25252540;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--white);font-size:1.5rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .3s ease,background .2s ease}.carousel__stage:hover .carousel__nav,.carousel__nav:focus-visible{opacity:1}.carousel__nav:hover{background:#25252580}.carousel__nav--prev{left:18px}.carousel__nav--next{right:18px}.carousel__thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;scrollbar-color:var(--sage-tint) transparent}.carousel__thumb{flex:0 0 auto;width:104px;height:66px;padding:0;border:2px solid transparent;border-radius:var(--radius);overflow:hidden;cursor:pointer;background:none;opacity:.55;filter:saturate(.7);transition:opacity .3s ease,filter .3s ease,border-color .3s ease}.carousel__thumb img{width:100%;height:100%;object-fit:cover;display:block}.carousel__thumb:hover{opacity:.85}.carousel__thumb--active{opacity:1;filter:none;border-color:var(--sage)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#252525eb;display:flex;align-items:center;justify-content:center;animation:lightboxIn .3s ease}@keyframes lightboxIn{0%{opacity:0}to{opacity:1}}.lightbox figure{margin:0;max-width:min(1060px,86vw);text-align:center}.lightbox img{max-width:100%;max-height:78vh;border-radius:var(--radius);display:block}.lightbox figcaption{margin-top:18px;font-size:.8rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--sage-tint)}.lightbox__close{position:absolute;top:20px;right:28px;background:none;border:none;color:var(--white);font-size:2.4rem;font-weight:300;line-height:1;cursor:pointer;opacity:.8;transition:opacity .2s ease}.lightbox__close:hover{opacity:1}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff14;border:1px solid rgba(255,255,255,.25);border-radius:50%;width:52px;height:52px;color:var(--white);font-size:1.7rem;line-height:1;cursor:pointer;transition:background .2s ease}.lightbox__nav:hover{background:#fff3}.lightbox__nav--prev{left:26px}.lightbox__nav--next{right:26px}.quote{background:var(--midnight);color:var(--white);padding:100px 0;text-align:center}.quote blockquote{font-family:var(--font-serif);font-style:italic;font-size:clamp(1.2rem,2.4vw,1.7rem);line-height:1.6;max-width:820px;margin:0 auto 1.5em}.quote__attribution{font-size:.8rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--sage-tint);margin:0}.footer{background:var(--sage);color:var(--white);padding:72px 0 48px;text-align:center}.footer__inner{display:flex;flex-direction:column;align-items:center;gap:24px}.footer__meta{margin:0;font-size:.9rem;color:#ffffffe6}.footer__copyright{margin:0;font-size:.78rem;color:#ffffffa6}.section__grid>*,.cards>*,.team>*,.stats__grid>*,.contact__info-row>*,.field-row>*,.timeline__item>*{min-width:0}@media(max-width:880px){.section{padding:72px 0}.section__grid{grid-template-columns:1fr;gap:8px}.cards{grid-template-columns:1fr}.team{grid-template-columns:repeat(2,1fr);gap:32px 20px}.stats__grid{grid-template-columns:repeat(2,1fr);gap:40px 24px}.contact{grid-template-columns:1fr}.contact__form{padding:32px 24px}.field-row{grid-template-columns:1fr;gap:0}.hero__scroll{display:none}.lightbox__nav--prev{left:10px}.lightbox__nav--next{right:10px}.carousel__stage{aspect-ratio:4 / 3}.carousel__nav{opacity:1}.carousel__thumb{width:84px;height:56px}.timeline__item{grid-template-columns:1fr;gap:6px}.nav__links{position:absolute;top:76px;left:0;right:0;transform:none;flex-direction:column;gap:0;background:var(--paper);border-bottom:1px solid var(--sage-tint);display:none}.nav__links--open{display:flex}.nav__links a{padding:16px 24px;border-top:1px solid var(--sage-tint)}.nav__toggle{display:flex;margin-left:auto}.hero{min-height:72vh}.hero__video{transform:none;object-position:57% center}.hero__overlay{background:linear-gradient(180deg,#fffffff2,#ffffffb3 55%,#ffffff26)}}@media(max-width:480px){.team{grid-template-columns:1fr;max-width:320px;margin:0 auto;gap:32px}.stats__grid{grid-template-columns:1fr;gap:32px}.carousel__thumb{width:72px;height:48px}}@media(min-width:1600px){:root{--container: 1280px}}
