/* ============================================================
   Ciao Cion Ceylon — template-footer.css v9.0 (Bold Premium Rebuild)
   Prefix: tt- | Matches template-header.css v8.x design language:
   single unified navy tone, gold lining frame, circular logo, real
   about-us.json data throughout (previous version carried another
   client's — TCV Travels/Pelmadulla — fallback content and hotel
   card; both removed in this rebuild).

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

.tt-footer{position:relative;background:var(--color-navy-deep);color:var(--color-white-70);font-family:var(--font-primary);overflow:hidden;}

/* Gold lining — the top edge of the footer closes the same frame that
   starts at the top of the announcement bar in the header, so the whole
   page reads as one continuous premium shell rather than separate
   decorated blocks. */
.tt-footer::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--color-gold) 15%,var(--color-gold) 30%,var(--color-gold-light) 50%,var(--color-gold) 70%,var(--color-gold) 85%,transparent 100%);background-size:220% 100%;box-shadow:0 0 8px rgba(207,159,63,.5);animation:tt-footer-shimmer 6s linear infinite;pointer-events:none;z-index:2;}
@keyframes tt-footer-shimmer{0%{background-position:220% 0;}100%{background-position:-220% 0;}}

.tt-footer-glow{position:absolute;inset:0;pointer-events:none;background:
    radial-gradient(ellipse 60% 45% at 8% 0%, rgba(var(--color-gold-rgb),.05) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 95% 100%, rgba(var(--color-green-rgb),.05) 0%, transparent 60%);
}

.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-navy);}
.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{font-size:12.5px;color:var(--color-white-60);line-height:1.4;transition:color .18s ease,padding-left .18s ease;}
.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-navy);display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:var(--font-weight-semibold);color:var(--color-green-light);}
.tt-footer-viewall i{font-size:9px;transition:transform .18s ease;}
.tt-footer-viewall:hover{color:var(--color-gold-light);}
.tt-footer-viewall:hover i{transform:translateX(3px);}

/* ── Brand column — circular logo (no square frame), real tagline,
   dual office chips, contact chips, Facebook + Instagram only ── */
.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-wrap::before{content:'';position:absolute;inset:-6px;border-radius:50%;background:radial-gradient(circle,rgba(207,159,63,.4),transparent 72%);pointer-events:none;}
.tt-footer-logo{position:relative;width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 4px 18px rgba(207,159,63,.35);}
.tt-footer-brand-name{display:block;font-family:var(--font-display);font-size:17px;font-weight:var(--font-weight-semibold);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:2px;line-height:1.35;}
.tt-footer-desc{font-size:12px;line-height:1.6;color:var(--color-white-55,rgba(255,255,255,.55));margin:0 0 16px;}

.tt-footer-offices{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;}
.tt-footer-office{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--color-white-75,rgba(255,255,255,.75));padding:8px 11px;border-radius:var(--radius-md);background:var(--color-white-05);border:1px solid var(--border-light);transition:all .18s ease;}
.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-75,rgba(255,255,255,.75));padding:7px 10px;border-radius:var(--radius-md);background:var(--color-white-05);border:1px solid var(--border-light);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:#25D366;}

.tt-footer-socials{display:flex;gap:9px;margin-top:auto;}
.tt-footer-social{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-white-05);border:1px solid var(--border-light);color:var(--color-white-65,rgba(255,255,255,.65));font-size:13px;transition:all .2s ease;}
.tt-footer-social:hover{background:linear-gradient(135deg,var(--color-gold-light),var(--color-gold));color:var(--color-navy-deep);border-color:transparent;transform:translateY(-2px);box-shadow:var(--shadow-gold);}

/* ── Signature CTA card (row 1, col 4) — replaces the old "We Own Our
   Hotel" card, which belonged to a different client. Ciao Cion doesn't
   own a hotel, so this promotes the signature collection instead. ── */
.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);overflow:hidden;display:flex;flex-direction:column;height:100%;}
.tt-footer-cta-card::before{content:'';position:absolute;top:-30%;right:-20%;width:140px;height:140px;background:radial-gradient(circle,rgba(var(--color-gold-rgb),.20),transparent 70%);pointer-events:none;}
.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:linear-gradient(135deg,var(--color-gold-light),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:16px;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-55,rgba(255,255,255,.55));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-65,rgba(255,255,255,.65));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;margin-top:auto;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-gold-light),var(--color-gold));color:var(--color-navy-deep);font-size:11.5px;font-weight:var(--font-weight-bold);transition:transform .2s ease;}
.tt-footer-cta-btn:hover{transform:translateY(-2px);}

/* ── 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-70);}
.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-55,rgba(255,255,255,.55));}
.tt-footer-hours i{color:var(--color-gold);margin-top:2px;}
.tt-footer-hours b{color:var(--color-white-80);font-weight:var(--font-weight-medium);}
.tt-footer-langs-list{display:flex;flex-wrap:wrap;gap:6px;}
.tt-footer-lang-badge{font-size:10.5px;padding:3px 9px;border-radius:var(--radius-full);background:var(--color-white-05);border:1px solid var(--border-light);color:var(--color-white-65,rgba(255,255,255,.65));}
.tt-footer-map{margin-top:auto;display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--color-white-65,rgba(255,255,255,.65));padding:9px 11px;border-radius:var(--radius-md);background:var(--color-white-05);border:1px solid var(--border-light);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-navy);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-55,rgba(255,255,255,.55));transition:color .18s ease;}
.tt-footer-legal a:hover{color:var(--color-gold-light);}
.tt-footer-dot{color:var(--color-white-25,rgba(255,255,255,.25));}
.tt-footer-copyright{order:2;margin:0;font-size:11.5px;letter-spacing:.01em;color:var(--color-white-50);text-align:center;flex:1;min-width:260px;}
.tt-footer-copyright span{color:var(--color-white-75,rgba(255,255,255,.75));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-40,rgba(255,255,255,.40));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;
    background:linear-gradient(90deg,var(--color-gold-dark) 0%,var(--color-gold-light) 25%,var(--color-gold) 50%,var(--color-gold-light) 75%,var(--color-gold-dark) 100%);
    background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;
    animation:tt-credit-shine 4s linear infinite;transition:opacity .2s ease;}
.tt-footer-credit:hover .tt-footer-credit-brand{opacity:.85;}
.tt-footer-credit-brand i{font-size:9px;color:var(--color-gold-light);-webkit-text-fill-color:var(--color-gold-light);}
@keyframes tt-credit-shine{0%{background-position:200% center;}100%{background-position:-200% center;}}

/* ============================================================ 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;}
}