.breadcrumb-hero {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    background-image: linear-gradient(90deg,rgba(4,17,24,.88),rgba(4,17,24,.38)),var(--crumb-bg);
    background-size: cover;
    background-position: center;
    color: #fff
}

.breadcrumb-hero .container {
    position: relative;
    z-index: 2
}

.crumbs {
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 14px;
    margin-bottom: 18px;
    color: #e3e6e8
}

.crumbs a {
    color: #d9a536
}

.breadcrumb-hero h1 {
    font-size: 46px;
    line-height: 1.1;
    margin: 0;
    max-width: 850px
}

.inner-page {
    background: #fff
}

.inner-intro {
    padding: 70px 0 80px
}

.inner-kicker {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .8px;
    color: #c58e20
}

.inner-intro> .container>h2 {
    font-size: 36px;
    margin: 10px 0 14px;
    color: #071820
}

.inner-intro> .container>p {
    max-width: 800px;
    font-size: 15px;
    line-height: 1.7;
    color: #4d5960;
    margin-bottom: 36px
}

.inner-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px
}

.inner-card {
    border: 1px solid #e3e5e6;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 25px rgba(0,0,0,.05)
}

.inner-card img {
    width: 100%;
    height: 230px;
    object-fit: cover
}

.inner-card>div {
    padding: 20px
}

.inner-card h2 {
    font-size: 19px;
    margin: 0 0 8px
}

.inner-card p {
    font-size: 15px;
    line-height: 1.6;
    color: #59636a
}

.inner-card a {
    color: #b77e10;
    font-weight: 600
}

.content-two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
    margin-top: 30px
}

.content-two h2,.contact-panel h2 {
    font-size: 30px;
    margin: 0 0 15px
}

.content-two p,.contact-panel p {
    font-size: 15px;
    line-height: 1.7;
    color: #4d5960
}

.content-two img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    border-radius: 12px
}

.inner-btn {
    display: inline-flex;
    min-height: 52px;
    padding: 0 25px;
    align-items: center;
    background: #d9a536;
    color: #07151c;
    border-radius: 6px;
    font-size: 15px;
    font-weight: 600;
    margin-top: 12px
}

.contact-panel {
    padding: 36px;
    border: 1px solid #e1e3e4;
    border-radius: 12px;
    background: #faf9f5;
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: center
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px
}

.gallery-grid img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 10px
}

@media(max-width: 850px) {
    .breadcrumb-hero {
        min-height:230px
    }

    .breadcrumb-hero h1 {
        font-size: 34px
    }

    .inner-intro {
        padding: 48px 0 60px
    }

    .inner-intro> .container>h2 {
        font-size: 30px
    }

    .inner-grid,.gallery-grid {
        grid-template-columns: 1fr 1fr
    }

    .content-two {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .contact-panel {
        display: block
    }

    .contact-panel .inner-btn {
        margin-top: 20px
    }
}

@media(max-width: 520px) {
    .breadcrumb-hero {
        min-height:200px
    }

    .breadcrumb-hero h1 {
        font-size: 29px
    }

    .crumbs {
        font-size: 12px
    }

    .inner-grid,.gallery-grid {
        grid-template-columns: 1fr
    }

    .inner-card img,.gallery-grid img {
        height: 230px
    }

    .content-two img {
        height: 280px
    }

    .inner-intro> .container>h2 {
        font-size: 27px
    }
}

/* Internal page breadcrumb — verified image background */
.page-hero, .breadcrumb-hero, .inner-banner, .page-banner {
    position: relative;
    background-image: linear-gradient(rgba(5,20,28,.72), rgba(5,20,28,.72)), url('../images/quarryCrusherPelletPiles.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    min-height: 260px;
    display: flex;
    align-items: center;
    color: #fff;
}

.page-hero h1, .breadcrumb-hero h1, .inner-banner h1, .page-banner h1 {
    color: #fff !important;
}

.page-hero a, .page-hero span, .breadcrumb-hero a, .breadcrumb-hero span, .inner-banner a, .inner-banner span, .page-banner a, .page-banner span {
    color: #fff;
}

/* Earthcore About Us */
.ec-about {
    background: #fff;
    color: #071820
}

.ec-about * {
    box-sizing: border-box
}

.ec-about-section {
    padding: 78px 0
}

.ec-about-soft {
    background: #f7f8f5
}

.ec-about-kicker {
    display: inline-block;
    color: #b98216;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    margin-bottom: 12px
}

.ec-about-title {
    font-size: 38px;
    line-height: 1.18;
    margin: 0 0 16px;
    color: #071820
}

.ec-about-lead {
    font-size: 15px;
    line-height: 1.8;
    color: #526068;
    max-width: 780px
}

.ec-about-hero {
    position: relative;
    min-height: 510px;
    display: flex;
    align-items: center;
    background: linear-gradient(90deg,rgba(4,20,24,.91) 0%,rgba(4,20,24,.72) 48%,rgba(4,20,24,.25) 100%),url('../images/quarryCrusherPelletPiles.png') center/cover no-repeat;
    color: #fff
}

.ec-about-hero .container {
    position: relative;
    z-index: 2
}

.ec-about-crumbs {
    display: flex;
    gap: 9px;
    align-items: center;
    font-size: 13px;
    margin-bottom: 28px;
    color: #e9eceb
}

.ec-about-crumbs a {
    color: #e8bd59
}

.ec-about-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 4px;
    background: rgba(255,255,255,.08);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .6px;
    text-transform: uppercase
}

.ec-about-hero h1 {
    max-width: 850px;
    font-size: 49px;
    line-height: 1.12;
    margin: 18px 0;
    color: #fff
}

.ec-about-hero p {
    max-width: 760px;
    font-size: 16px;
    line-height: 1.75;
    color: #e6ece9;
    margin: 0
}

.ec-about-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 27px
}

.ec-about-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 27px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
    background: #d6a137;
    color: #071820
}

.ec-about-btn.ec-outline {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.5)
}

.ec-about-stats {
    margin-top: -43px;
    position: relative;
    z-index: 3
}

.ec-about-stats-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    background: #fff;
    border: 1px solid #e3e7e5;
    box-shadow: 0 15px 40px rgba(4,20,24,.12);
    border-radius: 8px;
    overflow: hidden
}

.ec-about-stat {
    padding: 27px 25px;
    border-right: 1px solid #e5e8e6
}

.ec-about-stat:last-child {
    border-right: 0
}

.ec-about-stat strong {
    display: block;
    font-size: 27px;
    color: #061119;
    margin-bottom: 5px
}

.ec-about-stat span {
    font-size: 13px;
    color: #647069
}

.ec-about-two {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 62px;
    align-items: center
}

.ec-about-copy p {
    font-size: 15px;
    line-height: 1.82;
    color: #536067;
    margin: 0 0 15px
}

.ec-about-checks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 11px 22px;
    margin: 24px 0
}

.ec-about-check {
    font-size: 14px;
    color: #061119;
    display: flex;
    gap: 9px;
    align-items: flex-start
}

.ec-about-check:before {
    content: '✓';
    display: grid;
    place-items: center;
    flex: 0 0 21px;
    height: 21px;
    border-radius: 50%;
    background: #e8f1ed;
    color: #061119;
    font-size: 12px;
    font-weight: 800
}

.ec-about-photo {
    position: relative
}

.ec-about-photo img {
    display: block;
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 8px
}

.ec-about-photo-badge {
    position: absolute;
    left: -25px;
    bottom: 25px;
    background: #061119;
    color: #fff;
    padding: 18px 22px;
    border-radius: 6px;
    box-shadow: 0 12px 28px rgba(0,0,0,.16)
}

.ec-about-photo-badge strong {
    font-size: 24px;
    display: block
}

.ec-about-photo-badge span {
    font-size: 12px;
    color: #dce9e5
}

.ec-about-section-head {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 38px
}

.ec-about-section-head .ec-about-lead {
    margin: 0 auto
}

.ec-industry-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px
}

.ec-industry-card {
    display: block;
    border: 1px solid #e0e5e2;
    border-radius: 7px;
    padding: 25px;
    background: #fff;
    transition: .2s
}

.ec-industry-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(6,17,25,.08);
    border-color: #c8d7d1
}

.ec-industry-icon {
    width: 42px;
    height: 42px;
    border-radius: 5px;
    background: #eaf2ee;
    color: #061119;
    display: grid;
    place-items: center;
    font-size: 20px;
    margin-bottom: 18px
}

