
html { margin-top: 0 !important; overflow-x: hidden; }
#wpadminbar, .ab-top-menu, .fl-builder-bar, .fl-builder--main-menu, .fl-builder-ui-pinned-content-transform { display:none !important; }
body { margin-top: 0 !important; }
.fepai-whatsapp { position:fixed; left:22px; bottom:22px; width:50px; height:50px; z-index:9999; border-radius:50%; background:#22c65b; color:white!important; display:flex; align-items:center; justify-content:center; text-decoration:none!important; font-size:28px; font-family:Arial,sans-serif; box-shadow:0 4px 14px rgba(0,0,0,.25); }
.fepai-whatsapp:hover { transform:scale(1.05); color:white!important; }
@media (max-width: 768px){ .fepai-whatsapp { width:46px;height:46px;left:14px;bottom:14px; } }


/* ===== Ajustes FEPAI pós-recuperação ===== */
/* Hero da Home com a foto da Sensei Fumie enviada pelo usuário */
.home .fl-node-5c0760df48499 > .fl-row-content-wrap {
    background-position: center center !important;
    background-attachment: scroll !important;
}
.home .fl-node-5c0760df48499 .fl-node-5c0760df60c97 {
    max-width: 650px;
    margin-left: 8%;
    margin-right: auto;
}
@media (max-width: 921px) {
    .home .fl-node-5c0760df48499 .fl-node-5c0760df60c97 {
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    .home .fl-node-5c0760df48499 > .fl-row-content-wrap {
        background-position: 58% center !important;
    }
}

/* Páginas internas recriadas sem WordPress */
.fepai-inner-page { background: #fff; color: #222; }
.fepai-inner-hero {
    position: relative;
    min-height: 510px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 220px 24px 180px;
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
}
.fepai-inner-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(10,0,1,.75);
}
.fepai-inner-hero h1 {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    line-height: 1.15;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
}
.fepai-content-wrap {
    max-width: 1150px;
    margin: 0 auto;
    padding: 150px 24px 90px;
}
.fepai-grid { display: grid; gap: 44px; align-items: start; }
.fepai-grid-55-45 { grid-template-columns: minmax(0,55fr) minmax(0,45fr); }
.fepai-grid-50-50 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.fepai-copy h2 {
    margin: 0 0 30px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 1.3;
    text-transform: none;
    color: #222;
}
.fepai-copy p {
    margin: 0 0 24px;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: #333;
    text-align: left;
}
.fepai-copy .fepai-separator {
    width: 72px;
    height: 3px;
    background: #fe0000;
    margin: 0 0 30px;
}
.fepai-media { display:flex; align-items:flex-start; justify-content:center; }
.fepai-media img { display:block; width:100%; height:auto; max-width:100%; }
.fepai-media-narrow img { max-width: 390px; }
.fepai-text-block { margin-top: 46px; }
.fepai-lower-grid { margin-top: 48px; }
@media (max-width: 921px) {
    .fepai-inner-hero { min-height: 360px; padding: 150px 20px 110px; }
    .fepai-inner-hero h1 { font-size: 44px; }
    .fepai-content-wrap { padding: 80px 22px 60px; }
    .fepai-grid-55-45, .fepai-grid-50-50 { grid-template-columns: 1fr; }
    .fepai-media-narrow img { max-width: 520px; }
}
@media (max-width: 544px) {
    .fepai-inner-hero { min-height: 300px; padding: 120px 16px 90px; }
    .fepai-inner-hero h1 { font-size: 36px; }
    .fepai-content-wrap { padding: 60px 18px 45px; }
    .fepai-copy h2 { font-size: 27px; }
}


/* ===== Página História | reconstruída do backup seguro ===== */
.fepai-history-hero {
    background-position: center center !important;
    padding-top: 220px;
    padding-bottom: 180px;
}
.fepai-history-wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 91px 24px 90px;
}
.fepai-history-title {
    margin: 0 0 42px;
}
.fepai-history-title h2 {
    margin: 0 0 18px;
    font-family: 'Montserrat', sans-serif;
    font-size: 32px;
    line-height: 1.35;
    font-weight: 700;
    color: #222;
}
.fepai-history-title .fepai-separator {
    width: 72px;
    height: 3px;
    margin: 0;
    background: #fe0000;
}
.fepai-history-grid {
    display: grid;
    grid-template-columns: minmax(150px, 20fr) minmax(0, 60fr) minmax(150px, 20fr);
    gap: 28px;
    align-items: start;
}
.fepai-history-gallery {
    display: flex;
    flex-direction: column;
    gap: 34px;
}
.history-photo {
    margin: 0;
    text-align: center;
}
.history-photo img {
    display: block;
    width: 100%;
    max-width: 280px;
    height: auto;
    margin: 0 auto;
}
.fepai-history-text p {
    margin: 0 0 23px;
    font-family: 'Poppins', sans-serif;
    font-size: 15.5px;
    line-height: 1.78;
    color: #333;
    text-align: left;
}
@media (max-width: 1000px) {
    .fepai-history-grid {
        grid-template-columns: 160px minmax(0, 1fr) 160px;
        gap: 22px;
    }
    .fepai-history-text p { font-size: 15px; }
}
@media (max-width: 780px) {
    .fepai-history-wrap { padding: 68px 20px 60px; }
    .fepai-history-title h2 { font-size: 27px; }
    .fepai-history-grid { grid-template-columns: 1fr; }
    .fepai-history-gallery {
        display: grid;
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 18px;
    }
    .fepai-history-gallery-left { order: 2; margin-top: 15px; }
    .fepai-history-text { order: 1; }
    .fepai-history-gallery-right { display: none; }
    .history-photo img { max-width: 100%; }
}
@media (max-width: 480px) {
    .fepai-history-gallery { grid-template-columns: 1fr; }
}


/* ===== Página Mestre Doshu | reconstruída do backup seguro ===== */
.fepai-doshu-hero {
    background-position: center center !important;
    padding-top: 220px;
    padding-bottom: 180px;
}
.fepai-doshu-wrap {
    max-width: 1150px;
    margin: 0 auto;
    padding: 150px 24px 90px;
}
.fepai-doshu-intro {
    max-width: 1020px;
}
.fepai-doshu-intro h2,
.fepai-doshu-person h2 {
    text-transform: none !important;
}
.fepai-doshu-person h2 span {
    white-space: nowrap;
}
.fepai-doshu-list {
    margin-top: 60px;
}
.fepai-doshu-person {
    display: grid;
    gap: 46px;
    align-items: center;
    padding: 17px 0 42px;
}
.fepai-doshu-person + .fepai-doshu-person {
    border-top: 1px solid #ededed;
    padding-top: 58px;
}
.fepai-doshu-56-44 { grid-template-columns: minmax(0,56fr) minmax(260px,44fr); }
.fepai-doshu-66-34 { grid-template-columns: minmax(0,66fr) minmax(250px,34fr); }
.fepai-doshu-67-33 { grid-template-columns: minmax(0,67fr) minmax(250px,33fr); }
.fepai-doshu-photo {
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.fepai-doshu-photo img {
    display: block;
    width: 100%;
    max-width: 330px;
    height: auto;
}
@media (max-width: 921px) {
    .fepai-doshu-wrap { padding: 80px 22px 60px; }
    .fepai-doshu-person,
    .fepai-doshu-56-44,
    .fepai-doshu-66-34,
    .fepai-doshu-67-33 { grid-template-columns: 1fr; }
    .fepai-doshu-photo { justify-content: flex-start; }
    .fepai-doshu-photo img { max-width: 390px; }
}
@media (max-width: 544px) {
    .fepai-doshu-wrap { padding: 60px 18px 45px; }
    .fepai-doshu-person h2 span { white-space: normal; display: block; margin-top: 5px; }
}


/* ===== Página Academias Filiadas | visual do backup seguro + dados cruzados com BD 27/07/2026 ===== */
.fepai-academias-hero {
    background-position: center center !important;
    min-height: 500px;
    padding-top: 220px;
    padding-bottom: 170px;
}
.fepai-academias-wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 78px 24px 105px;
}
.fepai-academias-group + .fepai-academias-group { margin-top: 82px; }
.fepai-section-title { text-align:center; margin-bottom:42px; }
.fepai-section-title h2 {
    margin:0 0 20px;
    font-family:'Montserrat',sans-serif;
    font-size:32px;
    line-height:1.25;
    font-weight:700;
    color:#151515;
    text-transform:uppercase;
}
.fepai-section-title .fepai-separator {
    width:72px; height:3px; margin:0 auto; background:#fe0000;
}
.fepai-academias-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
    align-items:stretch;
}
.fepai-academia-card {
    border:1px solid #e5e5e5;
    border-radius:11px;
    padding:28px 28px 26px;
    text-align:center;
    background:#fff;
    box-shadow:0 3px 14px rgba(0,0,0,.045);
}
.fepai-academia-card h3 {
    margin:0 0 18px;
    font-family:'Montserrat',sans-serif;
    font-size:18px;
    line-height:1.35;
    font-weight:700;
    color:#0587b2;
    text-transform:none;
}
.fepai-academia-card p {
    margin:5px 0;
    font-family:'Poppins',sans-serif;
    font-size:14px;
    line-height:1.55;
    color:#333;
}
.fepai-academia-card a { color:#078648; text-decoration:none; word-break:break-word; }
.fepai-academia-card a:hover { text-decoration:underline; }
.fepai-academia-extra { margin-top:10px !important; font-size:13px !important; color:#666 !important; }
@media (max-width: 921px) {
    .fepai-academias-hero { min-height:360px; padding:150px 20px 110px; }
    .fepai-academias-wrap { padding:64px 20px 75px; }
    .fepai-academias-grid { grid-template-columns:1fr; }
    .fepai-academias-group + .fepai-academias-group { margin-top:65px; }
}
@media (max-width: 544px) {
    .fepai-academias-hero { min-height:300px; padding:120px 16px 90px; }
    .fepai-academias-wrap { padding:52px 16px 60px; }
    .fepai-section-title h2 { font-size:27px; }
    .fepai-academia-card { padding:24px 18px 22px; }
}

.fepai-academia-links { margin-top: 12px !important; font-size: 12.5px !important; }
.fepai-academia-links a { font-weight: 600; }
.fepai-academia-links span { color:#aaa; padding:0 2px; }


/* ===== Página Técnicas | V9 ===== */
.fepai-techniques-hero {
    background-position: center center !important;
    min-height: 500px;
}
.fepai-techniques-wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 92px 24px 105px;
}
.fepai-technique-block {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(250px, .75fr);
    gap: 62px;
    align-items: center;
    padding: 35px 0 72px;
}
.fepai-technique-block + .fepai-technique-block {
    border-top: 1px solid #ededed;
    padding-top: 72px;
}
.fepai-technique-right {
    grid-template-columns: minmax(250px, .75fr) minmax(0, 1.45fr);
}
.fepai-technique-copy h2 {
    margin: 0 0 18px;
    font-family: 'Montserrat', sans-serif;
    font-size: 30px;
    line-height: 1.3;
    color: #222;
    text-transform: uppercase;
}
.fepai-technique-copy .fepai-separator {
    width: 72px;
    height: 3px;
    margin: 0 0 27px;
    background: #fe0000;
}
.fepai-technique-copy p {
    margin: 0 0 20px;
    font-family: 'Poppins', sans-serif;
    font-size: 15.5px;
    line-height: 1.78;
    color: #333;
}
.fepai-technique-media { margin: 0; text-align: center; }
.fepai-technique-media img {
    display: block;
    width: 100%;
    max-width: 355px;
    height: auto;
    margin: 0 auto;
}
.fepai-technique-media-tall img { max-width: 235px; }
.fepai-exams {
    margin-top: 62px;
    padding-top: 78px;
    border-top: 1px solid #e9e9e9;
}
.fepai-exams .fepai-section-title { margin-bottom: 18px; }
.fepai-exam-legend {
    margin: 0 0 40px;
    text-align: center;
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    color: #555;
}
.fepai-exam-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 24px;
    align-items: start;
}
.fepai-exam-card {
    background: #fff;
    border: 1px solid #e4e4e4;
    border-radius: 10px;
    padding: 28px 30px;
    box-shadow: 0 3px 14px rgba(0,0,0,.04);
}
.fepai-exam-card h3 {
    margin: 0 0 20px;
    padding-bottom: 13px;
    border-bottom: 3px solid #fe0000;
    font-family: 'Montserrat', sans-serif;
    font-size: 19px;
    line-height: 1.35;
    color: #222;
    text-transform: none;
}
.fepai-exam-card ol {
    margin: 0;
    padding-left: 22px;
}
.fepai-exam-card li {
    margin: 0 0 8px;
    padding-left: 3px;
    font-family: 'Poppins', sans-serif;
    font-size: 13.5px;
    line-height: 1.55;
    color: #333;
}
.fepai-exam-card-wide { grid-column: 1 / -1; }
.fepai-exam-card-wide ol { columns: 2; column-gap: 42px; }
@media (max-width: 921px) {
    .fepai-techniques-hero { min-height: 360px; }
    .fepai-techniques-wrap { padding: 68px 20px 78px; }
    .fepai-technique-block,
    .fepai-technique-right { grid-template-columns: 1fr; gap: 32px; }
    .fepai-technique-right .fepai-technique-media { order: 2; }
    .fepai-technique-right .fepai-technique-copy { order: 1; }
    .fepai-technique-media img { max-width: 420px; }
    .fepai-technique-media-tall img { max-width: 260px; }
    .fepai-exam-grid { grid-template-columns: 1fr; }
    .fepai-exam-card-wide { grid-column: auto; }
    .fepai-exam-card-wide ol { columns: 1; }
}
@media (max-width: 544px) {
    .fepai-techniques-wrap { padding: 54px 16px 60px; }
    .fepai-technique-block { padding: 20px 0 52px; }
    .fepai-technique-block + .fepai-technique-block { padding-top: 52px; }
    .fepai-technique-copy h2 { font-size: 25px; }
    .fepai-technique-copy p { font-size: 14.5px; }
    .fepai-exams { margin-top: 35px; padding-top: 55px; }
    .fepai-exam-card { padding: 23px 20px; }
}

/* ===== Página Eventos | V10 ===== */
.fepai-events-hero {
    background-position: center center !important;
    min-height: 500px;
}
.fepai-events-wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 84px 24px 105px;
}
.fepai-events-heading {
    max-width: 790px;
    margin: 0 auto 58px;
    text-align: center;
}
.fepai-events-kicker {
    margin: 0 0 8px;
    color: #078648;
    font-family: 'Montserrat',sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .14em;
}
.fepai-events-heading h2 {
    margin: 0 0 18px;
    font-size: 32px;
    color: #222;
}
.fepai-events-heading .fepai-separator { width:72px; height:3px; margin:0 auto 24px; background:#fe0000; }
.fepai-events-intro {
    margin: 0;
    color: #555;
    font-size: 15.5px;
    line-height: 1.75;
}
.fepai-event-card {
    display: grid;
    grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr);
    gap: 52px;
    align-items: center;
    margin: 0 0 42px;
    padding: 34px;
    border: 1px solid #e6e6e6;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 5px 20px rgba(0,0,0,.055);
}
.fepai-event-news { grid-template-columns: minmax(300px,.88fr) minmax(0,1.12fr); }
.fepai-event-image { display:block; text-decoration:none; }
.fepai-event-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 620px;
    object-fit: contain;
    margin: 0 auto;
}
.fepai-event-featured .fepai-event-image img { max-width: 390px; }
.fepai-event-news .fepai-event-image img { max-width: 440px; }
.fepai-event-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 16px;
}
.fepai-event-meta span {
    display: inline-block;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f1f6f3;
    color: #078648;
    font-family: 'Poppins',sans-serif;
    font-size: 12.5px;
    font-weight: 600;
}
.fepai-event-copy h3 {
    margin: 0 0 18px;
    color: #222;
    font-family: 'Montserrat',sans-serif;
    font-size: 27px;
    line-height: 1.28;
}
.fepai-event-copy p {
    margin: 0 0 17px;
    color: #444;
    font-family: 'Poppins',sans-serif;
    font-size: 15px;
    line-height: 1.72;
}
.fepai-event-place { color:#555 !important; }
.fepai-event-button {
    display: inline-block;
    margin-top: 7px;
    padding: 11px 22px;
    border-radius: 24px;
    background: #459530;
    color: #fff !important;
    text-decoration: none !important;
    font-family: 'Montserrat',sans-serif;
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: .02em;
    transition: background .18s ease, transform .18s ease;
}
.fepai-event-button:hover,.fepai-event-button:focus { background:#347922; transform:translateY(-1px); }
.fepai-events-history {
    margin-top: 85px;
    padding-top: 70px;
    border-top: 1px solid #e8e8e8;
}
.fepai-events-history-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 22px;
}
.fepai-events-history-grid article {
    padding: 25px 25px 27px;
    border: 1px solid #e6e6e6;
    border-radius: 10px;
    background: #fff;
}
.fepai-events-history-grid time {
    display: inline-block;
    margin-bottom: 11px;
    color: #078648;
    font-weight: 700;
    font-size: 13px;
}
.fepai-events-history-grid h3 {
    margin: 0 0 12px;
    color: #087dac;
    font-size: 17px;
    line-height: 1.4;
}
.fepai-events-history-grid p {
    margin: 0;
    color: #555;
    font-size: 13.5px;
    line-height: 1.6;
}
.fepai-events-history-note {
    margin: 28px 0 0;
    text-align: center;
    color: #777;
    font-size: 13px;
}
@media (max-width: 921px) {
    .fepai-events-hero { min-height: 360px; }
    .fepai-events-wrap { padding: 64px 20px 78px; }
    .fepai-event-card,.fepai-event-news { grid-template-columns:1fr; gap:30px; padding:28px; }
    .fepai-event-image img { max-width: 480px !important; }
    .fepai-events-history-grid { grid-template-columns:1fr; }
}
@media (max-width: 544px) {
    .fepai-events-wrap { padding: 52px 16px 62px; }
    .fepai-events-heading { margin-bottom:42px; }
    .fepai-events-heading h2 { font-size:27px; }
    .fepai-event-card { padding:20px; margin-bottom:28px; }
    .fepai-event-copy h3 { font-size:22px; }
    .fepai-event-copy p { font-size:14px; }
    .fepai-events-history { margin-top:58px; padding-top:52px; }
}

/* Blog V11 */
.fepai-blog-page,.fepai-blog-article-page{background:#f5f5f5;color:#222}
.fepai-blog-hero{min-height:420px;background-size:cover;background-position:center 68%;position:relative;display:flex;align-items:center;justify-content:center}
.fepai-blog-hero:before{content:"";position:absolute;inset:0;background:rgba(12,12,16,.52)}
.fepai-blog-hero h1{position:relative;z-index:1;color:#fff;font-family:Montserrat,sans-serif;font-size:64px;line-height:1;margin:0;text-transform:uppercase}
.fepai-blog-wrap{max-width:1180px;margin:0 auto;padding:50px 28px 80px}
.fepai-blog-heading{text-align:center;margin-bottom:38px}.fepai-blog-heading h2{font-size:34px;text-transform:none;margin:0;color:#161616}
.fepai-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.fepai-blog-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 10px 26px rgba(0,0,0,.18);display:flex;flex-direction:column}
.fepai-blog-card>a{display:block;background:#fff}.fepai-blog-card img{width:100%;height:255px;object-fit:cover;display:block}
.fepai-blog-card-body{padding:25px 25px 28px;display:flex;flex-direction:column;flex:1}.fepai-blog-card h3{font-size:21px;line-height:1.25;margin:0 0 18px;text-transform:none}.fepai-blog-card h3 a{color:#0672aa;text-decoration:none}.fepai-blog-card p{font-size:16px;line-height:1.65;margin:0 0 25px}.fepai-blog-read{margin-top:auto;color:#078648;font-weight:700;text-decoration:none;font-size:14px;letter-spacing:.03em}
.fepai-blog-article{max-width:920px;margin:0 auto;padding:55px 30px 85px;background:#fff}.fepai-blog-back{display:inline-block;margin-bottom:25px;color:#078648;font-weight:700;text-decoration:none}.fepai-blog-article-meta{font-size:14px;color:#777;margin-bottom:10px}.fepai-blog-article h2{font-size:38px;text-transform:none;line-height:1.18;margin:0 0 28px}.fepai-blog-feature{width:100%;max-height:520px;object-fit:contain;background:#f5f5f5;margin-bottom:32px}.fepai-blog-article-content{font-size:17px;line-height:1.75}.fepai-blog-article-content p{margin:0 0 20px}.fepai-blog-article-content img{max-width:100%;height:auto;display:block;margin:28px auto}.fepai-blog-article-content figure{margin:30px 0}.fepai-blog-article-content a{color:#0672aa}
@media(max-width:900px){.fepai-blog-grid{grid-template-columns:1fr 1fr}.fepai-blog-hero{min-height:340px}.fepai-blog-hero h1{font-size:50px}}
@media(max-width:640px){.fepai-blog-grid{grid-template-columns:1fr}.fepai-blog-wrap{padding:35px 18px 60px}.fepai-blog-heading h2{font-size:27px}.fepai-blog-hero{min-height:280px}.fepai-blog-hero h1{font-size:42px}.fepai-blog-card img{height:auto;max-height:300px}.fepai-blog-article{padding:38px 20px 60px}.fepai-blog-article h2{font-size:29px}}
