/*
Theme Name: OPENCAP Blocks Premium Fixed
Theme URI: https://otec-opencap.cl/
Author: OPENCAP
Description: Tema Full Site Editing premium para OPENCAP. Diseño corporativo, técnico y completamente editable con bloques nativos.
Version: 3.0.1
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
Text Domain: opencap-blocks-premium
*/

html{scroll-behavior:smooth}
body{overflow-x:hidden}
a{text-underline-offset:3px}

.oc-topbar{font-size:12px;letter-spacing:.02em}
.oc-header{
    position:sticky;top:0;z-index:100;
    background:rgba(255,255,255,.94)!important;
    border-bottom:1px solid #e2e8ef;
    backdrop-filter:blur(16px)
}
.oc-header .wp-block-navigation-item__content{font-weight:750;text-decoration:none}
.oc-header .wp-block-navigation-item__content:hover{color:var(--wp--preset--color--signal-red)}
.oc-header-cta a{
    background:var(--wp--preset--color--ink)!important;
    color:#fff!important;border-radius:999px!important;
    padding:11px 18px!important;font-weight:800!important
}

.oc-hero{
    position:relative;overflow:hidden;
    background:
      radial-gradient(circle at 82% 18%,rgba(229,63,55,.18),transparent 25%),
      radial-gradient(circle at 65% 75%,rgba(65,173,215,.10),transparent 28%),
      linear-gradient(135deg,#081522 0%,#0b2032 48%,#12344f 100%)
}
.oc-hero:before{
    content:"";position:absolute;inset:0;pointer-events:none;
    background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
    background-size:42px 42px
}
.oc-hero-copy{position:relative;z-index:2}
.oc-eyebrow{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.14em}
.oc-eyebrow:before{content:"";width:34px;height:2px;background:currentColor;display:inline-block}
.oc-hero-title{letter-spacing:-.032em;max-width:760px}
.oc-hero-title em{font-style:normal;color:var(--wp--preset--color--signal-red)}
.oc-hero-lead{max-width:660px;color:#c7d6e2}

.oc-pill-row{gap:10px!important}
.oc-pill{
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.055);
    border-radius:999px;padding:8px 12px!important
}
.oc-pill p{margin:0!important}

.oc-command{
    position:relative;z-index:2;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(5,17,28,.72)!important;
    border-radius:26px!important;
    box-shadow:0 30px 80px rgba(0,0,0,.34);
    overflow:hidden
}
.oc-command-head{border-bottom:1px solid rgba(255,255,255,.10)}
.oc-live{
    display:inline-flex;align-items:center;gap:8px
}
.oc-live:before{
    content:"";width:8px;height:8px;border-radius:50%;
    background:#55d596;box-shadow:0 0 0 5px rgba(85,213,150,.11)
}
.oc-command-stat{
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.045);
    border-radius:16px;padding:16px!important;height:100%
}
.oc-command-stat strong{font-size:1.7rem}
.oc-progress{
    height:8px;background:rgba(255,255,255,.10);border-radius:999px;overflow:hidden
}
.oc-progress:before{
    content:"";display:block;height:100%;width:78%;
    background:linear-gradient(90deg,#e53f37,#f18a3c);border-radius:inherit
}
.oc-module{
    border-top:1px solid rgba(255,255,255,.08);
    padding:13px 0!important
}
.oc-badge{
    display:inline-block;border-radius:999px;padding:5px 9px!important;
    background:rgba(85,213,150,.13);color:#84e7b6
}

.oc-metric-strip{box-shadow:0 22px 60px rgba(5,25,42,.08)}
.oc-metric{border-right:1px solid #e2e8ef}
.oc-metric:last-child{border-right:0}

.oc-section-kicker{letter-spacing:.14em;font-weight:800}
.oc-section-title{letter-spacing:-.025em}
.oc-section-intro{max-width:720px}

.oc-card{
    height:100%;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
    box-shadow:0 10px 30px rgba(7,25,42,.035)
}
.oc-card:hover{
    transform:translateY(-5px);
    box-shadow:0 24px 55px rgba(7,25,42,.11);
    border-color:#c9d7e1!important
}
.oc-card-index{
    display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;
    background:#eef3f7;color:var(--wp--preset--color--signal-red);
    font-family:var(--wp--preset--font-family--oswald);font-weight:700
}
.oc-card-link a{font-weight:800;text-decoration:none}
.oc-card-link a:after{content:"  →";color:var(--wp--preset--color--signal-red)}

.oc-route-panel{
    background:
      linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.03));
    border:1px solid rgba(255,255,255,.13);
    border-radius:24px!important
}
.oc-route-line{border-top:1px solid rgba(255,255,255,.10)}
.oc-route-number{
    display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;
    background:var(--wp--preset--color--signal-red);color:#fff;
    font-family:var(--wp--preset--font-family--oswald);font-weight:700
}

