:root{--red:#b12029;--ink:#323232;--paper:#fcfcfc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Lato,Arial,sans-serif}h1,h2,h3,nav{font-family:Montserrat,Arial,sans-serif;font-weight:400;line-height:1.25}h1{font-size:clamp(32px,4vw,51px)}h2{font-size:clamp(25px,3vw,38px)}a{color:inherit;text-underline-offset:5px}header{max-width:1100px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:18px 30px;gap:30px}header img{object-fit:contain}nav{display:flex;gap:28px}nav a{text-decoration:none;border-bottom:2px solid transparent;padding:12px 0}nav a:hover,nav a[aria-current]{color:var(--red);border-color:var(--red)}button,.button{font:inherit;cursor:pointer}.button{display:inline-block;background:var(--red);color:white;padding:14px 28px;margin-top:18px;text-decoration:none;border:1px solid var(--red);transition:background .2s,transform .2s}.button:hover{background:#8e1921;transform:translateY(-2px)}.hero{height:min(70vw,680px);overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover}.estimate{background:var(--red);color:white;display:flex;align-items:center;justify-content:center;gap:90px;padding:65px 6vw}.estimate h2{font-weight:700;font-family:Helvetica,Arial,sans-serif}.estimate a:not(.button),footer a{display:block}.estimate .button{background:white;color:var(--red);border-color:white}.estimate img{object-fit:contain;max-width:32%;height:auto}.note{font-size:13px}.content,.contact{max-width:1040px;margin:auto;padding:70px 30px}.content p{max-width:780px}.content img{max-width:100%;height:auto}.content h2{margin-top:50px;color:var(--red)}.content a{color:var(--red)}.content iframe{max-width:100%}.posts{display:grid;grid-template-columns:1fr 1fr;gap:30px}.posts article{padding:25px 0;border-bottom:1px solid #ddd}.posts h2{font-size:25px;margin-top:0}.photo{padding:0;border:0;background:none;text-align:left;width:100%;position:relative;overflow:hidden}.photo img{width:100%;max-height:580px;object-fit:cover;transition:transform .5s}.photo:hover img{transform:scale(1.025)}.photo span{position:absolute;bottom:20px;right:20px;background:white;padding:12px 20px}footer{background:#323232;color:white;display:flex;justify-content:space-around;gap:50px;padding:50px 30px;font-size:14px}footer h2{font-size:23px}footer a{margin:5px 0}#menu{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:10px;z-index:10}:focus-visible{outline:3px solid #1885bc;outline-offset:5px}dialog{border:0;max-width:94vw;padding:15px;background:#fcfcfc}dialog::backdrop{background:#000c}dialog img{display:block;max-width:86vw;max-height:72vh;object-fit:contain}dialog div{display:flex;justify-content:space-between;gap:20px;margin-top:10px}dialog button{background:var(--red);color:white;border:0;padding:10px 16px}#close{float:right;margin-bottom:10px}.contact a{display:block}.contact .button{display:inline-block}@media(prefers-reduced-motion:no-preference){.content,.estimate{animation:arrive .55s ease-out}@keyframes arrive{from{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:none}}}@media(max-width:700px){header{padding:12px 20px;flex-wrap:wrap}header img{width:150px;height:82px}#menu{display:block;background:none;border:1px solid #aaa;padding:8px 14px}nav{display:none;width:100%;flex-wrap:wrap;gap:12px 24px}nav.open{display:flex}.hero{height:420px}.hero img{object-position:55% center}.estimate{padding:40px 24px;gap:20px;align-items:flex-end}.estimate img{max-width:28%}.estimate h2{font-size:25px}.estimate a{font-size:15px}.content,.contact{padding:40px 24px}.posts{grid-template-columns:1fr}footer{flex-direction:column;gap:15px}.photo span{bottom:10px;right:10px;padding:8px 12px}.content h1{overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gallery-grid img{height:280px;object-fit:cover;display:block}.gallery-grid .photo span{font-size:14px}@media(max-width:700px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:260px}}
