/* ============================================================
   Finwin Travels — template-footer.css v11.0 (Premium Redesign)
   Prefix: tt- | Matches template-header.css v11.0 design language:
   Jet Black background, a single flat gold hairline (no shimmer
   animation), flat-fill CTA card (no radial glow), Cinzel column
   titles. No Ciao Cion / Italy content, no hotel card.

   Per main.css's own design law ("restrained color — thin borders and
   flat fills, never a gradient or glow"), v11.0 removes the v10.0
   build's decorative gradients: the animated shimmer top-line, the
   two radial "glow" blobs behind the columns, the logo's radial glow,
   the CTA card's diagonal gradient fill, and the animated gradient
   text on the developer credit. What's left is flat and quiet by
   design — matching the jewellery-box restraint main.css documents.

   Layout:
     Row 1 (4 cols): Brand · By Experience · By Home Market · Signature CTA
     Row 2 (3 cols): Company · Destinations & Gallery · Good to Know
     Bottom bar: Legal · Copyright · PERLYN-IT credit
   ============================================================ */

.tt-footer{position:relative;background:var(--color-navy-deep);color:var(--color-white-65);font-family:var(--font-primary);border-top:1px solid var(--border-gold);}

/* v11.0: the shimmer/glow layer is now fully inert — kept as an empty,
   harmless element (rather than removed from the HTML) so no page that
   already loaded template-footer.html needs an edit. */
.tt-footer-glow{display:none;}

.tt-footer-main{position:relative;max-width:var(--container-wide);margin:0 auto;padding:52px 32px 22px;}

.tt-footer-row{display:grid;gap:28px;}
.tt-footer-row-1{grid-template-columns:1.35fr 1fr 1fr .95fr;}
.tt-footer-row-2{grid-template-columns:1.1fr 1.1fr .9fr;margin-top:30px;padding-top:26px;border-top:1px solid var(--border-primary);}
.tt-footer-col{display:flex;flex-direction:column;}

.tt-footer-col-title{display:flex;align-items:center;gap:8px;font-family:var(--font-accent);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-gold-light);margin:0 0 14px;}
.tt-footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;}
.tt-footer-links a{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--color-white-55);line-height:1.4;transition:color .18s ease,padding-left .18s ease;}
.tt-footer-links a i{width:13px;text-align:center;color:var(--color-gold);font-size:11px;flex-shrink:0;}
.tt-footer-links a:hover{color:var(--color-gold-light);padding-left:3px;}
.tt-footer-links--cols{display:block;column-count:2;column-gap:16px;}
.tt-footer-links--cols li{break-inside:avoid;margin-bottom:7px;}
.tt-footer-links--cols a{display:block;}
.tt-footer-viewall{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border-primary);display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:var(--font-weight-semibold);color:var(--color-gold-light);}
.tt-footer-viewall i{font-size:9px;transition:transform .18s ease;}
.tt-footer-viewall:hover{color:var(--color-gold);}
.tt-footer-viewall:hover i{transform:translateX(3px);}

/* ── Brand column — flat hairline-ring logo, single SL office chip ── */
.tt-footer-brand{display:flex;align-items:center;gap:13px;margin-bottom:16px;}
.tt-footer-logo-wrap{position:relative;flex-shrink:0;}
.tt-footer-logo{width:54px;height:54px;border-radius:50%;object-fit:cover;border:2px solid var(--color-gold-dark);background:var(--color-navy-card);}
.tt-footer-brand:hover .tt-footer-logo{border-color:var(--color-gold);}
.tt-footer-brand-name{display:block;font-family:var(--font-accent);font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-white);}
.tt-footer-brand-tag{display:block;font-family:var(--font-elegant);font-style:italic;font-size:11px;color:var(--color-gold-light);margin-top:3px;line-height:1.35;}
.tt-footer-desc{font-size:12px;line-height:1.6;color:var(--color-white-50);margin:0 0 16px;}

