:root{--ink:#182b65;--ink-2:#243b80;--accent:#b32630;--on-dark:#e6edff;--surface:#eef1f8;--paper:#ffffff;--line:rgba(24,43,101,.16);--muted:#52617d;--white:#fff;--shadow:0 24px 50px rgba(24,43,101,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 64px));margin:auto}.skip-link{position:fixed;top:-100px;left:16px;z-index:99;color:var(--white);background:var(--accent);padding:10px 14px;font-weight:800}.skip-link:focus{top:16px}.site-header{height:82px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;height:54px}.brand img{width:170px;height:auto;mix-blend-mode:multiply}.main-nav{display:flex;align-items:center;gap:28px;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.main-nav>a:not(.nav-contact){position:relative}.main-nav>a:not(.nav-contact):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--accent);transition:width .25s}.main-nav>a:hover:after{width:100%}.nav-contact{background:var(--ink);color:var(--white);padding:12px 17px;transition:background .2s}.nav-contact:hover{background:var(--accent);color:var(--white)}.nav-contact span{margin-left:8px}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;margin:5px;background:var(--ink)}
.hero{min-height:700px;color:white;background:var(--ink);position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media{background-image:url('images/hero-kruszywo.jpg');background-size:cover;background-position:center}.hero-shade{background:linear-gradient(105deg,rgba(14,27,67,.94) 0%,rgba(27,48,105,.79) 45%,rgba(112,37,59,.42) 100%),linear-gradient(0deg,rgba(14,27,67,.65),transparent 50%)}.hero-content,.hero-bottom{position:relative;z-index:1}.hero-content{padding:104px 0 58px}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:#52617d;font-size:.67rem;letter-spacing:.18em;font-weight:800;text-transform:uppercase}.eyebrow span{height:2px;width:28px;background:var(--accent);display:inline-block}.eyebrow.light{color:rgba(255,255,255,.68)}.hero h1{font-size:clamp(3.1rem,6.05vw,5.85rem);line-height:.98;letter-spacing:-.07em;max-width:900px;margin:0;max-width:900px;font-weight:700}.hero h1 em,.contact h2 em{font-family:Georgia,serif;color:var(--on-dark);font-weight:400;letter-spacing:-.08em}.hero-lead{font-size:1rem;max-width:580px;margin:28px 0 32px;color:rgba(255,255,255,.84)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:14px 19px;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:1rem}.button-primary{background:var(--accent);color:var(--white)}.button-primary:hover{background:#92212a}.button-ghost{border:1px solid rgba(255,255,255,.5);color:#fff}.button-ghost:hover{background:white;color:var(--ink)}.button-dark{background:var(--ink);color:var(--white);margin-top:28px}.button-dark:hover{background:var(--accent);color:var(--white)}.hero-bottom{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.24)}.hero-bottom p{margin:0;padding:21px 24px 22px 0;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.24);gap:2px}.hero-bottom p+ p{padding-left:24px}.hero-bottom p:last-child{border-right:0}.hero-bottom b{font-size:1rem;color:var(--on-dark)}.hero-bottom span{font-size:.71rem;color:rgba(255,255,255,.7)}
.intro-strip{color:var(--white);background:linear-gradient(110deg,#243b80 0%,#2f3b75 45%,#51365e 75%,#793345 100%);padding:34px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px}.intro-grid p{margin:0;font-size:1.05rem;line-height:1.4}.intro-grid p+ p{border-left:1px solid rgba(255,255,255,.35);padding-left:56px}.intro-grid strong{font-weight:800}.section{padding:112px 0}.section-heading{display:flex;justify-content:space-between;gap:80px;align-items:end;margin-bottom:48px}.section-heading>div{max-width:700px}.section h2,.contact h2{font-size:clamp(2.25rem,4vw,4rem);line-height:1.04;letter-spacing:-.06em;margin:0;font-weight:700}.section-copy{color:var(--muted);font-size:.92rem;max-width:360px;margin:0 0 4px}.services{background:#f4f6fb}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{min-height:500px;position:relative;display:flex;flex-direction:column;justify-content:end;color:#fff;overflow:hidden;background:var(--ink);box-shadow:var(--shadow)}.service-card .card-image{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .55s}.service-card:hover .card-image{transform:scale(1.05)}.service-card .card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,27,67,.97),rgba(14,27,67,.15) 75%)}.service-card--transport .card-image{background-image:url('images/oferta.jpg')}.service-card--materials .card-image{background-image:url('images/hero-kruszywo.jpg')}.service-card--earth .card-image{background-image:url('images/hero-roboty.jpg')}.service-number{position:absolute;z-index:1;right:20px;top:18px;font-family:'DM Mono',monospace;font-size:.7rem;color:var(--on-dark)}.service-card-content{position:relative;z-index:1;padding:30px}.card-kicker{font-size:.67rem;text-transform:uppercase;letter-spacing:.14em;color:var(--on-dark);margin:0 0 12px;font-weight:800}.service-card h3{font-size:2rem;letter-spacing:-.06em;margin:0 0 10px}.service-card-content>p:not(.card-kicker){font-size:.82rem;color:rgba(255,255,255,.83);margin:0;min-height:78px}.text-link{font-size:.71rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;gap:10px;align-items:center;margin-top:24px}.text-link span{font-size:1.1rem;color:var(--on-dark)}
.materials{padding-top:128px}.materials-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(44px,8vw,108px);align-items:center}.materials-visual{position:relative}.materials-visual img{width:100%;height:590px;object-fit:cover;filter:saturate(.82)}.visual-note{position:absolute;bottom:0;right:-34px;max-width:290px;margin:0;color:var(--white);background:var(--accent);padding:18px 20px;font-size:.78rem;font-weight:800;line-height:1.35}.visual-note span{font-size:1.2rem;margin-right:7px}.materials-content .section-copy{max-width:500px;margin:20px 0 26px}.material-list{border-top:1px solid var(--line)}.material-list>div{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:17px 0;border-bottom:1px solid var(--line)}.material-index{font-family:'DM Mono',monospace;color:var(--accent);font-size:.75rem}.material-list p{margin:0;color:var(--muted);font-size:.78rem}.material-list b{color:var(--ink);display:block;font-size:.9rem;margin-bottom:2px}
.fleet{background:var(--ink);color:white}.fleet .eyebrow{color:rgba(255,255,255,.65)}.fleet .section-copy{color:rgba(255,255,255,.63)}.fleet-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-auto-rows:240px;gap:14px}.fleet-card{position:relative;overflow:hidden;background:#243b80}.fleet-card--large{grid-row:span 2}.fleet-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.fleet-card:hover img{transform:scale(1.05)}.fleet-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,27,67,.88),rgba(14,27,67,0) 60%)}.fleet-card div{position:absolute;z-index:1;left:18px;right:18px;bottom:15px}.fleet-card p{font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--on-dark);margin:0 0 3px}.fleet-card h3{margin:0;letter-spacing:-.04em;font-size:1.22rem}.fleet-card h3 em{font-family:Georgia,serif;font-weight:400;color:var(--on-dark)}.equipment-bar{margin-top:14px;padding:17px 20px;border:1px solid rgba(255,255,255,.18);font-size:.72rem;color:rgba(255,255,255,.7)}.equipment-bar p{margin:0}.equipment-bar span{color:var(--on-dark);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;margin-right:16px}
.earthworks{background:var(--surface)}.earthworks-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(42px,8vw,108px);align-items:start}.earthworks-image{padding-top:70px;position:sticky;top:90px}.earthworks-image img{height:560px;width:100%;object-fit:cover;filter:saturate(.75)}.earthworks .section-copy{max-width:520px;margin:19px 0 30px}.accordions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:42px 1fr 28px;align-items:center;padding:19px 0;font-size:1.05rem;font-weight:800;letter-spacing:-.025em}summary::-webkit-details-marker{display:none}summary span{font-family:'DM Mono',monospace;color:var(--accent);font-size:.72rem;font-weight:400}summary i{font-size:1.5rem;font-weight:400;font-style:normal;text-align:right;transition:transform .2s}details[open] summary i{transform:rotate(45deg)}details ul{margin:0 0 20px 42px;padding-left:18px;color:var(--muted);font-size:.82rem;display:grid;gap:6px}.transport-details{padding:0;background:var(--ink);color:white}.transport-panel{min-height:350px;display:grid;grid-template-columns:1fr 1.15fr auto;gap:50px;align-items:center;padding-top:56px;padding-bottom:56px}.transport-panel h2{font-size:clamp(2.1rem,3.5vw,3.4rem)}.transport-panel ul{padding:0;margin:0;list-style:none;border-left:1px solid rgba(255,255,255,.25);padding-left:28px;display:grid;gap:9px;color:rgba(255,255,255,.77);font-size:.84rem}.transport-panel li:before{content:"/";color:var(--on-dark);font-weight:800;margin-right:10px}
.about{background:#ffffff}.about-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:center}.about-copy{max-width:580px}.about-copy>p:not(.eyebrow){font-size:.93rem;color:var(--muted);margin:20px 0 0}.dark-link{color:var(--ink)}.dark-link span{color:var(--accent)}.about-stat{border-left:1px solid var(--line);padding:25px 0 25px 58px}.about-stat b{font-size:clamp(5rem,9vw,8rem);line-height:.8;letter-spacing:-.1em;color:var(--accent);display:block}.about-stat p{font-size:.85rem;font-weight:800;margin:20px 0 0;line-height:1.4}.contact{background:var(--ink-2);color:white;padding:100px 0}.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}.contact .eyebrow{color:rgba(255,255,255,.66)}.contact h2{font-size:clamp(2.8rem,5vw,5rem);max-width:650px}.contact> .container p:not(.eyebrow){color:rgba(255,255,255,.73);max-width:460px;font-size:.92rem;margin:23px 0 0}.contact-box{border-top:1px solid rgba(255,255,255,.3)}.contact-box>a,.contact-box>p{display:flex;flex-direction:column;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.3);margin:0!important;transition:padding .2s}.contact-box>a:hover{padding-left:8px}.contact-box span{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark);font-weight:800}.contact-box strong{font-size:1.25rem;letter-spacing:-.03em;color:#fff;margin-top:3px}.contact-box p strong{font-size:.92rem;line-height:1.5}.site-footer{background:#101d47;color:rgba(255,255,255,.58);padding:25px 0}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}.footer-content img{width:144px;height:auto;background:#fff;padding:7px 10px;border-radius:3px;box-sizing:content-box}.footer-content p{margin:0}
.footer-content a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.footer-content a:hover{color:#fff}
.material-list>div{grid-template-columns:42px 1fr 64px;align-items:center}
.material-thumb{display:block;width:64px;height:64px;overflow:hidden;border-radius:2px}
.material-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.material-thumb:hover img{transform:scale(1.08)}

.transport{padding-top:128px;scroll-margin-top:82px}
.transport .material-list>div{grid-template-columns:42px 1fr}
.transport+.materials{border-top:1px solid var(--line);scroll-margin-top:82px}
.transport .visual-note{right:auto;left:-34px}
.transport .materials-visual a{display:block}
.truck-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0 0;padding:0;list-style:none}
.truck-list li{padding:14px 14px 12px;background:var(--surface);border-top:3px solid var(--ink)}
.truck-list li:last-child{border-top-color:var(--accent)}
.truck-list b{display:block;font-size:1.35rem;letter-spacing:-.04em;line-height:1.1}
.truck-list span{display:block;margin-top:4px;color:var(--muted);font-size:.7rem;line-height:1.35}
.materials-links{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.materials-links .text-link{margin-top:28px}

.stones{background:var(--paper);border-top:1px solid var(--line);scroll-margin-top:82px}
.stone-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}
.stone-card{grid-column:span 2}
.stone-card:nth-child(4):nth-last-child(2){grid-column:2/span 2}
.stone-card{background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column;transition:box-shadow .3s,transform .3s}
.stone-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.stone-photo{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--surface)}
.stone-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.stone-card:hover .stone-photo img{transform:scale(1.06)}
.stone-size,.stone-count{position:absolute;top:14px;padding:6px 10px;font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.02em}
.stone-size{left:14px;background:var(--ink);color:var(--white)}
.stone-count{right:14px;background:rgba(255,255,255,.92);color:var(--ink)}
.stone-body{padding:22px 22px 24px}
.stone-body h3{margin:0 0 8px;font-size:1.3rem;letter-spacing:-.04em}
.stone-body p{margin:0 0 16px;color:var(--muted);font-size:.86rem}
.stone-uses{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.stone-uses li{padding:5px 9px;background:var(--surface);color:var(--ink);font-size:.68rem;font-weight:700;letter-spacing:.03em}
.stone-guide{display:grid;grid-template-columns:.8fr 2fr;gap:20px 48px;margin-top:56px;padding:36px;background:var(--surface)}
.stone-guide-intro .eyebrow{margin-bottom:10px}
.stone-guide h3{margin:0;font-size:1.6rem;letter-spacing:-.05em;line-height:1.1}
.stone-guide dl{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0}
.stone-guide dt{font-weight:800;font-size:.9rem;margin-bottom:6px}
.stone-guide dd{margin:0;color:var(--muted);font-size:.82rem}
.stone-guide-actions{grid-column:2;display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.stone-guide-actions .button-dark{margin-top:0}
.stone-projects{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}
.stone-project{position:relative;display:block;height:340px;overflow:hidden}
.stone-project img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.stone-project:hover img{transform:scale(1.04)}
.stone-project:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,27,67,.85),rgba(14,27,67,0) 55%)}
.stone-project span{position:absolute;z-index:1;left:22px;bottom:18px;color:var(--white);font-weight:700;font-size:1.15rem;letter-spacing:-.03em}
.stone-project small{display:block;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--on-dark);margin-bottom:3px}
.stone-note{margin:18px 0 0;color:var(--muted);font-size:.78rem}

