*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--ad-red:#c8102e;--ad-red-hover:#a00d24;--ad-red-light:rgba(200,16,46,0.08);--ad-red-glow:rgba(200,16,46,0.3);--ad-anthracite:#3a3a3c;--ad-dark:#2a2a2c;--ad-darker:#1a1a1c;--ad-warm-gray:#f5f5f3;--ad-gray-medium:#6b7280;--ad-gray-light:#e8e8e6;--ad-border:#e5e5e3;--ad-text:#2a2a2c;--ad-text-muted:#6b7280;--ad-text-light:#9ca3af;--white:#ffffff;--radius:0.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.07),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.08),0 8px 10px -6px rgba(0,0,0,0.04);--container-max:1280px;--transition:all 0.2s ease}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:'Source Sans 3',system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;color:var(--ad-text);background-color:var(--white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-weight:700;line-height:1.2;color:var(--ad-darker)}a{color:inherit;text-decoration:none;transition:var(--transition)}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container{padding-left:2rem;padding-right:2rem}}.btn-ad-red{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;background-color:var(--ad-red);color:var(--white);font-weight:600;font-size:1rem;border-radius:var(--radius);padding:0.75rem 2rem;transition:var(--transition);text-align:center;border:none;cursor:pointer;text-decoration:none}.btn-ad-red:hover{background-color:var(--ad-red-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--ad-red-glow);color:var(--white)}.btn-ad-dark{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;background-color:var(--ad-darker);color:var(--white);font-weight:600;font-size:1rem;border-radius:var(--radius);padding:0.75rem 2rem;transition:var(--transition);text-align:center;border:none;cursor:pointer;text-decoration:none}.btn-ad-dark:hover{background-color:var(--ad-anthracite);transform:translateY(-1px);box-shadow:0 4px 12px rgba(42,42,44,0.3);color:var(--white)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;background-color:rgba(255,255,255,0.1);backdrop-filter:blur(8px);color:var(--white);font-weight:600;font-size:1rem;border-radius:var(--radius);padding:0.75rem 2rem;border:1px solid rgba(255,255,255,0.2);transition:var(--transition);cursor:pointer;text-decoration:none}.btn-ghost:hover{background-color:rgba(255,255,255,0.2);color:var(--white)}.btn-white{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;background-color:var(--white);color:var(--ad-darker);font-weight:600;font-size:1rem;border-radius:var(--radius);padding:0.75rem 2rem;transition:var(--transition);border:none;cursor:pointer;text-decoration:none}.btn-white:hover{background-color:rgba(255,255,255,0.9);transform:translateY(-1px);color:var(--ad-darker)}.top-bar{background-color:var(--ad-darker);color:rgba(255,255,255,0.9);font-size:0.875rem;display:none}@media (min-width:768px){.top-bar{display:block}}.top-bar .container{display:flex;align-items:center;justify-content:space-between;padding-top:0.5rem;padding-bottom:0.5rem}.top-bar__left{display:flex;align-items:center;gap:1.5rem}.top-bar__right{display:flex;align-items:center;gap:1rem}.top-bar a{display:flex;align-items:center;gap:0.375rem;color:rgba(255,255,255,0.9)}.top-bar a:hover{color:var(--white)}.top-bar .hours{display:flex;align-items:center;gap:0.375rem;color:rgba(255,255,255,0.7)}.top-bar .btn-ad-red{padding:0.375rem 1rem;font-size:0.875rem;border-radius:0.375rem}.site-header{position:sticky;top:0;z-index:50;background-color:var(--white);box-shadow:var(--shadow-sm);transition:var(--transition)}.site-header.scrolled{background-color:rgba(255,255,255,0.95);backdrop-filter:blur(12px);box-shadow:var(--shadow-md)}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-top:0.5rem;padding-bottom:0.5rem}@media (min-width:1024px){.site-header .container{padding-top:0.75rem;padding-bottom:0.75rem}}.site-logo img{height:3rem;width:auto;object-fit:contain}@media (min-width:768px){.site-logo img{height:3.5rem}}@media (min-width:1024px){.site-logo img{height:4rem}}.nav-desktop{display:none;align-items:center;gap:0.25rem}@media (min-width:1024px){.nav-desktop{display:flex}}.nav-desktop a{padding:0.5rem 0.75rem;border-radius:0.5rem;font-size:0.875rem;font-weight:500;color:var(--ad-anthracite);transition:var(--transition)}.nav-desktop a:hover,.nav-desktop a.active{color:var(--ad-red);background-color:var(--ad-red-light)}.header-cta{display:none}@media (min-width:1024px){.header-cta{display:inline-flex}.header-cta.btn-ad-red{padding:0.625rem 1.25rem;font-size:0.875rem}}.mobile-toggle{display:flex;align-items:center;justify-content:center;padding:0.5rem;border-radius:0.5rem;border:none;background:none;cursor:pointer;transition:var(--transition)}@media (min-width:1024px){.mobile-toggle{display:none}}.mobile-toggle:hover{background-color:#f3f4f6}.mobile-toggle svg{width:1.5rem;height:1.5rem}.mobile-menu{display:none;border-top:1px solid #f3f4f6;background:var(--white);padding:1rem}.mobile-menu.open{display:block}@media (min-width:1024px){.mobile-menu{display:none !important}}.mobile-menu a{display:block;padding:0.75rem 1rem;border-radius:0.5rem;font-size:1rem;font-weight:500;color:var(--ad-anthracite)}.mobile-menu a:hover,.mobile-menu a.active{color:var(--ad-red);background-color:var(--ad-red-light)}.mobile-menu__contact{margin-top:0.75rem;padding-top:0.75rem;border-top:1px solid #f3f4f6;display:flex;flex-direction:column;gap:0.75rem}.mobile-menu__contact a{display:flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;color:var(--ad-anthracite)}.hero{position:relative;overflow:hidden}.hero__bg{position:absolute;inset:0}.hero__bg img{width:100%;height:100%;object-fit:cover}.hero__overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(26,26,28,0.92),rgba(26,26,28,0.75),rgba(26,26,28,0.4))}.hero__content{position:relative;padding:5rem 0;max-width:42rem}@media (min-width:1024px){.hero__content{padding:8rem 0}}.hero__badge{display:inline-flex;align-items:center;gap:0.5rem;background:rgba(255,255,255,0.1);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,0.2);border-radius:9999px;padding:0.375rem 1rem;margin-bottom:1.5rem}.hero__badge-dot{width:0.5rem;height:0.5rem;border-radius:9999px;background-color:var(--ad-red)}.hero__badge span{color:rgba(255,255,255,0.9);font-size:0.875rem;font-weight:500}.hero h1{font-size:2.25rem;font-weight:800;color:var(--white);line-height:1.15;margin-bottom:1.5rem}@media (min-width:1024px){.hero h1{font-size:3rem}}@media (min-width:1280px){.hero h1{font-size:3.75rem}}.hero h1 .accent{display:block;color:#e8485c}.hero__desc{font-size:1.125rem;color:rgba(255,255,255,0.8);margin-bottom:2rem;line-height:1.7;max-width:36rem}@media (min-width:1024px){.hero__desc{font-size:1.25rem}}.hero__ctas{display:flex;flex-direction:column;gap:1rem}@media (min-width:640px){.hero__ctas{flex-direction:row}}.hero__ctas .btn-ad-red{padding:0.875rem 2rem}.hero__ctas .btn-ghost{padding:0.875rem 2rem}.section{padding:4rem 0}@media (min-width:1024px){.section{padding:6rem 0}}.section--gray{background-color:var(--ad-warm-gray)}.section--dark{background-color:var(--ad-darker);color:var(--white)}.section__label{display:inline-block;color:var(--ad-red);font-size:0.875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:0.75rem}.section__title{font-size:1.875rem;font-weight:700;color:var(--ad-darker);margin-bottom:1rem}@media (min-width:1024px){.section__title{font-size:2.25rem}}.section__desc{color:var(--ad-text-muted);font-size:1.125rem;max-width:42rem;margin-left:auto;margin-right:auto}.text-center{text-align:center}.services-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width:768px){.services-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.services-grid{gap:2rem}}.service-card{display:block;height:100%;text-decoration:none;color:inherit}.service-card__inner{background:var(--white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid #f3f4f6;height:100%;transition:var(--transition)}.service-card:hover .service-card__inner{box-shadow:var(--shadow-xl);border-color:rgba(200,16,46,0.3)}.service-card__image{position:relative;height:14rem;overflow:hidden}.service-card__image img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}.service-card:hover .service-card__image img{transform:scale(1.05)}.service-card__icon{position:absolute;top:1rem;left:1rem;background-color:var(--ad-red);color:var(--white);padding:0.625rem;border-radius:0.75rem;box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:center}.service-card__icon svg{width:1.25rem;height:1.25rem}.service-card__body{padding:1.5rem}.service-card__title{font-size:1.25rem;font-weight:700;color:var(--ad-darker);margin-bottom:0.75rem;transition:var(--transition)}.service-card:hover .service-card__title{color:var(--ad-red)}.service-card__text{color:var(--ad-text-muted);font-size:0.875rem;line-height:1.7;margin-bottom:1rem}.service-card__link{display:inline-flex;align-items:center;gap:0.25rem;color:var(--ad-red);font-size:0.875rem;font-weight:600;transition:var(--transition)}.service-card:hover .service-card__link{gap:0.5rem}.service-card__link svg{width:1rem;height:1rem}.why-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}@media (min-width:1024px){.why-grid{grid-template-columns:1fr 1fr;gap:4rem}}.why-features{display:grid;grid-template-columns:1fr;gap:1.25rem}@media (min-width:640px){.why-features{grid-template-columns:1fr 1fr}}.why-feature{display:flex;gap:1rem}.why-feature__icon{flex-shrink:0;width:2.75rem;height:2.75rem;border-radius:0.75rem;background-color:var(--ad-red-light);display:flex;align-items:center;justify-content:center}.why-feature__icon svg{width:1.25rem;height:1.25rem;color:var(--ad-red)}.why-feature h3{font-size:0.9375rem;font-weight:600;color:var(--ad-darker);margin-bottom:0.25rem}.why-feature p{font-size:0.875rem;color:var(--ad-text-muted);line-height:1.6}.why-image{position:relative}.why-image img{border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%}.why-badge{position:absolute;bottom:-1.5rem;left:-1rem;background:var(--white);border-radius:0.75rem;box-shadow:var(--shadow-xl);padding:1rem;display:flex;align-items:center;gap:0.75rem;border:1px solid #f3f4f6}@media (min-width:1024px){.why-badge{left:-1.5rem}}.why-badge__circle{width:3rem;height:3rem;border-radius:9999px;background-color:var(--ad-red);display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:700;font-size:1.125rem}.why-badge__text strong{display:block;font-size:0.875rem;color:var(--ad-darker)}.why-badge__text span{font-size:0.75rem;color:var(--ad-text-muted)}.reviews-header{display:flex;align-items:center;justify-content:center;gap:0.75rem;margin-bottom:1.5rem}.reviews-header .google-logo{width:2rem;height:2rem}.reviews-header .rating-value{font-size:2.25rem;font-weight:700;color:var(--ad-darker)}.reviews-header .stars{display:flex;gap:0.125rem}.reviews-header .stars svg{width:1.25rem;height:1.25rem;fill:#FBBC05;color:#FBBC05}.reviews-header .stars svg.half{fill:rgba(251,188,5,0.4);color:rgba(251,188,5,0.4)}.reviews-header .review-count{color:var(--ad-text-muted);font-size:0.875rem}.reviews-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width:768px){.reviews-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.reviews-grid{grid-template-columns:repeat(3,1fr)}}.review-card{background:var(--white);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--ad-gray-light);transition:var(--transition)}.review-card:hover{box-shadow:var(--shadow-md)}.review-card__header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem}.review-card__avatar{width:2.5rem;height:2.5rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:700;font-size:0.875rem}.review-card__name{font-weight:600;color:var(--ad-darker);font-size:0.875rem}.review-card__date{font-size:0.75rem;color:var(--ad-text-muted)}.review-card__google{margin-left:auto;width:1.25rem;height:1.25rem}.review-card__stars{display:flex;gap:0.125rem;margin-bottom:0.75rem}.review-card__stars svg{width:1rem;height:1rem;fill:#FBBC05;color:#FBBC05}.review-card__text{color:var(--ad-anthracite);font-size:0.875rem;line-height:1.7}.reviews-cta{text-align:center;margin-top:2.5rem}.reviews-cta a{display:inline-flex;align-items:center;gap:0.5rem;background:var(--white);border:2px solid var(--ad-gray-light);border-radius:9999px;padding:0.75rem 1.5rem;color:var(--ad-anthracite);font-weight:500;box-shadow:var(--shadow-sm);transition:var(--transition)}.reviews-cta a:hover{border-color:var(--ad-red);color:var(--ad-red);box-shadow:var(--shadow-md)}.reviews-cta p{color:var(--ad-text-muted);font-size:0.875rem;margin-top:0.75rem}.cta-section{background:linear-gradient(135deg,var(--ad-red),#a00d24);border-radius:var(--radius-xl);padding:2rem;text-align:center;position:relative;overflow:hidden}@media (min-width:1024px){.cta-section{padding:4rem;border-radius:1.5rem}}.cta-section::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.1) 1px,transparent 1px);background-size:60px 60px;opacity:0.5}.cta-section__inner{position:relative}.cta-section h2{font-size:1.875rem;font-weight:700;color:var(--white);margin-bottom:1rem}@media (min-width:1024px){.cta-section h2{font-size:2.25rem}}.cta-section p{color:rgba(255,255,255,0.9);font-size:1.125rem;max-width:36rem;margin:0 auto 2rem}.cta-section__buttons{display:flex;flex-direction:column;gap:1rem;justify-content:center}@media (min-width:640px){.cta-section__buttons{flex-direction:row}}.cta-section .btn-white{padding:0.875rem 2rem}.site-footer{background-color:var(--ad-darker);color:rgba(255,255,255,0.9)}.footer-main{padding:3rem 0}@media (min-width:1024px){.footer-main{padding:4rem 0}}.footer-grid{display:grid;grid-template-columns:1fr;gap:2.5rem}@media (min-width:768px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.footer-grid{grid-template-columns:1fr 1fr 1fr 1fr 1fr;gap:2rem}}.footer-brand p{color:rgba(255,255,255,0.7);font-size:0.875rem;line-height:1.7;margin-top:1rem}.footer-brand img{height:3.5rem;width:auto}.footer-col h3{font-weight:600;color:var(--white);margin-bottom:1rem;font-size:1rem}.footer-col ul{list-style:none;padding:0}.footer-col ul li{margin-bottom:0.75rem}.footer-col ul a{color:rgba(255,255,255,0.7);font-size:0.875rem;transition:var(--transition)}.footer-col ul a:hover{color:var(--ad-red)}.footer-col ul a.highlight{color:var(--ad-red);font-weight:500}.footer-col ul a.highlight:hover{color:#e8485c}.footer-hours{font-size:0.875rem;color:rgba(255,255,255,0.7)}.footer-hours p{margin-bottom:0.25rem}.footer-hours strong{color:rgba(255,255,255,0.9)}.footer-contact address{font-style:normal;font-size:0.875rem;color:rgba(255,255,255,0.7);line-height:1.7}.footer-contact a{display:flex;align-items:center;gap:0.5rem;color:rgba(255,255,255,0.7);font-size:0.875rem;margin-top:0.75rem}.footer-contact a:hover{color:var(--white)}.footer-contact svg{width:1rem;height:1rem;flex-shrink:0}.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:1rem 0}.footer-bottom .container{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:0.75rem;font-size:0.75rem;color:rgba(255,255,255,0.5)}@media (min-width:768px){.footer-bottom .container{flex-direction:row}}.footer-bottom a{color:rgba(255,255,255,0.5)}.footer-bottom a:hover{color:rgba(255,255,255,0.8)}.seo-content{font-size:1.125rem;line-height:1.8;color:var(--ad-anthracite)}.seo-content p{margin-bottom:1rem}.seo-content a{color:var(--ad-red);font-weight:600}.seo-content a:hover{text-decoration:underline}.seo-content strong{color:var(--ad-darker)}.page-hero{background-color:var(--ad-darker);padding:4rem 0}@media (min-width:1024px){.page-hero{padding:5rem 0}}.page-hero .breadcrumb{display:flex;align-items:center;gap:0.5rem;color:rgba(255,255,255,0.5);font-size:0.875rem;margin-bottom:1.5rem}.page-hero .breadcrumb a{color:rgba(255,255,255,0.5)}.page-hero .breadcrumb a:hover{color:rgba(255,255,255,0.8)}.page-hero .breadcrumb svg{width:0.875rem;height:0.875rem}.page-hero h1{font-size:1.875rem;font-weight:800;color:var(--white);margin-bottom:1rem}@media (min-width:1024px){.page-hero h1{font-size:3rem}}.page-hero p{color:rgba(255,255,255,0.7);font-size:1.125rem;line-height:1.7;max-width:48rem}.grid-2{display:grid;grid-template-columns:1fr;gap:2.5rem}@media (min-width:1024px){.grid-2{grid-template-columns:1fr 1fr;gap:4rem}}.contact-card{background:var(--white);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--ad-border);display:flex;gap:1rem;align-items:flex-start}.contact-card__icon{flex-shrink:0;width:2.75rem;height:2.75rem;border-radius:0.75rem;background-color:var(--ad-red-light);display:flex;align-items:center;justify-content:center}.contact-card__icon svg{width:1.25rem;height:1.25rem;color:var(--ad-red)}.contact-card h3{font-size:1rem;font-weight:600;color:var(--ad-darker);margin-bottom:0.25rem}.contact-card p,.contact-card a{font-size:0.875rem;color:var(--ad-text-muted)}.contact-card a:hover{color:var(--ad-red)}.map-container{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);height:400px}.map-container iframe{width:100%;height:100%;border:0}@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{animation:fadeUp 0.5s ease forwards;opacity:0}.animate-fade-up.delay-1{animation-delay:0.1s}.animate-fade-up.delay-2{animation-delay:0.2s}.animate-fade-up.delay-3{animation-delay:0.3s}.animate-fade-up.delay-4{animation-delay:0.4s}.animate-fade-up.delay-5{animation-delay:0.5s}.reveal{opacity:0;transform:translateY(30px);transition:opacity 0.6s ease,transform 0.6s ease}.reveal.visible{opacity:1;transform:translateY(0)}.whatsapp-float{position:fixed;bottom:1.5rem;right:1.5rem;z-index:999;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(37,211,102,0.4);transition:var(--transition)}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(37,211,102,0.5)}.whatsapp-float svg{width:1.75rem;height:1.75rem;fill:var(--white)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
.hero--small{background-size:cover;background-position:center;padding:5rem 0 4rem;position:relative}@media (min-width:1024px){.hero--small{padding:7rem 0 5rem}}.hero--small::before{content:'';position:absolute;inset:0;background:inherit;z-index:0}.hero--small .container{position:relative;z-index:1}.hero__title{font-size:2rem;font-weight:800;color:var(--white);line-height:1.15;margin-bottom:1rem}@media (min-width:1024px){.hero__title{font-size:3rem}}.hero__subtitle{font-size:1.125rem;color:rgba(255,255,255,0.85);margin-bottom:2rem;line-height:1.7;max-width:36rem}.hero__cta{display:flex;flex-direction:column;gap:1rem}@media (min-width:640px){.hero__cta{flex-direction:row;align-items:center}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;font-weight:600;font-size:1rem;border-radius:var(--radius);padding:0.875rem 2rem;transition:var(--transition);text-align:center;border:none;cursor:pointer;text-decoration:none;line-height:1.4}.btn--primary{background-color:var(--ad-red);color:var(--white)}.btn--primary:hover{background-color:var(--ad-red-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--ad-red-glow);color:var(--white)}.btn--outline-white{background-color:rgba(255,255,255,0.1);backdrop-filter:blur(8px);color:var(--white);border:1px solid rgba(255,255,255,0.3)}.btn--outline-white:hover{background-color:rgba(255,255,255,0.2);color:var(--white)}.btn--outline{background-color:transparent;color:var(--ad-anthracite);border:2px solid var(--ad-gray-light)}.btn--outline:hover{border-color:var(--ad-red);color:var(--ad-red)}

