@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Montserrat:wght@500;600;700;800&display=swap');
:root{--ink:#1f2326;--muted:#6b7074;--paper:#f4f4f2;--white:#fff;--red:#e31b23;--line:#e2e3e1;--max:1240px;--shadow:0 18px 50px rgba(18,24,28,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.topbar{background:var(--ink);color:#fff;font-size:16px;font-weight:700;padding:9px 0}.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar .container span:last-child{white-space:nowrap;font-weight:800}.contact-strip{display:flex;align-items:center;gap:20px}.contact-strip a{color:#fff;display:inline-flex;align-items:center;gap:7px}.contact-strip a:hover{color:#fff}.contact-strip a:first-child{letter-spacing:.2px}.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;font-family:Montserrat;font-weight:800}.brand-mark{font-size:52px;letter-spacing:-5px;line-height:1}.brand-mark .a{color:#24282b}.brand-mark .d{color:var(--red)}.brand small{display:block;font:800 14px/1.05 Inter;letter-spacing:1.15px;margin-left:1px}.links{display:flex;gap:25px;font-size:15px;font-weight:700}.links a{padding:28px 0;position:relative}.links a:hover,.links a.active{color:var(--red)}.links a.active:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--red)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--red);color:#fff;padding:13px 20px;border-radius:3px;font:700 12px Montserrat;letter-spacing:.2px;border:1px solid var(--red);transition:.2s}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(227,27,35,.2)}.btn.alt{background:transparent;color:var(--ink);border-color:#fff}.btn.dark{background:var(--ink);border-color:var(--ink)}.menu{display:none;background:none;border:0;font-size:28px}.hero{min-height:640px;display:flex;align-items:end;position:relative;isolation:isolate;overflow:hidden;background:#15191b}
.hero:before,.hero:after{content:'';position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat;will-change:opacity,transform}.hero:before{background-image:linear-gradient(90deg,rgba(10,15,18,.84),rgba(10,15,18,.22)),var(--hero-bg,url('assets/pipes-sunset.jpeg'));transform:scale(1.04);animation:heroKenBurns 10s ease-in-out infinite alternate}.hero:after{z-index:-1;background-image:linear-gradient(90deg,rgba(10,15,18,.84),rgba(10,15,18,.22)),var(--hero-next-bg);opacity:0;transform:scale(1.08)}.hero.hero-changing:before{animation:heroOldFade 1.1s cubic-bezier(.22,.61,.36,1) both}.hero.hero-changing:after{animation:heroNewFade 1.1s cubic-bezier(.22,.61,.36,1) both,heroKenBurnsNew 4s ease-out both}.hero:after{pointer-events:none}.hero:after{box-shadow:inset 0 0 120px rgba(0,0,0,.18)}.hero-content{position:relative;z-index:1}.hero-content:after{content:'';position:absolute;left:-10%;top:20%;width:45%;height:70%;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.10),transparent 65%);transform:translateX(-140%);pointer-events:none}.hero.hero-changing .hero-content:after{animation:heroSweep 1.15s ease-out both}.hero-tagline{transition:none}.hero-tagline.hero-text-changing{animation:heroTextChange .95s cubic-bezier(.16,1,.3,1) both}.hero.hero-changing .hero-logo{animation:heroLogoIn .75s cubic-bezier(.16,1,.3,1) both}.hero.hero-changing .eyebrow{animation:heroMetaIn .75s .08s cubic-bezier(.16,1,.3,1) both}.hero.hero-changing p{animation:heroMetaIn .75s .16s cubic-bezier(.16,1,.3,1) both}.hero.hero-changing .actions{animation:heroMetaIn .75s .24s cubic-bezier(.16,1,.3,1) both}@keyframes heroOldFade{0%{opacity:1;transform:scale(1.04)}100%{opacity:.15;transform:scale(1.01)}}@keyframes heroNewFade{0%{opacity:0;transform:scale(1.08)}100%{opacity:1;transform:scale(1.035)}}@keyframes heroKenBurns{0%{transform:scale(1.02) translate3d(0,0,0)}100%{transform:scale(1.07) translate3d(-.7%, -0.5%,0)}}@keyframes heroKenBurnsNew{0%{transform:scale(1.09) translate3d(1%,.5%,0)}100%{transform:scale(1.035) translate3d(0,0,0)}}@keyframes heroTextChange{0%{opacity:0;transform:translateY(28px) scale(.985);filter:blur(5px)}55%{opacity:1;filter:blur(0)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes heroLogoIn{0%{opacity:.2;transform:translateY(16px) scale(.96)}100%{opacity:1;transform:none}}@keyframes heroMetaIn{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:none}}@keyframes heroSweep{0%{transform:translateX(-140%)}100%{transform:translateX(300%)}}@media(prefers-reduced-motion:reduce){.hero:before{animation:none}.hero.hero-changing:before,.hero.hero-changing:after,.hero-tagline.hero-text-changing,.hero.hero-changing .hero-logo,.hero.hero-changing .eyebrow,.hero.hero-changing p,.hero.hero-changing .actions,.hero.hero-changing .hero-content:after{animation:none!important}.hero:after{opacity:0!important}}.hero-content{color:#fff;padding:76px 0 56px;max-width:760px}
.hero-logo{display:flex;align-items:center;gap:12px;margin:0 0 16px;width:max-content;filter:drop-shadow(0 5px 14px rgba(0,0,0,.35))}
.hero-logo-mark{font:800 78px/.82 Montserrat;letter-spacing:-9px;line-height:.8}
.hero-logo-mark .a{color:#fff}
.hero-logo-mark .d{color:var(--red)}
.hero-logo-name{font:800 19px/1.02 Montserrat;letter-spacing:2px;color:#fff;text-transform:uppercase}
.hero .eyebrow{margin-bottom:12px}
.hero .btn.alt{color:#fff;border-color:#fff;background:rgba(18,22,25,.45);text-shadow:0 1px 2px rgba(0,0,0,.35)}
.hero .btn.alt:hover{background:rgba(227,27,35,.92);border-color:var(--red);color:#fff}
.eyebrow{font:700 15px Montserrat;letter-spacing:3px;text-transform:uppercase;color:var(--red);margin-bottom:14px}.hero .eyebrow{color:#fff}.hero h1{font:800 clamp(46px,7vw,86px)/.94 Montserrat;margin:0 0 22px;letter-spacing:-3px;text-transform:uppercase}.hero h1 span{color:var(--red)}.hero p{font-size:19px;max-width:680px;margin:0 0 28px}.actions{display:flex;gap:12px;flex-wrap:wrap}.stats{background:rgba(20,25,28,.92);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:25px 18px;border-right:1px solid rgba(255,255,255,.16)}.stat:last-child{border:0}.stat b{display:block;font:800 25px Montserrat}.stat span{font-size:11px;color:#cdd0d2;text-transform:uppercase;letter-spacing:1px}.section{padding:92px 0}.section.paper{background:var(--paper)}.section.dark{background:var(--ink);color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split img{border-radius:4px;box-shadow:var(--shadow)}h2{font:800 clamp(32px,4vw,52px)/1.05 Montserrat;letter-spacing:-1.5px;margin:0 0 20px}h3{font:700 21px Montserrat;margin:0 0 10px}.lead{font-size:18px;color:#4c5256}.dark .lead{color:#c8cccf}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.04)}.card img{height:220px;width:100%;object-fit:cover}.card-body{padding:22px}.card-body h3{font-size:16px}.card-body p{font-size:13px;color:var(--muted);min-height:62px}.arrow{color:var(--red);font:700 11px Montserrat;text-transform:uppercase}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.feature{border:1px solid rgba(255,255,255,.25);padding:28px;border-radius:4px}.icon{font-size:27px;color:var(--red);margin-bottom:18px}.feature p{color:#cbd0d2;font-size:13px;margin:0}.process{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.step{position:relative;padding:8px}.step img{height:110px;width:100%;object-fit:cover;border-radius:3px}.step b{display:block;color:var(--red);font:800 22px Montserrat;margin-top:8px}.step strong{display:block;font:700 12px Montserrat}.app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.app{position:relative;min-height:220px;overflow:hidden;border-radius:4px}.app img{height:100%;width:100%;object-fit:cover}.app:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.8))}.app .app-txt{position:absolute;bottom:18px;left:20px;right:20px;color:#fff;z-index:1}.cta{background:linear-gradient(90deg,rgba(22,26,29,.97),rgba(22,26,29,.72)),url('assets/paver-poster.jpeg') center/cover;color:#fff}.cta .container{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer{background:#15191b;color:#d7dadd;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px}.footer h4{font:700 12px Montserrat;color:#fff;text-transform:uppercase;letter-spacing:1.5px}.footer a{display:block;color:#bfc4c7;font-size:13px;margin:7px 0}.footer-bottom{border-top:1px solid #343a3e;margin-top:40px;padding-top:18px;font-size:11px;display:flex;justify-content:space-between}.page-hero{background:var(--ink);color:#fff;padding:95px 0}.page-hero h1{font:800 clamp(42px,6vw,72px)/1 Montserrat;margin:0}.breadcrumb{font-size:12px;color:#aeb4b7;margin-top:14px}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{text-align:left;padding:15px;border-bottom:1px solid var(--line);font-size:13px}.table th{font:700 12px Montserrat;text-transform:uppercase;background:#eef0ee}.gallery{columns:3 280px;column-gap:16px}.gallery img{width:100%;margin:0 0 16px;break-inside:avoid;border-radius:4px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.form{display:grid;gap:14px}.form input,.form textarea,.form select{width:100%;padding:14px;border:1px solid #d7dad8;border-radius:3px;font:inherit;background:#fff}.form textarea{min-height:130px;resize:vertical}.mobile-cta{display:none}
@media(max-width:900px){.links,.nav>.btn{display:none}.menu{display:block}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat{border-bottom:1px solid rgba(255,255,255,.16)}.split,.contact-grid{grid-template-columns:1fr;gap:35px}.cards{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(3,1fr)}.app-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.cta .container{flex-direction:column;align-items:flex-start}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:#fff;box-shadow:0 -5px 20px rgba(0,0,0,.15)}.mobile-cta a{flex:1;text-align:center;padding:13px;font:700 11px Montserrat;border-right:1px solid #ddd}.mobile-cta a:last-child{border:0;background:var(--red);color:#fff}}
@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.topbar{display:none}.hero{min-height:620px}.hero-content{padding:58px 0 35px}.hero-logo{margin-bottom:13px}.hero-logo-mark{font-size:58px;letter-spacing:-7px}.hero-logo-name{font-size:14px;letter-spacing:1.5px}.hero h1{font-size:47px;letter-spacing:-2px}.hero p{font-size:16px}.section{padding:64px 0}.cards,.feature-grid,.app-grid,.footer-grid{grid-template-columns:1fr}.process{grid-template-columns:repeat(2,1fr)}.page-hero{padding:65px 0}.footer{padding-bottom:80px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}

.quote-options{display:grid;gap:14px}.quote-field label{display:block;font:700 11px Montserrat;text-transform:uppercase;letter-spacing:.7px;margin:0 0 6px;color:#4c5256}.quote-field[hidden]{display:none}.quote-field select{margin:0}
@media(max-width:900px){.nav-inner{height:76px}.brand-mark{font-size:44px}.brand small{font-size:12px}.links.open{display:flex;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px;flex-direction:column;gap:0;box-shadow:0 12px 25px rgba(0,0,0,.08)}.links.open a{padding:12px 0}.links.open a.active:after{bottom:4px;right:auto;width:32px}}

/* WhatsApp action matches Get a Quote */
.nav-actions{display:flex;align-items:center;gap:8px}
.whatsapp-mini{box-shadow:none}
.whatsapp-mini:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(227,27,35,.2)}
@media(max-width:900px){.nav-actions{display:none}}

/* Premium visual page headers - replaces the oversized plain black block */
.page-hero{position:relative;min-height:330px;padding:0;display:flex;align-items:flex-end;overflow:hidden;background-color:var(--ink);background-position:center;background-size:cover;background-repeat:no-repeat}
.page-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,19,21,.88) 0%,rgba(15,19,21,.64) 45%,rgba(15,19,21,.25) 100%);z-index:0}
.page-hero .container{position:relative;z-index:1;padding:70px 0 48px}
.page-hero .eyebrow{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.page-hero h1{color:#fff;text-shadow:0 3px 14px rgba(0,0,0,.35)}
.page-hero .breadcrumb{color:#e0e3e5}
.page-hero.products-hero{background-image:url('assets/pipes-wide.jpeg')}
.page-hero.about-hero{background-image:url('assets/factory-wide.jpeg')}
.page-hero.manufacturing-hero{background-image:url('assets/factory-wide.jpeg')}
.page-hero.quality-hero{background-image:url('assets/pipes-yard-truck.jpeg')}
.page-hero.applications-hero{background-image:url('assets/paver-storyboard.jpeg')}
.page-hero.gallery-hero{background-image:url('assets/pipes-sunset.jpeg')}
.page-hero.contact-hero{background-image:url('assets/factory-wide.jpeg')}

/* Product specifications: clearer and easier to read */
.table th{font-size:13px;font-weight:800;letter-spacing:.4px}
.table td{font-size:17px;font-weight:700;line-height:1.45;color:var(--ink)}
.card-body h3{font-size:19px;font-weight:800}
.card-body p{font-size:15px;font-weight:600;line-height:1.6;color:#4c5256;min-height:72px}

@media(max-width:900px){
  .page-hero{min-height:290px}
  .page-hero .container{padding:58px 0 40px}
  .table td{font-size:16px}
}
@media(max-width:600px){
  .page-hero{min-height:250px}
  .page-hero .container{padding:48px 0 32px}
  .table th{font-size:11px}
  .table td{font-size:15px}
  .card-body p{font-size:14px}
}

@media(max-width:600px){.contact-strip{gap:10px;font-size:13px}.contact-strip a span{display:none}.topbar .container{justify-content:center}.brand small{font-size:11px}}


/* Paver block area calculator */
.calculator-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;margin-top:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.calculator-cta h3{margin-bottom:6px}.calculator-cta p{margin:0;color:var(--muted)}
.calculator-section{background:#f4f4f2}
.paver-calculator{display:grid;grid-template-columns:1fr .85fr;gap:28px;margin-top:32px;align-items:stretch}
.calculator-form,.calculator-result{background:#fff;border:1px solid var(--line);padding:28px;border-radius:4px;box-shadow:var(--shadow)}
.calculator-form{display:grid;gap:18px;align-content:start}
.calculator-form select,.calculator-form input{width:100%;padding:14px 15px;border:1px solid #d7dad8;border-radius:3px;font:inherit;background:#fff;color:var(--ink);min-height:50px}
.calculator-form select:focus,.calculator-form input:focus{outline:2px solid rgba(227,27,35,.2);border-color:var(--red)}
.calculator-form small{display:block;color:var(--muted);font-size:12px;margin-top:6px}
.calculator-note{margin:0;padding:12px 14px;border-left:3px solid var(--red);background:#f8f8f7;color:#5d6266;font-size:13px}
.calculator-result{display:flex;flex-direction:column;justify-content:center;gap:20px}
.result-label{font:700 12px Montserrat;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.calculator-result>strong{font:800 clamp(32px,4vw,46px)/1.1 Montserrat;color:var(--red);letter-spacing:-1px}
.result-row{display:flex;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:14px}
.result-row span{color:var(--muted)}.result-row b{text-align:right}
.calculator-result .btn{width:100%;text-align:center}
@media(max-width:700px){
 .calculator-cta{align-items:flex-start;flex-direction:column;padding:22px}
 .paver-calculator{grid-template-columns:1fr;gap:16px}
 .calculator-form,.calculator-result{padding:21px}
}


/* Refined, responsive Paver Block Area Calculator */
.calculator-section{padding:clamp(54px,7vw,92px) 0;background:#f5f5f3;scroll-margin-top:100px}
.calculator-container>h2{font-family:Montserrat,Inter,Arial,sans-serif;font-size:clamp(30px,3.4vw,46px);line-height:1.16;letter-spacing:-1.1px;margin:10px 0 14px;max-width:100%;overflow-wrap:normal}
.calculator-container>.lead{font-size:clamp(16px,1.5vw,19px);line-height:1.65;max-width:760px;margin:0;color:#646a6e}
.calculator-section .eyebrow{font-size:13px;letter-spacing:2px;font-weight:800;color:var(--red)}
.paver-calculator{display:block;max-width:900px;margin:30px auto 0}
.calculator-form,.calculator-result{border:1px solid #e0e2e0;border-radius:12px;padding:clamp(20px,3vw,34px);box-shadow:0 12px 34px rgba(18,24,28,.07);background:#fff}
.calculator-form{display:block}
.calculator-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}
.calculator-form .quote-field{min-width:0;margin:0}
.calculator-form label{display:block;font:700 13px/1.4 Inter,Arial,sans-serif;letter-spacing:.65px;text-transform:uppercase;color:#34393d;margin-bottom:9px}
.calculator-form select,.calculator-form input{display:block;width:100%;min-height:54px;padding:13px 15px;border:1px solid #d5d9d8;border-radius:7px;background:#fff;color:#202529;font:500 16px/1.4 Inter,Arial,sans-serif;box-shadow:none}
.calculator-form select:focus,.calculator-form input:focus{outline:3px solid rgba(227,27,35,.13);border-color:var(--red)}
.calculator-form small{display:block;font:400 13px/1.5 Inter,Arial,sans-serif;color:#70767a;margin-top:7px}
.area-input-wrap{position:relative}
.area-input-wrap input{padding-right:76px}
.area-input-wrap>span{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:700;color:#747a7e;pointer-events:none}
.calculator-note{font:400 13px/1.6 Inter,Arial,sans-serif;margin:22px 0 0;padding:13px 16px;border-left:3px solid var(--red);border-radius:0 6px 6px 0;background:#f7f7f6;color:#62686c}
.calculator-result{margin-top:18px;display:grid;gap:18px}
.result-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.calculator-result .result-label{font:700 15px/1.5 Inter,Arial,sans-serif;color:#42484c}
.calculator-result>div>strong{display:block;font:800 clamp(28px,4vw,40px)/1.15 Montserrat,Inter,sans-serif;color:var(--red);letter-spacing:-.8px}
.result-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.calculator-result .result-row{display:flex;flex-direction:column;gap:5px;min-width:0;padding:14px;border:1px solid #e7e8e6;border-radius:7px;background:#fafaf9}
.calculator-result .result-row span{font:500 12px/1.4 Inter,Arial,sans-serif;color:#6b7175}
.calculator-result .result-row b{font:700 17px/1.4 Inter,Arial,sans-serif;color:#252a2e;overflow-wrap:anywhere}
.calculator-result .btn{width:100%;min-height:52px;border-radius:6px;font-size:13px;padding:15px 20px}
@media(max-width:650px){
 .calculator-section{padding:48px 0}
 .calculator-container>h2{font-size:clamp(28px,8vw,36px);letter-spacing:-.7px}
 .calculator-fields{grid-template-columns:1fr;gap:17px}
 .calculator-form,.calculator-result{padding:20px}
 .result-heading{align-items:flex-start;flex-direction:column;gap:8px}
 .result-details{grid-template-columns:1fr}
 .calculator-result .result-row{flex-direction:row;align-items:center;justify-content:space-between}
 .calculator-result .result-row span{font-size:13px}
}

/* Calculator polish v17: clear hierarchy, no colour selector, explicit calculate action. */
.calculator-section{background:#f4f5f4;padding:clamp(56px,7vw,96px) 0;scroll-margin-top:110px}
.calculator-container>h2{font-family:Montserrat,Inter,Arial,sans-serif;font-size:clamp(32px,4vw,48px);line-height:1.12;letter-spacing:-1.2px;color:#202428;margin:12px 0 16px;max-width:100%;overflow-wrap:break-word}
.calculator-container>.lead{font-size:clamp(17px,1.6vw,20px);line-height:1.7;color:#5e6569;max-width:760px}
.calculator-section .eyebrow{font-size:14px;letter-spacing:2.2px;font-weight:800;color:var(--red)}
.paver-calculator{max-width:920px;margin:32px auto 0}
.calculator-form,.calculator-result{border:1px solid #e0e4e2;border-radius:14px;padding:clamp(22px,3.4vw,36px);box-shadow:0 14px 38px rgba(18,24,28,.075);background:#fff}
.calculator-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px 26px}
.calculator-form label{display:block;font:750 14px/1.45 Inter,Arial,sans-serif;letter-spacing:.45px;text-transform:uppercase;color:#30373b;margin-bottom:10px}
.calculator-form select,.calculator-form input{width:100%;min-height:56px;padding:14px 16px;border:1px solid #cfd6d3;border-radius:8px;background:#fff;color:#202629;font:500 17px/1.45 Inter,Arial,sans-serif}
.calculator-form select:focus,.calculator-form input:focus{outline:3px solid rgba(227,27,35,.14);border-color:var(--red)}
.calculator-form small{font:400 14px/1.55 Inter,Arial,sans-serif;color:#697176;margin-top:8px}
.calculator-note{font:400 14px/1.65 Inter,Arial,sans-serif;margin:22px 0 18px;padding:14px 17px;border-left:4px solid var(--red);border-radius:0 7px 7px 0;background:#f7f8f7;color:#555e62}
.calculator-calculate{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:15px 24px;border:0;border-radius:7px;background:var(--red);color:#fff;font:800 14px/1.2 Inter,Arial,sans-serif;letter-spacing:.4px;cursor:pointer;box-shadow:0 7px 16px rgba(180,20,28,.16)}
.calculator-calculate:hover{filter:brightness(.94);transform:translateY(-1px)}
.calculator-result[hidden]{display:none!important}
.calculator-result{margin-top:20px;display:grid;gap:20px}
.calculator-result .result-label{font:750 16px/1.5 Inter,Arial,sans-serif;color:#343b3f}
.calculator-result>div>strong{display:block;font:800 clamp(32px,4vw,44px)/1.15 Montserrat,Inter,sans-serif;color:var(--red);letter-spacing:-.8px;margin-top:5px}
.result-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.calculator-result .result-row{display:flex;flex-direction:column;gap:7px;min-width:0;padding:16px;border:1px solid #e5e8e6;border-radius:8px;background:#fafbf9}
.calculator-result .result-row span{font:500 13px/1.45 Inter,Arial,sans-serif;color:#626b70}
.calculator-result .result-row b{font:750 18px/1.4 Inter,Arial,sans-serif;color:#252b2f;overflow-wrap:anywhere}
.calculator-result .btn{width:100%;min-height:54px;border-radius:7px;font-size:14px;padding:16px 20px;text-align:center}
@media(max-width:650px){.calculator-section{padding:46px 0}.calculator-container>h2{font-size:clamp(29px,8vw,37px);letter-spacing:-.7px}.calculator-fields{grid-template-columns:1fr;gap:18px}.calculator-form,.calculator-result{padding:20px}.calculator-calculate{width:100%}.result-details{grid-template-columns:1fr}.calculator-result .result-row{flex-direction:row;align-items:center;justify-content:space-between}.calculator-result .result-row span{font-size:13px}}


/* Paver calculator control refinement — version 18 */
.calculator-form .calculator-fields{gap:26px 28px}
.calculator-form .quote-field{min-width:0}
.calculator-form .quote-field label{font-family:Montserrat,Inter,Arial,sans-serif;font-size:17px;font-weight:800;line-height:1.4;letter-spacing:.55px;color:#20272b;margin-bottom:12px}
.calculator-form .quote-field select,
.calculator-form .quote-field input{display:block;width:100%;box-sizing:border-box;min-height:64px;padding:16px 18px;border:1.5px solid #bfc9c5;border-radius:10px;background-color:#fff;color:#202629;font-family:Inter,Arial,sans-serif;font-size:19px;font-weight:700;line-height:1.45}
.calculator-form .quote-field select{cursor:pointer}
.calculator-form .quote-field select:focus,
.calculator-form .quote-field input:focus{outline:3px solid rgba(227,27,35,.16);border-color:var(--red)}
.calculator-form .area-input-wrap{display:flex;align-items:center;gap:12px}
.calculator-form .area-input-wrap input{flex:1;min-width:0}
.calculator-form .area-input-wrap span{font-size:17px;font-weight:750;color:#3c4448;white-space:nowrap}
.calculator-form .quote-field small{display:block;font-size:15px;line-height:1.55;margin-top:10px}
.calculator-form .calculator-note{font-size:16px;line-height:1.7}
.calculator-form .calculator-calculate{min-height:60px;padding:18px 28px;font-size:16px;font-weight:800;letter-spacing:.45px}
.calculator-result .result-details{gap:14px}
.calculator-result .result-row span{font-size:14px;font-weight:600}
.calculator-result .result-row b{font-size:19px;font-weight:800}
@media(max-width:650px){
 .calculator-form .quote-field label{font-size:16px}
 .calculator-form .quote-field select,.calculator-form .quote-field input{min-height:60px;font-size:17px;padding:14px}
 .calculator-form .area-input-wrap span{font-size:15px}
 .calculator-form .calculator-note{font-size:15px}
 .calculator-form .calculator-calculate{min-height:58px;font-size:15px;width:100%}
}
