:root{
  --ink:#07172b;
  --ink-2:#0b2341;
  --ink-3:#102d4a;
  --blue:#1766c2;
  --blue-soft:#9ac4ff;
  --cyan:#4dd5ef;
  --gold:#c5a04c;
  --gold-soft:#e7cf8c;
  --white:#f8fbff;
  --text:#eef5fc;
  --muted:#b9c8d8;
  --line:rgba(255,255,255,.15);
  --line-soft:rgba(255,255,255,.09);
  --glass:rgba(255,255,255,.085);
  --shadow:0 30px 90px rgba(0,0,0,.33);
  --shadow-soft:0 18px 52px rgba(0,0,0,.23);
  --max:1440px;
  --radius-xl:34px;
  --radius-lg:28px;
  --radius-md:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;min-height:100%;background:#061422;color-scheme:dark;overscroll-behavior-y:none}
body{margin:0;width:100%;min-height:100vh;min-height:100dvh;color:var(--text);background:
  radial-gradient(circle at 14% -8%,rgba(23,102,194,.35),transparent 34%),
  radial-gradient(circle at 94% 6%,rgba(197,160,76,.16),transparent 28%),
  radial-gradient(circle at 76% 58%,rgba(27,95,151,.12),transparent 34%),
  linear-gradient(180deg,#07172b 0%,#0a1f39 47%,#061422 100%);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  overflow-x:hidden;overscroll-behavior-y:none;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
body.viewer-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.ambient{position:fixed;inset:0;z-index:-2;pointer-events:none;background:
  linear-gradient(rgba(3,17,29,.56),rgba(3,17,29,.88)),
  url('/site/assets/img/hero-rpas.jpg') center/cover no-repeat;filter:saturate(.92)}
.ambient:after{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 84% 18%,rgba(77,213,239,.11),transparent 31%),
  radial-gradient(circle at 12% 30%,rgba(197,160,76,.08),transparent 25%),
  linear-gradient(180deg,transparent 0 42%,rgba(2,14,25,.35))}
.page{width:min(calc(100% - 36px),var(--max));margin-inline:auto}
.panel{position:relative;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.115),rgba(255,255,255,.062));box-shadow:var(--shadow);backdrop-filter:blur(22px) saturate(122%);-webkit-backdrop-filter:blur(22px) saturate(122%)}
.panel:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.045),transparent 36%,rgba(197,160,76,.035));opacity:.9}
.panel>*{position:relative;z-index:1}
.institutional-shell{padding:calc(20px + env(safe-area-inset-top)) 0 16px}
.institutional-band{min-height:142px;background:rgba(250,252,255,.96);border:1px solid rgba(255,255,255,.78);border-radius:28px;padding:20px 28px;display:grid;grid-template-columns:minmax(0,1.65fr) 1px minmax(220px,.72fr);gap:30px;align-items:center;box-shadow:0 22px 70px rgba(0,0,0,.23)}
.brand-primary{display:flex;align-items:center}.brand-secondary{display:flex;align-items:center;justify-content:center}
.brand-primary img{width:min(100%,760px)}.brand-secondary img{width:min(60%,355px);margin-inline:auto}.brand-divider{width:1px;height:82px;background:linear-gradient(180deg,transparent,rgba(13,54,104,.28),transparent)}
main{padding-bottom:28px}
/* HERO: one premium editorial surface; aviation image is integrated into the surface, not a second card */
.hero{display:block;padding:14px 0 18px}
.hero-copy{border-radius:var(--radius-xl);overflow:hidden;padding:clamp(34px,4.2vw,58px);min-height:560px;isolation:isolate}
.hero-copy:before{content:"";position:absolute;z-index:-2;inset:0;background:
  linear-gradient(90deg,rgba(7,24,43,.99) 0%,rgba(7,29,50,.96) 45%,rgba(7,28,48,.62) 70%,rgba(7,28,48,.38) 100%),
  url('/site/assets/img/hero-rpas.jpg') right center/cover no-repeat;opacity:.98}