.ec-industry-card h3 {
    font-size: 18px;
    margin: 0 0 9px;
    color: #061119
}

.ec-industry-card p {
    font-size: 14px;
    line-height: 1.65;
    color: #64706b;
    margin: 0
}

.ec-product-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 18px
}

.ec-product-card {
    position: relative;
    min-height: 320px;
    border-radius: 8px;
    overflow: hidden;
    background: #061119
}

.ec-product-card img {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    object-fit: cover;
    transition: .35s
}

.ec-product-card:after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,rgba(6,17,25,.05),rgba(6,17,25,.85))
}

.ec-product-card:hover img {
    transform: scale(1.04)
}

.ec-product-info {
    position: absolute;
    z-index: 2;
    left: 22px;
    right: 22px;
    bottom: 21px;
    color: #fff
}

.ec-product-info h3 {
    font-size: 19px;
    margin: 0 0 7px;
    color: #fff
}

.ec-product-info span {
    font-size: 13px;
    color: #f1c76e
}

.ec-facility {
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 0;
    background: #061119;
    border-radius: 9px;
    overflow: hidden;
    color: #fff
}

.ec-facility img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover
}

.ec-facility-content {
    padding: 48px
}

.ec-facility-content .ec-about-kicker {
    color: #efc76d
}

.ec-facility-content h2 {
    font-size: 34px;
    margin: 0 0 16px;
    color: #fff
}

.ec-facility-content p {
    font-size: 15px;
    line-height: 1.75;
    color: #dce9e4
}

.ec-facility-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px;
    margin-top: 25px
}

.ec-facility-item {
    padding: 14px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 5px;
    font-size: 13px;
    color: #eef5f2
}

.ec-company-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    border: 1px solid #dfe5e2;
    border-radius: 8px;
    overflow: hidden
}

.ec-company-item {
    padding: 24px 27px;
    border-right: 1px solid #e2e7e4;
    border-bottom: 1px solid #e2e7e4
}

.ec-company-item:nth-child(3n) {
    border-right: 0
}

.ec-company-item:nth-last-child(-n+3) {
    border-bottom: 0
}

.ec-company-item small {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .6px;
    color: #7b8782;
    margin-bottom: 6px
}

.ec-company-item strong {
    font-size: 16px;
    color: #061119
}

.ec-why {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 55px;
    align-items: start
}

.ec-why-points {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px
}

.ec-why-point {
    padding: 21px;
    border: 1px solid #e0e5e2;
    border-radius: 6px;
    background: #fff
}

.ec-why-point strong {
    display: block;
    font-size: 15px;
    color: #061119;
    margin-bottom: 6px
}

.ec-why-point span {
    font-size: 13px;
    line-height: 1.6;
    color: #68736e
}

.ec-faq {
    max-width: 900px;
    margin: 0 auto
}

.ec-faq details {
    border-bottom: 1px solid #dde3df
}

.ec-faq summary {
    cursor: pointer;
    list-style: none;
    padding: 20px 3px;
    font-size: 16px;
    font-weight: 600;
    color: #061119;
    display: flex;
    justify-content: space-between;
    gap: 20px
}

.ec-faq summary:after {
    content: '+';
    font-size: 22px;
    color: #061119
}

.ec-faq details[open] summary:after {
    content: '−'
}

.ec-faq p {
    padding: 0 3px 20px;
    margin: 0;
    font-size: 14px;
    line-height: 1.75;
    color: #63706a
}

.ec-about-cta {
    padding: 65px 0;
    background: linear-gradient(90deg,rgba(6,17,25,.92),rgba(6,17,25,.72)),url('../images/cta-clean-final.png') center/cover no-repeat;
    color: #fff
}

.ec-about-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px
}

.ec-about-cta h2 {
    font-size: 34px;
    color: #fff;
    margin: 0 0 9px
}

.ec-about-cta p {
    font-size: 14px;
    color: #dce7e3;
    margin: 0
}

.ec-about-cta .ec-about-btn {
    flex: 0 0 auto
}

@media(max-width: 900px) {
    .ec-about-hero {
        min-height:470px
    }

    .ec-about-hero h1 {
        font-size: 40px
    }

    .ec-about-stats-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-about-stat:nth-child(2) {
        border-right: 0
    }

    .ec-about-stat:nth-child(-n+2) {
        border-bottom: 1px solid #e5e8e6
    }

    .ec-about-two,.ec-facility,.ec-why {
        grid-template-columns: 1fr
    }

    .ec-about-photo-badge {
        left: 18px
    }

    .ec-industry-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-product-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-company-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-company-item,.ec-company-item:nth-child(3n) {
        border-right: 1px solid #e2e7e4;
        border-bottom: 1px solid #e2e7e4
    }

    .ec-company-item:nth-child(2n) {
        border-right: 0
    }

    .ec-company-item:nth-last-child(-n+2) {
        border-bottom: 0
    }

    .ec-about-cta-inner {
        display: block
    }

    .ec-about-cta .ec-about-btn {
        margin-top: 22px
    }
}

@media(max-width: 560px) {
    .ec-about-section {
        padding:54px 0
    }

    .ec-about-hero {
        min-height: 510px
    }

    .ec-about-hero h1 {
        font-size: 33px
    }

    .ec-about-hero p {
        font-size: 14px
    }

    .ec-about-actions {
        display: grid
    }

    .ec-about-btn {
        width: 100%
    }

    .ec-about-stats {
        margin-top: -24px
    }

    .ec-about-stat {
        padding: 20px 17px
    }

    .ec-about-stat strong {
        font-size: 22px
    }

    .ec-about-title {
        font-size: 29px
    }

    .ec-about-two {
        gap: 32px
    }

    .ec-about-checks,.ec-facility-list,.ec-why-points {
        grid-template-columns: 1fr
    }

    .ec-about-photo img {
        height: 330px
    }

    .ec-industry-grid,.ec-product-grid,.ec-company-grid {
        grid-template-columns: 1fr
    }

    .ec-product-card {
        min-height: 300px
    }

    .ec-company-item,.ec-company-item:nth-child(2n),.ec-company-item:nth-child(3n) {
        border-right: 0;
        border-bottom: 1px solid #e2e7e4
    }

    .ec-company-item:last-child {
        border-bottom: 0
    }

    .ec-facility-content {
        padding: 32px 24px
    }

    .ec-facility-content h2 {
        font-size: 29px
    }

    .ec-facility img {
        min-height: 310px
    }

    .ec-about-cta h2 {
        font-size: 28px
    }
}

/* =========================================================
   EARTHCORE CONTACT PAGE
   Scoped classes only — prevents conflict with master style
   ========================================================= */
.ec-contact {
    background: #fff;
    color: #061119
}

.ec-contact * {
    box-sizing: border-box
}

.ec-contact-hero {
    min-height: 480px;
    display: flex;
    align-items: center;
    color: #fff;
    background: linear-gradient(90deg,rgba(6,17,25,.94),rgba(6,17,25,.76) 48%,rgba(6,17,25,.34)),url('../images/quarryCrusherPelletPiles.png') center/cover no-repeat
}

.ec-contact-hero .container {
    width: 100%
}

.ec-contact-crumbs {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 13px;
    color: #e7ece9;
    margin-bottom: 25px
}

.ec-contact-crumbs a {
    color: #e8bd59
}

.ec-contact-eyebrow {
    display: inline-flex;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.25);
    background: rgba(255,255,255,.08);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .7px
}

.ec-contact-hero h1 {
    font-size: 49px;
    line-height: 1.1;
    color: #fff;
    margin: 18px 0 15px;
    max-width: 850px
}

.ec-contact-hero p {
    font-size: 15px;
    line-height: 1.75;
    color: #e1e5e8;
    max-width: 720px;
    margin: 0
}

.ec-contact-hero-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 27px
}

.ec-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 27px;
    border-radius: 5px;
    background: #d6a137;
    color: #061119;
    font-size: 14px;
    font-weight: 700;
    border: 1px solid #d6a137
}

.ec-contact-btn-outline {
    background: transparent;
    color: #fff;
    border-color: rgba(255,255,255,.55)
}

.ec-contact-strip {
    position: relative;
    margin-top: -1px;
    background: #061119;
    color: #fff
}

.ec-contact-strip-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr)
}

.ec-contact-strip-grid>div {
    padding: 23px 27px;
    border-right: 1px solid rgba(255,255,255,.14)
}

