:root{--primary: #c1531e;--secondary: #285c74;--ink: #211f1c;--panel-dark: #2b2825;--text: #4a463f;--text-soft: #746e63;--bg: #f5f3ee;--bg-alt: #eae6dc;--line: #ddd7c8;--card-shadow: 0 10px 26px rgba(33, 31, 28, .12);--font-body: "IBM Plex Sans", Helvetica, Arial, sans-serif;--font-display: "Big Shoulders Display", Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;--container: 1160px;--cut: 20px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--secondary);text-decoration:none}h1,h2,h3,h4,h5{font-family:var(--font-display);color:var(--ink);font-weight:700;line-height:1.05;letter-spacing:.01em}.container{max-width:var(--container);margin:0 auto;padding:0 20px}.section{padding:72px 0}.btn{display:inline-block;background:var(--primary);color:#fff;font-family:var(--font-mono);font-weight:600;font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;padding:14px 28px;border:none;cursor:pointer;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);transition:background .25s ease,transform .2s ease}.btn:hover{background:#a5451a;transform:translateY(-1px)}.btn.outline{background:transparent;border:1.5px solid currentColor;color:var(--ink)}.btn.outline:hover{background:var(--ink);color:#fff}.btn.on-dark{color:var(--bg);border-color:#f5f3ee99}.btn.on-dark:hover{background:#f5f3ee1f;color:#fff}.eyebrow{color:var(--primary);font-family:var(--font-mono);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}.cut-corner{clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,0 100%)}.cut-corner.cut-sm{--cut: 12px}.cut-corner.cut-lg{--cut: 30px}.site-header{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;max-width:var(--container);margin:0 auto}.header-logo img{height:56px;width:auto}.main-nav{display:flex;align-items:center;gap:4px}.main-nav>ul{display:flex;list-style:none;align-items:center}.main-nav li{position:relative}.main-nav a,.nav-toplink{display:inline-flex;align-items:center;gap:5px;padding:10px 14px;color:var(--ink);font-family:var(--font-mono);font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:none;border:none;cursor:pointer;transition:color .2s ease}.main-nav a:hover,.main-nav a.active,.nav-toplink:hover{color:var(--primary)}.caret{border:solid currentColor;border-width:0 1.5px 1.5px 0;display:inline-block;padding:2.5px;transform:rotate(45deg) translateY(-2px)}.dropdown{position:absolute;top:100%;left:0;min-width:190px;background:var(--bg);box-shadow:0 6px 18px #211f1c29;border-top:2px solid var(--primary);list-style:none;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .2s ease}.dropdown.open{opacity:1;visibility:visible;transform:translateY(0)}.dropdown a{display:block;padding:11px 16px;width:100%}.dropdown li+li{border-top:1px solid var(--line)}.nav-call-item{display:flex;align-items:center;margin-left:6px}.main-nav .call-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:var(--ink);color:var(--bg)!important;font-family:var(--font-mono);font-size:13px;font-weight:600;letter-spacing:.04em;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);transition:background .2s ease}.main-nav .call-btn:hover{background:var(--primary)}.call-btn svg{width:15px;height:15px;fill:currentColor}.fb-link svg{display:block;width:20px;height:20px;fill:var(--ink);transition:fill .2s ease}.fb-link:hover svg{fill:var(--primary)}.hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px}.hamburger span{display:block;width:26px;height:3px;background:var(--ink);margin:5px 0;transition:transform .25s ease,opacity .25s ease}.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}@media (max-width: 900px){.hamburger{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg);box-shadow:0 14px 22px #211f1c29}.main-nav.open{display:block}.main-nav>ul{flex-direction:column;align-items:stretch;padding:8px 0}.main-nav a,.nav-toplink{width:100%;padding:13px 24px;justify-content:space-between}.dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border-top:none;display:none;background:var(--bg-alt)}.dropdown.open{display:block}.dropdown a{padding-left:40px}.fb-link{display:inline-block;padding:12px 24px}.nav-call-item{margin-left:0;padding:14px 24px 18px}.main-nav .call-btn{width:100%;justify-content:center;padding:13px 16px}}.page-hero{position:relative;min-height:300px;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center}.page-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#14110e8c,#14110eb8)}.page-hero h1{position:relative;color:#fff;font-size:clamp(42px,6.5vw,62px);text-align:center;text-transform:uppercase;letter-spacing:.02em}.home-hero{position:relative;min-height:82vh;display:flex;align-items:center;background-size:cover;background-position:center 35%}.home-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#120f0ded,#120f0dad,#120f0d80)}.home-hero .container{position:relative}.home-hero .eyebrow{color:var(--primary);font-size:13.5px;text-shadow:0 2px 10px rgba(0,0,0,.7)}.home-hero h1{color:#fff;font-size:clamp(52px,9vw,108px);text-transform:uppercase;letter-spacing:.01em;max-width:16ch;text-shadow:0 6px 30px rgba(0,0,0,.5)}.home-hero p.sub{color:#f5f3eee0;font-size:18px;max-width:520px;margin:22px 0 32px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.spec-strip{background:var(--ink);border-bottom:3px solid var(--primary)}.spec-strip .container{display:flex;flex-wrap:wrap;gap:10px 36px;padding:18px 20px;justify-content:center}.spec-item{display:flex;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:#f5f3eee6}.spec-item strong{color:var(--primary);font-weight:600}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}.info-card{background:#fff;box-shadow:var(--card-shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease}.info-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px #211f1c29}.info-card img{width:100%;height:220px;object-fit:cover}.info-card .card-body{padding:26px 26px 30px;display:flex;flex-direction:column;flex:1}.info-card .eyebrow{font-size:11.5px}.info-card h2{font-size:26px;text-transform:uppercase;margin-bottom:10px}.info-card p{color:var(--text-soft);flex:1;margin-bottom:20px;font-size:15px}.info-card .btn{align-self:flex-start}.intro-card{max-width:880px;margin:0 auto;text-align:center;background:#fff;box-shadow:var(--card-shadow);padding:46px 42px}.intro-card h2{font-size:34px;text-transform:uppercase;margin-bottom:16px}.intro-card p{color:var(--text-soft);margin-bottom:22px;font-size:16.5px}.intro-card .btn{margin-top:8px}.split-hero{display:flex;min-height:58vh}.split-hero .split-content{flex:1;background:var(--bg-alt);display:flex;align-items:center;justify-content:center;padding:60px;text-align:left}.split-hero .split-content .inner{max-width:520px}.split-hero h2{font-size:36px;text-transform:uppercase;margin-bottom:14px}.split-hero p{color:var(--text)}.split-hero .split-image{width:34%;background-size:cover;background-position:center;flex-shrink:0}@media (max-width: 760px){.split-hero{flex-direction:column}.split-hero .split-image{width:100%;min-height:280px}.split-hero .split-content{padding:48px 24px}}.process-band{background:var(--ink)}.process-band .section-lead{text-align:center;max-width:640px;margin:0 auto 48px}.process-band .section-lead h2{color:#fff;font-size:clamp(30px,4vw,42px);text-transform:uppercase}.process-band .eyebrow{color:var(--primary)}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px}.step-card{background:var(--panel-dark);padding:40px 28px 32px;position:relative;border-top:3px solid var(--primary)}.step-card .step-num{font-family:var(--font-mono);font-size:13px;color:var(--primary);letter-spacing:.1em;margin-bottom:18px}.step-card .step-icon{width:56px;height:56px;background:#f5f3ee0f;border:1px solid rgba(245,243,238,.16);color:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:20px}.step-card .step-icon svg{width:26px;height:26px;fill:currentColor}.step-card h2{color:#fff;font-size:24px;text-transform:uppercase;margin-bottom:12px}.step-card p{color:#f5f3eeb8;font-size:15px}.cta-banner{position:relative;min-height:480px;background-size:cover;background-position:center;display:flex;align-items:stretch}.cta-banner .overlay-panel{width:50%;background:#120f0dcc;display:flex;align-items:center;padding:60px}.cta-banner.dense .overlay-panel{background:#120f0de0}.cta-banner .overlay-inner h2{color:#fff;font-size:36px;text-transform:uppercase;margin-bottom:18px}.cta-banner .overlay-inner p,.cta-banner .overlay-inner address{color:#f5f3eed1;font-style:normal;margin-bottom:24px;line-height:1.85}.cta-banner .overlay-inner u{text-underline-offset:3px;color:var(--primary);text-decoration-color:var(--primary)}.cta-banner .overlay-inner a:not(.btn){color:#fff}@media (max-width: 760px){.cta-banner .overlay-panel{width:100%;padding:48px 24px}}.reviews-heading{text-align:center}.reviews-heading h2{font-size:40px;text-transform:uppercase}.stars{color:var(--primary);font-size:26px;letter-spacing:4px;text-align:center;margin:12px 0 4px}.stars-caption{text-align:center;color:var(--text-soft);margin-bottom:36px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase}.carousel{position:relative}.carousel-track{display:grid;gap:26px}.review-card{background:#fff;box-shadow:var(--card-shadow);padding:0 24px 28px;text-align:left;border-top:3px solid var(--secondary)}.review-card:before{content:"";display:block;width:40px;height:24px;margin:22px 0 16px;background:var(--line);clip-path:polygon(0 0,60% 0,100% 100%,0 100%)}.review-card h3{font-size:19px;text-transform:uppercase;margin-bottom:10px}.review-card p{color:var(--text-soft);font-size:15px}.carousel-nav{display:flex;justify-content:center;gap:10px;margin-top:28px}.carousel-arrow{width:42px;height:42px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.carousel-arrow:hover{background:var(--ink);color:#fff}.carousel-dots{display:flex;justify-content:center;gap:10px;margin-top:18px}.carousel-dot{width:9px;height:9px;border-radius:50%;border:none;background:var(--line);cursor:pointer;padding:0}.carousel-dot.active{background:var(--primary)}.photo-track{display:grid;gap:18px}.photo-track img{width:100%;height:300px;object-fit:cover}.stone-band{position:relative;min-height:320px;background-size:cover;background-position:center;background-attachment:fixed}.stone-band:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#120f0d94}@media (max-width: 880px){.stone-band{background-attachment:scroll}}.proscons-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}@media (max-width: 760px){.proscons-grid{grid-template-columns:1fr}}.proscons-grid h2{font-size:32px;text-transform:uppercase;margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--line)}.pc-item{display:flex;gap:16px;margin-bottom:24px}.pc-num{flex-shrink:0;width:34px;height:34px;background:var(--primary);color:#fff;font-family:var(--font-mono);font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center}.pc-item h4{font-size:17px;text-transform:uppercase;margin-bottom:6px}.pc-item p{color:var(--text-soft);font-size:15px}.stone-intro h2{font-size:34px;text-transform:uppercase;margin-bottom:22px;line-height:1.25}.stone-intro p{color:var(--text-soft);font-size:16.5px;margin-bottom:16px}.gallery-grid{columns:3 300px;column-gap:14px}.gallery-grid button{display:block;width:100%;margin-bottom:14px;padding:0;border:none;background:none;cursor:pointer;overflow:hidden}.gallery-grid img{width:100%;transition:transform .3s ease,filter .3s ease}.gallery-grid button:hover img{transform:scale(1.03);filter:brightness(1.05)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0c0af0;z-index:300;display:flex;align-items:center;justify-content:center}.lightbox img{max-width:92vw;max-height:88vh;object-fit:contain}.lightbox button{position:absolute;background:none;border:none;color:#fff;font-size:42px;cursor:pointer;line-height:1;padding:12px;opacity:.85}.lightbox button:hover{opacity:1}.lightbox .lb-close{top:14px;right:22px}.lightbox .lb-prev{left:12px;top:50%;transform:translateY(-50%)}.lightbox .lb-next{right:12px;top:50%;transform:translateY(-50%)}.supplier-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}@media (max-width: 760px){.supplier-grid{grid-template-columns:1fr}}.logo-card{display:flex;flex-direction:column;background:#fff;box-shadow:var(--card-shadow);overflow:hidden;color:inherit;transition:transform .25s ease,box-shadow .25s ease}.logo-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px #211f1c29}.logo-card .logo-top{background-size:cover;background-position:center;position:relative;min-height:150px;display:flex;align-items:center;justify-content:center}.logo-card .logo-top:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#f5f3eee0}.logo-card .logo-top img{position:relative;max-height:90px;max-width:65%;object-fit:contain}.logo-card .logo-body{padding:24px 28px 28px;border-top:3px solid var(--secondary)}.logo-card h3{font-size:21px;text-transform:uppercase;margin-bottom:10px}.logo-card p{color:var(--text-soft);font-size:15px}.about-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}@media (max-width: 760px){.about-split{grid-template-columns:1fr}}.about-split h2{font-size:34px;text-transform:uppercase;margin-bottom:18px}.about-split p{color:var(--text-soft);font-size:16.5px}.about-split img{box-shadow:var(--card-shadow)}.logo-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:32px;align-items:center;margin-top:40px}.logo-strip img{max-height:68px;margin:0 auto;object-fit:contain;filter:grayscale(30%);transition:filter .25s ease}.logo-strip img:hover{filter:grayscale(0%)}.section-heading-center{text-align:center}.section-heading-center h2{font-size:34px;text-transform:uppercase}.contact-intro{text-align:center;max-width:700px;margin:0 auto;background:#fff;box-shadow:var(--card-shadow);padding:38px}.contact-intro h2{font-size:30px;text-transform:uppercase;margin-bottom:10px}.contact-intro p{color:var(--text-soft)}.site-footer{background:var(--ink);color:#f5f3eeb8;padding:56px 0 0;margin-top:60px}.no-footer-gap .site-footer{margin-top:0}.footer-cols{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:40px}@media (max-width: 760px){.footer-cols{grid-template-columns:1fr}}.site-footer h5{color:#fff;font-family:var(--font-mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px}.site-footer p,.site-footer address{font-size:14.5px;font-style:normal;line-height:1.9}.site-footer a{color:#fff}.site-footer a:hover{color:var(--primary)}.footer-bottom{border-top:1px solid rgba(245,243,238,.14);margin-top:44px;padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.03em}.footer-bottom .fb-link svg{fill:#f5f3eeb8}.footer-bottom .fb-link:hover svg{fill:var(--primary)}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
