/*
Theme Name: 3.14 Academy
Theme URI: https://www.3-14-academy.fr/
Author: Kwan
Author URI: https://www.kwan.fr/
Description: Th&egrave;me du site 3.14 Academy
Version: 1.0
*/




body {
    font-family: 'Poppins', sans-serif !important;
}




/* Navbar Styling */
.navbar {
    background-color: white;
    padding: 1rem 2rem;
}
.navbar-brand img {
    height: 55px;
}
.nav-link {
    color: #333 !important;
    font-weight: 500;
    margin: 0 10px;
}
.nav-link:hover {
    color: #e3262e !important;
}
.btn-contact {
    border: 1px solid #ddd;
    border-radius: 12px;
    padding: 10px 25px;
    font-weight: 500;
}
.btn-rdv {
    background-color: #e3262e;
    border: 1px solid #e3262e;
    color: white !important;
    border-radius: 12px;
    padding: 10px 25px;
    font-weight: 600;
}
.btn-contact:hover {
    border: 1px solid #e3262e;
    color: #e3262e !important;
    border-radius: 12px;
    padding: 10px 25px;
    font-weight: 600;
}
.btn-rdv:hover {
    background-color: #ffffff;
    border: 1px solid #e3262e;
    color: #e3262e !important;
    border-radius: 12px;
    padding: 10px 25px;
    font-weight: 600;
}





        /* Hero Section */
        .hero-section {
            position: relative;
            height: 90vh;
            background: url('img/bg.jpg') no-repeat center center;
            background-size: cover;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            text-align: center;
        }

        /* Overlay pour lisibilit&eacute; */
        .hero-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.4); /* Sombre l&eacute;g&egrave;rement pour le texte */
            backdrop-filter: blur(2px); /* Optionnel: l&eacute;ger flou */
        }

        .hero-content {
            position: relative;
            z-index: 2;
            max-width: 900px;
        }

        .badge-info {
            background: rgba(255, 255, 255, 0.15);
            border: 1px solid rgba(255, 255, 255, 0.3);
            border-radius: 50px;
            padding: 8px 20px;
            backdrop-filter: blur(5px);
            font-size: 0.9rem;
            margin-bottom: 2rem;
            display: inline-block;
        }

        h1 {
            font-weight: 700;
            font-size: 2.8rem;
            line-height: 1.2;
            margin-bottom: 1.5rem;
        }

        .lead-text {
            font-size: 1.1rem;
            margin-bottom: 2.5rem;
            opacity: 0.9;
        }

        /* Buttons Hero */
        .btn-commencer {
            background-color: #e3262e;
            border: none;
            padding: 12px 35px;
            border-radius: 10px;
            font-weight: 600;
            margin-right: 15px;
        }
        .btn-presentation {
            background: rgba(255, 255, 255, 0.1);
            border: 1px solid white;
            color: white;
            padding: 12px 35px;
            border-radius: 10px;
            transition: 0.3s;
        }
        .btn-presentation:hover {
            background: white;
            color: black;
        }

        /* Floating Video Bar */
        .video-bar {
            background: white;
            border-radius: 50px;
            padding: 10px 25px;
            display: inline-flex;
            align-items: center;
            color: #333;
            margin-top: 4rem;
            box-shadow: 0 10px 30px rgba(0,0,0,0.2);
            text-decoration: none;
            border: 10px none rgb(45 102 196) rgb(56 127 245 / 1);
        }
        .play-icon {
            color: #e3262e;
            font-size: 2rem;
            margin-right: 15px;
        }
        .video-text {
            text-align: left;
            line-height: 1.2;
        }
        .video-text strong {
            display: block;
            font-size: 0.95rem;
        }
        .video-text span {
            font-size: 0.8rem;
            color: #666;
        }
        
        /* Style du Mega Menu */
