:root{--ink:#181a1c;--coal:#242628;--red:#b50e16;--deepred:#7d1016;--paper:#f5f2ec;--muted:#6b6b6b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-family:'DM Sans',sans-serif;color:var(--ink)}a{text-decoration:none;color:inherit}button{font:inherit}img{max-width:100%}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;z-index:99;background:white}.topbar{height:33px;background:#181a1c;color:#e6e2dc;display:flex;justify-content:space-between;align-items:center;padding:0 5%;font-size:10px;font-weight:700;letter-spacing:1.5px}.topbar b{color:#c5262d}.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;background:rgba(250,249,246,.98);z-index:50;border-bottom:1px solid #ddd9d1;box-shadow:0 5px 25px #00000009}.brand{height:80px;width:118px;display:flex;align-items:center}.brand img{width:100%;height:76px;object-fit:contain}.site-header nav{display:flex;gap:35px;align-items:center}.site-header nav a{font-size:12px;font-weight:700;transition:color .2s}.site-header nav a:hover{color:var(--red)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border-radius:12px;padding:18px 23px;font-weight:800;letter-spacing:1px;font-size:11px;transition:transform .2s,background .2s,box-shadow .2s}.header-cta{background:var(--ink);color:white}.header-cta:hover,.btn:hover{transform:translateY(-3px);box-shadow:0 12px 24px #0003}.menu-toggle{display:none}.social-rail{position:fixed;right:0;top:35%;z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.social-rail a{height:47px;width:51px;display:flex;align-items:center;overflow:hidden;background:#fff;box-shadow:0 5px 20px #0003;border-radius:12px 0 0 12px;transition:width .35s,background .25s}.social-rail a:hover,.social-rail a:focus{width:208px;background:#fff}.social-icon{width:51px;min-width:51px;display:flex;justify-content:center;align-items:center}.social-icon img{width:31px;height:31px;object-fit:contain}.social-name{font-size:12px;font-weight:800;white-space:nowrap;padding-left:7px}.ig-icon{font-size:33px;color:#b30c4b}.hero{height:min(790px,calc(100vh - 125px));min-height:650px;position:relative;overflow:hidden;color:white;background:#151515}.hero-image{position:absolute;inset:0;background-image:url('/assets/stone-1.webp');background-size:cover;background-position:center 43%;animation:heroPan 14s ease-out both}@keyframes heroPan{from{transform:scale(1)}to{transform:scale(1.075)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,13,.98) 0%,rgba(13,14,15,.91) 29%,rgba(14,15,16,.51) 58%,rgba(12,12,12,.1) 100%),linear-gradient(0deg,#0b0b0b7a,transparent 50%)}.hero-content{position:absolute;left:8%;top:11%;width:min(850px,80%)}.hero-kicker{font-size:11px;letter-spacing:2.5px;font-weight:700;color:#ddd;display:flex;align-items:center;gap:15px}.hero-kicker span{height:2px;width:36px;background:#e32a30}.hero-mark{font-family:'Barlow Condensed',sans-serif;font-size:27px;font-weight:900;letter-spacing:2px;margin-top:46px}.hero-mark span{color:#e8e8e8;font-size:16px;letter-spacing:5px}.hero h1{font-family:'Barlow Condensed',sans-serif;font-size:clamp(96px,11vw,174px);line-height:.75;font-weight:900;letter-spacing:-2px;margin:23px 0 30px;text-shadow:0 3px 20px #0004}.hero h1 em{font-style:normal;color:#fff;-webkit-text-stroke:1px #fff}.hero-categories{font-family:'Barlow Condensed',sans-serif;font-size:27px;font-weight:700;letter-spacing:1px;margin:0}.hero-categories b{color:#e22b32;margin:0 8px;font-size:13px}.hero-sub{border-top:2px solid #b8252b;padding-top:16px;margin-top:19px;font-size:17px;line-height:1.6;color:#e8e8e8;font-style:italic;max-width:520px}.hero-actions{display:flex;gap:13px;margin-top:30px;flex-wrap:wrap}.btn-red{background:#b20d15;color:white}.btn-outline{border:1px solid #fff9;color:white}.btn-light{background:white;color:#161819}.hero-side{position:absolute;bottom:30px;right:8%;font-size:10px;letter-spacing:2px;color:#e6e6e6}.trustbar{display:grid;grid-template-columns:repeat(4,1fr);background:#1b1d1f;color:white;padding:36px 8%;gap:25px}.trustbar>div{border-right:1px solid #ffffff32;padding-left:22px}.trustbar>div:last-child{border:0}.trustbar strong{font:800 48px 'Barlow Condensed',sans-serif;display:block}.trustbar strong span{color:#e12730}.trustbar small{font-size:10px;letter-spacing:1.8px;color:#c7c7c7}.section{padding:110px 8%}.intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:9%}.intro-photo{height:560px;position:relative;overflow:hidden;border-radius:16px;box-shadow:0 22px 50px #0002}.intro-photo img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;bottom:0;left:0;right:0;background:#8e1118ee;color:white;padding:23px;font:700 19px 'Barlow Condensed',sans-serif;letter-spacing:2px}.eyebrow{font-size:11px;color:#b51b23;font-weight:800;letter-spacing:2.6px;margin-bottom:22px}.section h2,.statement h2,.contact-band h2{font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:-.5px;line-height:.99;font-size:clamp(52px,5vw,88px);margin:0 0 25px}.section h2 span,.contact-band h2 em{color:#af1119;font-style:normal}.intro-copy .lead,.detail .lead{font-size:22px;font-weight:700;line-height:1.5}.intro-copy p,.detail p,.location p{line-height:1.9;color:#5d6061;font-size:15px}.text-link{display:inline-block;border-bottom:2px solid #a71920;padding:15px 0;font-size:12px;font-weight:800;letter-spacing:1px;margin-top:15px}.services-section{background:#eae7e1;background-image:repeating-linear-gradient(130deg,transparent 0,transparent 70px,#22222205 71px,#22222205 72px)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-head h2{margin:0}.section-head>p{max-width:350px;line-height:1.8;font-size:14px;color:#666}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.service-card{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px #00000013;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}.service-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0003}.service-image{height:235px;overflow:hidden;background:#252525}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.07)}.service-bottom{display:flex;align-items:center;gap:10px;padding:20px 16px 4px}.service-number{font-size:10px;color:#aa131b;font-weight:800}.service-bottom h3{font:800 23px/1 'Barlow Condensed',sans-serif;flex:1;margin:0}.arrow-circle{background:#b5121b;color:white;border-radius:50%;width:30px;height:30px;display:grid;place-items:center}.service-card>p{font-size:11px;color:#777;padding:0 17px 18px;margin:8px 0 0}.statement{background:#17191b;color:white;text-align:center;padding:100px 20px;background-image:linear-gradient(#121416dd,#121416ed),url('/assets/brick-1.webp');background-position:center;background-size:cover}.statement>span{font-size:12px;letter-spacing:3px;color:#e8b9b9}.statement h2{margin:22px 0 30px}.statement h2 em{font-style:normal;color:#e3343b}.portfolio{background:#faf8f4}.portfolio-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:240px 240px;gap:15px}.portfolio-grid>a{position:relative;overflow:hidden;border-radius:14px;background:#333}.portfolio-grid .portfolio-main{grid-row:span 2}.portfolio-grid img{height:100%;width:100%;object-fit:cover;transition:transform .45s}.portfolio-grid a:hover img{transform:scale(1.06)}.portfolio-grid a>span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);color:white;padding:35px 20px 20px;display:flex;justify-content:space-between;font:800 24px 'Barlow Condensed',sans-serif}.portfolio-grid b{font:700 12px 'DM Sans',sans-serif}.portfolio-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.portfolio-links a,.related-links a{border:1px solid #d0cac1;border-radius:30px;padding:12px 18px;font-size:12px;font-weight:700;transition:background .2s}.portfolio-links a:hover,.related-links a:hover{background:#222;color:white}.location{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.location-graphic{height:420px;border-radius:18px;background:#252729;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;color:white}.location-graphic:before,.location-graphic:after{content:'';position:absolute;width:350px;height:350px;border:1px solid #b8222b88;border-radius:50%}.location-graphic:after{width:520px;height:520px}.location-graphic strong{font:800 55px 'Barlow Condensed',sans-serif;z-index:1}.location-graphic span{position:absolute;top:30px;left:30px;font-size:10px;letter-spacing:2px}.location-graphic small{letter-spacing:3px;z-index:1}.contact-band{padding:95px 8%;display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#b00e17;color:white}.contact-band h2 em{color:#fff}.contact-band>div>span{font-size:12px;letter-spacing:3px}.contact-band>div:nth-child(2){display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.contact-band>div:nth-child(2)>a:first-child{font:800 49px 'Barlow Condensed',sans-serif}.contact-band p{font-size:12px;letter-spacing:2px}.footer{background:#191b1d;color:#e9e9e9;padding:65px 8% 25px}.footer-top{display:grid;grid-template-columns:1.4fr .8fr 1.2fr .8fr;gap:38px}.footer-brand img{width:135px;height:115px;object-fit:contain;background:#fff;border-radius:12px;padding:7px}.footer p{font-size:13px;line-height:1.8;color:#bcbcbc}.footer h4{font:800 17px 'Barlow Condensed',sans-serif;letter-spacing:2px;margin:0 0 25px}.footer-top>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer a{font-size:12px;color:#dedede;overflow-wrap:anywhere}.footer a:hover{color:#ff5d61}.small-red{color:#ef5a5d;font-size:11px;font-weight:700;letter-spacing:1px}.footer-bottom{border-top:1px solid #ffffff30;display:flex;justify-content:space-between;gap:20px;margin-top:55px;padding-top:25px;font-size:10px;letter-spacing:1.5px;color:#bbb}.page-hero{min-height:540px;position:relative;background:#161718;color:white;display:flex;align-items:end;overflow:hidden}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080a0ae8,#080a0a44),linear-gradient(0deg,#000b,transparent)}.page-hero-text{position:relative;padding:100px 8% 75px;max-width:950px}.page-hero h1,.simple-hero h1{font:900 clamp(65px,8vw,115px)/.95 'Barlow Condensed',sans-serif;margin:15px 0 20px}.page-hero p{max-width:620px;line-height:1.8;font-size:17px;color:#eee}.page-hero .btn{margin-top:15px}.detail{display:grid;grid-template-columns:1fr 1fr;gap:8%}.service-album{background:#ebe8e1}.album-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:300px 260px;gap:14px}.gallery-photo{border:0;padding:0;border-radius:14px;overflow:hidden;position:relative;cursor:zoom-in;grid-column:span 2;background:#333}.gallery-photo:first-child,.gallery-photo:nth-child(2){grid-column:span 3}.gallery-photo img{height:100%;width:100%;object-fit:cover;transition:transform .35s}.gallery-photo:hover img{transform:scale(1.07)}.gallery-photo span{position:absolute;bottom:0;left:0;right:0;color:white;background:linear-gradient(transparent,#000b);text-align:left;padding:28px 16px 15px;font-size:11px;font-weight:700}.photo-dialog{border:0;border-radius:14px;padding:14px;background:#1b1b1b;max-width:95vw;max-height:95vh}.photo-dialog::backdrop{background:#000d}.photo-dialog img{display:block;max-height:83vh;max-width:88vw;object-fit:contain}.dialog-close{position:absolute;top:15px;right:15px;background:white;border:0;border-radius:50%;height:42px;width:42px;font-size:25px;cursor:pointer}.related-links{display:flex;flex-wrap:wrap;gap:10px}.simple-hero{background:#242629;color:white;padding:100px 8% 90px;background-image:linear-gradient(#151719e8,#151719e8),url('/assets/masonry-1.webp');background-size:cover;background-position:center}.simple-hero h1{max-width:900px}.simple-hero h1 span{color:#f05459}.simple-hero p{font-size:16px}.faq details{background:white;margin-bottom:12px;border-radius:12px;padding:23px 27px}.faq summary{cursor:pointer;font-weight:800;display:flex;justify-content:space-between;gap:15px}.faq summary span{color:#b71920;font-size:20px}.faq details p{line-height:1.9;color:#555}.area-content>p,.prose p{max-width:850px;line-height:1.9;color:#555}.area-tags{display:flex;flex-wrap:wrap;gap:12px;margin:35px 0}.area-tags span{padding:13px 18px;border:1px solid #ccc;border-radius:12px;font-weight:700;font-size:12px}@media(max-width:1100px){.site-header nav{gap:18px}.service-grid{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:130px}}@media(max-width:720px){.topbar{justify-content:center}.topbar span:last-child{display:none}.site-header{height:78px;padding:0 4%}.brand{width:94px;height:72px}.brand img{height:70px}.menu-toggle{display:block;margin-left:auto;margin-right:12px;background:none;border:0;font-size:26px}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#faf9f6;padding:25px;flex-direction:column;align-items:flex-start;box-shadow:0 12px 20px #0002}.site-header nav.open{display:flex}.header-cta{padding:12px 13px;font-size:9px;gap:5px}.social-rail{top:auto;bottom:10px;right:8px}.social-rail a{height:40px;width:42px;border-radius:10px}.social-icon{width:42px;min-width:42px}.social-icon img{width:27px;height:27px}.hero{height:730px;min-height:0}.hero-content{left:6%;right:6%;width:auto;top:11%}.hero h1{font-size:clamp(86px,18vw,135px)}.hero-mark{margin-top:35px}.hero-categories{font-size:20px}.hero-sub{font-size:15px}.hero-side{right:6%}.trustbar{grid-template-columns:repeat(2,1fr);padding:30px 5%}.trustbar strong{font-size:38px}.section{padding:75px 6%}.intro,.location,.detail,.contact-band{grid-template-columns:1fr}.intro-photo{height:380px}.section-head{display:block}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-image{height:165px}.service-bottom h3{font-size:20px}.service-bottom{padding:15px 10px 4px}.service-card>p{font-size:10px;padding:0 10px 15px}.portfolio-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 180px}.portfolio-grid .portfolio-main{grid-column:span 2;grid-row:span 1}.portfolio-grid a>span{font-size:17px}.footer-top{grid-template-columns:1fr 1fr}.footer-bottom{flex-wrap:wrap}.album-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:none}.gallery-photo,.gallery-photo:first-child,.gallery-photo:nth-child(2){grid-column:span 1;height:230px}.gallery-photo:first-child{grid-column:span 2;height:300px}.page-hero{min-height:530px}.page-hero-text{padding:80px 6% 50px}.contact-band>div:nth-child(2)>a:first-child{font-size:40px}}@media(max-width:440px){.service-grid{grid-template-columns:1fr}.service-image{height:260px}.footer-top{grid-template-columns:1fr}.hero h1{font-size:87px}.hero-categories{font-size:17px}.hero-actions .btn{padding:15px 12px}.gallery-photo,.gallery-photo:first-child,.gallery-photo:nth-child(2){grid-column:span 2;height:250px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
