/* jost-latin-200-normal */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-display: swap;
  font-weight: 200;
  src: url(/build/fonts/jost-latin-200-normal.5d4265bf.woff2) format('woff2'), url(/build/fonts/jost-latin-200-normal.1a8efdf3.woff) format('woff');
}
/* jost-latin-300-normal */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url(/build/fonts/jost-latin-300-normal.b93f4d3a.woff2) format('woff2'), url(/build/fonts/jost-latin-300-normal.e4b04b65.woff) format('woff');
}
/* jost-latin-400-normal */
@font-face {
  font-family: 'Jost';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(/build/fonts/jost-latin-400-normal.db6d0ea4.woff2) format('woff2'), url(/build/fonts/jost-latin-400-normal.64e95ba7.woff) format('woff');
}
:root{--color-navy: #2e2018;--color-surface: #863d27;--color-terracotta-brand: #c65b3b;--color-terracotta-readable: #cf7359;--color-gold: #dd9e2d;--color-ivory: #e0cbb3;--color-text: #2e2018;--color-text-muted: #6c5141;--color-border: #8a5f45;--color-on-dark: #f2e7d9;--color-on-dark-muted: #d4cdc4;--color-accent-readable: #735013;--color-bg: var(--color-ivory);--color-primary: var(--color-navy);--color-accent: var(--color-gold);--color-accent-contrast: var(--color-surface);--color-accent-text: var(--color-accent-readable);--color-focus: var(--color-gold);--overlay-navy: rgba(46, 32, 24, 0.55);--overlay-navy-strong: rgba(46, 32, 24, 0.78);--font-sans: "Jost", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-heading: var(--font-sans);--weight-heading: 200;--weight-body: 300;--weight-strong: 400;--font-size-base: 1.0625rem;--font-size-sm: 0.9375rem;--font-size-label: 0.8125rem;--font-size-lg: 1.375rem;--font-size-h3: clamp(1.25rem, 1rem + 1vw, 1.5rem);--font-size-h2: clamp(2.25rem, 1.6rem + 2.4vw, 2.75rem);--font-size-h1: clamp(2.75rem, 1.8rem + 3.8vw, 4.5rem);--font-size-stat: clamp(2.75rem, 2rem + 2.4vw, 3.25rem);--font-size-quote: clamp(1.375rem, 1.1rem + 1vw, 1.75rem);--line-height-base: 1.75;--line-height-heading: 1.15;--tracking-label: 0.22em;--tracking-wide: 0.08em;--space-2xs: 0.25rem;--space-xs: 0.5rem;--space-sm: 0.75rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--space-2xl: 8rem;--container-max: 1200px;--header-height: 80px;--radius-sm: 0;--radius-md: 0;--radius-lg: 0;--radius-xl: 0;--radius-pill: 999px;--transition-base: 200ms ease;--transition-slow: 400ms ease;--z-header: 100;--z-floating: 90;--z-drawer: 120}@media(max-width: 767px){:root{--header-height: 64px}}*,*::before,*::after{box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;overflow-x:hidden}body{margin:0;min-height:100vh;overflow-x:hidden;display:flex;flex-direction:column;font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-bg)}main{flex:1 0 auto}h1,h2,h3,h4{font-family:var(--font-heading);line-height:var(--line-height-heading);margin:0 0 var(--space-md)}p{margin:0 0 var(--space-md)}img,picture,svg{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}h1,.h1{font-family:var(--font-heading);font-weight:var(--weight-heading);font-size:var(--font-size-h1);line-height:var(--line-height-heading);letter-spacing:0}h2,.h2{font-family:var(--font-heading);font-weight:var(--weight-heading);font-size:var(--font-size-h2);line-height:1.15}h3,.h3{font-family:var(--font-sans);font-weight:var(--weight-body);font-size:var(--font-size-h3);line-height:1.3}.eyebrow{display:inline-block;margin-bottom:var(--space-sm);font-family:var(--font-sans);font-size:var(--font-size-label);font-weight:var(--weight-body);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--color-accent-text)}.lead{font-size:var(--font-size-lg);font-weight:var(--weight-body);color:var(--color-text-muted)}.text-muted{color:var(--color-text-muted)}.quote{font-family:var(--font-heading);font-weight:var(--weight-heading);font-size:var(--font-size-quote);line-height:1.5}strong,b{font-weight:var(--weight-strong)}.section{padding-block:clamp(3.5rem,2rem + 6vw,6.25rem)}.section--ivory{background-color:var(--color-ivory)}.section--white{background-color:var(--color-surface);color:var(--color-on-dark)}.section--navy{background-color:var(--color-navy);color:var(--color-on-dark)}.section__head{max-width:640px;margin:0 auto clamp(2rem,1rem + 3vw,3.5rem);text-align:center}.section__head .eyebrow{margin-bottom:var(--space-md)}.section__head .motif-frieze{margin-bottom:var(--space-lg)}.section--navy .eyebrow{color:var(--color-gold)}.section--white .eyebrow{color:var(--color-on-dark)}.section__title{margin:0;color:inherit}.stack-sm>*+*{margin-top:var(--space-md)}.skip-link{position:absolute;left:var(--space-md);top:-100%;z-index:var(--z-drawer);padding:var(--space-xs) var(--space-md);background-color:var(--color-navy);color:var(--color-on-dark);border-radius:var(--radius-sm)}.skip-link:focus{top:var(--space-md)}.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity var(--transition-slow),transform var(--transition-slow)}.js [data-reveal].is-visible,.js [data-reveal].section-grid>.is-visible{opacity:1;transform:none}.js [data-reveal].section-grid>*{opacity:0;transform:translateY(24px)}@media(prefers-reduced-motion: reduce){.js [data-reveal],.js [data-reveal].section-grid>*{opacity:1;transform:none;transition:none}}.btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.9rem 1.75rem;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:var(--tracking-wide);border:1px solid rgba(0,0,0,0);border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--transition-base),background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base)}.btn:hover{transform:translateY(-2px)}.btn__arrow{transition:transform var(--transition-base)}.btn:hover .btn__arrow{transform:translateX(3px)}.btn--primary{background-color:var(--color-gold);color:var(--color-navy)}.btn--primary:hover{background-color:color-mix(in srgb, var(--color-gold) 80%, var(--color-navy))}.btn--navy{background-color:var(--color-navy);color:var(--color-on-dark)}.btn--navy:hover{background-color:var(--color-gold);color:var(--color-navy)}.btn--outline-light{border-color:color-mix(in srgb, var(--color-on-dark) 70%, transparent);color:var(--color-on-dark)}.btn--outline-light:hover{background-color:var(--color-on-dark);color:var(--color-navy)}.btn--outline-dark{border-color:var(--color-navy);color:var(--color-navy)}.btn--outline-dark:hover{background-color:var(--color-navy);color:var(--color-on-dark)}.btn--outline{border-color:var(--color-navy);color:var(--color-navy)}.btn--outline:hover{background-color:var(--color-navy);color:var(--color-on-dark)}.section--navy .btn--outline,.section--white .btn--outline{border-color:color-mix(in srgb, var(--color-on-dark) 70%, transparent);color:var(--color-on-dark)}.section--navy .btn--outline:hover,.section--white .btn--outline:hover{background-color:var(--color-on-dark);color:var(--color-navy)}.btn--lg{padding:1.1rem 2.5rem;font-size:var(--font-size-base)}.btn--disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.link-arrow{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-sm);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-navy);border-bottom:1px solid var(--color-gold);padding-bottom:2px;transition:gap var(--transition-base),color var(--transition-base)}.link-arrow:hover{gap:var(--space-sm);color:var(--color-gold)}.link-arrow--gold{color:var(--color-gold)}.section--navy .link-arrow,.section--white .link-arrow{color:var(--color-on-dark)}.section--navy .link-arrow:hover{color:var(--color-gold)}.section--white .link-arrow:hover{color:var(--color-on-dark)}.site-header{position:fixed;inset:0 0 auto;z-index:var(--z-header);color:var(--color-on-dark);background-color:var(--color-navy);border-bottom:1px solid rgba(0,0,0,0);transition:border-color var(--transition-base)}.site-header.is-scrolled{border-bottom-color:color-mix(in srgb, var(--color-on-dark) 20%, transparent)}.navbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);min-height:var(--header-height)}.brand{display:inline-flex;flex-direction:column;align-items:center;gap:6px;color:#cf7359}.brand__mark{flex-shrink:0}.brand__word{display:flex;flex-direction:column;align-items:center;line-height:1;text-align:center}.brand__word-main{font-family:var(--font-heading);font-size:.85rem;font-weight:var(--weight-heading);letter-spacing:.02em;color:var(--color-terracotta-readable)}.brand__word-sub{margin-top:2px;font-size:.45rem;font-weight:var(--weight-body);letter-spacing:.42em;color:var(--color-terracotta-readable)}.navbar__nav{display:flex;align-items:center;gap:var(--space-lg)}.navbar__menu{display:flex;align-items:center;gap:var(--space-lg)}.navbar__link{position:relative;font-size:var(--font-size-sm);letter-spacing:var(--tracking-wide);padding:var(--space-2xs) 0;color:inherit;transition:color var(--transition-base)}.navbar__link::after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background-color:var(--color-gold);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.navbar__link:hover::after,.navbar__link[aria-current=page]::after{transform:scaleX(1)}.navbar__link--pending{opacity:.6;cursor:not-allowed}.navbar__actions{display:flex;align-items:center;gap:var(--space-md)}.lang-switcher__link{display:inline-block;padding:var(--space-2xs) var(--space-xs);font-size:var(--font-size-label);font-weight:var(--weight-strong);letter-spacing:var(--tracking-wide);color:inherit;border:1px solid currentColor;border-radius:var(--radius-sm);opacity:.8;transition:opacity var(--transition-base),background-color var(--transition-base)}.lang-switcher__link:hover{opacity:1}.navbar__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;background:none;border:0;cursor:pointer;color:inherit}.navbar__toggle-bar{display:block;height:2px;width:100%;background-color:currentColor}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;width:min(82vw,340px);z-index:var(--z-drawer);display:flex;flex-direction:column;gap:var(--space-lg);padding:calc(var(--header-height) - 1rem) var(--space-lg) var(--space-lg);background-color:var(--color-navy);color:var(--color-on-dark);transform:translateX(100%);transition:transform var(--transition-slow)}.mobile-drawer.is-open{transform:none}.mobile-drawer__close{position:absolute;top:var(--space-md);right:var(--space-md);width:44px;height:44px;font-size:2rem;line-height:1;background:none;border:0;color:inherit;cursor:pointer}.mobile-drawer__menu{display:flex;flex-direction:column;gap:var(--space-md)}.mobile-drawer__link{font-family:var(--font-heading);font-size:1.5rem;color:inherit}.mobile-drawer__link--pending{opacity:.55;cursor:not-allowed}.mobile-drawer__foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-md);align-items:flex-start}.mobile-drawer__backdrop{position:fixed;inset:0;z-index:var(--z-floating);background-color:var(--overlay-navy-strong)}.mobile-drawer__backdrop[hidden]{display:none}@media(max-width: 900px){.navbar__nav{display:none}.navbar__toggle{display:flex}}.site-footer{background-color:var(--color-navy);color:color-mix(in srgb, var(--color-on-dark) 78%, transparent)}.site-footer__inner{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:var(--space-xl);padding-block:var(--space-2xl) var(--space-xl)}.site-footer .brand{margin-bottom:var(--space-md)}.site-footer__tagline{max-width:34ch}.site-footer__reach{color:var(--color-gold);font-size:var(--font-size-sm);letter-spacing:var(--tracking-wide)}.site-footer__heading{margin:0 0 var(--space-md);font-family:var(--font-sans);font-size:var(--font-size-label);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--color-on-dark)}.site-footer__links,.site-footer__contact{display:flex;flex-direction:column;gap:var(--space-sm)}.site-footer__links a,.site-footer__contact a{color:inherit;transition:color var(--transition-base)}.site-footer__links a:hover,.site-footer__contact a:hover{color:var(--color-gold)}.site-footer__links .is-pending{opacity:.55;cursor:not-allowed}.site-footer__social{display:flex;gap:var(--space-sm);margin-top:var(--space-lg)}.site-footer__social a{display:grid;place-items:center;width:40px;height:40px;color:var(--color-on-dark);border:1px solid color-mix(in srgb, var(--color-on-dark) 25%, transparent);border-radius:var(--radius-pill);transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base)}.site-footer__social a:hover{color:var(--color-navy);background-color:var(--color-gold);border-color:var(--color-gold)}.site-footer__bar{border-top:1px solid color-mix(in srgb, var(--color-on-dark) 12%, transparent);font-size:var(--font-size-label)}.site-footer__bar-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm);padding-block:var(--space-md)}.site-footer__bar p{margin:0}.site-footer__legal{display:inline-flex;gap:var(--space-xs)}.site-footer__legal a,.site-footer__credit a{color:inherit;transition:color var(--transition-base)}.site-footer__legal a:hover,.site-footer__credit a:hover{color:var(--color-gold)}.site-footer__credit a{text-decoration:underline;text-underline-offset:.2em}@media(max-width: 767px){.site-footer__inner{grid-template-columns:1fr;gap:var(--space-lg)}.site-footer__bar-inner{flex-direction:column;text-align:center}}.whatsapp-fab{position:fixed;right:clamp(1rem,3vw,60px);bottom:clamp(1rem,3vw,60px);z-index:var(--z-floating);display:grid;place-items:center;width:58px;height:58px;color:var(--color-on-dark);background-color:var(--color-navy);border-radius:var(--radius-pill);transition:transform var(--transition-base),background-color var(--transition-base)}.whatsapp-fab:hover{transform:translateY(-3px);background-color:#128c3e}.back-to-top{position:fixed;right:clamp(1rem,3vw,60px);bottom:calc(clamp(1rem,3vw,60px) + 72px);z-index:var(--z-floating);display:grid;place-items:center;width:46px;height:46px;color:var(--color-gold);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity var(--transition-base),transform var(--transition-base),background-color var(--transition-base),color var(--transition-base)}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{color:var(--color-navy);background-color:var(--color-gold);border-color:var(--color-gold)}.hero{position:relative;display:grid;grid-template-columns:minmax(0, 1fr);place-items:center;min-height:100vh;padding-block:var(--header-height) var(--space-2xl);color:var(--color-on-dark);background-color:var(--color-navy);background-image:var(--hero-image, none);background-size:cover;background-position:center;overflow:hidden}.hero__overlay{position:absolute;inset:0;background:linear-gradient(160deg, color-mix(in srgb, var(--color-navy) 78%, transparent), color-mix(in srgb, var(--color-navy) 50%, transparent) 48%, color-mix(in srgb, var(--color-navy) 88%, transparent))}.hero__inner{position:relative;max-width:780px;text-align:center}.hero__eyebrow{color:var(--color-gold)}.hero__title{margin:0 0 var(--space-lg);color:var(--color-on-dark)}.hero__lead{max-width:600px;margin:0 auto var(--space-xl);font-size:var(--font-size-lg);color:color-mix(in srgb, var(--color-on-dark) 85%, transparent)}.hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md)}.hero__scroll{position:absolute;left:50%;bottom:var(--space-lg);transform:translateX(-50%);width:24px;height:42px;border:1px solid color-mix(in srgb, var(--color-gold) 60%, transparent);border-radius:var(--radius-pill)}.hero__scroll-line{position:absolute;left:50%;top:8px;width:2px;height:8px;margin-left:-1px;background-color:var(--color-gold);border-radius:var(--radius-pill);animation:hero-scroll 1.6s ease-in-out infinite}@keyframes hero-scroll{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}@media(prefers-reduced-motion: reduce){.hero__scroll-line{animation:none}}.stats__grid{display:grid;grid-template-columns:repeat(4, 1fr)}.stats__item{display:flex;flex-direction:column;gap:var(--space-xs);align-items:center;text-align:center;padding-inline:var(--space-md)}.stats__item+.stats__item{border-left:1px solid var(--color-gold)}.stats__value{font-family:var(--font-heading);font-weight:var(--weight-heading);font-size:var(--font-size-stat);color:var(--color-gold);line-height:1}.stats__label{font-size:var(--font-size-label);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-navy)}.intro__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,1rem + 4vw,5rem);align-items:center}.intro__frame{width:100%;aspect-ratio:5/6;object-fit:cover;background-color:var(--color-navy)}.intro__title{margin:var(--space-xs) 0 var(--space-lg);color:var(--color-navy)}.intro__text{margin-bottom:var(--space-lg);color:var(--color-text-muted)}.section--navy .intro__title,.section--white .intro__title{color:var(--color-on-dark)}.section--navy .intro__text,.section--white .intro__text{color:var(--color-on-dark-muted)}.services__lead{max-width:720px;margin:calc(-1*clamp(1rem,.5rem + 1.5vw,1.75rem)) auto clamp(2rem,1rem + 3vw,3.5rem);text-align:center}.section--navy .services__lead,.section--white .services__lead{color:var(--color-on-dark-muted)}.services__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-lg)}.service-card{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg);background-color:var(--color-ivory);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:transform var(--transition-base),border-color var(--transition-base)}.service-card:hover{transform:translateY(-4px);border-color:var(--color-gold)}.service-card__icon{color:var(--color-gold)}.service-card__title{margin:0;color:var(--color-navy)}.service-card__text{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.services__foot,.projects__foot{margin-top:var(--space-xl);text-align:center}.projects__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-md)}.projects__empty{text-align:center;color:var(--color-text-muted)}.project-card{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-lg);cursor:pointer}.project-card__media,.project-card__media img,.project-card__placeholder{width:100%;height:100%;margin:0;object-fit:cover}.project-card__placeholder{display:block;background:linear-gradient(135deg, color-mix(in srgb, var(--color-gold) 40%, transparent), color-mix(in srgb, var(--color-navy) 95%, transparent)),var(--color-navy)}.project-card__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-2xs);padding:var(--space-lg);background:linear-gradient(to top, var(--overlay-navy-strong), color-mix(in srgb, var(--color-navy) 5%, transparent) 65%);opacity:0;transition:opacity var(--transition-base)}.project-card:hover .project-card__overlay,.project-card:focus-within .project-card__overlay{opacity:1}.project-card__category{font-size:var(--font-size-label);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--color-gold)}.project-card__name{font-family:var(--font-heading);font-weight:var(--weight-heading);font-size:1.25rem;color:var(--color-on-dark)}.testimonial__inner{max-width:800px;margin:0 auto;text-align:center}.testimonial__mark{display:block;font-family:var(--font-heading);font-weight:var(--weight-heading);font-size:5rem;line-height:.5;color:var(--color-gold)}.testimonial__quote{margin:var(--space-lg) 0;color:var(--color-on-dark)}.testimonial__divider{display:inline-block;width:40px;height:2px;margin-bottom:var(--space-lg);background-color:var(--color-gold)}.testimonial__author{margin:0;font-size:var(--font-size-sm);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-on-dark)}.testimonial__role{margin:var(--space-2xs) 0 0;font-size:var(--font-size-sm);color:var(--color-gold)}.home-cta__inner{max-width:640px;margin:0 auto;text-align:center}.home-cta__title{color:var(--color-navy)}.home-cta__text{margin-bottom:var(--space-lg);color:var(--color-text-muted)}@media(max-width: 900px){.services__grid,.projects__grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 767px){.stats__grid{grid-template-columns:repeat(2, 1fr);gap:var(--space-lg)}.stats__item+.stats__item{border-left:0}.intro__grid,.services__grid,.projects__grid{grid-template-columns:1fr}.project-card__overlay{opacity:1;background:linear-gradient(to top, var(--overlay-navy-strong), transparent 70%)}}.manifesto__inner{max-width:820px;margin-inline:auto;text-align:center}.manifesto__text{margin:0;color:var(--color-on-dark)}.philosophy__grid,.process__list{display:grid;gap:var(--space-lg);padding:0;margin:0;list-style:none}.philosophy__grid{grid-template-columns:repeat(3, 1fr)}.philosophy-card{padding:var(--space-lg);background-color:var(--color-ivory);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.philosophy-card__index{display:block;margin-bottom:var(--space-sm);font-family:var(--font-heading);font-size:var(--font-size-lg);color:var(--color-accent-text)}.philosophy-card__title{margin:0 0 var(--space-sm)}.philosophy-card__text{margin:0;color:var(--color-text-muted)}.process__list{grid-template-columns:repeat(2, 1fr);counter-reset:process}.process-step{display:flex;gap:var(--space-md);align-items:flex-start;padding:var(--space-lg);background-color:var(--color-ivory);border:1px solid var(--color-border)}.process-step__index{flex-shrink:0;font-family:var(--font-heading);font-size:var(--font-size-stat);line-height:1;color:var(--color-border)}.process-step__title{margin:0 0 var(--space-xs)}.process-step__text{margin:0;color:var(--color-text-muted)}@media(max-width: 900px){.philosophy__grid{grid-template-columns:1fr}.process__list{grid-template-columns:1fr}}.page-hero{padding-block:calc(var(--header-height) + var(--space-xl)) var(--space-xl);text-align:center}.page-hero__inner{max-width:760px;margin-inline:auto}.page-hero__eyebrow{margin-bottom:var(--space-md)}.page-hero__title{margin:0;color:var(--color-on-dark)}.page-hero__lead{margin:var(--space-lg) auto 0;max-width:620px;font-size:var(--font-size-lg);color:color-mix(in srgb, var(--color-on-dark) 85%, transparent)}.pillars__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-lg)}.pillar-card{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg);background-color:var(--color-ivory);border:1px solid var(--color-border);border-top:3px solid var(--color-gold);border-radius:var(--radius-lg)}.pillar-card__title{margin:0;color:var(--color-navy)}.pillar-card__text{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}@media(max-width: 900px){.pillars__grid{grid-template-columns:1fr}}.portfolio__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-md);list-style:none;margin:0;padding:0}.portfolio__grid .project-card{display:block}.project-detail__back{margin-bottom:var(--space-lg)}.project-detail__grid{display:grid;grid-template-columns:2fr 1fr;gap:clamp(2rem,1rem + 4vw,4rem);align-items:start}.project-detail__body{color:var(--color-text-muted);font-size:var(--font-size-lg)}.section--navy .project-detail__body,.section--white .project-detail__body{color:var(--color-on-dark-muted)}.project-detail__meta{padding:var(--space-lg);background-color:var(--color-ivory);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.meta-list{margin:0;display:grid;gap:var(--space-md)}.meta-list__row{display:flex;flex-direction:column;gap:var(--space-2xs)}.meta-list__row+.meta-list__row{padding-top:var(--space-md);border-top:1px solid var(--color-border)}.meta-list dt{font-size:var(--font-size-label);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-text-muted)}.meta-list dd{margin:0;font-family:var(--font-heading);font-size:var(--font-size-lg);color:var(--color-navy)}.gallery__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-md);list-style:none;margin:0;padding:0}.gallery__trigger{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;border-radius:var(--radius-lg);overflow:hidden}.gallery__trigger img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform var(--transition-base)}.gallery__trigger:hover img{transform:scale(1.05)}.lightbox{position:fixed;inset:0;z-index:var(--z-drawer);display:flex;align-items:center;justify-content:center;padding:var(--space-lg);background-color:var(--overlay-navy-strong)}.lightbox[hidden]{display:none}.lightbox__image{max-width:90vw;max-height:85vh;object-fit:contain}.lightbox__close{position:absolute;top:var(--space-lg);right:var(--space-lg);width:44px;height:44px;font-size:2rem;line-height:1;color:var(--color-on-dark);background:none;border:0;cursor:pointer}@media(max-width: 900px){.portfolio__grid,.gallery__grid{grid-template-columns:repeat(2, 1fr)}.project-detail__grid{grid-template-columns:1fr}}@media(max-width: 560px){.portfolio__grid,.gallery__grid{grid-template-columns:1fr}}.blog__grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--space-lg);list-style:none;margin:0 0 var(--space-xl);padding:0}.blog__empty{text-align:center;color:var(--color-text-muted)}.blog-card{display:block;color:inherit;background-color:var(--color-ivory);border:1px solid var(--color-border);transition:transform var(--transition-base),border-color var(--transition-base)}.blog-card:hover{transform:translateY(-4px);border-color:var(--color-gold)}.blog-card__media{margin:0;aspect-ratio:4/3;overflow:hidden}.blog-card__media img{width:100%;height:100%;object-fit:cover}.blog-card__placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg, color-mix(in srgb, var(--color-gold) 40%, transparent), color-mix(in srgb, var(--color-navy) 95%, transparent)),var(--color-navy)}.blog-card__body{padding:var(--space-md) var(--space-lg) var(--space-lg)}.blog-card__date{font-size:var(--font-size-label);letter-spacing:var(--tracking-wide);color:var(--color-gold)}.blog-card__title{margin:var(--space-xs) 0 var(--space-sm);font-size:var(--font-size-lg)}.blog-card__excerpt{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.6}.blog-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-lg)}.blog-pagination__status{font-size:var(--font-size-label);letter-spacing:var(--tracking-wide);color:var(--color-text-muted)}.blog-detail__back{margin-bottom:var(--space-lg)}.blog-detail__cover{aspect-ratio:21/9;overflow:hidden}.blog-detail__cover img{width:100%;height:100%;object-fit:cover}.blog-detail__inner{max-width:72ch;margin-inline:auto}.blog-detail__body{color:var(--color-text-muted);font-size:var(--font-size-lg)}.blog-detail__body>*{margin-bottom:var(--space-md)}.section--navy .blog-detail__body,.section--white .blog-detail__body{color:var(--color-on-dark-muted)}@media(max-width: 900px){.blog__grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 560px){.blog__grid{grid-template-columns:1fr}}.form{display:grid;gap:var(--space-lg)}.form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.field{display:flex;flex-direction:column;gap:var(--space-xs)}.field label{font-size:var(--font-size-label);font-weight:var(--weight-strong);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-navy)}.field__control{width:100%;padding:.85rem 1rem;font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-ivory);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.field__control:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-gold) 20%, transparent)}textarea.field__control{resize:vertical;min-height:140px}.field ul,.form-errors{margin:0;padding:0;list-style:none;color:#b23b3b;font-size:var(--font-size-sm)}.field--invalid .field__control{border-color:#b23b3b}.form__consent{display:flex;align-items:flex-start;gap:var(--space-sm)}.form__consent input{margin-top:.35rem}.contact__grid{display:grid;grid-template-columns:3fr 2fr;gap:clamp(2rem,1rem + 5vw,5rem);align-items:start}.contact__info{padding:var(--space-lg);background-color:var(--color-surface);color:var(--color-on-dark)}.contact__lead{margin-top:0;color:var(--color-on-dark-muted)}.contact__details{margin:var(--space-lg) 0 0;display:grid;gap:var(--space-lg)}.contact__detail dt{font-size:var(--font-size-label);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-on-dark-muted);margin-bottom:var(--space-2xs)}.contact__detail dd{margin:0;font-size:var(--font-size-lg);color:var(--color-on-dark)}.contact__detail a{color:inherit;border-bottom:1px solid var(--color-gold)}.contact__directions{display:inline-block;margin-top:var(--space-2xs);font-size:var(--font-size-sm);color:var(--color-on-dark-muted)}.feedback{min-height:60vh;display:grid;place-items:center;text-align:center}.feedback__inner{max-width:560px}.feedback__mark{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;margin-bottom:var(--space-lg);font-size:2.5rem;color:var(--color-gold);border:2px solid var(--color-gold);border-radius:var(--radius-pill)}.feedback__title{color:var(--color-navy)}.feedback__text{margin:var(--space-md) 0 var(--space-xl);color:var(--color-text-muted);font-size:var(--font-size-lg)}.feedback--dark{padding-block-start:calc(var(--header-height) + var(--space-xl))}.feedback--dark .feedback__title{color:var(--color-on-dark)}.feedback--dark .feedback__text{color:color-mix(in srgb, var(--color-on-dark) 80%, transparent)}.quote__inner{max-width:720px;margin-inline:auto}.quote-hero__count{margin-top:var(--space-md);font-size:var(--font-size-label);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:color-mix(in srgb, var(--color-on-dark) 75%, transparent)}.quote-hero__progress{height:6px;margin-top:var(--space-md);background-color:color-mix(in srgb, var(--color-on-dark) 20%, transparent);border-radius:var(--radius-pill);overflow:hidden}.quote-hero__progress-bar{display:block;height:100%;background-color:var(--color-gold);transition:width var(--transition-slow)}.choice-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--space-md)}.choice-grid label{display:block;padding:var(--space-md) var(--space-lg);text-transform:none;letter-spacing:normal;font-weight:var(--weight-strong);background-color:var(--color-ivory);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-base),background-color var(--transition-base)}.choice-grid input{position:absolute;opacity:0;pointer-events:none}.choice-grid input:checked+label{border-color:var(--color-gold);background-color:color-mix(in srgb, var(--color-gold) 15%, var(--color-ivory))}.choice-grid input:focus-visible+label{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-gold) 25%, transparent)}.quote__nav{display:flex;justify-content:space-between;gap:var(--space-md);margin-top:var(--space-lg)}.quote__nav .btn[type=submit]{margin-left:auto}.quote__files{margin:0;padding-left:var(--space-lg);color:var(--color-text-muted);font-size:var(--font-size-sm)}.quote__recap{margin:0 0 var(--space-lg);display:grid;gap:var(--space-sm);padding:var(--space-lg);background-color:var(--color-ivory);border:1px solid var(--color-border)}.quote__recap-row{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}.quote__recap-row:last-child{border-bottom:0;padding-bottom:0}.quote__recap dt{font-size:var(--font-size-label);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-text-muted)}.quote__recap dd{margin:0;color:var(--color-navy)}@media(max-width: 767px){.form__row,.contact__grid,.choice-grid,.quote__recap-row{grid-template-columns:1fr}.quote__recap-row{gap:var(--space-2xs)}}.legal-doc__inner{max-width:72ch;margin-inline:auto}.legal-doc__lead{font-size:var(--font-size-lg);color:var(--color-text-muted)}.legal-doc__heading{margin-top:var(--space-2xl);margin-bottom:var(--space-md);font-size:var(--font-size-h3);color:var(--color-navy)}.section--white .legal-doc__heading,.section--white .legal-doc__facts dt,.section--white .legal-doc__facts dd{color:var(--color-on-dark)}.section--white .legal-doc__lead,.section--white .legal-doc__updated{color:var(--color-on-dark-muted)}.legal-doc__inner>:first-child{margin-top:0}.legal-doc__inner>p{margin-bottom:var(--space-md);line-height:1.7}.legal-doc__facts{margin:0 0 var(--space-lg);display:grid;gap:var(--space-xs)}.legal-doc__facts>div{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-sm)}.legal-doc__facts dt{font-weight:var(--weight-strong);color:var(--color-navy)}.legal-doc__facts dd{margin:0;color:var(--color-text)}.legal-doc__facts a{color:inherit;border-bottom:1px solid var(--color-gold)}.legal-doc__list{margin:0 0 var(--space-md);padding-left:var(--space-lg);display:grid;gap:var(--space-2xs);line-height:1.6}.legal-doc__list li{list-style:disc}.legal-doc__updated{margin-top:var(--space-2xl);font-size:var(--font-size-label);color:var(--color-text-muted)}.section-grid{display:grid;gap:var(--space-lg);grid-template-columns:repeat(var(--grid-columns, 3), minmax(0, 1fr))}.section-grid--1{--grid-columns: 1}.section-grid--2{--grid-columns: 2}.section-grid--3{--grid-columns: 3}.section-grid--4{--grid-columns: 4}@media(max-width: 900px){.section-grid--3,.section-grid--4{--grid-columns: 2}}@media(max-width: 560px){.section-grid--2,.section-grid--3,.section-grid--4{--grid-columns: 1}}.rich-text__body{max-width:72ch;margin-inline:auto}.rich-text__foot{margin-top:var(--space-lg);text-align:center}.service-card__index{display:block;margin-bottom:var(--space-sm);font-family:var(--font-heading);font-size:var(--font-size-lg);color:var(--color-accent-text)}.service-card__media img,.media-gallery__figure img{width:100%;height:100%;object-fit:cover}.media-gallery__figure{position:relative;margin:0;overflow:hidden;border-radius:var(--radius-lg);aspect-ratio:4/3}.media-gallery__caption{position:absolute;inset-inline:0;bottom:0;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);color:var(--color-on-dark);background:linear-gradient(to top, color-mix(in srgb, var(--color-navy) 80%, transparent), transparent)}.motif-blade{display:inline-block;width:.4em;height:1.5em;border-radius:999px;background-color:currentColor;transform:rotate(22deg);flex-shrink:0}.motif-frieze{display:flex;justify-content:center;align-items:center;gap:1.1rem;height:2rem;color:var(--color-gold);-webkit-mask-image:linear-gradient(to right, transparent, black 12%, black 88%, transparent);mask-image:linear-gradient(to right, transparent, black 12%, black 88%, transparent)}.motif-frieze .motif-blade:nth-child(3n+2){opacity:.55;transform:rotate(22deg) scale(0.75)}.section--white+.section .motif-frieze,.section--white .motif-frieze{color:var(--color-on-dark)}.motif-trame{position:relative;isolation:isolate}.motif-trame>*{position:relative}.motif-trame::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(45deg, transparent 0 11px, var(--color-on-dark) 11px 12px, transparent 12px 22px),repeating-linear-gradient(-45deg, transparent 0 11px, var(--color-on-dark) 12px 12px, transparent 12px 22px);opacity:.07}.motif-watermark{position:absolute;top:50%;right:-8%;width:clamp(320px,45vw,720px);height:auto;transform:translateY(-50%);opacity:.08;pointer-events:none;animation:motif-rotate 90s linear infinite}@keyframes motif-rotate{to{transform:translateY(-50%) rotate(360deg)}}@media(prefers-reduced-motion: reduce){.motif-watermark{animation:none}}.motif-card{position:relative;clip-path:polygon(0 0, 100% 0, 100% 100%, 22px 100%, 0 calc(100% - 22px))}.motif-card::before{content:"";position:absolute;left:0;bottom:0;width:30px;height:30px;background-color:var(--color-gold);clip-path:polygon(0 100%, 100% 100%, 0 0)}.hero__scroll-line{width:3px;height:10px;border-radius:999px}
