/* ==========================================
   INDUS PLYWOODS - CONTACT PAGE
========================================== */

:root {
    --contact-green: #124832;
    --contact-green-dark: #0D3927;
    --contact-gold: #B88B43;
    --contact-cream: #FAF8F2;
    --contact-white: #FFFFFF;
    --contact-text: #31463D;
    --contact-muted: #718078;
    --contact-border: #E9E3D8;
}


/* RESET */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "DM Sans", sans-serif;
    background: var(--contact-cream);
    color: var(--contact-text);
    line-height: 1.7;
    overflow-x: hidden;
}

body,
input,
select,
textarea,
button {
    font-family: "DM Sans", sans-serif;
}

a {
    text-decoration: none;
    color: inherit;
}

button,
input,
select,
textarea {
    font: inherit;
}

.contact-container {
    width: min(1380px, 88%);
    margin: 0 auto;
}


/* ==========================================
   CONTACT HERO
========================================== */

.contact-hero {
    background: var(--contact-cream);
    padding: 100px 0 105px;
    position: relative;
    overflow: hidden;
}

.contact-hero::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: rgba(184, 139, 67, 0.055);
    top: -190px;
    right: -90px;
    pointer-events: none;
}

.contact-hero .contact-container {
    display: grid;
    grid-template-columns: 1.08fr 0.92fr;
    align-items: center;
    gap: 85px;
    position: relative;
    z-index: 1;
}


/* Eyebrow */

.contact-eyebrow {
    display: flex;
    align-items: center;
    gap: 15px;
    color: #A7782E;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 24px;
}

.contact-eyebrow span {
    width: 42px;
    height: 2px;
    background: var(--contact-gold);
    display: inline-block;
    flex-shrink: 0;
}


/* Hero Heading */

.contact-hero-content h1 {
    color: var(--contact-green);
    font-family: "Manrope", sans-serif;
    font-size: clamp(42px, 4.5vw, 68px);
    font-weight: 800;
    line-height: 1.13;
    letter-spacing: -2.5px;
    margin-bottom: 27px;
}

.contact-hero-content h1 > span {
    color: var(--contact-gold);
}

.contact-hero-content h1 strong {
    color: var(--contact-gold);
    font-weight: 800;
}

.contact-hero-description {
    font-size: 17px;
    line-height: 1.95;
    color: #344A40;
    max-width: 680px;
    margin-bottom: 18px;
}

.contact-hero-subtext {
    font-size: 15px;
    line-height: 1.9;
    color: var(--contact-muted);
    margin-bottom: 32px;
}


/* Primary Button */

.contact-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    padding: 17px 25px;
    min-height: 62px;
    background: var(--contact-green);
    color: var(--contact-white);
    border: 1px solid var(--contact-green);
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    transition: 0.3s ease;
}

.contact-primary-btn i {
    font-size: 15px;
    transition: transform 0.3s ease;
}

.contact-primary-btn:hover {
    background: var(--contact-green-dark);
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(18, 72, 50, 0.13);
}

.contact-primary-btn:hover i {
    transform: translateX(4px);
}


/* Hero Visual */

.contact-hero-visual {
    position: relative;
    padding: 22px;
}

.contact-visual-card {
    position: relative;
    z-index: 2;
    background: var(--contact-white);
    border: 1px solid var(--contact-border);
    border-top: 4px solid var(--contact-gold);
    border-radius: 5px;
    padding: 38px;
    box-shadow: 0 20px 60px rgba(30, 50, 38, 0.055);
}

.contact-visual-top {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-bottom: 30px;
}

.contact-visual-icon {
    width: 65px;
    height: 65px;
    background: #F7F0E3;
    color: var(--contact-gold);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    flex-shrink: 0;
}

.contact-visual-top > span {
    color: #A7782E;
    font-size: 11px;
    letter-spacing: 2px;
    font-weight: 700;
}

.contact-visual-card h2 {
    color: var(--contact-green);
    font-family: "Manrope", sans-serif;
    font-size: 29px;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 12px;
}

.contact-visual-card > p {
    color: var(--contact-muted);
    font-size: 14px;
    line-height: 1.9;
}

.contact-visual-divider {
    height: 1px;
    background: var(--contact-border);
    margin: 27px 0 10px;
}


/* Quick Links */

.contact-quick-link {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 17px 0;
    border-bottom: 1px solid #F0ECE4;
    transition: 0.3s ease;
}

.contact-quick-link:last-child {
    border-bottom: none;
}

.quick-link-icon {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F7F2E8;
    color: var(--contact-gold);
    border-radius: 4px;
    flex-shrink: 0;
}

.contact-quick-link > span:nth-child(2) {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.contact-quick-link small {
    font-size: 12px;
    color: var(--contact-muted);
    margin-bottom: 3px;
}

.contact-quick-link strong {
    color: var(--contact-green);
    font-size: 15px;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.quick-arrow {
    color: var(--contact-gold);
    font-size: 13px;
    transition: transform 0.3s ease;
}

.contact-quick-link:hover .quick-arrow {
    transform: translate(3px, -3px);
}


/* Decorations */

.contact-decoration {
    position: absolute;
    border: 1px solid rgba(184, 139, 67, 0.35);
    border-radius: 5px;
}

.decoration-one {
    width: 115px;
    height: 115px;
    top: -3px;
    right: -4px;
}

.decoration-two {
    width: 80px;
    height: 80px;
    bottom: -1px;
    left: -4px;
}


/* ==========================================
   CONTACT INFORMATION
========================================== */

.contact-information {
    padding: 95px 0 105px;
    background: #FFFFFF;
}

.contact-section-heading {
    max-width: 760px;
    margin-bottom: 45px;
}

.contact-section-heading .contact-eyebrow {
    margin-bottom: 18px;
}

.contact-section-heading h2 {
    color: var(--contact-green);
    font-family: "Manrope", sans-serif;
    font-size: clamp(31px, 3.5vw, 45px);
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: -1px;
    margin-bottom: 15px;
}

.contact-section-heading h2 span {
    color: var(--contact-gold);
}

.contact-section-heading > p {
    font-size: 15px;
    line-height: 1.9;
    color: var(--contact-muted);
    max-width: 650px;
}


/* Information Cards */

.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

.contact-info-card {
    background: var(--contact-cream);
    border: 1px solid var(--contact-border);
    border-radius: 4px;
    padding: 33px 28px;
    transition: 0.3s ease;
    position: relative;
}

.contact-info-card::before {
    content: "";
    width: 0;
    height: 3px;
    background: var(--contact-gold);
    position: absolute;
    left: 0;
    top: -1px;
    transition: width 0.3s ease;
}

.contact-info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(18, 72, 50, 0.07);
}

.contact-info-card:hover::before {
    width: 100%;
}

.contact-info-icon {
    width: 59px;
    height: 59px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F4EBDD;
    color: var(--contact-gold);
    font-size: 22px;
    border-radius: 4px;
    margin-bottom: 25px;
}

.contact-card-label {
    display: block;
    color: #A7782E;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.8px;
    margin-bottom: 9px;
}

.contact-info-card h3 {
    color: var(--contact-green);
    font-family: "Manrope", sans-serif;
    font-size: 21px;
    font-weight: 800;
    margin-bottom: 10px;
}

.contact-info-card > p {
    color: var(--contact-muted);
    font-size: 13px;
    line-height: 1.9;
    min-height: 74px;
    margin-bottom: 18px;
}

.contact-detail-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: var(--contact-green);
    font-size: 13px;
    font-weight: 700;
    padding: 12px 0;
    border-top: 1px solid var(--contact-border);
    overflow-wrap: anywhere;
}

.contact-detail-link i {
    color: var(--contact-gold);
    font-size: 12px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.contact-detail-link:hover i {
    transform: translateX(4px);
}

.secondary-link {
    padding-bottom: 0;
}

.contact-card-note {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: var(--contact-muted);
    padding-top: 14px;
}

.contact-card-note i {
    color: var(--contact-gold);
}


/* ==========================================
   ENQUIRY SECTION
========================================== */

.contact-enquiry-section {
    background: var(--contact-cream);
    padding: 105px 0;
}

.contact-enquiry-grid {
    display: grid;
    grid-template-columns: 0.88fr 1.12fr;
    gap: 80px;
    align-items: start;
}


/* Left Side */

.contact-enquiry-content {
    padding-top: 20px;
}

.contact-enquiry-content h2 {
    font-family: "Manrope", sans-serif;
    color: var(--contact-green);
    font-size: clamp(37px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -1.5px;
    margin-bottom: 25px;
}

.contact-enquiry-content h2 span {
    color: var(--contact-gold);
}

.contact-enquiry-content > p {
    color: var(--contact-muted);
    font-size: 15px;
    line-height: 1.95;
    margin-bottom: 17px;
}

.contact-enquiry-points {
    display: grid;
    gap: 16px;
    margin-top: 30px;
}

.contact-enquiry-points > div {
    display: flex;
    align-items: center;
    gap: 13px;
    color: var(--contact-green);
    font-size: 14px;
    font-weight: 600;
}

.contact-enquiry-points > div > span {
    width: 27px;
    height: 27px;
    background: #E8EDE5;
    color: var(--contact-green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    flex-shrink: 0;
}


/* Callout */

.contact-enquiry-callout {
    margin-top: 40px;
    padding: 22px;
    display: flex;
    align-items: center;
    gap: 17px;
    background: #F1EBDD;
    border-left: 3px solid var(--contact-gold);
}

.callout-icon {
    width: 48px;
    height: 48px;
    background: var(--contact-white);
    color: var(--contact-gold);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    font-size: 19px;
    flex-shrink: 0;
}

.contact-enquiry-callout > div:last-child {
    display: flex;
    flex-direction: column;
}

.contact-enquiry-callout strong {
    color: var(--contact-green);
    font-size: 13px;
    margin-bottom: 4px;
}

.contact-enquiry-callout a {
    color: #A7782E;
    font-size: 15px;
    font-weight: 700;
}


/* Form Card */

.contact-form-card {
    background: var(--contact-white);
    border: 1px solid var(--contact-border);
    border-radius: 5px;
    padding: 43px;
    box-shadow: 0 20px 60px rgba(30, 50, 38, 0.045);
}

.contact-form-heading {
    margin-bottom: 30px;
    padding-bottom: 25px;
    border-bottom: 1px solid var(--contact-border);
}

.contact-form-heading > span {
    color: #A7782E;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.contact-form-heading h3 {
    color: var(--contact-green);
    font-family: "Manrope", sans-serif;
    font-size: 27px;
    font-weight: 800;
    margin: 8px 0;
}

.contact-form-heading p {
    color: var(--contact-muted);
    font-size: 13px;
}


/* Form Fields */

.contact-form-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 21px;
}

.contact-form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 21px;
    min-width: 0;
}

.contact-form-row .contact-form-group {
    margin-bottom: 0;
}

.contact-form-group label {
    color: var(--contact-green);
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 9px;
}

.contact-form-group label span {
    color: var(--contact-gold);
}

.contact-form-group input,
.contact-form-group select,
.contact-form-group textarea {
    width: 100%;
    min-width: 0;
    border: 1px solid #E4E0D8;
    background: #FDFCF9;
    border-radius: 3px;
    padding: 14px 15px;
    font-size: 13px;
    color: var(--contact-text);
    outline: none;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.contact-form-group input,
.contact-form-group select {
    min-height: 51px;
}

.contact-form-group textarea {
    resize: vertical;
    min-height: 135px;
}

.contact-form-group input::placeholder,
.contact-form-group textarea::placeholder {
    color: #A0A69F;
}

.contact-form-group input:focus,
.contact-form-group select:focus,
.contact-form-group textarea:focus {
    border-color: var(--contact-gold);
    box-shadow: 0 0 0 3px rgba(184, 139, 67, 0.10);
    background: #FFFFFF;
}


/* Submit Button */

.contact-submit-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 17px 22px;
    background: var(--contact-green);
    color: var(--contact-white);
    border: 1px solid var(--contact-green);
    border-radius: 3px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    transition: 0.3s ease;
}

.contact-submit-btn i {
    transition: transform 0.3s ease;
}

.contact-submit-btn:hover {
    background: var(--contact-green-dark);
}

.contact-submit-btn:hover i {
    transform: translateX(5px);
}

.contact-form-disclaimer {
    margin-top: 17px;
    color: #8B948D;
    font-size: 11px;
    line-height: 1.8;
}


/* ==========================================
   LOCATION SECTION
========================================== */

.contact-location-section {
    background: #FFFFFF;
    padding: 100px 0;
}

.location-heading {
    margin-bottom: 40px;
}

.contact-location-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 30px;
    align-items: stretch;
}


/* Location Details */

.contact-location-details {
    background: var(--contact-cream);
    border: 1px solid var(--contact-border);
    padding: 36px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.location-details-top {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 22px;
}

.location-details-top .contact-info-icon {
    width: 49px;
    height: 49px;
    margin: 0;
}

.location-details-top > span {
    color: #A7782E;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.3px;
}

.contact-location-details h3 {
    font-family: "Manrope", sans-serif;
    font-size: 25px;
    font-weight: 800;
    color: var(--contact-green);
    margin-bottom: 14px;
}

.location-address {
    color: var(--contact-muted);
    font-size: 14px;
    line-height: 1.95;
}

.location-divider {
    width: 100%;
    height: 1px;
    background: var(--contact-border);
    margin: 25px 0;
}

.location-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 22px;
    width: 100%;
}

.location-contact-item > i {
    color: var(--contact-gold);
    font-size: 17px;
    margin-top: 5px;
    width: 20px;
    flex-shrink: 0;
}

.location-contact-item > div {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.location-contact-item small {
    color: var(--contact-muted);
    font-size: 12px;
    margin-bottom: 3px;
}

.location-contact-item a {
    color: var(--contact-green);
    font-size: 13px;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.location-contact-item a:hover {
    color: #A7782E;
}


/* Map Button */

.contact-map-btn {
    margin-top: 8px;
    padding: 14px 19px;
    background: var(--contact-green);
    color: #FFFFFF;
    display: inline-flex;
    align-items: center;
    gap: 20px;
    font-size: 13px;
    font-weight: 700;
    border-radius: 3px;
    transition: 0.3s ease;
}

.contact-map-btn i {
    color: #E2C17F;
}

.contact-map-btn:hover {
    background: var(--contact-green-dark);
    transform: translateY(-2px);
}


/* Map */

.contact-map-container {
    min-height: 430px;
    overflow: hidden;
    border: 1px solid var(--contact-border);
    border-radius: 4px;
    background: #F3F0E9;
}

.contact-map-container iframe {
    width: 100%;
    height: 100%;
    min-height: 430px;
    border: 0;
    display: block;
}


/* ==========================================
   BOTTOM CTA
========================================== */

.contact-bottom-cta {
    padding: 65px 0;
    background: var(--contact-green);
    position: relative;
    overflow: hidden;
}

.contact-bottom-cta::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border: 1px solid rgba(226, 193, 127, 0.15);
    border-radius: 50%;
    right: -100px;
    top: -100px;
    pointer-events: none;
}

.contact-bottom-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    position: relative;
    z-index: 1;
}

.contact-bottom-cta-inner > div > span {
    color: #E0BD78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.contact-bottom-cta h2 {
    color: #FFFFFF;
    font-family: "Manrope", sans-serif;
    font-size: clamp(27px, 3vw, 39px);
    line-height: 1.35;
    font-weight: 700;
    margin: 12px 0;
}

.contact-bottom-cta h2 strong {
    color: #E0BD78;
    font-weight: 800;
}

.contact-bottom-cta p {
    color: rgba(255, 255, 255, 0.78);
    font-size: 14px;
    line-height: 1.8;
}

.contact-cta-btn {
    padding: 17px 24px;
    background: #FFFFFF;
    color: var(--contact-green);
    border-radius: 3px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 700;
    flex-shrink: 0;
    transition: 0.3s ease;
}

.contact-cta-btn i {
    color: var(--contact-gold);
}

.contact-cta-btn:hover {
    background: #F4EBDD;
    transform: translateY(-3px);
}


/* ==========================================
   FOOTER
========================================== */

.contact-footer {
    background: #092B1D;
    color: #FFFFFF;
    padding: 65px 0 0;
}

.contact-footer-main {
    display: grid;
    grid-template-columns: 1.3fr 0.8fr 1fr;
    gap: 70px;
    padding-bottom: 48px;
}

.contact-footer-brand {
    max-width: 350px;
}

.contact-footer-logo {
    display: inline-flex;
    align-items: center;
    margin-bottom: 20px;
}

.contact-footer-logo img {
    width: 270px;
    max-width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}

