*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{
line-height:1.6;
color:#333;
overflow-x:hidden;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

.header{
background:#ffffff;
padding:12px 0;
border-bottom:1px solid #ececec;
box-shadow:0 2px 8px rgba(0,0,0,0.05);
}

.header .container{
display:flex;
justify-content:space-between;
align-items:center;
}

.logo{
display:flex;
align-items:center;
gap:12px;
text-decoration:none;
line-height:1;
}

.logo-img{
height:50px;
width:auto;
max-width:100%;
display:block;
}

.logo-text{
display:flex;
flex-direction:column;
}

.logo-text strong{
color:#1C2539;
font-size:22px;
font-weight:700;
letter-spacing:1px;
line-height:1.1;
}

.logo-text small{
color:#6B7280;
font-size:11px;
letter-spacing:3px;
line-height:1.3;
}

nav ul{
display:flex;
list-style:none;
}

nav ul li{
margin-left:20px;
}

nav ul li a{
color:#1C2539;
text-decoration:none;
font-weight:500;
}

nav ul li a:hover{
color:#7A2A25;
}

.banner{
background:#7A2A25;
padding:100px 0;
text-align:center;
color:white;
}

.product-page{
padding:80px 0;
}

.product-layout{
display:grid;
grid-template-columns:280px 1fr;
gap:40px;
}

.sidebar{
background:#f5f5f5;
padding:25px;
}

.sidebar ul{
list-style:none;
margin-top:15px;
}

.sidebar li{
margin-bottom:10px;
}

.sidebar a{
text-decoration:none;
color:#333;
}

.product-content img{
width:100%;
border-radius:8px;
margin-bottom:25px;
}

.product-content h2{
margin-bottom:15px;
}

.feature-list{
padding-left:20px;
margin-bottom:20px;
}

table{
width:100%;
border-collapse:collapse;
margin:20px 0;
}

table th,
table td{
border:1px solid #ddd;
padding:12px;
text-align:left;
}

.applications{
display:flex;
flex-wrap:wrap;
gap:10px;
}

.applications span{
background:#1C2539;
color:white;
padding:10px 15px;
border-radius:4px;
}

.cta{
background:#1C2539;
color:white;
text-align:center;
padding:70px 0;
}

button{
background:#7A2A25;
color:white;
border:none;
padding:15px 35px;
margin-top:20px;
cursor:pointer;
border-radius:4px;
transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
}

button:hover{
background:#96332d;
transform:translateY(-2px);
box-shadow:0 8px 18px rgba(122,42,37,0.3);
}

footer{
background:#111;
color:white;
padding:40px 0;
text-align:center;
}

.product-menu{
    list-style:none;
    padding:0;
}

.product-btn{
    width:100%;
    text-align:left;
    padding:12px 15px;
    border:none;
    background:#1C2539;
    color:#fff;
    cursor:pointer;
    margin-bottom:2px;
    font-size:15px;
}

.product-btn:hover{
    background:#7A2A25;
}

.product-btn.active{
    background:#7A2A25;
}

.sub-products{
    display:none;
    list-style:none;
    background:#f8f8f8;
    margin-bottom:10px;
}

.sub-products.show{
    display:block;
}

.sub-products li a{
    display:block;
    padding:10px 15px;
    text-decoration:none;
    color:#333;
    border-bottom:1px solid #eee;
    font-size:14px;
}

.sub-products li a:hover{
    background:#f1f1f1;
    color:#7A2A25;
}

/* ===== Home / Hero ===== */
.hero{
    background:#1C2539;
    color:white;
    text-align:center;
    padding:120px 0;
    position:relative;
    overflow:hidden;
    min-height:540px;
    display:flex;
    align-items:center;
}

/* Hero image slideshow */
.hero-slides{
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    z-index:0;
}

.hero-slide{
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    background-size:cover;
    background-position:center;
    opacity:0;
    transition:opacity 1.2s ease-in-out;
}

.hero-slide.active{
    opacity:1;
}

.hero-overlay{
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    background:rgba(28,37,57,0.62);
    z-index:1;
}

.hero-content{
    position:relative;
    z-index:2;
    width:100%;
}

.hero h1{
    font-size:42px;
    margin-bottom:20px;
}

.hero p{
    max-width:700px;
    margin:0 auto;
    font-size:18px;
}

.intro{
    padding:70px 0;
    text-align:center;
}

.intro h2{
    margin-bottom:20px;
}

.intro p{
    max-width:850px;
    margin:0 auto;
}

/* ===== Product cards ===== */
.products-grid-section{
    background:#f5f5f5;
    padding:70px 0;
}

.products-grid-section h2,
.features-section h2{
    text-align:center;
    margin-bottom:40px;
}

.products-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.product-card{
    background:white;
    padding:30px;
    text-decoration:none;
    color:#333;
    border-radius:8px;
    border-top:4px solid #7A2A25;
    overflow:hidden;
    transition:transform 0.25s ease, box-shadow 0.25s ease;
}

.product-card:hover{
    transform:translateY(-6px);
    box-shadow:0 14px 30px rgba(0,0,0,0.12);
}

.product-card img{
    width:100%;
    height:190px;
    object-fit:cover;
    border-radius:6px;
    margin-bottom:16px;
    display:block;
    transition:transform .5s ease;
}

.product-card:hover img{
    transform:scale(1.07);
}

.product-card h3{
    color:#1C2539;
    margin-bottom:10px;
}

/* ===== Stats band ===== */
.stats-section{
    background:#7A2A25;
    color:white;
    padding:50px 0;
}

.stats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
    text-align:center;
}

