@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#181916;--ink2:#22231f;--paper:#f2eee6;--paper2:#e5ddd0;--warm:#c7a97c;--warm2:#e1c9a2;--muted:#77766e;--line:rgba(255,255,255,.16);--line-dark:rgba(24,25,22,.16);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--max:1320px;--pad:clamp(22px,5.2vw,82px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--warm2);color:var(--ink)}.wrap{width:min(var(--max),100% - 2*var(--pad));margin-inline:auto}.eyebrow{display:flex;align-items:center;gap:11px;color:#a58961;text-transform:uppercase;letter-spacing:.19em;font-size:10px;font-weight:700;line-height:1.5}.eyebrow:before{content:'';display:block;width:24px;height:1px;background:currentColor}.serif{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}.section{padding:clamp(68px,8vw,124px) 0}.section.dark{background:var(--ink);color:var(--paper)}.section.paper{background:var(--paper)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:clamp(28px,4vw,54px)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.02}h1{font-size:clamp(44px,7.1vw,100px);max-width:950px;margin-bottom:25px}h1 em,h2 em{font-weight:400;color:var(--warm2)}h2{font-size:clamp(36px,5vw,65px);margin-bottom:20px}h3{font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);line-height:1.15;margin-bottom:12px}.lead{font-size:clamp(16px,1.45vw,19px);line-height:1.65;max-width:680px;color:#d1cec6}.body-copy{color:var(--muted);max-width:670px}.body-copy p:last-child{margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:50px;padding:0 20px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:10px;transition:background .25s,border-color .25s,color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button.gold{background:var(--warm2);color:var(--ink)}.button.gold:hover{background:#f1debd}.button.outline{border-color:rgba(255,255,255,.45);color:var(--paper)}.button.outline:hover{border-color:var(--warm2);color:var(--warm2)}.button.dark-button{background:var(--ink);color:var(--paper)}.button.dark-button:hover{background:#30312a}.arrow{font-size:16px;line-height:1}.text-link{display:inline-flex;align-items:center;gap:15px;padding:8px 0;border-bottom:1px solid var(--warm);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.text-link span:last-child{font-size:16px;transition:transform .2s}.text-link:hover span:last-child{transform:translateX(4px)}
.announcement{height:29px;display:flex;align-items:center;justify-content:center;gap:12px;background:#10110f;color:#c5b18f;font-size:9px;letter-spacing:.18em;text-transform:uppercase}.announcement .dot{width:4px;height:4px;border-radius:50%;background:var(--warm)}.header{position:absolute;z-index:10;top:29px;left:0;right:0;height:82px;color:white;border-bottom:1px solid rgba(255,255,255,.16)}.header.sticky{position:fixed;top:0;background:rgba(22,23,20,.96);backdrop-filter:blur(14px);height:72px}.header-inner{width:min(1440px,100% - 2*var(--pad));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;min-width:140px}.brand-mark{font-family:var(--serif);font-size:33px;letter-spacing:-.1em;line-height:1;color:var(--warm2);font-weight:400}.brand-name{display:flex;flex-direction:column;font-family:var(--serif);font-size:17px;letter-spacing:.18em;line-height:1.05}.brand-name small{font-family:var(--sans);font-size:7px;letter-spacing:.21em;color:#b4b0a5;margin-top:5px}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,28px);margin-left:auto}.nav a{font-size:10px;color:#eeece6;letter-spacing:.07em;white-space:nowrap;transition:color .2s}.nav a:hover,.nav a.active{color:var(--warm2)}.head-right{display:flex;align-items:center;gap:19px;flex-shrink:0}.lang{border:0;background:transparent;color:#e8e6df;font-size:10px;letter-spacing:.14em;cursor:pointer;padding:8px 0;white-space:nowrap}.lang .on{color:var(--warm2)}.head-cta{font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:13px 15px;background:var(--warm2);color:var(--ink);white-space:nowrap}.menu-toggle{display:none;background:transparent;border:0;padding:10px;color:white}.menu-toggle i{display:block;height:1px;width:24px;background:currentColor;margin:5px 0}
.hero{min-height:min(820px,100svh);min-height:clamp(650px,94svh,900px);position:relative;display:flex;align-items:center;color:var(--paper);background:#292822;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,14,12,.89) 0%,rgba(15,16,14,.67) 34%,rgba(15,16,14,.12) 72%),linear-gradient(0deg,rgba(13,14,12,.55),transparent 36%)}.hero-content{position:relative;z-index:1;padding-top:100px}.hero .eyebrow{color:var(--warm2);margin-bottom:25px}.hero h1{max-width:800px}.hero .lead{max-width:620px;margin-bottom:32px}.hero-buttons{display:flex;gap:13px;flex-wrap:wrap}.hero-bottom{position:absolute;z-index:1;bottom:28px;left:0;right:0;display:flex;align-items:center;gap:17px;color:#c5bdaE;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.hero-bottom:before{content:'';width:42px;height:1px;background:var(--warm2)}.hero-index{margin-left:auto;color:var(--warm2)}.hero-index strong{font:400 30px var(--serif);margin-right:8px}
.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#11120f;color:var(--paper);padding:22px var(--pad);gap:15px}.trust-item{display:flex;align-items:center;gap:13px;padding-right:15px;border-right:1px solid rgba(255,255,255,.15)}.trust-item:last-child{border-right:0}.trust-icon{width:31px;height:31px;flex-shrink:0;color:var(--warm2)}.trust-item strong{display:block;font-size:10px;line-height:1.35;letter-spacing:.04em}.trust-item small{display:block;margin-top:4px;font-size:9px;line-height:1.45;color:#aaa99e}
.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,8vw,120px);align-items:start}.intro-left{padding-top:9px}.intro-left .eyebrow{margin-bottom:25px}.intro-left .side-note{font-size:11px;color:var(--muted);max-width:290px;margin-top:24px}.intro-copy h2{max-width:800px}.intro-copy .big-text{font:400 clamp(28px,3.5vw,46px)/1.22 var(--serif);letter-spacing:-.035em;margin-bottom:24px}.intro-copy .big-text em{color:#a3875e}.intro-copy p{color:var(--muted);max-width:700px}.intro-copy .text-link{margin-top:16px}
.material-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.material-card{position:relative;min-height:410px;overflow:hidden;color:white;background:var(--ink);isolation:isolate}.material-card img{position:absolute;inset:0;width:100%;height:100%;z-index:-2;transition:transform .6s cubic-bezier(.2,.7,.2,1);object-fit:cover}.material-card:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(9,10,9,.86),rgba(9,10,9,.02) 65%)}.material-card:hover img{transform:scale(1.045)}.material-content{position:absolute;left:25px;right:25px;bottom:24px}.material-content .number{font-size:9px;letter-spacing:.15em;color:var(--warm2);margin-bottom:13px;display:block}.material-content h3{font-size:32px;margin-bottom:8px}.material-content p{font-size:12px;color:#dad7d0;max-width:310px;margin-bottom:16px}.material-content .text-link{border-color:rgba(225,201,162,.75);font-size:9px}.material-intro{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}.material-intro p{max-width:450px;color:#aaa99f;font-size:13px;margin:0}.materials-line{margin-top:23px;font-size:10px;color:#a7a69b;letter-spacing:.07em}
.process-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(45px,7vw,100px);align-items:center}.process-image{position:relative;min-height:560px}.process-image img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.image-tag{position:absolute;left:18px;bottom:18px;background:rgba(19,20,17,.88);padding:10px 12px;color:#e2d9c7;letter-spacing:.14em;text-transform:uppercase;font-size:8px}.process-copy .eyebrow{margin-bottom:20px}.process-copy h2{max-width:670px}.process-copy>p{color:#b7b4aa;max-width:610px}.steps{margin:30px 0 34px;border-top:1px solid rgba(255,255,255,.18)}.step{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.18)}.step-num{font:400 22px var(--serif);color:var(--warm2)}.step strong{display:block;font-size:12px;font-weight:600;margin-bottom:4px}.step p{color:#aaa99f;font-size:11px;margin:0}
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.product-card{background:#e8e1d6}.product-image{height:235px;overflow:hidden;background:#d4cbbd}.product-image img{height:100%;width:100%;transition:transform .5s}.product-card:hover .product-image img{transform:scale(1.04)}.product-copy{padding:20px 19px 22px}.product-copy .number{font-size:9px;color:#98784d;letter-spacing:.15em}.product-copy h3{margin:8px 0;font-size:25px}.product-copy p{font-size:11px;color:#67665e;line-height:1.6;margin-bottom:0}.subtle-note{font-size:10px;color:var(--muted);margin-top:20px}
.logistics-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:var(--paper);color:var(--ink)}.logistics-copy{padding:clamp(35px,6vw,80px)}.logistics-copy .eyebrow{margin-bottom:24px}.logistics-copy h2{font-size:clamp(36px,4.5vw,58px)}.logistics-copy p{color:#66665d;max-width:560px}.logistics-image{min-height:510px;position:relative}.logistics-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.logistics-caption{position:absolute;bottom:0;left:0;right:0;padding:45px 30px 22px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:white;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.callout-line{display:flex;gap:12px;align-items:start;border-top:1px solid var(--line-dark);padding-top:18px;margin-top:27px;font-size:12px}.callout-line .pin{color:#9e7c50;font-size:16px}
.quarry-gallery{display:grid;grid-template-columns:1.3fr .7fr;gap:13px}.quarry-feature,.quarry-tile{position:relative;overflow:hidden;min-height:420px;background:#d5cbbb}.quarry-feature img,.quarry-tile img{width:100%;height:100%;position:absolute;inset:0}.quarry-feature:after,.quarry-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,10,8,.7),transparent 65%)}.quarry-tile-stack{display:grid;grid-template-rows:1fr 1fr;gap:13px}.quarry-tile{min-height:203px}.quarry-label{position:absolute;z-index:1;bottom:18px;left:20px;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.14em}.quarry-label strong{display:block;font:400 26px var(--serif);letter-spacing:-.02em;text-transform:none;margin-bottom:4px}
.page-hero{background:var(--ink);color:var(--paper);padding:190px 0 90px;position:relative;overflow:hidden}.page-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,17,14,.92),rgba(16,17,14,.52) 62%,rgba(16,17,14,.2));pointer-events:none}.page-hero.image-hero{background-size:cover;background-position:center}.page-hero .wrap{position:relative;z-index:1}.page-hero h1{font-size:clamp(44px,7vw,88px);max-width:850px;margin-top:23px}.page-hero p{color:#d0cdc5;max-width:680px;font-size:16px}.page-hero .eyebrow{color:var(--warm2)}.page-hero .hero-buttons{margin-top:27px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,100px);align-items:center}.content-grid.reverse .content-media{order:2}.content-media{height:500px;position:relative;background:#d4c9b7}.content-media img{height:100%;width:100%}.content-text .eyebrow{margin-bottom:20px}.content-text p{color:var(--muted)}.content-text .button{margin-top:15px}.range-band{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);margin-top:35px}.range-cell{padding:18px 20px 18px 0}.range-cell+ .range-cell{border-left:1px solid var(--line-dark);padding-left:20px}.range-cell strong{display:block;font-family:var(--serif);font-size:22px;font-weight:400;margin-bottom:3px}.range-cell span{font-size:10px;color:var(--muted)}
.format-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.format-item{padding:24px 24px 25px 0}.format-item+.format-item{border-left:1px solid var(--line-dark);padding-left:24px}.format-item .format-num{color:#a38457;font:400 24px var(--serif)}.format-item h3{font-size:24px;margin:10px 0}.format-item p{font-size:11px;color:var(--muted);margin:0}
.logistics-banner{position:relative;min-height:470px;color:white;display:flex;align-items:center;background:#222}.logistics-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.logistics-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,14,12,.94),rgba(13,14,12,.62) 52%,rgba(13,14,12,.12))}.logistics-banner-content{position:relative;z-index:1;padding:65px 0;max-width:640px}.logistics-banner h2{font-size:clamp(38px,5vw,64px)}.logistics-banner p{color:#cfccc2}.incoterm-note{background:#e5ded2;padding:20px 22px;border-left:3px solid var(--warm);font-size:12px;color:#54534c;margin-top:20px}
.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(35px,6vw,80px);align-items:start}.contact-intro h2{font-size:clamp(38px,4.5vw,58px)}.contact-intro p{color:var(--muted)}.contact-feature{margin-top:38px;border-top:1px solid var(--line-dark)}.contact-feature div{padding:15px 0;border-bottom:1px solid var(--line-dark);display:flex;align-items:start;gap:14px}.contact-feature b{font:400 24px var(--serif);color:#9c7c50}.contact-feature span{font-size:12px;color:#56554e}.form-wrap{background:#e8e1d6;padding:clamp(24px,3.4vw,45px)}.form-top{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-bottom:25px;margin-bottom:24px;border-bottom:1px solid var(--line-dark)}.form-top h3{font-size:30px;margin:0}.form-top span{font-size:9px;letter-spacing:.14em;color:#88714f;text-transform:uppercase}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 15px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label,.field>span{font-size:10px;font-weight:700;letter-spacing:.04em}.field input,.field select,.field textarea{width:100%;min-width:0;padding:12px 12px;border:1px solid #cfc5b6;background:#f7f3ec;color:var(--ink);border-radius:0;font-size:12px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#92734b;box-shadow:0 0 0 1px #92734b}.field textarea{resize:vertical;min-height:130px}.form-bottom{margin-top:22px}.form-note{color:#777267;font-size:10px;margin:12px 0 0}.honeypot{position:absolute;left:-5000px}.legal-consent{display:flex;align-items:flex-start;gap:10px;font-size:10px;color:#5f5d55;margin-top:17px}.legal-consent input{margin-top:3px}.form-submit{width:100%;margin-top:21px;cursor:pointer}
.cta-band{background:#151612;color:var(--paper);padding:clamp(60px,8vw,110px) 0;position:relative;overflow:hidden}.cta-band:after{content:'';position:absolute;width:600px;height:600px;right:-180px;top:-280px;border:1px solid rgba(224,197,152,.17);border-radius:50%;box-shadow:0 0 0 48px rgba(224,197,152,.025),0 0 0 96px rgba(224,197,152,.02)}.cta-row{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:40px}.cta-row h2{max-width:780px;margin-bottom:0}.cta-row .button{flex-shrink:0}.footer{background:#11120f;color:var(--paper);padding:40px 0 25px}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:35px;padding-bottom:35px;border-bottom:1px solid rgba(255,255,255,.14)}.footer-top p{font-family:var(--serif);font-size:22px;line-height:1.3;max-width:320px;color:#c9c5ba;margin:0}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:10px;color:#c1beb4}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:20px;color:#96958b;font-size:9px;letter-spacing:.04em}.footer-bottom .legal-links{display:flex;gap:17px}.footer-bottom a:hover{color:var(--warm2)}
.legal-page{padding:160px 0 90px;min-height:70vh}.legal-page h1{font-size:clamp(42px,5vw,66px)}.legal-page h2{font:500 24px var(--sans);letter-spacing:-.02em;margin-top:40px}.legal-page p,.legal-page li{max-width:820px;color:#626158}.thankyou{min-height:65vh;padding:180px 0 90px;background:var(--ink);color:var(--paper)}.thankyou h1{font-size:clamp(50px,7vw,86px)}.thankyou p{color:#ccc8be;max-width:550px}
.reveal{opacity:1;transform:none}.js-reveal .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.js-reveal .reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1100px){.nav{gap:12px}.nav a{font-size:9px}.head-right{gap:12px}.head-cta{padding:12px;font-size:8px}.brand{min-width:auto}.brand-name{font-size:14px}.trust-strip{grid-template-columns:repeat(2,1fr);padding-block:19px}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(n+3){padding-top:12px}.material-card{min-height:360px}.product-image{height:190px}}
@media(max-width:820px){:root{--pad:24px}.announcement{font-size:8px;letter-spacing:.12em}.header{height:70px}.header-inner{gap:16px}.head-right{margin-left:auto}.head-cta{display:none}.menu-toggle{display:block;order:3}.nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:rgba(20,21,18,.98);padding:10px var(--pad) 18px;border-bottom:1px solid rgba(255,255,255,.18)}.nav.open{display:flex}.nav a{font-size:12px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}.hero{min-height:720px;min-height:92svh}.hero h1{font-size:clamp(45px,10vw,73px)}.hero-content{padding-top:90px}.hero-bottom{bottom:22px}.trust-strip{gap:14px 12px}.trust-item{padding-right:9px}.intro-grid,.process-grid,.content-grid,.contact-grid{grid-template-columns:1fr}.intro-grid{gap:24px}.intro-left .side-note{max-width:550px}.material-intro{display:block}.material-intro p{margin-top:15px}.material-grid{gap:8px}.material-card{min-height:315px}.material-content{left:17px;right:17px;bottom:17px}.material-content h3{font-size:27px}.material-content p{font-size:11px}.process-grid{gap:36px}.process-image{min-height:440px}.products-grid{grid-template-columns:repeat(2,1fr)}.product-image{height:230px}.logistics-grid{grid-template-columns:1fr}.logistics-image{min-height:360px;order:-1}.quarry-gallery{grid-template-columns:1fr}.quarry-feature{min-height:380px}.quarry-tile-stack{grid-template-columns:1fr 1fr;grid-template-rows:220px}.quarry-tile{min-height:220px}.format-list{grid-template-columns:repeat(2,1fr)}.format-item:nth-child(3){border-left:0;border-top:1px solid var(--line-dark);padding-left:0}.format-item:nth-child(4){border-top:1px solid var(--line-dark)}.cta-row{display:block}.cta-row .button{margin-top:30px}.footer-top{display:grid;grid-template-columns:1fr 1fr}.footer-top p{font-size:19px}.footer-links{grid-column:1/-1}.footer-bottom{flex-wrap:wrap}.footer-bottom .legal-links{order:3;width:100%}.content-grid.reverse .content-media{order:0}.content-media{height:400px}}
@media(max-width:560px){:root{--pad:20px}.brand-mark{font-size:29px}.brand-name{font-size:13px}.brand-name small{font-size:6px}.header-inner{width:calc(100% - 40px)}.lang{font-size:9px}.hero{min-height:680px}.hero .lead{font-size:15px}.hero-buttons{gap:8px}.button{min-height:47px;padding:0 14px;gap:18px;font-size:9px}.hero-bottom{font-size:8px}.hero-index strong{font-size:23px}.trust-strip{grid-template-columns:1fr 1fr;padding:18px 20px}.trust-item{gap:9px;border-right:0;padding:5px 0!important}.trust-icon{width:24px;height:24px}.trust-item strong{font-size:9px}.trust-item small{font-size:8px}.section{padding:64px 0}.material-grid{grid-template-columns:1fr}.material-card{min-height:390px}.material-content h3{font-size:31px}.material-content p{max-width:260px}.section-heading{display:block}.section-heading>.text-link{margin-top:16px}.process-image{min-height:350px}.products-grid{gap:8px}.product-image{height:170px}.product-copy{padding:15px 12px}.product-copy h3{font-size:21px}.product-copy p{font-size:10px}.quarry-tile-stack{grid-template-columns:1fr;grid-template-rows:210px 210px}.quarry-feature{min-height:320px}.quarry-tile{min-height:210px}.page-hero{padding:150px 0 65px}.page-hero h1{font-size:clamp(43px,11vw,63px)}.page-hero p{font-size:14px}.content-media{height:320px}.range-band{grid-template-columns:1fr}.range-cell,.range-cell+.range-cell{padding:14px 0;border-left:0;border-bottom:1px solid var(--line-dark)}.range-cell:last-child{border-bottom:0}.format-list{grid-template-columns:1fr 1fr}.format-item,.format-item+.format-item{padding:18px 12px 18px 0}.format-item:nth-child(even){padding-left:12px;border-left:1px solid var(--line-dark)}.format-item h3{font-size:20px}.logistics-banner{min-height:520px}.logistics-banner-content{padding:45px 0}.contact-grid{gap:35px}.form-top{display:block}.form-top span{display:block;margin-top:8px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-wrap{padding:22px 17px}.footer-top{grid-template-columns:1fr;gap:22px}.footer-top p{max-width:290px}.footer-links{grid-column:auto}.footer-bottom{display:grid;grid-template-columns:1fr;gap:13px}.footer-bottom .legal-links{order:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.js-reveal .reveal{opacity:1;transform:none}}

/* Mobile readability refinements: stronger contrast over quarry photography */
@media(max-width:820px){.hero:after{background:linear-gradient(90deg,rgba(12,13,11,.82) 0%,rgba(12,13,11,.68) 58%,rgba(12,13,11,.48) 100%),linear-gradient(0deg,rgba(12,13,11,.78) 0%,rgba(12,13,11,.22) 58%,rgba(12,13,11,.18) 100%)}.hero-image{object-position:58% center}.hero-content{padding-top:78px;padding-bottom:72px}.hero h1{max-width:100%;font-size:clamp(43px,9.2vw,64px);line-height:1.02;text-shadow:0 2px 18px rgba(0,0,0,.24)}.hero .lead{max-width:570px;color:#fff;font-size:16px;line-height:1.62;text-shadow:0 1px 10px rgba(0,0,0,.45)}.hero .eyebrow{ text-shadow:0 1px 8px rgba(0,0,0,.35)}.hero-buttons{align-items:stretch}.hero-buttons .button{justify-content:center;min-height:50px}.button,.text-link{gap:12px}.text-link span:last-child{display:none}.callout-line .pin{display:none}}
@media(max-width:560px){.hero{min-height:780px;min-height:94svh}.hero-content{padding-top:62px;padding-bottom:86px}.hero h1{font-size:clamp(41px,10.4vw,56px);margin-bottom:22px}.hero .lead{font-size:15px;line-height:1.68;margin-bottom:25px}.hero-buttons{flex-direction:column;align-items:flex-start}.hero-buttons .button{width:min(100%,360px);justify-content:center;padding:0 16px;font-size:9px;letter-spacing:.1em}.hero-bottom{bottom:18px;font-size:7px;letter-spacing:.11em}.hero-bottom:before{width:26px}}

/* Final mobile hero layout: keep all content in normal flow and preserve clear spacing. */
@media (max-width: 820px) {
  .hero {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: auto;
    min-height: 0;
  }
  .hero-image {
    object-position: 62% center;
  }
  .hero:after {
    background:
      linear-gradient(90deg, rgba(9,10,8,.92) 0%, rgba(9,10,8,.84) 58%, rgba(9,10,8,.70) 100%),
      linear-gradient(0deg, rgba(9,10,8,.74) 0%, rgba(9,10,8,.24) 100%);
  }
  .hero-content.wrap {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 48px var(--pad) 18px;
  }
  .hero .eyebrow {
    max-width: 100%;
    margin-bottom: 20px;
    font-size: 9px;
    line-height: 1.55;
    text-shadow: 0 1px 10px rgba(0,0,0,.5);
  }
  .hero h1 {
    max-width: 100%;
    margin-bottom: 22px;
    font-size: clamp(39px, 9vw, 54px);
    line-height: 1.04;
    overflow-wrap: normal;
    text-shadow: 0 2px 18px rgba(0,0,0,.38);
  }
  .hero .lead {
    max-width: 38rem;
    margin-bottom: 26px;
    color: #fff;
    font-size: 16px;
    line-height: 1.68;
    text-shadow: 0 1px 12px rgba(0,0,0,.55);
  }
  .hero-buttons {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    width: 100%;
    max-width: 360px;
  }
  .hero-buttons .button {
    width: 100%;
    max-width: none;
    min-height: 56px;
    justify-content: center;
    padding: 12px 16px;
    line-height: 1.45;
    text-align: center;
    white-space: normal;
  }
  .hero-bottom.wrap {
    position: relative;
    inset: auto;
    flex: 0 0 auto;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    width: calc(100% - 2 * var(--pad));
    max-width: var(--max);
    margin: 0 auto;
    padding: 20px 0 28px;
    color: #e3d8c3;
    font-size: 8px;
    line-height: 1.55;
    letter-spacing: .09em;
  }
  .hero-bottom:before {
    width: 28px;
    margin: 0;
  }
  .hero-index {
    display: flex;
    align-items: baseline;
    gap: 5px;
    margin-left: 0;
    white-space: nowrap;
  }
  .hero-index strong {
    margin-right: 0;
    font-size: 24px;
  }
}

@media (max-width: 560px) {
  .hero {
    height: auto;
    min-height: 0;
  }
  .hero-content.wrap {
    padding: 42px var(--pad) 14px;
  }
  .hero h1 {
    max-width: 100%;
    margin-bottom: 21px;
    font-size: clamp(38px, 10vw, 48px);
    line-height: 1.045;
  }
  .hero .lead {
    margin-bottom: 24px;
    font-size: 15px;
    line-height: 1.72;
  }
  .hero-buttons .button {
    min-height: 56px;
    font-size: 9px;
    letter-spacing: .1em;
  }
  .hero-bottom.wrap {
    grid-template-columns: 22px minmax(0, 1fr) auto;
    gap: 8px;
    padding: 14px 0 24px;
    font-size: 7px;
    letter-spacing: .07em;
  }
  .hero-bottom:before {
    width: 22px;
  }
  .hero-index strong {
    font-size: 22px;
  }
}

/* TMC Stones — refined mobile hero, inspired by the approved mobile mockup */
@media (max-width: 820px) {
  .hero {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden;
    isolation: isolate;
    background: #171815;
  }
  .hero-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 62% center;
    z-index: -2;
  }
  .hero:after {
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(11,12,10,.80) 0%, rgba(11,12,10,.80) 42%, rgba(11,12,10,.91) 100%), linear-gradient(90deg, rgba(11,12,10,.35), rgba(11,12,10,.10));
  }
  .hero-content.wrap {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 38px var(--pad) 0;
  }
  .hero .eyebrow {
    max-width: 100%;
    margin: 0 0 24px;
    color: #e8c994;
    font-size: 10px;
    line-height: 1.6;
    letter-spacing: .18em;
    text-shadow: none;
  }
  .hero h1 {
    max-width: 100%;
    margin: 0 0 25px;
    color: #f6f2e9;
    font-size: clamp(39px, 9.5vw, 56px);
    line-height: 1.01;
    letter-spacing: -.045em;
    overflow-wrap: normal;
    text-shadow: none;
  }
  .hero h1 em { color: #e8c994; }
  .hero .lead {
    max-width: 38rem;
    margin: 0 0 28px;
    color: #f1eee7;
    font-size: 16px;
    line-height: 1.7;
    text-shadow: none;
  }
  .hero-buttons {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    margin: 0;
  }
  .hero-buttons .button {
    display: flex;
    width: 100%;
    min-height: 58px;
    max-width: none;
    justify-content: center;
    align-items: center;
    padding: 14px 18px;
    text-align: center;
    white-space: normal;
    line-height: 1.4;
    font-size: 10px;
    letter-spacing: .14em;
    gap: 0;
  }
  .hero-buttons .button span:last-child { display: none; }
  .hero-bottom.wrap {
    position: relative;
    inset: auto;
    z-index: 1;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    width: calc(100% - 2 * var(--pad));
    max-width: var(--max);
    margin: 0 auto;
    padding: 28px 0 28px;
    color: #e5dac5;
    font-size: 8px;
    line-height: 1.55;
    letter-spacing: .10em;
    text-transform: uppercase;
  }
  .hero-bottom:before {
    content: '';
    display: block;
    width: 22px;
    height: 1px;
    margin: 0;
    background: #e8c994;
  }
  .hero-index {
    display: flex;
    align-items: baseline;
    gap: 5px;
    margin-left: 0;
    white-space: nowrap;
  }
  .hero-index strong { margin: 0; font-size: 25px; color: #e8c994; }
}
@media (max-width: 560px) {
  .hero-content.wrap { padding: 32px var(--pad) 0; }
  .hero .eyebrow { margin-bottom: 20px; font-size: 9px; }
  .hero h1 { font-size: clamp(37px, 10vw, 46px); line-height: 1.035; margin-bottom: 22px; }
  .hero .lead { font-size: 15px; line-height: 1.68; margin-bottom: 24px; }
  .hero-buttons .button { min-height: 56px; font-size: 9px; }
  .hero-bottom.wrap { grid-template-columns: 18px minmax(0, 1fr) auto; gap: 7px; padding: 23px 0 25px; font-size: 7px; letter-spacing: .065em; }
  .hero-bottom:before { width: 18px; }
  .hero-index strong { font-size: 22px; }
}


/* v6: mobile CTA buttons side-by-side, with independent space and no overlap */
@media (max-width: 560px) {
  .hero-buttons {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
  .hero-buttons .button {
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 64px !important;
    height: auto !important;
    padding: 12px 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    font-size: 9px !important;
    line-height: 1.5 !important;
    letter-spacing: .08em !important;
    gap: 0 !important;
  }
  .hero-bottom.wrap {
    position: relative !important;
    margin-top: 0 !important;
    padding-top: 22px !important;
    clear: both;
  }
}
@media (max-width: 360px) {
  .hero-buttons { gap: 7px !important; }
  .hero-buttons .button { padding: 10px 5px !important; font-size: 8px !important; letter-spacing: .045em !important; }
}