@media all and (min-width: 992px) {
    .navbar .has-megamenu { position: static; }
    .navbar .megamenu {
        top: 100%;
        left: 0;
        right: 0;
        width: 100%;
        margin-top: 0;
        border: none;
        border-top: 2px solid #e3262e;
        border-radius: 0 0 20px 20px;
        visibility: hidden;
        opacity: 0;
        display: block;
        transition: all 0.3s ease;
        transform: translateY(10px);
    }
    /* Activation au survol */
    .nav-item.dropdown:hover .megamenu {
        visibility: visible;
        opacity: 1;
        transform: translateY(0);
    }
    .dropdown-item:hover {
        background-color: transparent;
        color: #e3262e;
        padding-left: 15px;
        transition: padding 0.2s;
    }
}

/* Version Mobile */
@media (max-width: 991px) {
    .megamenu { border: none; padding: 0 20px; }
}


.partners-section {
        padding: 60px 0;
        background-color: #fff;
        text-align: center;
    }

    .partners-stats {
        font-size: 0.95rem;
        color: #666;
        margin-bottom: 50px;
        font-weight: 400;
    }

    .partners-grid {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 40px 60px; /* Espace vertical et horizontal entre les logos */
    }

    .partner-logo {
        max-height: 50px; /* Hauteur uniforme pour l'harmonie visuelle */
        max-width: 140px;
        filter: grayscale(100%); /* Optionnel : logos en gris pour plus de sobriété */
        opacity: 0.7;
        transition: all 0.3s ease;
    }

    .partner-logo:hover {
        filter: grayscale(0%);
        opacity: 1;
        transform: scale(1.05);
    }

    /* Style spécifique pour les gros logos comme Carrefour */
    .logo-large {
        max-height: 70px;
    }
    
    
    /* Styles pour la nouvelle section Objectifs */
    .objectives-section {
        background-color: #fce4e4; /* Rose pastel du visuel */
        padding: 80px 0;
        color: #1a1a1a;
    }

    .badge-opco {
        background: rgba(255, 255, 255, 0.5);
        border: 1px solid rgba(0, 0, 0, 0.1);
        border-radius: 50px;
        padding: 5px 20px;
        font-size: 0.85rem;
        display: inline-block;
        margin-bottom: 20px;
    }

    .section-title {
        font-weight: 700;
        font-size: 2.5rem;
        margin-bottom: 20px;
    }

    .section-subtitle {
        max-width: 700px;
        margin: 0 auto 40px;
        color: #555;
        font-size: 1rem;
    }

    /* Boutons de la section */
    .btn-en-savoir {
        border: 1px solid #333;
        border-radius: 12px;
        padding: 10px 25px;
        font-weight: 500;
        color: #333;
        transition: all 0.3s;
    }
    .btn-en-savoir:hover {
        background: #333;
        color: #fff;
    }

    /* Grille de contenu */
    .feature-card {
        padding: 30px;
        height: 100%;
    }

    /* La premi&egrave;re carte a un contour sp&eacute;cifique sur le visuel */
    .card-bordered {
        border: 1px solid #b5b5b5;
        border-radius: 20px;
        background: rgba(255, 255, 255, 0.2);
    }

    .feature-icon {
        font-size: 1.5rem;
        margin-bottom: 15px;
        display: block;
    }

    .feature-title {
        font-weight: 700;
        font-size: 1.1rem;
        margin-bottom: 20px;
        display: inline-block;
    }

    .feature-text {
        font-size: 0.95rem;
        line-height: 1.6;
        color: #444;
        text-align: left;
    }

    /* Section T&eacute;moignages (Amorce) */
    .testimonials-header {
        padding-top: 60px;
        text-align: center;
    }
    
