/* House atlas v3.2: independent page, shared approved Home typography/nav/footer. */
body.tsa-fresh-houses{background:#05090d}
.tsa-hc-main{background:#071015}
.tsa-hc-main section:not(:first-child){border-top:0}
.tsa-hc-hero{min-height:365px;display:grid;place-items:center;text-align:center;background:#081017 url('/assets/images/tsa-houses-v320/houses-night-courtyard.webp') center 52% /cover no-repeat;overflow:hidden}
.tsa-hc-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,8,12,.46),rgba(4,9,12,.43) 40%,rgba(3,8,12,.46)),linear-gradient(0deg,rgba(5,10,14,.82),transparent 30%,rgba(5,10,14,.16))}
.tsa-hc-hero-copy{max-width:960px;margin:auto;padding:53px 24px 45px;text-shadow:0 3px 14px #000}
.tsa-hc-overline{font:700 11px/1.35 Arial,sans-serif;letter-spacing:.26em;text-transform:uppercase;color:#ffcb83;margin:0 0 14px}
.tsa-hc-hero h1{font:400 clamp(39px,5vw,72px)/1.08 Georgia,serif;color:#ffe0b5;font-variant:small-caps;margin:0}
.tsa-hc-emblem{font-size:16px;color:#cfa26a;letter-spacing:.35em;margin:15px 0 11px}.tsa-hc-emblem span{font-size:11px}
.tsa-hc-tagline{font:clamp(17px,1.5vw,23px)/1.35 Georgia,serif;color:#ffe1bd;margin:0 0 7px!important}
.tsa-hc-intro{font:clamp(14px,1.05vw,17px)/1.52 Georgia,serif;color:#f0ddc4;margin:0 auto!important;max-width:700px}
.tsa-hc-gallery{background:#090e12 url('/assets/images/tsa-home-blueprint-v300/map-cinematic-v310.webp') center top /cover no-repeat;padding:28px clamp(20px,3vw,48px) 55px;position:relative;overflow:hidden}
.tsa-hc-gallery:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(5,9,13,.54),rgba(5,9,13,.18) 33%,rgba(5,9,13,.25) 75%,rgba(5,9,13,.64))}
.tsa-hc-wrap{max-width:1315px;margin:auto}
.tsa-hc-gallery-label{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#ffd39c;text-align:center;margin:4px 0 14px!important;text-shadow:0 2px 9px #000}
.tsa-hc-gallery-label span{font:400 12px/1.4 Georgia,serif;letter-spacing:0;text-transform:none;color:#e5c69f}
.tsa-hc-gallery-label-houses{margin-top:25px!important}
.tsa-hc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.tsa-hc-card{position:relative;min-width:0;background:linear-gradient(180deg,rgba(9,15,20,.92),rgba(3,7,10,.98));border:1px solid #a77b4c;box-shadow:0 9px 22px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center;text-align:center;padding:13px 10px 12px;min-height:280px;overflow:hidden;transition:border-color .16s,transform .16s,box-shadow .16s}
.tsa-hc-house:hover{border-color:#ffe0a4;transform:translateY(-4px);box-shadow:0 12px 28px #000b}
.tsa-hc-art{height:175px;width:100%;display:grid;place-items:center;position:relative}
.tsa-hc-art img{width:min(100%,174px);height:174px;object-fit:contain;filter:drop-shadow(0 5px 11px #0007)}
.tsa-hc-card strong{font:400 clamp(20px,1.8vw,27px)/1.17 Georgia,serif;font-variant:small-caps;color:#ffe0b4;margin:3px 0 4px}
.tsa-hc-note{font:clamp(12px,1vw,14px)/1.38 Georgia,serif;color:#ecd1ad;max-width:240px;min-height:38px}
.tsa-hc-open{display:inline-flex;gap:8px;align-items:center;justify-content:center;margin-top:auto;padding:5px 11px 4px;font:700 9px/1.3 Arial,sans-serif;color:#e9b978;letter-spacing:.13em;text-transform:uppercase}
.tsa-hc-celestial{min-height:276px;background:linear-gradient(180deg,rgba(7,14,20,.9),rgba(4,9,12,.96))}
.tsa-hc-celestial .tsa-hc-art{height:185px}.tsa-hc-celestial .tsa-hc-art img{width:min(100%,185px);height:185px}
.tsa-celestial-blue img{filter:hue-rotate(150deg) saturate(1.45) drop-shadow(0 5px 13px #02162d)}
.tsa-celestial-silver img{filter:grayscale(1) contrast(1.12) brightness(1.18) drop-shadow(0 5px 13px #151926)}
.tsa-hc-end{min-height:290px;display:flex;gap:30px;align-items:center;justify-content:space-between;padding:34px clamp(25px,7vw,112px);background:#10141a url('/assets/images/tsa-home-blueprint-v300/hero-academy.webp') center 52% / cover no-repeat;border-top:1px solid #a77b4c}
.tsa-hc-end:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,8,12,.95),rgba(3,8,12,.67) 65%,rgba(3,8,12,.50))}
.tsa-hc-end-copy{max-width:700px;text-shadow:0 2px 8px #000}.tsa-hc-end h2{font:400 clamp(28px,3.2vw,44px)/1.15 Georgia,serif;font-variant:small-caps;margin:0 0 10px;color:#ffdfb2}
.tsa-hc-end p:not(.tsa-strapline){font-size:16px;max-width:620px;color:#ecd4b2}.tsa-hc-end-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.tsa-hc-end>img{width:220px;height:220px;object-fit:contain;flex:0 0 auto}
.tsa-hc-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:900px){.tsa-hc-grid{gap:10px}.tsa-hc-card{min-height:242px;padding:10px 6px}.tsa-hc-art{height:142px}.tsa-hc-art img{width:137px;height:137px}.tsa-hc-celestial .tsa-hc-art{height:147px}.tsa-hc-celestial .tsa-hc-art img{width:143px;height:143px}.tsa-hc-card strong{font-size:20px}.tsa-hc-note{font-size:12px}}
@media(max-width:650px){.tsa-hc-hero{min-height:340px;background-position:center 48%}.tsa-hc-hero-copy{padding:45px 18px 36px}.tsa-hc-hero h1{font-size:clamp(37px,9vw,49px)}.tsa-hc-gallery{padding:22px 12px 40px;background-size:auto 100%;background-position:center top}.tsa-hc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tsa-hc-card{min-height:238px;padding:11px 6px}.tsa-hc-art,.tsa-hc-celestial .tsa-hc-art{height:132px}.tsa-hc-art img,.tsa-hc-celestial .tsa-hc-art img{width:132px;height:132px}.tsa-hc-card strong{font-size:20px}.tsa-hc-gallery-label{margin-top:14px!important}.tsa-hc-gallery-label span{display:block;margin-top:4px}.tsa-hc-end{display:block;text-align:center;padding:34px 16px 30px}.tsa-hc-end>img{width:160px;height:160px;margin:22px auto 0}.tsa-hc-end-links{justify-content:center}}
@media(max-width:380px){.tsa-hc-grid{gap:8px}.tsa-hc-art,.tsa-hc-celestial .tsa-hc-art{height:120px}.tsa-hc-art img,.tsa-hc-celestial .tsa-hc-art img{height:120px;width:120px}.tsa-hc-card{min-height:230px}.tsa-hc-card strong{font-size:18px}.tsa-hc-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.tsa-hc-house{transition:none}}

/* Accent light on the authentic master emblems; original seal artwork is preserved. */
.tsa-hc-house[data-seal="rat"] img{filter:grayscale(.72) brightness(1.18) drop-shadow(0 4px 11px #111b29)}
.tsa-hc-house[data-seal="rabbit"] img{filter:hue-rotate(300deg) saturate(1.22) drop-shadow(0 4px 12px #3c1027)}
.tsa-hc-house[data-seal="dragon"] img{filter:hue-rotate(163deg) saturate(1.37) drop-shadow(0 4px 14px #052038)}
.tsa-hc-house[data-seal="snake"] img{filter:hue-rotate(315deg) saturate(1.42) drop-shadow(0 4px 12px #400c1d)}
.tsa-hc-house[data-seal="horse"] img{filter:grayscale(.4) brightness(1.12) drop-shadow(0 4px 12px #182739)}
.tsa-hc-house[data-seal="rooster"] img{filter:hue-rotate(326deg) saturate(1.43) drop-shadow(0 4px 12px #410e1c)}
.tsa-hc-house[data-seal="boar"] img{filter:hue-rotate(125deg) saturate(1.12) drop-shadow(0 4px 12px #082621)}

/* Distinct cinematic scene in every tile; full-resolution source crops with no stretching. */
.tsa-hc-card{background-color:#05090d;background-image:linear-gradient(180deg,rgba(5,9,12,.36),rgba(5,9,12,.82) 58%,rgba(3,7,10,.98) 94%),var(--tsa-hc-scene);background-size:cover;background-position:center}
.tsa-celestial-blue{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-azure-dragon.webp')}
.tsa-celestial-red{--tsa-hc-scene:url('/assets/images/tsa-home-blueprint-v300/story-panorama-v310.webp');background-position:center 52%}
.tsa-celestial-silver{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-white-tiger.webp')}
.tsa-celestial-jade{--tsa-hc-scene:url('/assets/images/tsa-home-blueprint-v300/map-cinematic-v310.webp');background-position:55% center}
.tsa-hc-card[data-seal="rat"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-rat.webp')}
.tsa-hc-card[data-seal="ox"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-ox.webp')}
.tsa-hc-card[data-seal="tiger"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-tiger.webp')}
.tsa-hc-card[data-seal="rabbit"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-rabbit.webp')}
.tsa-hc-card[data-seal="dragon"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-dragon.webp')}
.tsa-hc-card[data-seal="snake"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-snake.webp')}
.tsa-hc-card[data-seal="horse"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-horse.webp')}
.tsa-hc-card[data-seal="goat"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-goat.webp')}
.tsa-hc-card[data-seal="monkey"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-monkey.webp')}
.tsa-hc-card[data-seal="rooster"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-rooster.webp')}
.tsa-hc-card[data-seal="dog"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-dog.webp')}
.tsa-hc-card[data-seal="boar"]{--tsa-hc-scene:url('/assets/images/tsa-houses-v320/scene-boar.webp')}

.tsa-hc-gallery{border-top:1px solid rgba(173,124,75,.38)}
.tsa-hc-card{background-position:center center}
.tsa-hc-end{margin-top:0}

/* v3.4 Houses: non-repeating sharp chapter landscape and unmistakable gold rule */
.tsa-hc-gallery{background:#071117 url('/assets/images/tsa-home-blueprint-v300/map-cinematic-v310.webp') center 22% / cover no-repeat;border-top:2px solid #a77b4c;border-bottom:0}
.tsa-hc-end{position:relative;isolation:isolate;min-height:330px;background:#091016 url('/assets/images/tsa-home-blueprint-v300/map-cinematic-v310.webp') center 65% / cover no-repeat;border-top:3px solid #d8a85d!important;box-shadow:inset 0 6px 0 rgba(2,5,8,.9);}
.tsa-hc-end::before{background:linear-gradient(90deg,rgba(3,7,12,.93),rgba(3,8,12,.58) 63%,rgba(2,7,11,.19))}
.tsa-hc-end::after{content:"✦";position:absolute;top:-16px;left:50%;transform:translateX(-50%);color:#f5ce8c;background:#080d11;border:1px solid #d8a85d;padding:1px 13px;line-height:24px;z-index:2}
.tsa-celestial-red{--tsa-hc-scene:url('/assets/images/tsa-home-blueprint-v300/hero-academy.webp')}
.tsa-celestial-jade{--tsa-hc-scene:url('/assets/images/tsa-home-blueprint-v300/map-cinematic-v310.webp')}
.tsa-hc-celestial .tsa-hc-art img{filter:drop-shadow(0 3px 5px #000) drop-shadow(0 0 11px rgba(255,193,113,.40));}
@media(max-width:650px){.tsa-hc-gallery{background-size:auto 100%}.tsa-hc-end{background-position:52% center}}