.stat-box h3{
    font-size:40px;
    margin-bottom:5px;
}

/* ===== About teaser ===== */
.about-teaser{
    padding:70px 0;
}

.about-teaser-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:50px;
    align-items:center;
}

.about-teaser-text h2{
    margin-bottom:20px;
    color:#1C2539;
}

.about-teaser-text p{
    margin-bottom:15px;
}

.about-teaser-list{
    background:#f5f5f5;
    padding:30px;
    border-radius:8px;
    border-left:4px solid #7A2A25;
}

.about-teaser-list ul{
    list-style:none;
}

.about-teaser-list li{
    padding:10px 0 10px 28px;
    position:relative;
    border-bottom:1px solid #e5e5e5;
}

.about-teaser-list li:last-child{
    border-bottom:none;
}

.about-teaser-list li::before{
    content:"\2713";
    position:absolute;
    left:0;
    color:#7A2A25;
    font-weight:700;
}

/* ===== Grades ===== */
.grades-section{
    background:#f5f5f5;
    padding:70px 0;
    text-align:center;
}

.grades-section h2{
    margin-bottom:10px;
}

.section-sub{
    max-width:700px;
    margin:0 auto 40px;
    color:#666;
}

.grades-list{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    justify-content:center;
}

.grades-list span{
    background:white;
    color:#1C2539;
    padding:12px 22px;
    border-radius:4px;
    font-weight:500;
    border:1px solid #ddd;
}

/* ===== Industries ===== */
.industries-section{
    padding:70px 0;
    text-align:center;
}

.industries-section h2{
    margin-bottom:10px;
}

.industries-section .applications{
    justify-content:center;
}

/* ===== Process ===== */
.process-section{
    background:#f5f5f5;
    padding:70px 0;
}

.process-section h2{
    text-align:center;
    margin-bottom:40px;
}

.process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.process-step{
    background:white;
    padding:30px 20px;
    border-radius:8px;
    text-align:center;
}

.step-num{
    width:50px;
    height:50px;
    line-height:50px;
    margin:0 auto 15px;
    background:#1C2539;
    color:white;
    border-radius:50%;
    font-size:20px;
    font-weight:600;
}

.process-step h3{
    color:#7A2A25;
    margin-bottom:10px;
    font-size:18px;
}

/* ===== Feature boxes ===== */
.features-section{
    padding:70px 0;
}

.features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
}

.feature-box{
    text-align:center;
    padding:30px 20px;
    background:#f5f5f5;
    border-radius:8px;
}

