.home{--ink:#595151;--dark:#302c2c;--gold:#d4af06;--gold-deep:#a88900;--paper:#fff;--soft:#f5f5f2;--line:#dedcd6;--muted:#777171;--max:1440px;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}.home a{color:inherit;text-decoration:none}.home img{max-width:100%;display:block}.home button{font:inherit}.home .shell{width:min(calc(100% - 8rem),var(--max));margin-inline:auto}.home .eyebrow{letter-spacing:.17em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.8rem;margin:0 0 1.5rem;font-size:.74rem;font-weight:700;display:flex}.home .eyebrow:before{content:"";background:var(--gold);flex:none;width:.42rem;height:.42rem}.home .topbar{border-bottom:1px solid var(--line);z-index:30;background:#fffffff2;align-items:center;height:8rem;display:flex;position:relative}.home .topbar .shell{grid-template-columns:280px 1fr auto;align-items:center;gap:3rem;display:grid}.home .brand img{width:250px;height:auto}.home .brand-sub{letter-spacing:.28em;text-transform:uppercase;color:#6d6868;margin-top:.15rem;font-size:.58rem;display:block}.home .nav{justify-content:center;gap:2.3rem;font-size:.9rem;display:flex}.home .nav a{padding:.6rem 0;position:relative}.home .nav a:after{content:"";background:var(--gold);height:1px;transition:right .25s;position:absolute;bottom:0;left:0;right:100%}.home .nav a:hover:after,.home .nav a:focus-visible:after{right:0}.home .top-contact{border-bottom:1px solid var(--ink);align-items:center;gap:1rem;padding:.65rem 0;font-size:.88rem;font-weight:700;display:flex}.home .arrow{font-size:1.2rem;line-height:1;transition:transform .2s}.home a:hover .arrow{transform:translate(3px,-3px)}.home .menu-toggle{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:.7rem;display:none}.home .menu-toggle span{background:currentColor;width:28px;height:1px;margin:6px;display:block}.home .hero{background:var(--soft);min-height:calc(100vh - 8rem);position:relative;overflow:hidden}.home .hero-grid{grid-template-columns:46% 54%;align-items:stretch;min-height:calc(100vh - 8rem);display:grid}.home .hero-copy{padding:clamp(5rem,9vw,9rem) 4.5rem 5rem max(4rem,calc((100vw - min(calc(100vw - 8rem),var(--max)))/2));z-index:2;flex-direction:column;justify-content:center;display:flex;position:relative}.home .hero h1{letter-spacing:-.055em;max-width:760px;color:var(--ink);margin:0;font-size:clamp(4rem,6.35vw,7.5rem);font-weight:500;line-height:.91}.home .hero h1 em{color:var(--gold-deep);font-style:normal}.home .hero-lead{color:#686161;max-width:560px;margin:2.5rem 0 2rem;font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.55}.home .hero-actions{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.home .btn{border:1px solid var(--gold);background:var(--gold);color:#2f2b2b;justify-content:space-between;align-items:center;gap:2rem;min-width:220px;padding:1.1rem 1.35rem;font-size:.9rem;font-weight:700;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.home .btn:hover{background:var(--dark);border-color:var(--dark);color:#fff}.home .text-link{border-bottom:1px solid var(--ink);align-items:center;gap:.8rem;padding:.75rem 0;font-size:.9rem;font-weight:700;display:inline-flex}.home .hero-visual{background:#bbb;min-height:660px;position:relative;overflow:hidden}.home .hero-visual img{object-fit:cover;object-position:center;width:100%;height:100%}.home .hero-visual:after{content:"";background:linear-gradient(90deg,#302c2c14,#0000 32%),linear-gradient(#0000 62%,#14121247);position:absolute;inset:0}.home .hero-stamp{z-index:2;color:#fff;letter-spacing:.2em;text-transform:uppercase;writing-mode:vertical-rl;font-size:.7rem;position:absolute;top:2rem;right:2rem}.home .hero-caption{z-index:2;color:#fff;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;font-size:.72rem;display:flex;position:absolute;bottom:1.7rem;left:2rem;right:2rem}.home .scroll-cue{writing-mode:vertical-rl;letter-spacing:.15em;text-transform:uppercase;color:#918a8a;font-size:.62rem;position:absolute;bottom:2rem;left:clamp(1.2rem,3vw,3rem)}.home section{scroll-margin-top:2rem}.home .intro{background:#fff;padding:9rem 0 8rem}.home .intro-grid{grid-template-columns:1fr 2.1fr;align-items:start;gap:8rem;display:grid}.home .section-index{letter-spacing:.15em;color:var(--gold-deep);font-size:.72rem;font-weight:700}.home .intro h2,.home .portfolio h2,.home .about h2,.home .contact h2{letter-spacing:-.045em;color:var(--ink);margin:0;font-size:clamp(2.8rem,5vw,5.4rem);font-weight:500;line-height:1.02}.home .intro h2{max-width:980px}.home .intro .statement{color:#6d6767;max-width:760px;margin:2.5rem 0 0;font-size:clamp(1.15rem,1.5vw,1.4rem)}.home .services{border-top:1px solid var(--line);background:#fff}.home .service-grid{grid-template-columns:repeat(3,1fr);display:grid}.home .service{border-right:1px solid var(--line);min-height:430px;padding:3.3rem 3rem 3rem;transition:background .25s,color .25s;position:relative}.home .service:first-child{border-left:1px solid var(--line)}.home .service:hover{background:var(--dark);color:#fff}.home .service-no{letter-spacing:.16em;color:var(--gold-deep);font-size:.72rem}.home .service h3{letter-spacing:-.03em;margin:5.8rem 0 1.4rem;font-size:clamp(1.7rem,2.3vw,2.5rem);font-weight:500}.home .service p{max-width:320px;color:var(--muted);transition:color .25s}.home .service:hover p{color:#c9c4c4}.home .service-icon{border:1px solid;border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.25rem;display:grid;position:absolute;top:2.7rem;right:2.4rem}.home .portfolio{background:var(--dark);color:#fff;padding:9rem 0;overflow:hidden}.home .portfolio .eyebrow{color:#c8c2c2}.home .portfolio h2{color:#fff;max-width:820px}.home .project{color:var(--ink);background:#fff;grid-template-columns:1.25fr .75fr;margin-top:4.5rem;display:grid}.home .project-image{min-height:620px;position:relative;overflow:hidden}.home .project-image img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.home .project:hover .project-image img{transform:scale(1.025)}.home .project-label{background:var(--gold);letter-spacing:.14em;padding:.7rem .9rem;font-size:.68rem;font-weight:700;position:absolute;top:1.5rem;left:1.5rem}.home .project-info{flex-direction:column;padding:clamp(2.5rem,5vw,5.5rem);display:flex}.home .project-info .location{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.home .project-info h3{letter-spacing:-.05em;margin:1.2rem 0 1.8rem;font-size:clamp(2.8rem,4.6vw,5rem);font-weight:500;line-height:.95}.home .project-info p{color:var(--muted);max-width:420px;font-size:1.08rem}.home .project-facts{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1rem;margin-top:auto;padding-top:2rem;display:grid}.home .fact strong{color:var(--ink);font-size:1.8rem;font-weight:500;display:block}.home .fact span{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.72rem}.home .project-info .text-link{align-self:flex-start;margin-top:2.5rem}.home .about{background:var(--soft);padding:9rem 0}.home .about-grid{grid-template-columns:1fr 1fr;gap:8rem;display:grid}.home .about-copy{padding-top:5rem}.home .about-copy p{color:#6d6767;max-width:580px;margin:0 0 1.5rem;font-size:1.15rem}.home .principles{border-top:1px solid var(--line);margin-top:3.5rem}.home .principle{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr;gap:1rem;padding:1.4rem 0;display:grid}.home .principle span{color:var(--gold-deep);letter-spacing:.12em;font-size:.75rem}.home .principle strong{font-size:1.15rem;font-weight:500}.home .quote-panel{background:var(--gold);min-height:660px;color:var(--dark);flex-direction:column;justify-content:space-between;padding:4rem;display:flex}.home .quote-mark{opacity:.45;font:8rem/1 Georgia,serif}.home blockquote{letter-spacing:-.04em;margin:0;font-size:clamp(2.2rem,3.7vw,4rem);line-height:1.08}.home .quote-meta{letter-spacing:.14em;text-transform:uppercase;font-size:.75rem}.home .contact{background:#fff;padding:9rem 0 4rem}.home .contact-grid{grid-template-columns:1.15fr .85fr;align-items:end;gap:8rem;display:grid}.home .contact h2 em{color:var(--gold-deep);font-style:normal;display:block}.home .contact-card{border-top:1px solid var(--ink);padding-top:2rem}.home .contact-card h3{margin:0 0 1.5rem;font-size:1.5rem;font-weight:500}.home .contact-card address{color:var(--muted);margin-bottom:2rem;font-style:normal}.home .contact-links{gap:.8rem;display:grid}.home .contact-links a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 0;font-weight:700;display:flex}.home footer{border-top:1px solid var(--line);margin-top:7rem;padding:2rem 0}.home .footer-row{color:var(--muted);justify-content:space-between;align-items:center;gap:2rem;font-size:.75rem;display:flex}.home .footer-links{gap:1.5rem;display:flex}@media (prefers-reduced-motion:reduce){.home .project-image img{transition:none}}@media (max-width:1080px){.home .shell{width:min(calc(100% - 3rem),var(--max))}.home .topbar{height:6.8rem}.home .topbar .shell{grid-template-columns:235px 1fr auto}.home .brand img{width:210px}.home .nav{gap:1.3rem}.home .top-contact{border:1px solid var(--line);justify-content:center;width:44px;padding:.65rem;font-size:0}.home .top-contact .arrow{font-size:1rem}.home .hero{min-height:auto}.home .hero-grid{grid-template-columns:1fr;min-height:auto}.home .hero-copy{padding:6rem 4rem}.home .hero-visual{min-height:620px}.home .scroll-cue{display:none}.home .intro-grid{gap:4rem}.home .service{padding:2.5rem 2rem}.home .project{grid-template-columns:1fr}.home .project-image{min-height:560px}.home .about-grid,.home .contact-grid{gap:4rem}}@media (max-width:760px){.home .shell{width:calc(100% - 2rem)}.home .topbar{height:5.8rem}.home .topbar .shell{grid-template-columns:1fr auto}.home .brand img{width:180px}.home .brand-sub{font-size:.5rem}.home .menu-toggle{display:block}.home .top-contact{display:none}.home .nav{background:var(--paper);flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:1rem;padding:4rem 2rem;font-size:1.8rem;transition:transform .3s;display:flex;position:fixed;inset:5.8rem 0 0;transform:translate(100%)}.home .nav.open{transform:none}.home .hero-grid{flex-direction:column;display:flex}.home .hero-copy{padding:5rem 1rem 4rem}.home .hero h1{font-size:clamp(3.5rem,17vw,5.8rem)}.home .hero-lead{margin-top:2rem}.home .hero-actions{flex-direction:column;align-items:stretch}.home .btn{width:100%}.home .text-link{align-self:flex-start}.home .hero-visual{min-height:520px}.home .hero-caption{left:1rem;right:1rem}.home .intro,.home .portfolio,.home .about,.home .contact{padding:6rem 0}.home .intro-grid,.home .about-grid,.home .contact-grid{grid-template-columns:1fr;gap:2.5rem}.home .service-grid{grid-template-columns:1fr}.home .service,.home .service:first-child{border-left:0;border-right:0;border-bottom:1px solid var(--line);min-height:310px;padding:2.3rem 1rem}.home .service h3{margin-top:4rem}.home .project{margin-top:3rem}.home .project-image{min-height:420px}.home .project-info{padding:2.2rem 1.2rem}.home .about-copy{padding-top:0}.home .quote-panel{min-height:520px;padding:2rem}.home .footer-row{flex-direction:column;align-items:flex-start}.home .footer-links{flex-wrap:wrap}}.home .hero-visual-inner{will-change:transform;position:absolute;inset:0}.home .hero-visual img{will-change:transform}.home .principle{--line-scale:1;border-bottom:0;position:relative}.home .principle:after{content:"";background:var(--line);height:1px;transform:scaleX(var(--line-scale));transform-origin:0;position:absolute;bottom:0;left:0;right:0}.home .contact-links a{--line-scale:1;border-bottom:0;position:relative}.home .contact-links a:after{content:"";background:var(--line);height:1px;transform:scaleX(var(--line-scale));transform-origin:0;position:absolute;bottom:0;left:0;right:0}.home .service-icon,.home .btn,.home .top-contact{will-change:transform}.home .btn{isolation:isolate;position:relative;overflow:hidden}.home .btn:before{content:"";background:var(--dark);transform-origin:0;z-index:-1;transition:transform .45s cubic-bezier(.77,0,.18,1);position:absolute;inset:0;transform:scaleX(0)}.home .btn:hover{background:var(--gold)}.home .btn:hover:before{transform:scaleX(1)}.home .nav a:after{transition:right .3s cubic-bezier(.77,0,.18,1)}.home .project-image img{transition:none}.home .quote-panel{will-change:background-color}