.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.photo-grid a{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#243b80}
.photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.photo-grid a:hover img{transform:scale(1.06)}
.photo-grid a:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,27,67,.8),rgba(14,27,67,0) 50%)}
.photo-grid span{position:absolute;z-index:1;left:12px;right:12px;bottom:9px;color:var(--white);font-size:.74rem;font-weight:700}
.fleet-gallery-content{padding-top:4px}
.projects{margin-top:88px}
.projects-heading{margin-bottom:26px}
.projects-heading h3{margin:0;font-size:clamp(1.5rem,2.6vw,2.2rem);letter-spacing:-.05em;line-height:1.1}

.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(9,17,44,.94);color:var(--white)}
.lightbox[open]{display:flex;align-items:center;justify-content:center}
.lightbox::backdrop{background:rgba(9,17,44,.7)}
.lightbox figure{margin:0;max-width:min(92vw,1400px);display:flex;flex-direction:column;align-items:center}
.lightbox img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain;display:block}
.lightbox figcaption{margin-top:14px;font-size:.88rem;font-weight:700;text-align:center}
.lightbox-counter{margin-left:10px;font-family:'DM Mono',monospace;font-weight:400;color:var(--on-dark);opacity:.7}
.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.1);color:var(--white);cursor:pointer;font:inherit;line-height:1;transition:background .2s}
.lightbox button:hover{background:rgba(255,255,255,.22)}
.lightbox button:focus-visible{outline:3px solid var(--on-dark);outline-offset:2px}
.lightbox-close{top:18px;right:18px;width:46px;height:46px;font-size:1.8rem}
.lightbox-nav{top:50%;transform:translateY(-50%);width:52px;height:72px;font-size:2.4rem}
.lightbox-prev{left:18px}
.lightbox-next{right:18px}