.ec-contact-strip-grid>div:last-child {
    border-right: 0
}

.ec-contact-strip strong {
    display: block;
    font-size: 18px;
    margin-bottom: 4px
}

.ec-contact-strip span {
    font-size: 12px;
    color: #d9dfe3
}

.ec-contact-section {
    padding: 82px 0
}

.ec-contact-main-grid {
    display: grid;
    grid-template-columns: .86fr 1.14fr;
    gap: 65px;
    align-items: start
}

.ec-contact-kicker {
    display: inline-block;
    color: #b98216;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    margin-bottom: 11px
}

.ec-contact-info>h2,.ec-contact-section-head h2,.ec-contact-location-copy h2 {
    font-size: 37px;
    line-height: 1.2;
    color: #061119;
    margin: 0 0 15px
}

.ec-contact-info>p,.ec-contact-section-head p,.ec-contact-location-copy>p {
    font-size: 15px;
    line-height: 1.8;
    color: #5c6863;
    margin: 0
}

.ec-contact-methods {
    display: grid;
    gap: 12px;
    margin: 29px 0
}

.ec-contact-method {
    display: grid;
    grid-template-columns: 48px 1fr auto;
    gap: 15px;
    align-items: center;
    padding: 16px 18px;
    border: 1px solid #dfe6e2;
    border-radius: 7px;
    background: #fff;
    transition: .2s
}

.ec-contact-method:hover {
    border-color: #aeb9c0;
    box-shadow: 0 9px 24px rgba(6,17,25,.07);
    transform: translateY(-2px)
}

.ec-contact-method-icon {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eef1f3;
    color: #061119;
    font-size: 19px
}

.ec-contact-method small {
    display: block;
    color: #87908c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .7px
}

.ec-contact-method strong {
    display: block;
    color: #061119;
    font-size: 16px;
    margin: 2px 0
}

.ec-contact-method em {
    font-style: normal;
    color: #64706b;
    font-size: 13px
}

.ec-contact-method b {
    font-size: 22px;
    color: #061119
}

.ec-contact-office {
    margin-top: 25px;
    padding: 25px 27px;
    background: #f5f6f7;
    border-left: 3px solid #061119
}

.ec-contact-office h3 {
    font-size: 19px;
    margin: 0 0 9px;
    color: #061119
}

.ec-contact-office p {
    font-size: 14px;
    line-height: 1.7;
    color: #5d6964;
    margin: 0
}

.ec-contact-office-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-top: 18px;
    padding-top: 17px;
    border-top: 1px solid #dde3df
}

.ec-contact-office-meta small {
    display: block;
    font-size: 10px;
    color: #89928e;
    margin-bottom: 3px
}

.ec-contact-office-meta strong {
    font-size: 13px;
    color: #061119
}

.ec-contact-form-card {
    border: 1px solid #dfe5e2;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(6,17,25,.09);
    overflow: hidden
}

.ec-contact-form-head {
    padding: 28px 31px 24px;
    background: #f5f6f7;
    border-bottom: 1px solid #e2e7e4
}

.ec-contact-form-head>span {
    font-size: 11px;
    font-weight: 700;
    color: #b98216;
    letter-spacing: 1px
}

.ec-contact-form-head h2 {
    font-size: 29px;
    margin: 6px 0 6px;
    color: #061119
}

.ec-contact-form-head p {
    font-size: 13px;
    line-height: 1.6;
    color: #68736e;
    margin: 0
}

.ec-contact-form-card form {
    padding: 28px 31px
}

.ec-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 17px
}

.ec-form-grid label {
    display: block
}

.ec-form-grid label>span {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #061119;
    margin-bottom: 7px
}

.ec-form-full {
    grid-column: 1/-1
}

.ec-form-grid input,.ec-form-grid select,.ec-form-grid textarea {
    width: 100%;
    border: 1px solid #d8dfdb;
    border-radius: 5px;
    background: #fff;
    color: #061119;
    padding: 0 13px;
    font: 400 14px 'Inter',Arial,sans-serif;
    outline: none;
    transition: .2s
}

.ec-form-grid input,.ec-form-grid select {
    height: 48px
}

.ec-form-grid textarea {
    padding-top: 12px;
    resize: vertical
}

.ec-form-grid input:focus,.ec-form-grid select:focus,.ec-form-grid textarea:focus {
    border-color: #061119;
    box-shadow: 0 0 0 3px rgba(6,17,25,.08)
}

.ec-contact-submit {
    width: 100%;
    height: 53px;
    border: 0;
    border-radius: 5px;
    background: #061119;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    margin-top: 20px
}

.ec-contact-submit:hover {
    background: #061119
}

.ec-contact-form-note {
    text-align: center;
    font-size: 11px;
    color: #89918e;
    margin: 10px 0 0
}

.ec-contact-applications {
    padding: 76px 0;
    background: #f6f7f8
}

.ec-contact-section-head {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 36px
}

.ec-contact-app-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px
}

.ec-contact-app-grid>a {
    position: relative;
    padding: 25px 24px;
    border: 1px solid #dde5e1;
    border-radius: 7px;
    background: #fff;
    min-height: 190px;
    transition: .2s
}

.ec-contact-app-grid>a:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(6,17,25,.08);
    border-color: #c3cbd0
}

.ec-contact-app-grid span {
    display: block;
    font-size: 11px;
    color: #b98216;
    font-weight: 500;
    margin-bottom: 18px
}

.ec-contact-app-grid h3 {
    font-size: 18px;
    color: #061119;
    margin: 0 0 9px
}

.ec-contact-app-grid p {
    font-size: 13px;
    line-height: 1.65;
    color: #68736e;
    margin: 0 0 18px
}

.ec-contact-app-grid b {
    font-size: 12px;
    color: #061119
}

.ec-contact-location {
    padding: 82px 0
}

.ec-contact-location-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 55px;
    align-items: center
}

.ec-contact-location-copy address {
    font-style: normal;
    font-size: 15px;
    line-height: 1.75;
    color: #061119;
    margin: 22px 0
}

.ec-contact-map {
    height: 410px;
    border-radius: 9px;
    overflow: hidden;
    border: 1px solid #dce3df
}

.ec-contact-map iframe {
    width: 100%;
    height: 100%;
    border: 0
}

.ec-contact-faq {
    padding: 76px 0;
    background: #f7f8f9
}

.ec-contact-faq-list {
    max-width: 900px;
    margin: 0 auto
}

.ec-contact-faq-list details {
    border-bottom: 1px solid #dce3df
}

.ec-contact-faq-list summary {
    cursor: pointer;
    list-style: none;
    padding: 20px 3px;
    font-size: 15px;
    font-weight: 600;
    color: #061119;
    display: flex;
    justify-content: space-between;
    gap: 20px
}

.ec-contact-faq-list summary:after {
    content: '+';
    font-size: 21px;
    color: #061119
}

.ec-contact-faq-list details[open] summary:after {
    content: '−'
}

.ec-contact-faq-list p {
    padding: 0 3px 20px;
    margin: 0;
    font-size: 14px;
    line-height: 1.75;
    color: #64706b
}

.ec-contact-cta {
    padding: 65px 0;
    color: #fff;
    background: linear-gradient(90deg,rgba(6,17,25,.94),rgba(6,17,25,.74)),url('../images/cta-clean-final.png') center/cover no-repeat
}

.ec-contact-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px
}

.ec-contact-cta-inner>div>span {
    font-size: 11px;
    letter-spacing: 1px;
    color: #e8c66f;
    font-weight: 700
}

.ec-contact-cta h2 {
    font-size: 33px;
    color: #fff;
    margin: 7px 0
}

.ec-contact-cta p {
    font-size: 14px;
    color: #dce2e6;
    margin: 0
}

@media(max-width: 900px) {
    .ec-contact-hero {
        min-height:450px
    }

    .ec-contact-hero h1 {
        font-size: 40px
    }

    .ec-contact-strip-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-contact-strip-grid>div:nth-child(2) {
        border-right: 0
    }

    .ec-contact-strip-grid>div:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.14)
    }

    .ec-contact-main-grid,.ec-contact-location-grid {
        grid-template-columns: 1fr
    }

    .ec-contact-app-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-contact-cta-inner {
        display: block
    }

    .ec-contact-cta .ec-contact-btn {
        margin-top: 22px
    }
}

