/* Paginas interiores de odojos.com: organizaciones, grados por arte marcial y
 * preguntas frecuentes. Reutiliza la cabecera, los botones y el pie de
 * style.css; aqui solo va lo propio de estas paginas. */

.top .header .logo_wrapper a{display:inline-block;line-height:0}

/* Cabecera de pagina */
.pag-hero{margin-top:70px;background:#1f2933 url(../../img/banner-2.jpg) center/cover no-repeat;color:#fff;position:relative}
.pag-hero::before{content:"";position:absolute;inset:0;background:rgba(18,24,31,.78)}
.pag-hero .pag-ancho{position:relative;padding-top:56px;padding-bottom:56px}
.pag-hero h1{font-size:2.6rem;line-height:1.15;margin:0 0 16px;max-width:22ch;text-wrap:balance}
.pag-hero p.pag-entradilla{font-size:1.25rem;line-height:1.55;max-width:60ch;color:#e3e8ee;margin:0 0 24px}
.pag-hero .pag-migas{font-size:.95rem;margin:0 0 14px;color:#b9c3cd}
.pag-hero .pag-migas a{color:#b9c3cd;text-decoration:underline}
.pag-hero .pag-migas a:hover{color:#fff}
@media (max-width:1280px){.pag-hero{margin-top:90px}}
@media (max-width:600px){.pag-hero h1{font-size:2rem}.pag-hero p.pag-entradilla{font-size:1.1rem}}

/* Contenedor y secciones */
.pag-ancho{max-width:1040px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.pag-seccion{padding:48px 0;background:#fff}
.pag-seccion.oscura{background:#11161c;color:#e3e8ee}
.pag-seccion.gris{background:#f3f5f7}
.pag-seccion h2{font-size:1.9rem;line-height:1.2;margin:0 0 20px;padding-bottom:8px;border-bottom:2px solid #3498db;display:inline-block;text-wrap:balance}
.pag-seccion h3{font-size:1.3rem;margin:0 0 8px;color:inherit}
.pag-seccion p,.pag-seccion li{font-size:1.1rem;line-height:1.65}
.pag-seccion p{max-width:70ch;margin:0 0 14px}
.pag-seccion.oscura a{color:#7fc1ee}
.pag-seccion.oscura a.btn,.pag-hero a.btn{color:#fff}
.pag-lead{font-size:1.2rem !important}

/* Rejilla de tarjetas con icono */
.pag-rejilla{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-top:12px}
.pag-item{min-width:0}
@media (min-width:700px){.pag-rejilla.dos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pag-item .fa-stack{color:#3498db;font-size:22pt}
.pag-item h3{margin-top:6px}
.pag-item p{font-size:1.02rem;margin:0}

/* Pasos numerados (solo donde el orden es real) */
.pag-pasos{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:18px;counter-reset:paso}
.pag-pasos li{counter-increment:paso;display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}
.pag-pasos li::before{content:counter(paso);width:44px;height:44px;border-radius:50%;background:#2980b9;color:#fff;font-weight:700;font-size:1.2rem;display:flex;align-items:center;justify-content:center}
.pag-pasos li strong{display:block;font-size:1.15rem}

/* Botonera */
.pag-botones{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.pag-botones .btn{font-size:1.15rem;padding:10px 18px;text-decoration:none}
.pag-botones .btn i{margin-right:6px}
.pag-botones .btn.secundario{background:transparent;border:2px solid currentColor;color:inherit}
.pag-botones .btn.secundario:hover{background:rgba(255,255,255,.12)}
.pag-seccion:not(.oscura) .pag-botones .btn.secundario{color:#2980b9}
.pag-seccion:not(.oscura) .pag-botones .btn.secundario:hover{background:#eaf3fa}

/* Bloque de origen (Seito) */
.pag-origen{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;border-left:4px solid #76bc1c;padding:4px 0 4px 20px}
.pag-origen .pag-origen-sello{width:96px;height:96px;border-radius:50%;background:#1f2933;color:#fff;display:flex;align-items:center;justify-content:center;font-size:2.4rem}
.pag-origen p{margin:0}
.pag-cita{margin:18px 0 0;padding:0;font-size:1.2rem;font-style:italic;max-width:62ch}
.pag-cita footer{font-style:normal;font-size:1rem;margin-top:6px;color:#6b7785}
@media (max-width:600px){.pag-origen{grid-template-columns:1fr}.pag-origen .pag-origen-sello{width:64px;height:64px;font-size:1.6rem}}

/* Tabla de datos de un grado */
.pag-tabla-envoltura{overflow-x:auto;margin:16px 0 8px}
.pag-tabla{border-collapse:collapse;width:100%;font-size:1.02rem}
.pag-tabla th,.pag-tabla td{text-align:left;padding:10px 12px;border-bottom:1px solid #dde3e9;vertical-align:top}
.pag-tabla th{background:#f3f5f7;font-weight:700}
.pag-tabla td:first-child{font-weight:700}
@media (min-width:601px){.pag-tabla td:first-child{white-space:nowrap}}
@media (max-width:600px){.pag-tabla{font-size:.95rem}.pag-tabla th,.pag-tabla td{padding:8px 6px}}

/* Tira de cinturones (ilustrativa) */
.pag-cinturones{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 6px;padding:0;list-style:none}
.pag-cinturones li{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.9rem !important;line-height:1.2 !important;width:78px;text-align:center}
.pag-cinturones li span{display:block;width:70px;height:14px;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.25)}
.pag-nota{font-size:.98rem !important;color:#6b7785}
.pag-seccion.oscura .pag-nota{color:#a9b4c0}

/* Lista de artes */
.pag-artes{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px}
.pag-arte{display:block;border:1px solid #dde3e9;border-radius:6px;padding:18px;color:inherit;text-decoration:none;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}
.pag-arte:hover,.pag-arte:focus{border-color:#2980b9;box-shadow:0 2px 10px rgba(41,128,185,.18);text-decoration:none;color:inherit}
.pag-arte strong{display:block;font-size:1.3rem;color:#1e4483;margin-bottom:4px}
.pag-arte span{font-size:1rem;color:#56616d}

/* Preguntas frecuentes */
.pag-faq{max-width:820px}
.pag-faq details{border-bottom:1px solid #dde3e9;padding:14px 0}
.pag-faq summary{cursor:pointer;font-size:1.2rem;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:16px}
.pag-faq summary::-webkit-details-marker{display:none}
.pag-faq summary::after{content:"+";color:#2980b9;font-size:1.5rem;line-height:1;flex:none}
.pag-faq details[open] summary::after{content:"\2212"}
.pag-faq details p{margin:10px 0 0}
.pag-faq h3.pag-faq-grupo{margin:32px 0 4px;font-size:1.15rem;text-transform:uppercase;letter-spacing:.06em;color:#6b7785}

/* Enlaces del pie */
.site-footer-links a[aria-current="page"]{color:#fff}

a:focus-visible,.btn:focus-visible,summary:focus-visible{outline:2px solid #3498db;outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important}}

/* Bloque de precios compartido con la portada (parciales/precios.html) */
.features-price.pag-precios{min-height:0;height:auto;padding:8px 0 0;background:transparent}
.pag-seccion.gris .features-price.pag-precios .grid-items .grid-col .package-contents{background:#fff}
.features-price.pag-precios .info{font-size:1rem !important;line-height:1.7 !important;margin-top:12px}
.pag-seccion .features-price.pag-precios p.planes-incluyen-titulo{max-width:none;margin-left:auto;margin-right:auto}

/* Frase destacada (p. ej. en "Quién está detrás") */
.pag-destacado{margin:26px 0 28px;padding:6px 0 6px 22px;border-left:4px solid #76bc1c}
.pag-seccion .pag-destacado p{font-size:1.45rem;line-height:1.4;font-weight:700;color:#1e4483;margin:0;max-width:36em;text-wrap:balance}
@media (max-width:600px){.pag-seccion .pag-destacado p{font-size:1.25rem}}

/* Bloque de contacto compartido con la portada (parciales/contacto.html) */
.features-contacto.pag-contacto{max-width:1040px;margin:28px auto 0;padding:0 max(0px,env(safe-area-inset-right,0px)) 0 max(0px,env(safe-area-inset-left,0px))}
.features-contacto.pag-contacto .metodos-rows{padding:0 20px}
.features-contacto.pag-contacto .horarios h3{font-size:1.3rem;margin:4px 0 6px}
