/* Custom CSS for Realeza Rede */

:root {
    --primary-color: #013440;
    --secondary-color: #04BFBF;
    --accent-color: #04D9D9;
    --success-color: #198754;
    --warning-color: #04D9D9;
    --danger-color: #dc3545;
    --info-color: #04BFBF;
    --light-color: #f8f9fa;
    --dark-color: #013440;
    --font-family: 'Inter', sans-serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-family);
    line-height: 1.6;
    color: var(--dark-color);
    padding-top: 152px; /* Compensar altura do header moderno + barra de topo */
}

/* Top Contact Bar */
.top-contact-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030;
    background: linear-gradient(135deg, #013440 0%, #025a6b 100%) !important;
    font-size: 0.875rem;
    padding: 0.75rem 0 1rem !important;
}

.top-contact-bar .row {
    margin: 0 !important;
}

.top-contact-bar .contact-item {
    transition: all 0.3s ease;
}

.top-contact-bar .contact-item:hover {
    color: var(--accent-color) !important;
    transform: translateY(-1px);
}

.top-contact-bar .whatsapp-btn {
    background: linear-gradient(135deg, #25D366, #20ba5a);
    border: none;
    font-size: 0.875rem;
    padding: 0.4rem 1rem;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(37, 211, 102, 0.3);
}

.top-contact-bar .whatsapp-btn:hover {
    background: linear-gradient(135deg, #20ba5a, #1da851);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.4);
    transform: translateY(-2px);
}

.top-contact-bar i {
    font-size: 1rem;
}

/* Social Icons Minimal */
.social-icon-minimal {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1.5px solid var(--accent-color);
    border-radius: 50%;
    color: var(--accent-color);
    text-decoration: none;
    transition: all 0.3s ease;
    background: transparent;
}

.social-icon-minimal i {
    font-size: 1.1rem;
}

.social-icon-minimal:hover {
    background: var(--accent-color);
    color: var(--dark-color);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(4, 217, 217, 0.4);
}

/* Call Me Button */
.btn-call-me {
    background: #ff6b35;
    color: white;
    border: none;
    font-weight: 600;
    padding: 0.5rem 1.2rem;
    border-radius: 25px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(255, 107, 53, 0.3);
    font-size: 0.875rem;
    margin-top: -5px;
}

.btn-call-me:hover {
    background: #ff5722;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 107, 53, 0.5);
}

.btn-call-me i {
    font-size: 1rem;
}

/* Responsividade para tablets e dispositivos médios */
@media (max-width: 992px) {
    .modern-navbar {
        top: 60px !important;
    }
    
    .logo-img {
        height: 100px !important;
    }
}

/* Responsividade para mobile */
@media (max-width: 768px) {
    .top-contact-bar {
        font-size: 0.8rem;
        padding: 0.5rem 0 1.25rem !important; /* Aumentado o padding-bottom */
    }
    
    .top-contact-bar .gap-3 {
        gap: 0.5rem !important;
    }
    
    .btn-call-me {
        font-size: 0.75rem;
        padding: 0.4rem 0.8rem;
    }
    
    .btn-call-me span.d-none.d-md-inline {
        display: none !important;
    }
    
    /* Ajustar posição da navbar no mobile */
    .modern-navbar {
        top: 70px !important; /* Aumentado de 60px para 70px */
        padding: 1rem 0 !important;
    }
    
    .logo-img {
        height: 80px !important;
    }
    
    body {
        padding-top: 160px; /* Ajustado para compensar o novo espaçamento */
    }
}

/* Responsividade para dispositivos muito pequenos */
@media (max-width: 576px) {
    .top-contact-bar {
        font-size: 0.75rem;
        padding: 0.5rem 0 1rem !important; /* Aumentado o padding-bottom */
    }
    
    /* Manter layout flex mas ajustar para wrap */
    .top-contact-bar .col-12 > .d-flex {
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
    
    /* Itens de contato lado a lado */
    .top-contact-bar .contact-item {
        font-size: 0.7rem;
    }
    
    /* Botão e ícones sociais em linha separada */
    .top-contact-bar .col-12 > .d-flex > div:last-child {
        width: 100%;
        justify-content: center !important;
        margin-top: 0.5rem;
    }
    
    .btn-call-me {
        font-size: 0.7rem;
        padding: 0.35rem 0.7rem;
    }
    
    .social-icon-minimal {
        width: 28px;
        height: 28px;
    }
    
    .modern-navbar {
        top: 85px !important; /* Aumentado de 75px para 85px */
        padding: 0.75rem 0 !important;
    }
    
    .logo-img {
        height: 60px !important;
    }
    
    body {
        padding-top: 155px; /* Ajustado para compensar o novo espaçamento */
    }
}

/* Modern Navigation */
.modern-navbar {
    transition: all 0.3s ease;
    padding: 1.5rem 0;
    backdrop-filter: blur(10px);
    background: rgba(255, 255, 255, 0.95) !important;
    border-bottom: 1px solid rgba(4, 217, 217, 0.1);
}

.modern-navbar .navbar-brand {
    font-size: 1.2rem;
    text-decoration: none;
    transition: all 0.3s ease;
}

.logo-img {
    height: 140px;
    width: auto;
    transition: all 0.3s ease;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}


.modern-navbar .navbar-brand:hover .logo-img {
    transform: scale(1.05);
    filter: drop-shadow(0 4px 8px rgba(4, 217, 217, 0.2));
}


.modern-navbar .nav-link {
    font-weight: 500;
    font-size: 0.95rem;
    padding: 0.75rem 1.25rem !important;
    margin: 0 0.25rem;
    border-radius: 8px;
    transition: all 0.3s ease;
    position: relative;
}

.modern-navbar .nav-link:hover {
    color: var(--accent-color) !important;
    background: rgba(4, 217, 217, 0.1);
    transform: translateY(-1px);
}

.modern-navbar .nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background: var(--accent-color);
    transition: all 0.3s ease;
    transform: translateX(-50%);
}

.modern-navbar .nav-link:hover::after {
    width: 80%;
}

/* WhatsApp Button */
.btn-whatsapp {
    background: linear-gradient(135deg, #25D366, #20ba5a);
    border: none;
    color: white;
    font-weight: 600;
    padding: 0.75rem 1.5rem;
    border-radius: 25px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(37, 211, 102, 0.3);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    font-size: 0.9rem;
}

.btn-whatsapp:hover {
    background: linear-gradient(135deg, #20ba5a, #1ea851);
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
}

.btn-whatsapp i {
    font-size: 1.1rem;
}

/* Navbar Actions */
.navbar-actions {
    margin-left: 1rem;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    body {
        padding-top: 80px; /* Reduzir padding para mobile */
    }
    
    .modern-navbar {
        padding: 1rem 0;
    }
    
    .logo-img {
        height: 110px;
    }
    
    
    .navbar-actions {
        margin-left: 0;
        margin-top: 1rem;
        text-align: center;
    }
    
    .btn-whatsapp {
        width: 100%;
        justify-content: center;
    }
}

/* Dropdown Styles */
.dropdown-menu {
    border: none;
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    padding: 1rem 0;
    margin-top: 0.5rem;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    min-width: 280px;
}

.dropdown-item {
    padding: 0.75rem 1.5rem;
    border: none;
    transition: all 0.3s ease;
}

.dropdown-item:hover {
    background: rgba(4, 217, 217, 0.1);
    color: var(--accent-color);
}

.dropdown-item-content {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.dropdown-icon {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, var(--accent-color), #04BFBF);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.dropdown-item:hover .dropdown-icon {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(4, 217, 217, 0.3);
}

.dropdown-text h6 {
    margin: 0;
    font-weight: 600;
    color: var(--dark-color);
    font-size: 0.95rem;
}

.dropdown-text small {
    color: var(--secondary-color);
    font-size: 0.8rem;
    margin: 0;
}

.dropdown-item:hover .dropdown-text h6 {
    color: var(--accent-color);
}

.dropdown-divider {
    margin: 0.5rem 1.5rem;
    border-color: rgba(1, 52, 64, 0.2);
}

.dropdown-toggle::after {
    margin-left: 0.5rem;
    transition: transform 0.3s ease;
}

.dropdown.show .dropdown-toggle::after {
    transform: rotate(180deg);
}

/* Desktop Dropdown Display */
@media (min-width: 992px) {
    .dropdown-menu {
        display: none;
        position: absolute;
    }
    
    .dropdown.show .dropdown-menu,
    .dropdown-menu.show {
        display: block;
    }
}

/* Mobile Dropdown */
@media (max-width: 991px) {
    .dropdown-menu {
        position: static;
        transform: none;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
        background: white;
        border: 1px solid rgba(0, 0, 0, 0.1);
        margin-top: 0.5rem;
        border-radius: 10px;
        width: 100%;
    }
    
    .dropdown-item {
        color: var(--dark-color);
        padding: 0.75rem 1rem;
    }
    
    .navbar-collapse .dropdown-menu {
        display: none;
    }
    
    .navbar-collapse .dropdown.show .dropdown-menu {
        display: block;
    }
    
    .dropdown-item:hover {
        background: rgba(4, 217, 217, 0.1);
        color: var(--accent-color);
    }
    
    .dropdown-text h6 {
        color: var(--dark-color);
    }
    
    .dropdown-text small {
        color: var(--secondary-color);
    }
    
    .dropdown-item:hover .dropdown-text h6 {
        color: var(--accent-color);
    }
    
    .dropdown-item:hover .dropdown-text small {
        color: var(--accent-color);
    }
}

/* Hero Section */
.hero-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');
    opacity: 0.3;
}

/* Background Floating Elements */
.hero-bg-elements {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.floating-shield {
    position: absolute;
    width: 60px;
    height: 60px;
    background: rgba(4, 217, 217, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: rgba(255, 255, 255, 0.6);
    animation: float 6s ease-in-out infinite;
}

.shield-1 {
    top: 20%;
    left: 10%;
    animation-delay: 0s;
}

.shield-2 {
    top: 60%;
    right: 15%;
    animation-delay: 2s;
}

.shield-3 {
    top: 30%;
    right: 25%;
    animation-delay: 4s;
}

.shield-4 {
    bottom: 20%;
    left: 20%;
    animation-delay: 1s;
}

/* Trust Badges */
.trust-badges {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.badge-item {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.1);
    padding: 0.5rem 1rem;
    border-radius: 25px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.badge-item:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: translateY(-2px);
}

.badge-item i {
    color: var(--accent-color);
    margin-right: 0.5rem;
    font-size: 1.1rem;
}

.badge-item span {
    color: white;
    font-size: 0.9rem;
    font-weight: 500;
}

/* Text Gradient */
.text-gradient {
    background: linear-gradient(135deg, #00FFFF, #E0F7FA);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 700;
    filter: brightness(1.2);
}

/* Hero Features */
.hero-features {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.feature-item {
    display: flex;
    align-items: center;
    color: white;
}

.feature-item i {
    color: var(--accent-color);
    margin-right: 0.5rem;
    font-size: 1.1rem;
}

.feature-item span {
    font-size: 0.95rem;
    font-weight: 500;
}

/* Hero Buttons */
.hero-buttons .btn {
    border-radius: 50px;
    padding: 12px 30px;
    font-weight: 600;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.hero-btn-primary {
    background-color: var(--accent-color) !important;
    border-color: var(--accent-color) !important;
    box-shadow: 0 5px 15px rgba(4, 217, 217, 0.3);
}

.hero-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.hero-btn-secondary {
    border: 2px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
}

.hero-btn-secondary:hover {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.5);
    transform: translateY(-3px);
}

/* Hero Visual */
.hero-visual {
    position: relative;
    z-index: 2;
}

.hero-card {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    padding: 2rem;
    backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.hero-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.1), rgba(255, 140, 0, 0.1));
    opacity: 0;
    transition: opacity 0.3s ease;
}

.hero-card:hover::before {
    opacity: 1;
}

.card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}

.security-indicator {
    display: flex;
    align-items: center;
    color: white;
    font-size: 0.9rem;
}

.indicator-dot {
    width: 8px;
    height: 8px;
    background: #4ade80;
    border-radius: 50%;
    margin-right: 0.5rem;
    animation: pulse 2s infinite;
}

.card-content {
    text-align: center;
    margin-bottom: 1.5rem;
}

.pet-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--accent-color), #04BFBF);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    font-size: 2rem;
    color: white;
    animation: float 3s ease-in-out infinite;
}

.card-content h3 {
    color: white;
    margin-bottom: 1rem;
    font-weight: 600;
}

.security-level {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.level-bar {
    width: 100px;
    height: 6px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
    overflow: hidden;
}

.level-fill {
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, var(--accent-color), #04BFBF);
    border-radius: 3px;
    animation: fillBar 2s ease-in-out;
}

.security-level span {
    color: white;
    font-size: 0.9rem;
    font-weight: 500;
}

.card-footer {
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-top: 1rem;
}

.stats-row {
    display: flex;
    justify-content: space-around;
}

.stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: white;
}

.stat i {
    color: var(--accent-color);
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
}

.stat span {
    font-size: 0.8rem;
    font-weight: 500;
}

/* Floating Elements */
.floating-elements {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
}

.float-element {
    position: absolute;
    width: 40px;
    height: 40px;
    background: rgba(217, 112, 74, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    font-size: 1.2rem;
    animation: float 4s ease-in-out infinite;
}

.element-1 {
    top: 10%;
    right: 10%;
    animation-delay: 0s;
}

.element-2 {
    bottom: 20%;
    left: 5%;
    animation-delay: 2s;
}

.element-3 {
    top: 50%;
    right: 5%;
    animation-delay: 1s;
}

/* Hero Gallery */
.hero-gallery {
    position: relative;
}

.gallery-container {
    position: relative;
}

.main-photo {
    position: relative;
    margin-bottom: 1.5rem;
    border-radius: 1rem;
    overflow: hidden;
}

.main-photo img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.main-photo:hover img {
    transform: scale(1.05);
}

.photo-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(4, 217, 217, 0.9), rgba(1, 52, 64, 0.8));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.main-photo:hover .photo-overlay {
    opacity: 1;
}

.overlay-content {
    text-align: center;
    color: white;
}

.overlay-icon {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.overlay-content h5 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.overlay-content p {
    font-size: 1rem;
}

.secondary-photos {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

.photo-item {
    position: relative;
    border-radius: 0.5rem;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.photo-item:hover {
    transform: translateY(-5px);
}

.photo-item img {
    width: 100%;
    height: auto;
    display: block;
}

.photo-badge {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    width: 40px;
    height: 40px;
    background: var(--accent-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
}

.quality-indicators {
    display: flex;
    justify-content: space-between;
    margin-top: 2rem;
    gap: 1rem;
}

.quality-indicators .indicator {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50px;
    padding: 0.75rem 1.25rem;
    color: white;
    font-size: 0.9rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
}

.quality-indicators .indicator:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: translateY(-2px);
}

.quality-indicators .indicator i {
    color: var(--accent-color);
}

/* Hero Stats */
.hero-stats {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.hero-stats .stat-item {
    padding: 1rem;
}

.hero-stats .stat-number {
    font-size: 2rem;
    font-weight: 700;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

.hero-stats .stat-label {
    color: white;
    font-size: 0.9rem;
    font-weight: 500;
}

/* Animations */
@keyframes fillBar {
    0% { width: 0%; }
    100% { width: 100%; }
}

@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}

/* Service Cards */
.service-card {
    background: white;
    border-radius: 15px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.service-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: white;
    font-size: 2rem;
}

.service-card h4 {
    color: var(--dark-color);
    margin-bottom: 1rem;
}

.service-card ul li {
    margin-bottom: 0.5rem;
    font-size: 0.95rem;
}

/* Features Section */
.feature-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.feature-main-icon {
    font-size: 12rem;
    color: var(--accent-color);
    opacity: 0.8;
}

.feature-item h5 {
    color: var(--dark-color);
}

/* About Section */
.about-main-icon {
    font-size: 12rem;
    color: var(--secondary-color);
    opacity: 0.8;
}

.stats {
    margin-top: 2rem;
}

.stat-item h3 {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
    color: var(--accent-color);
}

.stat-item p {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Contact Section */
.contact-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
}

.contact-form {
    border-radius: 15px;
}

.contact-form .form-control,
.contact-form .form-select {
    border-radius: 10px;
    border: 2px solid #e9ecef;
    padding: 12px 15px;
    transition: all 0.3s ease;
}

.contact-form .form-control:focus,
.contact-form .form-select:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 0.2rem rgba(217, 112, 74, 0.25);
}

.contact-icon {
    font-size: 2.5rem;
    color: var(--accent-color);
    margin-bottom: 1rem;
}

.contact-info {
    padding: 1rem;
}

/* Footer */
.footer-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    color: white;
}

.footer-section p,
.footer-section small,
.footer-section span,
.footer-section .text-muted {
    color: white !important;
}

.footer-brand h4 {
    color: var(--accent-color);
}

.footer-logo {
    height: 50px;
    width: auto;
    transition: all 0.3s ease;
}

.footer-brand:hover .footer-logo {
    transform: scale(1.05);
}

.footer-brand h5 {
    color: var(--accent-color);
}

.certifications .cert-item {
    transition: all 0.3s ease;
}

.certifications .cert-item:hover {
    transform: translateX(5px);
}

.certifications .cert-item i {
    transition: color 0.3s ease;
}

.certifications .cert-item:hover i {
    color: var(--accent-color) !important;
}

.footer-section ul li a {
    color: white !important;
    transition: all 0.3s ease;
}

.footer-section ul li a:hover {
    color: var(--accent-color) !important;
    transform: translateX(5px);
}

.contact-item a {
    color: white !important;
    transition: color 0.3s ease;
}

.contact-item a:hover {
    color: var(--accent-color) !important;
}

.newsletter-form .form-control {
    border-radius: 25px;
    border: 2px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.1);
    color: white;
}

.newsletter-form .form-control::placeholder {
    color: rgba(255, 255, 255, 0.7);
}

.newsletter-form .form-control:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 0.2rem rgba(217, 112, 74, 0.25);
    background: rgba(255, 255, 255, 0.15);
}

.newsletter-form .btn {
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.newsletter-form .btn:hover {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

.social-links a {
    font-size: 1.5rem;
    transition: all 0.3s ease;
    display: inline-block;
}

.social-links a:hover {
    color: var(--accent-color) !important;
    transform: translateY(-3px);
}

.footer-links a {
    color: white !important;
    transition: color 0.3s ease;
}

.footer-links a:hover {
    color: var(--accent-color) !important;
}

.border-secondary {
    border-color: rgba(1, 52, 64, 0.3) !important;
}

/* Responsive Footer */
@media (max-width: 768px) {
    .footer-section .row {
        text-align: center;
    }
    
    .newsletter-form {
        justify-content: center;
    }
    
    .social-links {
        justify-content: center;
    }
    
    .footer-links {
        text-align: center;
    }
    
    .footer-brand .d-flex {
        justify-content: center;
    }
}

/* Responsive Logo */
@media (max-width: 576px) {
    .logo-img {
        height: 90px;
    }
    
    .footer-logo {
        height: 40px;
    }
    
    .navbar-brand {
        font-size: 1.2rem;
    }
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fade-in-up {
    animation: fadeInUp 0.6s ease-out;
}

/* Responsive Design */
@media (max-width: 768px) {
    .hero-icon {
        font-size: 8rem;
    }
    
    .feature-main-icon,
    .about-main-icon {
        font-size: 8rem;
    }
    
    .hero-buttons .btn {
        display: block;
        width: 100%;
        margin-bottom: 1rem;
    }
    
    .hero-buttons .btn:last-child {
        margin-bottom: 0;
    }
    
    .service-card {
        margin-bottom: 2rem;
    }
    
    .stats .col-4 {
        margin-bottom: 1rem;
    }
}

@media (max-width: 576px) {
    .hero-icon {
        font-size: 6rem;
    }
    
    .feature-main-icon,
    .about-main-icon {
        font-size: 6rem;
    }
    
    .display-4 {
        font-size: 2rem;
    }
    
    .display-5 {
        font-size: 1.75rem;
    }
    
    .service-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .feature-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    /* Hero Gallery Responsive */
    .hero-visual {
        margin-top: 2rem;
    }
    
    .hero-gallery .main-photo {
        margin-bottom: 1.5rem;
    }
    
    .hero-gallery .secondary-photos {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }
    
    .quality-indicators {
        flex-wrap: wrap;
        gap: 0.75rem;
        justify-content: center;
        margin-top: 1.5rem;
    }
    
    .quality-indicators .indicator {
        font-size: 0.85rem;
        padding: 0.5rem 0.75rem;
    }
    
    .floating-elements {
        display: none;
    }
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: var(--accent-color);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #013440;
}

/* Loading animation for buttons */
.btn-loading {
    position: relative;
    color: transparent !important;
}

.btn-loading::after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 50%;
    margin-left: -8px;
    margin-top: -8px;
    border: 2px solid transparent;
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Benefits Section */
.benefits-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 50%, var(--primary-color) 100%);
    position: relative;
    overflow: hidden;
}

.benefits-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="dots" width="20" height="20" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23dots)"/></svg>');
    opacity: 0.3;
}

.benefit-card {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    padding: 2rem;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.benefit-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    transition: left 0.6s ease;
}

.benefit-card:hover::before {
    left: 100%;
}

.benefit-card:hover {
    transform: translateY(-10px) scale(1.02);
    background: rgba(255, 255, 255, 0.15);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.benefit-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
}

.benefit-card:hover .benefit-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.benefit-content {
    position: relative;
    z-index: 2;
}

.benefit-features {
    margin-top: 1rem;
}

.feature-tag {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 25px;
    padding: 0.5rem 1rem;
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.3s ease;
}

.benefit-card:hover .feature-tag {
    background: rgba(255, 255, 255, 0.2);
    transform: translateX(5px);
}

.benefit-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(1, 52, 64, 0.95);
    border-radius: 20px;
    padding: 2rem;
    opacity: 0;
    transform: scale(0.8);
    transition: all 0.4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
}

.benefit-card:hover .benefit-overlay {
    opacity: 1;
    transform: scale(1);
}

.overlay-content {
    text-align: center;
    color: white;
}

.overlay-content h5 {
    margin-bottom: 1rem;
    font-size: 1.2rem;
}

.overlay-content ul li {
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
    opacity: 0.9;
}

/* Interactive Stats */
.stats-container {
    margin-top: 3rem;
}

.stat-circle {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
    border: 2px solid rgba(255, 255, 255, 0.2);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.stat-circle::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: conic-gradient(from 0deg, transparent, rgba(217, 112, 74, 0.3), transparent);
    animation: rotate 3s linear infinite;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.stat-circle:hover::before {
    opacity: 1;
}

.stat-circle:hover {
    transform: scale(1.1);
    border-color: var(--accent-color);
    box-shadow: 0 0 30px rgba(217, 112, 74, 0.3);
}

.stat-number {
    font-size: 2.5rem;
    font-weight: 700;
    color: white;
    margin-bottom: 0.5rem;
    position: relative;
    z-index: 2;
}

.stat-label {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.8);
    text-align: center;
    position: relative;
    z-index: 2;
}

@keyframes rotate {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Pulse animation for benefit cards */
@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(217, 112, 74, 0.4); }
    70% { box-shadow: 0 0 0 10px rgba(217, 112, 74, 0); }
    100% { box-shadow: 0 0 0 0 rgba(217, 112, 74, 0); }
}