.hero-copy:after{content:"";position:absolute;z-index:-1;right:-10%;top:-30%;width:58%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,rgba(77,213,239,.13) 0 1px,transparent 1px 58px);mask-image:radial-gradient(circle,#000 0 55%,transparent 76%);-webkit-mask-image:radial-gradient(circle,#000 0 55%,transparent 76%);opacity:.55;pointer-events:none}
.hero-copy>*{position:relative;z-index:2;max-width:760px}
.kicker,.micro-label{display:inline-block;color:#a9c9f8;text-transform:uppercase;letter-spacing:.19em;font-size:.74rem;font-weight:780}
.hero h1{margin:14px 0 0;font-size:clamp(4.25rem,7.4vw,7.4rem);line-height:.84;letter-spacing:-.062em;font-weight:760;text-wrap:balance}
.hero h1 span,.hero h1 strong{display:block}.hero h1 strong{color:var(--gold-soft);font-weight:780}
.hero-subtitle{margin:20px 0 0;color:#e2ecf4;text-transform:uppercase;letter-spacing:.12em;font-weight:740;font-size:.91rem}
.hero-lead{margin:20px 0 0;max-width:58ch;color:var(--muted);font-size:1rem;line-height:1.68}
.event-grid{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;max-width:700px}
.event-grid div{padding:11px 13px;border-left:1px solid rgba(231,207,140,.56);background:linear-gradient(90deg,rgba(255,255,255,.042),transparent)}
.event-grid span,.speaker-line span{display:block;color:#9fb7cf;font-size:.64rem;font-weight:780;letter-spacing:.16em;margin-bottom:5px}
.event-grid strong{font-size:.91rem;line-height:1.35}
.hero-actions{margin-top:25px;display:flex;gap:10px;flex-wrap:wrap;max-width:700px}
.button{border:0;cursor:pointer;min-height:48px;border-radius:999px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;font-weight:730;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;line-height:1.1;text-align:center}
.button:hover{transform:translateY(-2px);filter:brightness(1.03)}
.button.primary{background:linear-gradient(180deg,#f9fcff,#d9e7f4);color:#08162c;box-shadow:0 12px 28px rgba(0,0,0,.18)}
.button.secondary{background:rgba(255,255,255,.075);color:var(--white);border:1px solid rgba(255,255,255,.15)}
.button.ghost{color:#e8f3fa;border:1px solid rgba(77,213,239,.24);background:rgba(77,213,239,.06)}
.button.gold{background:linear-gradient(180deg,#f2da95,#c8a351);color:#17150f;box-shadow:0 12px 30px rgba(197,160,76,.18)}
.media-section,.summary{padding-top:52px}
.section-heading{max-width:820px;margin:0 auto 24px;text-align:center;padding-inline:12px}
.section-heading.compact{margin-bottom:18px}
.section-heading h2,.summary-intro h2,.feature h2,.first-minutes h2,.closing h2{margin:9px 0 11px;font-size:clamp(2rem,4.1vw,3.35rem);line-height:1.03;letter-spacing:-.045em;text-wrap:balance}
.section-heading p,.summary-intro>p,.feature-copy>p,.first-minutes-copy>p,.closing-copy>p{margin:0;color:var(--muted);line-height:1.68;font-size:.97rem}
.section-heading:after{content:"";display:block;width:56px;height:1px;margin:20px auto 0;background:linear-gradient(90deg,transparent,var(--gold-soft),transparent);opacity:.85}
.media-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:24px}
.video-card,.presentation-card{border-radius:var(--radius-lg);overflow:hidden}
.video-copy{padding:26px 28px 18px}.video-copy h3,.presentation-copy h3,.story-card h3,.decision-card h3{margin:8px 0 8px;font-size:clamp(1.35rem,2.25vw,1.9rem);letter-spacing:-.03em;line-height:1.16}
.video-copy p,.presentation-copy p,.story-card p,.decision-card p,.case-card p{color:var(--muted);line-height:1.64;font-size:.94rem}
.text-link{display:inline-block;margin-top:8px;color:var(--gold-soft);font-weight:700}
.is-hidden{display:none!important}
.video-shell{margin:0 18px 18px;border:1px solid rgba(255,255,255,.12);border-radius:22px;overflow:hidden;aspect-ratio:16/9;background:#02070c;position:relative;box-shadow:0 16px 44px rgba(0,0,0,.24)}
.video-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pending-live{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle,rgba(77,213,239,.10),transparent 48%)}
.pending-live span{font-size:.70rem;letter-spacing:.18em;color:#9fcce1;font-weight:800}.pending-live strong{margin-top:8px;font-size:1.45rem}.pending-live small{margin-top:7px;color:#8fa8b9}
.signal-mark{display:flex;gap:6px;align-items:flex-end;height:34px;margin-bottom:12px}.signal-mark i{display:block;width:5px;border-radius:5px;background:var(--cyan);animation:pulse 1.2s infinite ease-in-out}.signal-mark i:nth-child(1){height:12px}.signal-mark i:nth-child(2){height:22px;animation-delay:.15s}.signal-mark i:nth-child(3){height:32px;animation-delay:.30s}@keyframes pulse{50%{opacity:.32;transform:scaleY(.6)}}
.presentation-cover{margin:18px 18px 0}.presentation-copy{padding:22px 28px 28px}.speaker-line{margin:16px 0;padding:12px 14px;border-left:2px solid var(--gold-soft);background:linear-gradient(90deg,rgba(231,207,140,.08),transparent)}
.slide-shot{display:flex;align-items:center;justify-content:center;padding:10px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.10);box-shadow:inset 0 1px rgba(255,255,255,.03)}
.slide-shot.compact{padding:0;background:transparent;border:0;box-shadow:none}.slide-shot img{width:100%;height:auto;object-fit:contain;border-radius:15px;box-shadow:0 20px 54px rgba(0,0,0,.27);background:#fff}
.summary-intro{border-radius:var(--radius-xl);padding:36px;max-width:1080px;margin:0 auto 24px;text-align:center}
.outcomes{margin-top:22px;display:flex;flex-wrap:wrap;justify-content:center;gap:9px}.outcomes span{border:1px solid rgba(231,207,140,.30);background:rgba(231,207,140,.065);padding:8px 12px;border-radius:999px;font-size:.72rem;font-weight:780;letter-spacing:.08em}
.story-grid,.decision-grid,.case-grid{display:grid;gap:18px}.story-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.story-card,.decision-card,.case-card{border-radius:24px;padding:22px;background:linear-gradient(180deg,rgba(255,255,255,.095),rgba(255,255,255,.048));box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(18px) saturate(118%);-webkit-backdrop-filter:blur(18px) saturate(118%)}
.story-no{font-size:.68rem;color:var(--gold-soft);letter-spacing:.18em;font-weight:850}.story-card h3{font-size:1.16rem;line-height:1.22}.story-card p{font-size:.90rem}
.feature,.first-minutes,.closing{margin-top:24px;border-radius:var(--radius-xl);overflow:hidden;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:18px;align-items:stretch;padding:16px;background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.052));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%)}
.feature-copy,.first-minutes-copy,.closing-copy{padding:24px 20px 24px 24px;align-self:center}.feature.reverse{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}.feature.reverse .feature-copy{order:2}.feature.reverse .slide-shot{order:1}
.verb-route{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.verb-route span{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.065);font-size:.70rem;font-weight:800;letter-spacing:.06em;border:1px solid rgba(255,255,255,.05)}.verb-route span.accent{background:rgba(231,207,140,.14);color:#f2d985;border-color:rgba(231,207,140,.18)}.verb-route b{color:#7397ac}
.decision-grid{grid-template-columns:1.05fr .95fr;margin-top:22px}.data-fields{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.data-fields span{font-size:.69rem;letter-spacing:.07em;font-weight:780;padding:8px 10px;border:1px solid rgba(77,213,239,.18);border-radius:9px;background:rgba(77,213,239,.045)}
.cases-section{padding-top:42px}.case-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.case-card strong{font-size:1.01rem;line-height:1.24}.case-card p{font-size:.88rem;margin-bottom:0}
.barrier-list{margin:18px 0 0;padding-left:20px;color:var(--muted);line-height:1.58}.barrier-list li+li{margin-top:8px}
.first-minutes{grid-template-columns:1.02fr .98fr}.timeline{margin-top:20px;display:grid;gap:9px}.timeline div{display:grid;grid-template-columns:78px 1fr;align-items:center;border:1px solid rgba(255,255,255,.10);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.025)}.timeline strong{background:rgba(231,207,140,.12);color:#f2d985;padding:12px 14px;font-size:1.06rem}.timeline span{padding:0 14px;font-weight:740;font-size:.78rem;letter-spacing:.04em}
.closing{grid-template-columns:.95fr 1.05fr}.closing-verbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.closing-verbs span{padding:14px;border-radius:14px;border:1px solid rgba(231,207,140,.20);background:rgba(231,207,140,.04);font-weight:790;letter-spacing:.04em;font-size:.88rem}.closing-verbs small{display:block;margin-top:4px;color:#b8c7d2;font-weight:500;letter-spacing:0;font-size:.82rem}
.sources{margin-top:22px;border-radius:24px;padding:22px 26px}.sources p{margin:8px 0 0;color:#aebfcb;line-height:1.6;font-size:.88rem}
.footer{margin:24px 0 22px;padding:20px 22px;border-radius:24px;display:flex;justify-content:space-between;gap:18px;align-items:center;background:linear-gradient(180deg,rgba(255,255,255,.095),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow-soft);backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}
.footer-copy{display:flex;flex-direction:column;gap:5px}.footer-label{color:#9fb7cf;font-size:.64rem;letter-spacing:.18em;font-weight:780}.footer strong{font-size:.98rem;letter-spacing:-.02em;line-height:1.2}.footer-sub{color:#b8c9d5;font-size:.84rem;line-height:1.45}.footer-domain{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border-radius:999px;background:rgba(231,207,140,.075);border:1px solid rgba(231,207,140,.20);color:#ecd18a;font-weight:700;font-size:.84rem;text-align:center}
/* viewer unchanged */
.presentation-modal{position:fixed;inset:0;z-index:9999;background:#030a11;display:none;grid-template-rows:auto 1fr auto;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.presentation-modal.open{display:grid}.viewer-topbar{height:68px;padding:0 18px;display:grid;grid-template-columns:1fr auto 48px;gap:14px;align-items:center;border-bottom:1px solid rgba(255,255,255,.12);background:#071725}.viewer-topbar>div:first-child span,.viewer-topbar>div:first-child strong{display:block}.viewer-topbar>div:first-child span{font-size:.65rem;letter-spacing:.16em;color:#8fb5cc}.viewer-topbar>div:first-child strong{font-size:.92rem;margin-top:2px}.viewer-count{font-variant-numeric:tabular-nums;color:#c8d6e0}.viewer-close{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:white;font-size:1.7rem;cursor:pointer}.viewer-stage{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;padding:16px;overflow:hidden}.viewer-stage canvas{display:block;max-width:100%;max-height:100%;box-shadow:0 18px 60px rgba(0,0,0,.55);background:#fff}.viewer-loading{position:absolute;inset:auto 50% 30px auto;transform:translateX(50%);padding:9px 12px;border-radius:999px;background:rgba(5,21,34,.85);color:#b7cad7;font-size:.78rem}.viewer-controls{min-height:72px;padding:12px 18px;display:grid;grid-template-columns:auto minmax(120px,460px) auto;gap:14px;justify-content:center;align-items:center;border-top:1px solid rgba(255,255,255,.12);background:#071725}.viewer-controls button{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:white;border-radius:999px;padding:10px 15px;cursor:pointer}.viewer-controls input{width:100%;accent-color:var(--gold)}
@media(max-width:1100px){
  .institutional-band{grid-template-columns:1fr;gap:14px}.brand-divider{display:none}.brand-primary,.brand-secondary{justify-content:center}.brand-primary img{width:min(100%,680px)}.brand-secondary img{width:min(56%,310px)}
  .media-grid,.feature,.first-minutes,.closing{grid-template-columns:1fr}.story-grid,.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-grid{grid-template-columns:1fr}.feature.reverse .feature-copy,.feature.reverse .slide-shot{order:initial}.feature-copy,.first-minutes-copy,.closing-copy{padding:24px}
}
@media(max-width:700px){
  .page{width:min(calc(100% - 18px),var(--max))}.institutional-shell{padding-top:10px}.institutional-band{min-height:0;border-radius:20px;padding:17px}.brand-primary img{width:100%}.brand-secondary img{width:57%}
  .hero{padding-top:8px}.hero-copy{min-height:0;padding:27px 22px 29px;border-radius:28px}.hero-copy:before{background:linear-gradient(180deg,rgba(7,24,43,.98),rgba(7,28,48,.92)),url('/site/assets/img/hero-rpas.jpg') 72% center/cover no-repeat}.hero-copy:after{right:-26%;top:-8%;width:90%;opacity:.26}
  .kicker,.micro-label{font-size:.66rem;letter-spacing:.16em}.hero h1{font-size:clamp(3.1rem,13.5vw,4.55rem);line-height:.89}.hero-subtitle{font-size:.78rem;line-height:1.4}.hero-lead{font-size:.91rem;line-height:1.58}.event-grid{grid-template-columns:1fr 1fr;margin-top:22px;padding-top:18px;gap:9px}.event-grid div{padding:9px}.event-grid strong{font-size:.80rem}.hero-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:20px}.hero-actions .button.ghost{grid-column:1/-1}
  .media-section,.summary{padding-top:40px}.section-heading h2,.summary-intro h2,.feature h2,.first-minutes h2,.closing h2{font-size:clamp(1.7rem,7.6vw,2.30rem)}.section-heading p,.summary-intro>p,.feature-copy>p,.first-minutes-copy>p,.closing-copy>p{font-size:.91rem;line-height:1.58}
  .video-copy,.presentation-copy{padding:21px}.summary-intro{padding:25px 21px;border-radius:26px}.story-grid,.case-grid{grid-template-columns:1fr}.story-card,.decision-card,.case-card{padding:19px;border-radius:22px}.story-card p,.decision-card p,.case-card p,.video-copy p,.presentation-copy p{font-size:.88rem;line-height:1.55}
  .feature,.first-minutes,.closing{padding:11px;gap:12px;border-radius:27px}.feature-copy,.first-minutes-copy,.closing-copy{padding:20px 17px}.slide-shot{padding:7px;border-radius:18px}.slide-shot img{border-radius:12px;box-shadow:0 16px 38px rgba(0,0,0,.24)}
  .closing-verbs{grid-template-columns:1fr 1fr}.timeline div{grid-template-columns:66px 1fr}.timeline span{font-size:.72rem}.footer{flex-direction:column;align-items:flex-start;padding:18px;margin-bottom:max(18px,env(safe-area-inset-bottom))}.footer-domain{width:100%}
  .viewer-topbar{height:62px}.viewer-controls{grid-template-columns:1fr 1fr}.viewer-controls input{grid-column:1/-1;grid-row:1}.viewer-controls button{grid-row:2}.viewer-stage{padding:8px}
}
@media(max-width:430px){.event-grid{grid-template-columns:1fr}.hero-actions{grid-template-columns:1fr}.hero-actions .button.ghost{grid-column:auto}.closing-verbs{grid-template-columns:1fr}.brand-secondary img{width:64%}.hero h1{font-size:clamp(3rem,14vw,4.35rem)}.footer strong{font-size:.94rem}.footer-sub,.footer-domain{font-size:.82rem}}
@media print{body>*{display:none!important}body:after{content:"Material disponible exclusivamente para consulta en línea.";display:block;color:#111;background:#fff;padding:40px;font:20px sans-serif}}


/* ==========================================================
   RPAS_NORMATIVA_V2_START
   Widget institucional · Normativa vigente + formatos AFAC
   ========================================================== */

.regulations-section{
  margin:34px 0;
  scroll-margin-top:28px;
}

/* Evita el doble espacio que antes sumaba el margen del widget
   con el padding-top general de .summary. */
.regulations-section + .summary{
  padding-top:0;
}

.regulations-panel{
  position:relative;
  overflow:hidden;
  padding:clamp(24px,4vw,42px);
  border:1px solid rgba(218,184,111,.34);
  border-radius:var(--radius-xl);
  background:
    radial-gradient(circle at 92% 5%,rgba(75,155,192,.14),transparent 34%),
    linear-gradient(145deg,rgba(10,37,58,.98),rgba(5,24,40,.96));
}

.regulations-panel::before{
  content:"";
  position:absolute;
  top:0;
  left:7%;
  right:7%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(225,193,121,.88),transparent);
}

.regulations-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:28px;
  margin-bottom:25px;
}

.regulations-heading-copy{max-width:790px}

.regulations-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  padding:5px 11px;
  border:1px solid rgba(217,184,110,.30);
  border-radius:999px;
  background:rgba(217,184,110,.07);
  color:#e1c17b;
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
}

.regulations-heading h2{
  margin:13px 0 10px;
  font-size:clamp(28px,4vw,46px);
  line-height:1.02;
  letter-spacing:-.025em;
}

.regulations-heading p{
  max-width:760px;
  margin:0;
  color:rgba(226,235,242,.78);
  font-size:15px;
  line-height:1.65;
}

.regulations-emblem{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  border:1px solid rgba(217,184,110,.32);
  border-radius:18px;
  color:#e1c17b;
  background:linear-gradient(145deg,rgba(217,184,110,.14),rgba(217,184,110,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 14px 38px rgba(0,0,0,.18);
}

.regulations-emblem-icon{
  width:34px;
  height:34px;
  stroke-width:1.7;
}

.regulations-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.regulation-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:205px;
  padding:21px;
  overflow:hidden;
  border:1px solid rgba(160,190,209,.17);
  border-radius:17px;
  background:linear-gradient(155deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
  color:inherit;
  text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .20s ease,border-color .20s ease,background .20s ease,box-shadow .20s ease;
}

.regulation-card::after{
  content:"";
  position:absolute;
  width:95px;
  height:95px;
  right:-45px;
  bottom:-55px;
  border-radius:50%;
  background:rgba(94,176,211,.08);
  pointer-events:none;
}

.regulation-card:hover,
.regulation-card:focus-visible{
  transform:translateY(-3px);
  border-color:rgba(225,193,123,.55);
  background:linear-gradient(155deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
  box-shadow:0 14px 32px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.07);
  outline:none;
}

.regulation-type{
  margin-bottom:13px;
  color:#88c5de;
  font-size:10px;
  font-weight:800;
  letter-spacing:.13em;
}

.regulation-card>strong,
.formats-card-heading strong{
  display:block;
  margin-bottom:10px;
  color:#f4f7fa;
  font-size:clamp(19px,2vw,24px);
  line-height:1.15;
}

.regulation-card>p,
.formats-card-heading p{
  flex:1;
  margin:0 0 18px;
  color:rgba(220,231,239,.72);
  font-size:13.5px;
  line-height:1.55;
}

.regulation-open{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:13px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#e1c17b;
  font-size:12px;
  font-weight:700;
  letter-spacing:.035em;
}

.regulation-open b{font-size:17px;font-weight:400}
.regulation-card-afac{border-color:rgba(93,174,208,.25)}

/* Cuarto subwidget: los cuatro recursos AFAC permanecen agrupados. */
.regulation-card-formats{
  grid-column:1 / -1;
  min-height:0;
  overflow:visible;
  border-color:rgba(217,184,110,.22);
}

.regulation-card-formats:hover{
  transform:none;
  background:linear-gradient(155deg,rgba(255,255,255,.072),rgba(255,255,255,.03));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.formats-card-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.formats-card-heading>div{max-width:800px}
.formats-card-heading p{margin-bottom:0}
.formats-card-count{
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(225,193,123,.22);
  background:rgba(225,193,123,.07);
  color:#e7cf8c;
  font-size:10px;
  font-weight:780;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.format-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.format-action{
  min-width:0;
  min-height:82px;
  padding:12px 13px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:inherit;
  text-align:left;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}

.format-action:hover,
.format-action:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(225,193,123,.42);
  background:rgba(255,255,255,.065);
  outline:none;
}

.format-action-no{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:9px;
  background:rgba(77,213,239,.07);
  border:1px solid rgba(77,213,239,.12);
  color:#9fdff0;
  font-size:10px;
  font-weight:800;
}

.format-action-copy{min-width:0}
.format-action-copy b{
  display:block;
  color:#f3f7fa;
  font-size:12.5px;
  line-height:1.25;
  font-weight:760;
}
.format-action-copy small{
  display:block;
  margin-top:4px;
  color:rgba(196,213,225,.65);
  font-size:10.5px;
  line-height:1.25;
}
.format-action-arrow{color:#e1c17b;font-size:17px;line-height:1}

.formats-card-footer{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(225,193,123,.15);
  color:#d8bd78;
  font-size:10.75px;
  line-height:1.58;
}
.formats-card-footer a{
  color:#f0d58c;
  text-decoration:underline;
  text-decoration-color:rgba(240,213,140,.42);
  text-underline-offset:3px;
  font-weight:760;
}

.regulations-footer{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:19px;
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.075);
  color:rgba(211,224,233,.62);
  font-size:11.5px;
  line-height:1.45;
}

.regulations-pulse{
  flex:0 0 auto;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#e1c17b;
  box-shadow:0 0 0 5px rgba(225,193,123,.09);
}

.regulation-jump{border-color:rgba(217,184,110,.32)!important}

/* Modal reutilizable para instructivo y reportes. */
body.rpas-reg-open{overflow:hidden}
.rpas-reg-modal{
  position:fixed;
  inset:0;
  z-index:12000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:clamp(14px,3vw,34px);
  background:rgba(2,10,18,.82);
  backdrop-filter:blur(14px) saturate(110%);
  -webkit-backdrop-filter:blur(14px) saturate(110%);
}
.rpas-reg-modal.open{display:flex}
.rpas-reg-dialog{
  width:min(920px,100%);
  max-height:min(88vh,920px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid rgba(225,193,123,.28);
  border-radius:28px;
  background:linear-gradient(160deg,rgba(12,37,59,.985),rgba(5,21,36,.99));
  box-shadow:0 36px 120px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.06);
}
.rpas-reg-topbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px 18px;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.rpas-reg-kicker{
  display:block;
  color:#e1c17b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.rpas-reg-heading h2{
  margin:6px 0 0;
  font-size:clamp(21px,3vw,29px);
  line-height:1.15;
  letter-spacing:-.025em;
}
.rpas-reg-close{
  flex:0 0 auto;
  width:38px;
  height:38px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.rpas-reg-close:hover,.rpas-reg-close:focus-visible{border-color:rgba(225,193,123,.46);outline:none}
.rpas-reg-body{
  overflow:auto;
  padding:23px 26px 26px;
  color:rgba(229,238,245,.88);
  font-size:14px;
  line-height:1.68;
  scrollbar-color:rgba(225,193,123,.35) rgba(255,255,255,.03);
}
.rpas-reg-body p{
  margin:0 0 13px;
  text-align:justify;
  text-wrap:pretty;
}
.rpas-reg-section-title{
  margin:4px 0 14px;
  color:#f7f9fb;
  font-size:15px;
  line-height:1.42;
  font-weight:800;
  letter-spacing:-.006em;
}
.rpas-reg-section-title:not(:first-child){margin-top:25px;padding-top:19px;border-top:1px solid rgba(255,255,255,.08)}
.rpas-reg-body ol{margin:0;padding-left:22px}
.rpas-reg-body li{padding-left:4px;text-align:justify}
.rpas-reg-body li+li{margin-top:9px}
.rpas-reg-report-copy{max-width:760px;margin:4px auto 22px!important;font-size:14.5px;line-height:1.72}
.rpas-reg-download-wrap{text-align:center;margin:24px 0 4px}
.rpas-reg-download{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  background:linear-gradient(180deg,#f2da95,#c8a351);
  color:#17150f;
  font-size:11.5px;
  line-height:1.25;
  font-weight:820;
  letter-spacing:.025em;
  text-align:center;
  box-shadow:0 12px 30px rgba(197,160,76,.18);
}
.rpas-reg-download:hover,.rpas-reg-download:focus-visible{transform:translateY(-1px);filter:brightness(1.03);outline:none}
.rpas-reg-tools{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding:12px 18px;
  border-top:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.018);
}
.rpas-reg-tools.is-hidden{display:none}
.rpas-reg-tool{
  min-height:34px;
  padding:0 13px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.045);
  color:#dbe8f1;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.rpas-reg-tool:hover,.rpas-reg-tool:focus-visible{border-color:rgba(225,193,123,.38);color:#f0d58c;outline:none}

@media(max-width:1050px){
  .format-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  .regulations-grid{grid-template-columns:1fr}
  .regulation-card{min-height:auto}
  .regulation-card-formats{grid-column:auto}
}

@media(max-width:600px){
  .regulations-section{margin:24px 0}
  .regulations-section + .summary{padding-top:0}
  .regulations-panel{padding:22px 18px;border-radius:26px}
  .regulations-heading{gap:14px;margin-bottom:20px}
  .regulations-emblem{width:52px;height:52px;border-radius:14px}
  .regulations-emblem-icon{width:27px;height:27px}
  .regulations-heading h2{font-size:30px}
  .regulations-heading p{font-size:13.5px;line-height:1.55}
  .regulation-card{padding:18px}
  .formats-card-heading{display:block}
  .formats-card-count{display:inline-flex;margin-top:11px}
  .format-actions{grid-template-columns:1fr}
  .rpas-reg-modal{padding:8px}
  .rpas-reg-dialog{max-height:94vh;border-radius:22px}
  .rpas-reg-topbar{padding:18px 17px 14px}
  .rpas-reg-body{padding:19px 18px 22px;font-size:13.5px;line-height:1.62}
  .rpas-reg-section-title{font-size:14.5px}
  .rpas-reg-tools{padding:10px 13px}
}

@media print{
  body.rpas-reg-print>*{display:none!important}
  body.rpas-reg-print:after{display:none!important;content:none!important}
  body.rpas-reg-print>#rpas-reg-modal{display:block!important;position:static!important;padding:0!important;background:#fff!important;color:#111!important}
  body.rpas-reg-print .rpas-reg-dialog{display:block!important;width:100%!important;max-height:none!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:#111!important}
  body.rpas-reg-print .rpas-reg-topbar{padding:0 0 16px!important;border-bottom:1px solid #bbb!important}
  body.rpas-reg-print .rpas-reg-kicker,body.rpas-reg-print .rpas-reg-heading h2{color:#111!important}
  body.rpas-reg-print .rpas-reg-close,body.rpas-reg-print .rpas-reg-tools{display:none!important}
  body.rpas-reg-print .rpas-reg-body{display:block!important;overflow:visible!important;padding:18px 0 0!important;color:#111!important;font-size:11pt!important;line-height:1.5!important}
  body.rpas-reg-print .rpas-reg-body p,body.rpas-reg-print .rpas-reg-body li{color:#111!important}
  body.rpas-reg-print .rpas-reg-section-title{color:#111!important}
}

/* RPAS_NORMATIVA_V2_END */

/* RPAS_STAGE_FINE_TUNE_V1_START */

/* 1) Hero: composición 2-1-1 en cualquier orientación. */
.hero-copy{
  min-height:510px;
}

.hero-lead{
  margin-top:17px;
  max-width:78ch;
  font-size:.84rem;
  line-height:1.48;
  font-style:italic;
}

.hero-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  max-width:700px;
  margin-top:19px;
}

.hero-actions > .button{
  width:100%;
  min-width:0;
  min-height:43px;
}

.hero-actions > .button:nth-child(3),
.hero-actions > .button:nth-child(4){
  grid-column:1 / -1;
}

/* 2) Footer de formatos: más discreto, oro e itálica. */
.formats-card-footer{
  font-size:9.5px;
  line-height:1.50;
  font-style:italic;
}

@media(max-width:700px){
  .hero-copy{
    min-height:0;
  }

  .hero-lead{
    margin-top:14px;
    max-width:78ch;
    font-size:.75rem;
    line-height:1.46;
  }

  .hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:17px;
  }

  .hero-actions > .button{
    min-height:42px;
    padding-inline:13px;
  }

  .hero-actions > .button:nth-child(3),
  .hero-actions > .button:nth-child(4){
    grid-column:1 / -1;
  }

  .formats-card-footer{
    font-size:9.25px;
    line-height:1.48;
  }
}

@media(max-width:430px){
  /* Anula la regla histórica 1-columna y conserva 2-1-1. */
  .hero-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hero-actions > .button{
    padding-inline:9px;
    font-size:.82rem;
  }

  .hero-actions > .button:nth-child(3),
  .hero-actions > .button:nth-child(4){
    grid-column:1 / -1;
  }
}

/* RPAS_STAGE_FINE_TUNE_V1_END */
