:root{--charcoal: #0F0F0F;--charcoal-tile: #141413;--gold: #C9941F;--gold-hover: #b3831a;--cream: #F4EFE7;--graphite: #8c867d;--graphite-light: #5c574f;--hairline-dark: rgba(244, 239, 231, .12);--hairline-light: rgba(15, 15, 15, .12);--font-display: "Montserrat", sans-serif;--container: 1180px;--pad-section: 96px;--pad-featured-bottom: 48px;--ease: all .2s ease}@media(max-width:960px){:root{--pad-section: 64px}}@media(max-width:560px){:root{--pad-section: 48px}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-display);background:var(--cream);color:var(--charcoal);line-height:1.6;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{max-width:var(--container);margin:0 auto;padding:0 32px}.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:1px;background:var(--gold);display:inline-block}.eyebrow.center{justify-content:center}h2.section-title{font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:1.02;font-size:clamp(34px,5vw,58px)}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;padding:16px 26px;border:1.5px solid transparent;transition:var(--ease);white-space:nowrap}.btn-primary{background:var(--gold);color:#1a1206}.btn-primary:hover{background:var(--gold-hover)}.btn-secondary{background:transparent;border-color:var(--cream);color:var(--cream)}.btn-secondary:hover{background:var(--cream);color:var(--charcoal)}.btn-secondary.on-light{border-color:var(--charcoal);color:var(--charcoal)}.btn-secondary.on-light:hover{background:var(--charcoal);color:var(--cream)}.btn-sm{padding:13px 20px;font-size:11.5px}header.nav{position:sticky;top:0;z-index:50;background:#f4efe7eb;backdrop-filter:blur(8px);border-bottom:1px solid var(--hairline-light)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:76px}.logo{line-height:1}.logo .word{font-weight:800;font-size:19px;letter-spacing:.04em;color:var(--charcoal)}.logo .sub{display:block;font-weight:600;font-size:9.5px;letter-spacing:.34em;color:var(--gold);margin-top:3px}.nav-right,.nav-links{display:flex;align-items:center;gap:30px}.nav-links a,.nav-phone{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal);transition:var(--ease)}.nav-links a:hover{color:var(--gold)}.nav-phone{color:var(--charcoal)}.hamburger{display:none;background:none;border:none;cursor:pointer;padding:6px}.hamburger svg{stroke:var(--charcoal)}.mobile-nav{display:none}@media(max-width:960px){.mobile-nav{position:fixed;inset:0;z-index:200;background:var(--charcoal);display:flex;flex-direction:column;padding:0 32px 56px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}.mobile-nav.is-open{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease,transform .2s ease}}.mobile-nav-top{display:flex;align-items:center;justify-content:space-between;height:76px;flex-shrink:0;border-bottom:1px solid var(--hairline-dark)}.mobile-nav-logo .word{color:var(--cream)}.mobile-nav-logo .sub{color:var(--gold)}.mobile-nav-close{background:none;border:none;cursor:pointer;padding:8px;color:var(--cream);display:flex;align-items:center;transition:color .2s ease}.mobile-nav-close:hover{color:var(--gold)}.mobile-nav-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.mobile-nav-links{display:flex;flex-direction:column;margin-top:8px}.mobile-nav-links a{font-size:22px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--cream);padding:22px 0;border-bottom:1px solid var(--hairline-dark);transition:color .2s ease}.mobile-nav-links a:first-child{border-top:1px solid var(--hairline-dark)}.mobile-nav-links a:hover{color:var(--gold)}.mobile-nav-links a:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;color:var(--gold)}.mobile-nav-phone{display:block;margin-top:28px;font-size:13px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--graphite);transition:color .2s ease}.mobile-nav-phone:hover{color:var(--cream)}.mobile-nav-cta{margin-top:28px;align-self:flex-start}.hero{position:relative;background:var(--charcoal);color:var(--cream);overflow:hidden}.hero .topo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.85;pointer-events:none}.hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#0f0f0f8c,#0f0f0f26 55%,#0f0f0f00)}.hero-inner{position:relative;z-index:2;padding:86px 0 92px}.hero .eyebrow{margin-bottom:26px}.hero h1{font-weight:800;text-transform:uppercase;line-height:.96;letter-spacing:-.015em;font-size:clamp(46px,7.4vw,92px);max-width:12ch}.hero h1 .l1{color:var(--cream);display:block}.hero h1 .l2{color:var(--gold);display:block}.hero h1 .l3{color:#7e786f;display:block;font-style:italic;font-weight:600;text-transform:uppercase}.hero .subhead{color:var(--graphite);max-width:46ch;margin:30px 0 36px;font-size:16px;line-height:1.7}.hero-ctas{display:flex;gap:16px;flex-wrap:wrap}.founder{position:absolute;right:0;bottom:92px;z-index:3;max-width:340px;text-align:left}.founder .quote{font-style:italic;font-size:21px;line-height:1.4;color:var(--cream);font-weight:500}.founder .who{display:flex;align-items:center;gap:14px;margin-top:20px}.founder .avatar{width:42px;height:42px;border-radius:50%;flex:none;border:1.5px solid var(--gold);display:grid;place-items:center;font-size:13px;font-weight:700;color:var(--gold);letter-spacing:.02em;background:#c9941f14}.founder .name{font-weight:700;font-size:15px;color:var(--cream)}.founder .role{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:2px}.services{background:var(--charcoal);color:var(--cream);padding:var(--pad-section) 0;border-top:1px solid var(--hairline-dark)}.services .head{text-align:center;margin-bottom:56px}.services .eyebrow{margin-bottom:22px}.services h2{color:var(--cream)}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--hairline-dark)}.svc-tile{padding:40px 36px;min-height:168px;border-right:1px solid var(--hairline-dark);border-bottom:1px solid var(--hairline-dark);transition:var(--ease)}.svc-grid .svc-tile:nth-child(3n){border-right:none}.svc-grid .svc-tile:nth-last-child(-n+3){border-bottom:none}.svc-tile:hover{background:#c9941f0d}.svc-tile .icon{color:var(--gold);margin-bottom:24px}.svc-tile .label{font-weight:700;font-size:17px;letter-spacing:.02em;text-transform:uppercase;color:var(--cream)}.featured{background:var(--cream);padding:var(--pad-section) 0 48px}.featured .head{text-align:center;margin-bottom:52px}.featured .eyebrow{margin-bottom:22px}.featured h2{color:#111}.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.proj-grid[data-count="1"]{grid-template-columns:minmax(0,380px);justify-content:center}.proj-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,380px));justify-content:center}.proj-card{background:#fff;box-shadow:0 1px 2px #0f0f0f0f;transition:var(--ease)}.proj-card:hover{transform:translateY(-6px);box-shadow:0 14px 30px #0f0f0f1f}.proj-card .cover{aspect-ratio:4/3;background:#e7e0d4;position:relative;overflow:hidden;display:grid;place-items:center}.proj-card .cover img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.proj-card .cover span{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#b7ac9b;font-weight:600}.proj-card .body{padding:22px 24px 26px}.proj-card .name{font-weight:700;font-size:18px;color:#141413}.proj-card .meta{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#8a8073;margin-top:8px}.featured .view-all{text-align:center;margin-top:44px}.contact{background:var(--cream);padding:40px 0 var(--pad-section);text-align:center}.contact .eyebrow{margin-bottom:22px}.contact h2{color:#111}.contact .subhead{color:var(--graphite-light);max-width:46ch;margin:22px auto 0;font-size:16px}.contact .lines{display:flex;gap:36px;justify-content:center;flex-wrap:wrap;margin:30px 0}.contact .lines a{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:15px;color:#141413;transition:var(--ease)}.contact .lines a:hover{color:var(--gold)}.contact .lines svg{color:var(--gold)}footer{background:var(--charcoal);color:var(--cream);padding:72px 0 0}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;padding-bottom:56px}.foot-brand .word{font-weight:800;font-size:22px;letter-spacing:.04em}.foot-brand .sub{display:block;font-weight:600;font-size:10px;letter-spacing:.34em;color:var(--gold);margin-top:4px}.foot-brand .tagline{font-style:italic;font-size:15px;margin:22px 0 14px;color:var(--cream)}.foot-brand .desc{color:var(--graphite);font-size:13.5px;line-height:1.7;max-width:34ch}.foot-col h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:20px}.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:11px}.foot-col ul a{color:#cfc9bf;font-size:13.5px;transition:var(--ease)}.foot-col ul a:hover{color:var(--gold)}.foot-area p{color:#cfc9bf;font-size:13.5px;line-height:1.9}.foot-touch .ct{color:#cfc9bf;font-size:13.5px;margin-bottom:10px;transition:var(--ease);display:block}.foot-touch .ct:hover{color:var(--gold)}.foot-social{display:flex;gap:12px;margin-top:20px}.foot-social a{width:38px;height:38px;border-radius:50%;border:1px solid var(--hairline-dark);display:grid;place-items:center;transition:var(--ease)}.foot-social a:hover{border-color:var(--gold);background:#c9941f14}.foot-social svg{stroke:var(--cream)}.foot-bottom{border-top:1px solid var(--hairline-dark);padding:24px 0 30px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px;color:#7d776e}@media(max-width:960px){.founder{position:static;max-width:100%;margin-top:54px;padding-top:36px;border-top:1px solid var(--hairline-dark)}.hero h1{max-width:100%}.svc-grid{grid-template-columns:repeat(2,1fr)}.svc-grid .svc-tile:nth-child(3n){border-right:1px solid var(--hairline-dark)}.svc-grid .svc-tile:nth-child(2n){border-right:none}.svc-grid .svc-tile:nth-last-child(-n+3){border-bottom:1px solid var(--hairline-dark)}.svc-grid .svc-tile:nth-last-child(-n+2){border-bottom:none}.proj-grid{grid-template-columns:repeat(2,1fr)}.proj-grid .proj-card:last-child{grid-column:1 / -1}.foot-grid{grid-template-columns:1fr 1fr;gap:36px}.nav-links,.nav-phone{display:none}.hamburger{display:inline-flex}}@media(max-width:560px){.hero h1{font-size:44px;line-height:1.05;letter-spacing:-.005em;max-width:12ch}.container{padding:0 22px}.svc-grid,.proj-grid,.foot-grid{grid-template-columns:1fr}.svc-grid .svc-tile{border-right:none!important;border-bottom:1px solid var(--hairline-dark)!important}.svc-grid .svc-tile:last-child{border-bottom:none!important}.proj-grid .proj-card:last-child{grid-column:auto}.hero-ctas .btn{flex:1;justify-content:center}.foot-bottom{flex-direction:column}}.page-header{background:var(--charcoal);color:var(--cream);padding:72px 0 64px;border-bottom:1px solid var(--hairline-dark)}.page-header .eyebrow{margin-bottom:22px}.page-header h1.section-title{color:var(--cream)}.portfolio-grid-section{background:var(--cream);padding:var(--pad-section) 0}.project-cover{width:100%;aspect-ratio:16/9;overflow:hidden;background:#e7e0d4;display:grid;place-items:center}.project-cover img{width:100%;height:100%;object-fit:cover;display:block}.project-cover .placeholder-label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#b7ac9b;font-weight:600}.project-body{background:var(--cream);padding:var(--pad-section) 0}.project-meta-bar{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid var(--hairline-light)}.project-meta-bar .type{font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.project-meta-bar .location{font-size:14px;color:var(--graphite-light);font-weight:500}.project-meta-bar .year{font-size:14px;color:var(--graphite-light);font-weight:500;margin-left:auto}.project-description{font-size:17px;line-height:1.75;color:var(--charcoal);max-width:72ch}.project-description p+p{margin-top:1.2em}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}.project-gallery-item{aspect-ratio:4/3;overflow:hidden;background:#e7e0d4}.project-gallery-item img{width:100%;height:100%;object-fit:cover}.project-testimonial{margin-top:56px;padding:40px 48px;background:var(--charcoal);border-left:3px solid var(--gold)}.project-testimonial blockquote{font-style:italic;font-size:20px;line-height:1.55;color:var(--cream);font-weight:500}.project-testimonial cite{display:block;margin-top:20px;font-style:normal;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:600}.project-cta{background:var(--cream);padding:0 0 var(--pad-section);text-align:center}.project-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:48px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--graphite-light);transition:var(--ease)}.project-back:hover{color:var(--gold)}.project-back svg{transition:var(--ease)}.project-back:hover svg{transform:translate(-3px)}@media(max-width:960px){.project-gallery{grid-template-columns:repeat(2,1fr)}.project-testimonial{padding:32px 36px}.project-meta-bar .year{margin-left:0}}@media(max-width:560px){.project-gallery{grid-template-columns:1fr}.project-testimonial{padding:28px 24px}.project-testimonial blockquote{font-size:17px}}a.svc-tile{display:block;text-decoration:none;color:inherit}a.svc-tile:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.service-body{background:var(--cream);padding:var(--pad-section) 0}.service-two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.service-intro-text{font-size:17px;line-height:1.75;color:var(--charcoal)}.service-included h3{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:20px}.service-included ul{list-style:none;display:flex;flex-direction:column;gap:12px}.service-included li{display:flex;align-items:flex-start;gap:12px;font-size:15px;color:var(--charcoal);line-height:1.5}.service-included li:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--gold);margin-top:8px}.service-faq{background:var(--charcoal);padding:var(--pad-section) 0}.service-faq .eyebrow{margin-bottom:22px}.service-faq h2.section-title{color:var(--cream);margin-bottom:52px}.faq-list{display:flex;flex-direction:column;gap:0}.faq-item{padding:32px 0;border-bottom:1px solid var(--hairline-dark)}.faq-item:first-child{border-top:1px solid var(--hairline-dark)}.faq-question{font-size:17px;font-weight:700;color:var(--cream);margin-bottom:14px;line-height:1.4}.faq-answer{font-size:15px;line-height:1.75;color:var(--graphite);max-width:68ch}.service-cta{background:var(--cream);padding:var(--pad-section) 0;text-align:center}.service-cta .eyebrow{margin-bottom:22px}.service-cta h2.section-title{color:#111;margin-bottom:12px}.service-cta .subhead{color:var(--graphite-light);font-size:16px;margin-bottom:32px}@media(max-width:960px){.service-two-col{grid-template-columns:1fr;gap:48px}}@media(max-width:560px){.faq-question{font-size:15px}}.quote-header{background:var(--cream);padding:var(--pad-section) 0 56px}.quote-header .eyebrow{margin-bottom:22px}.quote-header h1.section-title{color:var(--charcoal)}.quote-subhead{color:var(--graphite-light);font-size:15px;line-height:1.75;max-width:52ch;margin-top:20px}.quote-form-section{background:var(--cream);padding:0 0 var(--pad-section)}.quote-form{max-width:520px;display:flex;flex-direction:column;gap:24px}.form-field{display:flex;flex-direction:column;gap:8px}.form-label{font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--charcoal)}.field-optional{font-weight:400;color:var(--graphite-light)}.form-field input[type=text],.form-field input[type=email],.form-field input[type=tel],.form-field select,.form-field textarea{font-family:var(--font-display);font-size:14px;color:var(--charcoal);background:#fff;border:1px solid rgba(15,15,15,.18);padding:11px 14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;width:100%;appearance:none;-webkit-appearance:none;border-radius:0}.form-field select{background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 7L11 1' stroke='%235c574f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}.form-field textarea{resize:vertical;min-height:120px;line-height:1.6}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c9941f26}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--graphite)}.file-upload-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.file-upload-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid rgba(15,15,15,.18);font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--charcoal);cursor:pointer;transition:var(--ease);white-space:nowrap;user-select:none}.file-upload-btn svg{color:var(--gold);flex:none}.file-upload-btn:hover{border-color:var(--gold);color:var(--gold)}.file-upload-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.file-upload-note{font-size:13px;color:var(--graphite-light)}.file-upload-hint{font-size:12.5px;color:var(--graphite-light);line-height:1.6}.file-input-hidden{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.quote-form .btn{align-self:flex-start;margin-top:8px}@media(max-width:560px){.quote-form .btn{width:100%;justify-content:center}}.page-header h1.section-title{font-weight:800;text-transform:uppercase;letter-spacing:-.01em;line-height:1.02;font-size:clamp(34px,5vw,58px)}.about-headshot{aspect-ratio:3/4;max-width:380px;overflow:hidden}.about-headshot img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.about-philosophy h2.section-title{color:var(--cream);margin-bottom:40px}.about-pull-quote{font-style:italic;font-size:20px;line-height:1.45;color:var(--cream);font-weight:500;border-left:3px solid var(--gold);padding-left:24px;margin-bottom:40px;max-width:52ch}.about-pull-quote cite{display:block;font-style:normal;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-top:14px}.about-philosophy-body{display:flex;flex-direction:column;gap:20px;max-width:68ch}.about-philosophy-body p{font-size:16px;line-height:1.75;color:var(--graphite)}.about-story-body{display:flex;flex-direction:column;gap:20px;max-width:68ch}