.benefit-card[data-benefit="security"] {
    animation: pulse 2s infinite;
}

.benefit-card[data-benefit="security"]:hover {
    animation: none;
}

/* Floating animation for icons */
@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}

.benefit-icon {
    animation: float 3s ease-in-out infinite;
}

.benefit-card:hover .benefit-icon {
    animation: none;
}

/* Responsive adjustments for benefits section */
@media (max-width: 768px) {
    .benefit-card {
        margin-bottom: 2rem;
    }
    
    .stat-circle {
        width: 100px;
        height: 100px;
    }
    
    .stat-number {
        font-size: 2rem;
    }
    
    .benefit-overlay {
        padding: 1.5rem;
    }
    
    .overlay-content h5 {
        font-size: 1rem;
    }
    
    .overlay-content ul li {
        font-size: 0.8rem;
    }
}

@media (max-width: 576px) {
    .benefit-card {
        padding: 1.5rem;
    }
    
    .benefit-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .stat-circle {
        width: 80px;
        height: 80px;
    }
    
    .stat-number {
        font-size: 1.5rem;
    }
    
    .stat-label {
        font-size: 0.8rem;
    }
}

/* Portfolio Section */
.portfolio-section {
    background: #f8f9fa;
}

.portfolio-item {
    position: relative;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.4s ease;
    cursor: pointer;
}