@media(max-width:880px){
.transport{padding-top:78px}
.transport-layout .materials-visual{order:-1}
.transport .visual-note{left:0}
.truck-list{grid-template-columns:1fr 1fr}
.stone-grid{grid-template-columns:1fr 1fr}
.stone-card,.stone-card:nth-child(4):nth-last-child(2){grid-column:auto}
.stone-card:last-child{grid-column:span 2}
.stone-guide{grid-template-columns:1fr;padding:28px}
.stone-guide dl{grid-template-columns:1fr}
.stone-guide-actions{grid-column:auto}
.stone-project{height:280px}
.photo-grid{grid-template-columns:repeat(3,1fr)}
.projects{margin-top:64px}
}
@media(max-width:560px){
.stone-grid{grid-template-columns:1fr}
.stone-card:last-child{grid-column:auto}
.stone-projects{grid-template-columns:1fr}
.stone-guide{padding:24px 20px}
.photo-grid{grid-template-columns:1fr 1fr;gap:8px}
.photo-grid span{font-size:.66rem;left:8px;bottom:6px}
.lightbox-nav{width:40px;height:56px;font-size:1.9rem}
.lightbox-prev{left:6px}
.lightbox-next{right:6px}
.lightbox-close{top:10px;right:10px}
}

.legal{padding:140px 0 90px;background:#fff}
.legal .container{max-width:820px}
.legal h1{font-size:clamp(2rem,4vw,3rem);line-height:1.05;margin:0 0 12px;color:var(--ink)}
.legal h2{font-size:1.15rem;margin:36px 0 10px;color:var(--ink)}
.legal p,.legal li{line-height:1.7;color:var(--muted)}
.legal .legal-updated{font-size:.85rem}
.aggregate-calculator{background:#e9edf7;scroll-margin-top:82px}
.aggregate-calculator .section-copy{font-size:1rem}
.calculator-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:0;border:1px solid var(--line)}
.calculator-form{padding:36px;background:var(--paper);min-width:0}
.calculator-field{display:flex;flex-direction:column;gap:9px;min-width:0}
.calculator-field label{font-size:.875rem;font-weight:800}
.calculator-field input,.calculator-field select{width:100%;min-width:0;min-height:50px;padding:12px;border:1px solid #7885a0;border-radius:0;background:white;color:var(--ink);font:inherit;font-size:1rem}
.calculator-field input:focus-visible,.calculator-field select:focus-visible,.calculator-form button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.calculator-field input[aria-invalid="true"]{border:2px solid var(--accent)}
.calculator-dimensions{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;margin-top:24px}
.calculator-dimensions .calculator-field:last-child{grid-column:1/-1}
.calculator-hint{font-size:.875rem;color:var(--muted);margin:20px 0}
.calculator-error{color:var(--accent);font-size:1rem;font-weight:700}
.calculator-form .button{border:0;cursor:pointer;font-family:inherit;font-size:.875rem;min-height:50px;width:100%}
.calculator-result{padding:36px;background:var(--ink);color:white;min-width:0}
.calculator-result-label{margin:0 0 28px;font-size:.875rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--on-dark)}
.calculator-empty{font-size:1.3rem;max-width:340px;margin:0 0 28px}
.calculator-values{display:grid;gap:22px;margin:0}
.calculator-values dt{font-size:.875rem;color:rgba(255,255,255,.8)}
.calculator-values dd{font-size:clamp(2rem,4vw,3.6rem);font-weight:700;letter-spacing:-.04em;line-height:1.2;margin:4px 0 0;overflow-wrap:anywhere;color:var(--on-dark)}
.calculator-values small{font-size:1.4rem;font-weight:400}
.calculator-assumption,.calculator-note{font-size:.875rem;color:rgba(255,255,255,.8);line-height:1.65}
.calculator-assumption{margin:22px 0 0}
.calculator-note{padding-top:22px;margin:24px 0;border-top:1px solid rgba(255,255,255,.25)}
.calculator-result .button{font-size:.875rem;width:100%;text-align:center}
@media(max-width:1080px){.main-nav{gap:16px;font-size:.7rem}}
@media(max-width:880px){.calculator-layout{grid-template-columns:1fr}.aggregate-calculator{scroll-margin-top:70px}}
@media(max-width:560px){.calculator-form,.calculator-result{padding:26px 20px}.calculator-dimensions{grid-template-columns:1fr}.calculator-dimensions .calculator-field:last-child{grid-column:auto}}
.brand img{mix-blend-mode:normal}
.fleet-gallery{margin-top:24px;border:1px solid rgba(255,255,255,.3)}
.fleet-gallery>summary{display:flex;justify-content:space-between;gap:24px;padding:18px 22px;color:var(--on-dark);font-size:.875rem;letter-spacing:.04em}
.fleet-gallery>summary:hover{background:rgba(255,255,255,.05)}
.fleet-gallery>summary span{width:auto;height:auto;background:none;font:inherit;font-size:1.5rem;color:inherit;transition:transform .2s}
.fleet-gallery[open]>summary span{transform:rotate(45deg)}
.fleet-gallery-content{padding:0 22px 22px;font-size:1rem;color:rgba(255,255,255,.8)}
.fleet-gallery-content p{margin:0}
.location{margin-top:56px}
.location-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;background:var(--ink);border:1px solid rgba(255,255,255,.2)}
.location-heading h3{margin:0 0 8px;font-size:1.4rem;letter-spacing:-.03em}
.location-heading address{font-style:normal;font-size:1rem;color:var(--on-dark)}
.location-heading .button{flex-shrink:0;font-size:.875rem}
.location-map{display:block;width:100%;height:420px;border:0;background:var(--paper)}
.fleet-gallery>summary:focus-visible,.location a:focus-visible{outline:3px solid var(--on-dark);outline-offset:5px}
@media(max-width:560px){.location-heading{align-items:stretch;flex-direction:column;padding:22px 20px}.location-map{height:340px}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:880px){.container{width:min(100% - 40px,680px)}.site-header{height:70px}.brand img{width:130px}.menu-toggle{display:block;z-index:2}.main-nav{position:fixed;inset:70px 0 auto 0;background:var(--paper);border-bottom:1px solid var(--line);padding:18px 20px 25px;flex-direction:column;align-items:stretch;gap:0;transform:translateY(-130%);transition:transform .25s;box-shadow:0 15px 20px rgba(14,27,67,.1)}.main-nav.is-open{transform:translateY(0)}.main-nav a{padding:14px 0}.main-nav .nav-contact{padding:14px}.hero{min-height:650px}.hero-content{padding-top:78px}.hero-bottom{grid-template-columns:1fr}.hero-bottom p{padding:12px 0!important;border-right:0;border-bottom:1px solid rgba(255,255,255,.24)}.hero-bottom p:last-child{border-bottom:0}.intro-grid,.materials-layout,.earthworks-layout,.about-layout,.contact-layout{grid-template-columns:1fr;gap:38px}.intro-grid p+ p{border-left:0;border-top:1px solid rgba(255,255,255,.35);padding:20px 0 0}.section{padding:78px 0}.section-heading{display:block;margin-bottom:32px}.section-heading .section-copy{margin-top:18px}.services-grid{gap:14px}.service-card{min-height:380px}.fleet-grid{grid-template-columns:1fr 1fr;grid-auto-rows:225px}.fleet-card--large{grid-row:span 1;grid-column:span 2}.materials-visual img{height:430px}.visual-note{right:0}.earthworks-image{position:static;padding-top:0;order:2}.earthworks-image img{height:360px}.transport-panel{grid-template-columns:1fr;gap:26px;padding:60px 0}.transport-panel .button{justify-self:start}.about-stat{border-left:0;border-top:1px solid var(--line);padding:36px 0 0}.contact{padding:78px 0}.contact-layout{gap:44px}.footer-content{flex-wrap:wrap;justify-content:flex-start}.footer-content p:last-child{margin-left:auto}}
@media(max-width:560px){.container{width:calc(100% - 32px)}.hero h1{font-size:3.06rem}.hero-lead{font-size:.9rem}.button{width:100%;padding:15px}.hero-actions{display:grid}.intro-strip{padding:27px 0}.intro-grid{gap:20px}.intro-grid p{font-size:.92rem}.section h2{font-size:2.3rem}.services-grid{grid-template-columns:1fr}.service-card{min-height:380px}.materials-visual img{height:355px}.visual-note{left:0;right:auto;max-width:260px}.fleet-grid{grid-template-columns:1fr;grid-auto-rows:220px}.fleet-card--large{grid-column:auto}.fleet-heading{margin-bottom:30px}.equipment-bar span{display:block;margin:0 0 7px}.earthworks-image img{height:315px}.contact h2{font-size:3.1rem}.footer-content{gap:12px}.footer-content p:last-child{margin-left:0}.fleet-card h3{font-size:1.1rem}}
