/* ==========================================
   TRIPPLE A CONTACT WEBSITE
   Version 2.0
========================================== */

/* ========= GOOGLE FONT ========= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* ========= ROOT ========= */

:root{

    --primary:#FF4820;
    --primary-dark:#e63f1b;

    --dark:#151515;
    --light:#ffffff;

    --gray:#6b7280;
    --border:#ececec;

    --background:#f7f8fb;

    --shadow:0 10px 35px rgba(0,0,0,.08);

    --radius:22px;

    --transition:.35s ease;

}

/* ========= RESET ========= */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:"Poppins",sans-serif;

    background:var(--background);

    color:var(--dark);

    overflow-x:hidden;

    line-height:1.6;

}

/* ========= BACKGROUND ========= */

.background{

    position:fixed;

    inset:0;

    z-index:-2;

    background:

    radial-gradient(circle at top left,#FF482025,transparent 35%),

    radial-gradient(circle at bottom right,#ff744325,transparent 40%),

    linear-gradient(135deg,#ffffff,#f4f6fb);

}

/* ========= CONTAINER ========= */

.container{

    width:100%;

    max-width:1350px;

    margin:auto;

    padding:35px 20px 120px;

}

/* ========= LOADER ========= */

#loader{

    position:fixed;

    inset:0;

    background:white;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:99999;

    transition:.5s;

}

#loader img{

    width:120px;

    animation:pulse 1.5s infinite;

}

@keyframes pulse{

0%,100%{

transform:scale(1);

}

50%{

transform:scale(1.08);

}

}

/* ========= HERO ========= */

.hero{

    text-align:center;

    margin-bottom:40px;

}

.logo{
    width:450px;
    max-width:100%;
    height:auto;
    display:block;
    margin:auto;
    object-fit:contain;

}

.hero h1{

    margin-top:20px;

    font-size:42px;

    font-weight:700;

}

.hero p{

    margin-top:8px;

    color:var(--gray);

    font-size:17px;

}

/* ========= STATUS ========= */

.status{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 18px;

    border-radius:999px;

    background:#eaf9ef;

    color:#0d8f4d;

    font-size:14px;

    font-weight:600;

    margin-top:22px;

}

/* ========= BUTTON GRID ========= */

.quick-buttons{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:18px;

    margin-bottom:35px;

}

/* ========= BUTTON ========= */

.btn{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:16px;

    text-decoration:none;

    border-radius:18px;

    color:white;

    font-weight:600;

    transition:var(--transition);

    box-shadow:var(--shadow);

}

.btn:hover{

    transform:translateY(-4px);

}

.orange{

    background:var(--primary);

}

.orange:hover{

    background:var(--primary-dark);

}

.whatsapp{

    background:#25D366;

}

.messenger{

    background:#0084FF;

}

/* ========= RESPONSIVE ========= */

@media(max-width:900px){

.quick-buttons{

grid-template-columns:1fr;

}

.hero h1{

font-size:34px;

}

}

@media(max-width:600px){

.container{

padding:25px 15px 110px;

}


.hero h1{

font-size:28px;

}

.hero p{

font-size:15px;

}

.btn{

padding:15px;

font-size:15px;

}

}
/* ==========================================
   CARDS
========================================== */

.cards{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(380px,1fr));

    gap:25px;

}

.card{

    background:rgba(255,255,255,.78);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.35);

    border-radius:24px;

    padding:28px;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;

    animation:fadeUp .7s ease;

}

.card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 45px rgba(0,0,0,.15);

}

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(30px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

.card h2{

    font-size:22px;

    margin-bottom:22px;

    color:#111;

    display:flex;

    align-items:center;

    gap:10px;

}

.card p{

    color:#666;

    line-height:1.8;

}

/* ==========================================
   CONTACT INFO
========================================== */

.contact-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:15px;

    margin-bottom:18px;

    padding-bottom:18px;

    border-bottom:1px solid #efefef;

}

.contact-item:last-child{

    border:none;

    margin-bottom:0;

    padding-bottom:0;

}

.contact-item span{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:15px;

    word-break:break-word;

}

.contact-item i{

    color:var(--primary);

    width:20px;

    text-align:center;

}

.contact-item button{

    background:var(--primary);

    color:white;

    border:none;

    padding:9px 18px;

    border-radius:10px;

    cursor:pointer;

    transition:.3s;

}

.contact-item button:hover{

    background:var(--primary-dark);

}

/* ==========================================
   BUSINESS HOURS
========================================== */