.feature-box h3{
    color:#7A2A25;
    margin-bottom:12px;
}

/* ===== Generic content page (About) ===== */
.content-page{
    padding:70px 0;
}

.content-page h2{
    margin:30px 0 15px;
    color:#1C2539;
}

.content-page p{
    margin-bottom:15px;
}

.content-page ul{
    padding-left:20px;
    margin-bottom:20px;
}

.content-page li{
    margin-bottom:8px;
}

/* ===== Downloads ===== */
.download-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
    margin-top:30px;
}

.download-card{
    background:#fff;
    border:1px solid #eee;
    border-top:4px solid #7A2A25;
    border-radius:8px;
    padding:40px 30px;
    text-align:center;
    box-shadow:0 4px 15px rgba(0,0,0,0.05);
}

.download-icon{
    font-size:52px;
    margin-bottom:12px;
}

.download-card h3{
    color:#1C2539;
    margin-bottom:12px;
}

.download-card p{
    color:#666;
    margin-bottom:10px;
}

.download-actions{
    display:flex;
    gap:14px;
    justify-content:center;
    flex-wrap:wrap;
}

.btn-outline{
    display:inline-block;
    margin-top:20px;
    padding:14px 32px;
    border:2px solid #7A2A25;
    color:#7A2A25;
    border-radius:4px;
    text-decoration:none;
    font-weight:500;
    transition:background .2s ease, color .2s ease;
}

.btn-outline:hover{
    background:#7A2A25;
    color:#fff;
}

/* ===== Flyer gallery ===== */
.flyer-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));
    gap:24px;
    margin-top:26px;
    align-items:start;
}

.flyer-item{
    display:block;
    text-decoration:none;
    background:#fff;
    border:1px solid #eee;
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 4px 15px rgba(0,0,0,0.05);
    transition:transform .25s ease, box-shadow .25s ease;
}

.flyer-item:hover{
    transform:translateY(-5px);
    box-shadow:0 12px 26px rgba(0,0,0,0.12);
}

.flyer-item img{
    width:100%;
    height:320px;
    object-fit:cover;
    object-position:top center;
    display:block;
    background:#f0f0f0;
}

.flyer-item span{
    display:block;
    padding:12px 14px;
    text-align:center;
    color:#1C2539;
    font-weight:500;
}

/* Lightbox */
.lightbox{
    display:none;
    position:fixed;
    top:0;left:0;right:0;bottom:0;
    background:rgba(0,0,0,0.88);
    z-index:2000;
    align-items:center;
    justify-content:center;
    padding:30px;
}

.lightbox.open{ display:flex; }

.lightbox img{
    max-width:92%;
    max-height:92vh;
    border-radius:6px;
    box-shadow:0 10px 40px rgba(0,0,0,0.5);
}

.lightbox-close{
    position:absolute;
    top:16px;
    right:28px;
    color:#fff;
    font-size:42px;
    line-height:1;
    cursor:pointer;
    user-select:none;
}

/* ===== Contact ===== */
.contact-layout{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
}

.contact-details{
    list-style:none;
    margin-top:20px;
}

.contact-details li{
    margin-bottom:20px;
}

.contact-details strong{
    display:block;
    color:#7A2A25;
    margin-bottom:4px;
}

.contact-form label{
    display:block;
    margin:15px 0 5px;
    font-weight:500;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
    width:100%;
    padding:12px;
    border:1px solid #ccc;
    border-radius:4px;
    font-size:15px;
}

.contact-form button{
    width:100%;
}

.form-status{
    display:none;
    padding:14px 16px;
    border-radius:4px;
    margin-bottom:15px;
    font-size:15px;
}

.form-status.success{
    display:block;
    background:#e6f4ea;
    color:#1e7e34;
    border:1px solid #b7dfc2;
}

.form-status.error{
    display:block;
    background:#fbeaea;
    color:#a12622;
    border:1px solid #f0c2c0;
}

.hp-field{
    display:none !important;
}

/* ===== Nav dropdown ===== */
.has-dropdown{
    position:relative;
}

