:root{--blue:#153d68;--navy:#102b4b;--ink:#18232e;--gold:#ecc36d;--paper:#f3f5f7;--line:#d9dfe5;--muted:#536170}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.6}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,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b88726;outline-offset:5px}img{max-width:100%;display:block;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.4rem,6.6vw,6.4rem);margin-bottom:26px}h2{font-size:clamp(2.25rem,3.6vw,3.55rem);margin-bottom:26px}h3{font-size:1.5rem;letter-spacing:-.025em;margin-bottom:12px}p{margin-bottom:20px}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.draft{background:#e8eef4;color:#29445f;padding:8px 24px;text-align:center;font-size:.75rem;font-weight:700;letter-spacing:.09em}.draft span{font-weight:400;letter-spacing:0;margin-left:14px}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:114px}.brand{display:flex;align-items:center;gap:14px;font-size:1.1rem;line-height:1.2;font-weight:700}.brand small{display:block;font-size:.72rem;letter-spacing:.24em;margin-top:7px}.brand-mark{display:flex;align-items:center;justify-content:center;gap:1px;border:2px solid var(--gold);background:var(--navy);color:white;width:61px;height:61px;font-size:1.65rem;flex-shrink:0}.brand-mark span{font-family:Georgia,serif;color:var(--gold);font-size:1.1rem}.header nav{display:flex;gap:28px;font-size:.9rem}.header nav a:hover,.text-link:hover{color:var(--blue);text-decoration:underline}.header-call{font-weight:700;font-size:.95rem;white-space:nowrap}.header-call span{color:var(--blue);margin-left:12px}.hero{display:grid;grid-template-columns:1.12fr 1fr;background:var(--navy);color:white;width:min(1392px,calc(100% - 48px));overflow:hidden}.hero-copy{padding:65px 58px 35px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.15em;color:var(--blue);margin-bottom:22px}.hero .eyebrow{color:var(--gold)}.intro{font-size:1.125rem;max-width:450px;color:#d8e2ed;line-height:1.7}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:14px 22px;font-weight:700;font-size:.9rem;border:0;cursor:pointer;transition:background .2s}.button.gold{background:var(--gold);color:var(--navy)}.button.gold:hover{background:#f6d697}.button.blue{background:var(--blue);color:white}.button.blue:hover{background:var(--navy)}.text-link{font-weight:700;text-decoration:underline;text-underline-offset:5px}.hero .text-link:hover{color:var(--gold)}.response{font-size:.8rem;color:#c7d6e5;margin-top:16px}.hero-foot{border-top:1px solid #42607e;margin-top:46px;padding-top:25px;display:flex;gap:28px;font-size:.7rem;letter-spacing:.15em;color:#c8d7e7}.hero-image{position:relative;min-height:570px}.hero-image img{width:100%;height:100%;position:absolute;inset:0;object-position:center 55%}.hero-image:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#102033bd)}.hero-image figcaption{position:absolute;z-index:1;bottom:26px;left:30px;right:24px;font-size:.9rem}.hero-image figcaption span{display:block;font-size:.65rem;letter-spacing:.13em;margin-bottom:5px;color:#f5dcaa}.section{padding-block:96px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:340px;color:var(--muted);margin-bottom:3px}.services{display:grid;grid-template-columns:1fr 1.15fr;gap:64px}.featured-service{background:var(--blue);color:white;padding:38px 42px;border-top:5px solid var(--gold);display:flex;flex-direction:column}.number{font-size:.7rem;letter-spacing:.13em;color:#cfdded;margin-bottom:32px}.featured-service h3{font-size:2.1rem;line-height:1.17}.featured-service p{color:#dce5ef;max-width:380px}.featured-service a{margin-top:auto;padding-top:28px;font-size:.9rem;font-weight:700;color:var(--gold)}.service-list article{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid var(--line)}.service-list article:first-child{padding-top:6px}.service-list article>span{font-size:.8rem;color:#6e8296;padding-top:3px}.service-list p{margin:0;color:var(--muted)}.work-section{background:var(--paper)}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comparison figure{position:relative}.comparison img{width:100%;aspect-ratio:4/3;height:auto}.comparison figcaption{position:absolute;top:18px;left:18px;background:white;padding:7px 12px;font-size:.7rem;font-weight:700;letter-spacing:.08em}.comparison figure:last-child figcaption{background:var(--navy);color:white}.project-caption{display:grid;grid-template-columns:1fr 1.4fr;gap:32px;padding:28px 0 38px}.project-caption p{margin:0;color:var(--muted)}.project-caption h3{font-size:1.8rem}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.gallery img{width:100%;height:325px;object-position:center}.gallery figcaption{padding-top:20px}.gallery h3{font-size:1.3rem}.gallery p{font-size:.95rem;color:var(--muted)}.latest{border-block:1px solid #cbd4dd;margin-top:50px;padding:34px 0;display:flex;align-items:center;justify-content:space-between;gap:35px}.latest .eyebrow{margin-bottom:12px}.latest p:last-child{margin:0;color:var(--muted);max-width:520px}.coming{display:inline-block;border:1px solid #cad3dc;padding:12px 18px;color:var(--muted);font-size:.875rem}.about{display:grid;grid-template-columns:1fr 1.5fr;gap:100px;align-items:center}.experience{border-left:5px solid var(--gold);padding:10px 0 10px 36px}.experience strong{display:block;font-size:8rem;line-height:1;color:var(--blue);letter-spacing:-.06em}.experience strong span{display:block;font-size:.7rem;letter-spacing:.13em;margin-top:15px}.experience p{margin-top:32px;margin-bottom:0;font-size:1.25rem;line-height:1.4}.about>div:last-child>p:not(.eyebrow){color:var(--muted)}.area{background:var(--navy);color:white}.area-inner{padding-block:65px;display:grid;grid-template-columns:1.2fr 1fr;gap:75px}.area .eyebrow{color:var(--gold)}.area h2{font-size:2.3rem;margin-bottom:0}.area p{color:#e0e8f1}.area .muted{color:#becddd;font-size:.9rem;margin-bottom:0}.estimate{display:grid;grid-template-columns:.85fr 1.25fr;gap:85px}.estimate>div>p:not(.eyebrow){color:var(--muted);max-width:350px}.contact-links{display:flex;flex-direction:column;gap:12px;margin-top:32px;font-weight:700;color:var(--blue);overflow-wrap:anywhere}.contact-links a:hover{text-decoration:underline}.form-note{padding:12px 16px;background:#eef2f6;font-size:.85rem;margin-bottom:25px;color:#435466}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{font-size:.85rem;font-weight:700}.full{grid-column:1/-1}input:not([type=checkbox]),select,textarea{display:block;width:100%;min-width:0;background:white;border:1px solid #b8c3cd;border-radius:0;padding:12px 10px;color:var(--ink);margin-top:7px;font-weight:400;font-size:1rem}textarea{resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue);flex-shrink:0;margin-top:4px}.consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;font-size:.85rem;color:var(--muted)}.privacy-note{font-size:.8rem;color:var(--muted);margin:15px 0 0}.privacy-note a{text-decoration:underline}.form-status{font-size:.9rem;margin:15px 0 0}.form-status:empty{display:none}footer{background:#111e2b;color:#dbe4ec}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:45px}.footer-top p{font-size:.85rem;margin:0;color:#aab8c5}.footer-top>a:last-child{white-space:nowrap;font-size:.9rem}.footer-bottom{border-top:1px solid #33414f;padding-block:25px;display:flex;justify-content:space-between;gap:35px;font-size:.75rem;color:#aab8c5}details{max-width:550px}summary{cursor:pointer}details p{padding-top:20px;line-height:1.6}.skip{position:absolute;z-index:10;left:20px;top:-100px;background:white;padding:15px}.skip:focus{top:10px}@media(min-width:1600px){.hero-copy{padding:75px}}@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero{width:calc(100% - 32px)}.header nav{gap:18px}.header-call{display:none}.hero-copy{padding:45px 32px 30px}.hero-image{min-height:540px}.services{gap:35px}.section{padding-block:72px}.about,.estimate{gap:45px}.gallery img{height:270px}.footer-top p{display:none}.area-inner{gap:35px}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.draft{font-size:.65rem;padding:8px 16px}.draft span{display:block;margin:2px 0 0;font-size:.7rem}.header{min-height:95px;gap:15px}.brand{font-size:.9rem;gap:10px}.brand-mark{width:48px;height:48px;font-size:1.35rem}.brand small{font-size:.6rem}.header nav{gap:0}.header nav a{display:none}.header nav a[href='#work']{display:block;font-size:.85rem}.hero{grid-template-columns:1fr;width:100%;}.hero-copy{padding:44px 24px 28px}h1{font-size:3.75rem}.intro{font-size:1rem}.hero-foot{margin-top:30px}.hero-image{min-height:360px}.hero-image img{object-position:center 56%}.hero-image figcaption{left:24px}.section{padding-block:58px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin:24px 0 0}.services,.about,.estimate,.area-inner{grid-template-columns:1fr;gap:32px}.featured-service{padding:28px}.featured-service h3{font-size:1.95rem}.comparison{gap:7px}.comparison img{aspect-ratio:3/4}.comparison figcaption{top:9px;left:9px;font-size:.6rem;letter-spacing:0;padding:5px 7px}.project-caption{grid-template-columns:1fr;gap:5px;padding-top:24px}.gallery{grid-template-columns:1fr;gap:24px}.gallery img{height:340px}.gallery figure:first-child img{object-position:center 65%}.latest{display:block;margin-top:28px;padding-block:28px}.coming{margin-top:24px}.experience strong{font-size:6rem}.experience p{margin-top:20px}.about{gap:40px}.area-inner{padding-block:48px}.area h2{font-size:2.1rem}.form-grid{gap:18px;grid-template-columns:1fr}.full{grid-column:auto}.footer-top{align-items:flex-start;flex-direction:column;gap:24px;padding-block:35px}.footer-bottom{flex-direction:column;gap:15px}.actions{gap:22px}.hero .button{gap:16px}.estimate .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Approved hammer badge identity */
.header{padding-block:14px;min-height:170px}.brand .badge-logo{width:320px;height:auto;object-fit:contain}.footer-top .brand{padding:12px;background:#000}.footer-top .badge-logo{width:300px}.header nav{flex-shrink:0}@media(max-width:1050px){.header .badge-logo{width:280px}}@media(max-width:700px){.header{min-height:0;padding-block:16px;gap:18px;flex-wrap:wrap}.header .brand{flex:1;min-width:0}.header .badge-logo{width:min(100%,280px)}.header nav{margin-left:auto}.footer-top .brand{max-width:100%}.footer-top .badge-logo{width:280px;max-width:100%}}
.round-two-gallery{margin-top:65px;padding-top:55px;border-top:1px solid #cbd4dd}.project-gallery{row-gap:35px}.photo-open{position:relative;display:block;width:100%;aspect-ratio:1/1;background:#e1e6eb;border:0;padding:0;cursor:zoom-in;overflow:hidden}.gallery .photo-open img{width:100%;height:100%;object-fit:contain}.sideways-photo{transform:rotate(-90deg)}.photo-enlarge{position:absolute;bottom:12px;right:12px;background:#102b4b;color:white;padding:6px 10px;font-size:.8rem}.photo-status{display:block;color:#536170;font-size:.8rem;margin-bottom:8px}.project-gallery h3{line-height:1.25}#photo-dialog{border:0;background:#fff;color:#18232e;padding:22px;width:min(1100px,94vw);max-height:94vh;overflow:auto}#photo-dialog::backdrop{background:#081828de}#photo-close{display:block;margin:0 0 16px auto;padding:10px 18px;background:#153d68;color:white;border:0;cursor:pointer}.photo-stage{height:min(65vh,720px);display:flex;align-items:center;justify-content:center;overflow:hidden;background:#eef1f4}#photo-large{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.rotated .photo-stage{height:min(65vh,75vw)}.rotated #photo-large{width:min(65vh,75vw);height:min(65vh,75vw);transform:rotate(-90deg)}#photo-caption{margin:18px 0 0;line-height:1.5}@media(max-width:700px){.round-two-gallery{margin-top:35px;padding-top:35px}#photo-dialog{padding:14px}.photo-stage{height:58vh}}

.area-heading{padding-top:65px}.area-heading h2{margin-bottom:22px}.area-regions{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-top:18px}.area-regions article{padding:30px;border:1px solid #54708d}.area-regions h3{font-size:1.6rem;color:white}.area-regions h4{font-size:.9rem;color:var(--gold);margin:25px 0 8px}.area-regions p{line-height:1.9}.area-note{padding-top:25px;padding-bottom:45px;color:#c9d6e4}.services{align-items:start}@media(max-width:700px){.area-regions{grid-template-columns:1fr}.area-regions article{padding:24px}.area-heading{padding-top:48px}}