@media(max-width: 560px) {
    .ec-contact-hero {
        min-height:500px
    }

    .ec-contact-hero h1 {
        font-size: 33px
    }

    .ec-contact-hero p {
        font-size: 14px
    }

    .ec-contact-hero-actions {
        display: grid
    }

    .ec-contact-btn {
        width: 100%
    }

    .ec-contact-strip-grid>div {
        padding: 18px 15px
    }

    .ec-contact-strip strong {
        font-size: 16px
    }

    .ec-contact-section,.ec-contact-applications,.ec-contact-location,.ec-contact-faq {
        padding: 55px 0
    }

    .ec-contact-main-grid {
        gap: 35px
    }

    .ec-contact-info>h2,.ec-contact-section-head h2,.ec-contact-location-copy h2 {
        font-size: 29px
    }

    .ec-form-grid {
        grid-template-columns: 1fr
    }

    .ec-form-full {
        grid-column: auto
    }

    .ec-contact-form-head,.ec-contact-form-card form {
        padding: 24px 20px
    }

    .ec-contact-app-grid {
        grid-template-columns: 1fr
    }

    .ec-contact-office-meta {
        grid-template-columns: 1fr
    }

    .ec-contact-map {
        height: 320px
    }

    .ec-contact-cta h2 {
        font-size: 28px
    }
}

/* Contact breadcrumb alignment */
.ec-contact-hero .container {
    margin-left: auto!important;
    margin-right: auto!important;
}

.ec-contact-crumbs,.ec-contact-hero .ec-contact-eyebrow,.ec-contact-hero h1,.ec-contact-hero p,.ec-contact-hero-actions {
    margin-left: 0;
}

/* Earthcore Request Quote */
.ec-rfq {
    --ink: #061119;
    --gold: #d9a536;
    --muted: #657078;
    background: #fff;
    color: var(--ink)
}

.ec-rfq * {
    box-sizing: border-box
}

.ec-rfq-hero {
    min-height: 520px;
    display: flex;
    align-items: center;
    background: linear-gradient(90deg,rgba(6,17,25,.96),rgba(6,17,25,.78) 55%,rgba(6,17,25,.28)),url('../images/quarryCrusherPelletPiles.png') center/cover no-repeat;
    color: #fff
}

.ec-rfq-crumbs {
    display: flex;
    gap: 9px;
    font-size: 13px;
    margin-bottom: 26px;
    color: #e4e8ea
}

.ec-rfq-crumbs a {
    color: #e8bd59
}

.ec-rfq-eyebrow,.ec-rfq-kicker {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.1px;
    text-transform: uppercase;
    color: #b98216
}

.ec-rfq-hero .ec-rfq-eyebrow {
    color: #f1ca75
}

.ec-rfq-hero h1 {
    font-size: 50px;
    line-height: 1.1;
    max-width: 820px;
    margin: 14px 0 18px;
    color: #fff
}

.ec-rfq-hero p {
    max-width: 750px;
    font-size: 15px;
    line-height: 1.75;
    color: #e4e9eb
}

.ec-rfq-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 22px 0
}

.ec-rfq-badges span {
    border: 1px solid rgba(255,255,255,.22);
    background: rgba(255,255,255,.07);
    padding: 9px 12px;
    border-radius: 4px;
    font-size: 12px
}

.ec-rfq-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px
}

.ec-rfq-btn,.ec-rfq-outline,.ec-rfq-whatsapp {
    min-height: 52px;
    padding: 0 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600
}

.ec-rfq-btn {
    background: var(--gold);
    color: var(--ink)
}

.ec-rfq-outline {
    border: 1px solid rgba(255,255,255,.45);
    color: #fff
}

.ec-rfq-whatsapp {
    color: #fff;
    padding-left: 10px;
    padding-right: 10px
}

.ec-rfq-strip {
    position: relative;
    margin-top: -1px;
    background: var(--ink);
    color: #fff
}

.ec-rfq-strip-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr)
}

.ec-rfq-strip-grid div {
    padding: 23px 25px;
    border-right: 1px solid rgba(255,255,255,.12)
}

.ec-rfq-strip-grid div:last-child {
    border: 0
}

.ec-rfq-strip strong {
    display: block;
    font-size: 20px;
    color: #fff;
    margin-bottom: 4px
}

.ec-rfq-strip span {
    font-size: 12px;
    color: #bfc8cc
}

.ec-rfq-section {
    padding: 78px 0
}

.ec-rfq-main {
    display: grid;
    grid-template-columns: minmax(0,1.55fr) minmax(280px,.65fr);
    gap: 30px;
    align-items: start
}

.ec-rfq-form-card {
    border: 1px solid #e0e4e6;
    border-radius: 9px;
    padding: 36px;
    background: #fff;
    box-shadow: 0 12px 35px rgba(6,17,25,.06)
}

.ec-rfq-form-card h2,.ec-rfq-head h2 {
    font-size: 34px;
    margin: 8px 0 10px;
    color: var(--ink)
}

.ec-rfq-form-card>p,.ec-rfq-head p {
    font-size: 14px;
    line-height: 1.7;
    color: var(--muted)
}

.ec-rfq-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: 28px
}

.ec-rfq-form-grid label {
    display: block
}

.ec-rfq-form-grid label>span {
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: #26343c;
    margin-bottom: 7px
}

.ec-rfq-form-grid input,.ec-rfq-form-grid select,.ec-rfq-form-grid textarea {
    width: 100%;
    border: 1px solid #d9dfe2;
    background: #fff;
    border-radius: 5px;
    padding: 0 14px;
    font: inherit;
    font-size: 14px;
    color: var(--ink);
    outline: 0
}

.ec-rfq-form-grid input,.ec-rfq-form-grid select {
    height: 50px
}

.ec-rfq-form-grid textarea {
    padding-top: 13px;
    resize: vertical
}

.ec-rfq-form-grid input:focus,.ec-rfq-form-grid select:focus,.ec-rfq-form-grid textarea:focus {
    border-color: #8b959b;
    box-shadow: 0 0 0 3px rgba(6,17,25,.05)
}

.ec-rfq-full {
    grid-column: 1/-1
}

.ec-rfq-submit {
    border: 0;
    background: var(--ink);
    color: #fff;
    min-height: 52px;
    padding: 0 28px;
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
    margin-top: 20px;
    cursor: pointer
}

.ec-rfq-note {
    display: block;
    color: #778187;
    font-size: 11px;
    margin-top: 12px
}

.ec-rfq-side {
    display: grid;
    gap: 20px
}

.ec-rfq-essential,.ec-rfq-help {
    border: 1px solid #e0e4e6;
    border-radius: 8px;
    padding: 27px
}

.ec-rfq-essential h3,.ec-rfq-help h3 {
    font-size: 22px;
    margin: 8px 0 15px
}

.ec-rfq-essential ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.ec-rfq-essential li {
    font-size: 13px;
    line-height: 1.55;
    color: #526069;
    padding: 11px 0 11px 25px;
    border-bottom: 1px solid #edf0f1;
    position: relative
}

.ec-rfq-essential li:before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #a87816;
    font-weight: 800
}

.ec-rfq-help {
    background: var(--ink);
    color: #fff
}

.ec-rfq-help small {
    color: #e6bd64
}

.ec-rfq-help h3 {
    color: #fff
}

.ec-rfq-help p {
    font-size: 13px;
    line-height: 1.65;
    color: #c5cdd1
}

.ec-rfq-help a {
    color: #f0c76e;
    font-size: 14px;
    font-weight: 700
}

.ec-rfq-process,.ec-rfq-related {
    padding: 78px 0;
    background: #f6f7f7
}

.ec-rfq-head {
    text-align: center;
    max-width: 760px;
    margin: 0 auto 38px
}

.ec-rfq-process-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    border: 1px solid #dde2e4;
    background: #fff;
    border-radius: 8px;
    overflow: hidden
}

.ec-rfq-process-grid article {
    padding: 28px;
    border-right: 1px solid #e2e6e8
}

.ec-rfq-process-grid article:last-child {
    border: 0
}

.ec-rfq-process-grid b {
    font-size: 28px;
    color: #d5a33c
}

.ec-rfq-process-grid h3 {
    font-size: 17px;
    margin: 14px 0 8px
}

.ec-rfq-process-grid p,.ec-rfq-benefits p {
    font-size: 13px;
    line-height: 1.65;
    color: #667178;
    margin: 0
}

.ec-rfq-benefits {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px
}

.ec-rfq-benefits article {
    border: 1px solid #e0e4e6;
    border-radius: 7px;
    padding: 27px
}