.contact-footer-brand p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
    line-height: 1.9;
}

.contact-footer-column h4 {
    color: #E0BD78;
    font-family: "Manrope", sans-serif;
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 20px;
}

.contact-footer-column > a {
    display: block;
    color: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    line-height: 1.9;
    margin-bottom: 12px;
    overflow-wrap: anywhere;
    transition: color 0.3s ease;
}

.contact-footer-column > a:hover {
    color: #E0BD78;
}

.contact-footer-column > p {
    color: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    line-height: 1.9;
    margin-bottom: 15px;
}

.contact-footer-column > a i {
    color: #E0BD78;
    margin-left: 5px;
}

.contact-footer-bottom {
    min-height: 70px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.contact-footer-bottom p {
    color: rgba(255, 255, 255, 0.6);
    font-size: 12px;
}

.contact-footer-bottom a {
    color: #E0BD78;
    font-size: 12px;
    font-weight: 600;
}

.contact-footer-bottom a i {
    margin-left: 5px;
}


/* ==========================================
   TABLET RESPONSIVE
========================================== */

@media (max-width: 1100px) {

    .contact-hero .contact-container {
        gap: 40px;
    }

    .contact-hero-content h1 {
        font-size: 51px;
    }

    .contact-visual-card {
        padding: 28px;
    }

    .contact-enquiry-grid {
        gap: 45px;
    }

    .contact-form-card {
        padding: 30px;
    }

    .contact-info-card {
        padding: 27px 23px;
    }

    .contact-footer-main {
        gap: 35px;
    }

}


/* ==========================================
   TABLET / SMALL LAPTOP
========================================== */

@media (max-width: 850px) {

    .contact-container {
        width: 90%;
    }

    .contact-hero {
        padding: 75px 0 85px;
    }

    .contact-hero .contact-container {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .contact-hero-content {
        max-width: 720px;
    }

    .contact-hero-content h1 {
        font-size: 56px;
    }

    .contact-hero-visual {
        width: 100%;
        max-width: 620px;
        margin: 0 auto;
    }

    .contact-information,
    .contact-enquiry-section,
    .contact-location-section {
        padding: 75px 0;
    }

    .contact-info-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-info-card:last-child {
        grid-column: 1 / -1;
    }

    .contact-info-card > p {
        min-height: auto;
    }

    .contact-enquiry-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .contact-enquiry-content {
        max-width: 680px;
    }

    .contact-form-card {
        width: 100%;
    }

    .contact-location-grid {
        grid-template-columns: 1fr;
    }

    .contact-location-details {
        padding: 32px;
    }

    .contact-map-container,
    .contact-map-container iframe {
        min-height: 380px;
    }

    .contact-bottom-cta-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 25px;
    }

    .contact-footer-main {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }

    .contact-footer-brand {
        grid-column: 1 / -1;
        max-width: 500px;
    }

}


/* ==========================================
   MOBILE RESPONSIVE
========================================== */

@media (max-width: 576px) {

    .contact-container {
        width: 90%;
    }

    .contact-hero {
        padding: 58px 0 65px;
    }

    .contact-eyebrow {
        gap: 10px;
        font-size: 10px;
        letter-spacing: 2px;
        margin-bottom: 19px;
    }

    .contact-eyebrow span {
        width: 30px;
    }

    .contact-hero-content h1 {
        font-size: clamp(36px, 9vw, 46px);
        letter-spacing: -1.5px;
        margin-bottom: 21px;
    }

    .contact-hero-description {
        font-size: 14px;
        line-height: 1.9;
    }

    .contact-hero-subtext {
        font-size: 13px;
    }

    .contact-primary-btn {
        min-height: 55px;
        padding: 15px 19px;
        gap: 20px;
        font-size: 13px;
    }

    .contact-hero-visual {
        padding: 10px;
    }

    .contact-visual-card {
        padding: 25px 20px;
    }

    .contact-visual-icon {
        width: 54px;
        height: 54px;
        font-size: 21px;
    }

    .contact-visual-top {
        gap: 12px;
        margin-bottom: 23px;
    }

    .contact-visual-top > span {
        font-size: 9px;
        letter-spacing: 1.5px;
    }

    .contact-visual-card h2 {
        font-size: 24px;
    }

    .contact-visual-card > p {
        font-size: 13px;
    }

    .contact-quick-link {
        gap: 11px;
    }

    .quick-link-icon {
        width: 39px;
        height: 39px;
    }

    .contact-quick-link strong {
        font-size: 12px;
    }

    .contact-quick-link small {
        font-size: 11px;
    }

    .quick-arrow {
        font-size: 11px;
    }

    .decoration-one {
        width: 70px;
        height: 70px;
    }

    .decoration-two {
        width: 55px;
        height: 55px;
    }


    /* Information */

    .contact-information,
    .contact-enquiry-section,
    .contact-location-section {
        padding: 60px 0;
    }

    .contact-section-heading {
        margin-bottom: 30px;
    }

    .contact-section-heading h2 {
        font-size: 30px;
        letter-spacing: -0.7px;
    }

    .contact-section-heading > p {
        font-size: 13px;
    }

    .contact-info-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .contact-info-card:last-child {
        grid-column: auto;
    }

    .contact-info-card {
        padding: 26px 23px;
    }

    .contact-info-icon {
        width: 51px;
        height: 51px;
        font-size: 19px;
        margin-bottom: 20px;
    }

    .contact-info-card h3 {
        font-size: 20px;
    }

    .contact-info-card > p {
        font-size: 13px;
        margin-bottom: 14px;
    }


    /* Enquiry */

    .contact-enquiry-grid {
        gap: 35px;
    }

    .contact-enquiry-content {
        padding-top: 0;
    }

    .contact-enquiry-content h2 {
        font-size: 37px;
    }

    .contact-enquiry-content > p {
        font-size: 13px;
    }

    .contact-enquiry-points > div {
        font-size: 13px;
    }

    .contact-enquiry-callout {
        padding: 17px;
        gap: 12px;
    }

    .contact-enquiry-callout strong {
        font-size: 12px;
    }

    .contact-enquiry-callout a {
        font-size: 13px;
    }

    .contact-form-card {
        padding: 25px 20px;
    }

    .contact-form-heading {
        margin-bottom: 24px;
        padding-bottom: 20px;
    }

    .contact-form-heading h3 {
        font-size: 23px;
    }

    .contact-form-heading p {
        font-size: 12px;
        line-height: 1.8;
    }

    .contact-form-row {
        grid-template-columns: 1fr;
        gap: 19px;
        margin-bottom: 19px;
    }

    .contact-form-group label {
        font-size: 12px;
    }

    .contact-form-group input,
    .contact-form-group select,
    .contact-form-group textarea {
        padding: 13px;
        font-size: 13px;
    }

    .contact-form-group input,
    .contact-form-group select {
        min-height: 48px;
    }

    .contact-form-group textarea {
        min-height: 120px;
    }

    .contact-submit-btn {
        padding: 16px;
        font-size: 13px;
    }


    /* Location */

    .contact-location-details {
        padding: 25px 20px;
    }

    .contact-location-details h3 {
        font-size: 22px;
    }

    .location-details-top {
        align-items: flex-start;
    }

    .location-details-top > span {
        max-width: 190px;
        align-self: center;
        font-size: 9px;
    }

    .location-address {
        font-size: 13px;
    }

    .location-contact-item a {
        font-size: 12px;
    }

    .contact-map-container,
    .contact-map-container iframe {
        min-height: 320px;
    }


    /* Bottom CTA */

    .contact-bottom-cta {
        padding: 50px 0;
    }

    .contact-bottom-cta h2 {
        font-size: 28px;
    }

    .contact-bottom-cta p {
        font-size: 13px;
    }

    .contact-cta-btn {
        padding: 15px 18px;
        gap: 17px;
        font-size: 12px;
    }


    /* Footer */

    .contact-footer {
        padding-top: 48px;
    }

    .contact-footer-main {
        grid-template-columns: 1fr;
        gap: 32px;
        padding-bottom: 32px;
    }

    .contact-footer-brand {
        grid-column: auto;
    }

    .contact-footer-logo img {
        width: 235px;
    }

    .contact-footer-brand p {
        font-size: 12px;
    }

    .contact-footer-column h4 {
        margin-bottom: 13px;
    }

    .contact-footer-column > a,
    .contact-footer-column > p {
        font-size: 12px;
    }

    .contact-footer-bottom {
        padding: 20px 0;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: 10px;
    }

    .contact-footer-bottom p {
        font-size: 11px;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 360px) {

    .contact-hero-content h1 {
        font-size: 34px;
    }

    .contact-visual-card {
        padding: 22px 15px;
    }

    .contact-form-card {
        padding: 22px 15px;
    }

    .contact-info-card {
        padding: 23px 18px;
    }

}
/* =====================================================
   INDUS PLYWOODS
   LEADERSHIP & LEGACY
   Premium Design | Forest Green & Warm Gold
===================================================== */

/* ---------- Section Base ---------- */

.leadership-section,
.leadership-section * {
    box-sizing: border-box;
}

.leadership-section {
    position: relative;
    padding: 75px 0 85px;
    background: #F7F5F0;
    color: #183D2E;
    font-family: inherit;
    overflow: hidden;
}

.leadership-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 25px;
}


/* ---------- Main Heading ---------- */

.leadership-heading {
    max-width: 740px;
    margin: 0 auto 55px;
    text-align: center;
}

.leadership-eyebrow {
    display: inline-block;
    margin-bottom: 16px;
    color: #B88A3B;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.leadership-heading h2 {
    margin: 0 0 18px;
    color: #183D2E;
    font-size: clamp(30px, 3.5vw, 43px);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.7px;
}

.leadership-heading h2 span {
    color: #B88A3B;
}

.leadership-intro {
    max-width: 650px;
    margin: 0 auto;
    color: #686861;
    font-size: 14px;
    line-height: 1.9;
}


/* =====================================================
   FIRST & SECOND GENERATIONS
===================================================== */

.legacy-feature {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr);
    align-items: center;
    gap: 45px;
    margin-bottom: 85px;
}


/* Group Photograph */

.legacy-feature-image {
    position: relative;
    min-width: 0;
    padding: 10px 0 0 10px;
}

.legacy-feature-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 65px;
    height: 65px;
    border-top: 2px solid #B88A3B;
    border-left: 2px solid #B88A3B;
    pointer-events: none;
    z-index: 1;
}

.legacy-feature-image img {
    display: block;
    width: 100%;
    height: 350px;
    object-fit: cover;
    object-position: center;
    background: #EAE6DD;
}

.legacy-image-caption {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 15px;
    color: #183D2E;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.7px;
}

.legacy-caption-line {
    display: inline-block;
    width: 35px;
    height: 1px;
    flex-shrink: 0;
    background: #B88A3B;
}


/* Founder and sons content */

.legacy-feature-content {
    min-width: 0;
}

.legacy-number {
    display: inline-block;
    margin-bottom: 12px;
    color: #B88A3B;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.legacy-feature-content > h3 {
    margin: 0 0 27px;
    color: #183D2E;
    font-size: clamp(27px, 2.7vw, 35px);
    font-weight: 600;
    line-height: 1.3;
}

.legacy-feature-content > h3 span {
    display: block;
    margin-top: 3px;
    color: #77766E;
    font-size: 0.78em;
    font-weight: 400;
}

.legacy-person {
    min-width: 0;
}

.legacy-role {
    display: block;
    margin-bottom: 9px;
    color: #B88A3B;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.8px;
    line-height: 1.6;
}

.legacy-person h4 {
    margin: 0 0 12px;
    color: #183D2E;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.45;
}

.legacy-name-separator {
    color: #B88A3B;
}

.legacy-person p {
    margin: 0 0 12px;
    color: #686861;
    font-size: 13px;
    line-height: 1.9;
}

.legacy-divider {
    width: 100%;
    height: 1px;
    margin: 23px 0;
    background: #E5E0D6;
}

/* =========================================
   THIRD GENERATION – PORTRAIT CARD DESIGN
========================================= */

.third-generation {
    margin-top: 70px;
    padding: 45px 35px;
    background: #f7f5f0;
    border-radius: 12px;
}

/* Section heading */
.third-generation-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px;
    margin-bottom: 35px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(184, 138, 59, 0.35);
}

.third-generation-heading h3 {
    margin: 0;
    color: #183d2e;
    font-size: 30px;
    font-weight: 700;
}

.third-generation-heading p {
    max-width: 260px;
    margin: 0;
    color: #666;
    font-size: 15px;
    line-height: 1.7;
    text-align: right;
}

/* Two cards on desktop */
.third-generation-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
    align-items: stretch;
}

/* Individual leadership card */
.generation-card {
    display: flex;
    align-items: stretch;
    gap: 22px;
    padding: 22px;
    background: #fff;
    border: 1px solid #e9e5dc;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(24, 61, 46, 0.06);
    overflow: hidden;
    transition: transform 0.3s ease,
                box-shadow 0.3s ease;
}

.generation-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 28px rgba(24, 61, 46, 0.12);
}

/* Narrow vertical portrait */
.generation-image {
    flex: 0 0 135px;
    width: 135px;
    min-width: 0;
    aspect-ratio: 3 / 4;
    align-self: flex-start;
    overflow: hidden;
    border-radius: 7px;
    background: #e8e8e2;
    border-bottom: 3px solid #b88a3b;
}

/* Generation card layout */
.generation-card {
    display: flex;
    align-items: stretch;
    gap: 28px;
}

/* Portrait container */
.generation-image {
    flex: 0 0 200px !important;
    width: 200px !important;
    min-width: 200px !important;
    height: 300px;
    overflow: hidden;
    border-radius: 8px;
}

/* Portrait image */
.generation-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center top !important;
    transition: transform 0.4s ease;
}

/* Text area */
.generation-content {
    flex: 1;
    min-width: 0;
}

/* Tablet */
@media (max-width: 767px) {
    .generation-image {
        flex: 0 0 160px !important;
        width: 160px !important;
        min-width: 160px !important;
        height: 300px;
    }

    .generation-card {
        gap: 20px;
    }
}

/* Mobile */
@media (max-width: 540px) {
    .generation-card {
        flex-direction: column;
    }

    .generation-image {
        width: 100% !important;
        min-width: 0 !important;
        height: 350px;
        flex: none !important;
    }
}

.generation-card:hover .generation-image img {
    transform: scale(1.04);
}

/* Text beside the photo */
.generation-content {
    flex: 1;
    min-width: 0;
    padding: 5px 0;
}

.legacy-role {
    display: inline-block;
    margin-bottom: 12px;
    color: #b88a3b;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.generation-content h4 {
    margin: 0 0 12px;
    color: #183d2e;
    font-size: 19px;
    line-height: 1.4;
    font-weight: 700;
}

.generation-accent {
    width: 42px;
    height: 3px;
    margin-bottom: 15px;
    background: #b88a3b;
    border-radius: 3px;
}

.generation-content p {
    margin: 0;
    color: #626762;
    font-size: 13px;
    line-height: 1.8;
}

/* =========================================
   TABLETS
========================================= */