.tt-footer-office{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--color-white-70);padding:8px 11px;border-radius:var(--radius-md);background:transparent;border:1px solid var(--border-primary);transition:all .18s ease;margin-bottom:12px;}
.tt-footer-office:hover{border-color:var(--border-gold);color:var(--color-gold-light);}
.tt-footer-office-flag{font-size:15px;flex-shrink:0;}
.tt-footer-office b{color:var(--color-white);font-weight:var(--font-weight-semibold);}

.tt-footer-contacts{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;}
.tt-footer-cchip{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--color-white-70);padding:7px 10px;border-radius:var(--radius-md);background:transparent;border:1px solid var(--border-primary);transition:all .18s ease;}
.tt-footer-cchip:hover{border-color:var(--border-gold);color:var(--color-gold-light);}
.tt-footer-cchip i{color:var(--color-gold);width:14px;text-align:center;}
.tt-footer-cchip--wa i{color:var(--wa-green, #25D366);}

.tt-footer-socials{display:flex;gap:9px;margin-top:auto;}
.tt-footer-social{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:transparent;border:1px solid var(--border-primary);color:var(--color-white-60);font-size:12.5px;transition:all .2s ease;}
.tt-footer-social:hover{background:var(--color-gold);color:var(--color-navy-deep);border-color:var(--color-gold);transform:translateY(-1px);}

.tt-footer-cta-col{align-self:start;}

/* ── Signature CTA card — flat surface fill (--gradient-card resolves
   to a solid navy-card, not an actual gradient, per main.css), thin
   gold border. No radial glow, no diagonal fill. ── */
.tt-footer-cta-card{position:relative;padding:18px 18px 16px;border-radius:var(--radius-lg);background:var(--gradient-card);border:1px solid var(--border-gold);display:flex;flex-direction:column;}
.tt-footer-cta-badge{position:relative;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-accent);font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-navy-deep);background:var(--color-gold);padding:4px 10px;border-radius:var(--radius-full);margin-bottom:10px;align-self:flex-start;}
.tt-footer-cta-title{position:relative;font-family:var(--font-display);font-size:17px;color:var(--color-white);margin:0 0 6px;line-height:1.3;}
.tt-footer-cta-text{position:relative;font-size:11.5px;line-height:1.5;color:var(--color-white-50);margin:0 0 14px;}
.tt-footer-cta-list{position:relative;list-style:none;margin:0 0 14px;padding:8px 0 0;border-top:1px dashed var(--border-gold);display:flex;flex-direction:column;gap:6px;}
.tt-footer-cta-list a{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;color:var(--color-white-60);transition:color .18s ease;}
.tt-footer-cta-list a:hover{color:var(--color-gold-light);}
.tt-footer-cta-list em{font-style:normal;font-size:9.5px;color:var(--color-gold);}
.tt-footer-cta-btn{position:relative;overflow:hidden;margin-top:16px;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;border-radius:var(--radius-md);background:var(--color-gold);color:var(--color-navy-abyss);font-size:11.5px;font-weight:var(--font-weight-bold);transition:transform .2s ease;}
.tt-footer-cta-btn::before{content:'';position:absolute;top:-40%;left:0;width:26%;height:180%;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);transform:translateX(-160%) skewX(-18deg);pointer-events:none;}
.tt-footer-cta-btn:hover{transform:translateY(-2px);}
.tt-footer-cta-btn:hover::before{animation:tt-footer-shine-sweep 850ms ease;}
@keyframes tt-footer-shine-sweep{0%{transform:translateX(-160%) skewX(-18deg);}100%{transform:translateX(260%) skewX(-18deg);}}

