/* ============================================================
   Sathwin Tours: template-footer.css v14.0 (Burgundy and Gold)
   Prefix: tt-ft- | Every colour, font, radius and shadow comes from
   main.css tokens (the --hdr-* / --ftr-* sets and shared tokens).

   Same family as the header: metallic burgundy with champagne gold
   type and a gold edge along the top. Brand row, one equal row of
   small trust badges, five equal columns and a slim bottom bar.
   ============================================================ */

:root{
    --tt-ft-ease: var(--ease-premium);
}

.tt-footer{position:relative;z-index:var(--z-index-10);background:var(--ftr-bg);font-family:var(--font-primary);color:var(--ftr-text);isolation:isolate;overflow-x:clip;}
.tt-footer::before{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:var(--hdr-edge);}
.tt-footer::after{content:'';position:absolute;inset:0;background:var(--hdr-sweep) no-repeat;background-size:250% 100%;background-position:120% 0;animation:tt-ft-sweep 12s ease-in-out infinite;pointer-events:none;z-index:-1;}
@keyframes tt-ft-sweep{0%,45%{background-position:120% 0;}100%{background-position:-120% 0;}}

:where(.tt-footer) *{box-sizing:border-box;}
:where(.tt-footer) a{color:inherit;text-decoration:none;}
:where(.tt-footer) ul{list-style:none;margin:0;padding:0;}
.tt-footer [hidden]{display:none!important;}
.tt-footer :focus-visible{outline:2px solid var(--hdr-gold-light);outline-offset:3px;border-radius:var(--radius-xs);}
.tt-ft-wrap{width:100%;max-width:var(--container-wide);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));}

/* 1. Brand row */
.tt-ft-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:34px 0 26px;}
.tt-ft-logo{display:block;height:50px;width:auto;filter:var(--hdr-logo-shadow);transition:filter .4s;}
.tt-ft-brand:hover .tt-ft-logo{filter:var(--hdr-logo-glow);}
.tt-ft-tag{margin:0;line-height:1.3;text-align:center;font-family:var(--font-display);font-style:italic;font-size:22px;color:var(--hdr-gold-pale);}
.tt-ft-actions{display:flex;align-items:center;gap:10px;}
.tt-ft-social{display:flex;gap:8px;}
.tt-ft-social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--hdr-hair);color:var(--hdr-gold-light);font-size:15px;transition:background .3s,color .3s,border-color .3s,transform .3s var(--tt-ft-ease);}
.tt-ft-social a:hover{background:var(--hdr-gold-btn);color:var(--hdr-gold-btn-ink);border-color:transparent;transform:translateY(-3px);}
.tt-ft-btn-gold{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:9px;padding:12px 22px;border-radius:var(--radius-full);background:var(--hdr-gold-btn);color:var(--hdr-gold-btn-ink)!important;font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;box-shadow:var(--hdr-gold-btn-shadow);transition:transform .25s,box-shadow .25s;}
.tt-ft-btn-gold::before{content:'';position:absolute;top:0;left:-70%;width:45%;height:100%;background:var(--hdr-glint);transform:skewX(-20deg);animation:tt-ft-glint 5s 3s infinite;}
@keyframes tt-ft-glint{0%,70%{left:-70%;}100%{left:140%;}}
.tt-ft-btn-gold:hover{transform:translateY(-2px);box-shadow:var(--hdr-gold-btn-shadow-up);}

/* 2. Trust row */
.tt-ft-trust{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--ftr-panel-line);border-radius:14px;background:var(--ftr-panel);}
.tt-ft-trust[data-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr));}
.tt-ft-trust[data-count="5"]{grid-template-columns:repeat(5,minmax(0,1fr));}
.tt-ft-badge{display:flex;align-items:center;gap:10px;min-width:0;padding:14px;border-left:1px solid var(--ftr-line);transition:background .3s;}
.tt-ft-badge:first-child{border-left:0;}
.tt-ft-badge:hover{background:var(--hdr-gold-wash);}
.tt-ft-seal{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-primary);font-size:8.5px;font-weight:var(--font-weight-semibold);letter-spacing:.02em;color:var(--hdr-gold-pale);border:1px solid var(--hdr-gold-deep);box-shadow:var(--ftr-seal-ring);transition:transform .5s cubic-bezier(.3,1.5,.5,1);}
.tt-ft-badge:hover .tt-ft-seal{transform:rotate(-10deg) scale(1.08);}
.tt-ft-badge strong{display:block;font-size:12px;font-weight:var(--font-weight-semibold);line-height:1.25;color:var(--hdr-gold-white);}
.tt-ft-badge span{display:block;margin-top:1px;font-size:11px;line-height:1.3;color:var(--ftr-mute);}

