/* Común a todas las páginas de osap.es (también Norma y el blog) */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{transition:background .35s,color .35s;font-family:var(--font);background:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
::selection{background:var(--orange-bg)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.mark{display:inline-flex;align-items:center;height:34px;padding:0 11px;border-radius:9px;background:var(--navy);color:#fff;font-weight:800;font-size:15px;letter-spacing:.02em;white-space:nowrap;line-height:1}
.mark .logo{display:block;height:14px;width:auto}
.mark .l-os{fill:none;stroke:currentColor}
.mark .l-corte{fill:var(--navy)}
.mark .l-ap{fill:var(--orange)}
[data-theme="dark"] .mark{box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--primary);color:var(--on-primary);padding:10px 16px;border-radius:9px;font-weight:600;transition:top .2s}
.skip:focus{top:12px}
.theme{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s}
.theme:hover{background:var(--soft);border-color:var(--line-strong)}
.theme svg{width:20px;height:20px;fill:none;stroke:var(--brand);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.theme .a{stroke:var(--orange)}
.theme .sun{display:none}
[data-theme="dark"] .theme .sun{display:block}
[data-theme="dark"] .theme .moon{display:none}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:9px;font-weight:600;font-size:15.5px;transition:background .2s,transform .2s}
.btn:active{transform:scale(.98)}
.btn.primary{background:var(--primary);color:var(--on-primary)}
.btn.primary:hover{background:var(--primary-hover)}
.btn.secondary{background:var(--blue-bg);color:var(--brand)}
.btn.secondary:hover{background:var(--secondary-hover)}
.i{width:24px;height:24px;fill:none;stroke:var(--brand);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s var(--ease)}
.i .a{stroke:var(--orange)}
.i .f{fill:var(--orange)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.07s}.d2{transition-delay:.14s}.d3{transition-delay:.21s}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal,.rise{opacity:1;transform:none}
}
