
/* Timbercity final polish */
:root{--tc-gold:#f5b400;--tc-blue:#0788d1;--tc-dark:#171717;--tc-light:#f7f7f5;--tc-max:1200px}
html{scroll-behavior:smooth}
body{overflow-x:hidden}
img{max-width:100%;height:auto}
.container,.site-container{width:min(92%,var(--tc-max));margin-inline:auto}
.tc-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}
.tc-stat-card{padding:1.6rem;border-radius:16px;background:#222;box-shadow:0 12px 30px rgba(0,0,0,.12);transition:transform .3s ease,box-shadow .3s ease}
.tc-stat-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(0,0,0,.18)}
.tc-stat-number{font-size:clamp(2rem,4vw,3.5rem);font-weight:800;line-height:1;color:#fff}
.tc-stat-label{margin-top:.65rem;color:var(--tc-blue);font-weight:700;letter-spacing:.03em}
.tc-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.tc-reveal.is-visible{opacity:1;transform:none}
.tc-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.tc-gallery a{display:block;overflow:hidden;border-radius:14px;background:#ddd;aspect-ratio:4/3}
.tc-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease}
.tc-gallery a:hover img{transform:scale(1.05);filter:brightness(.9)}
.tc-cta{padding:clamp(2rem,5vw,4rem);border-radius:22px;background:var(--tc-dark);color:#fff}
.tc-cta-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.2rem}
.tc-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.85rem 1.25rem;border-radius:999px;font-weight:700;text-decoration:none;transition:transform .2s ease,opacity .2s ease}
.tc-btn:hover{transform:translateY(-2px);opacity:.92}
.tc-btn-primary{background:var(--tc-gold);color:#111}
.tc-btn-secondary{background:#fff;color:#111}
.tc-whatsapp{position:fixed;right:20px;bottom:20px;z-index:9999;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;text-decoration:none;box-shadow:0 10px 25px rgba(0,0,0,.25);font-size:1.4rem}
.tc-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;place-items:center;z-index:10000;padding:2rem}
.tc-lightbox.open{display:grid}
.tc-lightbox img{max-height:88vh;max-width:92vw;object-fit:contain}
.tc-lightbox button{position:absolute;top:20px;right:24px;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer}
.tc-skip{position:absolute;left:-9999px;top:auto}
.tc-skip:focus{left:10px;top:10px;z-index:10001;background:#fff;padding:.6rem}
@media(max-width:900px){.tc-stat-grid{grid-template-columns:repeat(2,1fr)}.tc-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.tc-stat-grid,.tc-gallery{grid-template-columns:1fr}.tc-stat-card{text-align:center}.tc-whatsapp{right:14px;bottom:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Mobile hero refinement */
@media(max-width:768px){
.hero,.hero-section,.hero-slider,.slider,.swiper,.carousel,.hero .slide,.hero-section .slide,.hero-slider .slide,.swiper-slide,.carousel-item{min-height:68vh}
.hero img,.hero-section img,.hero-slider img,.slider img,.swiper-slide img,.carousel-item img{object-position:center center}
.hero-content,.hero-overlay,.slide-content,.hero-text,.swiper-slide .content,.carousel-caption{width:88%;max-width:520px;margin-inline:auto;padding:1rem;box-sizing:border-box}
.hero-content h1,.hero-overlay h1,.slide-content h1,.hero-text h1,.swiper-slide h1,.carousel-caption h1{font-size:clamp(1.65rem,8vw,2.5rem);line-height:1.08}
.hero-content p,.hero-overlay p,.slide-content p,.hero-text p,.swiper-slide p,.carousel-caption p{font-size:clamp(.9rem,3.8vw,1.05rem);line-height:1.45}
}
@media(max-width:480px){
.hero,.hero-section,.hero-slider,.slider,.swiper,.carousel,.hero .slide,.hero-section .slide,.hero-slider .slide,.swiper-slide,.carousel-item{min-height:72vh}
.hero-content,.hero-overlay,.slide-content,.hero-text,.swiper-slide .content,.carousel-caption{width:90%;max-width:90%;padding:.8rem}
.hero-content h1,.hero-overlay h1,.slide-content h1,.hero-text h1,.swiper-slide h1,.carousel-caption h1{font-size:clamp(1.45rem,8.2vw,2rem)}
}