@media (max-width: 1100px) {
    .third-generation {
        padding: 35px 25px;
    }

    .third-generation-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .generation-image {
        flex-basis: 155px;
        width: 155px;
    }

    .generation-content h4 {
        font-size: 21px;
    }

    .generation-content p {
        font-size: 14px;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 576px) {
    .third-generation {
        margin-top: 45px;
        padding: 25px 15px;
    }

    .third-generation-heading {
        display: block;
        margin-bottom: 25px;
    }

    .third-generation-heading h3 {
        font-size: 25px;
    }

    .third-generation-heading p {
        margin-top: 10px;
        text-align: left;
    }

    .generation-card {
        gap: 15px;
        padding: 15px;
    }

    .generation-image {
        flex-basis: 105px;
        width: 105px;
    }

    .legacy-role {
        font-size: 9px;
        letter-spacing: 1px;
    }

    .generation-content h4 {
        font-size: 16px;
    }

    .generation-content p {
        font-size: 12px;
        line-height: 1.7;
    }
}

/* Very narrow mobile screens */
@media (max-width: 360px) {
    .generation-card {
        display: block;
    }

    .generation-image {
        width: 125px;
        margin-bottom: 18px;
    }
}
/* =====================================================
   CLOSING STATEMENT
===================================================== */

.legacy-closing {
    max-width: 800px;
    margin: 65px auto 0;
    padding: 32px 40px;
    text-align: center;
    background: #F0EDE5;
    border-bottom: 2px solid #B88A3B;
}

.closing-quote-mark {
    display: block;
    height: 42px;
    color: #B88A3B;
    font-family: Georgia, serif;
    font-size: 62px;
    line-height: 1;
}

.legacy-closing p {
    margin: 12px 0 20px;
    color: #183D2E;
    font-size: 17px;
    line-height: 1.85;
}

.closing-bottom-line {
    display: block;
    width: 40px;
    height: 2px;
    margin: 0 auto;
    background: #B88A3B;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .leadership-section {
        padding: 65px 0 70px;
    }

    .leadership-container {
        padding: 0 24px;
    }

    .legacy-feature {
        gap: 30px;
        margin-bottom: 70px;
    }

    .legacy-feature-image img {
        height: 310px;
    }

    .legacy-feature-content > h3 {
        font-size: 29px;
    }

    .legacy-person h4 {
        font-size: 18px;
    }

    .legacy-person p {
        font-size: 12px;
    }


}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .leadership-section {
        padding: 50px 0 60px;
    }

    .leadership-container {
        padding: 0 18px;
    }

    .leadership-heading {
        margin-bottom: 38px;
    }

    .leadership-eyebrow {
        font-size: 10px;
        letter-spacing: 2px;
    }

    .leadership-heading h2 {
        font-size: 30px;
        letter-spacing: -0.4px;
    }

    .leadership-intro {
        font-size: 13px;
    }


    /* Group photograph and text stack vertically */

    .legacy-feature {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
        margin-bottom: 55px;
    }

    .legacy-feature-image {
        padding: 8px 0 0 8px;
    }

    .legacy-feature-image::before {
        width: 50px;
        height: 50px;
    }

    .legacy-feature-image img {
        height: auto;
        aspect-ratio: 4 / 3;
        object-fit: cover;
    }

    .legacy-image-caption {
        font-size: 9px;
        letter-spacing: 1.2px;
    }

    .legacy-feature-content > h3 {
        margin-bottom: 24px;
        font-size: 29px;
    }

    .legacy-person h4 {
        font-size: 19px;
    }

    .legacy-person p {
        font-size: 13px;
        line-height: 1.85;
    }

    .legacy-divider {
        margin: 22px 0;
    }


    /* Third generation heading */

    .third-generation-heading {
        display: block;
        margin-bottom: 23px;
        padding-bottom: 17px;
    }

    .third-generation-heading h3 {
        font-size: 29px;
    }

    .third-generation-heading > p {
        margin-top: 10px;
        font-size: 12px;
    }


    /* Individual profiles */

    .third-generation-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 22px;
    }

    .generation-image {
        flex: 0 0 105px;
        width: 105px;
        height: auto;
        aspect-ratio: 3 / 4;
    }

    .generation-content {
        flex: 1;
        min-width: 0;
        padding: 5px 0;
    }

    .generation-content h4 {
        font-size: 20px;
    }

    .generation-content p {
        font-size: 13px;
    }


    /* Closing statement */

    .legacy-closing {
        margin-top: 42px;
        padding: 28px 20px;
    }

    .legacy-closing p {
        font-size: 15px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 380px) {

    .leadership-container {
        padding: 0 15px;
    }

    .leadership-heading h2 {
        font-size: 27px;
    }

    .legacy-feature-content > h3,
    .third-generation-heading h3 {
        font-size: 26px;
    }

    .legacy-person h4 {
        font-size: 18px;
    }

    .generation-content {
        padding: 19px;
    }

    .legacy-closing {
        padding: 25px 17px;
    }

}


/* =========================================
   MARKETING TEAM SECTION
========================================= */

.marketing-team-section {
    padding: 70px 20px;
    background: #ffffff;
}

.marketing-team-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Section heading */

.marketing-team-heading {
    max-width: 650px;
    margin: 0 auto 40px;
    text-align: center;
}

.marketing-subtitle {
    display: inline-block;
    margin-bottom: 10px;
    color: #b88a3b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.marketing-team-heading h3 {
    margin: 0;
    color: #183d2e;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.3;
}

.marketing-heading-line {
    width: 55px;
    height: 3px;
    margin: 18px auto;
    background: #b88a3b;
    border-radius: 3px;
}

.marketing-team-heading p {
    margin: 0;
    color: #686868;
    font-size: 15px;
    line-height: 1.8;
}

/* Responsive four-column grid */

.marketing-team-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 25px;
    align-items: start;
}

/* Manager card */

.marketing-manager-card {
    min-width: 0;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e9e5dc;
    border-radius: 10px;
    box-shadow: 0 5px 18px rgba(24, 61, 46, 0.06);
    transition: transform 0.3s ease,
                box-shadow 0.3s ease;
}

.marketing-manager-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 28px rgba(24, 61, 46, 0.12);
}

/* Portrait image */

.marketing-manager-image {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    background: #f1f1ed;
}

.marketing-manager-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.4s ease;
}

.marketing-manager-card:hover
.marketing-manager-image img {
    transform: scale(1.04);
}

/* Name and designation */

.marketing-manager-info {
    padding: 20px 10px;
    text-align: center;
    border-top: 3px solid #b88a3b;
}

.marketing-manager-info h4 {
    margin: 0 0 8px;
    color: #183d2e;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.marketing-manager-info p {
    margin: 0;
    color: #777777;
    font-size: 13px;
    line-height: 1.6;
}

/* =========================================
   TABLETS
========================================= */

@media (max-width: 991px) {
    .marketing-team-section {
        padding: 55px 20px;
    }

    .marketing-team-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 25px;
        max-width: 650px;
        margin: 0 auto;
    }

    .marketing-team-heading h3 {
        font-size: 29px;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 480px) {
    .marketing-team-section {
        padding: 45px 15px;
    }

    .marketing-team-heading {
        margin-bottom: 30px;
    }

    .marketing-team-heading h3 {
        font-size: 25px;
    }

    .marketing-team-heading p {
        font-size: 14px;
    }

    .marketing-team-grid {
        grid-template-columns: 1fr;
        gap: 22px;
        max-width: 300px;
    }

    .marketing-manager-info {
        padding: 16px 10px;
    }

    .marketing-manager-info h4 {
        font-size: 17px;
    }
}

/* =====================================================
   OUR VISION FOR THE FUTURE
===================================================== */

.vision-section {
    position: relative;
    padding: 85px 25px;
    background: #183D2E;
    overflow: hidden;
}

.vision-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #B88A3B;
}

.vision-container {
    position: relative;
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.vision-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 18px;
    color: #D8B46A;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
}

.vision-label-line {
    display: inline-block;
    width: 30px;
    height: 1px;
    background: #B88A3B;
}

.vision-section h2 {
    margin: 0;
    color: #FFFFFF;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.3;
}

.vision-heading-accent {
    width: 60px;
    height: 3px;
    margin: 22px auto 30px;
    background: #B88A3B;
    border-radius: 3px;
}

.vision-content {
    max-width: 760px;
    margin: 0 auto;
}

.vision-content p {
    margin: 0 0 20px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 16px;
    line-height: 1.9;
}

.vision-content .vision-intro {
    color: #FFFFFF;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.8;
}

.vision-tagline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 38px;
    padding-top: 25px;
    border-top: 1px solid rgba(184, 138, 59, 0.35);
}

.vision-tagline-line {
    flex: 0 0 35px;
    height: 1px;
    background: #B88A3B;
}

.vision-tagline p {
    margin: 0;
    color: #E7D9B8;
    font-size: 17px;
    font-style: italic;
    line-height: 1.7;
}

.vision-tagline strong {
    color: #D8B46A;
    font-weight: 700;
}

@media (max-width: 768px) {
    .vision-section {
        padding: 65px 25px;
    }

    .vision-section h2 {
        font-size: 32px;
    }

    .vision-content p {
        font-size: 15px;
    }

    .vision-content .vision-intro {
        font-size: 17px;
    }
}