.portfolio-item:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(4, 217, 217, 0.2);
}

.portfolio-image {
    width: 100%;
    height: 300px;
    object-fit: cover;
    transition: all 0.4s ease;
}

.portfolio-item:hover .portfolio-image {
    transform: scale(1.1);
}

.portfolio-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(1, 52, 64, 0.95), rgba(4, 191, 191, 0.95));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.4s ease;
}

.portfolio-item:hover .portfolio-overlay {
    opacity: 1;
}

.portfolio-info {
    text-align: center;
    color: white;
    padding: 1.5rem;
    transform: translateY(20px);
    transition: all 0.4s ease;
}

.portfolio-item:hover .portfolio-info {
    transform: translateY(0);
}

.portfolio-info h5 {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: white;
}

.portfolio-info p {
    font-size: 0.9rem;
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
}

@media (max-width: 768px) {
    .portfolio-image {
        height: 250px;
    }
    
    .portfolio-info h5 {
        font-size: 1.1rem;
    }
    
    .portfolio-info p {
        font-size: 0.85rem;
    }
}

@media (max-width: 576px) {
    .portfolio-image {
        height: 200px;
    }
}

/* Utility classes */
.text-shadow {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.box-shadow {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
}

.box-shadow-lg {
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.border-radius-lg {
    border-radius: 15px;
}

.border-radius-xl {
    border-radius: 20px;
}

/* WhatsApp Floating Button */
.whatsapp-float {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
    background: #25D366;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 20px rgba(37, 211, 102, 0.4);
    transition: all 0.3s ease;
    z-index: 1000;
    text-decoration: none;
    animation: pulse-whatsapp 2s infinite;
}

.whatsapp-float:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 25px rgba(37, 211, 102, 0.6);
    background: #20ba5a;
}

.whatsapp-float i {
    color: white;
    font-size: 28px;
    transition: transform 0.3s ease;
}

.whatsapp-float:hover i {
    transform: scale(1.1);
}

/* WhatsApp tooltip */
.whatsapp-tooltip {
    position: absolute;
    right: 70px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 14px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    pointer-events: none;
}

.whatsapp-tooltip::after {
    content: '';
    position: absolute;
    left: 100%;
    top: 50%;
    transform: translateY(-50%);
    border: 5px solid transparent;
    border-left-color: rgba(0, 0, 0, 0.8);
}

.whatsapp-float:hover .whatsapp-tooltip {
    opacity: 1;
    visibility: visible;
}

/* Pulse animation for WhatsApp button */
@keyframes pulse-whatsapp {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.4);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(37, 211, 102, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

/* Responsive WhatsApp button */
@media (max-width: 768px) {
    .whatsapp-float {
        width: 55px;
        height: 55px;
        bottom: 15px;
        right: 15px;
    }
    
    .whatsapp-float i {
        font-size: 24px;
    }
    
    .whatsapp-tooltip {
        right: 65px;
        font-size: 12px;
        padding: 6px 10px;
    }
}

@media (max-width: 576px) {
    .whatsapp-float {
        width: 50px;
        height: 50px;
        bottom: 10px;
        right: 10px;
    }
    
    .whatsapp-float i {
        font-size: 22px;
    }
    
    .whatsapp-tooltip {
        right: 60px;
        font-size: 11px;
        padding: 5px 8px;
    }
}

/* Contact Page Specific Styles */
.contact-hero-section {
    background: linear-gradient(135deg, #013440 0%, #04BFBF 100%) !important;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%) !important;
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

.contact-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="contact-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23contact-grain)"/></svg>');
    opacity: 0.3;
    z-index: 1;
}

.contact-hero-content {
    position: relative;
    z-index: 2;
}

.contact-methods {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.method-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: white;
    transition: all 0.3s ease;
}

.method-item i {
    font-size: 2rem;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
}

.method-item span {
    font-size: 0.9rem;
    font-weight: 500;
}

.method-item:hover {
    transform: translateY(-5px);
}

.method-item:hover i {
    transform: scale(1.2);
    color: #04BFBF;
}

/* Contact Form Card */
.contact-form-card {
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.contact-form-card:hover {
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
    transform: translateY(-5px);
}

.contact-form-card .form-control,
.contact-form-card .form-select {
    border-radius: 12px;
    border: 2px solid #e9ecef;
    padding: 12px 15px;
    transition: all 0.3s ease;
    font-size: 0.95rem;
}

.contact-form-card .form-control:focus,
.contact-form-card .form-select:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 0.2rem rgba(217, 112, 74, 0.25);
    transform: translateY(-1px);
}

.contact-form-card .form-label {
    font-weight: 600;
    color: var(--dark-color);
    margin-bottom: 0.5rem;
}

.contact-form-card .btn {
    border-radius: 25px;
    padding: 12px 30px;
    font-weight: 600;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.contact-form-card .btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(217, 112, 74, 0.4);
}

/* Contact Info Cards */
.contact-info-card {
    background: white;
    border-radius: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.contact-info-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.contact-info-card .contact-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.contact-info-card:hover .contact-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.contact-info-card h4 {
    color: var(--dark-color);
    margin-bottom: 1rem;
}

.contact-info-card .btn {
    border-radius: 25px;
    padding: 10px 20px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.contact-info-card .btn:hover {
    transform: translateY(-2px);
}

/* Location Section */
.location-visual {
    position: relative;
}

.location-main-icon {
    font-size: 12rem;
    color: var(--accent-color);
    opacity: 0.8;
    animation: float 3s ease-in-out infinite;
}

.location-cities {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
    margin-top: 2rem;
}

.city-tag {
    background: #013440;
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 25px;
    font-size: 0.9rem;
    font-weight: 600;
    transition: all 0.3s ease;
    cursor: pointer;
}

.city-tag:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

.location-item {
    transition: all 0.3s ease;
}

.location-item:hover {
    transform: translateX(10px);
}

.location-icon {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.location-item:hover .location-icon {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

/* FAQ Section */
.accordion-item {
    border: none;
    margin-bottom: 1rem;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.accordion-item:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}

.accordion-button {
    background: white;
    border: none;
    font-weight: 600;
    color: var(--dark-color);
    padding: 1.25rem 1.5rem;
    transition: all 0.3s ease;
}

.accordion-button:not(.collapsed) {
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.1), rgba(255, 140, 0, 0.1));
    color: var(--accent-color);
    box-shadow: none;
}

.accordion-button:focus {
    box-shadow: 0 0 0 0.2rem rgba(217, 112, 74, 0.25);
}

.accordion-body {
    background: white;
    padding: 1.5rem;
    color: var(--secondary-color);
    line-height: 1.7;
}

/* Responsive Contact Page */
@media (max-width: 768px) {
    .contact-methods {
        gap: 1.5rem;
    }
    
    .method-item i {
        font-size: 1.5rem;
    }
    
    .location-main-icon {
        font-size: 8rem;
    }
    
    .city-tag {
        font-size: 0.8rem;
        padding: 0.4rem 0.8rem;
    }
    
    .contact-form-card {
        margin: 0 1rem;
    }
    
    .contact-info-card {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .contact-methods {
        gap: 1rem;
    }
    
    .method-item i {
        font-size: 1.2rem;
    }
    
    .method-item span {
        font-size: 0.8rem;
    }
    
    .location-main-icon {
        font-size: 6rem;
    }
    
    .location-cities {
        gap: 0.5rem;
    }
    
    .city-tag {
        font-size: 0.75rem;
        padding: 0.3rem 0.6rem;
    }
    
    .contact-form-card .form-control,
    .contact-form-card .form-select {
        font-size: 0.9rem;
        padding: 10px 12px;
    }
    
    .accordion-button {
        padding: 1rem;
        font-size: 0.9rem;
    }
    
    .accordion-body {
        padding: 1rem;
        font-size: 0.9rem;
    }
}

/* Force contact hero background */
section.contact-hero-section {
    background: linear-gradient(135deg, #013440 0%, #04BFBF 100%) !important;
}

/* About Page Specific Styles */
.about-hero-section {
    background: linear-gradient(135deg, #013440 0%, #04BFBF 100%) !important;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%) !important;
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

.about-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="about-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23about-grain)"/></svg>');
    opacity: 0.3;
    z-index: 1;
}

.about-hero-content {
    position: relative;
    z-index: 2;
}

.about-values {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.value-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: white;
    transition: all 0.3s ease;
}

.value-item i {
    font-size: 2rem;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
}

.value-item span {
    font-size: 0.9rem;
    font-weight: 500;
}

.value-item:hover {
    transform: translateY(-5px);
}

.value-item:hover i {
    transform: scale(1.2);
    color: #04BFBF;
}

/* Story Stats */
.story-stats {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.story-stats .stat-item h3 {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
    color: var(--accent-color);
}

.story-stats .stat-item p {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--secondary-color);
}

/* Commitment Cards */
.commitment-card {
    background: white;
    border-radius: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.commitment-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.commitment-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.commitment-card:hover .commitment-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.commitment-card h4 {
    color: var(--dark-color);
    margin-bottom: 1rem;
}

/* Mission Section */
.mission-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    position: relative;
    overflow: hidden;
}

.mission-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="mission-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23mission-grain)"/></svg>');
    opacity: 0.3;
}

.mission-visual {
    position: relative;
    z-index: 2;
}

.mission-main-icon {
    font-size: 12rem;
    color: var(--accent-color);
    opacity: 0.8;
    animation: float 3s ease-in-out infinite;
}

.mission-values {
    margin-top: 2rem;
}

.mission-value-item {
    transition: all 0.3s ease;
}

.mission-value-item:hover {
    transform: translateX(10px);
}

.mission-value-icon {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.mission-value-item:hover .mission-value-icon {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

/* Quality Items */
.quality-item {
    transition: all 0.3s ease;
}

.quality-item:hover {
    transform: translateX(10px);
}

.quality-icon {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.quality-item:hover .quality-icon {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

/* Trust Items */
.trust-item {
    transition: all 0.3s ease;
}

.trust-item:hover {
    transform: translateY(-5px);
}

.trust-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.trust-item:hover .trust-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.trust-item h5 {
    color: var(--dark-color);
    margin-bottom: 1rem;
}

/* CTA Section */
.cta-section {
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%);
    position: relative;
    overflow: hidden;
}

.cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="cta-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23cta-grain)"/></svg>');
    opacity: 0.3;
}

.cta-buttons {
    position: relative;
    z-index: 2;
}

.cta-buttons .btn {
    border-radius: 25px;
    padding: 12px 30px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.cta-buttons .btn:hover {
    transform: translateY(-2px);
}

/* Responsive About Page */
@media (max-width: 768px) {
    .about-values {
        gap: 1.5rem;
    }
    
    .value-item i {
        font-size: 1.5rem;
    }
    
    .mission-main-icon {
        font-size: 8rem;
    }
    
    .commitment-card {
        margin-bottom: 2rem;
    }
    
    .trust-item {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .about-values {
        gap: 1rem;
    }
    
    .value-item i {
        font-size: 1.2rem;
    }
    
    .value-item span {
        font-size: 0.8rem;
    }
    
    .mission-main-icon {
        font-size: 6rem;
    }
    
    .story-stats .stat-item h3 {
        font-size: 2rem;
    }
    
    .commitment-icon,
    .trust-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .quality-icon,
    .mission-value-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

/* Presentation Section */
.presentation-section {
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.05), rgba(255, 140, 0, 0.05));
    position: relative;
    overflow: hidden;
}

.presentation-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="presentation-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(217,112,74,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(217,112,74,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(217,112,74,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(217,112,74,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(217,112,74,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23presentation-grain)"/></svg>');
    opacity: 0.3;
}

.presentation-content {
    position: relative;
    z-index: 2;
}

.presentation-highlight {
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.1), rgba(255, 140, 0, 0.1));
    border-radius: 15px;
    padding: 1.5rem;
    border: 1px solid rgba(217, 112, 74, 0.2);
    margin: 1.5rem 0;
    transition: all 0.3s ease;
}

.presentation-highlight:hover {
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.15), rgba(255, 140, 0, 0.15));
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(217, 112, 74, 0.2);
}

.highlight-content h4 {
    color: var(--accent-color);
    display: flex;
    align-items: center;
}

.highlight-content i {
    color: var(--accent-color);
}

.presentation-cta .btn {
    border-radius: 25px;
    padding: 12px 30px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.presentation-cta .btn:hover {
    transform: translateY(-2px);
}

.presentation-visual {
    position: relative;
    z-index: 2;
}

.presentation-card {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 20px;
    padding: 2rem;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.presentation-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15);
}

.presentation-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.05), rgba(255, 140, 0, 0.05));
    opacity: 0;
    transition: opacity 0.3s ease;
}

.presentation-card:hover::before {
    opacity: 1;
}

.protection-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--accent-color), #04BFBF);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    font-size: 2rem;
    color: white;
    animation: float 3s ease-in-out infinite;
    position: relative;
    z-index: 2;
}