.ec-rfq-benefits article>span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    background: #f0f2f2;
    color: var(--ink);
    border-radius: 5px;
    font-size: 20px
}

.ec-rfq-benefits h3 {
    font-size: 18px;
    margin: 17px 0 8px
}

.ec-rfq-products {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px
}

.ec-rfq-products>a {
    display: block;
    background: #fff;
    border: 1px solid #e0e4e6;
    border-radius: 8px;
    overflow: hidden
}

.ec-rfq-products img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    display: block
}

.ec-rfq-products div {
    padding: 18px
}

.ec-rfq-products h3 {
    font-size: 17px;
    margin: 0 0 7px;
    color: var(--ink)
}

.ec-rfq-products span {
    font-size: 12px;
    font-weight: 700;
    color: #9b6d12
}

.ec-rfq-faq {
    padding: 78px 0
}

.ec-rfq-faq-list {
    max-width: 900px;
    margin: auto
}

.ec-rfq-faq details {
    border-bottom: 1px solid #dde2e4
}

.ec-rfq-faq summary {
    cursor: pointer;
    list-style: none;
    padding: 20px 2px;
    font-size: 15px;
    font-weight: 700;
    display: flex;
    justify-content: space-between
}

.ec-rfq-faq summary:after {
    content: '+';
    font-size: 21px
}

.ec-rfq-faq details[open] summary:after {
    content: '−'
}

.ec-rfq-faq p {
    margin: 0;
    padding: 0 2px 20px;
    color: #667178;
    font-size: 14px;
    line-height: 1.7
}

.ec-rfq-cta {
    padding: 55px 0;
    background: var(--ink);
    color: #fff
}

.ec-rfq-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px
}

.ec-rfq-cta span {
    font-size: 11px;
    letter-spacing: 1px;
    color: #e6bd64
}

.ec-rfq-cta h2 {
    font-size: 31px;
    color: #fff;
    margin: 8px 0
}

.ec-rfq-cta p {
    font-size: 14px;
    color: #c7d0d4;
    margin: 0
}

.ec-rfq-cta .ec-rfq-btn {
    flex: 0 0 auto
}

@media(max-width: 900px) {
    .ec-rfq-hero {
        min-height:470px
    }

    .ec-rfq-hero h1 {
        font-size: 40px
    }

    .ec-rfq-main {
        grid-template-columns: 1fr
    }

    .ec-rfq-process-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-rfq-process-grid article:nth-child(2) {
        border-right: 0
    }

    .ec-rfq-process-grid article:nth-child(-n+2) {
        border-bottom: 1px solid #e2e6e8
    }

    .ec-rfq-benefits,.ec-rfq-products {
        grid-template-columns: 1fr 1fr
    }

    .ec-rfq-strip-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-rfq-strip-grid div:nth-child(2) {
        border-right: 0
    }

    .ec-rfq-strip-grid div:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.12)
    }
}

@media(max-width: 600px) {
    .ec-rfq-hero {
        min-height:520px;
        padding: 45px 0
    }

    .ec-rfq-hero h1 {
        font-size: 34px
    }

    .ec-rfq-actions {
        align-items: stretch
    }

    .ec-rfq-btn,.ec-rfq-outline {
        width: 100%
    }

    .ec-rfq-whatsapp {
        width: 100%
    }

    .ec-rfq-section,.ec-rfq-process,.ec-rfq-related,.ec-rfq-faq {
        padding: 55px 0
    }

    .ec-rfq-form-card {
        padding: 24px 18px
    }

    .ec-rfq-form-card h2,.ec-rfq-head h2 {
        font-size: 28px
    }

    .ec-rfq-form-grid {
        grid-template-columns: 1fr
    }

    .ec-rfq-full {
        grid-column: auto
    }

    .ec-rfq-process-grid,.ec-rfq-benefits,.ec-rfq-products {
        grid-template-columns: 1fr
    }

    .ec-rfq-process-grid article {
        border-right: 0;
        border-bottom: 1px solid #e2e6e8
    }

    .ec-rfq-process-grid article:last-child {
        border-bottom: 0
    }

    .ec-rfq-products img {
        height: 220px
    }

    .ec-rfq-cta-inner {
        display: block
    }

    .ec-rfq-cta .ec-rfq-btn {
        margin-top: 22px;
        width: 100%
    }

    .ec-rfq-cta h2 {
        font-size: 27px
    }
}

/* ===== EC DETAIL HUB PAGES ===== */
.ec-hub {
    --ink: #061119;
    --muted: #617078;
    --line: #e5e9eb;
    --soft: #f5f7f7;
    background: #fff;
    color: var(--ink)
}

.ec-hub * {
    box-sizing: border-box
}

.ec-hub a {
    text-decoration: none
}

.ec-hub-hero {
    background: #061119;
    color: #fff;
    padding: 62px 0 58px
}

.ec-hub-crumb {
    display: flex;
    gap: 9px;
    align-items: center;
    font-size: 13px;
    margin-bottom: 25px;
    opacity: .72
}

.ec-hub-crumb a {
    color: #fff
}

.ec-hub-tag,.ec-hub-kicker {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.7px;
    text-transform: uppercase;
    margin-bottom: 12px
}

.ec-hub-tag {
    color: #c9d2d6
}

.ec-hub-hero h1 {
    max-width: 900px;
    font-size: 46px;
    line-height: 1.08;
    margin: 0 0 16px;
    color: #fff
}

.ec-hub-hero p {
    max-width: 790px;
    font-size: 16px;
    line-height: 1.8;
    color: #d5dcdf;
    margin: 0
}

.ec-hub-actions {
    display: flex;
    gap: 11px;
    flex-wrap: wrap;
    margin-top: 27px
}

.ec-hub-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 27px;
    border-radius: 4px;
    background: #fff;
    color: #061119;
    font-size: 14px;
    font-weight: 700
}

.ec-hub-btn.alt {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.35)
}

.ec-hub-strip {
    border-bottom: 1px solid var(--line);
    background: #fff
}

.ec-hub-strip-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr)
}

.ec-hub-strip-grid div {
    padding: 23px 20px;
    border-right: 1px solid var(--line)
}

.ec-hub-strip-grid div:first-child {
    padding-left: 0
}

.ec-hub-strip-grid div:last-child {
    border-right: 0
}

.ec-hub-strip strong {
    display: block;
    font-size: 20px
}

.ec-hub-strip span {
    font-size: 13px;
    color: var(--muted)
}

.ec-hub-sec {
    padding: 76px 0
}

.ec-hub-sec.soft {
    background: var(--soft)
}

.ec-hub-head {
    max-width: 750px;
    margin-bottom: 34px
}

.ec-hub-kicker {
    color: #56636a
}

.ec-hub h2 {
    font-size: 34px;
    line-height: 1.2;
    margin: 0 0 13px;
    color: #061119
}

.ec-hub h3 {
    color: #061119
}

.ec-hub-head p,.ec-hub-card p,.ec-hub-copy p {
    color: var(--muted);
    line-height: 1.75;
    font-size: 15px
}

.ec-hub-two {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 52px;
    align-items: center
}

.ec-hub-copy ul {
    padding: 0;
    margin: 22px 0 0;
    list-style: none
}

.ec-hub-copy li {
    padding: 11px 0 11px 27px;
    border-bottom: 1px solid var(--line);
    position: relative;
    color: #2b383e
}

.ec-hub-copy li:before {
    content: '✓';
    position: absolute;
    left: 0;
    font-weight: 800
}

.ec-hub-photo {
    height: 410px;
    width: 100%;
    object-fit: cover;
    border-radius: 8px
}

.ec-hub-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px
}

.ec-hub-grid.four {
    grid-template-columns: repeat(4,1fr)
}

.ec-hub-card {
    background: #fff;
    border: 1px solid var(--line);
    padding: 27px;
    border-radius: 7px;
    transition: .2s
}

.ec-hub-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 30px rgba(6,17,25,.08)
}

.ec-hub-card b {
    display: block;
    font-size: 12px;
    letter-spacing: 1px;
    margin-bottom: 12px;
    color: #69777e
}

.ec-hub-card h3 {
    font-size: 19px;
    margin: 0 0 9px
}

.ec-hub-card a {
    font-size: 13px;
    font-weight: 700;
    color: #061119
}

.ec-hub-products .ec-hub-card {
    padding: 0;
    overflow: hidden
}

.ec-hub-products img {
    width: 100%;
    height: 190px;
    object-fit: cover
}