@media (max-width: 480px) {
    .vision-section {
        padding: 50px 20px;
    }

    .vision-label {
        font-size: 11px;
        letter-spacing: 2px;
    }

    .vision-section h2 {
        font-size: 27px;
    }

    .vision-heading-accent {
        margin: 18px auto 25px;
    }

    .vision-content p {
        margin-bottom: 16px;
        font-size: 14px;
        line-height: 1.8;
    }

    .vision-content .vision-intro {
        font-size: 16px;
    }

    .vision-tagline {
        gap: 10px;
        margin-top: 28px;
        padding-top: 22px;
    }

    .vision-tagline-line {
        flex-basis: 18px;
    }

    .vision-tagline p {
        font-size: 14px;
    }
}
```css
/* Core Principles Section */
.core-principles-section {
    background-color: #F7F5F0;
    padding: 35px 20px;
    text-align: center;
}

.core-principles-container {
    max-width: 1000px;
    margin: 0 auto;
}

.core-principles-container p {
    font-size: 18px;
    line-height: 1.8;
    color: #183D2E;
    margin: 0;
    font-weight: 400;
}

.core-principles-container strong {
    color: #B88A3B;
    font-weight: 600;
}

/* Tablet */
@media (max-width: 991px) {
    .core-principles-section {
        padding: 30px 20px;
    }

    .core-principles-container p {
        font-size: 17px;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .core-principles-section {
        padding: 25px 15px;
    }

    .core-principles-container p {
        font-size: 15px;
        line-height: 1.7;
    }
}


/* ==========================================
   INDUS PLYWOODS - INFRASTRUCTURE PAGE
   Premium Industrial Design
========================================== */

:root {
    --infra-green: #12452F;
    --infra-green-dark: #0C3524;
    --infra-green-light: #1B5A3D;
    --infra-gold: #B88B43;
    --infra-gold-light: #D5B576;
    --infra-cream: #FAF8F2;
    --infra-white: #FFFFFF;
    --infra-text: #283C32;
    --infra-muted: #68756D;
    --infra-border: #E8E1D4;
    --infra-shadow: 0 15px 45px rgba(18, 69, 47, 0.08);
}

.infrastructure-page {
    background: var(--infra-white);
    color: var(--infra-text);
    font-family: inherit;
    overflow: hidden;
}

.infrastructure-page *,
.infrastructure-page *::before,
.infrastructure-page *::after {
    box-sizing: border-box;
}

.infrastructure-page img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.infrastructure-page a {
    text-decoration: none;
}

.infrastructure-page h1,
.infrastructure-page h2,
.infrastructure-page h3,
.infrastructure-page h4,
.infrastructure-page p {
    margin-top: 0;
}

.infra-container {
    width: min(1200px, calc(100% - 48px));
    margin: 0 auto;
}

.section-padding {
    padding: 105px 0;
}


/* ==========================================
   HERO SECTION
========================================== */

.infra-hero {
    position: relative;
    min-height: 590px;
    display: flex;
    align-items: center;
    background-color: var(--infra-green-dark);

    /*
       Replace with an actual factory photograph.
       The background image should ideally be a wide,
       high-resolution industrial photograph.
    */

    background-image: url("../assets/images/infrastructure-hero.jpg");
    background-position: center;
    background-size: cover;
    isolation: isolate;
}

.infra-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;

    background:
        linear-gradient(
            90deg,
            rgba(7, 36, 24, 0.96) 0%,
            rgba(12, 53, 36, 0.88) 46%,
            rgba(12, 53, 36, 0.32) 100%
        );
}

.infra-hero-content {
    position: relative;
    padding-top: 85px;
    padding-bottom: 105px;
}

.infra-eyebrow,
.infra-section-label {
    display: flex;
    align-items: center;
    gap: 13px;

    color: var(--infra-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.5px;
    line-height: 1.6;
    text-transform: uppercase;
}

.infra-eyebrow {
    color: var(--infra-gold-light);
    margin-bottom: 27px;
}

.infra-eyebrow > span,
.infra-section-label > span {
    width: 36px;
    height: 2px;
    flex-shrink: 0;
    background: var(--infra-gold);
}

.infra-hero h1 {
    max-width: 850px;
    margin-bottom: 14px;

    color: var(--infra-white);
    font-size: clamp(38px, 5.1vw, 67px);
    font-weight: 700;
    letter-spacing: -1.7px;
    line-height: 1.13;
}

.infra-hero h1 span {
    color: var(--infra-gold-light);
}

.infra-hero-content > p:not(.infra-hero-description) {
    margin-bottom: 20px;

    color: var(--infra-white);
    font-size: 25px;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.infra-hero-line {
    width: 65px;
    height: 3px;
    margin: 22px 0;
    background: var(--infra-gold);
}

.infra-hero-description {
    max-width: 580px;
    margin-bottom: 32px;

    color: rgba(255, 255, 255, 0.83);
    font-size: 16px;
    line-height: 1.9;
}

.infra-btn {
    display: inline-flex;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    gap: 20px;

    padding: 15px 25px;

    background: var(--infra-green);
    border: 1px solid var(--infra-green);
    border-radius: 3px;

    color: var(--infra-white);
    font-size: 14px;
    font-weight: 600;

    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}

.infra-btn i {
    color: var(--infra-gold-light);
    transition: transform 0.3s ease;
}

.infra-btn:hover {
    background: var(--infra-green-dark);
    border-color: var(--infra-gold);
    color: var(--infra-white);
    transform: translateY(-2px);
}

.infra-btn:hover i {
    transform: translateX(4px);
}

.infra-hero .infra-btn {
    background: var(--infra-gold);
    border-color: var(--infra-gold);
    color: var(--infra-green-dark);
}

.infra-hero .infra-btn i {
    color: var(--infra-green-dark);
}

.infra-hero .infra-btn:hover {
    background: var(--infra-gold-light);
    border-color: var(--infra-gold-light);
}

.infra-hero-bottom {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    padding: 18px max(24px, calc((100% - 1200px) / 2));

    background: rgba(7, 36, 24, 0.8);
    border-top: 1px solid rgba(255, 255, 255, 0.12);

    color: rgba(255, 255, 255, 0.82);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.7px;
}


/* ==========================================
   MANUFACTURING FACILITY
========================================== */

.infra-facility {
    background: var(--infra-cream);
}

.infra-facility-grid {
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    align-items: center;
    gap: 85px;
}

.infra-facility-image {
    position: relative;
    min-width: 0;
    min-height: 520px;
    padding: 0 22px 22px 0;
}

.infra-facility-image::before {
    position: absolute;
    top: 22px;
    right: 0;
    bottom: 0;
    left: 22px;

    border: 2px solid var(--infra-gold);
    content: "";
}

.infra-facility-image > img {
    position: relative;
    z-index: 1;
    min-height: 498px;
    box-shadow: var(--infra-shadow);
}

.infra-image-label {
    position: absolute;
    z-index: 2;
    right: -12px;
    bottom: 50px;

    display: flex;
    align-items: center;
    gap: 15px;

    max-width: calc(100% - 15px);
    padding: 20px 23px;

    background: var(--infra-white);
    box-shadow: var(--infra-shadow);
}

.infra-label-icon {
    display: flex;
    width: 47px;
    height: 47px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;

    background: #F7F0E3;
    border-radius: 50%;

    color: var(--infra-gold);
    font-size: 19px;
}

.infra-image-label strong,
.infra-image-label span:not(.infra-label-icon) {
    display: block;
}

.infra-image-label strong {
    margin-bottom: 5px;
    color: var(--infra-green);
    font-size: 14px;
}

.infra-image-label div span {
    color: var(--infra-muted);
    font-size: 11px;
    line-height: 1.5;
}

.infra-image-number {
    position: absolute;
    z-index: 2;
    top: 23px;
    left: 25px;

    color: var(--infra-white);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 2px;
}

.infra-facility-content .infra-section-label {
    margin-bottom: 22px;
}

.infra-facility-content h2,
.infra-section-heading h2,
.infra-process-heading h2,
.infra-growth-content h2 {
    margin-bottom: 23px;

    color: var(--infra-green);
    font-size: clamp(30px, 3.4vw, 43px);
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 1.22;
}

.infra-facility-content h2 span,
.infra-section-heading h2 span,
.infra-process-heading h2 span,
.infra-growth-content h2 span {
    color: var(--infra-gold);
}

.infra-facility-content > p,
.infra-growth-content > p {
    margin-bottom: 18px;
    color: var(--infra-muted);
    font-size: 15px;
    line-height: 1.9;
}

.infra-facility-content .infra-lead {
    color: #374A3F;
    font-size: 16px;
}

.infra-facility-content .infra-lead strong {
    color: var(--infra-green);
}

.infra-facility-points {
    display: grid;
    gap: 20px;
    margin-top: 28px;
}

.infra-facility-point {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.infra-facility-point > span {
    display: flex;
    width: 27px;
    height: 27px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;

    margin-top: 2px;

    background: #E9F0E8;
    border-radius: 50%;
    color: var(--infra-green);
    font-size: 11px;
}

.infra-facility-point h4 {
    margin-bottom: 5px;
    color: var(--infra-green);
    font-size: 15px;
    font-weight: 700;
}

.infra-facility-point p {
    margin-bottom: 0;
    color: var(--infra-muted);
    font-size: 13px;
    line-height: 1.7;
}

.infra-acre-highlight {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-top: 30px;
    padding-top: 23px;

    border-top: 1px solid var(--infra-border);
}

.infra-acre-icon {
    display: flex;
    width: 55px;
    height: 55px;
    align-items: center;
    justify-content: center;

    background: var(--infra-green);
    color: var(--infra-gold-light);
    font-size: 22px;
}

.infra-acre-highlight strong,
.infra-acre-highlight span {
    display: block;
}

.infra-acre-highlight strong {
    margin-bottom: 4px;
    color: var(--infra-green);
    font-size: 22px;
    font-weight: 700;
}

.infra-acre-highlight span {
    color: var(--infra-muted);
    font-size: 12px;
}


/* ==========================================
   ADVANCED MACHINERY
========================================== */

.infra-machinery {
    background: var(--infra-white);
}

.infra-section-heading {
    max-width: 750px;
    margin: 0 auto 55px;
    text-align: center;
}

.infra-section-heading .infra-section-label {
    justify-content: center;
    margin-bottom: 20px;
}

.infra-section-heading h2 {
    margin-bottom: 17px;
}

.infra-section-heading > p {
    max-width: 660px;
    margin: 0 auto;

    color: var(--infra-muted);
    font-size: 15px;
    line-height: 1.9;
}

.infra-machinery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 27px;
}

.infra-machine-card {
    min-width: 0;
    background: var(--infra-white);
    border: 1px solid var(--infra-border);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.infra-machine-card:hover {
    border-color: var(--infra-gold-light);
    box-shadow: var(--infra-shadow);
    transform: translateY(-6px);
}

.infra-machine-image {
    position: relative;
    height: 225px;
    overflow: hidden;
    background: #E9E7E0;
}

.infra-machine-image img {
    transition: transform 0.5s ease;
}

.infra-machine-card:hover .infra-machine-image img {
    transform: scale(1.05);
}

.infra-machine-number {
    position: absolute;
    top: 15px;
    left: 15px;

    display: flex;
    width: 39px;
    height: 39px;
    align-items: center;
    justify-content: center;

    background: var(--infra-green);
    border: 1px solid rgba(255, 255, 255, 0.3);

    color: var(--infra-gold-light);
    font-size: 12px;
    font-weight: 700;
}

.infra-machine-content {
    padding: 27px 25px 22px;
}

.infra-machine-category {
    display: block;
    margin-bottom: 12px;

    color: var(--infra-gold);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.infra-machine-content h3 {
    margin-bottom: 12px;
    color: var(--infra-green);
    font-size: 22px;
    font-weight: 700;
}

.infra-machine-content > p {
    min-height: 76px;
    margin-bottom: 22px;

    color: var(--infra-muted);
    font-size: 13px;
    line-height: 1.8;
}

.infra-machine-footer {
    display: flex;
    align-items: center;
    gap: 13px;
    padding-top: 17px;

    border-top: 1px solid var(--infra-border);

    color: var(--infra-gold);
    font-size: 11px;
    font-weight: 700;
}

.infra-machine-line {
    width: 42px;
    height: 2px;
    background: var(--infra-gold-light);
}

.infra-machinery-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    margin-top: 30px;
    padding: 17px 20px;

    background: var(--infra-cream);
    border-left: 3px solid var(--infra-gold);
}

.infra-machinery-note > i {
    margin-top: 3px;
    color: var(--infra-gold);
}

.infra-machinery-note p {
    margin-bottom: 0;
    color: var(--infra-muted);
    font-size: 12px;
    line-height: 1.8;
}


/* ==========================================
   PRODUCTION CAPACITY
========================================== */

.infra-capacity {
    position: relative;
    isolation: isolate;
    overflow: hidden;

    padding: 85px 0;

    background-color: var(--infra-green-dark);
    background-image: url("../assets/images/production-facility.jpg");
    background-position: center;
    background-size: cover;
}

.infra-capacity-overlay {
    position: absolute;
    inset: 0;
    z-index: -1;

    background:
        linear-gradient(
            90deg,
            rgba(8, 44, 29, 0.97),
            rgba(12, 53, 36, 0.88)
        );
}

.infra-capacity-inner {
    display: grid;
    grid-template-columns: 1.1fr 0.7fr;
    align-items: center;
    gap: 80px;
}

.infra-label-light {
    color: var(--infra-gold-light);
}

.infra-capacity-content h2 {
    margin: 22px 0;

    color: var(--infra-white);
    font-size: clamp(31px, 3.5vw, 44px);
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 1.25;
}

.infra-capacity-content h2 span {
    color: var(--infra-gold-light);
}

.infra-capacity-content > p {
    max-width: 580px;
    margin-bottom: 0;

    color: rgba(255, 255, 255, 0.8);
    font-size: 15px;
    line-height: 1.95;
}

.infra-capacity-card {
    padding: 37px 30px;

    background: var(--infra-white);
    border-top: 4px solid var(--infra-gold);
    text-align: center;
}

.infra-capacity-icon {
    display: flex;
    width: 60px;
    height: 60px;
    align-items: center;
    justify-content: center;

    margin: 0 auto 22px;

    background: #F7F0E3;
    border-radius: 50%;
    color: var(--infra-gold);
    font-size: 25px;
}

.infra-capacity-label {
    display: block;
    margin-bottom: 13px;

    color: var(--infra-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.4px;
    line-height: 1.7;
}

.infra-capacity-number {
    color: var(--infra-green);
    font-size: clamp(48px, 5.5vw, 68px);
    font-weight: 700;
    letter-spacing: -2px;
    line-height: 1.15;
}

.infra-capacity-unit {
    margin-top: 8px;

    color: var(--infra-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.infra-capacity-divider {
    width: 50px;
    height: 2px;
    margin: 23px auto;
    background: var(--infra-gold-light);
}

.infra-capacity-card > p {
    margin-bottom: 0;

    color: var(--infra-muted);
    font-size: 12px;
    line-height: 1.8;
}


/* ==========================================
   EFFICIENT MANUFACTURING
========================================== */

.infra-process {
    background: var(--infra-cream);
}

.infra-process-heading {
    display: grid;
    grid-template-columns: 1fr 0.8fr;
    align-items: end;
    gap: 70px;

    margin-bottom: 55px;
}

.infra-process-heading .infra-section-label {
    margin-bottom: 20px;
}

.infra-process-heading h2 {
    margin-bottom: 0;
}

.infra-process-heading > p {
    margin-bottom: 4px;

    color: var(--infra-muted);
    font-size: 14px;
    line-height: 1.95;
}

.infra-process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--infra-border);
    border-bottom: 1px solid var(--infra-border);
}

.infra-process-item {
    position: relative;
    min-width: 0;
    padding: 32px 25px 35px;

    border-right: 1px solid var(--infra-border);
}

.infra-process-item:first-child {
    border-left: 1px solid var(--infra-border);
}

.infra-process-number {
    position: absolute;
    top: 23px;
    right: 23px;

    color: #D6D0C4;
    font-size: 14px;
    font-weight: 700;
}

.infra-process-icon {
    display: flex;
    width: 58px;
    height: 58px;
    align-items: center;
    justify-content: center;

    margin-bottom: 26px;

    background: var(--infra-white);
    border: 1px solid var(--infra-border);
    border-radius: 50%;

    color: var(--infra-gold);
    font-size: 22px;

    transition:
        background 0.3s ease,
        color 0.3s ease;
}

.infra-process-item:hover .infra-process-icon {
    background: var(--infra-green);
    color: var(--infra-gold-light);
}

.infra-process-item h3 {
    margin-bottom: 12px;

    color: var(--infra-green);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
}

.infra-process-item > p {
    margin-bottom: 0;

    color: var(--infra-muted);
    font-size: 12px;
    line-height: 1.9;
}


/* ==========================================
   GROWTH & QUALITY
========================================== */

.infra-growth {
    background: var(--infra-white);
}

.infra-growth-grid {
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    align-items: center;
    gap: 80px;
}

.infra-growth-image {
    position: relative;
    min-width: 0;
    height: 460px;
    background: #E9E7E0;
}

.infra-growth-image::before {
    position: absolute;
    top: -13px;
    left: -13px;

    width: 90px;
    height: 90px;

    border-top: 3px solid var(--infra-gold);
    border-left: 3px solid var(--infra-gold);

    content: "";
}

.infra-growth-image > img {
    position: relative;
    z-index: 1;
}

.infra-growth-image-caption {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;
    flex-direction: column;
    gap: 8px;

    padding: 24px;

    background: linear-gradient(
        0deg,
        rgba(7, 36, 24, 0.94),
        rgba(7, 36, 24, 0)
    );
}

.infra-growth-image-caption span {
    color: var(--infra-gold-light);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.infra-growth-image-caption strong {
    color: var(--infra-white);
    font-size: 17px;
    line-height: 1.5;
}

.infra-growth-content .infra-section-label {
    margin-bottom: 22px;
}

.infra-growth-content h2 {
    margin-bottom: 22px;
}

.infra-growth-quote {
    position: relative;

    margin: 28px 0;
    padding: 20px 22px 20px 27px;

    background: var(--infra-cream);
    border-left: 3px solid var(--infra-gold);
}

.infra-quote-mark {
    display: block;
    height: 32px;

    color: var(--infra-gold);
    font-family: Georgia, serif;
    font-size: 46px;
    line-height: 1;
}

.infra-growth-quote p {
    margin-bottom: 0;

    color: var(--infra-green);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.8;
}

.infra-growth-content .infra-btn {
    margin-top: 3px;
}


/* ==========================================
   RESPONSIVE - TABLET
========================================== */

@media (max-width: 991px) {

    .section-padding {
        padding: 75px 0;
    }

    .infra-facility-grid {
        grid-template-columns: 1fr 1fr;
        gap: 45px;
    }

    .infra-facility-image {
        min-height: 430px;
    }

    .infra-facility-image > img {
        min-height: 408px;
    }

    .infra-machinery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .infra-capacity-inner {
        gap: 40px;
    }

    .infra-process-heading {
        gap: 35px;
    }

    .infra-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .infra-process-item:nth-child(3) {
        border-left: 1px solid var(--infra-border);
    }

    .infra-process-item:nth-child(n+3) {
        border-top: 1px solid var(--infra-border);
    }

    .infra-growth-grid {
        gap: 45px;
    }

    .infra-growth-image {
        height: 410px;
    }
}


/* ==========================================
   RESPONSIVE - MOBILE
========================================== */

@media (max-width: 767px) {

    .infra-container {
        width: calc(100% - 36px);
    }

    .section-padding {
        padding: 60px 0;
    }

    /* Hero */

    .infra-hero {
        min-height: 550px;
        background-position: 60% center;
    }

    .infra-hero-overlay {
        background: linear-gradient(
            90deg,
            rgba(7, 36, 24, 0.96),
            rgba(7, 36, 24, 0.77)
        );
    }

    .infra-hero-content {
        padding-top: 65px;
        padding-bottom: 100px;
    }

    .infra-eyebrow,
    .infra-section-label {
        font-size: 10px;
        letter-spacing: 1.7px;
    }

    .infra-eyebrow {
        margin-bottom: 23px;
    }

    .infra-eyebrow > span,
    .infra-section-label > span {
        width: 25px;
    }

    .infra-hero h1 {
        font-size: clamp(35px, 8.5vw, 48px);
        letter-spacing: -0.8px;
        line-height: 1.2;
    }

    .infra-hero-content > p:not(.infra-hero-description) {
        font-size: 21px;
    }

    .infra-hero-description {
        font-size: 14px;
        line-height: 1.85;
    }

    .infra-hero-bottom {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
        padding: 14px 18px;
        font-size: 9px;
        letter-spacing: 1.2px;
    }

    /* Facility */

    .infra-facility-grid,
    .infra-growth-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .infra-facility-image {
        min-height: 350px;
        margin-right: 10px;
        padding: 0 15px 15px 0;
    }

    .infra-facility-image > img {
        min-height: 335px;
    }

    .infra-image-label {
        right: -10px;
        bottom: 30px;
        gap: 10px;
        padding: 13px;
    }

    .infra-label-icon {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .infra-image-label strong {
        font-size: 12px;
    }

    .infra-image-label div span {
        font-size: 10px;
    }

    .infra-image-number {
        top: 16px;
        left: 18px;
    }

    .infra-facility-content h2,
    .infra-section-heading h2,
    .infra-process-heading h2,
    .infra-growth-content h2 {
        font-size: 32px;
        letter-spacing: -0.6px;
    }

    .infra-facility-content > p,
    .infra-growth-content > p {
        font-size: 14px;
    }

    /* Machinery */

    .infra-section-heading {
        margin-bottom: 35px;
        text-align: left;
    }

    .infra-section-heading .infra-section-label {
        justify-content: flex-start;
    }

    .infra-section-heading > p {
        font-size: 14px;
        line-height: 1.85;
    }

    .infra-machinery-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .infra-machine-image {
        height: 230px;
    }

    .infra-machine-content {
        padding: 24px 21px 20px;
    }

    .infra-machine-content h3 {
        font-size: 21px;
    }

    .infra-machine-content > p {
        min-height: 0;
        margin-bottom: 20px;
    }

    /* Production capacity */

    .infra-capacity {
        padding: 65px 0;
    }

    .infra-capacity-inner {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .infra-capacity-content h2 {
        font-size: 32px;
    }

    .infra-capacity-content > p {
        font-size: 14px;
    }

    .infra-capacity-card {
        padding: 32px 22px;
    }

    .infra-capacity-number {
        font-size: 58px;
    }

    /* Process */

    .infra-process-heading {
        grid-template-columns: 1fr;
        gap: 22px;
        margin-bottom: 35px;
    }

    .infra-process-heading > p {
        font-size: 14px;
    }

    .infra-process-grid {
        grid-template-columns: 1fr;
    }

    .infra-process-item,
    .infra-process-item:first-child,
    .infra-process-item:nth-child(3) {
        padding: 27px 22px;
        border-right: 1px solid var(--infra-border);
        border-left: 1px solid var(--infra-border);
        border-top: 1px solid var(--infra-border);
    }

    .infra-process-item:last-child {
        border-bottom: 1px solid var(--infra-border);
    }

    .infra-process-icon {
        margin-bottom: 18px;
    }

    .infra-process-item h3 {
        font-size: 17px;
    }

    .infra-process-item > p {
        font-size: 13px;
    }

    /* Growth */

    .infra-growth-image {
        height: 330px;
    }

    .infra-growth-image-caption {
        padding: 20px;
    }

    .infra-growth-image-caption strong {
        font-size: 15px;
    }

    .infra-growth-quote p {
        font-size: 14px;
    }

    .infra-machinery-note {
        padding: 15px;
    }
}


/* ==========================================
   RESPONSIVE - SMALL MOBILE
========================================== */

@media (max-width: 380px) {

    .infra-container {
        width: calc(100% - 28px);
    }

    .infra-hero h1 {
        font-size: 32px;
    }

    .infra-facility-content h2,
    .infra-section-heading h2,
    .infra-process-heading h2,
    .infra-growth-content h2,
    .infra-capacity-content h2 {
        font-size: 28px;
    }

    .infra-capacity-number {
        font-size: 49px;
    }

    .infra-hero-bottom {
        font-size: 8px;
    }

    .infra-btn {
        gap: 12px;
        padding: 13px 17px;
        font-size: 13px;
    }
}


/* =========================================
   INDUS PLYWOODS - INFRASTRUCTURE BANNER
========================================= */

.indus-page-banner {
    position: relative;
    width: 100%;
    height: 300px;
    min-height: 300px;

    display: flex;
    align-items: center;
    justify-content: center;

    background-color: #12452F;
    overflow: hidden;
    isolation: isolate;
    box-sizing: border-box;
}

/* =========================================
   BANNER IMAGE
========================================= */

.indus-banner-img {
    position: absolute;
    inset: 0;

    display: block;
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    z-index: -2;
}

/* =========================================
   DARK GREEN OVERLAY
========================================= */

.indus-banner-overlay {
    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(7, 36, 24, 0.75),
        rgba(18, 69, 47, 0.65)
    );

    z-index: -1;
    pointer-events: none;
}

/* =========================================
   BANNER CONTENT
========================================= */

.indus-banner-content {
    position: relative;

    width: 100%;
    max-width: 1200px;

    margin: 0 auto;
    padding: 20px;

    text-align: center;
    box-sizing: border-box;
}

.indus-banner-content h1 {
    margin: 0 0 18px;
    padding: 0;

    color: #FFFFFF;

    font-size: 46px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.5px;

    overflow-wrap: break-word;
}

/* =========================================
   BREADCRUMB
========================================= */

.indus-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 12px;

    margin: 0;
    padding: 0;

    color: #FFFFFF;
    font-size: 15px;
    font-weight: 500;
}

.indus-breadcrumb a {
    color: #FFFFFF;
    text-decoration: none;

    transition: color 0.3s ease;
}

.indus-breadcrumb a:hover {
    color: #D5B576;
}

.indus-breadcrumb span {
    color: #D5B576;
}

.indus-breadcrumb .active {
    color: #FFFFFF;
}

/* =========================================
   TABLET RESPONSIVE
========================================= */

@media (max-width: 991px) {

    .indus-page-banner {
        height: 270px;
        min-height: 270px;
    }

    .indus-banner-content {
        max-width: 100%;
    }

    .indus-banner-content h1 {
        font-size: 40px;
    }
}

/* =========================================
   MOBILE RESPONSIVE
========================================= */

@media (max-width: 767px) {

    .indus-page-banner {
        height: 220px;
        min-height: 220px;
    }

    .indus-banner-img {
        object-position: center;
    }

    .indus-banner-content {
        padding: 15px;
    }

    .indus-banner-content h1 {
        margin-bottom: 14px;
        font-size: 32px;
        line-height: 1.25;
    }

    .indus-breadcrumb {
        gap: 9px;
        font-size: 13px;
    }
}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .indus-page-banner {
        height: 190px;
        min-height: 190px;
    }

    .indus-banner-content h1 {
        font-size: 28px;
    }

    .indus-breadcrumb {
        gap: 7px;
        font-size: 12px;
    }
}
/* Banner spacing fix */
.indus-page-banner {
    margin: 0;
    padding: 0;
    height: 320px;
    min-height: 320px;
    position: relative;
    overflow: hidden;
}

/* Centre heading and breadcrumb */
.indus-banner-content {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 100px 20px 20px;
    box-sizing: border-box;
    text-align: center;
}


/* Responsive adjustment */
@media (max-width: 767px) {
    .indus-page-banner {
        height: 250px;
        min-height: 250px;
    }

    .indus-banner-content {
        padding: 70px 15px 15px;
    }
}
/* =========================================
   INFRASTRUCTURE - MANUFACTURING PROCESSES
========================================= */

.infra-machinery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-top: 45px;
}

/* Process Card */

.infra-process-card {
    position: relative;
    padding: 34px 30px 36px;
    min-height: 205px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    background: #FFFFFF;
    border: 1px solid #E8E0D2;
    border-radius: 4px;

    box-sizing: border-box;
    overflow: hidden;

    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

/* Gold Top Border */

.infra-process-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 3px;

    background: #B88B42;

    transform: scaleX(0);
    transform-origin: left;

    transition: transform 0.3s ease;
}

/* Hover Effect */

.infra-process-card:hover {
    transform: translateY(-5px);
    border-color: #D4BC8E;

    box-shadow: 0 12px 30px rgba(18, 69, 47, 0.08);
}

.infra-process-card:hover::before {
    transform: scaleX(1);
}

/* Small Category Label */

.infra-process-label {
    display: inline-block;
    margin-bottom: 18px;

    color: #B1843C;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.6px;
    line-height: 1.5;
}

/* Process Heading */

.infra-process-card h3 {
    margin: 0 0 12px;
    padding: 0;

    color: #12452F;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
}

/* Description */

.infra-process-card p {
    margin: 0;

    color: #66716C;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
}

/* Gold Accent Line */

.infra-process-accent {
    display: block;
    width: 42px;
    height: 3px;

    margin-top: auto;
    padding-top: 0;
    transform: translateY(15px);

    background: #D5B576;

    transition: width 0.3s ease;
}

.infra-process-card:hover .infra-process-accent {
    width: 70px;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .infra-machinery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .infra-process-card {
        padding: 30px 25px;
    }

    .infra-process-card h3 {
        font-size: 22px;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .infra-machinery-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 30px;
    }

    .infra-process-card {
        min-height: auto;
        padding: 26px 23px 30px;
    }

    .infra-process-label {
        margin-bottom: 12px;
        font-size: 10px;
    }

    .infra-process-card h3 {
        font-size: 21px;
    }

    .infra-process-card p {
        font-size: 14px;
        line-height: 1.75;
    }

    .infra-process-accent {
        margin-top: 22px;
        transform: none;
    }
}

/* =========================================
   INDUS PLYWOODS - CERTIFICATIONS SECTION
========================================= */

.indus-certifications {
    padding: 90px 0;
    background: #FAF8F3;
}

.indus-certifications .infra-container {
    width: 100%;
    max-width: 1430px;
    margin: 0 auto;
    padding: 0 28px;
    box-sizing: border-box;
}

/* Section Heading */

.indus-cert-heading {
    max-width: 760px;
    margin-bottom: 48px;
}

.indus-cert-label {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;

    color: #A87932;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.indus-cert-label > span {
    display: inline-block;
    width: 42px;
    height: 2px;
    background: #B88B42;
}

.indus-cert-heading h2 {
    margin: 0 0 20px;

    color: #12452F;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.25;
}

.indus-cert-heading h2 span {
    color: #B88B42;
}

.indus-cert-heading p {
    max-width: 700px;
    margin: 0;

    color: #65716B;
    font-size: 16px;
    line-height: 1.9;
}

/* Certification Grid */

.indus-cert-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 25px;
}

/* Certification Card */

.indus-cert-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    min-width: 0;
    padding: 32px 28px 28px;

    background: #FFFFFF;
    border: 1px solid #E7E0D3;
    border-radius: 5px;
    box-sizing: border-box;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.indus-cert-card::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;

    height: 4px;
    background: #B88B42;

    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.indus-cert-card:hover {
    transform: translateY(-5px);
    border-color: #D7C49E;

    box-shadow: 0 15px 35px rgba(18, 69, 47, 0.08);
}

.indus-cert-card:hover::before {
    transform: scaleX(1);
}

/* PDF Icon */

.indus-cert-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 62px;
    height: 62px;
    margin-bottom: 25px;

    color: #B88B42;
    background: #F6F0E4;
    border-radius: 50%;

    font-size: 27px;
}

/* Category */

.indus-cert-type {
    margin-bottom: 12px;

    color: #A87932;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.6;
}

/* Title */

.indus-cert-card h3 {
    margin: 0 0 14px;

    color: #12452F;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.35;
}

/* Description */

.indus-cert-card > p {
    margin: 0 0 24px;

    color: #65716B;
    font-size: 14px;
    line-height: 1.85;
}

/* Document Details */

.indus-cert-details {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    width: 100%;
    margin-top: auto;
    padding: 16px 0;

    border-top: 1px solid #ECE5D9;

    box-sizing: border-box;
}

.indus-cert-details > span:first-child {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: #68736D;
    font-size: 12px;
}

.indus-cert-details > span:first-child i {
    color: #B88B42;
    font-size: 15px;
}

.indus-cert-standard {
    color: #12452F;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

/* Download Button */

.indus-cert-download {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    width: 100%;
    margin-top: 8px;
    padding: 15px 18px;

    color: #FFFFFF;
    background: #12452F;
    border: 1px solid #12452F;
    border-radius: 3px;

    font-size: 14px;
    font-weight: 600;
    text-decoration: none;

    box-sizing: border-box;
    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        color 0.3s ease;
}

.indus-cert-download i {
    color: #D5B576;
    transition: transform 0.3s ease;
}

.indus-cert-download:hover {
    color: #FFFFFF;
    background: #0B3322;
    border-color: #0B3322;
}

.indus-cert-download:hover i {
    transform: translateX(4px);
}

/* Bottom Note */

.indus-cert-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    margin-top: 32px;
    padding: 20px 24px;

    background: #F3EFE5;
    border-left: 3px solid #B88B42;
}

.indus-cert-note > i {
    margin-top: 4px;
    color: #B88B42;
    font-size: 17px;
}

.indus-cert-note p {
    margin: 0;
    color: #65716B;
    font-size: 13px;
    line-height: 1.8;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .indus-certifications {
        padding: 70px 0;
    }

    .indus-cert-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .indus-cert-heading h2 {
        font-size: 36px;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .indus-certifications {
        padding: 55px 0;
    }

    .indus-certifications .infra-container {
        padding: 0 18px;
    }

    .indus-cert-heading {
        margin-bottom: 32px;
    }

    .indus-cert-heading h2 {
        font-size: 30px;
    }

    .indus-cert-heading p {
        font-size: 14px;
    }

    .indus-cert-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .indus-cert-card {
        padding: 27px 23px 23px;
    }

    .indus-cert-card h3 {
        font-size: 22px;
    }

    .indus-cert-note {
        padding: 17px;
    }
}

/* =========================================
   INDUS PLYWOODS - QUALITY APPROACH
========================================= */

.indus-quality-approach {
    padding: 85px 0 90px;
    background: #FFFFFF;
}

.indus-quality-approach .infra-container {
    width: 100%;
    max-width: 1430px;
    margin: 0 auto;
    padding: 0 28px;
    box-sizing: border-box;
}

/* Section Heading */

.indus-approach-heading {
    max-width: 780px;
    margin-bottom: 45px;
}

.indus-approach-label {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 20px;

    color: #A87932;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.indus-approach-label > span {
    width: 38px;
    height: 2px;
    background: #B88B42;
}

.indus-approach-heading h2 {
    margin: 0 0 18px;

    color: #12452F;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.3;
}

.indus-approach-heading h2 span {
    color: #B88B42;
}

.indus-approach-heading p {
    max-width: 720px;
    margin: 0;

    color: #65716B;
    font-size: 15px;
    line-height: 1.9;
}

/* Quality Grid */

.indus-quality-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

/* Quality Card */

.indus-quality-card {
    position: relative;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    min-width: 0;
    min-height: 330px;
    padding: 30px 25px 25px;

    background: #FAF8F3;
    border: 1px solid #E9E1D4;
    border-radius: 4px;

    box-sizing: border-box;
    overflow: hidden;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

/* Gold Top Accent */

.indus-quality-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 3px;

    background: #B88B42;

    transform: scaleX(0);
    transform-origin: left;

    transition: transform 0.3s ease;
}

/* Hover Effect */

.indus-quality-card:hover {
    transform: translateY(-5px);
    border-color: #D7C49E;

    box-shadow: 0 14px 35px rgba(18, 69, 47, 0.08);
}

.indus-quality-card:hover::before {
    transform: scaleX(1);
}

/* Icon */

.indus-quality-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 54px;
    height: 54px;
    margin-bottom: 23px;

    color: #B88B42;
    background: #F0E7D5;
    border-radius: 50%;

    font-size: 22px;
}

/* Number */

.indus-quality-number {
    margin-bottom: 10px;

    color: #A87932;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

/* Card Heading */

.indus-quality-card h3 {
    margin: 0 0 14px;

    color: #12452F;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

/* Card Description */

.indus-quality-card p {
    margin: 0 0 24px;

    color: #65716B;
    font-size: 13px;
    line-height: 1.9;
}

/* Bottom Accent */

.indus-quality-line {
    width: 42px;
    height: 3px;
    margin-top: auto;

    background: #D5B576;

    transition: width 0.3s ease;
}

.indus-quality-card:hover .indus-quality-line {
    width: 70px;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .indus-quality-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .indus-quality-card {
        min-height: 290px;
    }

    .indus-approach-heading h2 {
        font-size: 36px;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .indus-quality-approach {
        padding: 55px 0 60px;
    }

    .indus-quality-approach .infra-container {
        padding: 0 18px;
    }

    .indus-approach-heading {
        margin-bottom: 30px;
    }

    .indus-approach-heading h2 {
        font-size: 29px;
    }

    .indus-approach-heading p {
        font-size: 14px;
    }

    .indus-quality-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .indus-quality-card {
        min-height: auto;
        padding: 26px 23px;
    }

    .indus-quality-card h3 {
        font-size: 20px;
    }

    .indus-quality-card p {
        font-size: 14px;
        margin-bottom: 22px;
    }
}

/* ==========================================
   INDUS PLYWOODS GOLD 303
   PREMIUM PRODUCT PAGE
========================================== */

.gold303-page {
    --gold303-green: #12452F;
    --gold303-green-dark: #082F20;
    --gold303-gold: #B88B42;
    --gold303-gold-light: #D5B576;
    --gold303-cream: #FAF8F3;
    --gold303-border: #E7E0D3;
    --gold303-text: #65716B;

    color: #24352C;
    background: #FFFFFF;
    overflow: hidden;
}

.gold303-page *,
.gold303-page *::before,
.gold303-page *::after {
    box-sizing: border-box;
}

.gold303-container {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 35px;
}

.gold303-page img {
    display: block;
    max-width: 100%;
}

.gold303-page a {
    text-decoration: none;
}


/* ==========================================
   SHARED SECTION LABEL
========================================== */

.gold303-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;

    color: var(--gold303-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.6;
}

.gold303-eyebrow > span {
    display: inline-block;
    width: 38px;
    height: 2px;
    flex-shrink: 0;
    background: var(--gold303-gold);
}


/* ==========================================
   01. PRODUCT OVERVIEW
========================================== */

.gold303-overview {
    padding: 85px 0 90px;
    background: var(--gold303-cream);
}

.gold303-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.85fr);
    align-items: center;
    gap: 80px;
}

/* Introduction */

.gold303-intro {
    min-width: 0;
}

.gold303-intro > h2 {
    margin: 0 0 25px;

    color: var(--gold303-green);
    font-size: clamp(38px, 4vw, 55px);
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -1.5px;
}

.gold303-model {
    display: block;
    margin-top: 9px;

    color: var(--gold303-gold);
    font-size: 23px;
    font-weight: 600;
    letter-spacing: 0;
}

.gold303-intro > h3 {
    margin: 0 0 25px;

    color: var(--gold303-green);
    font-size: 25px;
    font-weight: 700;
    line-height: 1.5;
}

.gold303-intro > h3 span {
    color: var(--gold303-gold);
}

.gold303-intro > p {
    margin: 0 0 17px;

    color: var(--gold303-text);
    font-size: 15px;
    line-height: 1.95;
}

/* Product Highlights */

.gold303-highlights {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;

    margin: 28px 0 32px;
    padding-top: 25px;

    border-top: 1px solid var(--gold303-border);
}

.gold303-highlight {
    display: flex;
    align-items: flex-start;
    gap: 10px;

    color: var(--gold303-green);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.6;
}

.gold303-highlight i {
    margin-top: 3px;
    color: var(--gold303-gold);
    font-size: 15px;
    flex-shrink: 0;
}

/* Primary Button */

.gold303-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 24px;

    min-height: 54px;
    padding: 15px 24px;

    color: #FFFFFF !important;
    background: var(--gold303-green);
    border: 1px solid var(--gold303-green);
    border-radius: 3px;

    font-size: 14px;
    font-weight: 600;

    transition:
        background 0.3s ease,
        border-color 0.3s ease,
        transform 0.3s ease;
}

.gold303-primary-btn i {
    color: var(--gold303-gold-light);
    transition: transform 0.3s ease;
}

.gold303-primary-btn:hover {
    color: #FFFFFF !important;
    background: var(--gold303-green-dark);
    border-color: var(--gold303-green-dark);
    transform: translateY(-2px);
}

.gold303-primary-btn:hover i {
    transform: translateX(4px);
}


/* ==========================================
   VERTICAL PRODUCT IMAGE
========================================== */

.gold303-product-visual {
    position: relative;
    width: 100%;
    max-width: 470px;
    justify-self: end;
    padding-bottom: 22px;
}

.gold303-product-image {
    position: relative;
    width: 100%;
    height: 590px;

    overflow: hidden;
    background: #E8DFD0;
    border-radius: 4px;
}

.gold303-product-image::after {
    content: "";
    position: absolute;
    inset: 35% 0 0;

    background: linear-gradient(
        to bottom,
        rgba(5, 35, 22, 0),
        rgba(5, 35, 22, 0.86)
    );

    pointer-events: none;
}

.gold303-product-image > img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform 0.7s ease;
}

.gold303-product-visual:hover .gold303-product-image > img {
    transform: scale(1.035);
}

/* Image Caption */

.gold303-image-caption {
    position: absolute;
    z-index: 2;
    right: 28px;
    bottom: 30px;
    left: 28px;

    color: #FFFFFF;
}

.gold303-image-caption > span {
    display: block;
    margin-bottom: 10px;

    color: var(--gold303-gold-light);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.gold303-image-caption h3 {
    margin: 0 0 5px;

    color: #FFFFFF;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.2;
}

.gold303-image-caption p {
    margin: 0;

    color: #F0E8D9;
    font-size: 14px;
}

/* Side Note */

.gold303-image-side-note {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;

    padding-top: 18px;

    color: var(--gold303-green);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.6px;
}

.gold303-side-line {
    display: inline-block;
    width: 35px;
    height: 2px;
    background: var(--gold303-gold);
}


/* ==========================================
   SHARED SECTION HEADING
========================================== */

.gold303-section-heading {
    max-width: 750px;
    margin-bottom: 42px;
}

.gold303-section-heading h2,
.gold303-application-heading h2 {
    margin: 0 0 17px;

    color: var(--gold303-green);
    font-size: 39px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: -0.7px;
}

.gold303-section-heading h2 span,
.gold303-application-heading h2 span {
    color: var(--gold303-gold);
}

.gold303-section-heading > p {
    max-width: 690px;
    margin: 0;

    color: var(--gold303-text);
    font-size: 15px;
    line-height: 1.85;
}


/* ==========================================
   02. SPECIFICATIONS
========================================== */

.gold303-specifications {
    padding: 85px 0 90px;
    background: #FFFFFF;
}

.gold303-spec-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
    align-items: stretch;
    gap: 45px;
}

/* Specification Table */

.gold303-table-wrap {
    width: 100%;
    overflow-x: auto;

    border: 1px solid var(--gold303-border);
    border-radius: 4px;
}

.gold303-spec-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;

    background: #FFFFFF;
    font-size: 14px;
    line-height: 1.65;
}

.gold303-spec-table th {
    padding: 17px 20px;

    color: #FFFFFF;
    background: var(--gold303-green);

    font-size: 13px;
    font-weight: 700;
    text-align: left;
    letter-spacing: 0.4px;
}

.gold303-spec-table th:first-child {
    width: 36%;
}

.gold303-spec-table td {
    padding: 15px 20px;

    color: #33463A;
    vertical-align: top;

    border-bottom: 1px solid #EEE8DD;
    overflow-wrap: anywhere;
}

.gold303-spec-table td:first-child {
    color: var(--gold303-green);
    font-weight: 600;
}

.gold303-spec-table tbody tr:nth-child(even) {
    background: var(--gold303-cream);
}

.gold303-spec-table tbody tr:last-child td {
    border-bottom: none;
}

.gold303-spec-note {
    display: block;
    margin-top: 5px;

    color: #817866;
    font-size: 11px;
    font-style: italic;
    line-height: 1.6;
}

/* Secondary Image */

.gold303-spec-visual {
    position: relative;
    min-width: 0;
    min-height: 460px;

    overflow: hidden;
    background: #E9E0D3;
    border-radius: 4px;
}

.gold303-spec-visual > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;
}

.gold303-spec-visual::after {
    content: "";
    position: absolute;
    inset: 45% 0 0;

    background: linear-gradient(
        to bottom,
        transparent,
        rgba(5, 35, 22, 0.85)
    );

    pointer-events: none;
}

.gold303-spec-image-caption {
    position: absolute;
    z-index: 2;
    right: 20px;
    bottom: 22px;
    left: 20px;

    display: flex;
    align-items: center;
    gap: 14px;

    color: #FFFFFF;
}

.gold303-spec-image-caption > i {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;
    flex-shrink: 0;

    color: var(--gold303-gold-light);
    border: 1px solid rgba(213, 181, 118, 0.7);
    border-radius: 50%;

    font-size: 19px;
}

.gold303-spec-image-caption strong {
    display: block;
    margin-bottom: 5px;

    color: #FFFFFF;
    font-size: 17px;
}

.gold303-spec-image-caption span {
    display: block;

    color: #F1E9DA;
    font-size: 12px;
    line-height: 1.6;
}


/* ==========================================
   03. KEY FEATURES
========================================== */

.gold303-features {
    padding: 85px 0 90px;
    background: var(--gold303-cream);
}

.gold303-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.gold303-feature-card {
    position: relative;

    min-width: 0;
    min-height: 225px;
    padding: 30px 27px;

    background: #FFFFFF;
    border: 1px solid var(--gold303-border);
    border-radius: 4px;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

.gold303-feature-card:hover {
    transform: translateY(-4px);
    border-color: #D7C49E;

    box-shadow: 0 12px 30px rgba(18, 69, 47, 0.07);
}

.gold303-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;
    margin-bottom: 22px;

    color: var(--gold303-gold);
    background: #F5EFDF;
    border-radius: 50%;

    font-size: 21px;
}

.gold303-feature-card h3 {
    margin: 0 0 12px;

    color: var(--gold303-green);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.45;
}

.gold303-feature-card p {
    margin: 0;

    color: var(--gold303-text);
    font-size: 13px;
    line-height: 1.85;
}


/* ==========================================
   04. APPLICATIONS
========================================== */

.gold303-applications {
    padding: 85px 0 95px;
    background: #FFFFFF;
}

.gold303-application-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;

    margin-bottom: 40px;
}

.gold303-application-heading > div {
    flex: 1 1 60%;
    min-width: 0;
}

.gold303-application-heading h2 {
    margin-bottom: 0;
}

.gold303-application-heading > p {
    flex: 0 1 380px;
    margin: 0 0 5px;

    color: var(--gold303-text);
    font-size: 14px;
    line-height: 1.9;
}

/* Application Grid */

.gold303-application-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.gold303-application-card {
    min-width: 0;

    background: var(--gold303-cream);
    border: 1px solid var(--gold303-border);
    border-radius: 4px;
    overflow: hidden;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.gold303-application-card:hover {
    transform: translateY(-4px);

    box-shadow: 0 12px 28px rgba(18, 69, 47, 0.09);
}

/* Application Image */

.gold303-application-image {
    position: relative;
    height: 205px;

    overflow: hidden;
    background: #E9E0D3;
}

.gold303-application-image > img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform 0.6s ease;
}

.gold303-application-card:hover
.gold303-application-image > img {
    transform: scale(1.06);
}

/* Application Number */

.gold303-application-number {
    position: absolute;
    top: 12px;
    left: 12px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    color: #FFFFFF;
    background: var(--gold303-green);

    font-size: 11px;
    font-weight: 700;
}

/* Application Content */

.gold303-application-content {
    padding: 23px 20px 25px;
}

.gold303-application-content h3 {
    margin: 0 0 10px;

    color: var(--gold303-green);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.5;
}

.gold303-application-content p {
    margin: 0;

    color: var(--gold303-text);
    font-size: 12px;
    line-height: 1.85;
}


/* ==========================================
   05. FINAL ENQUIRY CTA
========================================== */

.gold303-cta {
    position: relative;
    padding: 65px 0;

    color: #FFFFFF;
    background: var(--gold303-green-dark);
    overflow: hidden;
}

/* Subtle decorative accent */

.gold303-cta::before {
    content: "";
    position: absolute;
    top: -140px;
    right: -70px;

    width: 430px;
    height: 430px;

    border: 1px solid rgba(213, 181, 118, 0.13);
    border-radius: 50%;

    pointer-events: none;
}

.gold303-cta::after {
    content: "";
    position: absolute;
    top: -85px;
    right: -15px;

    width: 320px;
    height: 320px;

    border: 1px solid rgba(213, 181, 118, 0.10);
    border-radius: 50%;

    pointer-events: none;
}

.gold303-cta-inner {
    position: relative;
    z-index: 1;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.gold303-cta-content {
    max-width: 730px;
}

.gold303-cta-content > span {
    display: block;
    margin-bottom: 16px;

    color: var(--gold303-gold-light);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.gold303-cta-content h2 {
    margin: 0 0 16px;

    color: #FFFFFF;
    font-size: 37px;
    font-weight: 800;
    line-height: 1.35;
}

.gold303-cta-content p {
    max-width: 570px;
    margin: 0;

    color: #D7E1D9;
    font-size: 14px;
    line-height: 1.85;
}

/* CTA Button */

.gold303-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 20px;

    flex-shrink: 0;
    min-height: 55px;
    padding: 16px 25px;

    color: var(--gold303-green-dark) !important;
    background: var(--gold303-gold-light);
    border: 1px solid var(--gold303-gold-light);
    border-radius: 3px;

    font-size: 14px;
    font-weight: 700;

    transition:
        background 0.3s ease,
        transform 0.3s ease;
}

.gold303-cta-button i {
    transition: transform 0.3s ease;
}

.gold303-cta-button:hover {
    color: var(--gold303-green-dark) !important;
    background: #E5C78C;
    transform: translateY(-2px);
}

.gold303-cta-button:hover i {
    transform: translateX(4px);
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1100px) {

    .gold303-container {
        padding: 0 25px;
    }

    .gold303-overview-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr);
        gap: 40px;
    }

    .gold303-product-image {
        height: 520px;
    }

    .gold303-spec-layout {
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.7fr);
        gap: 25px;
    }

    .gold303-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gold303-application-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

    .gold303-application-image {
        height: 240px;
    }

}


/* ==========================================
   MOBILE / SMALL TABLET
========================================== */

@media (max-width: 767px) {

    .gold303-container {
        padding: 0 20px;
    }

    /* Overview */

    .gold303-overview {
        padding: 55px 0 60px;
    }

    .gold303-overview-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .gold303-intro > h2 {
        font-size: 39px;
        letter-spacing: -1px;
    }

    .gold303-model {
        font-size: 21px;
    }

    .gold303-intro > h3 {
        font-size: 22px;
    }

    .gold303-intro > p {
        font-size: 14px;
    }

    .gold303-highlights {
        gap: 13px;
    }

    .gold303-highlight {
        font-size: 12px;
    }

    /* Portrait Image */

    .gold303-product-visual {
        width: 100%;
        max-width: 460px;
        margin: 0 auto;
        justify-self: center;
    }

    .gold303-product-image {
        height: 520px;
    }

    .gold303-image-caption h3 {
        font-size: 30px;
    }

    /* Shared Headings */

    .gold303-section-heading {
        margin-bottom: 30px;
    }

    .gold303-section-heading h2,
    .gold303-application-heading h2 {
        font-size: 31px;
    }

    /* Specifications */

    .gold303-specifications {
        padding: 60px 0;
    }

    .gold303-spec-layout {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .gold303-spec-table {
        font-size: 12px;
    }

    .gold303-spec-table th {
        padding: 13px 12px;
        font-size: 12px;
    }

    .gold303-spec-table td {
        padding: 13px 12px;
    }

    .gold303-spec-table th:first-child {
        width: 38%;
    }

    .gold303-spec-visual {
        min-height: 360px;
    }

    /* Features */

    .gold303-features {
        padding: 60px 0;
    }

    .gold303-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .gold303-feature-card {
        min-height: 225px;
        padding: 22px 18px;
    }

    .gold303-feature-icon {
        width: 46px;
        height: 46px;
        margin-bottom: 17px;
        font-size: 18px;
    }

    .gold303-feature-card h3 {
        font-size: 16px;
    }

    .gold303-feature-card p {
        font-size: 12px;
    }

    /* Applications */

    .gold303-applications {
        padding: 60px 0;
    }

    .gold303-application-heading {
        display: block;
        margin-bottom: 30px;
    }

    .gold303-application-heading > p {
        margin-top: 18px;
    }

    .gold303-application-grid {
        gap: 15px;
    }

    .gold303-application-image {
        height: 190px;
    }

    .gold303-application-content {
        padding: 18px 15px 20px;
    }

    .gold303-application-content h3 {
        font-size: 15px;
    }

    .gold303-application-content p {
        font-size: 12px;
    }

    /* CTA */

    .gold303-cta {
        padding: 50px 0;
    }

    .gold303-cta-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 28px;
    }

    .gold303-cta-content h2 {
        font-size: 30px;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 420px) {

    .gold303-container {
        padding: 0 16px;
    }

    .gold303-eyebrow {
        font-size: 10px;
        letter-spacing: 1.5px;
    }

    .gold303-intro > h2 {
        font-size: 35px;
    }

    .gold303-intro > h3 {
        font-size: 20px;
    }

    .gold303-highlights {
        grid-template-columns: 1fr;
    }

    .gold303-product-image {
        height: 440px;
    }

    .gold303-section-heading h2,
    .gold303-application-heading h2 {
        font-size: 27px;
    }

    .gold303-feature-grid {
        grid-template-columns: 1fr;
    }

    .gold303-feature-card {
        min-height: auto;
    }

    .gold303-application-grid {
        grid-template-columns: 1fr;
    }

    .gold303-application-image {
        height: 230px;
    }

    .gold303-cta-content h2 {
        font-size: 27px;
    }

    .gold303-cta-button {
        width: 100%;
        justify-content: space-between;
    }

}
```css
/* =========================================
   INDUS PLYWOODS - PRODUCT PAGE
========================================= */