.presentation-card .card-content h3 {
    color: var(--dark-color);
    margin-bottom: 1rem;
    text-align: center;
    position: relative;
    z-index: 2;
}

.presentation-card .security-level {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    position: relative;
    z-index: 2;
}

.presentation-card .level-bar {
    width: 100px;
    height: 6px;
    background: rgba(217, 112, 74, 0.2);
    border-radius: 3px;
    overflow: hidden;
}

.presentation-card .level-fill {
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, var(--accent-color), #04BFBF);
    border-radius: 3px;
    animation: fillBar 2s ease-in-out;
}

.presentation-card .security-level span {
    color: var(--dark-color);
    font-size: 0.9rem;
    font-weight: 500;
}

.presentation-card .card-footer {
    border-top: 1px solid rgba(217, 112, 74, 0.2);
    padding-top: 1rem;
    margin-top: 1rem;
    position: relative;
    z-index: 2;
}

.presentation-card .stats-row {
    display: flex;
    justify-content: space-around;
}

.presentation-card .stat {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--dark-color);
}

.presentation-card .stat i {
    color: var(--accent-color);
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
}

.presentation-card .stat span {
    font-size: 0.8rem;
    font-weight: 500;
    text-align: center;
}

/* Responsive Presentation Section */
@media (max-width: 768px) {
    .presentation-section {
        padding: 3rem 0;
    }
    
    .presentation-visual {
        margin-top: 3rem;
    }
    
    .presentation-card {
        padding: 1.5rem;
    }
    
    .protection-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .presentation-cta .btn {
        display: block;
        width: 100%;
        margin-bottom: 1rem;
    }
    
    .presentation-cta .btn:last-child {
        margin-bottom: 0;
    }
}

@media (max-width: 576px) {
    .presentation-highlight {
        padding: 1rem;
    }
    
    .highlight-content h4 {
        font-size: 1.1rem;
    }
    
    .presentation-card {
        padding: 1rem;
    }
    
    .protection-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .presentation-card .card-content h3 {
        font-size: 1.2rem;
    }
    
    .presentation-card .level-bar {
        width: 80px;
    }
    
    .presentation-card .stat span {
        font-size: 0.7rem;
    }
}

