/* Páginas internas — Abogadas Asociadas AA */
.inner-nav { background: rgba(255,255,255,.96); }
.inner-nav .nav-menu { gap: 1.1rem; }
.inner-nav .nav-link { font-size: .8rem; }

.page-hero {
    position: relative;
    padding: 10rem 0 5.5rem;
    overflow: hidden;
    background: linear-gradient(135deg, #fff 0%, #fbf4f2 52%, #f6e8e5 100%);
}
.page-hero::before { content:""; position:absolute; width:420px; height:420px; top:-180px; right:-80px; border-radius:50%; border:1px solid rgba(193,18,31,.14); box-shadow:0 0 0 55px rgba(193,18,31,.025),0 0 0 110px rgba(193,18,31,.02); }
.page-hero .container { position:relative; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:4.5rem; align-items:center; }
.breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; margin-bottom:1.5rem; color:#6f6262; font-size:.78rem; font-weight:600; }
.breadcrumb a:hover { color:var(--color-primary); }
.breadcrumb i { font-size:.55rem; }
.page-kicker { display:inline-flex; align-items:center; gap:.55rem; margin-bottom:1.2rem; color:var(--color-primary); font-size:.78rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.page-hero h1 { max-width:760px; margin-bottom:1.4rem; font-size:clamp(2.8rem,5vw,4.8rem); line-height:1.03; letter-spacing:-.035em; }
.page-hero h1 em { color:var(--color-primary); }
.page-lead { max-width:680px; margin-bottom:2rem; color:#574c4c; font-size:1.12rem; line-height:1.8; }
.hero-points { display:grid; gap:.7rem; margin:1.8rem 0 2.2rem; }
.hero-points li { display:flex; align-items:center; gap:.7rem; color:#332b2b; font-size:.93rem; }
.hero-points i { color:var(--color-primary); }
.page-hero-actions { display:flex; flex-wrap:wrap; gap:.9rem; }
.page-hero-media { position:relative; }
.page-hero-media img { width:100%; min-height:520px; max-height:620px; object-fit:cover; border-radius:30px 30px 110px 30px; box-shadow:0 30px 80px rgba(69,31,31,.2); }
.page-hero-proof { position:absolute; left:-2rem; bottom:2rem; width:210px; padding:1.25rem; border:1px solid rgba(193,18,31,.1); border-radius:18px; background:rgba(255,255,255,.96); box-shadow:0 18px 45px rgba(50,20,20,.16); }
.page-hero-proof strong { display:block; color:var(--color-primary); font-family:var(--font-display); font-size:1.8rem; }
.page-hero-proof span { color:#625757; font-size:.75rem; line-height:1.4; }

.trust-strip { background:#8b0d16; color:#fff; }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.trust-item { display:flex; align-items:center; justify-content:center; gap:.75rem; padding:1.25rem; border-right:1px solid rgba(255,255,255,.14); font-size:.82rem; font-weight:600; text-align:center; }
.trust-item:last-child { border-right:0; }
.trust-item i { color:#e4c56a; }

.content-section { padding:6rem 0; background:var(--bg-primary); }
.content-section.alt { background:#f7f3f2; }
.section-intro { max-width:780px; margin:0 auto 3rem; text-align:center; }
.section-intro .section-title { margin-bottom:1rem; }
.section-intro p { color:#675b5b; line-height:1.8; }
.info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.3rem; }
.info-card { padding:2rem; border:1px solid rgba(139,13,22,.12); border-radius:22px; background:#fff; box-shadow:0 15px 45px rgba(55,25,25,.07); }
.info-card .icon { display:grid; width:52px; height:52px; margin-bottom:1.4rem; border-radius:15px; background:rgba(193,18,31,.09); color:var(--color-primary); font-size:1.25rem; place-items:center; }
.info-card h3 { margin-bottom:.7rem; font-size:1.18rem; }
.info-card p { color:#6c6060; font-size:.91rem; line-height:1.72; }

.split-content { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:4rem; align-items:start; }
.split-sticky { position:sticky; top:120px; }
.split-sticky h2 { margin:.65rem 0 1rem; font-size:clamp(2rem,4vw,3.2rem); }
.split-sticky p { color:#675b5b; line-height:1.8; }
.checklist { display:grid; gap:1rem; }
.check-item { display:grid; grid-template-columns:42px 1fr; gap:1rem; padding:1.35rem; border:1px solid rgba(139,13,22,.12); border-radius:18px; background:#fff; }
.check-item > span { display:grid; width:38px; height:38px; border-radius:50%; background:#8b0d16; color:#fff; font-size:.75rem; font-weight:700; place-items:center; }
.check-item strong { display:block; margin-bottom:.3rem; }
.check-item p { color:#706464; font-size:.88rem; line-height:1.6; }

.legal-note { margin-top:2rem; padding:1.2rem 1.4rem; border-left:4px solid var(--color-gold); border-radius:0 14px 14px 0; background:#fff9e9; color:#5d5032; font-size:.82rem; line-height:1.65; }
.source-note { margin-top:2rem; color:#756969; font-size:.76rem; line-height:1.6; }
.source-note a { color:var(--color-primary); text-decoration:underline; }

.faq-mini { max-width:860px; margin:0 auto; }
.faq-mini details { margin-bottom:.8rem; border:1px solid rgba(139,13,22,.12); border-radius:16px; background:#fff; }
.faq-mini summary { position:relative; padding:1.35rem 3.5rem 1.35rem 1.4rem; cursor:pointer; color:#2b2525; font-weight:700; list-style:none; }
.faq-mini summary::-webkit-details-marker { display:none; }
.faq-mini summary::after { content:"+"; position:absolute; right:1.4rem; top:50%; color:var(--color-primary); font-size:1.5rem; transform:translateY(-50%); }
.faq-mini details[open] summary::after { content:"−"; }
.faq-mini details p { padding:0 1.4rem 1.4rem; color:#6c6060; line-height:1.75; }

.page-cta { padding:5.5rem 0; background:linear-gradient(135deg,#760b13,#c1121f); color:#fff; }
.page-cta .container { display:flex; align-items:center; justify-content:space-between; gap:3rem; }
.page-cta h2 { max-width:720px; margin-bottom:.7rem; color:#fff; font-size:clamp(2rem,4vw,3.4rem); }
.page-cta p { color:rgba(255,255,255,.78); }
.page-cta .btn { flex:0 0 auto; background:#fff; color:#8b0d16; }

.contact-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:2rem; }
.contact-panel { padding:2.25rem; border-radius:24px; background:#8b0d16; color:#fff; }
.contact-panel h2 { margin-bottom:1rem; color:#fff; font-size:2rem; }
.contact-panel > p { color:rgba(255,255,255,.78); line-height:1.75; }
.contact-list { display:grid; gap:1rem; margin-top:2rem; }
.contact-list a,.contact-list div { display:grid; grid-template-columns:42px 1fr; gap:.8rem; align-items:center; padding:1rem; border-radius:14px; background:rgba(255,255,255,.09); }
.contact-list i { color:#e4c56a; font-size:1.1rem; text-align:center; }
.contact-list small { display:block; color:rgba(255,255,255,.65); }
.office-list { display:grid; gap:1rem; }
.office-mini { padding:2rem; border:1px solid rgba(139,13,22,.12); border-radius:22px; background:#fff; box-shadow:0 14px 40px rgba(55,25,25,.07); }
.office-mini h3 { margin-bottom:.7rem; color:var(--color-primary); font-size:1.25rem; }
.office-mini p { color:#655a5a; line-height:1.7; }
.office-mini .hours { margin-top:1rem; padding-top:1rem; border-top:1px solid #eee4e2; font-size:.85rem; }

.inner-footer .footer-content { align-items:flex-start; }
.footer-nav { display:flex; flex-wrap:wrap; gap:1rem; font-size:.8rem; }
.footer-nav a:hover { color:var(--color-primary); }

.social-follow { padding:2.2rem 0; border-top:1px solid rgba(139,13,22,.12); background:#f7f3f2; }
.social-follow .container { display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.social-follow h2 { font-size:1.45rem; }
.social-follow .social-eyebrow { margin-bottom:.35rem; text-align:left; }
.social-follow .social-link { background:#fff; color:#8b0d16; border:1px solid rgba(139,13,22,.16); }

@media (max-width:992px) {
    .page-hero .container,.split-content,.contact-layout { grid-template-columns:1fr; }
    .page-hero-media { max-width:680px; }
    .info-grid { grid-template-columns:1fr 1fr; }
    .split-sticky { position:static; }
    .trust-grid { grid-template-columns:1fr 1fr; }
    .trust-item:nth-child(2) { border-right:0; }
    .page-cta .container { align-items:flex-start; flex-direction:column; }
}

@media (max-width:768px) {
    .page-hero { padding:8.5rem 0 4rem; }
    .page-hero .container { gap:2.5rem; }
    .page-hero h1 { font-size:2.55rem; }
    .page-lead { font-size:1rem; }
    .page-hero-media img { min-height:370px; border-radius:24px 24px 70px 24px; }
    .page-hero-proof { left:1rem; bottom:1rem; }
    .info-grid,.trust-grid { grid-template-columns:1fr; }
    .trust-item { border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
    .content-section { padding:4.25rem 0; }
    .page-cta { padding:4rem 0; }
    .page-hero-actions .btn,.page-cta .btn { width:100%; text-align:center; }
    .social-follow .container { align-items:flex-start; flex-direction:column; }
}
