/* Trado Fashion home app aesthetic • CSS-only; no React runtime or dependency. */
.tfast-app-home{--tfast-navy:#18134c;--tfast-hot:#f02a79;--tfast-gold:#ffca64;--tfast-muted:#62627c;--tfast-line:#efedf4;background:#fbfafd;color:var(--tfast-navy);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;overflow:hidden;padding:0 0 65px}
.tfast-app-home *{box-sizing:border-box}.tfast-app-home a{text-decoration:none;color:inherit}.tfast-app-home img{display:block;width:100%;max-width:100%;height:auto}.tfast-app-home .tfast-app-shell{width:min(1180px,100% - 32px);margin:auto}.tfast-quick-links{display:flex;gap:8px;padding:16px 0 18px;overflow-x:auto;scrollbar-width:none}.tfast-quick-links::-webkit-scrollbar,.tfast-category-scroll::-webkit-scrollbar{display:none}.tfast-quick-links a{white-space:nowrap;display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #eeebf2;border-radius:999px;padding:9px 16px;font-size:12px;font-weight:700;min-height:41px}.tfast-quick-links a:hover{border-color:#e99dbd}.tfast-quick-icon{color:var(--tfast-hot);font-size:18px}
.tfast-hero{min-height:390px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;border-radius:26px;overflow:hidden;background:linear-gradient(115deg,#17154e 0%,#27205e 50%,#752c7c 100%);color:white;position:relative;isolation:isolate}.tfast-hero:after{content:"";position:absolute;pointer-events:none;right:-100px;top:-180px;width:370px;height:370px;border-radius:50%;background:rgba(255,255,255,.05)}.tfast-hero-copy{padding:48px 25px 52px clamp(28px,5vw,72px);z-index:1}.tfast-eyebrow{font-weight:800;letter-spacing:2px;color:#ffd28b;font-size:11px}.tfast-eyebrow span{color:var(--tfast-hot);padding-right:7px}.tfast-hero h1{font-family:inherit!important;color:#fff;font-size:clamp(38px,4.8vw,65px)!important;max-width:560px;line-height:1.07;font-weight:850;letter-spacing:-2.5px;margin:24px 0 17px}.tfast-hero h1 em{font-style:normal;color:var(--tfast-gold)}.tfast-hero p{color:#ece7f9;font-size:15px;line-height:1.6;max-width:410px;margin:0}.tfast-hero-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:29px}.tfast-btn{min-height:48px;display:inline-flex;align-items:center;gap:18px;padding:13px 23px;border-radius:12px;font-size:13px;font-weight:800}.tfast-btn-yellow{background:var(--tfast-gold);color:var(--tfast-navy)!important;box-shadow:0 8px 25px rgba(9,7,36,.12)}.tfast-text-link{color:#fff!important;font-size:13px;font-weight:750}.tfast-hero-art{min-height:390px;display:flex;align-items:center;justify-content:center;position:relative}.tfast-art-halo{position:absolute;width:290px;height:290px;border:1px solid rgba(255,255,255,.25);border-radius:50%;transform:rotate(-22deg)}.tfast-art-halo:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.12);border-radius:50%}.tfast-art-card{width:260px;aspect-ratio:4/4.8;border-radius:25px;padding:27px 22px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:12px 20px 50px #09042760;transform:rotate(-10deg)}.tfast-art-main{background:linear-gradient(145deg,#ffcbb2 0%,#ff6599 66%,#ef2472 100%);color:#3a164f}.tfast-art-card>span{font-size:9px;letter-spacing:1.4px;font-weight:800}.tfast-art-card strong{font-size:35px;line-height:1.06;letter-spacing:-1.8px;font-weight:850}.tfast-art-card small{font-size:10px;font-weight:850;letter-spacing:2px}.tfast-art-label{position:absolute;right:7%;bottom:20%;font-size:27px;line-height:1.05;font-weight:750;transform:rotate(9deg);color:#fff;filter:drop-shadow(0 2px 2px #1a1650)}.tfast-art-label b{color:#ffd177}
.tfast-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:15px 0}.tfast-trust>div{display:grid;grid-template-columns:auto 1fr;gap:0 12px;align-items:center;padding:15px 19px;border:1px solid #f0edf7;background:white;border-radius:15px;min-width:0}.tfast-trust>div>span{font-size:23px;grid-row:span 2;color:var(--tfast-hot)}.tfast-trust b{font-size:13px;line-height:1.2}.tfast-trust small{font-size:11px;color:var(--tfast-muted);line-height:1.4}
.tfast-section{margin-top:42px}.tfast-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:18px}.tfast-kicker{display:block;color:var(--tfast-hot);letter-spacing:1.35px;font-size:10px;font-weight:850;margin-bottom:5px}.tfast-heading h2,.tfast-end-banner h2{font-family:inherit!important;font-size:clamp(21px,2.6vw,30px)!important;font-weight:850!important;color:var(--tfast-navy)!important;margin:0;line-height:1.3;letter-spacing:-.7px}.tfast-heading>a{font-weight:750;font-size:12px;color:var(--tfast-hot)!important;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center;gap:8px}.tfast-category-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 90px)/6);gap:18px;overflow-x:auto;scroll-snap-type:x proximity;padding:3px 2px 10px;scrollbar-width:none}.tfast-category{min-width:0;display:flex;align-items:center;flex-direction:column;gap:11px;text-align:center;scroll-snap-align:start;font-size:12px;font-weight:750}.tfast-category-img{width:100%;aspect-ratio:1/1;display:block;background:#f6e7ef;border-radius:22px;overflow:hidden}.tfast-category:nth-child(2n) .tfast-category-img{background:#eeeaf9}.tfast-category:nth-child(3n) .tfast-category-img{background:#fff1d7}.tfast-category-img img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}.tfast-category:hover .tfast-category-img{outline:2px solid #ff8bb4;outline-offset:3px}
.tfast-feature-banner a{display:block;border-radius:19px;overflow:hidden;aspect-ratio:1140/380;background:#f2e9f5}.tfast-feature-banner img{height:100%;object-fit:cover}
.tfast-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.tfast-product{background:#fff;border:1px solid var(--tfast-line);border-radius:17px;overflow:hidden;min-width:0;transition:box-shadow .2s,transform .2s}.tfast-product:hover{box-shadow:0 10px 25px #17134a14;transform:translateY(-2px)}.tfast-product-media{display:block;aspect-ratio:4/5;position:relative;overflow:hidden;background:#f4edf1}.tfast-product-media img{width:100%;height:100%;object-fit:cover}.tfast-product-label{position:absolute;left:10px;top:10px;font-size:10px;font-weight:800;color:var(--tfast-navy);background:#fff;border-radius:999px;padding:5px 10px}.tfast-product-body{padding:12px 13px;display:block}.tfast-product-name{font-size:12px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.5;color:#343047;height:36px}.tfast-product-row{margin-top:9px;display:flex;align-items:center;justify-content:space-between;gap:5px}.tfast-product-row strong{font-size:16px;color:var(--tfast-navy);font-weight:850}.tfast-round-arrow{border:1px solid #efedf4;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:16px;color:var(--tfast-hot)}.tfast-empty{background:#fff;border:1px solid #efedf4;border-radius:14px;padding:20px;font-size:14px}.tfast-empty a{color:var(--tfast-hot)!important;text-decoration:underline}
.tfast-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.tfast-offer-grid a{display:block;aspect-ratio:550/275;border-radius:18px;overflow:hidden;background:#f2e8f5}.tfast-offer-grid img{height:100%;object-fit:cover}.tfast-brand-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:15px}.tfast-brand-row a{font-size:11px;font-weight:700;text-align:center;min-width:0}.tfast-brand-circle{display:block;aspect-ratio:1;background:#fff;border:1px solid #eee9f3;border-radius:50%;padding:11px;margin-bottom:8px;overflow:hidden}.tfast-brand-circle img{height:100%;width:100%;object-fit:contain}.tfast-end-banner{margin-top:50px;border-radius:19px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 35px;background:linear-gradient(105deg,#fff2e3,#ffe6f1)}.tfast-end-banner h2{max-width:530px}
@media(max-width:900px){.tfast-category-scroll{grid-auto-columns:calc((100% - 50px)/4)}.tfast-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tfast-brand-row{grid-template-columns:repeat(4,minmax(0,1fr))}.tfast-hero{min-height:340px}.tfast-hero-art{min-height:340px}.tfast-hero-copy{padding:30px}.tfast-art-card{width:210px}.tfast-art-card strong{font-size:27px}}
@media(max-width:600px){.tfast-app-home .tfast-app-shell{width:calc(100% - 24px)}.tfast-quick-links{padding:12px 0 14px;gap:7px}.tfast-quick-links a{font-size:11px;padding:8px 12px}.tfast-hero{grid-template-columns:1fr;min-height:initial;border-radius:18px}.tfast-hero-copy{padding:27px 23px 17px}.tfast-hero h1{font-size:38px!important;max-width:300px;letter-spacing:-1.6px;margin:13px 0}.tfast-hero p{font-size:13px;max-width:320px}.tfast-hero-actions{margin-top:20px;gap:15px}.tfast-btn{min-height:44px;padding:11px 16px;font-size:12px}.tfast-text-link{font-size:12px}.tfast-hero-art{min-height:176px;justify-content:center;overflow:hidden}.tfast-art-card{width:134px;aspect-ratio:1.15;padding:14px;border-radius:16px;transform:rotate(-9deg) translateY(-11px)}.tfast-art-card strong{font-size:19px;letter-spacing:-.7px}.tfast-art-card span,.tfast-art-card small{font-size:7px}.tfast-art-halo{width:220px;height:220px}.tfast-art-label{right:12%;bottom:29%;font-size:17px}.tfast-trust{gap:5px;padding:10px 0}.tfast-trust>div{grid-template-columns:1fr;place-items:center;text-align:center;gap:4px;padding:10px 4px;border-radius:11px}.tfast-trust>div>span{grid-row:auto;font-size:21px}.tfast-trust b{font-size:10px}.tfast-trust small{display:none}.tfast-section{margin-top:29px}.tfast-heading{margin-bottom:12px}.tfast-heading h2{font-size:21px!important}.tfast-heading>a{font-size:11px}.tfast-kicker{font-size:9px}.tfast-category-scroll{grid-auto-columns:calc((100% - 27px)/3.5);gap:9px}.tfast-category-img{border-radius:15px}.tfast-category{font-size:10.5px;gap:7px}.tfast-feature-banner a{border-radius:13px;aspect-ratio:2.2}.tfast-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tfast-product{border-radius:13px}.tfast-product-body{padding:9px}.tfast-product-name{font-size:11px;height:33px}.tfast-product-row strong{font-size:14px}.tfast-product-label{font-size:9px;top:7px;left:7px}.tfast-offer-grid{gap:8px}.tfast-offer-grid a{border-radius:12px;aspect-ratio:1.3}.tfast-brand-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tfast-brand-circle{padding:5px}.tfast-end-banner{padding:20px;flex-direction:column;align-items:flex-start;margin-top:30px}.tfast-end-banner h2{font-size:20px!important}}
@media(prefers-reduced-motion:reduce){.tfast-product{transition:none}.tfast-product:hover{transform:none}}

/* 2026-10-14: isolated fast homepage; preserve banners + admin product sections. */
.tfast-app-home{overflow:visible!important;min-height:0!important;position:relative;display:block!important;clear:both}
.tfast-app-home .tfast-hero{display:grid!important;height:auto!important;max-height:none!important;overflow:hidden}
.tfast-app-home .tfast-hero-copy{height:auto!important;min-height:0!important;position:relative;z-index:2}
.tfast-app-home .tfast-hero h1{color:#fff!important;text-shadow:none;opacity:1!important;visibility:visible!important}
.tfast-app-home .tfast-hero h1 em{color:#ffca64!important}
.tfast-app-home .tfast-section{display:block!important;height:auto!important;max-height:none!important;overflow:visible;content-visibility:auto;contain-intrinsic-size:auto 360px}
.tfast-app-home .tfast-product-grid,.tfast-app-home .tfast-promos-grid{display:grid!important}
.tfast-promos-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tfast-promo{display:block;overflow:hidden;border-radius:18px;aspect-ratio:2.5;background:#eeeaf2}
.tfast-promo img{display:block;width:100%!important;height:100%!important;object-fit:contain!important}
.tfast-promos-grid>.tfast-promo:only-child{grid-column:1/-1;aspect-ratio:1100/385}
.tfast-app-home .tfast-section-description{margin:6px 0 0;color:#62627c;font-size:12px}
.tfast-app-home .tfast-admin-section .tfast-product-media img{object-fit:contain!important}
.tfast-app-home .tfast-category-placeholder{display:grid;place-items:center;color:#18134c;font-weight:800}
.tfast-app-home .tfast-feature-banner img,.tfast-app-home .tfast-offer-grid img{object-fit:contain!important;background:#f5edf2}
@media(max-width:600px){.tfast-promos-grid{grid-template-columns:1fr;gap:9px}.tfast-promo,.tfast-promos-grid>.tfast-promo:only-child{aspect-ratio:2.2}.tfast-app-home .tfast-hero{grid-template-columns:1fr!important}.tfast-app-home .tfast-section{contain-intrinsic-size:auto 490px}}

/* FIX 2026-10-14: Do not allow flex-column body to shrink the homepage main.
   When min-height:0 meets body{display:flex;height:100%}, the footer can
   appear before the overflowing categories, offers and product grids.
   Reserve the MAIN element's full natural height, keeping all sections in flow. */
body.trado-market-v1 > main.tfast-app-home {
  flex: 0 0 auto !important;
  min-height: auto !important;
  height: auto !important;
  max-height: none !important;
  width: 100% !important;
}