.dropdown{
    display:none;
    position:absolute;
    top:calc(100% + 14px);
    left:0;
    background:#1C2539;
    min-width:200px;
    padding:6px 0;
    border-radius:8px;
    border-top:3px solid #7A2A25;
    box-shadow:0 14px 34px rgba(0,0,0,0.20);
    z-index:100;
}

/* hover bridge so the menu doesn't close in the gap */
.has-dropdown::after{
    content:"";
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    height:18px;
}

.dropdown::before{
    content:"";
    position:absolute;
    top:-9px;
    left:26px;
    border-left:7px solid transparent;
    border-right:7px solid transparent;
    border-bottom:7px solid #7A2A25;
}

.has-dropdown:hover .dropdown{
    display:block;
}

.dropdown li{
    margin:0;
}

.dropdown li a{
    display:block;
    padding:9px 20px;
    color:#d7dbe3;
    font-size:14px;
    font-weight:400;
    white-space:nowrap;
    transition:background .15s ease, color .15s ease;
}

.dropdown li a:hover{
    background:#7A2A25;
    color:#fff;
}

/* ===== Eyebrows ===== */
.section-eyebrow,
.hero-eyebrow{
    display:inline-block;
    color:#7A2A25;
    font-weight:600;
    font-size:14px;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:12px;
}

.hero-eyebrow{
    color:#e0b4b0;
}

/* ===== Hero extras ===== */
.hero-actions{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:25px;
    margin-top:25px;
    flex-wrap:wrap;
}

.hero-phone{
    color:#fff;
    text-decoration:none;
    font-weight:600;
}

/* ===== Company / Our Company ===== */
.company-section{
    padding:70px 0;
    text-align:center;
}

.company-section h2{
    margin-bottom:15px;
    color:#1C2539;
}

.company-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
    margin-top:40px;
    text-align:left;
}

.company-card{
    background:#f5f5f5;
    padding:35px;
    border-radius:8px;
    border-top:4px solid #7A2A25;
}

.company-card h3{
    color:#1C2539;
    margin-bottom:12px;
}

/* ===== Products header + card link ===== */
.products-grid-section{
    text-align:center;
}

.products-grid{
    text-align:left;
    margin-top:35px;
}

.card-link{
    display:inline-block;
    margin-top:12px;
    color:#7A2A25;
    font-weight:600;
    font-size:14px;
}

/* ===== Why choose us ===== */
.why-section{
    padding:70px 0;
}

.why-grid{
    display:grid;
    grid-template-columns:1.3fr 1fr;
    gap:50px;
    align-items:center;
}

.why-text h2{
    margin:5px 0 18px;
    color:#1C2539;
}

.mv-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-top:25px;
}

.mv-box{
    background:#f5f5f5;
    padding:22px;
    border-radius:8px;
}

.mv-box h4{
    color:#7A2A25;
    margin-bottom:8px;
}

.why-list{
    background:#1C2539;
    padding:35px;
    border-radius:8px;
}

.why-list ul{
    list-style:none;
}

.why-list li{
    color:#fff;
    padding:12px 0 12px 28px;
    position:relative;
    border-bottom:1px solid rgba(255,255,255,0.1);
}

.why-list li:last-child{
    border-bottom:none;
}

.why-list li::before{
    content:"\2713";
    position:absolute;
    left:0;
    color:#e0b4b0;
    font-weight:700;
}

/* ===== Blog / Insights ===== */
.blog-section{
    padding:70px 0;
    background:#f5f5f5;
    text-align:center;
}

.blog-section h2{
    margin-bottom:40px;
}

.blog-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
    text-align:left;
}

.blog-card{
    background:#fff;
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 4px 15px rgba(0,0,0,0.05);
}

.blog-thumb{
    background:#1C2539;
    color:#fff;
    height:140px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:600;
    font-size:18px;
    letter-spacing:1px;
}

.blog-body{
    padding:25px;
}

.blog-body h3{
    font-size:17px;
    color:#1C2539;
    margin-bottom:10px;
    line-height:1.4;
}