/* Services Page Specific Styles */
.services-hero-section {
    background: linear-gradient(135deg, #013440 0%, #04BFBF 100%) !important;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%) !important;
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

.services-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="services-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23services-grain)"/></svg>');
    opacity: 0.3;
    z-index: 1;
}

.services-hero-content {
    position: relative;
    z-index: 2;
}

.service-types {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.service-type-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: white;
    transition: all 0.3s ease;
}

.service-type-item i {
    font-size: 2rem;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
}

.service-type-item span {
    font-size: 0.9rem;
    font-weight: 500;
}

.service-type-item:hover {
    transform: translateY(-5px);
}

.service-type-item:hover i {
    transform: scale(1.2);
    color: #04BFBF;
}

/* Service Features */
.service-features {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

.feature-tag {
    background: #013440;
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.feature-tag:hover {
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgba(217, 112, 74, 0.3);
}

/* Process Steps */
.process-step {
    transition: all 0.3s ease;
}

.process-step:hover {
    transform: translateY(-5px);
}

.step-number {
    width: 40px;
    height: 40px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 1.2rem;
    margin: 0 auto 1rem;
    transition: all 0.3s ease;
}

.process-step:hover .step-number {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

.step-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.process-step:hover .step-icon {
    transform: scale(1.1);
    box-shadow: 0 8px 20px rgba(217, 112, 74, 0.4);
}

/* Materials Section */
.materials-visual {
    position: relative;
}

.materials-main-icon {
    font-size: 12rem;
    color: var(--accent-color);
    opacity: 0.8;
    animation: float 3s ease-in-out infinite;
}

.materials-specs {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.spec-item {
    text-align: center;
    transition: all 0.3s ease;
}

.spec-item:hover {
    transform: translateY(-5px);
}

.spec-value {
    font-size: 2rem;
    font-weight: 700;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

.spec-label {
    font-size: 0.9rem;
    color: var(--secondary-color);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.material-item {
    transition: all 0.3s ease;
}

.material-item:hover {
    transform: translateX(10px);
}

.material-icon {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.2rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.material-item:hover .material-icon {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

/* Coverage Cards */
.coverage-card {
    background: white;
    border-radius: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.coverage-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.coverage-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.coverage-card:hover .coverage-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.coverage-cities {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    margin-top: 1rem;
}

.city-tag {
    background: #013440;
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 15px;
    font-size: 0.8rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.city-tag:hover {
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgba(217, 112, 74, 0.3);
}

/* Responsive Services Page */
@media (max-width: 768px) {
    .service-types {
        gap: 1.5rem;
    }
    
    .service-type-item i {
        font-size: 1.5rem;
    }
    
    .materials-main-icon {
        font-size: 8rem;
    }
    
    .materials-specs {
        gap: 1rem;
    }
    
    .spec-value {
        font-size: 1.5rem;
    }
    
    .coverage-card {
        margin-bottom: 2rem;
    }
    
    .process-step {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .service-types {
        gap: 1rem;
    }
    
    .service-type-item i {
        font-size: 1.2rem;
    }
    
    .service-type-item span {
        font-size: 0.8rem;
    }
    
    .materials-main-icon {
        font-size: 6rem;
    }
    
    .materials-specs {
        gap: 0.5rem;
    }
    
    .spec-value {
        font-size: 1.2rem;
    }
    
    .spec-label {
        font-size: 0.8rem;
    }
    
    .step-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .step-number {
        width: 35px;
        height: 35px;
        font-size: 1rem;
    }
    
    .coverage-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .material-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

/* Window Protection Page Specific Styles */
.window-hero-section {
    background: linear-gradient(135deg, #013440 0%, #04BFBF 100%) !important;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%) !important;
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

.window-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="window-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23window-grain)"/></svg>');
    opacity: 0.3;
    z-index: 1;
}

.window-hero-content {
    position: relative;
    z-index: 2;
}

.window-types {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.window-type-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: white;
    transition: all 0.3s ease;
}

.window-type-item i {
    font-size: 2rem;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
}

.window-type-item span {
    font-size: 0.9rem;
    font-weight: 500;
}

.window-type-item:hover {
    transform: translateY(-5px);
}

.window-type-item:hover i {
    transform: scale(1.2);
    color: #04BFBF;
}

/* Benefit Cards */
.benefit-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    text-align: center;
}

.benefit-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.benefit-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.benefit-card:hover .benefit-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

/* Window Type Cards */
.window-type-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.window-type-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.window-type-header {
    text-align: center;
    margin-bottom: 1.5rem;
}

.window-type-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.window-type-card:hover .window-type-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.window-features {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.feature-item {
    display: flex;
    align-items: center;
    padding: 0.5rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 10px;
    transition: all 0.3s ease;
}

.feature-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.feature-item span {
    font-weight: 500;
    color: var(--secondary-color);
}

/* Installation Steps */
.installation-step {
    transition: all 0.3s ease;
}

.installation-step:hover {
    transform: translateY(-5px);
}

.installation-step .step-number {
    width: 40px;
    height: 40px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 1.2rem;
    margin: 0 auto 1rem;
    transition: all 0.3s ease;
}

.installation-step:hover .step-number {
    transform: scale(1.1);
    box-shadow: 0 5px 15px rgba(217, 112, 74, 0.4);
}

.installation-step .step-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.installation-step:hover .step-icon {
    transform: scale(1.1);
    box-shadow: 0 8px 20px rgba(217, 112, 74, 0.4);
}

/* Window Materials Visual */
.window-hero-section .materials-main-icon {
    font-size: 12rem;
    color: var(--accent-color);
    opacity: 0.8;
    animation: float 3s ease-in-out infinite;
}

/* Responsive Window Protection Page */
@media (max-width: 768px) {
    .window-types {
        gap: 1.5rem;
    }
    
    .window-type-item i {
        font-size: 1.5rem;
    }
    
    .window-hero-section .materials-main-icon {
        font-size: 8rem;
    }
    
    .benefit-card {
        margin-bottom: 2rem;
    }
    
    .window-type-card {
        margin-bottom: 2rem;
    }
    
    .installation-step {
        margin-bottom: 2rem;
    }
}

/* Custom Balcony Section Styles */
.custom-balcony-section {
    background: linear-gradient(135deg, rgba(4, 217, 217, 0.02), rgba(1, 52, 64, 0.02));
    position: relative;
}

.custom-balcony-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="balcony-custom-pattern" width="50" height="50" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(217,112,74,0.03)"/></pattern></defs><rect width="100" height="100" fill="url(%23balcony-custom-pattern)"/></svg>');
    opacity: 0.6;
    z-index: 1;
}

.custom-balcony-section .container {
    position: relative;
    z-index: 2;
}

/* Reasons List */
.reasons-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.reason-item {
    display: flex;
    align-items: flex-start;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.reason-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.reason-icon {
    width: 40px;
    height: 40px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
    color: white;
    font-size: 1rem;
    flex-shrink: 0;
}

.reason-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

/* Materials Card */
.materials-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.materials-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.materials-header {
    text-align: center;
    margin-bottom: 2rem;
}

.materials-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.materials-content {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.material-item {
    display: flex;
    align-items: flex-start;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.material-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.material-icon {
    width: 12px;
    height: 12px;
    background: var(--accent-color);
    border-radius: 50%;
    margin-right: 1rem;
    margin-top: 0.5rem;
    flex-shrink: 0;
}

.material-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

/* Installation Process Card */
.installation-process-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.installation-process-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.installation-header {
    margin-bottom: 2rem;
}

.installation-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
}

.installation-steps {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.step-item {
    display: flex;
    align-items: center;
    padding: 1.5rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.step-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.step-item .step-number {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1.5rem;
    color: white;
    font-size: 1.2rem;
    font-weight: bold;
    flex-shrink: 0;
}

.step-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

.installation-note {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Maintenance Card */
.maintenance-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.maintenance-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.maintenance-header {
    text-align: center;
    margin-bottom: 2rem;
}

.maintenance-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.maintenance-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.maintenance-item {
    display: flex;
    align-items: center;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.maintenance-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.maintenance-item span {
    font-weight: 500;
    color: var(--secondary-color);
}

.maintenance-note {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Conclusion Card */
.conclusion-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.conclusion-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.conclusion-header {
    text-align: center;
    margin-bottom: 2rem;
}

.conclusion-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.conclusion-cta {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Responsive Custom Balcony Section */
@media (max-width: 768px) {
    .custom-content-card {
        margin-bottom: 2rem;
    }
    
    .cities-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .benefits-card,
    .materials-card {
        margin-bottom: 2rem;
    }
    
    .reason-item {
        flex-direction: column;
        text-align: center;
    }
    
    .reason-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    .material-item {
        flex-direction: column;
        text-align: center;
    }
    
    .material-icon {
        margin-right: 0;
        margin-bottom: 0.5rem;
    }
    
    .step-item {
        flex-direction: column;
        text-align: center;
    }
    
    .step-item .step-number {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    .maintenance-card,
    .conclusion-card {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .content-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .coverage-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .benefits-icon,
    .materials-icon,
    .maintenance-icon,
    .conclusion-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .installation-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .reason-icon {
        width: 35px;
        height: 35px;
        font-size: 0.9rem;
    }
    
    .step-item .step-number {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

@media (max-width: 576px) {
    .window-types {
        gap: 1rem;
    }
    
    .window-type-item i {
        font-size: 1.2rem;
    }
    
    .window-type-item span {
        font-size: 0.8rem;
    }
    
    .window-hero-section .materials-main-icon {
        font-size: 6rem;
    }
    
    .benefit-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .window-type-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .installation-step .step-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .installation-step .step-number {
        width: 35px;
        height: 35px;
        font-size: 1rem;
    }
}

/* Interactive Specialists Section Styles */
.specialists-section {
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.05), rgba(140, 126, 109, 0.05));
    position: relative;
}

.specialist-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.specialist-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(217, 112, 74, 0.1), transparent);
    transition: left 0.5s ease;
}

.specialist-card:hover::before {
    left: 100%;
}

.specialist-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.specialist-card .card-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
    position: relative;
    z-index: 2;
}

.specialist-card:hover .card-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.card-highlight {
    margin-top: 1rem;
    padding: 0.5rem 1rem;
    background: #013440;
    border-radius: 20px;
    display: inline-block;
    position: relative;
    z-index: 2;
}

.highlight-text {
    color: white;
    font-weight: 600;
    font-size: 0.9rem;
}

/* Net Visual Styles */
.net-visual {
    position: relative;
}

.net-diagram {
    position: relative;
    width: 300px;
    height: 200px;
    margin: 0 auto;
}

.window-frame {
    width: 100%;
    height: 100%;
    border: 4px solid var(--secondary-color);
    border-radius: 10px;
    position: relative;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
}

.net-mesh {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    background: 
        linear-gradient(90deg, rgba(217, 112, 74, 0.3) 1px, transparent 1px),
        linear-gradient(0deg, rgba(217, 112, 74, 0.3) 1px, transparent 1px);
    background-size: 20px 20px;
    border-radius: 5px;
    animation: mesh-pulse 2s ease-in-out infinite;
}

@keyframes mesh-pulse {
    0%, 100% { opacity: 0.7; }
    50% { opacity: 1; }
}

.net-anchor {
    position: absolute;
    width: 12px;
    height: 12px;
    background: var(--accent-color);
    border-radius: 50%;
    border: 2px solid white;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.anchor-1 { top: -6px; left: 20px; }
.anchor-2 { top: -6px; right: 20px; }
.anchor-3 { bottom: -6px; left: 20px; }
.anchor-4 { bottom: -6px; right: 20px; }

.net-specs {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.net-specs .spec-item {
    text-align: center;
    transition: all 0.3s ease;
}

.net-specs .spec-item:hover {
    transform: translateY(-5px);
}

.net-specs .spec-value {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

.net-specs .spec-label {
    font-size: 0.8rem;
    color: var(--secondary-color);
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Features Grid */
.features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-top: 1rem;
}

.features-grid .feature-item {
    display: flex;
    align-items: center;
    padding: 0.75rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 10px;
    transition: all 0.3s ease;
}

.features-grid .feature-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.features-grid .feature-item span {
    font-weight: 500;
    color: var(--secondary-color);
}

/* Reason Cards */
.reason-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.reason-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.reason-icon {
    width: 70px;
    height: 70px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.8rem;
    transition: all 0.3s ease;
}

.reason-card:hover .reason-icon {
    transform: scale(1.1);
    box-shadow: 0 8px 20px rgba(217, 112, 74, 0.4);
}

/* Window Detail Cards */
.window-detail-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.window-detail-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.window-detail-header {
    text-align: center;
    margin-bottom: 1.5rem;
}

.window-detail-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.window-detail-card:hover .window-detail-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.advantages-list {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 1rem;
}

.advantages-list h5 {
    color: var(--accent-color);
    margin-bottom: 1rem;
}

.advantages-list ul li {
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(4, 217, 217, 0.1);
}

.advantages-list ul li:last-child {
    border-bottom: none;
}

.commercial-benefit {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    height: 100%;
}

.commercial-benefit h5 {
    color: var(--accent-color);
    margin-bottom: 1rem;
}

.commercial-benefit ul li {
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(4, 217, 217, 0.1);
}

.commercial-benefit ul li:last-child {
    border-bottom: none;
}

/* Responsive Interactive Sections */
@media (max-width: 768px) {
    .specialist-card {
        margin-bottom: 2rem;
    }
    
    .net-diagram {
        width: 250px;
        height: 150px;
    }
    
    .net-specs {
        gap: 1rem;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .reason-card {
        margin-bottom: 2rem;
    }
    
    .window-detail-card {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .specialist-card .card-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .net-diagram {
        width: 200px;
        height: 120px;
    }
    
    .net-specs .spec-value {
        font-size: 1rem;
    }
    
    .net-specs .spec-label {
        font-size: 0.7rem;
    }
    
    .reason-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .window-detail-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .advantages-list {
        padding: 1rem;
    }
    
    .commercial-benefit {
        padding: 1rem;
    }
}

/* FAQ Section Styles */
.faq-section {
    background: linear-gradient(135deg, rgba(217, 112, 74, 0.03), rgba(140, 126, 109, 0.03));
    position: relative;
}

.faq-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="faq-pattern" width="50" height="50" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(217,112,74,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23faq-pattern)"/></svg>');
    opacity: 0.5;
    z-index: 1;
}

.faq-section .container {
    position: relative;
    z-index: 2;
}

.faq-section .accordion {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.faq-section .accordion-item {
    border: none;
    border-bottom: 1px solid rgba(4, 217, 217, 0.1);
    background: white;
    transition: all 0.3s ease;
}

.faq-section .accordion-item:last-child {
    border-bottom: none;
}

.faq-section .accordion-item:hover {
    background: rgba(217, 112, 74, 0.02);
}

.faq-section .accordion-button {
    background: white;
    border: none;
    padding: 1.5rem 2rem;
    font-weight: 600;
    color: var(--secondary-color);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.faq-section .accordion-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(217, 112, 74, 0.1), transparent);
    transition: left 0.5s ease;
}

.faq-section .accordion-button:hover::before {
    left: 100%;
}

.faq-section .accordion-button:not(.collapsed) {
    background: #013440;
    color: white;
    box-shadow: none;
}

.faq-section .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.faq-section .accordion-button:focus {
    box-shadow: 0 0 0 0.25rem rgba(217, 112, 74, 0.25);
    border-color: transparent;
}

.faq-section .accordion-button i {
    font-size: 1.2rem;
    transition: all 0.3s ease;
}

.faq-section .accordion-button:not(.collapsed) i {
    color: white;
}

.faq-section .accordion-body {
    padding: 1.5rem 2rem;
    background: white;
    border-top: 1px solid rgba(217, 112, 74, 0.1);
}

.faq-section .accordion-body p {
    line-height: 1.6;
    margin-bottom: 1rem;
}

.faq-section .accordion-body strong {
    color: var(--accent-color);
    font-weight: 600;
}

.faq-section .accordion-body p:last-child {
    margin-bottom: 0;
}

/* FAQ Animation */
.faq-section .accordion-collapse {
    transition: all 0.3s ease;
}

.faq-section .accordion-collapse.show {
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* FAQ Responsive */
@media (max-width: 768px) {
    .faq-section .accordion-button {
        padding: 1rem 1.5rem;
        font-size: 0.9rem;
    }
    
    .faq-section .accordion-body {
        padding: 1rem 1.5rem;
    }
    
    .faq-section .accordion-button i {
        font-size: 1rem;
    }
}

@media (max-width: 576px) {
    .faq-section .accordion-button {
        padding: 0.75rem 1rem;
        font-size: 0.85rem;
    }
    
    .faq-section .accordion-body {
        padding: 0.75rem 1rem;
    }
    
    .faq-section .accordion-button i {
        font-size: 0.9rem;
    }
    
    .faq-section .accordion-body p {
        font-size: 0.9rem;
    }
}

/* Animal Protection Page Specific Styles */
.animal-hero-section {
    background: linear-gradient(135deg, #013440 0%, #04BFBF 100%) !important;
    background: linear-gradient(135deg, var(--primary-color) 0%, var(--secondary-color) 100%) !important;
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}

.animal-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="animal-grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="10" cy="60" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="90" cy="40" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23animal-grain)"/></svg>');
    opacity: 0.3;
    z-index: 1;
}

.animal-hero-content {
    position: relative;
    z-index: 2;
}

.animal-types {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
}

.animal-type-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: white;
    transition: all 0.3s ease;
}

.animal-type-item i {
    font-size: 2rem;
    color: var(--accent-color);
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
}

.animal-type-item span {
    font-size: 0.9rem;
    font-weight: 500;
}

.animal-type-item:hover {
    transform: translateY(-5px);
}

.animal-type-item:hover i {
    transform: scale(1.2);
    color: #04BFBF;
}

/* Animal Type Cards */
.animal-type-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.animal-type-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.animal-type-header {
    text-align: center;
    margin-bottom: 1.5rem;
}

.animal-type-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
    transition: all 0.3s ease;
}

.animal-type-card:hover .animal-type-icon {
    transform: scale(1.1);
    box-shadow: 0 10px 25px rgba(217, 112, 74, 0.4);
}

.animal-type-content ul li {
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(4, 217, 217, 0.1);
}

.animal-type-content ul li:last-child {
    border-bottom: none;
}

/* Responsive Animal Protection Page */
@media (max-width: 768px) {
    .animal-types {
        gap: 1.5rem;
    }
    
    .animal-type-item i {
        font-size: 1.5rem;
    }
    
    .animal-type-card {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .animal-types {
        gap: 1rem;
    }
    
    .animal-type-item i {
        font-size: 1.2rem;
    }
    
    .animal-type-item span {
        font-size: 0.8rem;
    }
    
    .animal-type-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
}

/* Custom Animal Section Styles */
.custom-animal-section {
    background: linear-gradient(135deg, rgba(4, 217, 217, 0.02), rgba(1, 52, 64, 0.02));
    position: relative;
}

.custom-animal-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="custom-pattern" width="60" height="60" patternUnits="userSpaceOnUse"><circle cx="30" cy="30" r="1" fill="rgba(217,112,74,0.03)"/></pattern></defs><rect width="100" height="100" fill="url(%23custom-pattern)"/></svg>');
    opacity: 0.6;
    z-index: 1;
}

.custom-animal-section .container {
    position: relative;
    z-index: 2;
}

/* Custom Content Cards */
.custom-content-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.custom-content-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.content-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    color: white;
    font-size: 1.5rem;
    transition: all 0.3s ease;
}

.custom-content-card:hover .content-icon {
    transform: scale(1.1);
    box-shadow: 0 8px 20px rgba(217, 112, 74, 0.4);
}

/* Benefits Grid */
.benefits-grid {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.benefit-item {
    display: flex;
    align-items: center;
    padding: 0.75rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 10px;
    transition: all 0.3s ease;
}

.benefit-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.benefit-item span {
    font-weight: 500;
    color: var(--secondary-color);
}

/* Installation Locations */
.installation-locations {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.location-item {
    display: flex;
    align-items: center;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.location-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.location-icon {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
    color: white;
    font-size: 1.2rem;
    flex-shrink: 0;
}

.location-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

/* Coverage Section */
.coverage-section {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.coverage-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
}

.cities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem;
}

.city-group h5 {
    color: var(--accent-color);
    margin-bottom: 1rem;
}

.city-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.city-tag {
    background: #013440;
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.city-tag:hover {
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgba(217, 112, 74, 0.3);
}

.coverage-note {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Advantages Card */
.advantages-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.advantages-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.advantages-header {
    text-align: center;
    margin-bottom: 2rem;
}

.advantages-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.advantages-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.advantage-item {
    display: flex;
    align-items: flex-start;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.advantage-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.advantage-icon {
    width: 40px;
    height: 40px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
    color: white;
    font-size: 1rem;
    flex-shrink: 0;
}

.advantage-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

/* Why Choose Card */
.why-choose-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.why-choose-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.why-choose-header {
    text-align: center;
    margin-bottom: 2rem;
}

.why-choose-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.why-choose-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.choose-item {
    display: flex;
    align-items: center;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.choose-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.choose-item span {
    font-weight: 500;
    color: var(--secondary-color);
}

/* Conclusion Card */
.conclusion-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.conclusion-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.conclusion-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    color: white;
    font-size: 2rem;
}

.conclusion-cta {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Responsive Custom Section */
@media (max-width: 768px) {
    .custom-content-card {
        margin-bottom: 2rem;
    }
    
    .cities-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .advantages-card,
    .why-choose-card {
        margin-bottom: 2rem;
    }
    
    .location-item {
        flex-direction: column;
        text-align: center;
    }
    
    .location-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }
}

@media (max-width: 576px) {
    .content-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .coverage-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .conclusion-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .advantages-icon,
    .why-choose-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .advantage-icon {
        width: 35px;
        height: 35px;
        font-size: 0.9rem;
    }
    
    .location-icon {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}

/* Balcony Protection Page Styles */
.balcony-hero-section {
    background: linear-gradient(135deg, rgba(4, 217, 217, 0.9), rgba(1, 52, 64, 0.8)), url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="balcony-pattern" width="40" height="40" patternUnits="userSpaceOnUse"><circle cx="20" cy="20" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23balcony-pattern)"/></svg>');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
}

.balcony-hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(4, 217, 217, 0.8), rgba(1, 52, 64, 0.6));
    z-index: 1;
}

.balcony-hero-section .container {
    position: relative;
    z-index: 2;
}

.balcony-hero-content h1 {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.balcony-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    margin: 2rem 0;
}

.benefit-item {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.1);
    padding: 0.75rem 1.5rem;
    border-radius: 25px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.3s ease;
}

.benefit-item:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: translateY(-2px);
}

.balcony-visual {
    position: relative;
}

.balcony-icon {
    width: 120px;
    height: 120px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2rem;
    font-size: 3rem;
    color: white;
    backdrop-filter: blur(10px);
    border: 2px solid rgba(255, 255, 255, 0.2);
    animation: float 3s ease-in-out infinite;
}

@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}

.balcony-stats {
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
}

.stat-item {
    text-align: center;
    background: rgba(255, 255, 255, 0.1);
    padding: 1.5rem 1rem;
    border-radius: 15px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    min-width: 100px;
    transition: all 0.3s ease;
}

.stat-item:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: translateY(-5px);
}

.stat-number {
    font-size: 1.5rem;
    font-weight: bold;
    color: white;
    margin-bottom: 0.5rem;
}

.stat-label {
    font-size: 0.9rem;
    color: rgba(255, 255, 255, 0.8);
}

/* Balcony Type Cards */
.balcony-type-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.balcony-type-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.balcony-type-header {
    text-align: center;
    margin-bottom: 1.5rem;
}

.balcony-type-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
}

.balcony-type-content ul li {
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.balcony-type-content ul li:last-child {
    border-bottom: none;
}

/* Installation Steps */
.installation-step {
    padding: 2rem 1rem;
    background: white;
    border-radius: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.installation-step:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.step-number {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
    font-weight: bold;
}

.step-icon {
    width: 80px;
    height: 80px;
    background: rgba(4, 217, 217, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: var(--accent-color);
    font-size: 2rem;
}

/* CTA Section */
.cta-section {
    background: #013440;
    position: relative;
}

.cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="cta-pattern" width="30" height="30" patternUnits="userSpaceOnUse"><circle cx="15" cy="15" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23cta-pattern)"/></svg>');
    opacity: 0.6;
    z-index: 1;
}

.cta-section .container {
    position: relative;
    z-index: 2;
}

/* Responsive Balcony Styles */
@media (max-width: 768px) {
    .balcony-benefits {
        flex-direction: column;
        align-items: center;
    }
    
    .balcony-stats {
        gap: 1rem;
    }
    
    .stat-item {
        min-width: 80px;
        padding: 1rem 0.5rem;
    }
    
    .balcony-icon {
        width: 100px;
        height: 100px;
        font-size: 2.5rem;
    }
    
    .balcony-type-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .step-number {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .step-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
}

@media (max-width: 576px) {
    .balcony-hero-section {
        background-attachment: scroll;
    }
    
    .balcony-stats {
        flex-direction: column;
        align-items: center;
    }
    
    .stat-item {
        width: 100%;
        max-width: 200px;
    }
    
    .balcony-icon {
        width: 80px;
        height: 80px;
        font-size: 2rem;
    }
    
    .balcony-type-card {
        margin-bottom: 2rem;
    }
    
    .installation-step {
        margin-bottom: 2rem;
    }
}

/* Custom Balcony Section Styles */
.custom-balcony-section {
    background: linear-gradient(135deg, rgba(4, 217, 217, 0.02), rgba(1, 52, 64, 0.02));
    position: relative;
}

.custom-balcony-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="balcony-custom-pattern" width="50" height="50" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(217,112,74,0.03)"/></pattern></defs><rect width="100" height="100" fill="url(%23balcony-custom-pattern)"/></svg>');
    opacity: 0.6;
    z-index: 1;
}

.custom-balcony-section .container {
    position: relative;
    z-index: 2;
}

/* Reasons List */
.reasons-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.reason-item {
    display: flex;
    align-items: flex-start;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.reason-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.reason-icon {
    width: 40px;
    height: 40px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1rem;
    color: white;
    font-size: 1rem;
    flex-shrink: 0;
}

.reason-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

/* Materials Card */
.materials-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.materials-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.materials-header {
    text-align: center;
    margin-bottom: 2rem;
}

.materials-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.materials-content {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.material-item {
    display: flex;
    align-items: flex-start;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.material-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.material-icon {
    width: 12px;
    height: 12px;
    background: var(--accent-color);
    border-radius: 50%;
    margin-right: 1rem;
    margin-top: 0.5rem;
    flex-shrink: 0;
}

.material-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

/* Installation Process Card */
.installation-process-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

.installation-process-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.installation-header {
    margin-bottom: 2rem;
}

.installation-icon {
    width: 80px;
    height: 80px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
}

.installation-steps {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.step-item {
    display: flex;
    align-items: center;
    padding: 1.5rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.step-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.step-item .step-number {
    width: 50px;
    height: 50px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 1.5rem;
    color: white;
    font-size: 1.2rem;
    font-weight: bold;
    flex-shrink: 0;
}

.step-content h5 {
    color: var(--accent-color);
    margin-bottom: 0.5rem;
}

.installation-note {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Maintenance Card */
.maintenance-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.maintenance-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.maintenance-header {
    text-align: center;
    margin-bottom: 2rem;
}

.maintenance-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.maintenance-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.maintenance-item {
    display: flex;
    align-items: center;
    padding: 1rem;
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    transition: all 0.3s ease;
}

.maintenance-item:hover {
    background: rgba(4, 217, 217, 0.1);
    transform: translateX(5px);
}

.maintenance-item span {
    font-weight: 500;
    color: var(--secondary-color);
}

.maintenance-note {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Conclusion Card */
.conclusion-card {
    background: white;
    border-radius: 20px;
    padding: 2rem;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
    height: 100%;
}

.conclusion-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.conclusion-header {
    text-align: center;
    margin-bottom: 2rem;
}

.conclusion-icon {
    width: 60px;
    height: 60px;
    background: #013440;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 1.5rem;
}

.conclusion-cta {
    background: rgba(217, 112, 74, 0.05);
    border-radius: 15px;
    padding: 1.5rem;
    margin-top: 2rem;
}

/* Responsive Custom Balcony Section */
@media (max-width: 768px) {
    .custom-content-card {
        margin-bottom: 2rem;
    }
    
    .cities-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }
    
    .benefits-card,
    .materials-card {
        margin-bottom: 2rem;
    }
    
    .reason-item {
        flex-direction: column;
        text-align: center;
    }
    
    .reason-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    .material-item {
        flex-direction: column;
        text-align: center;
    }
    
    .material-icon {
        margin-right: 0;
        margin-bottom: 0.5rem;
    }
    
    .step-item {
        flex-direction: column;
        text-align: center;
    }
    
    .step-item .step-number {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    .maintenance-card,
    .conclusion-card {
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .content-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .coverage-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .benefits-icon,
    .materials-icon,
    .maintenance-icon,
    .conclusion-icon {
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
    
    .installation-icon {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }
    
    .reason-icon {
        width: 35px;
        height: 35px;
        font-size: 0.9rem;
    }
    
    .step-item .step-number {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }
}
/ *   = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
       S T A I R S   P R O T E C T I O N   P A G E   S T Y L E S 
 
       = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =   * / 
 
 
 
 / *   S t a i r s   H e r o   S e c t i o n   * / 
 
 . s t a i r s - h e r o - s e c t i o n   { 
 
         b a c k g r o u n d :   l i n e a r - g r a d i e n t ( 1 3 5 d e g ,   # 2 c 3 e 5 0   0 % ,   # 3 4 4 9 5 e   5 0 % ,   # 2 c 3 e 5 0   1 0 0 % ) ; 
 
         p o s i t i o n :   r e l a t i v e ; 
 
         o v e r f l o w :   h i d d e n ; 
 
         p a d d i n g - t o p :   1 0 0 p x ; 
 
         m i n - h e i g h t :   1 0 0 v h ; 
 
         d i s p l a y :   f l e x ; 
 
         a l i g n - i t e m s :   c e n t e r ; 
 
 } 
 
 
 
 . s t a i r s - h e r o - s e c t i o n : : b e f o r e   { 
 
         c o n t e n t :   ' ' ; 
 
         p o s i t i o n :   a b s o l u t e ; 
 
         t o p :   0 ; 
 
         l e f t :   0 ; 
 
         r i g h t :   0 ; 
 
         b o t t o m :   0 ; 
 
         b a c k g r o u n d :   u r l ( ' d a t a : i m a g e / s v g + x m l , < s v g   x m l n s = " h t t p : / / w w w . w 3 . o r g / 2 0 0 0 / s v g "   v i e w B o x = " 0   0   1 0 0   1 0 0 " > < d e f s > < p a t t e r n   i d = " s t a i r s - p a t t e r n "   x = " 0 "   y = " 0 "   w i d t h = " 2 0 "   h e i g h t = " 2 0 "   p a t t e r n U n i t s = " u s e r S p a c e O n U s e " > < p a t h   d = " M 0 , 0   L 2 0 , 0   L 2 0 , 1 0   L 0 , 1 0   Z "   f i l l = " r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 0 5 ) " / > < / p a t t e r n > < / d e f s > < r e c t   w i d t h = " 1 0 0 "   h e i g h t = " 1 0 0 "   f i l l = " u r l ( % 2 3 s t a i r s - p a t t e r n ) " / > < / s v g > ' )   r e p e a t ; 
 
         o p a c i t y :   0 . 3 ; 
 
 } 
 
 
 
 . s t a i r s - h e r o - c o n t e n t   h 1   { 
 
         t e x t - s h a d o w :   2 p x   2 p x   4 p x   r g b a ( 0 , 0 , 0 , 0 . 3 ) ; 
 
 } 
 
 
 
 . s t a i r s - b e n e f i t s   { 
 
         d i s p l a y :   f l e x ; 
 
         f l e x - w r a p :   w r a p ; 
 
         g a p :   1 . 5 r e m ; 
 
         m a r g i n :   2 r e m   0 ; 
 
 } 
 
 
 
 . s t a i r s - b e n e f i t s   . b e n e f i t - i t e m   { 
 
         d i s p l a y :   f l e x ; 
 
         a l i g n - i t e m s :   c e n t e r ; 
 
         b a c k g r o u n d :   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 1 ) ; 
 
         p a d d i n g :   0 . 7 5 r e m   1 . 5 r e m ; 
 
         b o r d e r - r a d i u s :   2 5 p x ; 
 
         b a c k d r o p - f i l t e r :   b l u r ( 1 0 p x ) ; 
 
         b o r d e r :   1 p x   s o l i d   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 2 ) ; 
 
         t r a n s i t i o n :   a l l   0 . 3 s   e a s e ; 
 
 } 
 
 
 
 . s t a i r s - b e n e f i t s   . b e n e f i t - i t e m : h o v e r   { 
 
         b a c k g r o u n d :   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 2 ) ; 
 
         t r a n s f o r m :   t r a n s l a t e Y ( - 2 p x ) ; 
 
 } 
 
 
 
 . s t a i r s - v i s u a l   { 
 
         p o s i t i o n :   r e l a t i v e ; 
 
 } 
 
 
 
 . s t a i r s - i c o n   { 
 
         f o n t - s i z e :   8 r e m ; 
 
         c o l o r :   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 1 ) ; 
 
         m a r g i n - b o t t o m :   2 r e m ; 
 
         a n i m a t i o n :   f l o a t   3 s   e a s e - i n - o u t   i n f i n i t e ; 
 
 } 
 
 
 
 . s t a i r s - s t a t s   { 
 
         d i s p l a y :   f l e x ; 
 
         j u s t i f y - c o n t e n t :   c e n t e r ; 
 
         g a p :   2 r e m ; 
 
         f l e x - w r a p :   w r a p ; 
 
 } 
 
 
 
 . s t a t - i t e m   { 
 
         t e x t - a l i g n :   c e n t e r ; 
 
         b a c k g r o u n d :   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 1 ) ; 
 
         p a d d i n g :   1 . 5 r e m ; 
 
         b o r d e r - r a d i u s :   1 5 p x ; 
 
         b a c k d r o p - f i l t e r :   b l u r ( 1 0 p x ) ; 
 
         b o r d e r :   1 p x   s o l i d   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 2 ) ; 
 
         m i n - w i d t h :   1 2 0 p x ; 
 
 } 
 
 
 
 . s t a t - n u m b e r   { 
 
         f o n t - s i z e :   2 r e m ; 
 
         f o n t - w e i g h t :   7 0 0 ; 
 
         c o l o r :   # f f c 1 0 7 ; 
 
         d i s p l a y :   b l o c k ; 
 
         m a r g i n - b o t t o m :   0 . 5 r e m ; 
 
 } 
 
 
 
 . s t a t - l a b e l   { 
 
         c o l o r :   r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 8 ) ; 
 
         f o n t - s i z e :   0 . 9 r e m ; 
 
         f o n t - w e i g h t :   5 0 0 ; 
 
 } 
 
 
 
 / *   S t a i r s   T y p e   C a r d s   * / 
 
 . s t a i r s - t y p e - c a r d   { 
 
         b a c k g r o u n d :   w h i t e ; 
 
         b o r d e r - r a d i u s :   2 0 p x ; 
 
         p a d d i n g :   2 r e m ; 
 
         b o x - s h a d o w :   0   1 0 p x   3 0 p x   r g b a ( 0 , 0 , 0 , 0 . 1 ) ; 
 
         t r a n s i t i o n :   a l l   0 . 3 s   e a s e ; 
 
         h e i g h t :   1 0 0 % ; 
 
         b o r d e r :   1 p x   s o l i d   r g b a ( 0 , 0 , 0 , 0 . 0 5 ) ; 
 
 } 
 
 
 
 . s t a i r s - t y p e - c a r d : h o v e r   { 
 
         t r a n s f o r m :   t r a n s l a t e Y ( - 5 p x ) ; 
 
         b o x - s h a d o w :   0   2 0 p x   4 0 p x   r g b a ( 0 , 0 , 0 , 0 . 1 5 ) ; 
 
 } 
 
 
 
 . s t a i r s - t y p e - h e a d e r   { 
 
         d i s p l a y :   f l e x ; 
 
         a l i g n - i t e m s :   c e n t e r ; 
 
         m a r g i n - b o t t o m :   1 . 5 r e m ; 
 
 } 
 
 
 
 . s t a i r s - t y p e - i c o n   { 
 
         w i d t h :   6 0 p x ; 
 
         h e i g h t :   6 0 p x ; 
 
         b a c k g r o u n d :   l i n e a r - g r a d i e n t ( 1 3 5 d e g ,   # D 9 7 0 4 A ,   # f f 6 b 3 5 ) ; 
 
         b o r d e r - r a d i u s :   1 5 p x ; 
 
         d i s p l a y :   f l e x ; 
 
         a l i g n - i t e m s :   c e n t e r ; 
 
         j u s t i f y - c o n t e n t :   c e n t e r ; 
 
         m a r g i n - r i g h t :   1 r e m ; 
 
         c o l o r :   w h i t e ; 
 
         f o n t - s i z e :   1 . 5 r e m ; 
 
 } 
 
 
 
 . s t a i r s - t y p e - c o n t e n t   u l   l i   { 
 
         p a d d i n g :   0 . 5 r e m   0 ; 
 
         b o r d e r - b o t t o m :   1 p x   s o l i d   r g b a ( 0 , 0 , 0 , 0 . 0 5 ) ; 
 
 } 
 
 
 
 . s t a i r s - t y p e - c o n t e n t   u l   l i : l a s t - c h i l d   { 
 
         b o r d e r - b o t t o m :   n o n e ; 
 
 } 
 
 
 
 / *   I n s t a l l a t i o n   S t e p s   * / 
 
 . i n s t a l l a t i o n - s t e p   { 
 
         b a c k g r o u n d :   w h i t e ; 
 
         p a d d i n g :   2 r e m   1 . 5 r e m ; 
 
         b o r d e r - r a d i u s :   2 0 p x ; 
 
         b o x - s h a d o w :   0   1 0 p x   3 0 p x   r g b a ( 0 , 0 , 0 , 0 . 1 ) ; 
 
         t r a n s i t i o n :   a l l   0 . 3 s   e a s e ; 
 
         h e i g h t :   1 0 0 % ; 
 
         b o r d e r :   1 p x   s o l i d   r g b a ( 0 , 0 , 0 , 0 . 0 5 ) ; 
 
 } 
 
 
 
 . i n s t a l l a t i o n - s t e p : h o v e r   { 
 
         t r a n s f o r m :   t r a n s l a t e Y ( - 5 p x ) ; 
 
         b o x - s h a d o w :   0   2 0 p x   4 0 p x   r g b a ( 0 , 0 , 0 , 0 . 1 5 ) ; 
 
 } 
 
 
 
 . i n s t a l l a t i o n - s t e p   . s t e p - n u m b e r   { 
 
         w i d t h :   5 0 p x ; 
 
         h e i g h t :   5 0 p x ; 
 
         b a c k g r o u n d :   l i n e a r - g r a d i e n t ( 1 3 5 d e g ,   # D 9 7 0 4 A ,   # f f 6 b 3 5 ) ; 
 
         c o l o r :   w h i t e ; 
 
         b o r d e r - r a d i u s :   5 0 % ; 
 
         d i s p l a y :   f l e x ; 
 
         a l i g n - i t e m s :   c e n t e r ; 
 
         j u s t i f y - c o n t e n t :   c e n t e r ; 
 
         f o n t - w e i g h t :   7 0 0 ; 
 
         f o n t - s i z e :   1 . 2 r e m ; 
 
         m a r g i n :   0   a u t o   1 r e m ; 
 
 } 
 
 
 
 . i n s t a l l a t i o n - s t e p   . s t e p - i c o n   { 
 
         w i d t h :   6 0 p x ; 
 
         h e i g h t :   6 0 p x ; 
 
         b a c k g r o u n d :   r g b a ( 2 1 7 ,   1 1 2 ,   7 4 ,   0 . 1 ) ; 
 
         b o r d e r - r a d i u s :   1 5 p x ; 
 
         d i s p l a y :   f l e x ; 
 
         a l i g n - i t e m s :   c e n t e r ; 
 
         j u s t i f y - c o n t e n t :   c e n t e r ; 
 
         m a r g i n :   0   a u t o   1 r e m ; 
 
         c o l o r :   # D 9 7 0 4 A ; 
 
         f o n t - s i z e :   1 . 5 r e m ; 
 
 } 
 
 
 
 / *   C T A   S e c t i o n   * / 
 
 . c t a - s e c t i o n   { 
 
         b a c k g r o u n d :   l i n e a r - g r a d i e n t ( 1 3 5 d e g ,   # 2 c 3 e 5 0   0 % ,   # 3 4 4 9 5 e   5 0 % ,   # 2 c 3 e 5 0   1 0 0 % ) ; 
 
         p o s i t i o n :   r e l a t i v e ; 
 
         o v e r f l o w :   h i d d e n ; 
 
 } 
 
 
 
 . c t a - s e c t i o n : : b e f o r e   { 
 
         c o n t e n t :   ' ' ; 
 
         p o s i t i o n :   a b s o l u t e ; 
 
         t o p :   0 ; 
 
         l e f t :   0 ; 
 
         r i g h t :   0 ; 
 
         b o t t o m :   0 ; 
 
         b a c k g r o u n d :   u r l ( ' d a t a : i m a g e / s v g + x m l , < s v g   x m l n s = " h t t p : / / w w w . w 3 . o r g / 2 0 0 0 / s v g "   v i e w B o x = " 0   0   1 0 0   1 0 0 " > < d e f s > < p a t t e r n   i d = " c t a - p a t t e r n "   x = " 0 "   y = " 0 "   w i d t h = " 2 0 "   h e i g h t = " 2 0 "   p a t t e r n U n i t s = " u s e r S p a c e O n U s e " > < p a t h   d = " M 0 , 0   L 2 0 , 0   L 2 0 , 1 0   L 0 , 1 0   Z "   f i l l = " r g b a ( 2 5 5 , 2 5 5 , 2 5 5 , 0 . 0 5 ) " / > < / p a t t e r n > < / d e f s > < r e c t   w i d t h = " 1 0 0 "   h e i g h t = " 1 0 0 "   f i l l = " u r l ( % 2 3 c t a - p a t t e r n ) " / > < / s v g > ' )   r e p e a t ; 
 
         o p a c i t y :   0 . 3 ; 
 
 } 
 
 
 
 . c t a - s e c t i o n   . c o n t a i n e r   { 
 
         p o s i t i o n :   r e l a t i v e ; 
 
         z - i n d e x :   2 ; 
 
 } 
 
 
 
 . c t a - b u t t o n s   { 
 
         d i s p l a y :   f l e x ; 
 
         j u s t i f y - c o n t e n t :   c e n t e r ; 
 
         g a p :   1 r e m ; 
 
         f l e x - w r a p :   w r a p ; 
 
 } 
 
 
 
 / *   R e s p o n s i v e   a d j u s t m e n t s   f o r   s t a i r s   p a g e   * / 
 
 @ m e d i a   ( m a x - w i d t h :   9 9 1 p x )   { 
 
         . s t a i r s - h e r o - s e c t i o n   { 
 
                 p a d d i n g - t o p :   8 0 p x ; 
 
                 m i n - h e i g h t :   8 0 v h ; 
 
         } 
 
         
 
         . s t a i r s - h e r o - c o n t e n t   h 1   { 
 
                 f o n t - s i z e :   2 . 5 r e m ; 
 
         } 
 
         
 
         . s t a i r s - b e n e f i t s   { 
 
                 j u s t i f y - c o n t e n t :   c e n t e r ; 
 
                 g a p :   1 r e m ; 
 
         } 
 
         
 
         . s t a i r s - b e n e f i t s   . b e n e f i t - i t e m   { 
 
                 p a d d i n g :   0 . 5 r e m   1 r e m ; 
 
                 f o n t - s i z e :   0 . 9 r e m ; 
 
         } 
 
         
 
         . s t a i r s - i c o n   { 
 
                 f o n t - s i z e :   6 r e m ; 
 
         } 
 
         
 
         . s t a i r s - s t a t s   { 
 
                 g a p :   1 r e m ; 
 
         } 
 
         
 
         . s t a t - i t e m   { 
 
                 p a d d i n g :   1 r e m ; 
 
                 m i n - w i d t h :   1 0 0 p x ; 
 
         } 
 
         
 
         . s t a t - n u m b e r   { 
 
                 f o n t - s i z e :   1 . 5 r e m ; 
 
         } 
 
         
 
         . s t a i r s - t y p e - c a r d , 
 
         . i n s t a l l a t i o n - s t e p   { 
 
                 m a r g i n - b o t t o m :   2 r e m ; 
 
         } 
 
         
 
         . s t a i r s - t y p e - h e a d e r   { 
 
                 f l e x - d i r e c t i o n :   c o l u m n ; 
 
                 t e x t - a l i g n :   c e n t e r ; 
 
         } 
 
         
 
         . s t a i r s - t y p e - i c o n   { 
 
                 m a r g i n - r i g h t :   0 ; 
 
                 m a r g i n - b o t t o m :   1 r e m ; 
 
         } 
 
         
 
         . c t a - b u t t o n s   { 
 
                 f l e x - d i r e c t i o n :   c o l u m n ; 
 
                 a l i g n - i t e m s :   c e n t e r ; 
 
         } 
 
         
 
         . c t a - b u t t o n s   . b t n   { 
 
                 w i d t h :   1 0 0 % ; 
 
                 m a x - w i d t h :   3 0 0 p x ; 
 
         } 
 
 } 
 
 
 
 @ m e d i a   ( m a x - w i d t h :   5 7 6 p x )   { 
 
         . s t a i r s - h e r o - c o n t e n t   h 1   { 
 
                 f o n t - s i z e :   2 r e m ; 
 
         } 
 
         
 
         . s t a i r s - b e n e f i t s   . b e n e f i t - i t e m   { 
 
                 f o n t - s i z e :   0 . 8 r e m ; 
 
                 p a d d i n g :   0 . 4 r e m   0 . 8 r e m ; 
 
         } 
 
         
 
         . s t a i r s - i c o n   { 
 
                 f o n t - s i z e :   4 r e m ; 
 
         } 
 
         
 
         . s t a i r s - s t a t s   { 
 
                 f l e x - d i r e c t i o n :   c o l u m n ; 
 
                 a l i g n - i t e m s :   c e n t e r ; 
 
         } 
 
         
 
         . s t a t - i t e m   { 
 
                 w i d t h :   1 0 0 % ; 
 
                 m a x - w i d t h :   2 0 0 p x ; 
 
         } 
 
         
 
         . s t a i r s - t y p e - c a r d , 
 
         . i n s t a l l a t i o n - s t e p   { 
 
                 p a d d i n g :   1 . 5 r e m ; 
 
         } 
 
         
 
         . s t a i r s - t y p e - i c o n , 
 
         . i n s t a l l a t i o n - s t e p   . s t e p - i c o n   { 
 
                 w i d t h :   5 0 p x ; 
 
                 h e i g h t :   5 0 p x ; 
 
                 f o n t - s i z e :   1 . 2 r e m ; 
 
         } 
 
         
 
         . i n s t a l l a t i o n - s t e p   . s t e p - n u m b e r   { 
 
                 w i d t h :   4 0 p x ; 
 
                 h e i g h t :   4 0 p x ; 
 
                 f o n t - s i z e :   1 r e m ; 
 
         } 
 
 } 
 
 