:root{--ink:#263a32;--cream:#f5f2e9;--muted:#687066;--gold:#b19362;--line:#d8d9cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{max-width:1440px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;gap:15px;align-items:center;font-size:17px;font-weight:600;line-height:1.2}.brand small{display:block;letter-spacing:2px;font-size:8px;margin-top:8px}.monogram{font-family:Georgia,serif;font-size:39px;letter-spacing:-4px;padding-right:7px;font-weight:normal;border-right:1px solid var(--line)}nav{display:flex;gap:30px;align-items:center;font-size:13px}nav a:hover,.text-link:hover{color:#8a6c3c}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:17px 23px;color:#fff;background:var(--ink);border:1px solid var(--ink);font-size:13px;cursor:pointer;transition:background .2s}.button:hover{background:#3b5345}.button span{font-size:20px}.button.small{padding:10px 18px;gap:25px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;padding:30px 5% 70px;align-items:center;gap:5%}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2.5px;margin:0 0 24px}.hero-copy{padding:22px 0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-2px}h1{font-size:clamp(42px,4.7vw,70px);margin:0 0 26px}h1 em{font-weight:400;color:#667861}h2{font-size:clamp(33px,3.4vw,48px);margin:0 0 28px}h3{font-family:Georgia,serif;font-weight:400;font-size:25px;line-height:1.2;margin:0 0 12px}.intro{font-size:16px;color:var(--muted);max-width:390px;margin:0 0 30px}.location{font-size:11px;color:var(--muted);margin-top:23px;line-height:1.8}.hero-art{margin:0;position:relative;background:#e0dbce}.hero-art svg{width:100%;display:block;max-height:650px}.hero-art figcaption{position:absolute;bottom:14px;left:19px;color:#3f4a3c;font-size:9px;letter-spacing:1px}.art-label{position:absolute;bottom:60px;left:-25px;background:var(--ink);color:var(--cream);padding:22px 25px;letter-spacing:2px;font-size:10px;line-height:1.8}.service-strip{display:flex;justify-content:center;gap:9%;padding:24px 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:19px}.service-strip span:before{content:'✦';font-family:Arial;font-size:11px;color:var(--gold);margin-right:20px}.section{padding:95px 6%;max-width:1440px;margin:auto}.services{display:grid;grid-template-columns:1fr 1.35fr;gap:10%}.section-heading>p:last-child{max-width:355px;color:var(--muted);font-size:14px}.service-list article{display:flex;gap:24px;padding:27px 0;border-top:1px solid var(--line)}.number{color:#8b947f;font-size:12px;padding-top:5px}.service-list p{font-size:14px;color:var(--muted);margin:0}.service-list p.tags{font-size:10px;letter-spacing:.6px;margin-top:17px}.arrow{margin-left:auto;font-size:21px}.approach{background:#e8ebdf;display:grid;grid-template-columns:1fr 1fr;gap:13%}.approach>div>p:not(.eyebrow){font-size:14px;max-width:470px;color:#596354}.text-link{display:inline-flex;gap:35px;border-bottom:1px solid #8e9a80;padding:12px 0 5px;margin-top:15px;font-size:13px}.process{padding-top:7px}.process article{display:flex;gap:25px;margin-top:35px}.process article>span{display:flex;width:37px;height:37px;border:1px solid #aeb9a2;border-radius:50%;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.process h3{font-size:23px}.process p{color:#596354;font-size:14px;margin:0}.questions{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;display:flex;justify-content:space-between;font-size:15px;list-style:none;gap:20px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:20px}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);max-width:560px}.contact{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr 1.15fr;gap:12%}.contact h2{font-size:clamp(40px,4vw,58px)}.contact p{font-size:14px;color:#c0cbbf;max-width:350px}.contact .eyebrow{color:#d1b88b;font-size:10px}.contact .email{font-size:14px;border-bottom:1px solid #7b8c7d;padding-bottom:6px;display:inline-block;margin-top:25px;overflow-wrap:anywhere}.contact .location{font-size:11px;margin-top:30px}.contact label{display:block;font-size:11px;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #68796c;background:#31463a;color:#f5f2e9;border-radius:0;padding:12px;font-size:13px;margin-bottom:18px}input::placeholder,textarea::placeholder{color:#abb8a9}input:focus,textarea:focus,select:focus{outline:2px solid #d1b88b;outline-offset:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact .button{width:100%;background:#e7dcc4;color:var(--ink);border:0}.contact .button:hover{background:#fff4dd}.contact p.form-note{font-size:10px;max-width:none;margin-bottom:0}.contact #form-status{font-size:12px;max-width:none}footer{max-width:1440px;margin:auto;padding:35px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:10px;color:var(--muted)}footer .brand{font-size:14px}footer .monogram{font-size:33px}.skip{position:absolute;top:-60px;left:15px;background:var(--ink);color:white;padding:10px;z-index:10}.skip:focus{top:10px}@media(min-width:1600px){.approach,.contact{max-width:none;padding-left:calc((100vw - 1268px)/2);padding-right:calc((100vw - 1268px)/2)}}@media(max-width:900px){header{padding:23px 5%}nav{gap:17px}h1{font-size:45px}.hero{gap:5%;padding-top:20px}.section{padding:65px 6%;gap:7%}.service-strip{gap:4%;font-size:15px}.service-strip span:before{margin-right:10px}.contact .email{font-size:12px}.art-label{left:-10px;padding:15px}}@media(max-width:680px){header{flex-wrap:wrap}.brand{font-size:15px}.monogram{font-size:34px}.menu{display:block;background:transparent;color:var(--ink);border:1px solid var(--line);padding:8px 12px;font-size:12px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a{padding:12px 0;border-bottom:1px solid var(--line)}nav .button{margin-top:10px}.hero{display:flex;flex-direction:column;align-items:stretch;gap:25px;padding-bottom:40px}.hero-copy{padding:10px 0}h1{font-size:47px;letter-spacing:-1.8px}.eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:20px}.hero-art{margin-left:8px}.hero-art svg{max-height:500px}.art-label{bottom:50px}.service-strip{flex-direction:column;gap:8px;padding:20px 6%;font-size:17px}.services,.approach,.questions,.contact{grid-template-columns:1fr;gap:28px}.section{padding:50px 6%}h2{font-size:36px;letter-spacing:-1px}.service-list article{padding:25px 0;gap:18px}.section-heading>p:last-child{max-width:none}.process{padding-top:12px}.process article{margin-top:25px}.questions h2{margin-bottom:0}.contact h2{font-size:45px}.contact .email{font-size:14px}.form-row{grid-template-columns:1fr;gap:0}footer{flex-wrap:wrap;gap:12px;padding:28px 6%}footer .brand{width:100%;margin-bottom:10px}footer p{flex:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Original JTL branding: charcoal, warm stone, cream, and classic serif lettering. */
:root{--ink:#242321;--cream:#f2eee7;--muted:#6d675f;--gold:#a18a74;--line:#d7cfc4}body{background:var(--cream)}header{padding-top:22px;padding-bottom:22px;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:18px;letter-spacing:2px;gap:16px}.brand small{font-family:Arial,Helvetica,sans-serif;font-size:8px;letter-spacing:1.7px;color:#736a5f;margin-top:12px}.monogram.logo-mark{width:86px;height:64px;padding:0;border:0;display:block;flex-shrink:0}.hero{padding-top:50px;grid-template-columns:1fr 1fr;gap:6%;padding-bottom:60px}.hero-copy{padding:0}.hero h1 em{color:#96816b}.hero-art{background:#bbb0a0;box-shadow:0 18px 50px #30251c12}.hero-art svg{width:100%;height:auto;max-height:none;display:block}.hero-art figcaption{background:#252320cc;color:#f2eee7;left:auto;right:12px;bottom:12px;padding:4px 8px;font-size:8px}.art-label{background:#242321;color:#eee6dc;left:-25px;bottom:55px;padding:19px 23px;letter-spacing:1.4px;font-size:9px}.service-strip{background:#292724;color:#e9e1d7;border-color:#292724;letter-spacing:1px}.service-strip span:before{color:#b4a18a}.approach{background:#e4ddd3}.approach>div>p:not(.eyebrow),.process p{color:#62594f}.process article>span{border-color:#b8a997}.text-link{border-color:#a18a74}.number{color:#9b8876}.button:hover{background:#4a4138}nav a:hover,.text-link:hover{color:#947b60}.contact{background:#242321}.contact p{color:#c5bdb2}.contact .eyebrow{color:#c1a991}.contact .email{border-color:#8a7c6d}.contact input,.contact select,.contact textarea{border-color:#786c5f;background:#302c27;color:#f4ede3}.contact input::placeholder,.contact textarea::placeholder{color:#b7ac9e}.contact .button{background:#d8c8b4}.contact .button:hover{background:#eee1ce}footer .brand{font-size:16px}footer .monogram.logo-mark{width:76px;height:54px}footer .brand small{font-size:7px}@media(max-width:900px){.brand{font-size:14px;letter-spacing:1.3px}.brand small{font-size:6px;letter-spacing:1px}.monogram.logo-mark{width:70px;height:51px}.hero{gap:4%}.hero h1{font-size:44px}nav{gap:15px;font-size:12px}.art-label{left:-12px;padding:13px 16px;font-size:8px}}@media(max-width:680px){.hero{padding-top:28px;gap:25px}.hero h1{font-size:47px}.brand{font-size:13px;gap:9px;letter-spacing:1px}.brand small{font-size:6px;letter-spacing:.7px;margin-top:8px}.monogram.logo-mark{width:65px;height:48px}.hero-art{margin-left:12px}.hero-art svg{max-height:none}.hero-art figcaption{font-size:7px;right:7px;bottom:7px}.art-label{bottom:42px;left:-12px}.service-strip{font-size:16px}.contact .email{font-size:14px}footer .brand{font-size:14px}footer .brand small{font-size:6px}}
/* Bolder architectural lettermark and matching wordmark. */
.brand{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:1.7px;font-size:16px}.monogram.logo-mark{width:100px;height:66px;object-fit:contain}.brand small{font-weight:400;letter-spacing:1.3px;font-size:7px}footer .brand{font-size:14px}footer .monogram.logo-mark{width:88px;height:58px}@media(max-width:900px){.brand{font-size:13px;letter-spacing:1.2px}.monogram.logo-mark{width:80px;height:53px}.brand small{font-size:6px;letter-spacing:.8px}}@media(max-width:680px){.brand{font-size:12px;gap:11px;letter-spacing:1px}.monogram.logo-mark{width:72px;height:48px}.brand small{font-size:5.5px;letter-spacing:.7px}footer .brand{font-size:13px}footer .monogram.logo-mark{width:78px;height:52px}}
.contact .phone{display:block;font-family:Georgia,serif;font-size:27px;margin-top:27px;color:#f2eee7;letter-spacing:.2px}.contact .phone:hover{color:#d8c8b4}.contact .phone+.email{margin-top:14px}@media(max-width:680px){.contact .phone{font-size:25px}}
.contact p.business-hours{font-size:13px;margin:8px 0 0;color:#d8c8b4}

.contact .instagram-link{display:block;width:fit-content;margin-top:24px;font-size:13px;color:var(--cream)}.contact .instagram-link span{display:block;margin-top:3px;color:#d8c8b4}.contact .instagram-link:hover{text-decoration:underline;text-underline-offset:4px}

.hero-art .hero-project{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;max-height:650px}.projects-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:35px}.projects-heading h2{margin-bottom:0}.projects-heading>p{max-width:390px;font-size:14px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.project-card{margin:0;min-width:0}.project-photo{display:block;width:100%;position:relative;background:#e6e0d5;border:0;padding:0;cursor:pointer;overflow:hidden;color:var(--ink);text-align:left}.project-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;transition:transform .25s}.project-photo:hover img{transform:scale(1.025)}.photo-expand{position:absolute;right:12px;bottom:12px;background:rgba(245,242,233,.94);padding:7px 11px;font-size:11px}.project-card figcaption{padding-top:13px}.project-type{display:block;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.project-card h3{font-size:23px;margin:0}#project-viewer{border:0;background:#1d2420;color:#f5f2e9;padding:16px;max-width:94vw;max-height:94dvh;width:fit-content}#project-viewer::backdrop{background:rgba(0,0,0,.82)}.photo-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:12px}.photo-viewer-toolbar p{margin:0;font-size:14px}.photo-close{border:1px solid #798379;background:transparent;color:inherit;padding:6px 12px;cursor:pointer;font-size:13px}#full-project-photo{display:block;max-height:calc(94dvh - 90px);max-width:calc(94vw - 32px);width:auto;height:auto}@media(max-width:900px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-heading{gap:25px}nav{gap:13px}}@media(max-width:680px){.projects-heading{display:block;margin-bottom:25px}.projects-heading>p{margin-top:20px}.project-grid{gap:25px 14px}.project-card h3{font-size:19px}.photo-expand{right:6px;bottom:6px;padding:5px 8px;font-size:9px}.project-type{font-size:8px;letter-spacing:.6px}.hero-art .hero-project{max-height:none;aspect-ratio:3/4}.photo-viewer-toolbar{gap:15px}}@media(max-width:380px){.project-grid{grid-template-columns:1fr}}
