*{box-sizing:border-box;margin:0;padding:0}
:root{--coral:#f67858;--coral-dark:#dd5e40;--navy:#1e2b88;--cyan:#83d8f7;--ink:#20232a;--paper:#f6f7f8;--white:#fff;--line:#e8e8e8}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #eee}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:62px;height:62px;object-fit:contain}
.brand strong{display:block;color:var(--navy);font-family:"Barlow Condensed",sans-serif;font-size:24px;letter-spacing:.6px}
.brand small{display:block;color:var(--coral-dark);font-family:cursive;font-size:12px}
.nav{display:flex;gap:25px;font-size:14px;font-weight:700}
.nav a:hover{color:var(--coral-dark)}
.menu-btn{display:none;border:0;background:var(--navy);color:#fff;border-radius:8px;padding:9px 12px;font-size:20px}
.hero{position:relative;overflow:hidden;background:var(--coral);color:#fff;min-height:720px}
.hero-pattern{position:absolute;inset:0;opacity:.18;background:radial-gradient(circle at 55% 70%,transparent 0 110px,#fff 112px 114px,transparent 116px 170px,#fff 172px 174px,transparent 176px)}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr 1.15fr;align-items:center;min-height:720px;gap:20px}
.eyebrow{font-weight:800;letter-spacing:3px;margin-bottom:12px}
.hero h1{font-family:"Barlow Condensed",sans-serif;font-size:clamp(56px,7vw,100px);line-height:.88;letter-spacing:1px}
.hero-sub{font-family:"Barlow Condensed",sans-serif;font-size:clamp(23px,3vw,38px);font-weight:700;margin:24px 0}
.hero-pills{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 30px}
.hero-pills span{border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;background:rgba(255,255,255,.08)}
.hero-visual {
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-image {
    position: relative;
    width: min(760px, 105%);
    border-radius: 24px;
    overflow: hidden;
    line-height: 0;
}

.hero-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 18px;
    filter: drop-shadow(0 28px 22px rgba(0, 0, 0, .2));
    transition: transform 0.5s ease;
}

.hero-image:hover img {
    transform: scale(1.03);
} 

/* Light zoom on hover */
.hero-visual:hover img {
    transform: scale(1.03);
    filter: drop-shadow(0 30px 28px rgba(0, 0, 0, .25));
}
.hero-visual img {
    position: relative;
    width: min(760px, 105%);
    border-radius: 24px;
    transform: scale(1.02);
    filter: drop-shadow(0 28px 22px rgba(0, 0, 0, .2));
    transition: transform 0.5s ease, filter 0.5s ease;
}

.hero-visual:hover img {
    transform: scale(1.05);
}
.btn{display:inline-block;padding:13px 20px;border-radius:8px;font-weight:800}
.btn-dark{background:var(--navy);color:#fff}
.section{padding:90px 0}
.intro{background:#fff}
.two-col{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.section-kicker{color:var(--coral-dark);font-weight:800;letter-spacing:2px;font-size:12px;text-transform:uppercase;margin-bottom:9px}
h2{font-family:"Barlow Condensed",sans-serif;color:var(--navy);font-size:clamp(38px,4vw,58px);line-height:1}
.intro h2{font-size:clamp(42px,5vw,68px)}
.intro p+p{margin-top:16px}
.section-heading{max-width:800px;margin:0 auto 48px;text-align:center}
.section-heading p:last-child{margin-top:15px}
.products{background:#f1f3f5}
.product-card{display:grid;grid-template-columns:.82fr 1.18fr;background:#fff;border:1px solid #e3e5e8;border-radius:22px;overflow:hidden;margin-bottom:30px;box-shadow:0 18px 45px rgba(31,43,70,.07)}
.product-card.reverse{grid-template-columns:1.18fr .82fr}
.product-card.reverse .product-image{order:2}
.product-image{background:var(--cyan);min-height:390px;display:flex;align-items:center;justify-content:center;padding:26px}
.product-image img{width:100%;height:100%;max-height:420px;object-fit:contain;mix-blend-mode:normal}
.product-copy{padding:42px}
.number{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--coral);color:#fff;font-weight:800;margin-bottom:14px}
.product-copy h3{font-family:"Barlow Condensed",sans-serif;color:var(--navy);font-size:32px;line-height:1.05;margin-bottom:20px}
.product-copy ul{padding-left:20px}
.product-copy li{margin-bottom:12px}
.product-copy li::marker{color:var(--coral)}
.manufacturing{background:var(--navy);color:#fff}
.manufacturing h2{color:#fff}
.manufacturing .section-kicker{color:#ff9c83}
.manufacturing .section-heading{max-width:1000px}
.tools-image{width:100%;border-radius:18px;border:7px solid var(--cyan);background:#fff}
.clients{background:#fff}
.table-wrap{overflow:auto;border:1px solid #ddd;border-radius:15px;background:#fff}
table{width:100%;border-collapse:collapse;min-width:1100px;font-size:13px}
th{background:var(--coral);color:#fff;text-align:left;padding:13px 10px;position:sticky;top:0}
td{padding:12px 10px;border-bottom:1px solid #e5e5e5;vertical-align:top}
tr:nth-child(even){background:#fafafa}
.brochure{background:#eef1f3}
.brochure-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.brochure-grid img{width:100%;border-radius:12px;box-shadow:0 15px 40px rgba(0,0,0,.12)}
.footer{background:#101526;color:#fff;padding-top:65px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;padding-bottom:50px}
.footer-brand{font-family:"Barlow Condensed",sans-serif;color:#fff;font-size:44px}
.footer h3{color:#ff9177;font-family:"Barlow Condensed",sans-serif;font-size:30px;margin-bottom:10px}
.footer p{color:#cdd2df;margin-top:10px}
.copyright{border-top:1px solid rgba(255,255,255,.1);padding:18px 4%;text-align:center;color:#aab0bf;font-size:12px}
@media(max-width:900px){
 .nav{display:none;position:absolute;left:4%;right:4%;top:78px;background:#fff;padding:15px;border-radius:12px;box-shadow:0 18px 35px rgba(0,0,0,.12);flex-direction:column;gap:0}
 .nav.open{display:flex}.nav a{padding:10px 6px;border-bottom:1px solid #eee}.menu-btn{display:block}
 .hero-grid{grid-template-columns:1fr;min-height:auto;padding:75px 0 40px}.hero-copy{text-align:center}.hero-pills{justify-content:center}.hero-visual{min-height:430px}.hero-visual .circle{width:380px;height:380px}
 .two-col{grid-template-columns:1fr;gap:30px}
 .product-card,.product-card.reverse{grid-template-columns:1fr}.product-card.reverse .product-image{order:0}.product-image{min-height:300px}.product-copy{padding:30px}
 .footer-grid{grid-template-columns:1fr}.brochure-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
 .section{padding:65px 0}.brand strong{font-size:20px}.brand small{font-size:10px}.brand img{width:50px;height:50px}
 .hero h1{font-size:56px}.hero-sub{font-size:25px}.hero-visual{min-height:330px}.hero-visual .circle{width:270px;height:270px}
 .product-copy h3{font-size:28px}.product-copy{padding:24px}.product-image{min-height:245px;padding:16px}
}
/* =========================================
   CONTACT PAGE
========================================= */

.contact-page {
    background: #f1f3f5;
}


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

.contact-hero {
    background: #1e2b88;
    color: #ffffff;

    padding: 100px 0 90px;

    text-align: center;
}

.contact-hero .section-kicker {
    color: #f67858;
}

.contact-hero h1 {
    margin: 10px 0 20px;

    color: #ffffff;

    font-family: "Barlow Condensed", sans-serif;

    font-size: clamp(60px, 8vw, 100px);

    line-height: .9;
}

.contact-hero-text {
    max-width: 700px;

    margin: auto;

    color: rgba(255, 255, 255, .85);

    font-size: 17px;

    line-height: 1.8;
}


/* =========================================
   CONTACT CONTENT
========================================= */

.contact-content {
    padding: 100px 0;
}

.contact-page-grid {

    display: grid;

    grid-template-columns: .9fr 1.1fr;

    gap: 80px;

    align-items: start;
}


/* =========================================
   CONTACT DETAILS
========================================= */

.contact-details {
    padding-top: 20px;
}

.contact-details h2 {

    color: #1e2b88;

    font-family: "Barlow Condensed", sans-serif;

    font-size: clamp(48px, 5vw, 70px);

    line-height: .95;

    margin-bottom: 25px;
}

.contact-description {

    max-width: 520px;

    color: #555;

    font-size: 16px;

    line-height: 1.8;

    margin-bottom: 40px;
}


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

.contact-info {

    display: flex;

    flex-direction: column;

    gap: 28px;
}

.contact-info-item {

    display: flex;

    gap: 18px;

    align-items: flex-start;
}

.contact-icon {

    flex-shrink: 0;

    width: 48px;
    height: 48px;

    display: flex;

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

    border-radius: 10px;

    background: #f67858;

    color: #ffffff;

    font-size: 21px;
}

.contact-info-item h3 {

    color: #1e2b88;

    font-family: "Barlow Condensed", sans-serif;

    font-size: 25px;

    margin-bottom: 5px;
}

.contact-info-item p {

    margin: 3px 0;

    color: #555;

    font-size: 14px;

    line-height: 1.6;
}


/* =========================================
   CONTACT FORM
========================================= */

.contact-form-card {

    background: #ffffff;

    border-radius: 20px;

    padding: 45px;

    box-shadow:
        0 20px 55px rgba(31, 43, 70, .12);

    border: 1px solid #e5e7eb;
}

.form-title {

    margin-bottom: 30px;
}

.form-title h2 {

    color: #1e2b88;

    font-family: "Barlow Condensed", sans-serif;

    font-size: 48px;

    line-height: 1;

    margin-top: 5px;
}


/* =========================================
   FORM INPUTS
========================================= */

.contact-form-card .form-group {

    margin-bottom: 20px;
}

.contact-form-card label {

    display: block;

    margin-bottom: 7px;

    color: #1e2b88;

    font-size: 14px;

    font-weight: 700;
}

.contact-form-card input,
.contact-form-card textarea {

    width: 100%;

    border: 1px solid #dfe3e8;

    border-radius: 9px;

    background: #f8f9fa;

    padding: 13px 15px;

    color: #20232a;

    font-family: Inter, Arial, sans-serif;

    font-size: 14px;

    outline: none;

    transition: .25s ease;
}

.contact-form-card input {

    height: 50px;
}

.contact-form-card textarea {

    min-height: 150px;

    resize: vertical;
}

.contact-form-card input:focus,
.contact-form-card textarea:focus {

    border-color: #f67858;

    background: #ffffff;

    box-shadow:
        0 0 0 3px rgba(246, 120, 88, .12);
}


/* =========================================
   SUBMIT BUTTON
========================================= */

.contact-submit {

    width: 100%;

    border: none;

    border-radius: 9px;

    padding: 15px 20px;

    background: #f67858;

    color: #ffffff;

    font-size: 15px;

    font-weight: 800;

    cursor: pointer;

    transition: .25s ease;
}

.contact-submit:hover {

    background: #1e2b88;

    transform: translateY(-2px);
}


/* =========================================
   ACTIVE NAV
========================================= */

.nav a.active {

    color: #f67858;
}


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

@media (max-width: 900px) {

    .contact-page-grid {

        grid-template-columns: 1fr;

        gap: 50px;
    }

    .contact-details {

        text-align: center;
    }

    .contact-description {

        margin-left: auto;
        margin-right: auto;
    }

    .contact-info {

        max-width: 550px;

        margin: auto;

        text-align: left;
    }
}


@media (max-width: 600px) {

    .contact-hero {

        padding: 70px 0;
    }

    .contact-content {

        padding: 65px 0;
    }

    .contact-form-card {

        padding: 28px 20px;

        border-radius: 15px;
    }

    .form-title h2 {

        font-size: 40px;
    }

    .contact-details h2 {

        font-size: 50px;
    }

    .contact-info-item {

        gap: 12px;
    }

    .contact-icon {

        width: 42px;
        height: 42px;

        font-size: 18px;
    }
}