.hours{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.hours div{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:15px 0;

    border-bottom:1px solid #eeeeee;

}

.hours div:last-child{

    border:none;

}

/* ==========================================
   SERVICES
========================================== */

.services{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:15px;

}

.services div{

    background:#fafafa;

    border:1px solid #eeeeee;

    border-radius:16px;

    padding:18px;

    text-align:center;

    font-weight:500;

    transition:.3s;

}

.services div:hover{

    background:#fff5f2;

    transform:translateY(-4px);

}

/* ==========================================
   SOCIAL ICONS
========================================== */

.socials{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:18px;

}

.socials a{

    width:62px;

    height:62px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    color:var(--primary);

    background:white;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

    font-size:24px;

    transition:.3s;

}

.socials a:hover{

    transform:translateY(-6px) scale(1.08);

}

/* ==========================================
   MAP
========================================== */

iframe{

    width:100%;

    height:300px;

    border:none;

    border-radius:18px;

}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

.logo{
        width:270px;
        max-width:100%;
        height:auto;
    }

.cards{

grid-template-columns:1fr;

}

.services{

grid-template-columns:1fr;

}

.contact-item{

flex-direction:column;

align-items:flex-start;

}

.contact-item button{

width:100%;

}

.hours div{

flex-direction:column;

align-items:flex-start;

gap:8px;

}

}
/* ==========================================
   DARK MODE
========================================== */

body.dark{
    background:#121212;
    color:#f5f5f5;
}

body.dark .background{
    background:
    radial-gradient(circle at top left,#FF482022,transparent 35%),
    radial-gradient(circle at bottom right,#FF482011,transparent 40%),
    linear-gradient(135deg,#161616,#202020);
}

body.dark .hero h1{
    color:#ffffff;
}

body.dark .hero p{
    color:#bdbdbd;
}

body.dark .card{
    background:rgba(35,35,35,.82);
    border:1px solid rgba(255,255,255,.08);
}

body.dark .card h2{
    color:#ffffff;
}

body.dark .card p,
body.dark .contact-item span,
body.dark .hours span,
body.dark .hours strong{
    color:#dddddd;
}

body.dark .services div{
    background:#2b2b2b;
    border-color:#3d3d3d;
    color:white;
}

body.dark .socials a{
    background:#2d2d2d;
    color:white;
}

body.dark .contact-item{
    border-color:#333;
}

body.dark .hours div{
    border-color:#333;
}

/* ==========================================
   THEME BUTTON
========================================== */

#themeBtn{

    position:fixed;

    top:20px;

    right:20px;

    width:55px;

    height:55px;

    border:none;

    border-radius:50%;

    background:var(--primary);

    color:white;

    font-size:22px;

    cursor:pointer;

    z-index:1000;

    box-shadow:var(--shadow);

    transition:.3s;

}

#themeBtn:hover{

    transform:rotate(20deg);

}

/* ==========================================
   FLOATING WHATSAPP
========================================== */

.floating-whatsapp{

    position:fixed;

    right:20px;

    bottom:95px;

    width:60px;

    height:60px;

    border-radius:50%;

    background:#25D366;

    color:white;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    font-size:28px;

    box-shadow:0 10px 25px rgba(0,0,0,.2);

    transition:.3s;

    z-index:999;

}

.floating-whatsapp:hover{

    transform:scale(1.1);

}

/* ==========================================
   BOTTOM BAR
========================================== */

.bottom-bar{

    position:fixed;

    left:0;

    bottom:0;

    width:100%;

    background:white;

    display:flex;

    justify-content:space-around;

    padding:12px 0;

    box-shadow:0 -5px 20px rgba(0,0,0,.08);

    z-index:999;

}

.bottom-bar a{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:5px;

    color:#555;

    text-decoration:none;

    font-size:14px;

    font-weight:600;

}

.bottom-bar i{

    color:var(--primary);

    font-size:20px;

}

body.dark .bottom-bar{

    background:#202020;

}

body.dark .bottom-bar a{

    color:#ddd;

}

/* Hide Bottom Bar on Desktop */

@media(min-width:992px){

.bottom-bar{

display:none;

}

}

/* ==========================================
   TOAST
========================================== */

.toast{

    position:fixed;

    left:50%;

    bottom:30px;

    transform:translateX(-50%) translateY(80px);

    background:#111;

    color:white;

    padding:14px 22px;

    border-radius:12px;

    opacity:0;

    transition:.35s;

    z-index:99999;

}

.toast.show{

    opacity:1;

    transform:translateX(-50%) translateY(0);

}

/* ==========================================
   FOOTER
========================================== */

footer{

    margin-top:60px;

    text-align:center;

    color:#888;

    padding:30px 0;

    border-top:1px solid rgba(0,0,0,.08);

}

body.dark footer{

    border-color:#333;

}

/* ==========================================
   SCROLLBAR
========================================== */

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:20px;

}

::-webkit-scrollbar-track{

    background:#ececec;

}

body.dark ::-webkit-scrollbar-track{

    background:#222;

}
/* Ripple Effect */

.btn{

position:relative;

overflow:hidden;

}

.ripple{

position:absolute;

border-radius:50%;

transform:scale(0);

background:rgba(255,255,255,.4);

animation:ripple .6s linear;

pointer-events:none;

}

@keyframes ripple{

to{

transform:scale(4);

opacity:0;

}

}

/* Active Bottom Bar */

.bottom-bar a.active{

color:#FF4820;

font-weight:700;

}