:root{--green: #0F2A24;--green-deep: #0A1F1A;--hero-bg: #0C1A16;--ink: #1A1A1A;--body: #4A4A46;--cream: #F7F4EE;--sand: #F3EFE7;--line: #E5DFD3;--line-soft: #EDE8DE;--rule: #BDB4A4;--bronze: #8A6534;--gold: #D4B27E;--gold-soft: #E2C597;--accent: #C9A26B;--muted-light: #AEB9B4;--sans: Manrope, system-ui, sans-serif;--serif: Newsreader, Georgia, serif;--container: 1280px;--gutter: 32px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:var(--sans);color:var(--ink);background:#fff;overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%}a{color:var(--green)}a:hover{color:var(--bronze)}input,select,textarea,button{font:inherit}svg{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;flex:none}.container{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.serif{font-family:var(--serif)}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:12px;top:-60px;z-index:200;background:var(--green);color:#fff;padding:12px 16px}.skip-link:focus{top:12px;color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--bronze)}.eyebrow--light{color:var(--gold)}.h2{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.2vw,60px);line-height:1.05;letter-spacing:-.015em}.h3{margin:0;font-family:var(--serif);font-weight:400;font-size:32px}.body{margin:0;font-size:17px;line-height:1.85;color:var(--body)}.body--light{color:#d6dcd8;max-width:460px;line-height:1.8}.kicker{font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze)}.stack{display:flex;flex-direction:column;gap:26px}.stack--tight{gap:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .2s ease,background-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px)}.btn--accent{background:var(--accent);color:var(--ink);border:0}.btn--accent:hover{color:var(--ink)}.btn--ghost{border:1px solid rgba(255,255,255,.6);color:#fff}.btn--ghost:hover{color:#fff;background:#ffffff14}.btn--sm{min-height:48px;padding:0 22px;font-size:12px;letter-spacing:.16em;gap:10px}.btn--lg{min-height:60px;padding:0 32px;font-size:13px}.btn--block{width:100%}.topbar{background:var(--green);color:#e9e3d6;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;text-align:center;padding:12px 24px;line-height:1.6}.header{position:sticky;top:0;z-index:40;background:#f7f4eef5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header__inner{padding-top:18px;padding-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--ink)}.wordmark:hover{color:var(--ink)}.wordmark__name{font-size:21px;font-weight:600;letter-spacing:.12em}.wordmark__sub{font-size:10px;font-weight:600;letter-spacing:.78em}.nav{display:flex;align-items:center;gap:34px}.navlink{color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:10px 4px;border-bottom:1px solid transparent}.navlink:hover{color:var(--bronze);border-bottom-color:var(--accent)}.header__actions{display:flex;align-items:center;gap:22px}.header__phone{font-weight:700;text-decoration:none;font-size:15px}.menu-toggle{display:none;width:48px;height:48px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--green);cursor:pointer}.menu-toggle svg{stroke-width:2}.mobile-nav{border-top:1px solid var(--line);padding:4px var(--gutter) 18px;display:flex;flex-direction:column}.mobile-nav[hidden]{display:none}.mobile-nav a{padding:15px 0;border-bottom:1px solid var(--line-soft);text-decoration:none;color:var(--ink);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:13px}.mobile-nav a.mobile-nav__call{margin-top:14px;min-height:52px;display:flex;align-items:center;justify-content:center;border:0;background:var(--green);color:#fff;font-weight:700;letter-spacing:.08em;text-transform:none;font-size:15px}.hero{position:relative;overflow:hidden;background:var(--hero-bg);color:#fff}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 60%}.hero__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#09120feb,#09120fc7 45%,#09120f80)}.hero__inner{position:relative;padding-top:150px;padding-bottom:64px;display:flex;flex-direction:column;gap:30px}.hero .eyebrow{font-size:13px;letter-spacing:.3em}.hero__title{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(48px,6.4vw,96px);line-height:.98;letter-spacing:-.02em;max-width:820px}.hero__title span,.hero__title em{display:block}.hero__title em{font-style:italic;color:var(--gold)}.hero__lead{margin:0;font-size:19px;line-height:1.7;color:#e6e1d8;max-width:560px}.hero__ctas{display:flex;flex-wrap:wrap;gap:14px;padding-top:6px}.hero__stats{list-style:none;margin:70px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));border-top:1px solid rgba(255,255,255,.22)}.hero__stats li{padding:22px 24px 0 0;display:flex;flex-direction:column;gap:4px;font-size:14px;color:#cfc8bb}.hero__stats .serif{font-size:24px;color:#fff}.section>.container{padding-top:120px;padding-bottom:120px}.section--white{background:#fff}.section--sand{background:var(--sand)}.section--green{background:var(--green);color:#fff}.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px 28px;margin-bottom:56px}.section-head>.stack{max-width:680px}.section-head__aside{max-width:380px;line-height:1.8}#about>.container{padding-top:130px;padding-bottom:130px}.about{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:80px;align-items:center}.checklist{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px 24px}.checklist li{display:flex;gap:12px;align-items:center;font-size:16px}.checklist svg{stroke:var(--bronze)}.about__media{position:relative;margin:0;padding:0 0 28px 28px}.about__frame{position:absolute;left:0;bottom:0;width:72%;height:78%;border:1px solid var(--accent)}.about__media img{position:relative;display:block;width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover}.about__badge{position:absolute;right:-8px;bottom:56px;background:var(--green);color:#fff;padding:20px 24px;display:flex;flex-direction:column;gap:4px;box-shadow:0 20px 40px #0000002e}.about__badge .serif{font-size:26px}.about__badge span:last-child{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}.card{background:#fff;border:1px solid var(--line)}.card__media{overflow:hidden}.card__media img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;transition:transform .6s ease}.card:hover .card__media img{transform:scale(1.04)}.card__body{padding:32px 32px 38px;display:flex;flex-direction:column;gap:14px}.card__body p{margin:0;font-size:16px;line-height:1.75;color:var(--body)}#work .section-head{margin-bottom:48px}.filters{display:flex;flex-wrap:wrap;gap:10px}.filter{min-height:46px;padding:0 20px;border:1px solid var(--green);background:#fff;color:var(--green);font-size:12px;letter-spacing:.16em}.filter[aria-pressed=true]{background:var(--green);color:#fff}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.tile{position:relative;display:block;padding:0;border:0;overflow:hidden;cursor:zoom-in;background:var(--ink);aspect-ratio:4 / 5;text-align:left}.tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.tile:hover img{transform:scale(1.05)}.tile__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 50%,#000000b3)}.tile__text{position:absolute;left:24px;right:24px;bottom:22px;display:flex;flex-direction:column;gap:6px;color:#fff}.tile__tag{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-soft)}.tile__cap{font-family:var(--serif);font-size:28px;line-height:1.1}.link-arrow{display:inline-flex;align-items:center;gap:10px;margin-top:40px;min-height:44px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.approach__head{max-width:640px;margin-bottom:64px}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:48px}.steps li{border-top:1px solid var(--rule);padding-top:30px;display:flex;flex-direction:column;gap:16px}.steps .kicker{font-size:12px}.steps .h3{font-size:34px}.steps p{margin:0;font-size:16px;line-height:1.8;color:var(--body)}.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:72px;align-items:start}.contact .stack{gap:24px}.h2--contact{font-size:clamp(40px,4.6vw,66px);line-height:1.02}.contact__list{display:flex;flex-direction:column;margin-top:10px;border-top:1px solid rgba(255,255,255,.16)}.contact__row{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;border-bottom:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none}a.contact__row:hover{color:var(--gold)}.contact__row .serif{font-size:24px;text-align:right;overflow-wrap:anywhere}.contact__label{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#b9c4bf}.form{display:flex;flex-direction:column;gap:18px;background:#ffffff08;border:1px solid rgba(255,255,255,.12);padding:40px}.form__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px}.form__label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#c9d1cd}.field{width:100%;min-height:54px;padding:0 16px;border:1px solid rgba(255,255,255,.22);background:#ffffff0a;color:#fff;border-radius:2px;font-size:16px;letter-spacing:normal;text-transform:none;font-weight:500}.field:focus{outline:2px solid var(--accent);outline-offset:1px}.field option{color:var(--ink)}.field--area{padding:14px 16px;resize:vertical}.form__note{margin:0;font-size:13px;line-height:1.6;color:var(--muted-light)}.form__note.is-success{color:var(--gold)}.form__note.is-error{color:#f2a7a0}.footer{background:var(--green-deep);color:var(--muted-light);border-top:1px solid rgba(255,255,255,.08)}.footer__inner{padding-top:36px;padding-bottom:36px;display:flex;flex-wrap:wrap;gap:16px 40px;justify-content:space-between;align-items:center;font-size:14px}.fab{position:fixed;right:24px;bottom:24px;z-index:60;min-height:52px;padding:0 22px;font-size:12px;letter-spacing:.16em;gap:10px;box-shadow:0 14px 30px #00000040}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#060e0cf0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px}.lightbox[hidden]{display:none}.lightbox__img{max-width:min(1000px,100%);max-height:78vh;object-fit:contain;display:block}.lightbox__bar{display:flex;align-items:center;gap:20px;color:#fff}.lightbox__btn{width:52px;height:52px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.lightbox__btn svg{stroke-width:2}.lightbox__btn:hover{background:#ffffff14}.lightbox__close{position:absolute;top:18px;right:18px}.lightbox__caption{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:240px;text-align:center}.lightbox__cap{font-size:26px}.lightbox__count{font-size:12px;letter-spacing:.2em;color:#b9c4bf}@media(max-width:960px){.nav--desktop{display:none}.menu-toggle{display:inline-flex}}@media(max-width:640px){:root{--gutter: 18px}.topbar{font-size:11px;letter-spacing:.2em;padding:10px 18px;line-height:1.7}.header{background:#f7f4eef7}.header__inner{padding-top:14px;padding-bottom:14px}.wordmark__name{font-size:18px;letter-spacing:.1em}.wordmark__sub{font-size:9px;letter-spacing:.72em}.hero__shade{background:#09120fbd}.hero__bg{object-position:50% 50%}.hero__inner{padding-top:72px;padding-bottom:56px;gap:22px}.hero .eyebrow{font-size:11px;letter-spacing:.26em}.hero__title{font-size:50px;line-height:1}.hero__lead{font-size:16px;line-height:1.75}.hero__ctas{flex-direction:column;gap:12px;padding-top:8px}.hero__ctas .btn{min-height:58px;font-size:12px;padding:0 20px}.hero__stats{display:none}.section>.container,#about>.container{padding-top:72px;padding-bottom:72px}.eyebrow{font-size:11px;letter-spacing:.26em}.h2{font-size:38px;line-height:1.08;letter-spacing:-.01em}.h3,.steps .h3{font-size:30px}.body{font-size:16px;line-height:1.8}.stack{gap:22px}.stack--tight{gap:20px}.kicker,.steps .kicker{font-size:11px;letter-spacing:.22em}.about{grid-template-columns:1fr;gap:40px}.checklist{grid-template-columns:1fr;gap:12px}.about__media{padding:0}.about__frame,.about__badge{display:none}.section-head{margin-bottom:30px}.cards{grid-template-columns:1fr;gap:20px}.card__body{padding:26px 22px 30px;gap:12px}.card__body p,.steps p{font-size:15px}#work .section-head{margin-bottom:26px}.filter{padding:0 16px;font-size:11px}.gallery{grid-template-columns:1fr;gap:14px}.tile{aspect-ratio:1 / 1}.tile__text{left:20px;right:20px;bottom:20px}.tile__tag{display:none}.tile__cap{font-size:25px;line-height:1.15}.approach__head{margin-bottom:32px}.steps{grid-template-columns:1fr;gap:0}.steps li{padding:28px 0;gap:14px}.steps li:last-child{padding-bottom:0}.contact{grid-template-columns:1fr;gap:40px}.h2--contact{font-size:40px;line-height:1.05}.contact__row .serif{font-size:19px}.contact__label{font-size:11px;letter-spacing:.18em}.form{padding:0;border:0;background:transparent;gap:14px}.form__row{grid-template-columns:1fr;gap:14px}.footer__inner{flex-direction:column;align-items:flex-start;gap:8px;font-size:13px;padding-top:28px;padding-bottom:96px}.fab{right:14px;bottom:14px;min-height:48px;padding:0 16px;font-size:11px;letter-spacing:.14em;gap:8px}.lightbox{padding:18px;gap:16px}.lightbox__img{width:100%;max-height:70vh}.lightbox__bar{width:100%;justify-content:space-between}.lightbox__close{top:14px;right:14px;width:48px;height:48px}.lightbox__caption{min-width:0}.lightbox__cap{font-size:22px}.lightbox__count{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.tile img,.card__media img{transition:none}.btn:hover{transform:none}}
