/* Refinements that preserve the existing brand and template. */
.brand-logo { width: 300px; max-width: 100%; height: auto; }
#ftco-navbar .container > div:first-child { max-width: calc(100% - 95px); }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 10001; padding: 12px 20px; background: #fff; color: #111; }
.skip-link:focus { top: 12px; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #d1002c; outline-offset: 4px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.hero-actions .btn-outline-light { border: 1px solid #fff; color: #fff; }
.heading-section h1 { font-size: 36px; font-weight: 900; line-height: 1.3; }
.catalog-intro { max-width: 680px; margin: 0 auto; }
.contact-section .btn { white-space: normal; }
@media (max-width: 575px) { .heading-section h1 { font-size: 28px; } .hero-actions .btn { width: 100%; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

.hero-wrap .slider-text .text { background: rgba(255, 255, 255, .9); padding: 28px; border-radius: 8px; }
.hero-wrap .slider-text .text p { color: #292929; }
.hero-wrap .hero-actions .btn-outline-light { color: #292929; border-color: #292929; }
.hero-wrap .hero-actions .btn-outline-light:hover { background: #292929; color: #fff; }
.hero-wrap .owl-carousel.home-slider .slider-item .slider-text h1 { margin-top: 0; }
.single-portfolio-content:focus-within .hover-content { opacity: 1; visibility: visible; }
.single-portfolio-content .hover-content { visibility: visible; }
@media (hover: none) {
    .single-portfolio-content .hover-content { opacity: 1; background: transparent; }
    .single-portfolio-content .hover-content a { top: auto; left: auto; right: 12px; bottom: 12px; margin: 0; }
}
