/* ════════════════════════════════════════════
   EDUCAZIONE (hub) — Scope .oasi-c-educazione · sez. gialla
   ════════════════════════════════════════════ */
.oasi-c-educazione *, .oasi-c-educazione *::before, .oasi-c-educazione *::after { box-sizing: border-box; margin: 0; padding: 0; }
.oasi-c-educazione {
  --_t: var(--oasi-font-title, 'Fraunces', Georgia, serif);
  --_b: var(--oasi-font-body, 'Mulish', system-ui, sans-serif);
  --_cont: var(--oasi-container, 1200px); --_text: 900px;
  --_ink: var(--oasi-text, #17202e); --_mut: var(--oasi-text-muted, #52607a);
  --_edu: var(--oasi-sez-educazione, #e3a008); --_edui: var(--oasi-sez-educazione-ink, #7a5400);
  --_bd: var(--oasi-border, rgba(20,40,70,.1));
  --_dur: var(--oasi-dur, .4s); --_ease: var(--oasi-ease, cubic-bezier(.2,.7,.2,1));
}
.oasi-c-educazione .oasi-wrap  { max-width: var(--_cont); margin-inline: auto; padding-inline: clamp(1.25rem, 5vw, 3rem); }
.oasi-c-educazione .oasi-wrapt { max-width: var(--_text); margin-inline: auto; padding-inline: clamp(1.25rem, 5vw, 3rem); }

.oasi-c-educazione .oe-intro { padding-block: clamp(2.5rem, 5vw, 3.5rem) clamp(.5rem, 1vw, 1rem); }
.oasi-c-educazione .oe-intro p { font-family: var(--_t); font-size: clamp(1.25rem, 2.3vw, 1.6rem); font-weight: 400; line-height: 1.5; color: var(--_ink); max-width: 30ch; text-wrap: pretty; }
.oasi-c-educazione .oe-intro b { color: var(--_edui); font-weight: 600; }

.oasi-c-educazione .oe-list { padding-block: clamp(1.5rem, 3vw, 2.5rem) clamp(3rem, 6vw, 5rem); }
.oasi-c-educazione .oe-row { display: grid; grid-template-columns: 210px 1fr; gap: clamp(1.5rem, 4vw, 3.5rem); padding-block: clamp(2.2rem, 4vw, 3rem); border-top: 1px solid var(--_bd); }
.oasi-c-educazione .oe-row:first-child { border-top: 0; }
.oasi-c-educazione .oe-rail { align-self: start; }
.oasi-c-educazione .oe-badge { display: inline-block; font-family: var(--_b); font-size: .72rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--_edui); background: color-mix(in srgb, var(--_edu) 18%, transparent); padding: .3em .8em; border-radius: var(--oasi-radius-pill, 999px); }
.oasi-c-educazione .oe-kind { margin-top: .8rem; font-family: var(--_b); font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--_mut); }
.oasi-c-educazione .oe-body h2 { font-family: var(--_t); font-size: clamp(1.5rem, 2.8vw, 2.1rem); font-weight: 600; line-height: 1.14; color: var(--_ink); margin-bottom: .6rem; }
.oasi-c-educazione .oe-body p { font-family: var(--_b); font-size: 1.04rem; line-height: 1.7; color: var(--_mut); max-width: 60ch; }
.oasi-c-educazione .oe-body p + p { margin-top: .6rem; }
.oasi-c-educazione .oe-body em { font-family: var(--_t); font-style: italic; color: var(--_ink); }
.oasi-c-educazione .oe-spon { font-size: .85rem; color: var(--_mut); }
.oasi-c-educazione .oe-link { margin-top: 1rem; display: inline-flex; align-items: center; gap: .4em; font-family: var(--_b); font-size: .9rem; font-weight: 800; color: var(--_edui); text-decoration: none; }
.oasi-c-educazione .oe-link svg { transition: transform var(--_dur) var(--_ease); }
.oasi-c-educazione .oe-link:hover svg { transform: translateX(3px); }

.oasi-c-educazione .oe-cta { background: var(--_edu); color: #3a2900; padding-block: clamp(3rem, 6vw, 4.5rem); }
.oasi-c-educazione .oe-cta__in { display: flex; align-items: center; justify-content: space-between; gap: 2rem; flex-wrap: wrap; }
.oasi-c-educazione .oe-cta__t h2 { font-family: var(--_t); font-size: clamp(1.6rem, 3vw, 2.3rem); font-weight: 600; max-width: 20ch; }
.oasi-c-educazione .oe-cta__t p { margin-top: .5rem; font-family: var(--_b); color: #5a4300; max-width: 46ch; }
.oasi-c-educazione .oe-cta__b { flex-shrink: 0; display: inline-flex; align-items: center; gap: .5em; padding: .9em 1.9em; background: #3a2900; color: #fff; font-family: var(--_b); font-weight: 800; font-size: .9rem; border-radius: var(--oasi-radius-pill, 999px); text-decoration: none; transition: transform var(--_dur) var(--_ease); }
.oasi-c-educazione .oe-cta__b svg { transition: transform var(--_dur) var(--_ease); }
.oasi-c-educazione .oe-cta__b:hover { transform: translateY(-2px); }
.oasi-c-educazione .oe-cta__b:hover svg { transform: translateX(3px); }
.oasi-c-educazione .oe-cta__b:focus-visible { outline: 3px solid #3a2900; outline-offset: 3px; }

@media (max-width: 760px) { .oasi-c-educazione .oe-row { grid-template-columns: 1fr; gap: .8rem; } }
@media (prefers-reduced-motion: reduce) { .oasi-c-educazione * { transition: none !important; } }