/* ── Info column (row 2) — trust badges, hours, language badges, map ── */
.tt-footer-info-col{gap:11px;}
.tt-footer-trust-row{display:flex;flex-direction:column;gap:6px;}
.tt-footer-trust-badge{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--color-white-65);}
.tt-footer-trust-badge i{color:var(--color-gold);width:13px;text-align:center;}
.tt-footer-hours{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;color:var(--color-white-50);}
.tt-footer-hours i{color:var(--color-gold);margin-top:2px;}
.tt-footer-hours b{color:var(--color-white-75);font-weight:var(--font-weight-medium);}
.tt-footer-langs-list{display:flex;flex-wrap:wrap;gap:6px;max-height:72px;overflow-y:auto;}
.tt-footer-langs-list::-webkit-scrollbar{width:4px;}
.tt-footer-langs-list::-webkit-scrollbar-thumb{background:var(--color-gold-dark);border-radius:var(--radius-full);}
.tt-footer-lang-badge{font-size:10.5px;padding:3px 9px;border-radius:var(--radius-full);background:transparent;border:1px solid var(--border-primary);color:var(--color-white-60);white-space:nowrap;}
.tt-footer-map{margin-top:auto;display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--color-white-60);padding:9px 11px;border-radius:var(--radius-md);background:transparent;border:1px solid var(--border-primary);transition:all .18s ease;}
.tt-footer-map:hover{border-color:var(--border-gold);color:var(--color-gold-light);}
.tt-footer-map i:first-child{color:var(--color-gold);}
.tt-footer-map-ext{margin-left:auto;font-size:9px;opacity:.7;}

/* ── Bottom bar — fixed order: legal · copyright · credit ── */
.tt-footer-bottom{position:relative;border-top:1px solid var(--border-primary);background:var(--color-navy-deep);}
.tt-footer-bottom-inner{max-width:var(--container-wide);margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.tt-footer-legal{display:flex;align-items:center;gap:9px;font-size:11.5px;order:1;flex-shrink:0;}
.tt-footer-legal a{color:var(--color-white-50);transition:color .18s ease;}
.tt-footer-legal a:hover{color:var(--color-gold-light);}
.tt-footer-dot{color:var(--color-white-25);}
.tt-footer-copyright{order:2;margin:0;font-size:11.5px;letter-spacing:.01em;color:var(--color-white-45);text-align:center;flex:1;min-width:260px;}
.tt-footer-copyright span{color:var(--color-white-70);font-weight:var(--font-weight-medium);}
.tt-footer-credit{order:3;flex-shrink:0;display:flex;align-items:center;gap:6px;}
.tt-footer-credit-label{font-size:10.5px;color:var(--color-white-35);white-space:nowrap;}
.tt-footer-credit-brand{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:var(--font-weight-bold);letter-spacing:.02em;white-space:nowrap;color:var(--color-gold-light);transition:opacity .2s ease;}
.tt-footer-credit:hover .tt-footer-credit-brand{opacity:.8;}
.tt-footer-credit-brand i{font-size:9px;color:var(--color-gold);}

/* ============================================================ RESPONSIVE */
@media (max-width: 1180px){
    .tt-footer-row-1{grid-template-columns:1fr 1fr;gap:26px 22px;}
    .tt-footer-brand-col{grid-column:span 2;}
    .tt-footer-cta-col{grid-column:span 2;}
    .tt-footer-cta-card{max-width:480px;}
    .tt-footer-row-2{grid-template-columns:1fr 1fr;gap:26px 22px;}
    .tt-footer-info-col{grid-column:span 2;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px;}
    .tt-footer-hours{flex:1 1 260px;}
    .tt-footer-map{flex:1 1 240px;margin-top:0;}
}
@media (max-width: 640px){
    .tt-footer-main{padding:36px 20px 20px;}
    .tt-footer-row-1,.tt-footer-row-2{grid-template-columns:1fr;}
    .tt-footer-brand-col,.tt-footer-cta-col,.tt-footer-info-col{grid-column:span 1;}
    .tt-footer-cta-card{max-width:none;}
    .tt-footer-info-col{flex-direction:column;align-items:flex-start;}
    .tt-footer-links--cols{column-count:1;}
    .tt-footer-bottom-inner{flex-direction:column;text-align:center;padding:16px 20px;}
    .tt-footer-copyright{order:1;}
    .tt-footer-legal{order:2;}
    .tt-footer-credit{order:3;}
}