.indus-product-section,
.indus-spec-section,
.indus-features-section,
.indus-applications-section,
.indus-product-cta {
    font-family: inherit;
    box-sizing: border-box;
}

.indus-product-section *,
.indus-spec-section *,
.indus-features-section *,
.indus-applications-section *,
.indus-product-cta * {
    box-sizing: border-box;
}

.indus-product-container,
.indus-spec-container,
.indus-features-container,
.indus-applications-container,
.indus-product-cta-container {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding-left: 25px;
    padding-right: 25px;
}


/* PRODUCT INTRODUCTION */

.indus-product-section {
    padding: 85px 0;
    background: #ffffff;
}

.indus-product-grid {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 75px;
    align-items: center;
}

.indus-product-visual {
    position: relative;
    max-width: 470px;
    width: 100%;
    margin: 0 auto;
}

.indus-product-image {
    height: 590px;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    background: #eee7db;
}

.indus-product-image > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.indus-product-image-label {
    position: absolute;
    top: 20px;
    left: 20px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 15px;
    background: rgba(255, 255, 255, 0.95);
    color: #12452f;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
}

.indus-product-label-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #b98b43;
}

.indus-product-image-caption {
    position: relative;
    display: flex;
    align-items: center;
    gap: 16px;
    margin: -55px 20px 0;
    padding: 22px;
    background: #12452f;
    color: #ffffff;
    border-radius: 5px;
    z-index: 2;
}