.testimonial-card {
        background: rgba(255, 255, 255, 0.2);
        border: 1px solid rgba(0, 0, 0, 0.1);
        border-radius: 20px;
        padding: 40px 30px;
        text-align: center;
        height: 100%;
        transition: transform 0.3s ease;
    }
    .testimonial-card:hover {
        transform: translateY(-5px);
        background: rgba(255, 255, 255, 0.4);
    }
    .testimonial-quote {
        font-style: italic;
        font-size: 0.95rem;
        color: #333;
        margin-bottom: 30px;
        line-height: 1.6;
    }
    .avatar {
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background-color: #ffd400; /* Jaune du visuel */
        margin: 0 auto 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: bold;
    }
    .testimonial-author {
        font-weight: 700;
        font-size: 1rem;
        margin-bottom: 5px;
        color: #1a1a1a;
    }
    .testimonial-role {
        font-size: 0.85rem;
        color: #666;
    }

    /* 2. SECTION ACCOMPAGNEMENT ROUGE */
    .cta-red-section {
        padding: 100px 0;
        background-color: #fff;
    }
    .red-card-bg {
        background-color: #e3262e;
        border-radius: 30px;
        padding: 60px;
        color: white;
        position: relative;
        overflow: hidden;
    }
    /* Effet de vagues abstraites en fond */
    .red-card-bg::after {
        content: "";
        position: absolute;
        bottom: 0; left: 0; right: 0;
        height: 100%;
        background: url('https://www.transparenttextures.com/patterns/cubes.png');
        opacity: 0.05;
        pointer-events: none;
    }
    .cta-title {
        font-size: 2.5rem;
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: 30px;
    }
    .btn-outline-white {
        border: 1px solid rgba(255,255,255,0.5);
        color: white;
        border-radius: 12px;
        padding: 12px 25px;
        font-size: 0.9rem;
        transition: 0.3s;
    }
    .btn-outline-white:hover {
        background: white;
        color: #e3262e;
    }

    /* Liste des avantages &agrave; droite */
    .benefit-item {
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: 20px;
        padding: 20px;
        margin-bottom: 15px;
        display: flex;
        align-items: flex-start;
    }
    .benefit-icon {
        background: rgba(255, 255, 255, 0.2);
        width: 45px;
        height: 45px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 20px;
        flex-shrink: 0;
        font-size: 1.2rem;
    }
    .benefit-content h4 {
        font-size: 1.1rem;
        font-weight: 600;
        margin-bottom: 5px;
    }
    .benefit-content p {
        font-size: 0.85rem;
        margin-bottom: 0;
        opacity: 0.9;
    }
    
    .specialized-courses {
        background-color: #fce4e4; /* Retour au rose pastel du visuel */
        padding: 80px 0;
    }

    .course-card {
        background: rgba(255, 255, 255, 0.2);
        border: 1px solid rgba(0, 0, 0, 0.1);
        border-radius: 20px;
        padding: 30px;
        height: 100%;
        text-align: left;
        transition: all 0.3s ease;
    }

    .course-card:hover {
        background: white;
        box-shadow: 0 10px 30px rgba(0,0,0,0.05);
        transform: translateY(-5px);
    }

    .course-icon {
        font-size: 1.5rem;
        margin-bottom: 20px;
        color: #333;
    }

    .course-title {
        font-weight: 700;
        font-size: 1.05rem;
        margin-bottom: 15px;
        color: #1a1a1a;
    }

    .course-desc {
        font-size: 0.9rem;
        color: #555;
        line-height: 1.5;
        margin-bottom: 20px;
    }

    .link-learn-more {
        color: #333;
        font-size: 0.85rem;
        font-weight: 600;
        text-decoration: underline;
        text-underline-offset: 4px;
    }

    .btn-discover-all {
        background: rgba(255, 255, 255, 0.3);
        border: 1px solid rgba(0,0,0,0.1);
        border-radius: 12px;
        padding: 12px 30px;
        font-weight: 500;
        color: #333;
        margin-top: 50px;
        transition: 0.3s;
    }

    .btn-discover-all:hover {
        background: #333;
        color: white;
    }
    
    /* FAQ Section */
    .faq-section {
        background-color: #ffc1c1;
        padding: 100px 0;
    }
    
    .faq-title {
        font-weight: 700;
        font-size: 2.5rem;
        margin-bottom: 20px;
    }

    /* Style personnalis&eacute; de l'accord&eacute;on */
    .accordion-item {
        background-color: transparent !important;
        border: none !important;
        border-bottom: 1px solid rgba(0,0,0,0.05) !important;
        margin-bottom: 10px;
    }

    .accordion-button {
        background-color: transparent !important;
        box-shadow: none !important;
        color: #1a1a1a !important;
        font-weight: 600;
        padding: 20px 0;
        position: relative;
        padding-left: 25px;
    }

    /* La barre verticale bleue &agrave; gauche de la question */
    .accordion-button::before {
        content: "";
        position: absolute;
        left: 0;
        top: 25%;
        height: 50%;
        width: 4px;
        background-color: #004cff; /* Bleu vif du visuel */
        background-color: #e3262e;
        border-radius: 2px;
    }

    .accordion-body {
        padding: 0 0 20px 25px;
        color: #555;
        font-size: 0.95rem;
    }

    /* FOOTER Section */
    footer {
        background-color: #fff;
        padding: 80px 0 30px;
        font-size: 0.9rem;
    }

    .footer-logo {
        font-weight: 800;
        font-size: 1.5rem;
        margin-bottom: 30px;
        display: block;
    }

    .footer-heading {
        font-weight: 700;
        margin-bottom: 25px;
        font-size: 1rem;
    }

    .footer-links {
        list-style: none;
        padding: 0;
    }

    .footer-links li {
        margin-bottom: 12px;
    }

    .footer-links a {
        color: #666;
        text-decoration: none;
        transition: 0.3s;
    }

    .footer-links a:hover {
        color: #e3262e;
        padding-left: 5px;
    }

    .social-links a {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .footer-bottom {
        border-top: 1px solid #eee;
        margin-top: 60px;
        padding-top: 30px;
        color: #999;
        font-size: 0.8rem;
    }
    
    
    
    /* Rappel du style Hero */
        .contact-header {
            background-color: #fce4e4; /* Rose pastel */
            padding: 80px 0;
            text-align: center;
        }

        .badge-contact {
            background: rgba(255, 255, 255, 0.5);
            border: 1px solid rgba(0, 0, 0, 0.1);
            border-radius: 50px;
            padding: 5px 20px;
            font-size: 0.85rem;
            display: inline-block;
            margin-bottom: 20px;
        }

        /* Formulaire Style */
        .contact-card {
            background: white;
            border-radius: 20px; /* Bordures arrondies */
            box-shadow: 0 15px 35px rgba(0,0,0,0.05);
            padding: 40px;
            margin-top: -50px; /* Chevauchement design */
        }

        .form-control {
            border-radius: 10px;
            padding: 12px 15px;
            border: 1px solid #eee;
            background-color: #f9f9f9;
        }

        .form-control:focus {
            border-color: #e3262e;
            box-shadow: none;
            background-color: #fff;
        }

        .btn-submit {
            background-color: #e3262e; /* Rouge */
            color: white;
            border-radius: 12px;
            padding: 12px 30px;
            font-weight: 600;
            border: none;
            width: 100%;
            transition: 0.3s;
        }

        .btn-submit:hover {
            background-color: #b31d23;
            transform: translateY(-2px);
        }

        /* Infos de contact */
        .info-box {
            display: flex;
            align-items: flex-start;
            margin-bottom: 30px;
        }

        .info-icon {
            width: 50px;
            height: 50px;
            background-color: #fce4e4;
            color: #e3262e;
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            margin-right: 20px;
            flex-shrink: 0;
        }
        
        
        /* --- HERO FORMATION --- */
        .formation-hero { padding: 80px 0 0 0; position: relative; }
        
        .formation-title { font-weight: 700; font-size: 2.8rem; line-height: 1.2; color: #1a1a1a; margin-bottom: 25px; }
        .formation-title span { color: #4470e1; } /* Bleu spécifique du visuel */
        
        .tech-list { font-size: 0.85rem; color: #777; margin-bottom: 40px; }
        .tech-list i { font-size: 0.6rem; vertical-align: middle; margin-right: 5px; }

        /* --- IMAGE & FORM OVERLAP --- */
        .image-container { 
            position: relative; 
            width: 100%; 
            height: 500px; 
            background: url('https://images.unsplash.com/photo-1677442136019-21780ecad995?q=80&w=2070&auto=format&fit=crop') no-repeat center center;
            background-size: cover;
        }

        .floating-form-card {
            background: white;
            border-radius: 15px;
            box-shadow: 0 10px 40px rgba(0,0,0,0.1);
            padding: 30px;
            position: absolute;
            top: -750px;
            right: 0;
            width: 100%;
            max-width: 380px;
            z-index: 10;
        }

        .form-label-title { text-align: center; font-weight: 600; margin-bottom: 20px; font-size: 1.1rem; }
        .input-group-text { background-color: transparent; border-right: none; color: #999; }
        .form-control, .form-select { border-left: none; background-color: white; font-size: 0.9rem; padding: 10px; }
        .form-control:focus, .form-select:focus { box-shadow: none; border-color: #ced4da; }
        .input-group { margin-bottom: 15px; border: 1px solid #ced4da; border-radius: 8px; overflow: hidden; }

        .btn-send { background-color: #4470e1; color: white; border: none; width: 100%; padding: 12px; border-radius: 8px; font-weight: 600; margin-top: 10px; }
        
        
        
        
            .details-section {
        background: url('https://images.unsplash.com/photo-1677442136019-21780ecad995?q=80&w=2070&auto=format&fit=crop') no-repeat center center;
        background-size: cover;
        padding: 100px 0;
        color: white;
        position: relative;
    }

    /* Overlay pour assombrir davantage et lier avec le Hero */
    .details-section::before {
        content: "";
        position: absolute;
        top: 0; left: 0; right: 0; bottom: 0;
        background: rgba(0, 0, 0, 0.85);
        z-index: 1;
    }

    .details-container {
        position: relative;
        z-index: 2;
    }

    .main-title-light {
        font-weight: 700;
        font-size: 2rem;
        text-align: center;
        margin-bottom: 20px;
    }

    .intro-text-light {
        text-align: center;
        max-width: 800px;
        margin: 0 auto 60px;
        font-size: 1rem;
        line-height: 1.6;
        opacity: 0.9;
    }

    /* Cartes de contenu */
    .content-card-white {
        background: white;
        color: #1a1a1a;
        border-radius: 20px;
        padding: 40px;
        height: 100%;
        box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    }

    .icon-click {
        font-size: 3.5rem;
        margin-bottom: 25px;
        display: block;
    }

    .card-title-dark {
        font-weight: 700;
        font-size: 1.3rem;
        margin-bottom: 20px;
    }

    /* Liste Programme */
    .program-module {
        margin-bottom: 20px;
    }

    .module-title {
        font-weight: 700;
        font-size: 0.95rem;
        margin-bottom: 5px;
        color: #1a1a1a;
    }

    .module-content {
        font-size: 0.85rem;
        color: #555;
        line-height: 1.4;
    }

    /* Section experts (bas gauche) */
    .expert-pillar {
        margin-bottom: 25px;
    }
    
    .pillar-num {
        font-weight: 700;
        font-size: 0.9rem;
        margin-bottom: 5px;
        display: block;
    }

    .pillar-text {
        font-size: 0.85rem;
        opacity: 0.8;
        line-height: 1.5;
    }
    
    
        /* --- HEADER PAGE --- */
        .page-header { background-color: #fce4e4; padding: 80px 0; text-align: center; }
        .badge-theme { background: rgba(255, 255, 255, 0.5); border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 50px; padding: 5px 20px; font-size: 0.85rem; display: inline-block; margin-bottom: 20px; }

        /* --- FILTRES / TABS --- */
        .theme-nav { margin-bottom: 50px; border: none; justify-content: center; }
        .theme-link { color: #666; font-weight: 600; border: none !important; padding: 10px 25px; border-radius: 50px !important; margin: 0 5px; transition: 0.3s; }
        .theme-link.active { background-color: #e3262e !important; color: white !important; }

        /* --- CARTES DE FORMATION --- */
        .course-card { background: #fff; border: 1px solid rgba(0, 0, 0, 0.05); border-radius: 20px; padding: 30px; height: 100%; transition: all 0.3s ease; display: flex; flex-direction: column; }
        .course-card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.05); border-color: #e3262e; }
        .course-icon { font-size: 2rem; color: #1a1a1a; margin-bottom: 20px; }
        .course-title { font-weight: 700; font-size: 1.1rem; margin-bottom: 15px; color: #1a1a1a;text-decoration: none; }
        .course-card > a { text-decoration: none; }
        .course-desc { font-size: 0.9rem; color: #555; line-height: 1.5; flex-grow: 1; }
        .btn-learn-more { color: #e3262e; font-weight: 600; text-decoration: none; font-size: 0.85rem; margin-top: 20px; display: inline-block; }
        .btn-learn-more:hover { text-decoration: underline; }
        .course-card:hover h3 { color: #e3262e;cursor: pointer; }
        

    .final-cta-section {
        padding: 80px 0;
        background-color: #fff;
    }

    .cta-banner-red {
        background-color: #e3262e; /* Rouge 3.14 Academy */
        border-radius: 30px;
        padding: 60px 40px;
        color: white;
        text-align: center;
        position: relative;
        overflow: hidden;
        box-shadow: 0 20px 40px rgba(227, 38, 46, 0.2);
    }

    /* Motif abstrait en arrière-plan */
    .cta-banner-red::before {
        content: "";
        position: absolute;
        top: -50%;
        right: -10%;
        width: 400px;
        height: 400px;
        background: rgba(255, 255, 255, 0.05);
        border-radius: 50%;
        z-index: 1;
    }

    .cta-content {
        position: relative;
        z-index: 2;
    }

    .cta-banner-red h2 {
        font-weight: 700;
        font-size: 2.5rem;
        margin-bottom: 20px;
    }

    .cta-banner-red p {
        font-size: 1.1rem;
        opacity: 0.9;
        max-width: 600px;
        margin: 0 auto 40px;
    }

    /* Boutons personnalisés */
    .btn-cta-white {
        background-color: white;
        color: #e3262e;
        border: none;
        padding: 15px 35px;
        border-radius: 12px;
        font-weight: 700;
        margin: 10px;
        transition: all 0.3s ease;
        display: inline-block;
        text-decoration: none;
    }

    .btn-cta-white:hover {
        background-color: #f8f9fa;
        transform: translateY(-3px);
        color: #b31d23;
    }

    .btn-cta-outline {
        background-color: transparent;
        color: white;
        border: 2px solid rgba(255, 255, 255, 0.6);
        padding: 13px 35px;
        border-radius: 12px;
        font-weight: 600;
        margin: 10px;
        transition: all 0.3s ease;
        display: inline-block;
        text-decoration: none;
    }

    .btn-cta-outline:hover {
        background-color: rgba(255, 255, 255, 0.1);
        border-color: white;
        color: white;
    }
    
    
    /* --- HEADER MENTIONS --- */
        .legal-header { background-color: #fce4e4; padding: 60px 0; margin-bottom: 50px; }
        
        /* --- CONTENU --- */
        .legal-content h2 { 
            font-weight: 700; 
            font-size: 1.5rem; 
            color: #1a1a1a; 
            margin-top: 40px; 
            margin-bottom: 20px;
            display: flex;
            align-items: center;
        }
        .legal-content h2::before {
            content: "";
            width: 4px;
            height: 24px;
            background-color: #e3262e;
            margin-right: 15px;
            border-radius: 2px;
        }
        .legal-content p, .legal-content li { font-size: 0.95rem; color: #555; }
        .legal-card { 
            background: #fff; 
            border: 1px solid #eee; 
            border-radius: 20px; 
            padding: 40px; 
            box-shadow: 0 10px 30px rgba(0,0,0,0.02);
        }























/* =WordPress Core
-------------------------------------------------------------- */

.alignnone {
    margin: 5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}
.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}
a img.alignnone {
    margin: 5px 20px 20px 0;
}
a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}
.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}
.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}
.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}