.oc-process-card{height:100%;position:relative}
.oc-process-number{
    font-size:3.2rem!important;line-height:1!important;
    color:#dce5ec;font-family:var(--wp--preset--font-family--oswald);font-weight:700
}
.oc-process-card:hover .oc-process-number{color:#efb2ae}

.oc-sector{
    border:1px solid #dce5ec;border-radius:999px;padding:10px 14px!important;
    background:#fff
}
.oc-sector p{margin:0!important;font-weight:700;font-size:.84rem}

.oc-cta{
    overflow:hidden;position:relative;
    background:
      radial-gradient(circle at 88% 25%,rgba(229,63,55,.22),transparent 26%),
      linear-gradient(135deg,#0b1f33,#133e5e)
}
.oc-cta:after{
    content:"+";position:absolute;right:3%;bottom:-18%;
    font-family:var(--wp--preset--font-family--oswald);
    font-size:24rem;line-height:1;color:rgba(255,255,255,.035);
    font-weight:700;pointer-events:none
}
.oc-cta-inner{position:relative;z-index:2}

.oc-contact-form label{display:block;font-size:12px;font-weight:750;margin-bottom:14px;color:#1a2b3b}
.oc-contact-form input,.oc-contact-form select,.oc-contact-form textarea{
    width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d6e1e8;border-radius:11px;
    padding:12px 13px;font:inherit;background:#fff;outline:none
}
.oc-contact-form input:focus,.oc-contact-form select:focus,.oc-contact-form textarea:focus{
    border-color:#55acd1;box-shadow:0 0 0 3px rgba(85,172,209,.12)
}
.oc-contact-form button{
    width:100%;border:0;border-radius:11px;padding:14px 18px;
    background:#e53f37;color:white;font-weight:800;cursor:pointer
}
.oc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.oc-form-status{margin-top:12px;font-size:12px;font-weight:800}
.oc-form-status.ok{color:#18865d}.oc-form-status.error{color:#b52d2d}

.oc-footer a{text-decoration:none}
.oc-footer .wp-block-navigation-item__content{color:#c5d4df}
.oc-footer .wp-block-navigation-item__content:hover{color:#fff}

@media(max-width:980px){
  .oc-hero-columns,.oc-card-row,.oc-process-row,.oc-route-columns,.oc-footer-columns{flex-wrap:wrap!important}
  .oc-card-row>.wp-block-column,.oc-process-row>.wp-block-column{flex-basis:46%!important}
  .oc-metric{border-right:0;border-bottom:1px solid #e2e8ef}
}
@media(max-width:640px){
  .oc-card-row>.wp-block-column,.oc-process-row>.wp-block-column{flex-basis:100%!important}
  .oc-form-row{grid-template-columns:1fr}
  .oc-hero{padding-top:55px!important;padding-bottom:55px!important}
  .oc-command{margin-top:25px}
  .oc-cta:after{font-size:14rem}
}