.indus-product-caption-icon {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #c49a52;
    border-radius: 50%;
    color: #d5b576;
    font-size: 20px;
}

.indus-product-image-caption h4 {
    margin: 0 0 6px;
    color: #ffffff;
    font-size: 19px;
    font-weight: 700;
}

.indus-product-image-caption p {
    margin: 0;
    color: #e6e8e5;
    font-size: 13px;
    line-height: 1.6;
}


/* COMMON EYEBROW */

.indus-product-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 22px;
    color: #b98b43;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.indus-product-eyebrow > span {
    width: 35px;
    height: 2px;
    background: #b98b43;
}

.indus-product-details h2,
.indus-spec-heading h2,
.indus-features-heading h2,
.indus-applications-heading h2 {
    margin: 0 0 22px;
    color: #12452f;
    font-size: 43px;
    line-height: 1.2;
    font-weight: 750;
}

.indus-product-details h2 span,
.indus-spec-heading h2 span,
.indus-features-heading h2 span,
.indus-applications-heading h2 span {
    color: #b98b43;
}

.indus-product-details h3 {
    margin: 0 0 20px;
    color: #12452f;
    font-size: 21px;
    font-weight: 650;
}

.indus-product-details > p {
    margin: 0 0 17px;
    color: #626b66;
    font-size: 15px;
    line-height: 1.9;
}


/* PRODUCT HIGHLIGHTS */

.indus-product-highlights {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 20px;
    margin: 28px 0 32px;
    padding: 22px 0;
    border-top: 1px solid #e8e0d3;
    border-bottom: 1px solid #e8e0d3;
}

.indus-highlight-item {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #174b36;
    font-size: 13px;
    font-weight: 600;
}

.indus-highlight-item i {
    color: #b98b43;
    font-size: 16px;
}

.indus-product-enquiry-btn,
.indus-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 17px 25px;
    background: #b98b43;
    color: #123d2c;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.indus-product-enquiry-btn:hover,
.indus-cta-button:hover {
    background: #12452f;
    color: #ffffff;
}

.indus-product-enquiry-btn i,
.indus-cta-button i {
    transition: transform 0.3s ease;
}

.indus-product-enquiry-btn:hover i,
.indus-cta-button:hover i {
    transform: translateX(5px);
}


/* =========================================
   TECHNICAL SPECIFICATIONS
========================================= */