.ec-hub-products .ec-card-body {
    padding: 22px
}

.ec-hub-steps {
    counter-reset: step
}

.ec-hub-steps .ec-hub-card:before {
    counter-increment: step;
    content: '0' counter(step);
    font-size: 13px;
    font-weight: 800;
    color: #829097
}

.ec-hub-faq details {
    background: #fff;
    border-bottom: 1px solid var(--line);
    padding: 20px 0
}

.ec-hub-faq summary {
    cursor: pointer;
    font-weight: 700;
    font-size: 16px
}

.ec-hub-faq details p {
    color: var(--muted);
    line-height: 1.7;
    max-width: 900px
}

.ec-hub-cta {
    background: #061119;
    color: #fff;
    padding: 48px 0
}

.ec-hub-cta-in {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: center
}

.ec-hub-cta h2 {
    color: #fff;
    margin-bottom: 7px
}

.ec-hub-cta p {
    color: #cbd3d6;
    margin: 0
}

@media(max-width: 850px) {
    .ec-hub-hero {
        padding:42px 0
    }

    .ec-hub-hero h1 {
        font-size: 34px
    }

    .ec-hub-strip-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-hub-strip-grid div {
        padding: 18px 10px;
        border-bottom: 1px solid var(--line)
    }

    .ec-hub-sec {
        padding: 52px 0
    }

    .ec-hub-two {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .ec-hub-photo {
        height: 300px
    }

    .ec-hub-grid,.ec-hub-grid.four {
        grid-template-columns: 1fr 1fr
    }

    .ec-hub-cta-in {
        display: block
    }

    .ec-hub-cta .ec-hub-btn {
        margin-top: 22px
    }

    .ec-hub h2 {
        font-size: 28px
    }
}

@media(max-width: 520px) {
    .ec-hub-grid,.ec-hub-grid.four {
        grid-template-columns:1fr
    }

    .ec-hub-hero h1 {
        font-size: 30px
    }
}

/* ===== EARTHCORE DETAILED CATEGORY PAGES ===== */
.ec-cat {
    --ink: #061119;
    --gold: #d5a33c;
    --muted: #66737a;
    --line: #e1e6e8;
    --soft: #f5f6f7;
    background: #fff;
    color: var(--ink)
}

.ec-cat * {
    box-sizing: border-box
}

.ec-cat a {
    text-decoration: none
}

.ec-cat-hero {
    padding: 62px 0 64px;
    background: #061119;
    color: #fff;
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/moisture-white-silica-gel.png) center / cover no-repeat;
}

.ec-cat-crumb {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    font-size: 12px;
    color: #aeb9be;
    margin-bottom: 25px
}

.ec-cat-crumb a {
    color: #d7dde0
}

.ec-cat-label,.ec-cat-kicker,.ec-cat-head>span {
    display: block;
    color: var(--gold);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    margin-bottom: 10px
}

.ec-cat-hero h1 {
    font-size: 48px;
    line-height: 1.08;
    color: #fff;
    max-width: 850px;
    margin: 0 0 16px
}

.ec-cat-hero p {
    max-width: 800px;
    font-size: 15px;
    line-height: 1.8;
    color: #d1d8dc;
    margin: 0
}

.ec-cat-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 27px
}

.ec-cat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 27px;
    border-radius: 4px;
    background: var(--gold);
    color: #061119;
    font-size: 14px;
    font-weight: 700
}

.ec-cat-btn.outline {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.42)
}

.ec-cat-btn.dark {
    background: #061119;
    color: #fff
}

.ec-cat-products,.ec-cat-about,.ec-cat-app,.ec-cat-bulk,.ec-cat-faq {
    padding: 78px 0
}

.ec-cat-head {
    max-width: 780px;
    margin: 0 0 34px
}

.ec-cat-head h2,.ec-cat-about h2,.ec-cat-bulk h2 {
    font-size: 35px;
    line-height: 1.2;
    margin: 0 0 13px;
    color: #061119
}

.ec-cat-head p,.ec-cat-about p,.ec-cat-bulk p {
    font-size: 15px;
    line-height: 1.78;
    color: var(--muted);
    margin: 0
}

.ec-cat-product-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px
}

.ec-cat-product {
    border: 1px solid var(--line);
    background: #fff;
    border-radius: 7px;
    overflow: hidden;
    transition: .2s
}

.ec-cat-product:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(6,17,25,.08)
}

.ec-cat-img {
    height: 245px;
    background: #f4f5f5;
    overflow: hidden
}

.ec-cat-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.ec-cat-body {
    padding: 22px
}

.ec-cat-body h3 {
    font-size: 18px;
    line-height: 1.35;
    margin: 0 0 9px;
    color: #061119
}

.ec-cat-body p {
    font-size: 13px;
    line-height: 1.65;
    color: #6a767c;
    min-height: 64px;
    margin: 0 0 16px
}

.ec-cat-body a {
    font-size: 13px;
    font-weight: 800;
    color: #061119
}

.ec-cat-about {
    background: var(--soft)
}

.ec-cat-about-grid {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 55px;
    align-items: start
}

.ec-cat-about p+p {
    margin-top: 14px
}

.ec-cat-mini {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    margin-top: 30px;
    border: 1px solid #dce2e4;
    background: #fff
}

.ec-cat-mini div {
    padding: 18px;
    border-right: 1px solid #dce2e4
}

.ec-cat-mini div:last-child {
    border: 0
}

.ec-cat-mini b {
    display: block;
    font-size: 20px
}

.ec-cat-mini small {
    font-size: 11px;
    color: #718087
}

.ec-cat-enquiry {
    padding: 30px;
    background: #061119;
    color: #fff;
    border-radius: 7px
}

.ec-cat-enquiry>span {
    font-size: 10px;
    color: #e6bd64;
    letter-spacing: 1.3px;
    font-weight: 800
}

.ec-cat-enquiry h3 {
    font-size: 24px;
    color: #fff;
    margin: 9px 0
}

.ec-cat-enquiry p {
    font-size: 13px;
    color: #c8d0d4
}

.ec-cat-enquiry a {
    display: flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    margin-top: 18px;
    background: var(--gold);
    color: #061119;
    font-size: 13px;
    font-weight: 800;
    border-radius: 4px
}

.ec-cat-enquiry a.sample {
    margin-top: 9px;
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.28)
}

.ec-cat-app {
    background: #fff
}

.ec-cat-app-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 16px
}

.ec-cat-app-grid article {
    border: 1px solid var(--line);
    padding: 26px;
    border-radius: 6px
}

.ec-cat-app-grid span {
    font-size: 12px;
    font-weight: 500;
    color: #a77819
}

.ec-cat-app-grid h3 {
    font-size: 18px;
    margin: 18px 0 9px
}

.ec-cat-app-grid p {
    font-size: 13px;
    line-height: 1.65;
    color: var(--muted);
    margin: 0
}

.ec-cat-facts {
    padding: 58px 0;
    background: #061119
}

.ec-cat-head.light h2 {
    color: #fff
}

.ec-cat-fact-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    border: 1px solid rgba(255,255,255,.14)
}

.ec-cat-fact-grid div {
    padding: 24px;
    border-right: 1px solid rgba(255,255,255,.14)
}

.ec-cat-fact-grid div:last-child {
    border: 0
}

.ec-cat-fact-grid strong {
    display: block;
    color: #fff;
    font-size: 23px;
    margin-bottom: 5px
}

.ec-cat-fact-grid span {
    font-size: 12px;
    color: #bfc9cd
}

.ec-cat-bulk {
    background: #f6f7f8
}

.ec-cat-bulk-grid {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 50px;
    align-items: center
}

.ec-cat-bulk ul {
    list-style: none;
    padding: 0;
    margin: 24px 0 0
}

.ec-cat-bulk li {
    padding: 10px 0 10px 26px;
    border-bottom: 1px solid #dde3e5;
    position: relative;
    font-size: 14px
}

.ec-cat-bulk li:before {
    content: '✓';
    position: absolute;
    left: 0;
    font-weight: 900
}

.ec-cat-bulk-box {
    padding: 31px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 7px
}

.ec-cat-bulk-box h3 {
    font-size: 23px;
    margin: 0 0 10px
}

.ec-cat-bulk-box .ec-cat-btn {
    margin-top: 18px
}

.ec-cat-faq-list {
    max-width: 950px
}

.ec-cat-faq details {
    border-bottom: 1px solid var(--line)
}

