.main-footer{position:relative;overflow:hidden;font-family:sans-serif;color:#fff;padding:0;}
.tn-canvas{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0.38;pointer-events:none;}
.tn-inner{position:relative;z-index:2;padding:48px 0 0;}
.tn-hero{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,0.1);}
.tn-hero h2{font-size:2rem;font-weight:600;margin:0 0 8px;color:#fff;}
.tn-gradient{background:linear-gradient(90deg,#e05a2b,#7b5ea7,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.tn-hero p{margin:0;color:rgba(255,255,255,0.55);font-size:0.95rem;}
.tn-btn{background:linear-gradient(135deg,#e05a2b,#7b5ea7);color:#fff;padding:14px 28px;border-radius:50px;text-decoration:none;font-weight:500;font-size:0.9rem;white-space:nowrap;display:inline-block;}
.tn-grid{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 1fr;gap:40px;padding:44px 0 32px;}
.tn-col-title{font-size:0.78rem;font-weight:600;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:1.5px;margin:0 0 14px;}
.tn-brand-name{font-size:1.3rem;font-weight:700;letter-spacing:-0.5px;margin-bottom:16px;}
.tn-brand-name .t{color:#fff;}.tn-brand-name .ech{color:#4ade80;}.tn-brand-name .neeqs{color:#fff;}
.tn-brand-desc{color:rgba(255,255,255,0.5);font-size:0.82rem;line-height:1.7;margin:0 0 22px;}
.tn-socials{display:flex;flex-wrap:wrap;gap:8px;}
.tn-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:background .2s,border .2s,transform .2s;cursor:pointer;}
.tn-icon:hover{transform:translateY(-3px);}
.si-fb{background:#1877f220;border:1px solid #1877f260;}.si-fb:hover{background:#1877f2!important;border-color:#1877f2!important;}
.si-li{background:#0a66c220;border:1px solid #0a66c260;}.si-li:hover{background:#0a66c2!important;border-color:#0a66c2!important;}
.si-tw{background:#00000040;border:1px solid #ffffff40;}.si-tw:hover{background:#000!important;border-color:#fff!important;}
.si-ig{background:#e1306c20;border:1px solid #e1306c60;}.si-ig:hover{background:#e1306c!important;border-color:#e1306c!important;}
.si-yt{background:#ff000020;border:1px solid #ff000060;}.si-yt:hover{background:#ff0000!important;border-color:#ff0000!important;}
.si-wa{background:#25d36620;border:1px solid #25d36660;}.si-wa:hover{background:#25d366!important;border-color:#25d366!important;}
.si-tt{background:#00f2ea20;border:1px solid #00f2ea60;}.si-tt:hover{background:#00f2ea!important;border-color:#00f2ea!important;}
.si-gh{background:#33333340;border:1px solid #ffffff40;}.si-gh:hover{background:#333!important;border-color:#fff!important;}
.tn-contact{display:flex;flex-direction:column;gap:10px;}
.tn-contact-row{display:flex;align-items:flex-start;gap:10px;}
.tn-contact-row a{color:rgba(255,255,255,0.75);text-decoration:none;font-size:0.85rem;}
.tn-contact-row p{color:rgba(255,255,255,0.55);font-size:0.8rem;margin:0;line-height:1.6;}
.tn-divider{height:1px;background:rgba(255,255,255,0.08);margin:6px 0;}
.tn-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}
.tn-links a{color:rgba(255,255,255,0.65);text-decoration:none;font-size:0.85rem;transition:color .2s;}
.tn-links a:hover{color:#4ade80;}
.tn-bar{border-top:1px solid rgba(255,255,255,0.1);padding:20px 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.tn-bar p{margin:0;}

.brand-logo {
  height: 32px; /* adjust as needed */
  width: auto;
}
/* Contact Bottom Bar */
.tn-contact-bottom {
    border-top: 1px solid rgba(255,255,255,0.08);
    margin-top: 1.5rem;
    padding-top: 1rem;
    margin-bottom: 1rem;
}

.tn-contact-bottom-grid {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 2fr;
    align-items: center;
    gap: 0;
    /* background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 12px;
    padding: 1rem 1.5rem; */
}

.tn-cb-col {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0 1.5rem;
}

.tn-cb-col:first-child { padding-left: 0; }

.tn-cb-divider {
    width: 1px;
    height: 50px;
    background: rgba(255,255,255,0.1);
    flex-shrink: 0;
}

.tn-cb-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tn-cb-content {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.tn-cb-label {
    font-size: 11px;
    color: rgba(255,255,255,0.35);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.tn-cb-value {
    font-size: 14px;
    color: rgba(255,255,255,0.85);
    text-decoration: none;
    transition: color 0.2s;
}
.tn-cb-value:hover { color: #d46a38; }

/* Address section */
.tn-cb-address {
    display: flex;              /* required */
    align-items: center;        /* vertical center */
    height: 100%;               /* ensure full height */
}

/* inner container */
.tn-cb-addresses {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

/* each address item */
.tn-cb-addr-item {
    display: flex;
    align-items: center;        /* align icon + text properly */
    gap: 12px;
}

/* text */
.tn-cb-addr-item p {
    font-size: 13px;
    color: rgba(255,255,255,0.7);
    line-height: 1.6;
    margin: 0;
}

.footer-links {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.footer-links a {
  color: rgba(255,255,255,0.25);
  font-size: 0.75rem;
  text-decoration: none;
  cursor: pointer;
  transition: 0.3s ease;
}

.footer-links a:hover {
  color: #fff; /* highlight on hover */
}

/* Update grid to 3 columns instead of 4 */
.tn-grid {
    display: grid;
    grid-template-columns: 1fr 1.6fr 1.6fr;
    gap: 2.5rem;
}

/* 2-column links layout inside a column */
.tn-2col-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 1rem;
}


@media (max-width: 900px) {
    .tn-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .tn-grid {
        grid-template-columns: 1fr;
    }
    .tn-2col-links {
        grid-template-columns: 1fr 1fr;
    }
}

/* Mobile responsive */
@media (max-width: 768px) {
    .tn-contact-bottom-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 1rem;
    }

    .tn-cb-divider {
        width: 100%;
        height: 1px;
    }

    .tn-cb-col {
        padding: 0;
    }
}

@media(max-width:1024px){
  .tn-inner{padding:40px 28px 0;}
  .tn-grid{grid-template-columns:1fr 1fr;gap:32px;}
}
@media(max-width:768px){
  .tn-inner{padding:32px 20px 0;}
  .tn-hero{flex-direction:column;align-items:flex-start;gap:18px;padding-bottom:28px;}
  .tn-hero h2{font-size:1.5rem;}
  .tn-grid{grid-template-columns:1fr 1fr;gap:28px;padding:32px 0 24px;}
  .tn-bar{flex-direction:column;align-items:flex-start;gap:8px;}
}
@media(max-width:480px){
  .tn-inner{padding:28px 16px 0;}
  .tn-hero h2{font-size:1.3rem;}
  .tn-grid{grid-template-columns:1fr;gap:28px;padding:28px 0 20px;}
  .tn-btn{width:100%;text-align:center;padding:12px 20px;}
  .tn-socials{gap:10px;}
  .tn-icon{width:40px;height:40px;}
}