/* 3. Columns */
.tt-ft-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px;padding:40px 0 34px;}
.tt-ft-col{min-width:0;}
.tt-ft-h{margin:0 0 14px;font-family:var(--font-wordmark);font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.18em;text-transform:uppercase;color:var(--ftr-head);}
.tt-ft-links{display:grid;gap:8px;}
.tt-ft-links--more{margin-top:12px;padding-top:12px;border-top:1px solid var(--ftr-line);}
.tt-ft-links--more a{color:var(--hdr-gold-light);font-weight:var(--font-weight-medium);}
.tt-ft-links a{position:relative;display:inline-block;font-size:14px;line-height:1.4;color:var(--ftr-text);transition:color .2s,padding .25s var(--tt-ft-ease);}
.tt-ft-links a::before{content:'';position:absolute;left:0;top:50%;width:4px;height:4px;background:var(--hdr-gold);transform:translateY(-50%) rotate(45deg) scale(0);transition:transform .25s;}
.tt-ft-links a:hover,.tt-ft-links a.is-active{color:var(--hdr-gold-white);padding-left:10px;}
.tt-ft-links a:hover::before,.tt-ft-links a.is-active::before{transform:translateY(-50%) rotate(45deg) scale(1);}
.tt-ft-links small{display:block;font-size:11.5px;color:var(--hdr-gold);}
.tt-ft-contact{display:grid;gap:11px;}
.tt-ft-contact li{display:flex;gap:10px;font-size:13.5px;line-height:1.5;color:var(--ftr-text);}
.tt-ft-contact i{flex:none;width:16px;margin-top:3px;color:var(--hdr-gold);font-size:13px;}
.tt-ft-contact a:hover{color:var(--hdr-gold-white);}
.tt-ft-contact small{display:block;color:var(--ftr-mute);font-size:12px;}

/* 4. Bottom bar */
.tt-ft-bottom{border-top:1px solid var(--ftr-line);font-size:12.5px;color:var(--ftr-mute);}
.tt-ft-bottom-in{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding-top:18px;padding-bottom:18px;}
.tt-ft-copy{margin:0;color:var(--ftr-mute);}
.tt-ft-legal{display:flex;flex-wrap:wrap;gap:18px;}
.tt-ft-legal a:hover,.tt-ft-credit:hover{color:var(--hdr-gold-pale);}
.tt-ft-credit b{color:var(--hdr-gold-light);font-weight:var(--font-weight-semibold);}

/* Responsive */
@media (max-width:1180px){
    .tt-ft-trust{grid-template-columns:repeat(3,minmax(0,1fr));}
    .tt-ft-badge:nth-child(3n+1){border-left:0;}
    .tt-ft-badge:nth-child(n+4){border-top:1px solid var(--ftr-line);}
    .tt-ft-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:820px){
    .tt-ft-top{grid-template-columns:1fr;justify-items:center;text-align:center;gap:16px;}
    .tt-ft-actions{flex-wrap:wrap;justify-content:center;}
    .tt-ft-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .tt-ft-grid>[data-tt-key="contact"]{grid-column:1/-1;}
}
@media (max-width:560px){
    .tt-ft-trust{grid-template-columns:repeat(2,minmax(0,1fr));}
    .tt-ft-badge{border-left:0!important;border-top:1px solid var(--ftr-line);}
    .tt-ft-badge:nth-child(-n+2){border-top:0;}
    .tt-ft-bottom-in{justify-content:center;text-align:center;}
}
@media (prefers-reduced-motion:reduce){
    .tt-footer *,.tt-footer *::before,.tt-footer *::after,.tt-footer::after{animation:none!important;transition-duration:.01ms!important;}
}