.ec-cat-faq summary {
    cursor: pointer;
    list-style: none;
    padding: 20px 2px;
    font-size: 15px;
    font-weight: 700;
    display: flex;
    justify-content: space-between
}

.ec-cat-faq summary:after {
    content: '+';
    font-size: 21px
}

.ec-cat-faq details[open] summary:after {
    content: '−'
}

.ec-cat-faq details p {
    margin: 0;
    padding: 0 2px 20px;
    max-width: 880px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.72
}

.ec-cat-final {
    padding: 55px 0;
    background: #061119;
    color: #fff
}

.ec-cat-final .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px
}

.ec-cat-final span {
    font-size: 10px;
    color: #e6bd64;
    font-weight: 800;
    letter-spacing: 1.3px
}

.ec-cat-final h2 {
    font-size: 31px;
    color: #fff;
    margin: 7px 0
}

.ec-cat-final p {
    font-size: 14px;
    color: #c5cdd1;
    margin: 0
}

.ec-cat-final .ec-cat-btn {
    flex: 0 0 auto
}

@media(max-width: 900px) {
    .ec-cat-hero h1 {
        font-size:39px
    }

    .ec-cat-product-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-cat-about-grid,.ec-cat-bulk-grid {
        grid-template-columns: 1fr
    }

    .ec-cat-app-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-cat-mini,.ec-cat-fact-grid {
        grid-template-columns: 1fr 1fr
    }

    .ec-cat-mini div:nth-child(2),.ec-cat-fact-grid div:nth-child(2) {
        border-right: 0
    }

    .ec-cat-mini div:nth-child(-n+2) {
        border-bottom: 1px solid #dce2e4
    }

    .ec-cat-fact-grid div:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.14)
    }
}

@media(max-width: 560px) {
    .ec-cat-hero {
        padding:44px 0 48px
    }

    .ec-cat-hero h1 {
        font-size: 32px
    }

    .ec-cat-actions {
        display: grid
    }

    .ec-cat-btn {
        width: 100%
    }

    .ec-cat-products,.ec-cat-about,.ec-cat-app,.ec-cat-bulk,.ec-cat-faq {
        padding: 55px 0
    }

    .ec-cat-head h2,.ec-cat-about h2,.ec-cat-bulk h2 {
        font-size: 28px
    }

    .ec-cat-product-grid,.ec-cat-app-grid {
        grid-template-columns: 1fr
    }

    .ec-cat-img {
        height: 230px
    }

    .ec-cat-body p {
        min-height: 0
    }

    .ec-cat-final .container {
        display: block
    }

    .ec-cat-final .ec-cat-btn {
        margin-top: 22px
    }

    .ec-cat-final h2 {
        font-size: 27px
    }
}

/* Detailed Earthcore program / supply pages */
.ec-program-form-layout {
    display: grid;
    grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr);
    gap: 42px;
    align-items: start
}

.ec-program-lead {
    max-width: 760px;
    color: var(--muted);
    line-height: 1.75
}

.ec-program-form {
    margin-top: 25px
}

.ec-program-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px
}

.ec-program-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 13px;
    font-weight: 700;
    color: #26343a
}

.ec-program-form input,.ec-program-form select,.ec-program-form textarea {
    width: 100%;
    border: 1px solid #dbe0e2;
    border-radius: 5px;
    background: #fff;
    color: #061119;
    padding: 14px 15px;
    font: inherit;
    font-size: 14px;
    outline: none
}

.ec-program-form input,.ec-program-form select {
    height: 52px
}

.ec-program-form input:focus,.ec-program-form select:focus,.ec-program-form textarea:focus {
    border-color: #061119;
    box-shadow: 0 0 0 2px rgba(6,17,25,.06)
}

.ec-program-form>label {
    margin-top: 16px
}

.ec-program-submit {
    margin-top: 17px;
    min-height: 52px;
    padding: 0 28px;
    border: 0;
    border-radius: 4px;
    background: #061119;
    color: #fff;
    font-weight: 700;
    cursor: pointer
}

.ec-program-form small {
    display: block;
    margin-top: 10px;
    color: #78848a
}

.ec-program-aside {
    background: #f5f6f6;
    border: 1px solid #e1e5e6;
    border-radius: 8px;
    padding: 29px;
    position: sticky;
    top: 105px
}

.ec-program-aside h3 {
    font-size: 23px;
    margin: 0 0 17px
}

.ec-program-aside ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.ec-program-aside li {
    padding: 11px 0 11px 24px;
    border-bottom: 1px solid #dde2e4;
    position: relative;
    font-size: 14px
}

.ec-program-aside li:before {
    content: '✓';
    position: absolute;
    left: 0;
    font-weight: 800;
    color: #061119
}

.ec-program-contact {
    margin-top: 25px;
    padding: 20px;
    background: #061119;
    color: #fff;
    border-radius: 6px
}

.ec-program-contact b {
    display: block;
    margin-bottom: 10px
}

.ec-program-contact a {
    display: block;
    color: #fff;
    margin-top: 8px;
    font-size: 14px
}

.ec-program-page .ec-hub-steps .ec-hub-card b {
    font-size: 13px
}

.ec-program-page .ec-hub-grid:not(.four) .ec-hub-card {
    min-height: 190px
}

@media(max-width: 850px) {
    .ec-program-form-layout {
        grid-template-columns:1fr
    }

    .ec-program-aside {
        position: static
    }

    .ec-program-fields {
        grid-template-columns: 1fr
    }
}

/*breadcrumb*/
section.ec-hub-hero.agriculture-soil-health {
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/organic-bentonite-granules.png) center / cover no-repeat;
}

section.ec-hub-hero.fertilizer-manufacturing {
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/bentonite-fertilizer-granules.png) center / cover no-repeat;
}

section.ec-hub-hero.foundry-casting {
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/bentonite-powder.png) center / cover no-repeat;
}

section.ec-hub-hero.cat-litter-pet-care {
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/bentonite-cat-litter.png) center / cover no-repeat;
}

section.ec-hub-hero.construction-civil {
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/bentonite-absorbent-granules.png) center / cover no-repeat;
}

section.ec-hub-hero.glass-ceramics {
    background: linear-gradient(90deg, rgba(6, 17, 25, .94), rgba(6, 17, 25, .76) 48%, rgba(6, 17, 25, .34)), url(../images/dolomite-powder.png) center / cover no-repeat;
}

/* Earthcore Blogs */
.ec-blog-hero,.ec-blog-detail-hero {
    position: relative;
    background: linear-gradient(90deg,rgba(6,17,25,.96),rgba(6,17,25,.77) 55%,rgba(6,17,25,.42)),url('../images/quarryCrusherPelletPiles.png') center/cover no-repeat;
    color: #fff
}

.ec-blog-hero {
    padding: 78px 0 82px
}

.ec-blog-detail-hero {
    padding: 68px 0 72px
}

.ec-blog-hero .crumbs,.ec-blog-detail-hero .crumbs {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 12px;
    margin-bottom: 30px;
    color: #dce3e6
}

.ec-blog-hero .crumbs a,.ec-blog-detail-hero .crumbs a {
    color: #e9bd60
}

.ec-blog-kicker {
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
    color: #e7b957;
    margin-bottom: 12px
}

.ec-blog-hero h1,.ec-blog-detail-hero h1 {
    color: #fff;
    margin: 0 0 15px;
    line-height: 1.12
}

.ec-blog-hero h1 {
    font-size: 48px
}

.ec-blog-detail-hero h1 {
    font-size: 43px;
    max-width: 920px
}

.ec-blog-hero p,.ec-blog-detail-hero p {
    max-width: 780px;
    color: #d8e0e3;
    font-size: 15px;
    line-height: 1.75;
    margin: 0
}

.ec-blog-byline {
    display: flex;
    gap: 22px;
    margin-top: 22px;
    font-size: 12px;
    color: #bdc8cc
}

.ec-blog-list {
    padding: 76px 0 86px;
    background: #f6f7f8
}

.ec-blog-heading {
    max-width: 730px;
    margin-bottom: 34px
}

.ec-blog-heading>span {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.3px;
    color: #a77819
}

.ec-blog-heading h2 {
    font-size: 35px;
    margin: 8px 0 10px;
    color: #061119
}

.ec-blog-heading p {
    font-size: 15px;
    line-height: 1.7;
    color: #69767c;
    margin: 0
}

.ec-blog-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 24px
}