.blog-body p{
    color:#666;
    font-size:14px;
    margin-bottom:12px;
}

/* ===== Footer (multi-column) ===== */
.site-footer{
    background:#1C2539;
    color:#fff;
    text-align:left;
    padding:0;
}

.footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.3fr;
    gap:35px;
    padding:60px 0 40px;
}

.footer-col h3{
    margin-bottom:15px;
}

.footer-col h4{
    margin-bottom:15px;
    color:#e0b4b0;
}

.footer-col ul{
    list-style:none;
}

.footer-col li{
    margin-bottom:10px;
}

.footer-col a{
    color:#cfd3db;
    text-decoration:none;
}

.footer-col a:hover{
    color:#fff;
}

.footer-about p{
    color:#cfd3db;
    margin-bottom:15px;
    font-size:14px;
}

.footer-addr{
    font-size:14px;
}

.footer-contact li{
    color:#cfd3db;
    font-size:14px;
}

.footer-bottom{
    border-top:1px solid rgba(255,255,255,0.1);
    padding:20px 0;
    text-align:center;
}

.footer-bottom p{
    color:#9aa1ad;
    font-size:14px;
}

/* ===== Mobile nav toggle (hamburger) ===== */
.nav-toggle{
    display:none;
    background:transparent;
    border:none;
    box-shadow:none;
    padding:6px;
    margin:0;
    width:46px;
    height:40px;
    cursor:pointer;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
}

.nav-toggle:hover{ background:transparent; transform:none; box-shadow:none; }

.nav-toggle span{
    display:block;
    width:26px;
    height:3px;
    border-radius:2px;
    background:#1C2539;
    transition:transform .3s ease, opacity .3s ease;
}

.header.nav-open .nav-toggle span:nth-child(1){ transform:translateY(8px) rotate(45deg); }
.header.nav-open .nav-toggle span:nth-child(2){ opacity:0; }
.header.nav-open .nav-toggle span:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }

