:root{--cedar:#842326;--cedar-dark:#5a1a1d;--ink:#26292a;--cream:#fffaf5;--sand:#f0e8df;--timber:#8a6a49;--rule:#d8c9b9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}img{max-width:100%;display:block}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--cedar);outline-offset:4px}.wrap{width:min(1240px,calc(100% - 56px));margin-inline:auto}.overline{margin:0 0 14px;color:var(--cedar);font-size:.78rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.display,h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em;line-height:1.13}h1{font-size:clamp(3.2rem,6vw,6rem);margin:0 0 24px}h2{font-size:clamp(2.5rem,4vw,4.4rem);margin:0 0 25px}h3{font-size:1.65rem;margin:0 0 10px}p{margin-top:0}.lead{font-size:1.2rem;line-height:1.65;color:#514d49;max-width:650px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:14px 25px;background:var(--cedar);border:1px solid var(--cedar);color:#fff;text-decoration:none;font-weight:800;letter-spacing:.01em;transition:background .2s,transform .2s}.button:hover{background:var(--cedar-dark);transform:translateY(-2px)}.button.ghost{background:transparent;color:var(--cedar)}.button.ghost:hover{background:#f6eae4}.button.light{background:var(--cream);border-color:var(--cream);color:var(--cedar)}.button.light:hover{background:#eadbd0}.microbar{background:var(--ink);color:#fff;font-size:.82rem;font-weight:700;letter-spacing:.04em}.microbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:7px 0}.microbar a{text-decoration:none}.header{background:var(--cream);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:20}.header-inner{min-height:95px;display:flex;align-items:center;justify-content:space-between;gap:32px}.logo-link{display:flex;align-items:center;width:168px;flex:none;text-decoration:none}.logo-link img{width:100%;height:auto}.nav{display:flex;align-items:center;gap:30px}.nav a{text-decoration:none;font-weight:700;font-size:.91rem}.nav a:hover,.nav a[aria-current=page]{color:var(--cedar)}.nav .nav-contact{border-bottom:2px solid var(--cedar);padding-bottom:5px}.menu{display:none;background:transparent;border:1px solid var(--rule);color:var(--ink);padding:5px 11px;font-size:1.4rem;cursor:pointer}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);min-height:660px;overflow:hidden}.hero-copy{background:var(--cream);display:flex;align-items:center}.hero-copy-inner{width:min(570px,calc(100% - 56px));margin-left:max(28px,calc((100vw - 1240px)/2));padding:75px 36px 75px 0}.hero h1 em{font-style:normal;color:var(--cedar)}.hero p.lead{margin-bottom:32px}.hero-buttons{display:flex;gap:13px;flex-wrap:wrap}.hero-photo{position:relative;min-height:570px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:59% center;position:absolute;inset:0}.hero-photo:after{content:"";position:absolute;left:0;top:0;bottom:0;width:11px;background:var(--cedar)}.image-caption{position:absolute;right:18px;bottom:16px;background:#222b;color:#fff;padding:5px 9px;font-size:.7rem;z-index:1}.signature{background:var(--cedar);color:#fff}.signature .wrap{display:flex;justify-content:space-between;gap:25px;padding:20px 0;align-items:center}.signature strong{font:700 1.05rem Georgia,serif;letter-spacing:.06em}.signature span{font-size:.79rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.section{padding:105px 0}.section-head{display:grid;grid-template-columns:1fr .65fr;gap:70px;align-items:end;margin-bottom:48px}.section-head .lead{margin-bottom:0}.service-list{border-top:1px solid var(--rule);display:grid;grid-template-columns:repeat(3,1fr)}.service-item{padding:37px 35px 38px 0;border-bottom:1px solid var(--rule);min-height:230px}.service-item:not(:nth-child(3n+1)){padding-left:32px;border-left:1px solid var(--rule)}.service-item .number{display:block;font-size:.77rem;color:var(--cedar);font-weight:800;letter-spacing:.16em;margin-bottom:23px}.service-item p{color:#5d5853;max-width:320px;margin-bottom:0}.service-item a{text-decoration:none}.service-item a:hover{color:var(--cedar)}.text-link{display:inline-block;color:var(--cedar);text-decoration:none;font-weight:800;border-bottom:2px solid var(--cedar);padding-bottom:5px;margin-top:27px}.brand-story{background:var(--ink);color:#fff;position:relative;overflow:hidden}.brand-story:before{content:"";position:absolute;width:35%;height:100%;right:0;top:0;background:linear-gradient(90deg,transparent,#55202255)}.story-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:10%;align-items:center;padding:105px 0;position:relative}.story-rule{height:4px;width:75px;background:var(--cedar);margin-bottom:30px}.brand-story .overline{color:#e7aaa2}.brand-story p{color:#dedbd7;font-size:1.11rem}.brand-story .text-link{color:#fff;border-color:#c8958e}.story-quote{font:700 clamp(2rem,3.6vw,4rem)/1.22 Georgia,serif;letter-spacing:-.04em;max-width:650px}.story-quote em{font-style:normal;color:#d39a91}.portfolio{background:var(--sand)}.portfolio-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:75px;align-items:center}.portfolio-frame{min-height:440px;border:1px solid #cbb9aa;position:relative;display:flex;align-items:end;background:linear-gradient(135deg,#e8d9ca,#c9b19c)}.portfolio-frame:before{content:"";position:absolute;inset:18px;border:1px solid #f9f1ea}.portfolio-frame div{position:relative;background:var(--cream);padding:24px 28px;width:80%;font:700 1.5rem Georgia,serif;color:var(--cedar)}.portfolio-copy p{color:#5d5853}.portfolio-copy .overline{color:var(--cedar)}.page-heading{background:var(--sand);padding:83px 0 74px;border-bottom:1px solid var(--rule)}.page-heading h1{font-size:clamp(3rem,5vw,5rem);max-width:930px}.page-heading .lead{margin:0}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:90px}.detail{border-top:2px solid var(--cedar);padding:32px 0 48px}.detail .number{color:var(--cedar);font-weight:800;font-size:.78rem;letter-spacing:.18em}.detail h2{font-size:2.2rem;margin:18px 0}.detail p{color:#595550;max-width:480px}.about-grid{display:grid;grid-template-columns:1fr .9fr;gap:100px;align-items:start}.about-grid p{font-size:1.13rem;color:#595550}.brand-card{background:var(--cream);border:1px solid var(--rule);padding:38px;box-shadow:16px 16px 0 #e2d3c5}.brand-card img{width:100%}.brand-card .brand-phone{display:block;text-align:center;color:var(--ink);font:700 1.55rem Georgia,serif;letter-spacing:.13em;text-decoration:none}.brand-card .brand-slogan{display:block;text-align:center;color:var(--ink);font:700 .9rem Georgia,serif;text-transform:uppercase;letter-spacing:.12em;margin-top:10px}.project-intro{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:center}.project-placeholder{min-height:400px;background:linear-gradient(135deg,#d8c4b1,#efe3d7);display:flex;align-items:center;justify-content:center;text-align:center;border:15px solid var(--cream);box-shadow:0 0 0 1px var(--rule);padding:40px;font:700 2.5rem Georgia,serif;color:var(--cedar)}.project-intro p{color:#595550}.categories{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:75px}.categories article{border-top:2px solid var(--cedar);padding-top:25px}.categories p{color:#595550}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.contact-grid p{color:#595550;font-size:1.13rem}.phone-panel{background:var(--ink);color:#fff;padding:52px}.phone-panel span{display:block;color:#e6aaa2;letter-spacing:.18em;font-size:.8rem;font-weight:800;text-transform:uppercase;margin-bottom:18px}.phone-panel a{color:#fff;text-decoration:none;font:700 clamp(1.7rem,3vw,2.6rem) Georgia,serif}.phone-panel p{color:#d6d1cc;font-size:1rem;margin:20px 0 0}.cta{background:var(--cedar);color:#fff;padding:75px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:10px}.cta p{color:#f1dcd7;margin-bottom:0}.footer{background:#1c1f20;color:#dedbd7;padding:66px 0 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px;padding-bottom:55px;border-bottom:1px solid #55595a}.footer-logo{width:180px;filter:brightness(1.8);margin-bottom:15px}.footer p{max-width:340px;color:#bfc0bd}.footer h3{font:700 .8rem Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:#fff;margin-bottom:16px}.footer a{display:block;color:#ddd;text-decoration:none;margin:7px 0}.footer a:hover{text-decoration:underline}.footer small{display:block;margin-top:22px;color:#aaa}@media(max-width:1000px){.nav{gap:17px}.hero-copy-inner{margin-left:28px}.service-list{grid-template-columns:repeat(2,1fr)}.service-item:not(:nth-child(3n+1)){padding-left:0;border-left:0}.service-item:nth-child(even){padding-left:25px;border-left:1px solid var(--rule)}}@media(max-width:700px){.wrap{width:calc(100% - 36px)}.microbar .wrap{justify-content:center}.microbar .wrap span{display:none}.header-inner{min-height:76px}.logo-link{width:124px}.menu{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:20px 18px 27px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--rule);box-shadow:0 15px 25px #0002}.nav.open{display:flex}.nav a{padding:5px}.hero{grid-template-columns:1fr}.hero-copy-inner{width:auto;margin:0;padding:69px 24px 59px}.hero-photo{min-height:330px}.hero-photo:after{width:100%;height:7px;top:0;bottom:auto}.signature .wrap{justify-content:center;flex-wrap:wrap;text-align:center;gap:8px 23px}.signature strong{width:100%}.section{padding:72px 0}.section-head,.story-grid,.portfolio-grid,.detail-grid,.about-grid,.project-intro,.contact-grid,.footer-grid{grid-template-columns:1fr;gap:30px}.service-list{grid-template-columns:1fr}.service-item,.service-item:nth-child(even){border-left:0;padding:28px 0;min-height:0}.service-item .number{margin-bottom:12px}.story-grid{padding:75px 0}.story-quote{margin:0}.portfolio-frame{min-height:300px}.page-heading{padding:63px 0 55px}.categories{grid-template-columns:1fr;gap:24px;margin-top:45px}.project-placeholder{min-height:270px;font-size:2rem}.cta .wrap{display:block}.cta .button{margin-top:25px}.footer-grid{gap:20px}.phone-panel{padding:35px}.brand-card{padding:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.logo-link{width:155px;display:flex;flex-direction:column;align-items:center;gap:0}.logo-phone{display:block;color:var(--ink);font:700 .72rem/1.2 Georgia,serif;letter-spacing:.11em;margin-top:-3px;white-space:nowrap}.header-inner{min-height:108px}@media(max-width:700px){.logo-link{width:123px}.logo-phone{font-size:.6rem}.header-inner{min-height:88px}}
/* Give the live phone line its own breathing room beneath the transparent artwork. */
.logo-phone{margin-top:8px;line-height:1.25}.header-inner{min-height:122px}@media(max-width:700px){.logo-phone{margin-top:5px}.header-inner{min-height:97px}}

/* Quiet header: the slogan belongs to the logo, and contact lives on Contact. */
.logo-link{width:172px}.logo-slogan{display:block;color:var(--ink);font:700 .67rem/1.25 Georgia,serif;letter-spacing:.025em;white-space:nowrap;margin-top:4px}.header-inner{min-height:124px}.footer-logo{filter:none;width:190px}@media(max-width:700px){.logo-link{width:137px}.logo-slogan{font-size:.52rem;margin-top:2px}.header-inner{min-height:101px}}
/* Contact inquiry form */
.contact-section{padding-top:78px}.contact-grid{grid-template-columns:.72fr 1.28fr;gap:9%;align-items:start}.contact-intro p:not(.overline){max-width:380px}.contact-call{margin-top:46px;border-top:2px solid var(--cedar);padding-top:23px}.contact-call span{display:block;color:var(--cedar);font-size:.77rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-bottom:10px}.contact-call a{font:700 1.7rem Georgia,serif;text-decoration:none}.project-form{background:#fff;border:1px solid var(--rule);border-top:5px solid var(--cedar);padding:39px 42px 43px;box-shadow:16px 16px 0 #e8ddd1}.form-heading{font:700 1.8rem/1.25 Georgia,serif;margin-bottom:28px;color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:20px}.field label{display:block;color:var(--ink);font-weight:700;font-size:.91rem;margin-bottom:8px}.field label span{color:var(--cedar)}.field input,.field select,.field textarea{display:block;width:100%;border:1px solid #bcb1a6;border-radius:0;background:var(--cream);color:var(--ink);padding:13px 14px;font:1rem/1.45 Arial,Helvetica,sans-serif;min-height:50px}.field textarea{resize:vertical;min-height:155px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--cedar);outline-offset:2px}.field input::placeholder,.field textarea::placeholder{color:#77716b}.honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-bottom{display:flex;align-items:center;gap:19px;flex-wrap:wrap;margin-top:8px}.form-bottom p{font-size:.83rem;color:#65605b;margin:0;max-width:235px}.form-status{margin:22px 0 0;padding:13px 16px;border-left:4px solid var(--cedar);background:var(--sand);color:var(--ink);font-weight:700}.form-status.error{border-color:#a63a2e;background:#fff1ed}.project-form button[disabled]{opacity:.65;cursor:wait}@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:40px}.contact-intro p:not(.overline){max-width:650px}.contact-call{margin-top:25px}}@media(max-width:700px){.contact-section{padding-top:55px}.project-form{padding:28px 20px;box-shadow:8px 8px 0 #e8ddd1}.form-row{grid-template-columns:1fr;gap:0}.form-bottom .button{width:100%}}

/* Final layout refinements */
.header-inner{min-height:94px}.logo-link{width:132px}.logo-slogan{font-size:.59rem;line-height:1.2;margin-top:2px}.nav a{font-size:.94rem}.project-placeholder{flex-direction:column;gap:20px;background:linear-gradient(135deg,#e7dbcf,#d3bdab);font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.18}.project-placeholder-mark{font:700 1.15rem Georgia,serif;letter-spacing:.22em;border-top:2px solid var(--cedar);border-bottom:2px solid var(--cedar);padding:8px 15px}.brand-card{display:flex;flex-direction:column;align-items:center}.brand-card .brand-slogan{margin-top:18px}.field input,.field select,.field textarea{font-size:1rem}.field label{font-size:1rem}.form-bottom p{font-size:.9rem}.contact-call a:hover{text-decoration:underline}.contact-section{padding-bottom:110px}
@media(max-width:700px){.header-inner{min-height:78px}.logo-link{width:109px}.logo-slogan{font-size:.51rem}.contact-section{padding-bottom:80px}.hero-copy-inner{padding-top:55px}.hero{min-height:0}}

/* Reachable footer contact details and smaller touch screens. */
.footer-contact a{overflow-wrap:anywhere;word-break:normal}.footer-contact a[href^="mailto:"]{line-height:1.5}.menu{min-width:44px;min-height:44px}@media(max-width:700px){.footer-grid{grid-template-columns:1fr 1fr;column-gap:22px;row-gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.footer-contact{min-width:0}.footer-contact a{font-size:.92rem}.hero h1{font-size:clamp(2.65rem,12vw,3.8rem)}.page-heading h1{font-size:clamp(2.6rem,11vw,4rem)}.hero-buttons .button{min-width:0}}@media(max-width:390px){.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-contact a{font-size:1rem}.signature span{font-size:.72rem}.hero-buttons .button{width:100%}.contact-call a{font-size:1.55rem}}