.ec-blog-card {
    background: #fff;
    border: 1px solid #e0e5e7;
    border-radius: 9px;
    overflow: hidden;
    transition: .25s
}

.ec-blog-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(6,17,25,.08)
}

.ec-blog-img {
    display: block;
    height: 285px;
    overflow: hidden;
    background: #edf0f1
}

.ec-blog-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: .4s
}

.ec-blog-card:hover .ec-blog-img img {
    transform: scale(1.035)
}

.ec-blog-card-body {
    padding: 25px 26px 27px
}

.ec-blog-meta {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .7px;
    color: #9a6e17;
    font-weight: 800;
    margin-bottom: 13px
}

.ec-blog-card h2 {
    font-size: 21px;
    line-height: 1.38;
    margin: 0 0 10px
}

.ec-blog-card h2 a {
    color: #061119
}

.ec-blog-card p {
    font-size: 14px;
    line-height: 1.7;
    color: #68757b;
    margin: 0 0 18px
}

.ec-blog-read {
    font-size: 13px;
    font-weight: 800;
    color: #061119
}

.ec-blog-detail {
    padding: 72px 0 88px;
    background: #fff
}

.ec-blog-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 310px;
    gap: 52px;
    align-items: start
}

.ec-blog-featured {
    width: 100%;
    height: 430px;
    object-fit: cover;
    border-radius: 8px;
    margin-bottom: 32px
}

.ec-blog-article>p {
    font-size: 15px;
    line-height: 1.85;
    color: #536168;
    margin: 0 0 20px
}

.ec-blog-article>h2 {
    font-size: 28px;
    line-height: 1.3;
    color: #061119;
    margin: 38px 0 13px
}

.ec-blog-article>ul {
    margin: 0 0 24px;
    padding: 0;
    list-style: none
}

.ec-blog-article>ul li {
    position: relative;
    padding: 9px 0 9px 27px;
    border-bottom: 1px solid #edf0f1;
    font-size: 14px;
    color: #526067
}

.ec-blog-article>ul li:before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #a77819;
    font-weight: 900
}

.ec-blog-callout {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 22px 24px;
    border-left: 4px solid #c89431;
    background: #f7f5ef;
    margin: 28px 0
}

.ec-blog-callout strong {
    font-size: 15px;
    color: #061119
}

.ec-blog-callout span {
    font-size: 13px;
    line-height: 1.7;
    color: #68747a
}

.ec-blog-compare {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 26px 0
}

.ec-blog-compare div {
    padding: 21px;
    border: 1px solid #dfe5e7;
    border-radius: 6px
}

.ec-blog-compare strong {
    display: block;
    font-size: 14px;
    color: #061119;
    margin-bottom: 7px
}

.ec-blog-compare span {
    font-size: 13px;
    line-height: 1.6;
    color: #68757b
}

.ec-blog-aside {
    position: sticky;
    top: 105px;
    display: grid;
    gap: 18px
}

.ec-blog-sidebox {
    border: 1px solid #e0e5e7;
    border-radius: 7px;
    padding: 25px;
    background: #f8f9f9
}

.ec-blog-sidebox>span {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.2px;
    color: #a77819
}

.ec-blog-sidebox h3 {
    font-size: 21px;
    margin: 8px 0 15px;
    color: #061119
}

.ec-blog-sidebox>a:not(.ec-blog-sidebtn) {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 0;
    border-top: 1px solid #e0e5e7;
    font-size: 12px;
    line-height: 1.45;
    font-weight: 700;
    color: #34444b
}

.ec-blog-sidebox>a span {
    white-space: nowrap;
    color: #9a6e17
}

.ec-blog-sidebox.dark {
    background: #061119;
    color: #fff;
    border-color: #061119
}

.ec-blog-sidebox.dark h3 {
    color: #fff
}

.ec-blog-sidebox.dark p {
    font-size: 13px;
    line-height: 1.65;
    color: #c6d0d4
}

.ec-blog-sidebtn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin-top: 17px;
    background: #d2a13f;
    color: #061119;
    font-size: 13px;
    font-weight: 800;
    border-radius: 4px
}

.ec-blog-cta {
    margin-top: 45px;
    padding: 32px;
    background: #061119;
    border-radius: 8px;
    color: #fff
}

.ec-blog-cta>span {
    font-size: 10px;
    letter-spacing: 1.2px;
    color: #e7b957;
    font-weight: 800
}

.ec-blog-cta h2 {
    font-size: 25px;
    color: #fff;
    margin: 8px 0 9px
}

.ec-blog-cta p {
    font-size: 13px;
    line-height: 1.65;
    color: #c8d1d5;
    margin: 0
}

.ec-blog-cta a {
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    padding: 0 22px;
    margin-top: 18px;
    background: #d2a13f;
    color: #061119;
    font-size: 13px;
    font-weight: 800;
    border-radius: 4px
}

@media(max-width: 900px) {
    .ec-blog-grid {
        grid-template-columns:1fr 1fr
    }

    .ec-blog-layout {
        grid-template-columns: 1fr
    }

    .ec-blog-aside {
        position: static;
        grid-template-columns: 1fr 1fr
    }

    .ec-blog-detail-hero h1 {
        font-size: 37px
    }
}

@media(max-width: 620px) {
    .ec-blog-hero {
        padding:55px 0 60px
    }

    .ec-blog-hero h1 {
        font-size: 36px
    }

    .ec-blog-detail-hero {
        padding: 50px 0 54px
    }

    .ec-blog-detail-hero h1 {
        font-size: 31px
    }

    .ec-blog-grid {
        grid-template-columns: 1fr
    }

    .ec-blog-img {
        height: 235px
    }

    .ec-blog-list,.ec-blog-detail {
        padding: 55px 0
    }

    .ec-blog-featured {
        height: 280px
    }

    .ec-blog-article>h2 {
        font-size: 24px
    }

    .ec-blog-aside,.ec-blog-compare {
        grid-template-columns: 1fr
    }
}

/* Contact form mail status + Thank You page */
.ec-hp {
    position: absolute!important;
    left: -9999px!important;
    width: 1px!important;
    height: 1px!important;
    opacity: 0!important;
    pointer-events: none!important
}

.ec-form-error {
    margin: 22px 31px 0;
    padding: 12px 14px;
    border: 1px solid #e7c4c4;
    border-radius: 5px;
    background: #fff4f4;
    color: #8a2424;
    font-size: 13px;
    line-height: 1.5
}

.ec-thankyou {
    background: #f5f6f7
}

.ec-thankyou-hero {
    min-height: 680px;
    padding: 90px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(90deg,rgba(6,17,25,.93),rgba(6,17,25,.68)),url('../images/quarryCrusherPelletPiles.png') center/cover no-repeat
}

.ec-thankyou-card {
    width: min(760px,100%);
    padding: 52px 55px;
    text-align: center;
    background: rgba(255,255,255,.97);
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(0,0,0,.25)
}

.ec-thankyou-check {
    width: 72px;
    height: 72px;
    margin: 0 auto 22px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #061119;
    color: #d6a137;
    font-size: 34px;
    font-weight: 800
}

.ec-thankyou-kicker {
    display: block;
    color: #b98216;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    margin-bottom: 12px
}

.ec-thankyou h1 {
    margin: 0 0 17px;
    color: #061119;
    font-size: 42px;
    line-height: 1.15
}

.ec-thankyou p {
    max-width: 620px;
    margin: 0 auto;
    color: #66716c;
    font-size: 15px;
    line-height: 1.8
}

.ec-thankyou-actions {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 29px
}

.ec-thankyou-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 27px;
    border: 1px solid #061119;
    border-radius: 5px;
    color: #061119;
    font-size: 14px;
    font-weight: 700
}

.ec-thankyou-help {
    margin-top: 30px;
    padding-top: 23px;
    border-top: 1px solid #e2e6e4;
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 13px
}

.ec-thankyou-help span {
    color: #7b8580
}

.ec-thankyou-help a {
    color: #061119;
    font-weight: 700
}

@media(max-width: 600px) {
    .ec-form-error {
        margin:18px 20px 0
    }

    .ec-thankyou-hero {
        min-height: 600px;
        padding: 60px 16px
    }

    .ec-thankyou-card {
        padding: 38px 22px
    }

    .ec-thankyou h1 {
        font-size: 31px
    }

    .ec-thankyou-actions {
        display: grid
    }

    .ec-thankyou-actions a {
        width: 100%
    }
}
