/* ===================================================================
   TARGET LIFTS INTERNATIONAL
   PRODUCT PAGE STYLESHEET
   File: /jackdev/css/product-page.css

   Revision History

   Rev 1.04 | 2026-06-18
   - Added boxed hero treatment.
   - Added red top accent line on hero.
   - Centered hero buttons.
   - Cleaned layout after header removal.

   Rev 1.03 | 2026-06-18
   - Added product-wrapper as master width container.
   - Header, product page, and footer now align inside one box.
   - Removed height limits that caused postage-stamp images.

   Rev 1.02 | 2026-06-18
   - Constrained header/footer image height.
   - Reduced oversized branded PNG display.
   - Added stronger image sizing overrides.

   Rev 1.01 | 2026-06-18
   - Added product brand header/footer image sizing.
   - Matched header/footer width to product page.
   - Reduced oversized banner display.

   Rev 1.00 | 2026-06-18
   - Initial master stylesheet for all product pages.
   - Shared by FRS12, TSL6, TSL9, TSL9SL and TSLSDC.
   - Website Version 2.
=================================================================== */

.product-wrapper{
    width:100%;
    max-width:1180px;
    margin:20px auto 40px;
}

.product-brand-footer{
    width:100%;
    margin:0;
    background:transparent;
    overflow:hidden;
}

.product-brand-footer img{
    width:100%;
    height:auto;
    display:block;
    margin:0 auto;
}

.product-page{
    width:100%;
    margin:0;
    padding:35px;
    background:#ffffff;
    border:1px solid #d8d8d8;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
}

.hero{
    text-align:center;
    background:#fafafa;
    border:2px solid #c9c9c9;
    border-top:6px solid #b30000;
    border-radius:10px;
    padding:35px 30px;
    margin-bottom:45px;
    box-shadow:0 4px 12px rgba(0,0,0,.06);
}

.hero img{
    display:block;
    width:100%;
    max-width:950px;
    margin:0 auto 25px;
    height:auto;
}

.hero h1{
    margin:0;
    font-size:46px;
    font-weight:900;
    color:#1f3f62;
}

.tagline{
    margin:14px auto;
    max-width:900px;
    font-size:24px;
    font-weight:700;
    color:#555;
}

.lead{
    margin:18px auto;
    max-width:900px;
    font-size:21px;
    line-height:1.65;
    color:#333;
}

.hero-actions{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
    margin-top:30px;
}

section{
    margin-bottom:55px;
}

section h2{
    margin-bottom:18px;
    padding-bottom:8px;
    font-size:30px;
    color:#b30000;
    border-bottom:2px solid #e5e5e5;
}

.features{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:20px;
}

.card{
    padding:24px;
    background:#ffffff;
    border:1px solid #dddddd;
    border-radius:8px;
    box-shadow:0 2px 8px rgba(0,0,0,.05);
}

.card h3{
    margin-top:0;
    margin-bottom:12px;
    color:#1f3f62;
    font-size:22px;
}

.card p{
    line-height:1.6;
}

.product-page ul{
    margin-left:24px;
    font-size:20px;
    line-height:1.8;
}

table{
    width:100%;
    border-collapse:collapse;
    background:#ffffff;
    border:1px solid #dddddd;
}

td{
    padding:14px;
    font-size:18px;
    border-bottom:1px solid #e8e8e8;
}

td:first-child{
    width:35%;
    background:#f6f6f6;
    font-weight:bold;
}

.button{
    display:inline-block;
    padding:14px 28px;
    margin:8px;
    background:#b30000;
    color:#ffffff;
    text-decoration:none;
    font-size:18px;
    font-weight:bold;
    border-radius:6px;
    transition:.2s;
}

.button:hover{
    background:#8c0000;
}

.secondary-button{
    background:#1f3f62;
}

.secondary-button:hover{
    background:#17314d;
}

.download-box{
    padding:28px;
    text-align:center;
    background:#f8f8f8;
    border:1px solid #dddddd;
    border-radius:8px;
}

.contact-box{
    padding:35px;
    text-align:center;
    background:#1f3f62;
    color:#ffffff;
    border-radius:10px;
}

.contact-box h2{
    color:#ffffff;
    border:none;
    margin-top:0;
}

.contact-box .lead{
    color:#ffffff;
}

@media (max-width:900px){

    .product-wrapper{
        width:auto;
        margin:10px;
    }

    .product-page{
        padding:20px;
    }

    .hero{
        padding:22px 14px;
    }

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

    .tagline{
        font-size:20px;
    }

    .lead{
        font-size:18px;
    }

    .hero-actions{
        flex-direction:column;
        gap:12px;
    }

    .hero-actions .button{
        width:100%;
        max-width:300px;
    }

    section h2{
        font-size:25px;
    }

    .features{
        grid-template-columns:1fr;
    }

    .button{
        display:block;
        width:100%;
        margin:10px 0;
        text-align:center;
    }

    table,
    tbody,
    tr,
    td{
        display:block;
        width:100%;
    }

    td:first-child{
        width:100%;
    }
}

/* ==========================================================
   Footer Navigation
   ========================================================== */

section:last-child{
    margin-bottom:20px;
}

.footer-nav{
    text-align:center;
    padding:20px 0;
    background:#ffffff;
}

.footer-nav a{
    display:inline-block;
    padding:12px 32px;
    background:#1f3f62;
    color:#ffffff;
    text-decoration:none;
    font-size:18px;
    font-weight:700;
    border-radius:6px;
    transition:.2s;
}

.footer-nav a:hover{
    background:#b30000;
}