/* ========== GALLERY SECTION ========== */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto auto;
    gap: 1rem;
}

.gallery-item {
    position: relative;
    border-radius: 1rem;
    overflow: hidden;
    aspect-ratio: 4/3;
    cursor: pointer;
}

.gallery-item--large {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
    aspect-ratio: auto;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.gallery-item:hover img {
    transform: scale(1.05);
}

.gallery-item__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 60%);
    display: flex;
    align-items: flex-end;
    padding: 1.5rem;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.gallery-item:hover .gallery-item__overlay {
    opacity: 1;
}

.gallery-item__overlay span {
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
    letter-spacing: 0.02em;
}

/* Page-hero with background image */
.page-hero[style*="background-image"] {
    position: relative;
}

.page-hero[style*="background-image"]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(26,26,26,0.85) 0%, rgba(26,26,26,0.7) 100%);
    z-index: 1;
}

.page-hero[style*="background-image"] .container {
    position: relative;
    z-index: 2;
}

@media (max-width: 768px) {
    .gallery-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
    }
    .gallery-item--large {
        grid-column: 1 / -1;
        grid-row: auto;
        aspect-ratio: 16/9;
    }
    .gallery-item {
        aspect-ratio: 1;
    }
    .gallery-item__overlay {
        opacity: 1;
    }
}