.indus-spec-section {
    padding: 85px 0;
    background: #faf8f4;
}

.indus-spec-heading {
    margin-bottom: 45px;
}

.indus-spec-heading > p,
.indus-features-heading > p {
    max-width: 720px;
    margin: 0;
    color: #68716c;
    font-size: 16px;
    line-height: 1.8;
}

.indus-spec-grid {
    display: grid;
    grid-template-columns: 1.6fr 0.95fr;
    gap: 35px;
    align-items: stretch;
}

.indus-spec-table-wrapper {
    overflow-x: auto;
    border: 1px solid #e7dfd3;
    border-radius: 5px;
    background: #ffffff;
}

.indus-spec-table {
    width: 100%;
    border-collapse: collapse;
    color: #263d32;
    font-size: 15px;
}

.indus-spec-table thead {
    background: #12452f;
    color: #ffffff;
}

.indus-spec-table th {
    padding: 21px 24px;
    text-align: left;
    font-size: 14px;
    font-weight: 700;
}

.indus-spec-table td {
    padding: 19px 24px;
    border-bottom: 1px solid #eee7dc;
    line-height: 1.7;
    vertical-align: top;
}

.indus-spec-table tbody tr:nth-child(even) {
    background: #faf8f4;
}

.indus-spec-table tbody tr:last-child td {
    border-bottom: none;
}

.indus-spec-table td:first-child {
    width: 38%;
    color: #12452f;
    font-weight: 700;
}

.indus-spec-table small {
    display: block;
    margin-top: 5px;
    color: #88877e;
    font-size: 12px;
    font-style: italic;
    line-height: 1.6;
}


/* SPECIFICATION IMAGE */

.indus-spec-visual {
    position: relative;
    min-height: 560px;
    overflow: hidden;
    border-radius: 5px;
    background: #e8e0d3;
}

.indus-spec-visual > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.indus-spec-visual-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(7, 36, 24, 0.92) 0%,
        rgba(18, 69, 47, 0.2) 55%,
        rgba(18, 69, 47, 0.03) 100%
    );
}

.indus-spec-visual-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    gap: 17px;
    padding: 28px 24px;
    color: #ffffff;
}

.indus-spec-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: #d5b576;
    border: 1px solid #b98b43;
    border-radius: 50%;
    font-size: 21px;
}

.indus-spec-visual-caption h3 {
    margin: 0 0 7px;
    color: #ffffff;
    font-size: 19px;
}

.indus-spec-visual-caption p {
    margin: 0;
    color: #f0eee9;
    font-size: 13px;
    line-height: 1.6;
}


/* =========================================
   KEY FEATURES
========================================= */

.indus-features-section {
    padding: 85px 0;
    background: #ffffff;
}

.indus-features-heading {
    margin-bottom: 42px;
}

.indus-features-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.indus-feature-card {
    padding: 32px 25px;
    background: #faf8f4;
    border: 1px solid #e9e0d3;
    border-radius: 5px;
    transition: transform 0.3s ease,
                box-shadow 0.3s ease,
                border-color 0.3s ease;
}

.indus-feature-card:hover {
    transform: translateY(-5px);
    border-color: #c5a263;
    box-shadow: 0 12px 30px rgba(18, 69, 47, 0.07);
}

.indus-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 53px;
    height: 53px;
    margin-bottom: 23px;
    background: #12452f;
    color: #d5b576;
    border-radius: 5px;
    font-size: 21px;
}

.indus-feature-card h3 {
    margin: 0 0 13px;
    color: #12452f;
    font-size: 18px;
    line-height: 1.5;
}

.indus-feature-card p {
    margin: 0;
    color: #68716c;
    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   APPLICATIONS
========================================= */

.indus-applications-section {
    padding: 85px 0;
    background: #faf8f4;
}

.indus-applications-heading {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    align-items: end;
    gap: 40px;
    margin-bottom: 40px;
}

.indus-applications-heading h2 {
    margin-bottom: 0;
}

.indus-applications-heading > p {
    margin: 0 0 5px;
    color: #68716c;
    font-size: 15px;
    line-height: 1.9;
}

.indus-applications-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
}

.indus-application-card {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #e8dfd2;
    border-radius: 5px;
    transition: transform 0.3s ease,
                box-shadow 0.3s ease;
}

.indus-application-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(18, 69, 47, 0.09);
}

.indus-application-image {
    width: 100%;
    height: 220px;
    overflow: hidden;
    background: #e9e3d9;
}

.indus-application-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.indus-application-card:hover .indus-application-image img {
    transform: scale(1.05);
}

.indus-application-content {
    padding: 25px 23px;
}

.indus-application-content h3 {
    margin: 0 0 12px;
    color: #12452f;
    font-size: 18px;
    line-height: 1.5;
}

.indus-application-content p {
    margin: 0;
    color: #68716c;
    font-size: 14px;
    line-height: 1.8;
}


/* =========================================
   FINAL ENQUIRY BANNER
========================================= */

.indus-product-cta {
    padding: 65px 0;
    background: #103c2a;
}

.indus-product-cta-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.indus-product-cta-container > div > span {
    display: block;
    margin-bottom: 14px;
    color: #d5b576;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.indus-product-cta h2 {
    margin: 0 0 14px;
    color: #ffffff;
    font-size: 32px;
    line-height: 1.3;
}

.indus-product-cta p {
    max-width: 650px;
    margin: 0;
    color: #d9e0db;
    font-size: 15px;
    line-height: 1.8;
}

.indus-cta-button {
    flex-shrink: 0;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .indus-product-grid {
        gap: 40px;
    }

    .indus-product-details h2,
    .indus-spec-heading h2,
    .indus-features-heading h2,
    .indus-applications-heading h2 {
        font-size: 36px;
    }

    .indus-features-grid,
    .indus-applications-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .indus-spec-grid {
        grid-template-columns: 1fr 0.8fr;
        gap: 25px;
    }

    .indus-spec-visual {
        min-height: 520px;
    }
}


/* =========================================
   MOBILE & SMALL TABLET
========================================= */

@media (max-width: 767px) {

    .indus-product-container,
    .indus-spec-container,
    .indus-features-container,
    .indus-applications-container,
    .indus-product-cta-container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .indus-product-section,
    .indus-spec-section,
    .indus-features-section,
    .indus-applications-section {
        padding: 55px 0;
    }

    .indus-product-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .indus-product-visual {
        max-width: 430px;
    }

    .indus-product-image {
        height: 480px;
    }

    .indus-product-details h2,
    .indus-spec-heading h2,
    .indus-features-heading h2,
    .indus-applications-heading h2 {
        font-size: 32px;
    }

    .indus-product-details h3 {
        font-size: 19px;
    }

    .indus-product-details > p {
        font-size: 14px;
    }

    .indus-product-highlights {
        gap: 15px 12px;
    }

    .indus-highlight-item {
        align-items: flex-start;
        font-size: 12px;
        line-height: 1.6;
    }

    .indus-product-enquiry-btn {
        width: 100%;
        padding: 16px 18px;
        font-size: 13px;
    }

    .indus-spec-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .indus-spec-visual {
        min-height: 400px;
    }

    .indus-spec-table {
        min-width: 520px;
        font-size: 13px;
    }

    .indus-spec-table th,
    .indus-spec-table td {
        padding: 15px;
    }

    .indus-features-grid,
    .indus-applications-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .indus-feature-card {
        padding: 25px;
    }

    .indus-applications-heading {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .indus-application-image {
        height: 250px;
    }

    .indus-product-cta {
        padding: 50px 0;
    }

    .indus-product-cta-container {
        flex-direction: column;
        align-items: flex-start;
        gap: 28px;
    }

    .indus-product-cta h2 {
        font-size: 27px;
    }

    .indus-cta-button {
        width: 100%;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .indus-product-image {
        height: 400px;
    }

    .indus-product-highlights {
        grid-template-columns: 1fr;
    }

    .indus-product-details h2,
    .indus-spec-heading h2,
    .indus-features-heading h2,
    .indus-applications-heading h2 {
        font-size: 28px;
    }

    .indus-product-image-caption {
        margin-left: 12px;
        margin-right: 12px;
        padding: 16px;
    }
}
/* ==========================================
   INDUS PLYWOODS CLUB 710 BWP PRODUCT PAGE
========================================== */

.club-product-section {
    --club-green: #12452F;
    --club-dark: #092E20;
    --club-gold: #B98C43;
    --club-light-gold: #D8B46F;
    --club-cream: #FAF8F3;
    --club-border: #E8DFD1;
    --club-text: #52615A;

    padding: 75px 0;
    background: #fff;
    color: var(--club-dark);
    font-family: inherit;
}

.club-product-container {
    width: min(1400px, 92%);
    margin: 0 auto;
}

.club-product-section * {
    box-sizing: border-box;
}


/* SECTION LABEL */

.club-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    color: var(--club-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.club-eyebrow::before {
    content: "";
    width: 34px;
    height: 2px;
    background: var(--club-gold);
}


/* PRODUCT INTRODUCTION */

.club-product-intro {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    align-items: center;
    gap: 70px;
    margin-bottom: 100px;
}

.club-product-info h2 {
    margin: 0 0 20px;
    color: var(--club-green);
    font-size: clamp(32px, 3vw, 46px);
    font-weight: 750;
    line-height: 1.2;
}

.club-product-info h2 span,
.club-section-heading h2 span,
.club-applications-heading h2 span {
    color: var(--club-gold);
}

.club-product-info h3 {
    margin: 0 0 22px;
    color: var(--club-dark);
    font-size: 21px;
    font-weight: 600;
    line-height: 1.5;
}

.club-product-info p {
    margin: 0 0 17px;
    color: var(--club-text);
    font-size: 15px;
    line-height: 1.9;
}


/* PRODUCT IMAGE */

.club-product-visual {
    position: relative;
    min-width: 0;
    height: 570px;
    overflow: hidden;
    border-radius: 5px;
    background: #EDE5D9;
    box-shadow: 0 20px 55px rgba(9, 46, 32, 0.10);
}

.club-product-image {
    width: 100%;
    height: 100%;
}

.club-product-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.club-product-image-caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    display: flex;
    align-items: center;
    gap: 18px;

    padding: 35px 28px 25px;
    color: #fff;

    background: linear-gradient(
        to top,
        rgba(9, 46, 32, 0.95),
        rgba(9, 46, 32, 0.65),
        transparent
    );
}

.club-check-icon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    border: 1px solid var(--club-gold);
    border-radius: 50%;
    color: var(--club-light-gold);
    font-size: 20px;
}

.club-product-image-caption h4,
.club-specification-overlay h3 {
    margin: 0 0 7px;
    color: #fff;
    font-size: 21px;
    font-weight: 700;
}

.club-product-image-caption p,
.club-specification-overlay p {
    margin: 0;
    color: #fff;
    font-size: 13px;
    line-height: 1.6;
}


/* BUTTON */

.club-enquiry-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;

    margin-top: 16px;
    padding: 17px 25px;

    background: var(--club-gold);
    border: 1px solid var(--club-gold);
    border-radius: 3px;

    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;

    transition: background 0.3s ease, transform 0.3s ease;
}

.club-enquiry-btn:hover {
    background: var(--club-green);
    border-color: var(--club-green);
    color: #fff;
    transform: translateY(-2px);
}


/* SECTION HEADINGS */

.club-section-heading {
    max-width: 760px;
    margin-bottom: 38px;
}

.club-section-heading h2,
.club-applications-heading h2 {
    margin: 0 0 16px;
    color: var(--club-green);
    font-size: clamp(30px, 3vw, 42px);
    font-weight: 750;
    line-height: 1.2;
}

.club-section-heading > p,
.club-applications-heading > p {
    margin: 0;
    color: var(--club-text);
    font-size: 15px;
    line-height: 1.8;
}


/* TECHNICAL SPECIFICATIONS */

.club-specifications-section {
    margin-bottom: 100px;
}

.club-specifications-layout {
    display: grid;
    grid-template-columns: 1.55fr 0.9fr;
    gap: 38px;
    align-items: stretch;
}

.club-specification-table {
    overflow: hidden;
    border: 1px solid var(--club-border);
    border-radius: 4px;
}

.club-specification-row {
    display: grid;
    grid-template-columns: 38% 62%;
    align-items: center;
    min-height: 67px;
    border-bottom: 1px solid var(--club-border);
}

.club-specification-row:last-child {
    border-bottom: none;
}

.club-specification-row > div {
    padding: 19px 24px;
    color: var(--club-text);
    font-size: 15px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.club-specification-row > div:first-child {
    color: var(--club-green);
    font-weight: 700;
}

.club-specification-row:nth-child(even) {
    background: var(--club-cream);
}

.club-specification-row.club-table-header {
    min-height: 68px;
    background: var(--club-green);
}

.club-specification-row.club-table-header > div {
    color: #fff;
    font-weight: 700;
}

.club-specification-row small {
    display: block;
    margin-top: 5px;
    color: #887E70;
    font-size: 12px;
    font-style: italic;
}


/* SPECIFICATION IMAGE */

.club-specification-visual {
    position: relative;
    min-height: 100%;
    min-width: 0;
    overflow: hidden;
    border-radius: 4px;
    background: #E9E0D3;
}

.club-specification-visual > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.club-specification-visual::after {
    position: absolute;
    inset: 0;
    content: "";
    background: linear-gradient(
        to top,
        rgba(9, 46, 32, 0.96),
        rgba(9, 46, 32, 0.35) 38%,
        transparent 75%
    );
}

.club-specification-overlay {
    position: absolute;
    z-index: 2;
    right: 22px;
    bottom: 25px;
    left: 22px;

    display: flex;
    align-items: center;
    gap: 18px;
}


/* KEY FEATURES */

.club-features-section {
    margin-bottom: 100px;
}

.club-features-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.club-feature-card {
    padding: 30px 26px;
    border: 1px solid var(--club-border);
    background: #fff;
    transition: border-color 0.3s ease, transform 0.3s ease,
        box-shadow 0.3s ease;
}

.club-feature-card:hover {
    transform: translateY(-5px);
    border-color: var(--club-gold);
    box-shadow: 0 15px 35px rgba(9, 46, 32, 0.07);
}

.club-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;
    margin-bottom: 20px;

    border-radius: 3px;
    background: #F5EFE4;
    color: var(--club-gold);
    font-size: 21px;
}

.club-feature-card h3 {
    margin: 0 0 12px;
    color: var(--club-green);
    font-size: 19px;
    font-weight: 700;
}

.club-feature-card p {
    margin: 0;
    color: var(--club-text);
    font-size: 14px;
    line-height: 1.8;
}


/* APPLICATIONS */

.club-applications-section {
    margin-bottom: 85px;
}

.club-applications-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;
    margin-bottom: 35px;
}

.club-applications-heading > div {
    flex: 1;
}

.club-applications-heading > p {
    max-width: 390px;
    padding-bottom: 5px;
}

.club-applications-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.club-application-card {
    overflow: hidden;
    border: 1px solid var(--club-border);
    border-radius: 4px;
    background: var(--club-cream);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.club-application-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(9, 46, 32, 0.08);
}

.club-application-card > img {
    display: block;
    width: 100%;
    height: 225px;
    object-fit: cover;
    object-position: center;
    background: #E8E1D7;
}

.club-application-content {
    padding: 24px;
}

