/* Fichas individuales de invitados · alcance deliberadamente aislado. */
.speaker-page{--sp-accent:#ed2939;--sp-ink:#061a31;--sp-blue:#173f91;--sp-soft:#eef3f7;--sp-gold:#f5c64e;background:#fff;color:var(--sp-ink)}
.speaker-page.sp-fantasy{--sp-accent:#8e54c7;--sp-blue:#5c3292;--sp-gold:#efc66e}
.speaker-page.sp-maker{--sp-accent:#17a8a4;--sp-blue:#087974;--sp-gold:#ffd55f}
.speaker-page.sp-airbrush{--sp-accent:#2f6bd8;--sp-blue:#174caa;--sp-gold:#f5c64e}
.speaker-page .sp-hero{position:relative;isolation:isolate;overflow:hidden;padding:72px 0 78px;background:radial-gradient(circle at 86% 14%,color-mix(in srgb,var(--sp-accent) 32%,transparent),transparent 30%),linear-gradient(122deg,#06172c 0%,#0a2b4c 64%,#071b32 100%);color:#fff}
.speaker-page .sp-hero::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,#000,transparent 84%)}
.speaker-page .sp-hero::after{content:"MODEL UP! 2026";position:absolute;z-index:-1;right:-.025em;bottom:-.2em;color:rgba(255,255,255,.032);font-size:clamp(5rem,14vw,13rem);font-weight:950;letter-spacing:-.08em;white-space:nowrap}
.speaker-page .sp-hero-grid{display:grid;grid-template-columns:minmax(280px,410px) 1fr;gap:clamp(34px,6vw,82px);align-items:center}
.speaker-page .sp-portrait-frame{position:relative;overflow:hidden;min-height:500px;aspect-ratio:4/5;border:1px solid rgba(255,255,255,.2);border-radius:26px;background:#e8edf2;box-shadow:0 28px 70px rgba(0,0,0,.32)}
.speaker-page .sp-portrait-frame::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.38);border-radius:18px;pointer-events:none}
.speaker-page .sp-portrait-frame>img{display:block;width:100%;height:100%;object-fit:cover}
.speaker-page .sp-portrait-frame.sp-contain>img{object-fit:contain;background:#f4f3ee}
.speaker-page .sp-shot{width:100%;height:100%;background-repeat:no-repeat;background-color:#e8edf2}
.speaker-page .sp-pending{display:grid;place-items:center;width:100%;height:100%;padding:28px;text-align:center;background:radial-gradient(circle at 50% 32%,rgba(255,255,255,.95),transparent 19%),repeating-linear-gradient(0deg,transparent 0 32px,rgba(7,27,51,.045) 33px),repeating-linear-gradient(90deg,transparent 0 32px,rgba(7,27,51,.045) 33px),linear-gradient(145deg,#f3f1e9,#dfe7ed);color:#173653}
.speaker-page .sp-pending-inner{display:grid;justify-items:center;gap:14px}
.speaker-page .sp-pending-mark{display:grid;place-items:center;width:150px;height:150px;border:2px solid currentColor;border-radius:50%;font-size:3rem;font-weight:950;letter-spacing:-.08em;box-shadow:0 0 0 16px rgba(23,54,83,.06)}
.speaker-page .sp-pending strong{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase}
.speaker-page .sp-kicker{display:inline-flex;align-items:center;gap:9px;margin-bottom:16px;color:var(--sp-gold);font-size:.7rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.speaker-page .sp-kicker::before{content:"";width:38px;height:3px;background:var(--sp-accent)}
.speaker-page .sp-country-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.speaker-page .sp-country{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);color:#fff;font-size:.72rem;font-weight:900;backdrop-filter:blur(7px)}
.speaker-page .sp-country img{width:25px;height:17px;object-fit:cover;border-radius:2px}
.speaker-page .sp-hero h1{max-width:940px;margin:0 0 22px;color:#fff;font-size:clamp(3rem,6.2vw,6.4rem);line-height:.86;letter-spacing:-.065em;text-transform:uppercase}
.speaker-page .sp-role{max-width:840px;margin:0 0 16px;color:#fff;font-size:clamp(1.08rem,2vw,1.45rem);font-weight:850;line-height:1.35}
.speaker-page .sp-intro{max-width:840px;margin:0;color:#cbd8e5;font-size:1.02rem;line-height:1.68}
.speaker-page .sp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.speaker-page .sp-actions .btn{border-color:rgba(255,255,255,.32)}
.speaker-page .sp-actions .btn:first-child{background:var(--sp-accent);border-color:var(--sp-accent);color:#fff}
.speaker-page .sp-note{margin:18px 0 0;color:#aebed0;font-size:.78rem;font-style:italic}
.speaker-page .sp-section{position:relative;overflow:hidden;padding:82px 0}
.speaker-page .sp-section.sp-soft{background:linear-gradient(180deg,#f4f7f9,#eaf0f5)}
.speaker-page .sp-section.sp-dark{background:radial-gradient(circle at 8% 88%,color-mix(in srgb,var(--sp-accent) 18%,transparent),transparent 27%),linear-gradient(122deg,#06172c,#0a2a49);color:#fff}
.speaker-page .sp-section.sp-grid-bg{background:linear-gradient(rgba(7,27,51,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(7,27,51,.035) 1px,transparent 1px),#fff;background-size:32px 32px}
.speaker-page .sp-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:40px;align-items:end;margin-bottom:34px}
.speaker-page .sp-section-head.sp-single{grid-template-columns:1fr}
.speaker-page .sp-eyebrow{display:block;margin-bottom:11px;color:var(--sp-accent);font-size:.69rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.speaker-page .sp-section h2{max-width:940px;margin:0;color:var(--sp-ink);font-size:clamp(2.35rem,5vw,5.2rem);line-height:.9;letter-spacing:-.055em;text-transform:uppercase}
.speaker-page .sp-dark h2,.speaker-page .sp-dark h3{color:#fff}
.speaker-page .sp-section-head p{margin:0;color:#5a6d80;line-height:1.65}
.speaker-page .sp-dark .sp-section-head p{color:#c6d3df}
.speaker-page .sp-profile-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:clamp(34px,6vw,78px);align-items:start}
.speaker-page .sp-copy{font-size:1.03rem;line-height:1.78}
.speaker-page .sp-copy p{margin:0 0 1.2em;color:#20384e}
.speaker-page .sp-copy h3{margin:2.3em 0 .8em;color:var(--sp-blue);font-size:1.6rem;text-transform:uppercase}
.speaker-page .sp-expertise{position:sticky;top:105px;padding:26px;border:1px solid #d5dfe8;border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 18px 45px rgba(7,27,51,.08)}
.speaker-page .sp-expertise h3{margin:0 0 18px;color:var(--sp-blue);font-size:1.3rem;text-transform:uppercase}
.speaker-page .sp-tag-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.speaker-page .sp-tag{display:flex;align-items:center;min-height:48px;padding:10px 12px;border:1px solid #c7d5e3;border-radius:9px;background:#fff;color:#123e79;font-size:.77rem;font-weight:850}
.speaker-page .sp-tag::before{content:"";flex:0 0 7px;width:7px;height:7px;margin-right:9px;border-radius:50%;background:var(--sp-accent)}
.speaker-page .sp-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.speaker-page .sp-feature{position:relative;display:flex;min-height:100%;flex-direction:column;overflow:hidden;border:1px solid #d4dee8;border-radius:18px;background:#fff;box-shadow:0 15px 35px rgba(7,27,51,.065);transition:transform .24s ease,box-shadow .24s ease}
.speaker-page .sp-feature:hover{transform:translateY(-5px);box-shadow:0 22px 46px rgba(7,27,51,.13)}
.speaker-page .sp-feature-media{position:relative;overflow:hidden;aspect-ratio:16/10;background:linear-gradient(135deg,#d8e1e9,#f3f5f7)}
.speaker-page .sp-feature-media img,.speaker-page .sp-feature-media .sp-shot{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.speaker-page .sp-feature:hover .sp-feature-media img,.speaker-page .sp-feature:hover .sp-feature-media .sp-shot{transform:scale(1.025)}
.speaker-page .sp-feature-body{display:flex;flex:1;flex-direction:column;padding:21px}
.speaker-page .sp-feature-index{display:block;margin-bottom:8px;color:var(--sp-accent);font-size:.68rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.speaker-page .sp-feature h3{margin:0 0 10px;color:var(--sp-blue);font-size:1.13rem;line-height:1.18;text-transform:uppercase}
.speaker-page .sp-feature p{margin:0 0 20px;color:#5a6d80;font-size:.89rem;line-height:1.55}
.speaker-page .sp-feature .sp-card-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:14px;border-top:1px solid #dde5ec;color:var(--sp-blue);font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.speaker-page .sp-feature .sp-card-link::after{content:"↗";color:var(--sp-accent);font-size:1.2rem}
.speaker-page .sp-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.speaker-page .sp-work{overflow:hidden;margin:0;border:1px solid #d0dbe5;border-radius:15px;background:#fff;box-shadow:0 12px 30px rgba(7,27,51,.06)}
.speaker-page .sp-work-media{overflow:hidden;aspect-ratio:16/9;background:#dfe6ec}
.speaker-page .sp-work-media img,.speaker-page .sp-work-media .sp-shot{width:100%;height:100%;object-fit:cover;transition:transform .42s ease}
.speaker-page .sp-work:hover .sp-work-media img,.speaker-page .sp-work:hover .sp-work-media .sp-shot{transform:scale(1.035)}
.speaker-page .sp-work figcaption{padding:15px 16px 17px;border-top:3px solid var(--sp-accent);color:var(--sp-blue);font-size:.88rem;font-weight:950;text-transform:uppercase}
.speaker-page .sp-work figcaption small{display:block;margin-top:5px;color:#6b7b8b;font-size:.72rem;font-weight:500;text-transform:none}
.speaker-page .sp-placeholder-media{display:grid;place-items:center;height:100%;padding:20px;background:repeating-linear-gradient(135deg,#e5e9ed 0 12px,#dce2e7 12px 24px);color:#66798c;font-size:.66rem;font-weight:950;letter-spacing:.12em;text-align:center;text-transform:uppercase}
.speaker-page .sp-portfolio{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:48px;align-items:center}
.speaker-page .sp-portfolio-copy p{color:#c7d4e0;line-height:1.7}
.speaker-page .sp-portfolio-list{display:grid;gap:10px}
.speaker-page .sp-portfolio-link{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:18px;border:1px solid rgba(255,255,255,.18);border-left:4px solid var(--sp-accent);background:rgba(255,255,255,.045);color:#fff}
.speaker-page .sp-portfolio-link b{color:var(--sp-accent);font-size:1.15rem}.speaker-page .sp-portfolio-link span{font-weight:900;text-transform:uppercase}.speaker-page .sp-portfolio-link::after{content:"↗";font-size:1.2rem}
.speaker-page .sp-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.speaker-page .sp-resource{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:19px 20px;border:1px solid #d3dee8;border-radius:14px;background:#fff;color:var(--sp-ink);transition:.2s ease}
.speaker-page .sp-resource:hover{transform:translateY(-2px);border-color:var(--sp-accent);box-shadow:0 12px 28px rgba(7,27,51,.09)}
.speaker-page .sp-resource strong{display:block;color:var(--sp-blue);font-size:.93rem;text-transform:uppercase}.speaker-page .sp-resource small{display:block;margin-top:5px;color:#637588;line-height:1.4}.speaker-page .sp-resource::after{content:"↗";color:var(--sp-accent);font-size:1.3rem}
.speaker-page .sp-milestones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.speaker-page .sp-milestone{padding:22px;border:1px solid #d4dee8;border-radius:15px;background:#fff}.speaker-page .sp-milestone b{display:block;margin-bottom:18px;color:var(--sp-accent);font-size:1.5rem}.speaker-page .sp-milestone strong{display:block;color:var(--sp-blue);font-size:.9rem;text-transform:uppercase}.speaker-page .sp-milestone p{margin:7px 0 0;color:#657689;font-size:.79rem;line-height:1.45}
.speaker-page .sp-thanks{padding:70px 0;background:var(--sp-ink);color:#fff;text-align:center}
.speaker-page .sp-thanks .sp-eyebrow{color:var(--sp-gold)}
.speaker-page .sp-thanks h2{max-width:1000px;margin:0 auto 20px;color:#fff;font-size:clamp(2.25rem,5vw,5rem);line-height:.92;text-transform:uppercase}
.speaker-page .sp-thanks p{max-width:950px;margin:0 auto;color:#c7d3df;line-height:1.72}
.speaker-page .sp-thanks .sp-actions{justify-content:center}
.speaker-page .sp-thanks .sp-actions .btn:first-child{background:#fff;border-color:#fff;color:var(--sp-ink)}

@media(max-width:1040px){
  .speaker-page .sp-hero-grid,.speaker-page .sp-profile-grid,.speaker-page .sp-portfolio{grid-template-columns:1fr}
  .speaker-page .sp-portrait-frame{width:min(100%,430px);min-height:0}
  .speaker-page .sp-expertise{position:static}
  .speaker-page .sp-feature-grid,.speaker-page .sp-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .speaker-page .sp-milestones{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .speaker-page .sp-hero{padding:44px 0 50px}.speaker-page .sp-hero-grid{gap:28px}.speaker-page .sp-portrait-frame{width:min(100%,350px);margin:auto;border-radius:20px}
  .speaker-page .sp-section{padding:58px 0}.speaker-page .sp-section-head{grid-template-columns:1fr;gap:14px}.speaker-page .sp-section h2{font-size:clamp(2.15rem,12vw,3.8rem)}
  .speaker-page .sp-feature-grid,.speaker-page .sp-gallery-grid,.speaker-page .sp-resource-grid{grid-template-columns:1fr}
  .speaker-page .sp-tag-grid{grid-template-columns:1fr}.speaker-page .sp-portfolio{gap:28px}.speaker-page .sp-portfolio-list{min-width:0}
}
@media(max-width:460px){.speaker-page .sp-milestones{grid-template-columns:1fr}.speaker-page .sp-actions .btn{width:100%}.speaker-page .sp-hero h1{font-size:clamp(2.65rem,15vw,4rem)}}
@media(prefers-reduced-motion:reduce){.speaker-page .sp-feature,.speaker-page .sp-feature-media img,.speaker-page .sp-feature-media .sp-shot,.speaker-page .sp-work-media img,.speaker-page .sp-work-media .sp-shot,.speaker-page .sp-resource{transition:none}}

/* Perfiles reconstruidos a partir de las fichas aprobadas de Wix/Word. */
.sp-approved-page{--ap-navy:#071b33;--ap-blue:#123e79;--ap-red:#e0192d;--ap-gold:#f5c64d;--ap-soft:#eef3f7;color:var(--ap-navy);background:#fff}
.sp-approved-page .ap-hero{position:relative;overflow:hidden;padding:clamp(54px,7vw,96px) 0;background:radial-gradient(circle at 8% 18%,rgba(224,25,45,.24),transparent 25%),radial-gradient(circle at 88% 82%,rgba(45,105,166,.28),transparent 31%),linear-gradient(125deg,#041326 0%,#082744 54%,#0b365d 100%);color:#fff}
.sp-approved-page .ap-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,#000,transparent 78%)}
.sp-approved-page .ap-hero-grid{position:relative;display:grid;grid-template-columns:minmax(250px,390px) minmax(0,1fr);gap:clamp(36px,6vw,78px);align-items:center}
.sp-approved-page .ap-portrait{overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(255,255,255,.27);border-radius:28px;background:linear-gradient(145deg,#132f4d,#07182b);box-shadow:0 28px 70px rgba(0,0,0,.34)}
.sp-approved-page .ap-portrait>img{width:100%;height:100%;object-fit:cover;object-position:center}
.sp-approved-page .ap-portrait-pending{display:grid;height:100%;place-content:center;gap:16px;padding:30px;background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 16px,rgba(255,255,255,.075) 16px 32px);text-align:center}
.sp-approved-page .ap-portrait-pending span{font-size:clamp(3.2rem,8vw,6.4rem);font-weight:1000;letter-spacing:-.08em;color:rgba(255,255,255,.16)}
.sp-approved-page .ap-portrait-pending strong{font-size:.72rem;letter-spacing:.16em;color:#d9e5f0}
.sp-approved-page .ap-kicker,.sp-approved-page .ap-label,.sp-approved-page .ap-section-index{margin:0;color:var(--ap-red);font-size:.7rem;font-weight:950;letter-spacing:.16em;text-transform:uppercase}
.sp-approved-page .ap-countries{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.sp-approved-page .ap-countries span{padding:7px 10px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.07);font-size:.72rem;font-weight:900;letter-spacing:.08em}
.sp-approved-page .ap-hero h1{max-width:900px;margin:0 0 20px;font-size:clamp(3rem,6.6vw,6.5rem);line-height:.88;letter-spacing:-.065em;text-transform:uppercase}
.sp-approved-page .ap-role{max-width:880px;margin:0 0 13px;font-size:clamp(1.08rem,2vw,1.42rem);font-weight:850;line-height:1.38}.sp-approved-page .ap-intro{max-width:880px;margin:0;color:#c8d6e4;line-height:1.7}
.sp-approved-page .ap-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.sp-approved-page .ap-actions .btn{border-color:rgba(255,255,255,.3)}.sp-approved-page .ap-note{margin:17px 0 0;color:#aebed0;font-size:.79rem;font-style:italic;line-height:1.55}
.sp-approved-page .ap-section{position:relative;overflow:hidden;padding:clamp(64px,7vw,94px) 0}.sp-approved-page .ap-section-soft{background:linear-gradient(180deg,#f4f7fa,#eaf0f5)}
.sp-approved-page .ap-section-inner{display:grid;grid-template-columns:76px minmax(250px,.55fr) minmax(0,1.25fr);gap:clamp(22px,4vw,56px);align-items:start}
.sp-approved-page .ap-section-index{padding-top:10px;color:var(--ap-red);font-size:1rem}.sp-approved-page .ap-section h2{position:sticky;top:110px;margin:0;color:var(--ap-navy);font-size:clamp(2.2rem,4.6vw,4.9rem);line-height:.91;letter-spacing:-.055em;text-transform:uppercase}
.sp-approved-page .ap-section-body{min-width:0;color:#20384e;font-size:1rem;line-height:1.74}.sp-approved-page .ap-section-body>p:first-child{margin-top:0}.sp-approved-page .ap-section-body p{margin:0 0 1.05em}.sp-approved-page .ap-section-body h3{margin:2.15em 0 .75em;color:var(--ap-blue);font-size:1.32rem;line-height:1.15;text-transform:uppercase}.sp-approved-page .ap-section-body .ap-subtitle{padding-top:18px;border-top:1px solid #cfdbe5}.sp-approved-page .ap-callout-title{padding:22px;border-left:5px solid var(--ap-red);background:var(--ap-navy);color:#fff;border-radius:0 15px 15px 0}
.sp-approved-page .ap-link{display:inline-flex;margin:7px 8px 12px 0;padding:10px 13px;border:1px solid #bfcddd;border-radius:9px;color:var(--ap-blue);font-size:.72rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase;transition:.2s}.sp-approved-page .ap-link:hover{border-color:var(--ap-red);background:#fff;transform:translateY(-2px)}
.sp-approved-page .ap-expertise{margin-top:26px;padding:24px;border:1px solid #cfdae5;border-radius:20px;background:#fff;box-shadow:0 18px 45px rgba(7,27,51,.07)}.sp-approved-page .ap-expertise h3{margin:0 0 16px}.sp-approved-page .ap-expertise>div{display:flex;flex-wrap:wrap;gap:8px}.sp-approved-page .ap-expertise span{padding:9px 11px;border:1px solid #c9d6e2;border-radius:999px;background:#f7f9fb;color:var(--ap-blue);font-size:.76rem;font-weight:850}
.sp-approved-page .ap-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sp-approved-page .ap-card{overflow:hidden;border:1px solid #ced9e4;border-radius:20px;background:#fff;box-shadow:0 15px 38px rgba(7,27,51,.075)}.sp-approved-page .ap-card-media{display:grid;place-items:center;aspect-ratio:16/10;padding:16px;background:linear-gradient(145deg,#dfe7ee,#f5f7f9)}.sp-approved-page .ap-card-media img{width:100%;height:100%;object-fit:contain}.sp-approved-page .ap-media-pending{background:repeating-linear-gradient(135deg,#e5e9ed 0 13px,#dce2e7 13px 26px);color:#607487;font-size:.67rem;font-weight:950;letter-spacing:.12em;text-align:center}.sp-approved-page .ap-card-copy{padding:22px}.sp-approved-page .ap-card-copy h3{margin:0 0 12px;font-size:1.2rem}.sp-approved-page .ap-card-copy p{font-size:.89rem;line-height:1.58}.sp-approved-page .ap-card-copy .ap-link{margin-top:7px}
.sp-approved-page .ap-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sp-approved-page .ap-gallery-item{overflow:hidden;margin:0;border:1px solid #ced9e4;border-radius:18px;background:#fff;box-shadow:0 13px 34px rgba(7,27,51,.07)}.sp-approved-page .ap-gallery-item>a{display:block;overflow:hidden;aspect-ratio:4/3;background:#dfe6ec}.sp-approved-page .ap-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.sp-approved-page .ap-gallery-item:hover img{transform:scale(1.035)}.sp-approved-page .ap-gallery-pending{display:grid;place-items:center;aspect-ratio:4/3;padding:20px;background:repeating-linear-gradient(135deg,#e5e9ed 0 13px,#dce2e7 13px 26px);color:#607487;font-size:.68rem;font-weight:950;letter-spacing:.12em;text-align:center}.sp-approved-page .ap-gallery-item figcaption{padding:16px;border-top:4px solid var(--ap-red)}.sp-approved-page .ap-gallery-link{display:block;color:var(--ap-blue);font-size:.82rem;font-weight:950;text-transform:uppercase}.sp-approved-page .ap-gallery-item small{display:block;margin-top:6px;color:#64778a;line-height:1.45}
.sp-approved-page .ap-thanks{background:radial-gradient(circle at 90% 20%,rgba(224,25,45,.18),transparent 30%),var(--ap-navy);color:#fff}.sp-approved-page .ap-thanks h2,.sp-approved-page .ap-thanks .ap-section-body,.sp-approved-page .ap-thanks .ap-section-body h3{color:#fff}.sp-approved-page .ap-thanks .ap-section-index{color:var(--ap-gold)}.sp-approved-page .ap-thanks .ap-link{border-color:rgba(255,255,255,.35);color:#fff}
@media(max-width:1050px){.sp-approved-page .ap-hero-grid{grid-template-columns:minmax(220px,330px) 1fr}.sp-approved-page .ap-section-inner{grid-template-columns:52px minmax(210px,.48fr) minmax(0,1fr);gap:25px}.sp-approved-page .ap-section h2{position:static}.sp-approved-page .ap-card-grid{grid-template-columns:1fr}}
@media(max-width:780px){.sp-approved-page .ap-hero-grid,.sp-approved-page .ap-section-inner{grid-template-columns:1fr}.sp-approved-page .ap-portrait{width:min(100%,360px);margin:auto}.sp-approved-page .ap-section-index{display:none}.sp-approved-page .ap-section h2{font-size:clamp(2.25rem,11vw,4rem)}.sp-approved-page .ap-gallery-grid{grid-template-columns:1fr}.sp-approved-page .ap-hero h1{font-size:clamp(2.8rem,14vw,4.7rem)}}

/* V9 · fichas de invitados: ancho útil real, títulos legibles y medios completos. */
.sp-approved-page .ap-hero h1,
.sp-approved-page .ap-section h2,
.sp-approved-page .ap-card h3{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.sp-approved-page .ap-card-grid>p{
  grid-column:1/-1;
  max-width:82ch;
}

.sp-approved-page .ap-card-media-duo{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:8px;
  background:#e8eef4;
}
.sp-approved-page .ap-card-media-duo img{
  width:100%;
  height:100%;
  min-height:260px;
  object-fit:contain;
  background:#fff;
}

.sp-approved-page .ap-wide-media{
  margin:24px 0 32px;
  overflow:hidden;
  border-radius:18px;
  border:1px solid #cbd8e4;
  background:#071b33;
}
.sp-approved-page .ap-wide-media img{
  display:block;
  width:100%;
  max-height:520px;
  object-fit:contain;
}

@media(min-width:1280px){
  .sp-approved-page .ap-hero-grid{grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:clamp(48px,6vw,100px)}
  .sp-approved-page .ap-section-inner{grid-template-columns:64px minmax(420px,.56fr) minmax(0,1.44fr);gap:clamp(30px,3.6vw,62px)}
  .sp-approved-page .ap-section h2{max-width:460px;font-size:clamp(2.5rem,2.8vw,3.65rem);line-height:.96}
  .sp-approved-page .ap-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
  .sp-approved-page .ap-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
}

@media(min-width:1600px){
  .sp-approved-page .ap-hero-grid{grid-template-columns:minmax(340px,430px) minmax(0,1fr)}
  .sp-approved-page .ap-hero h1{font-size:clamp(4.5rem,5.1vw,6.9rem);line-height:.91}
  .sp-approved-page .ap-section-inner{grid-template-columns:70px minmax(450px,.56fr) minmax(0,1.44fr)}
}

@media(max-width:640px){
  .sp-approved-page .ap-card-media-duo{grid-template-columns:1fr}
  .sp-approved-page .ap-card-media-duo img{min-height:0;max-height:360px}
  .sp-approved-page .ap-wide-media{margin:20px 0 26px;border-radius:14px}
}

/* V9 CIERRE · la columna editorial contiene el título sin invadir el contenido. */
@media(min-width:1280px){
  .sp-approved-page .ap-section-inner{
    grid-template-columns:64px minmax(480px,.6fr) minmax(0,1.4fr);
    gap:clamp(28px,3.2vw,54px)
  }
  .sp-approved-page .ap-section h2{
    max-width:500px;
    font-size:clamp(2.35rem,2.3vw,3rem);
    line-height:.99
  }
}
@media(min-width:1600px){
  .sp-approved-page .ap-section-inner{
    grid-template-columns:70px minmax(500px,.6fr) minmax(0,1.4fr)
  }
}

@media(min-width:1280px){
  .sp-approved-page .ap-section-inner{grid-template-columns:64px minmax(480px,.6fr) minmax(0,1.4fr);gap:clamp(28px,3.2vw,54px)}
  .sp-approved-page .ap-section h2{max-width:500px;font-size:clamp(2.35rem,2.3vw,3rem);line-height:.99}
}
@media(min-width:1600px){
  .sp-approved-page .ap-section-inner{grid-template-columns:70px minmax(500px,.6fr) minmax(0,1.4fr)}
}
@media(max-width:460px){.sp-approved-page .ap-actions .btn{width:100%}.sp-approved-page .ap-card-copy{padding:18px}.sp-approved-page .ap-section{padding:54px 0}}

/* V8 — perfiles de autor: jerarquía contenida, imágenes protagonistas y
   bloques editoriales legibles. El contenido conserva el orden aprobado. */
.sp-approved-page .ap-hero { padding: clamp(50px, 6vw, 82px) 0; }
.sp-approved-page .ap-hero-grid {
  grid-template-columns: minmax(240px, 350px) minmax(0, 1fr);
  gap: clamp(32px, 5vw, 62px);
}
.sp-approved-page .ap-hero h1 {
  font-size: clamp(3rem, 5.7vw, 5.55rem);
  line-height: .91;
  overflow-wrap: anywhere;
}
.sp-approved-page .ap-section { padding: clamp(56px, 6vw, 78px) 0; }
.sp-approved-page .ap-section-inner {
  grid-template-columns: 54px minmax(220px, .4fr) minmax(0, 1fr);
  gap: clamp(22px, 3.5vw, 46px);
}
.sp-approved-page .ap-section h2 {
  position: static;
  max-width: 430px;
  font-size: clamp(2.05rem, 3.35vw, 3.65rem);
  line-height: .94;
  overflow-wrap: anywhere;
}
.sp-approved-page .ap-section-body { font-size: 1rem; line-height: 1.72; }
.sp-approved-page .ap-section-body h3 { margin-top: 1.75em; }
.sp-approved-page .ap-callout-title {
  margin-top: 1.5em !important;
  padding: 20px 22px;
  color: #fff !important;
}
.sp-approved-page .ap-card-grid,
.sp-approved-page .ap-gallery-grid { gap: 18px; }
.sp-approved-page .ap-card-grid > p,
.sp-approved-page .ap-card-grid > .ap-label,
.sp-approved-page .ap-gallery-grid > p,
.sp-approved-page .ap-gallery-grid > .ap-label { grid-column: 1 / -1; }
.sp-approved-page .ap-card-media { aspect-ratio: 4 / 3; padding: 14px; }
.sp-approved-page .ap-card-copy { padding: 20px; }
.sp-approved-page .ap-gallery-item figcaption { min-height: 70px; }
.sp-approved-page .ap-thanks h2 { color: #fff; }

/* Marcador editorial sobrio cuando el retrato personal no está autorizado. */
.sp-approved-page .ap-portrait-pending {
  background:
    radial-gradient(circle at 75% 20%, rgba(224,25,45,.28), transparent 25%),
    linear-gradient(145deg, #123e79, #071b33);
}
.sp-approved-page .ap-portrait-pending strong { color: #fff; }

.sp-approved-page .ap-workshop-feature {
  display: grid;
  grid-template-columns: minmax(260px, .82fr) minmax(0, 1.18fr);
  overflow: hidden;
  border: 1px solid #cbd8e4;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 22px 55px rgba(7,27,51,.11);
}
.sp-approved-page .ap-workshop-media { min-height: 440px; }
.sp-approved-page .ap-workshop-media img { width: 100%; height: 100%; object-fit: cover; }
.sp-approved-page .ap-workshop-copy { padding: clamp(26px, 4vw, 44px); }
.sp-approved-page .ap-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 24px 0 18px;
}
.sp-approved-page .ap-contact-item {
  padding: 15px;
  border: 1px solid #d3dee8;
  border-radius: 12px;
  background: #f7f9fb;
}
.sp-approved-page .ap-contact-item strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ap-red);
  font-size: .66rem;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.sp-approved-page .ap-contact-item span,
.sp-approved-page .ap-contact-item a { color: var(--ap-blue); font-size: .87rem; line-height: 1.45; }

/* Martin: el protagonista visual es su obra, no un retrato inventado. */
.sp-approved-page .ap-project-hero { aspect-ratio: 4 / 5; }
.sp-approved-page .ap-project-hero img { object-fit: cover; }
.sp-approved-page .ap-project-hero figcaption {
  position: absolute;
  inset: auto 0 0;
  padding: 44px 18px 16px;
  background: linear-gradient(transparent, rgba(3,15,30,.9));
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.sp-approved-page .ap-project-hero { position: relative; margin: 0; }
.sp-approved-page .ap-project-card .ap-card-media { aspect-ratio: 16 / 10; padding: 0; }
.sp-approved-page .ap-project-card .ap-card-media img { object-fit: cover; }
.sp-approved-page .ap-resource-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.sp-approved-page .ap-resource-card {
  display: flex;
  flex-direction: column;
  min-height: 180px;
  padding: 20px;
  border: 1px solid #cfdbe6;
  border-top: 4px solid var(--ap-red);
  border-radius: 15px;
  background: #fff;
}
.sp-approved-page .ap-resource-card h3 { margin: 0 0 8px; font-size: 1.05rem; }
.sp-approved-page .ap-resource-card p { color: #5f7183; font-size: .88rem; }
.sp-approved-page .ap-resource-card .ap-link { margin-top: auto; align-self: flex-start; }

@media (max-width: 1040px) {
  .sp-approved-page .ap-section-inner { grid-template-columns: 42px minmax(200px, .36fr) minmax(0, 1fr); }
}
@media (max-width: 820px) {
  .sp-approved-page .ap-hero-grid,
  .sp-approved-page .ap-section-inner,
  .sp-approved-page .ap-workshop-feature { grid-template-columns: 1fr; }
  .sp-approved-page .ap-portrait { width: min(100%, 390px); margin: auto; }
  .sp-approved-page .ap-section-index { display: none; }
  .sp-approved-page .ap-section h2 { max-width: 760px; }
  .sp-approved-page .ap-workshop-media { min-height: 320px; }
}
@media (max-width: 620px) {
  .sp-approved-page .ap-card-grid,
  .sp-approved-page .ap-gallery-grid,
  .sp-approved-page .ap-resource-grid,
  .sp-approved-page .ap-contact-grid { grid-template-columns: 1fr; }
  .sp-approved-page .ap-hero h1 { font-size: clamp(2.7rem, 14vw, 4.4rem); }
  .sp-approved-page .ap-workshop-media { min-height: 250px; }
}

/* V9 FINAL · escritorio amplio y medios aprobados, posterior a V8. */
.sp-approved-page .ap-hero h1,.sp-approved-page .ap-section h2,.sp-approved-page .ap-card h3{
  overflow-wrap:normal;word-break:normal;hyphens:none
}
.sp-approved-page .ap-card-grid>p{grid-column:1/-1;max-width:82ch}
.sp-approved-page .ap-card-media-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;background:#e8eef4}
.sp-approved-page .ap-card-media-duo img{width:100%;height:100%;min-height:260px;object-fit:contain;background:#fff}
.sp-approved-page .ap-wide-media{margin:24px 0 32px;overflow:hidden;border:1px solid #cbd8e4;border-radius:18px;background:#071b33}
.sp-approved-page .ap-wide-media img{display:block;width:100%;max-height:520px;object-fit:contain}
@media(min-width:1280px){
  .sp-approved-page .ap-hero-grid{grid-template-columns:minmax(300px,390px) minmax(0,1fr);gap:clamp(48px,6vw,100px)}
  .sp-approved-page .ap-section-inner{grid-template-columns:64px minmax(480px,.6fr) minmax(0,1.4fr);gap:clamp(28px,3.2vw,54px)}
  .sp-approved-page .ap-section h2{max-width:500px;font-size:clamp(2.35rem,2.3vw,3rem);line-height:.99}
  .sp-approved-page .ap-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
  .sp-approved-page .ap-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
}
@media(min-width:1600px){
  .sp-approved-page .ap-hero-grid{grid-template-columns:minmax(340px,430px) minmax(0,1fr)}
  .sp-approved-page .ap-hero h1{font-size:clamp(4.5rem,5.1vw,6.9rem);line-height:.91}
  .sp-approved-page .ap-section-inner{grid-template-columns:70px minmax(500px,.6fr) minmax(0,1.4fr)}
}
@media(max-width:640px){
  .sp-approved-page .ap-card-media-duo{grid-template-columns:1fr}
  .sp-approved-page .ap-card-media-duo img{min-height:0;max-height:360px}
  .sp-approved-page .ap-wide-media{margin:20px 0 26px;border-radius:14px}
}

/* V10 · Pulido editorial de fichas de invitados.
   Objetivo: corregir escritorio amplio sin alterar el comportamiento móvil aprobado. */
.sp-approved-page .ap-expertise{
  margin-top:22px;
  padding:22px 24px;
  text-align:center;
}
.sp-approved-page .ap-expertise h3{margin:0 0 14px;text-align:center}
.sp-approved-page .ap-expertise>div{justify-content:center}

.sp-approved-page .ap-project-detail-intro{max-width:92ch;margin-bottom:24px!important}
.sp-approved-page .ap-project-detail-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:16px;
  margin:24px 0 18px;
}
.sp-approved-page .ap-project-detail-card{
  display:flex;
  flex-direction:column;
  min-height:230px;
  padding:22px;
  border:1px solid #cfdbe6;
  border-top:4px solid var(--ap-red);
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 30px rgba(7,27,51,.06);
}
.sp-approved-page .ap-project-detail-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}
.sp-approved-page .ap-project-detail-number,
.sp-approved-page .ap-project-detail-count{
  color:var(--ap-red);
  font-size:.7rem;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.sp-approved-page .ap-project-detail-card h3{margin:0 0 10px!important;font-size:1.24rem!important}
.sp-approved-page .ap-project-detail-card p{margin:0 0 16px!important;color:#455d73}
.sp-approved-page .ap-project-detail-card .ap-link{margin-top:auto;align-self:flex-start}
.sp-approved-page .ap-project-detail-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}

/* La pieza Futurtrec es un afiche informativo: nunca debe recortarse. */
.sp-approved-page .ap-workshop-media{display:grid;place-items:center;background:#fff}
.sp-approved-page .ap-workshop-media img{object-fit:contain;background:#fff}

@media(min-width:1100px){
  /* Cabecera editorial compacta + cuerpo a ancho útil. Elimina la gran columna vacía de V9. */
  .sp-approved-page .ap-section{padding:clamp(54px,5vw,72px) 0}
  .sp-approved-page .ap-section-inner{
    display:grid;
    grid-template-columns:58px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:26px;
    row-gap:28px;
    align-items:start;
  }
  .sp-approved-page .ap-section-index{
    grid-column:1;
    grid-row:1;
    padding-top:8px;
    font-size:.84rem;
  }
  .sp-approved-page .ap-section h2{
    grid-column:2;
    grid-row:1;
    position:static;
    max-width:1050px;
    margin:0;
    font-size:clamp(2.15rem,2.85vw,3.45rem);
    line-height:.96;
    letter-spacing:-.045em;
  }
  .sp-approved-page .ap-section-body{
    grid-column:2;
    grid-row:2;
    width:100%;
    max-width:none;
    font-size:1rem;
    line-height:1.7;
  }
  .sp-approved-page .ap-section-body>p:not(.ap-label){max-width:98ch}

  /* Publicaciones: tres tarjetas equilibradas y una zona de portada común. */
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
  }
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-media{
    aspect-ratio:auto;
    height:330px;
    padding:18px;
  }
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-media img{
    width:auto;
    max-width:100%;
    height:auto;
    max-height:100%;
    margin:auto;
    object-fit:contain;
  }
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-copy{
    display:flex;
    flex-direction:column;
    min-height:280px;
  }
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-copy .ap-link{align-self:flex-start}
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-copy>.ap-label:last-child{margin-top:auto}

  /* Galerías: el material visual usa el ancho disponible en lugar de quedar comprimido. */
  .sp-approved-page #galeria-de-trabajos .ap-gallery-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
  }
  .sp-approved-page #galeria-de-trabajos .ap-gallery-grid>p,
  .sp-approved-page #galeria-de-trabajos .ap-gallery-grid>.ap-label{grid-column:1/-1}
  .sp-approved-page #galeria-de-trabajos .ap-gallery-item figcaption{min-height:64px}

  /* Futurtrec conserva el concepto dos columnas pero muestra el afiche completo. */
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-feature{
    grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);
  }
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-media{
    min-height:0;
    padding:18px;
  }
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-media img{
    width:100%;
    height:auto;
    max-height:760px;
  }

  /* "Conoce su trabajo" necesita aire entre grupos sin comprimir todo en una columna estrecha. */
  .sp-approved-page #conoce-su-trabajo .ap-section-body{max-width:1120px}
  .sp-approved-page #conoce-su-trabajo .ap-subtitle{max-width:900px;margin-top:1.6em}
}

@media(min-width:1500px){
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-media{height:350px}
  .sp-approved-page #galeria-de-trabajos .ap-gallery-grid{gap:20px}
}

/* Tablet y móvil: mantener la estructura V9, corrigiendo solo orden visual de expertise y tarjetas de proyecto. */
@media(max-width:1099px){
  .sp-approved-page .ap-project-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .sp-approved-page .ap-project-detail-grid{grid-template-columns:1fr}
  .sp-approved-page .ap-project-detail-card{min-height:0}
  .sp-approved-page .ap-project-detail-links{gap:6px}
}

/* V10.1 · contención estricta de portadas dentro de su marco de escritorio. */
@media(min-width:1100px){
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-media{overflow:hidden}
  .sp-approved-page #publicaciones-y-proyectos-destacados .ap-card-media img{
    width:100%;
    height:100%;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
  }
}

/* ========================================================================== */
/* V12 FINAL · desktop editorial real + continuidad tablet/móvil              */
/* ========================================================================== */
.sp-approved-page .ap-role-label{
  color:var(--ap-blue);
  font-weight:900;
  letter-spacing:.01em;
}
.sp-approved-page .ap-label{
  font-size:.72rem;
  line-height:1.35;
  letter-spacing:.15em;
  font-weight:950;
}
.sp-approved-page .ap-expertise>div{justify-content:center}
.sp-approved-page .ap-expertise span{font-size:.8rem;padding:10px 13px}
.sp-approved-page .ap-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}
.sp-approved-page .ap-resource-card{
  min-height:220px;padding:22px;border:1px solid #cbd8e5;border-top:4px solid var(--ap-red);
  border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(7,27,51,.07);
  display:flex;flex-direction:column
}
.sp-approved-page .ap-resource-card .ap-label{margin:0 0 10px;color:var(--ap-red)}
.sp-approved-page .ap-resource-card h3{margin:0 0 10px!important;font-size:1.2rem!important;line-height:1.12}
.sp-approved-page .ap-resource-card p{margin:0 0 16px!important;color:#425a70}
.sp-approved-page .ap-resource-card .ap-link{margin-top:auto;align-self:flex-start}
.sp-approved-page .ap-direct-links{margin-top:22px;padding:22px;border:1px solid #d5e0e9;border-radius:18px;background:#f7f9fb}
.sp-approved-page .ap-direct-links .ap-link{margin:5px 6px 5px 0}

/* Enric: timeline horizontal y reconocimientos que ya no parecen texto suelto. */
.sp-approved-page .ap-timeline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:24px 0 16px;border-top:2px solid #ccd8e4}
.sp-approved-page .ap-timeline-step{position:relative;padding:28px 20px 18px 0}
.sp-approved-page .ap-timeline-step::before{content:"";position:absolute;top:-8px;left:0;width:14px;height:14px;border-radius:50%;background:var(--ap-red);box-shadow:0 0 0 5px #fff}
.sp-approved-page .ap-timeline-number{display:block;margin-bottom:13px;color:var(--ap-red);font-size:.73rem;font-weight:950;letter-spacing:.14em}
.sp-approved-page .ap-timeline-step h3{margin:0!important;font-size:1.08rem!important;line-height:1.12}
.sp-approved-page .ap-awards-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:26px 0}
.sp-approved-page .ap-award-card{min-height:145px;padding:20px;border:1px solid #cfdbe6;border-radius:16px;background:#fff;box-shadow:0 12px 28px rgba(7,27,51,.06)}
.sp-approved-page .ap-award-number{display:block;color:var(--ap-red);font-size:.72rem;font-weight:950;letter-spacing:.15em}
.sp-approved-page .ap-award-card h3{margin:12px 0 0!important;font-size:1.04rem!important;line-height:1.13}
.sp-approved-page .ap-gallery-category{display:block;margin-bottom:6px;color:var(--ap-red);font-size:.68rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}

/* Imágenes de identidad añadidas a perfil. */
.sp-approved-page .v12-brand-inline{display:grid;place-items:center;float:right;width:min(34%,280px);margin:0 0 22px 28px;padding:18px;border:1px solid #d1dce7;border-radius:18px;background:#fff;box-shadow:0 13px 30px rgba(7,27,51,.07)}
.sp-approved-page .v12-brand-inline img{max-height:220px;object-fit:contain}

@media(min-width:1100px){
  /* Ancho editorial: número y título arriba; contenido ocupa casi todo el ancho útil. */
  .sp-approved-page .ap-section{padding:clamp(58px,5.1vw,82px) 0}
  .sp-approved-page .ap-section-inner{
    grid-template-columns:44px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:22px!important;row-gap:28px!important
  }
  .sp-approved-page .ap-section-index{
    grid-column:1!important;grid-row:1!important;margin:0;padding-top:8px!important;
    font-size:.76rem!important;letter-spacing:.14em;align-self:start
  }
  .sp-approved-page .ap-section h2{
    grid-column:2!important;grid-row:1!important;position:static!important;
    max-width:1180px!important;margin:0!important;
    font-size:clamp(2.2rem,2.55vw,3.35rem)!important;line-height:.96!important;letter-spacing:-.04em
  }
  .sp-approved-page .ap-section-body{
    grid-column:2!important;grid-row:2!important;width:100%!important;max-width:none!important;
    font-size:1.02rem!important;line-height:1.72!important
  }
  .sp-approved-page .ap-section-body>p:not(.ap-label){max-width:108ch}
  .sp-approved-page .ap-section-body>.ap-card-grid,
  .sp-approved-page .ap-section-body>.ap-gallery-grid,
  .sp-approved-page .ap-section-body>.ap-resource-grid,
  .sp-approved-page .ap-section-body>.ap-workshop-feature,
  .sp-approved-page .ap-section-body>.ap-project-detail-grid{max-width:none;width:100%}

  .sp-approved-page .ap-hero{padding:clamp(60px,5.2vw,86px) 0}
  .sp-approved-page .ap-hero-grid{grid-template-columns:minmax(300px,390px) minmax(0,1fr)!important;gap:clamp(44px,4.7vw,78px)!important}
  .sp-approved-page .ap-hero h1{max-width:100%;font-size:clamp(3.55rem,4.45vw,5.85rem)!important;line-height:.91!important}
  .sp-approved-page .ap-hero-copy>p{max-width:82ch}
  .sp-approved-page .ap-project-hero,.sp-approved-page .ap-portrait{max-width:390px}
  .sp-approved-page .ap-project-hero img{object-position:center 24%}

  .sp-approved-page .ap-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
  .sp-approved-page .ap-card-grid.v12-six-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .sp-approved-page .ap-card{display:flex;flex-direction:column;height:100%}
  .sp-approved-page .ap-card-copy{display:flex;flex-direction:column;flex:1;padding:22px!important}
  .sp-approved-page .ap-card-copy .ap-link{margin-top:auto;align-self:flex-start}
  .sp-approved-page .ap-card-media{height:300px!important;aspect-ratio:auto!important}
  .sp-approved-page .ap-card-media img{width:100%;height:100%;object-fit:contain}
  .sp-approved-page .ap-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
  .sp-approved-page #galeria-de-trabajos .ap-gallery-grid>p{grid-column:1/-1;max-width:108ch}

  /* A Crear y galerías equivalentes: seis recursos = 3×2 real. */
  .sp-approved-page #galeria-de-trabajos .ap-gallery-item{min-width:0}
  .sp-approved-page #galeria-de-trabajos .ap-gallery-item>a{aspect-ratio:4/3}

  /* Futurtrec: afiche completo + contenido equilibrado. */
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-feature{grid-template-columns:minmax(380px,.92fr) minmax(0,1.08fr)!important;align-items:stretch}
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-media{min-height:0!important;padding:18px;background:#fff}
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-media img{width:100%;height:100%;max-height:720px;object-fit:contain!important}
  .sp-approved-page #escuela-de-modelismo-futurtrec .ap-workshop-copy>.ap-label:first-child{font-size:.79rem!important;margin-bottom:16px}

  /* Recursos sociales: cards, no lista vertical. */
  .sp-approved-page .v12-resource-section .ap-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-approved-page .v12-resource-section .ap-wide-media{max-height:420px}
  .sp-approved-page .v12-resource-section .ap-wide-media img{height:420px;object-fit:cover}

  /* Enric: las filas de seis y la galería usan el ancho real. */
  .sp-approved-page .v12-timeline-section .ap-section-body{max-width:none!important}
  .sp-approved-page #proyectos-destacados-actuales .ap-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .sp-approved-page #galeria-de-trabajos .v12-gallery-balanced{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(min-width:1500px){
  .sp-approved-page .ap-section-inner{grid-template-columns:48px minmax(0,1fr)!important;column-gap:26px!important}
  .sp-approved-page .ap-card-media{height:330px!important}
  .sp-approved-page .ap-hero-grid{grid-template-columns:minmax(330px,420px) minmax(0,1fr)!important}
}

@media(max-width:1099px) and (min-width:781px){
  .sp-approved-page .ap-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sp-approved-page .ap-timeline-grid,.sp-approved-page .ap-awards-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-top:0}
  .sp-approved-page .ap-timeline-step{border-top:2px solid #ccd8e4}
  .sp-approved-page .ap-card-grid,.sp-approved-page .ap-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:780px){
  .sp-approved-page .ap-resource-grid,.sp-approved-page .ap-timeline-grid,.sp-approved-page .ap-awards-grid{grid-template-columns:1fr}
  .sp-approved-page .ap-timeline-grid{border-top:0}
  .sp-approved-page .ap-timeline-step{padding:18px 0 18px 22px;border-left:2px solid #ccd8e4}
  .sp-approved-page .ap-timeline-step::before{top:22px;left:-8px}
  .sp-approved-page .v12-brand-inline{float:none;width:min(100%,260px);margin:0 auto 22px}
  .sp-approved-page .ap-resource-card{min-height:0}
}
.sp-approved-page .ap-award-meta{margin:12px 0 5px!important;color:var(--ap-blue);font-weight:850}
.sp-approved-page .ap-award-desc{margin:0!important;color:#50667a;font-size:.88rem;line-height:1.5}
.sp-approved-page .v12-gallery-resources{grid-column:1/-1;margin-top:10px}
.sp-approved-page .v12-gallery-resource-card .ap-gallery-item{margin-top:auto;box-shadow:none}
.sp-approved-page .v12-gallery-resource-card .ap-gallery-pending{aspect-ratio:16/9}
@media(min-width:1100px){.sp-approved-page .v12-gallery-resources{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* V12.1 · "Conoce su trabajo" deja de ser una lista de texto en desktop. */
.sp-approved-page .v12-conoce-grid{margin-top:26px}
.sp-approved-page .v12-conoce-card{min-height:210px}
.sp-approved-page .v12-conoce-card h3{margin:0 0 10px!important;font-size:1.15rem!important;line-height:1.13}
.sp-approved-page .v12-conoce-card p:not(.ap-label){color:#50667a;font-size:.92rem;line-height:1.55}
@media(min-width:1100px){
  .sp-approved-page #conoce-su-trabajo .ap-section-body{max-width:none!important}
  .sp-approved-page #conoce-su-trabajo .v12-conoce-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sp-approved-page #conoce-su-trabajo .v12-conoce-grid>.v12-conoce-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 8px);justify-self:center}
}
@media(max-width:780px){.sp-approved-page #conoce-su-trabajo .v12-conoce-grid{grid-template-columns:1fr!important}.sp-approved-page #conoce-su-trabajo .v12-conoce-grid>.v12-conoce-card:last-child{width:auto!important;grid-column:auto!important}}


/* V12 final — Enric intervention/resource polish */
.sp-approved-page .v12-intervention-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:18px 0 14px;
}
.sp-approved-page .v12-intervention-card{
  border:1px solid #c9d6e3;
  border-top:3px solid #e7192d;
  border-radius:14px;
  background:#fff;
  padding:16px 17px;
  box-shadow:0 12px 28px rgba(3,25,51,.06);
}
.sp-approved-page .v12-intervention-label,
.sp-approved-page .v12-resource-number{
  display:block;
  color:#e7192d;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.sp-approved-page .v12-intervention-value{display:block;color:#06264d;font-size:.95rem;line-height:1.35;}
.sp-approved-page .v12-intervention-confirmed{
  margin-top:0;
  background:#061d3a;
  border-color:#061d3a;
  border-left:4px solid #e7192d;
}
.sp-approved-page .v12-intervention-confirmed .v12-intervention-label{color:#ff4558;}
.sp-approved-page .v12-intervention-confirmed .v12-intervention-value{color:#fff;font-size:1.05rem;}
.sp-approved-page .v12-gallery-resources{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:16px;
}
.sp-approved-page .v12-gallery-resource-card{
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:22px;
  border:1px solid #cbd7e4;
  border-top:3px solid #e7192d;
  border-radius:16px;
  background:#fff;
  box-shadow:0 14px 32px rgba(3,25,51,.06);
}
.sp-approved-page .v12-gallery-resource-card h3{margin:.1rem 0 .65rem;color:#063b79;}
.sp-approved-page .v12-gallery-resource-card p{margin:0 0 1rem;}
.sp-approved-page .v12-gallery-resource-card .ap-link{margin-top:auto;}
@media (max-width:1100px){
 .sp-approved-page .v12-intervention-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 .sp-approved-page .v12-gallery-resources{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:700px){
 .sp-approved-page .v12-intervention-grid,.sp-approved-page .v12-gallery-resources{grid-template-columns:1fr;}
 .sp-approved-page .v12-gallery-resource-card{min-height:0;}
}


/* V12 final — Enric community cards */
.sp-approved-page .v12-enric-community-grid{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0 16px;
}
.sp-approved-page .v12-enric-community-card{
 display:flex;flex-direction:column;align-items:flex-start;min-height:220px;padding:22px;
 border:1px solid #cbd7e4;border-top:3px solid #e7192d;border-radius:16px;background:#fff;
 box-shadow:0 14px 32px rgba(3,25,51,.06);
}
.sp-approved-page .v12-enric-community-card h3{margin:.1rem 0 .65rem;color:#063b79;}
.sp-approved-page .v12-enric-community-card p{margin:0 0 1rem;}
.sp-approved-page .v12-enric-community-card .ap-link{margin-top:auto;}
@media(max-width:1000px){.sp-approved-page .v12-enric-community-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.sp-approved-page .v12-enric-community-grid{grid-template-columns:1fr}.sp-approved-page .v12-enric-community-card{min-height:0}}