@media (max-width: 480px) {
    .gallery-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }
    .gallery-item--large {
        aspect-ratio: 16/9;
    }
    .gallery-item {
        aspect-ratio: 16/10;
    }
}

/* ===== Nav Dropdown ===== */
.nav-dropdown {
    position: relative;
    display: inline-flex;
    align-items: center;
}
.nav-dropdown__trigger {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 0.5rem 0.75rem;
    color: var(--ad-anthracite);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.95rem;
    transition: color 0.2s;
    cursor: pointer;
}
.nav-dropdown__trigger:hover,
.nav-dropdown__trigger.active {
    color: var(--ad-red);
}
.nav-dropdown__trigger svg {
    transition: transform 0.25s ease;
}
.nav-dropdown:hover .nav-dropdown__trigger svg {
    transform: rotate(180deg);
}
.nav-dropdown__menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(8px);
    min-width: 220px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06);
    padding: 0.5rem 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
    z-index: 1000;
    border: 1px solid rgba(0,0,0,0.05);
}
.nav-dropdown:hover .nav-dropdown__menu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.nav-dropdown__item {
    display: block;
    padding: 0.65rem 1.25rem;
    color: var(--ad-anthracite);
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 450;
    transition: background 0.15s, color 0.15s, padding-left 0.2s;
}
.nav-dropdown__item:hover {
    background: #f8f9fa;
    color: var(--ad-red);
    padding-left: 1.5rem;
}
.nav-dropdown__item.active {
    color: var(--ad-red);
    font-weight: 600;
}

/* Mobile Dropdown */
.mobile-dropdown {
    display: flex;
    flex-direction: column;
}
.mobile-dropdown__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    color: var(--ad-anthracite);
    text-decoration: none;
    font-weight: 500;
    font-size: 1rem;
    border-bottom: 1px solid #eee;
}
.mobile-dropdown__trigger.active {
    color: var(--ad-red);
}
.mobile-dropdown__arrow {
    transition: transform 0.25s ease;
}
.mobile-dropdown__menu {
    display: flex;
    flex-direction: column;
    padding-left: 1rem;
    background: #f9f9f9;
    border-bottom: 1px solid #eee;
}
.mobile-dropdown__item {
    display: block;
    padding: 0.6rem 1rem;
    color: #555;
    text-decoration: none;
    font-size: 0.9rem;
    border-bottom: 1px solid #eee;
    transition: color 0.15s;
}
.mobile-dropdown__item:last-child {
    border-bottom: none;
}
.mobile-dropdown__item:hover,
.mobile-dropdown__item.active {
    color: var(--ad-red);
}