.club-application-content > span {
    display: inline-block;
    margin-bottom: 13px;
    color: var(--club-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.club-application-content h3 {
    margin: 0 0 12px;
    color: var(--club-green);
    font-size: 19px;
    line-height: 1.45;
}

.club-application-content p {
    margin: 0;
    color: var(--club-text);
    font-size: 14px;
    line-height: 1.8;
}


/* FINAL CTA */

.club-product-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;

    padding: 45px 48px;
    border-radius: 4px;

    background: var(--club-green);
    color: #fff;
}

.club-product-cta .club-eyebrow {
    margin-bottom: 14px;
    color: var(--club-light-gold);
}

.club-product-cta h2 {
    max-width: 750px;
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(24px, 2.4vw, 32px);
    font-weight: 700;
    line-height: 1.35;
}

.club-product-cta p {
    max-width: 700px;
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
    line-height: 1.8;
}

.club-product-cta .club-cta-btn {
    flex-shrink: 0;
    margin-top: 0;
    background: var(--club-gold);
    color: #fff;
}


/* ==========================================
   TABLET RESPONSIVE
========================================== */

@media (max-width: 991px) {

    .club-product-section {
        padding: 55px 0;
    }

    .club-product-intro {
        grid-template-columns: 1fr 0.85fr;
        gap: 30px;
        margin-bottom: 75px;
    }

    .club-product-visual {
        height: 480px;
    }

    .club-specifications-layout {
        grid-template-columns: 1fr;
    }

    .club-specification-visual {
        min-height: 420px;
    }

    .club-features-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .club-applications-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .club-product-cta {
        padding: 35px;
    }
}


/* ==========================================
   MOBILE RESPONSIVE
========================================== */

@media (max-width: 767px) {

    .club-product-section {
        padding: 40px 0;
    }

    .club-product-container {
        width: 92%;
    }

    .club-product-intro {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 65px;
    }

    .club-product-info h2 {
        font-size: 32px;
    }

    .club-product-info h3 {
        font-size: 19px;
    }

    .club-product-info p {
        font-size: 14px;
    }

    .club-product-visual {
        height: 440px;
    }

    .club-section-heading h2,
    .club-applications-heading h2 {
        font-size: 30px;
    }

    .club-specifications-section,
    .club-features-section {
        margin-bottom: 65px;
    }

    .club-specifications-layout {
        gap: 24px;
    }

    .club-specification-row {
        grid-template-columns: 40% 60%;
    }

    .club-specification-row > div {
        padding: 15px 12px;
        font-size: 13px;
    }

    .club-specification-visual {
        min-height: 380px;
    }

    .club-features-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .club-feature-card {
        padding: 25px 22px;
    }

    .club-applications-heading {
        display: block;
    }

    .club-applications-heading > p {
        margin-top: 15px;
    }

    .club-applications-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .club-application-card > img {
        height: 230px;
    }

    .club-product-cta {
        display: block;
        padding: 30px 24px;
    }

    .club-product-cta h2 {
        font-size: 26px;
    }

    .club-product-cta .club-cta-btn {
        margin-top: 25px;
    }
}


/* SMALL MOBILE */

@media (max-width: 380px) {

    .club-product-info h2 {
        font-size: 28px;
    }

    .club-product-visual {
        height: 380px;
    }

    .club-specification-row {
        grid-template-columns: 42% 58%;
    }

    .club-specification-row > div {
        padding: 12px 8px;
        font-size: 12px;
    }

    .club-product-image-caption {
        gap: 12px;
        padding: 25px 15px 20px;
    }

    .club-check-icon {
        width: 42px;
        height: 42px;
    }
}

    
/* =========================================
   SHUTTERING PLYWOOD PAGE
   Theme: Green, Gold and Cream
========================================= */

.shuttering-page {
    --sp-green: #174631;
    --sp-dark: #123b2b;
    --sp-gold: #b58b43;
    --sp-cream: #f8f6f0;
    --sp-white: #ffffff;
    --sp-text: #696b65;
    --sp-border: #e5dccb;

    color: var(--sp-text);
    font-family: "DM Sans", Arial, sans-serif;
    overflow: hidden;
}

.shuttering-page *,
.shuttering-page *::before,
.shuttering-page *::after {
    box-sizing: border-box;
}

.shuttering-page img {
    display: block;
    max-width: 100%;
}

.shuttering-container {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}


/* =========================================
   SHARED HEADINGS
========================================= */

.shuttering-eyebrow,
.shuttering-section-label {
    display: inline-block;
    color: var(--sp-gold);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.8px;
    line-height: 1.7;
}

.shuttering-gold-line {
    display: block;
    width: 48px;
    height: 3px;
    margin: 20px 0;
    background: var(--sp-gold);
}

.shuttering-section-heading {
    margin-bottom: 30px;
}

.shuttering-section-heading h2,
.shuttering-intro-heading h2,
.shuttering-applications-heading h2 {
    margin: 10px 0 12px;
    color: var(--sp-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(29px, 3vw, 38px);
    font-weight: 600;
    line-height: 1.25;
}

.shuttering-section-heading h2 span,
.shuttering-intro-heading h2 span,
.shuttering-applications-heading h2 span {
    color: var(--sp-gold);
}

.shuttering-section-heading > p {
    max-width: 650px;
    margin: 0;
    font-size: 13px;
    line-height: 1.8;
}


/* =========================================
   HERO
========================================= */

.shuttering-hero {
    position: relative;
    padding: 75px 25px;
    background: var(--sp-cream);
}   


.shuttering-hero::after {
    content: "";
    position: absolute;
    top: -180px;
    right: -120px;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(217, 179, 101, 0.2);
    border-radius: 50%;
    pointer-events: none;
}

.shuttering-hero-inner {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    align-items: center;
    gap: 65px;
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
}

.shuttering-hero-content h2 {
    margin: 17px 0 0;
    color: #123b2b;
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(40px, 5vw, 64px);
    font-weight: 600;
    line-height: 1.03;
    letter-spacing: -1px;
}

.shuttering-hero-content h2 span {
    display: block;
    margin-top: 8px;
    color: #d9b365;
}

.shuttering-hero-content h2 {
    margin: 22px 0 14px;
    color: #174631;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.6;
}

.shuttering-hero-content h2 span {
    display: block;
    color: #d9b365;
}

.shuttering-hero-content > p {
    max-width: 500px;
    margin: 0;
    color: #000;
    font-size: 14px;
    line-height: 1.9;
}

.shuttering-variants {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 25px 0 27px;
}

.shuttering-variants span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 82px;
    padding: 10px 15px;
    border: 1px solid rgba(217, 179, 101, 0.65);
    color: var(--sp-green);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.shuttering-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 48px;
    padding: 13px 19px;
    background: var(--sp-gold);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.3s ease;
}

.shuttering-button:hover {
    background: #9c742f;
}

.shuttering-button span {
    font-size: 20px;
    transition: transform 0.3s ease;
}

.shuttering-button:hover span {
    transform: translateX(4px);
}


/* Hero product image */

.shuttering-hero-visual {
    position: relative;
    min-width: 0;
    padding-bottom: 24px;
}

.shuttering-hero-image {
    height: 390px;
    overflow: hidden;
    background: #e9dfce;
}

.shuttering-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

.shuttering-hero-image:hover img {
    transform: scale(1.025);
}

.shuttering-image-caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 35px;
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 78px;
    padding: 17px 20px;
    background: var(--sp-cream);
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
}

.shuttering-caption-number {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--sp-gold);
    color: #ffffff;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 13px;
}

.shuttering-image-caption strong,
.shuttering-image-caption div > span {
    display: block;
}

.shuttering-image-caption strong {
    color: var(--sp-green);
    font-size: 11px;
    letter-spacing: 2px;
}

.shuttering-image-caption div > span {
    margin-top: 5px;
    color: var(--sp-text);
    font-size: 12px;
}


/* =========================================
   INTRODUCTION
========================================= */

.shuttering-intro {
    padding: 75px 25px;
    background: #ffffff;
}

.shuttering-intro-grid {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 75px;
}

.shuttering-intro-heading h2 {
    max-width: 390px;
    font-size: clamp(31px, 3.5vw, 43px);
}

.shuttering-intro-content > p {
    margin: 0 0 15px;
    font-size: 13px;
    line-height: 1.9;
}

.shuttering-intro-highlights {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid var(--sp-border);
}

.shuttering-highlight {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.shuttering-highlight-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #efe6d5;
    color: var(--sp-gold);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 12px;
    font-weight: 700;
}

.shuttering-highlight h3 {
    margin: 2px 0 6px;
    color: var(--sp-green);
    font-size: 12px;
    font-weight: 700;
}

.shuttering-highlight p {
    margin: 0;
    font-size: 11px;
    line-height: 1.7;
}


/* =========================================
   TECHNICAL SPECIFICATIONS
========================================= */

.shuttering-specifications {
    padding: 70px 25px;
    background: var(--sp-cream);
}

.shuttering-spec-grid {
    display: grid;
    grid-template-columns: 1.3fr 0.7fr;
    align-items: start;
    gap: 35px;
}

.shuttering-table-wrapper {
    min-width: 0;
}

.shuttering-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 12px;
}

.shuttering-table th {
    padding: 14px 15px;
    background: var(--sp-green);
    color: #ffffff;
    text-align: left;
    font-size: 11px;
    font-weight: 700;
}

.shuttering-table th:first-child {
    width: 36%;
}

.shuttering-table td {
    padding: 13px 15px;
    border: 1px solid var(--sp-border);
    color: #555b53;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.shuttering-table tbody tr:nth-child(even) {
    background: var(--sp-cream);
}

.shuttering-table td:first-child {
    color: var(--sp-green);
    font-weight: 600;
}

.shuttering-spec-note {
    margin: 13px 0 0;
    font-size: 10px;
    line-height: 1.7;
}

.shuttering-spec-visual {
    position: relative;
    min-height: 310px;
    overflow: hidden;
    background: #e9dfce;
}

.shuttering-spec-visual > img {
    width: 100%;
    height: 310px;
    object-fit: cover;
    object-position: center;
}

.shuttering-spec-image-caption {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 35px 20px 18px;
    background: linear-gradient(
        transparent,
        rgba(18, 59, 43, 0.94)
    );
    color: #ffffff;
}

.shuttering-spec-image-caption > span {
    color: #e5c47f;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
}

.shuttering-spec-image-caption h3 {
    margin: 7px 0 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 23px;
    line-height: 1.3;
}


/* =========================================
   FEATURES
========================================= */

.shuttering-features {
    padding: 70px 25px;
    background: #ffffff;
}

.shuttering-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 17px;
}

.shuttering-feature-card {
    min-width: 0;
    padding: 23px 20px;
    border: 1px solid var(--sp-border);
    background: #ffffff;
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.shuttering-feature-card:hover {
    transform: translateY(-3px);
    border-color: rgba(181, 139, 67, 0.65);
    box-shadow: 0 8px 22px rgba(23, 70, 49, 0.06);
}

.shuttering-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-bottom: 16px;
    border-radius: 50%;
    background: #f2eadb;
    color: var(--sp-gold);
    font-size: 14px;
}

.shuttering-feature-card h3 {
    margin: 0 0 9px;
    color: var(--sp-green);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
}

.shuttering-feature-card p {
    margin: 0;
    font-size: 11px;
    line-height: 1.8;
}


/* =========================================
   APPLICATIONS
========================================= */

.shuttering-applications {
    padding: 70px 25px;
    background: var(--sp-cream);
}

.shuttering-applications-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;
    margin-bottom: 30px;
}

.shuttering-applications-heading h2 {
    margin-bottom: 0;
}

.shuttering-applications-heading > p {
    max-width: 360px;
    margin: 0 0 4px;
    font-size: 12px;
    line-height: 1.8;
}

.shuttering-application-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 15px;
}

.shuttering-application-card {
    position: relative;
    min-width: 0;
    padding: 25px 18px;
    border: 1px solid var(--sp-border);
    background: var(--sp-cream);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.shuttering-application-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 9px 22px rgba(23, 70, 49, 0.07);
}

.shuttering-application-number {
    position: absolute;
    top: 14px;
    right: 15px;
    color: #c5b99f;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 13px;
}

.shuttering-application-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin-bottom: 18px;
    border-radius: 50%;
    background: #efe6d5;
    color: var(--sp-gold);
    font-size: 15px;
}

.shuttering-application-card h3 {
    margin: 0 0 9px;
    color: var(--sp-green);
    font-size: 13px;
    line-height: 1.5;
}

.shuttering-application-card p {
    margin: 0;
    font-size: 11px;
    line-height: 1.8;
}


/* =========================================
   ENQUIRY CTA
========================================= */

.shuttering-enquiry {
    padding: 55px 25px;
    background: var(--sp-dark);
}

.shuttering-enquiry-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
}

.shuttering-enquiry-content > span {
    color: #d9b365;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.3px;
}

.shuttering-enquiry-content h2 {
    max-width: 660px;
    margin: 12px 0;
    color: #ffffff;
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(25px, 3vw, 36px);
    line-height: 1.3;
}

.shuttering-enquiry-content p {
    max-width: 600px;
    margin: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    line-height: 1.8;
}

.shuttering-enquiry-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    gap: 25px;
    min-width: 165px;
    min-height: 50px;
    padding: 13px 18px;
    background: var(--sp-gold);
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.3s ease;
}

.shuttering-enquiry-button:hover {
    background: #9c742f;
}

.shuttering-enquiry-button span {
    font-size: 21px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1000px) {

    .shuttering-hero-inner {
        gap: 35px;
    }

    .shuttering-hero-image {
        height: 330px;
    }

    .shuttering-intro-grid {
        gap: 40px;
    }

    .shuttering-spec-grid {
        gap: 22px;
    }

    .shuttering-application-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* =========================================
   SMALL TABLET
========================================= */

@media (max-width: 767px) {

    .shuttering-hero {
        padding: 55px 24px;
    }

    .shuttering-hero-inner {
        grid-template-columns: 1fr;
        gap: 35px;
        max-width: 600px;
    }

    .shuttering-hero-content h1 {
        font-size: clamp(40px, 8vw, 56px);
    }

    .shuttering-hero-image {
        height: 330px;
    }

    .shuttering-intro,
    .shuttering-specifications,
    .shuttering-features,
    .shuttering-applications {
        padding: 55px 24px;
    }

    .shuttering-intro-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .shuttering-intro-heading h2 {
        max-width: 500px;
    }

    .shuttering-spec-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .shuttering-spec-visual,
    .shuttering-spec-visual > img {
        height: 300px;
        min-height: 300px;
    }

    .shuttering-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .shuttering-applications-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .shuttering-enquiry {
        padding: 45px 24px;
    }

    .shuttering-enquiry-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 25px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 540px) {

    .shuttering-hero {
        padding: 45px 20px;
    }

    .shuttering-hero-content h1 {
        font-size: 39px;
    }

    .shuttering-hero-content h2 {
        font-size: 15px;
    }

    .shuttering-hero-content > p {
        font-size: 13px;
    }

    .shuttering-hero-image {
        height: 260px;
    }

    .shuttering-image-caption {
        left: 18px;
        min-height: 68px;
        padding: 13px;
    }

    .shuttering-caption-number {
        width: 35px;
        height: 35px;
    }

    .shuttering-intro,
    .shuttering-specifications,
    .shuttering-features,
    .shuttering-applications {
        padding: 45px 20px;
    }

    .shuttering-section-heading h2,
    .shuttering-intro-heading h2,
    .shuttering-applications-heading h2 {
        font-size: 30px;
    }

    .shuttering-intro-highlights {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .shuttering-table {
        font-size: 11px;
    }

    .shuttering-table th,
    .shuttering-table td {
        padding: 11px 9px;
    }

    .shuttering-table th:first-child {
        width: 39%;
    }

    .shuttering-spec-visual,
    .shuttering-spec-visual > img {
        height: 250px;
        min-height: 250px;
    }

    .shuttering-feature-grid {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .shuttering-feature-card {
        padding: 20px;
    }

    .shuttering-application-grid {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    .shuttering-application-card {
        padding: 22px 19px;
    }

    .shuttering-enquiry {
        padding: 40px 20px;
    }

    .shuttering-enquiry-content h2 {
        font-size: 27px;
    }

    .shuttering-enquiry-button {
        width: 100%;
        max-width: 320px;
    }
}


/* =========================================
   VERY SMALL MOBILE
========================================= */

@media (max-width: 360px) {

    .shuttering-hero-content h1 {
        font-size: 34px;
    }

    .shuttering-variants span {
        min-width: 72px;
        padding: 9px 11px;
    }

    .shuttering-table th,
    .shuttering-table td {
        padding: 9px 7px;
        font-size: 10px;
    }
}


/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .shuttering-page *,
    .shuttering-page *::before,
    .shuttering-page *::after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
.core-values {
    padding: 55px 6%;
    background: #f8f6f0; /* Keep the cream background */
}

.core-values-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 32px;
}

.core-values-heading > span {
    color: #b8873b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
}

.core-values-heading h2 {
    color: #123f30;
    font-size: 34px;
    margin: 10px 0;
}

.core-values-heading p {
    color: #666;
    font-size: 15px;
    line-height: 1.8;
}

.core-values-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    max-width: 1200px;
    margin: 0 auto;
}

.value-box {
    padding: 25px;
    background: #fffdf9;
    border: 1px solid #e5dccb;
    border-top: 3px solid #b8873b;
    border-radius: 5px;
}

.value-box h3 {
    color: #123f30;
    font-size: 20px;
    margin: 0 0 12px;
}

.value-box p {
    color: #666;
    font-size: 14px;
    line-height: 1.8;
    margin: 0;
}

/* Tablet */
@media (max-width: 767px) {
    .core-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 540px) {
    .core-values {
        padding: 40px 20px;
    }

    .core-values-heading h2 {
        font-size: 28px;
    }

    .core-values-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .value-box {
        padding: 22px;
    }
}