/* Páginas interiores. Sistema compartido de secciones, cabeceras y recursos.
   Paleta centralizada en :root de site.css; sin estilos del CRM. */
.sv-interior { --sv-interior-space:64px; }
.sv-interior .sv-section { padding-block:var(--sv-interior-space); }
.sv-tone-surface { background:var(--sv-surface); }
.sv-tone-pale { background:var(--sv-pale); }
.sv-tone-navy { background:var(--sv-navy); color:white; }
.sv-tone-navy h2,.sv-tone-navy h3 { color:white; }
.sv-tone-navy .sv-eyebrow { color:var(--sv-pale); }
.sv-tone-navy .sv-text-link { color:white; border-color:#FFFFFF66; }
.sv-interior h2 { max-width:850px; }
.sv-interior .sv-page-hero-split { display:block; padding:48px 0; min-height:0; border:0; background:var(--sv-surface); }
.sv-interior .sv-page-hero-split::after { display:none; }
.sv-interior .sv-page-hero-inner { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:64px; }
.sv-interior .sv-page-hero-copy { max-width:none; }
.sv-interior .sv-page-hero h1 { font-size:clamp(34px,3.4vw,48px); line-height:1.25; letter-spacing:-1.6px; }
.sv-interior .sv-page-intro { margin:20px 0 26px; font-size:16px; max-width:560px; line-height:1.75; }
.sv-interior .sv-breadcrumbs { margin-bottom:22px; }
.sv-interior .sv-page-hero-media { margin:0; overflow:hidden; border-radius:8px; background:var(--sv-pale); }
.sv-interior .sv-page-hero-split .sv-page-hero-image { position:static; width:100%; height:340px; object-fit:cover; object-position:center; filter:none; transform:none; }
.sv-interior .sv-hero-actions { display:flex; flex-direction:row; flex-wrap:wrap; justify-content:flex-start; align-items:center; gap:18px 24px; }
.sv-interior .sv-detail-grid { grid-template-columns:1.1fr 1fr; gap:64px; }
.sv-interior .sv-detail-copy h2 { margin-bottom:20px; }
.sv-interior .sv-detail-copy > p { font-size:15px; line-height:1.8; margin-bottom:16px; max-width:600px; }
.sv-interior .sv-detail-card { padding:28px; background:var(--sv-surface); border-color:transparent; }
.sv-interior .sv-detail-card h3 { margin-bottom:16px; }
.sv-interior .sv-check-list li { font-size:14px; padding-block:13px; }
.sv-interior .sv-blog-section-grid { align-items:center; }
.sv-blog-article .sv-detail-copy h2,
.sv-blog-help h2 { font-size:clamp(28px,3vw,40px); line-height:1.2; letter-spacing:-.75px; }
.sv-blog-article .sv-detail-copy > p,
.sv-blog-help .sv-detail-copy > p { font-size:16px; }
.sv-blog-photo img { display:block; width:100%; height:clamp(240px,30vw,350px); object-fit:cover; }
.sv-blog-portrait img { object-position:center 38%; }
.sv-blog-help .sv-detail-copy > p .sv-text-link { display:inline; padding:0; font-size:inherit; }
.sv-blog-help .sv-hero-actions { margin-top:24px; }
.sv-blog-sources { padding-block:24px 32px; }
.sv-blog-sources h2 { font-size:22px; margin-bottom:12px; }
.sv-blog-sources ul { display:flex; flex-wrap:wrap; gap:12px 24px; list-style:none; margin:0; padding:0; }
@media (min-width:681px) {
 .sv-blog-section-reverse .sv-blog-photo { grid-column:1; grid-row:1; }
 .sv-blog-section-reverse .sv-detail-copy { grid-column:2; grid-row:1; }
}
.sv-interior .sv-service-card-visual { min-height:0; }
.sv-interior .sv-service-card-visual h3 { max-width:none; }
.sv-interior .sv-service-card-visual p { font-size:14px; line-height:1.7; }
.sv-interior .sv-card-top span { color:var(--sv-accent); }
.sv-interior .sv-services-grid { gap:22px; }
.sv-interior .sv-regularization-feature { align-items:center; justify-content:flex-start; padding:0; gap:30px; margin-top:28px; background:var(--sv-surface); overflow:hidden; }
.sv-interior .sv-regularization-feature > img { width:230px; height:165px; object-fit:cover; flex-shrink:0; }
.sv-interior .sv-regularization-feature .sv-regularization-copy { padding:20px 24px 20px 0; }
.sv-interior .sv-regularization-feature h3 { font-size:22px; }
.sv-interior .sv-regularization-feature .sv-text-link { margin-top:13px; }
.sv-interior .sv-service-cases { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:22px; margin-top:28px; }
.sv-interior .sv-service-case { overflow:hidden; border:1px solid var(--sv-sand-line); background:var(--sv-white); border-radius:7px; }
.sv-service-case-image { display:block; width:100%; height:170px; object-fit:cover; object-position:center; background:var(--sv-surface); }
.sv-service-case-copy { padding:22px 24px 24px; }
.sv-interior .sv-service-case-copy > span { display:block; color:var(--sv-accent); font-size:11px; letter-spacing:1px; margin-bottom:14px; }
.sv-interior .sv-service-case h3 { font-size:20px; margin-bottom:10px; }
.sv-interior .sv-service-case p { color:var(--sv-muted); font-size:14px; line-height:1.75; }
.sv-interior .sv-service-faq { background:var(--sv-surface); }
.sv-interior .sv-faq { padding-top:var(--sv-interior-space); }
.sv-interior .sv-faq-grid { gap:28px; }
.sv-interior .sv-faq-list { max-width:1030px; }
.sv-interior .sv-faq-list summary { padding-block:18px; }
.sv-interior .sv-faq-copy h2 { max-width:700px; }
.sv-interior .sv-faq-copy > p { max-width:650px; }
.sv-interior .sv-related-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:28px 0 24px; }
.sv-related-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid var(--sv-line); border-radius:7px; background:var(--sv-white); transition:background .2s,border-color .2s; }
.sv-related-card:hover { background:var(--sv-surface); border-color:var(--sv-accent); }
.sv-related-card-image { display:block; flex-shrink:0; overflow:hidden; background:var(--sv-surface); }
.sv-related-card-image img { width:100%; height:168px; object-fit:cover; object-position:center; }
.sv-related-card-copy { display:flex; flex-direction:column; justify-content:space-between; flex:1; min-width:0; gap:14px; padding:18px 20px; }
.sv-interior .sv-related-card h3 { margin:0; font-family:var(--sv-sans); font-size:16px; font-weight:700; line-height:1.5; letter-spacing:0; overflow-wrap:anywhere; }
.sv-related-card-more { display:flex; align-items:center; justify-content:space-between; gap:14px; font-size:12px; font-weight:700; color:var(--sv-blue); }
.sv-related-card-more > .sv-icon { width:16px; height:16px; color:var(--sv-accent); }
.sv-interior .sv-values-grid { margin-top:28px; }
.sv-interior .sv-value { padding:25px; border:0; }
@media (max-width:1150px) {
 .sv-interior .sv-page-hero-inner, .sv-interior .sv-detail-grid { gap:40px; }
 .sv-interior .sv-page-hero-split .sv-page-hero-image { height:330px; }
 .sv-interior .sv-services-grid { gap:18px; }
}
@media (max-width:950px) {
 .sv-interior { --sv-interior-space:54px; }
 .sv-interior .sv-page-hero-inner { gap:30px; }
 .sv-interior .sv-page-hero h1 { font-size:35px; }
 .sv-interior .sv-page-intro { font-size:15px; }
 .sv-interior .sv-page-hero-split .sv-page-hero-image { height:330px; }
 .sv-interior .sv-values-grid { gap:16px; }
 .sv-interior .sv-related-links { gap:18px; }
 .sv-interior .sv-regularization-feature > img { width:190px; height:190px; }
}
@media (max-width:680px) {
 .sv-blog-photo img { height:220px; }
 .sv-interior { --sv-interior-space:44px; }
 .sv-interior .sv-page-hero-split { padding:28px 0 36px; }
 .sv-interior .sv-page-hero-inner { grid-template-columns:1fr; gap:28px; }
 .sv-interior .sv-page-hero h1 { font-size:clamp(30px,8.1vw,38px); letter-spacing:-1px; }
 .sv-interior .sv-page-intro { margin:17px 0 22px; }
 .sv-interior .sv-breadcrumbs { margin-bottom:20px; }
 .sv-interior .sv-detail-grid { grid-template-columns:1fr; gap:28px; }
 .sv-interior .sv-detail-card { padding:24px; }
 .sv-interior .sv-services-grid { grid-template-columns:1fr; gap:22px; }
 .sv-interior .sv-regularization-feature { flex-direction:column; align-items:stretch; gap:0; }
 .sv-interior .sv-regularization-feature > img { width:100%; height:180px; }
 .sv-interior .sv-regularization-feature .sv-regularization-copy { padding:24px; }
 .sv-interior .sv-service-cases { grid-template-columns:1fr; gap:16px; }
 .sv-service-case-image { height:auto; aspect-ratio:16 / 9; }
 .sv-service-case-copy { padding:21px 22px 23px; }
 .sv-interior .sv-related-links { grid-template-columns:1fr; gap:14px; margin-top:22px; }
 .sv-related-card { display:grid; grid-template-columns:104px minmax(0,1fr); min-height:106px; }
 .sv-related-card-image { min-height:106px; height:100%; }
 .sv-related-card-image img { height:100%; min-height:106px; }
 .sv-related-card-copy { gap:10px; padding:15px 16px; }
 .sv-interior .sv-related-card h3 { font-size:15px; }
 .sv-interior .sv-values-grid { grid-template-columns:1fr; gap:16px; }
}