/* ===== Responsive ===== */
@media(max-width:992px){
    .products-grid{grid-template-columns:repeat(2,1fr);}
    .features-grid{grid-template-columns:repeat(2,1fr);}
    .stats-grid{grid-template-columns:repeat(2,1fr);}
    .process-grid{grid-template-columns:repeat(2,1fr);}
    .about-teaser-grid{grid-template-columns:1fr;}
    .contact-layout{grid-template-columns:1fr;}
    .product-layout{grid-template-columns:1fr;}
    .company-grid{grid-template-columns:1fr;}
    .why-grid{grid-template-columns:1fr;}
    .blog-grid{grid-template-columns:1fr;}
    .download-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr 1fr;}

    /* hamburger menu */
    .nav-toggle{display:flex;}
    .header .container{position:relative;}
    nav{
        position:absolute;
        top:100%;
        left:0;
        right:0;
        background:#fff;
        border-top:1px solid #eee;
        box-shadow:0 12px 24px rgba(0,0,0,0.10);
        max-height:0;
        overflow:hidden;
        transition:max-height .35s ease;
        z-index:999;
    }
    .header.nav-open nav{ max-height:82vh; overflow-y:auto; }
    nav ul{ flex-direction:column; align-items:stretch; }
    nav ul li{ margin:0; border-bottom:1px solid #f2f2f2; }
    nav ul li a{ display:block; padding:15px 22px; }
    nav ul li a:hover{ background:#f7f7f7; }
    .has-dropdown::after{ display:none; }
    .has-dropdown > a::after{
        content:"\25BE";
        margin-left:8px;
        font-size:11px;
        display:inline-block;
        transition:transform .3s ease;
    }
    .has-dropdown.open > a::after{ transform:rotate(180deg); }
    .has-dropdown .dropdown{
        position:static;
        transform:none;
        display:block;
        background:#f7f7f7;
        box-shadow:none;
        border:none;
        border-radius:0;
        min-width:auto;
        padding:0;
        max-height:0;
        overflow:hidden;
        transition:max-height .35s ease;
    }
    .has-dropdown.open .dropdown{ max-height:600px; }
    .has-dropdown .dropdown::before{ display:none; }
    .dropdown li a{
        color:#333;
        padding:12px 22px 12px 42px;
        font-size:14px;
        border-bottom:1px solid #ececec;
    }
    .dropdown li a:hover{ background:#ededed; color:#7A2A25; }
}

@media(max-width:768px){
    .hero{ min-height:auto; padding:80px 0; }
    .hero h1{ font-size:30px; }
    .hero p{ font-size:16px; }
    .banner{ padding:64px 0; }
    .banner h1{ font-size:28px; }
    .product-page{ padding:45px 0; }
    .company-section,.products-grid-section,.stats-section,.why-section,.grades-section,.process-section,.industries-section,.features-section,.content-page,.about-teaser{ padding-left:0; padding-right:0; }
    section h2{ font-size:25px; }
    .stat-box h3{ font-size:34px; }
    table th, table td{ padding:9px; font-size:14px; }
    .container{ width:92%; }
}

@media(max-width:560px){
    .products-grid{grid-template-columns:1fr;}
    .features-grid{grid-template-columns:1fr;}
    .stats-grid{grid-template-columns:1fr;}
    .process-grid{grid-template-columns:1fr;}
    .company-grid{grid-template-columns:1fr;}
    .mv-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr;}
    .hero h1{ font-size:26px; }
    .banner h1{ font-size:24px; }
    .logo-img{ height:44px; }
    .logo-text strong{ font-size:18px; }
    .logo-text small{ font-size:9px; letter-spacing:2px; }
    .hero-actions{ flex-direction:column; gap:14px; }
    .download-actions{ flex-direction:column; }
    button:not(.nav-toggle), .btn-outline{ width:100%; text-align:center; }
}

/* ===== Scroll reveal animations ===== */
.js-reveal{
    opacity:0;
    transition:opacity .6s ease, transform .6s ease;
    will-change:opacity, transform;
}

.js-reveal.r-up{ transform:translateY(30px); }
.js-reveal.r-left{ transform:translateX(-45px); }
.js-reveal.r-right{ transform:translateX(45px); }
.js-reveal.r-zoom{ transform:scale(.92); }
.js-reveal.r-fade{ transform:translateY(10px); }

.js-reveal.is-visible{
    opacity:1;
    transform:none;
}

/* Rotating hero word */
.rotate-word{
    color:#e8a9a4;
    display:inline-block;
    transition:opacity .3s ease;
}

/* subtle lift on interactive cards */
.company-card,
.feature-box,
.mv-box,
.process-step,
.blog-card{
    transition:transform .25s ease, box-shadow .25s ease;
}

.company-card:hover,
.feature-box:hover,
.mv-box:hover,
.process-step:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

@media (prefers-reduced-motion: reduce){
    .js-reveal{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* ===== WhatsApp floating button ===== */
.whatsapp-float{
    position:fixed;
    bottom:22px;
    right:22px;
    width:56px;
    height:56px;
    background:#25D366;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 6px 18px rgba(0,0,0,0.25);
    z-index:1500;
    transition:transform .2s ease, box-shadow .2s ease;
}

.whatsapp-float svg{ width:32px; height:32px; }

.whatsapp-float:hover{
    transform:scale(1.08);
    color:#fff;
    box-shadow:0 8px 22px rgba(37,211,102,0.5);
}

.whatsapp-float::before{
    content:"";
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    border-radius:50%;
    background:#25D366;
    z-index:-1;
    animation:wa-pulse 2.2s ease-out infinite;
}

@keyframes wa-pulse{
    0%{ transform:scale(1); opacity:.55; }
    70%{ transform:scale(1.7); opacity:0; }
    100%{ transform:scale(1.7); opacity:0; }
}

@media(max-width:560px){
    .whatsapp-float{ width:52px; height:52px; bottom:16px; right:16px; }
    .whatsapp-float svg{ width:29px; height:29px; }
}

@media (prefers-reduced-motion: reduce){
    .whatsapp-float::before{ animation:none; display:none; }
}
