:root{--cc39-teal:#25B8B1;--cc39-coral:#F65E4C;--cc39-yellow:#FEBF2F;--cc39-blue:#164E63;--cc39-ink:#21313C;--cc39-ivory:#FFF8F0;--cc39-white:#fff;--cc39-border:#d7e4e2;--cc39-shadow:0 16px 44px rgba(22,78,99,.14)}
.cc39-shell{max-width:1240px;margin:0 auto;padding:32px 20px;color:var(--cc39-ink);font-family:Inter,"Noto Sans",Arial,sans-serif}.cc39-hero{border-radius:30px;padding:clamp(28px,5vw,64px);background:linear-gradient(135deg,#164e63,#167f82 58%,#25b8b1);color:#fff;box-shadow:var(--cc39-shadow);position:relative;overflow:hidden}.cc39-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-80px;top:-90px;background:rgba(254,191,47,.25)}.cc39-kicker{font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.cc39-hero h1{font-size:clamp(2rem,5vw,4.2rem);line-height:1.02;max-width:900px;margin:.5rem 0 1rem}.cc39-hero p{font-size:clamp(1rem,2vw,1.25rem);max-width:780px;line-height:1.65}.cc39-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.cc39-btn{appearance:none;border:0;border-radius:999px;padding:14px 22px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.cc39-btn-primary{background:var(--cc39-yellow);color:#2b260f}.cc39-btn-secondary{background:#fff;color:var(--cc39-blue)}.cc39-btn-outline{background:transparent;color:var(--cc39-blue);border:2px solid currentColor}.cc39-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:28px 0}.cc39-card{border:1px solid var(--cc39-border);border-radius:24px;background:#fff;padding:24px;box-shadow:0 10px 30px rgba(22,78,99,.08);position:relative}.cc39-card.is-featured{border:3px solid var(--cc39-coral);transform:translateY(-4px)}.cc39-badge{display:inline-flex;border-radius:999px;background:#fff1ed;color:#8a2419;padding:7px 11px;font-size:.78rem;font-weight:900}.cc39-card h3{font-size:1.45rem;margin:.75rem 0 .35rem}.cc39-price{font-size:2rem;font-weight:900;color:var(--cc39-blue);margin:14px 0 4px}.cc39-small{font-size:.9rem;color:#4a5d67;line-height:1.5}.cc39-card ul{padding-left:1.25rem}.cc39-card li{margin:.55rem 0;line-height:1.4}.cc39-cycle{display:inline-flex;border:1px solid var(--cc39-border);background:#fff;border-radius:999px;padding:4px;gap:4px;margin:24px 0}.cc39-cycle button{border:0;background:transparent;border-radius:999px;padding:10px 18px;font-weight:800;cursor:pointer;color:var(--cc39-blue)}.cc39-cycle button.is-active{background:var(--cc39-blue);color:#fff}.cc39-section{padding:44px 0}.cc39-section h2{font-size:clamp(1.7rem,3vw,2.6rem);color:var(--cc39-blue);margin:0 0 12px}.cc39-table-wrap{overflow:auto;border:1px solid var(--cc39-border);border-radius:22px;background:#fff}.cc39-table{width:100%;border-collapse:collapse;min-width:980px}.cc39-table th,.cc39-table td{padding:13px 14px;border-bottom:1px solid #e8efee;text-align:left;vertical-align:top}.cc39-table th{background:#eaf8f6;color:#123e4d;position:sticky;top:0;z-index:1}.cc39-table tr:last-child td{border-bottom:0}.cc39-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:22px}.cc39-stat{background:#fff;border-radius:18px;padding:18px;text-align:center;color:var(--cc39-blue);box-shadow:0 8px 24px rgba(22,78,99,.1)}.cc39-stat strong{display:block;font-size:2rem}.cc39-note{border-left:6px solid var(--cc39-yellow);background:#fffaf0;padding:18px;border-radius:14px;line-height:1.55}.cc39-live{border:2px solid var(--cc39-teal);background:#f0fffc;border-radius:20px;padding:20px;margin:18px 0;color:#123e4d}.cc39-live.is-now{border-color:var(--cc39-coral);background:#fff2ee}.cc39-live h2{font-size:1.55rem!important;color:#123e4d!important}.cc39-invite{border-radius:20px;background:#fff;padding:20px;border:1px solid var(--cc39-border);margin:18px 0}.cc39-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.cc39-form-grid label{font-weight:750}.cc39-form-grid input,.cc39-form-grid select,.cc39-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #9fb7b5;border-radius:12px;padding:12px;margin-top:6px;font:inherit}.cc39-help{font-size:.86rem;color:#53666f}.cc39-alert{padding:13px 16px;border-radius:12px;margin:12px 0;background:#eef9f8;color:#164e63}.cc39-toolbar{display:flex;gap:6px;flex-wrap:wrap;border:1px solid #a9bfbd;border-bottom:0;padding:8px;border-radius:12px 12px 0 0;background:#f5fbfa}.cc39-toolbar button{border:1px solid #b8cdca;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer;font-weight:700}.cc39-editor{min-height:180px;border:1px solid #a9bfbd;border-radius:0 0 12px 12px;padding:14px;background:#fff;line-height:1.6}.cc39-quality-help{display:inline-flex;align-items:center;gap:5px;cursor:help;border-bottom:1px dotted currentColor}.cc39-paypal-placeholder{width:100%;margin-top:12px;background:#ffc439;color:#111;border:0;border-radius:999px;padding:12px;font-weight:900}.cc39-paypal-placeholder[disabled]{opacity:.62;cursor:not-allowed}.cc39-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* Novenas: contraste y jerarquía */
body.cc39-novena main h1,body.cc39-novena main h2,body.cc39-novena main h3{color:#123e4d}.cc39-novena-step-title,body.cc39-novena main h3{font-size:clamp(1.25rem,2vw,1.65rem)!important;line-height:1.25!important}.cc39-novena-community,.cc39-novena-community *{color:#123e4d!important;background:#f5fffd!important}
html[data-contrast="high"] .cc39-card,html[data-contrast="maximum"] .cc39-card,body.contrast-high .cc39-card,body.contrast-maximum .cc39-card{background:#000!important;color:#fff!important;border-color:#fff!important}html[data-contrast="high"] .cc39-card *,html[data-contrast="maximum"] .cc39-card *,body.contrast-high .cc39-card *,body.contrast-maximum .cc39-card *{color:#fff!important}html[data-contrast="high"] .cc39-live,html[data-contrast="maximum"] .cc39-live,body.contrast-high .cc39-live,body.contrast-maximum .cc39-live{background:#000!important;color:#fff!important;border-color:#ffeb3b!important}html[data-contrast="high"] .cc39-live *,html[data-contrast="maximum"] .cc39-live *,body.contrast-high .cc39-live *,body.contrast-maximum .cc39-live *{color:#fff!important}.cc39-focus:focus{outline:4px solid #febf2f;outline-offset:3px}
@media(max-width:720px){.cc39-shell{padding:18px 12px}.cc39-card.is-featured{transform:none}.cc39-hero{border-radius:22px}.cc39-actions .cc39-btn{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.cc39-hero-compact{padding:clamp(26px,4vw,46px)}.cc39-hero-compact h1{font-size:clamp(2rem,4vw,3.35rem)}.cc39-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cc39-file-label{display:block;font-weight:800;margin:20px 0}.cc39-file-label input{display:block;width:100%;box-sizing:border-box;margin:8px 0;padding:14px;border:1px dashed #789d9a;border-radius:14px;background:#f8fffe}.cc39-alert.cc39-success{background:#eafaf0;color:#155b2c;border:1px solid #79c992}.cc39-alert.cc39-error{background:#fff0ed;color:#8a2419;border:1px solid #ef9c8f}.cc39-link-button{border:0;background:transparent;color:#9b2c21;text-decoration:underline;font:inherit;font-weight:800;cursor:pointer;padding:6px}.cc39-inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cc39-inline-form select{min-width:190px;border:1px solid #9fb7b5;border-radius:10px;padding:10px;font:inherit}.cc39-centered-card{max-width:720px;margin:8vh auto}.cc39-table-medium{min-width:760px}.cc39-card h1,.cc39-card h2{color:var(--cc39-blue)}
@media(max-width:860px){.cc39-two-columns{grid-template-columns:1fr}}
.cc39-room-banner{position:fixed;right:18px;bottom:18px;z-index:9998;width:min(420px,calc(100vw - 36px));padding:18px 46px 18px 18px;border:2px solid var(--cc39-teal);border-radius:18px;background:#f4fffd;color:#123e4d;box-shadow:var(--cc39-shadow)}.cc39-room-banner h2{font-size:1.1rem;margin:0 0 8px;color:#123e4d}.cc39-room-banner div{margin-top:7px;line-height:1.45}.cc39-room-banner>button{position:absolute;right:10px;top:8px;border:0;background:transparent;font-size:1.6rem;cursor:pointer;color:#123e4d}.cc39-room-banner a{font-weight:800;color:#075e63}
html[data-contrast="high"] .cc39-room-banner,html[data-contrast="maximum"] .cc39-room-banner,body.contrast-high .cc39-room-banner,body.contrast-maximum .cc39-room-banner{background:#000!important;color:#fff!important;border-color:#ffeb3b!important}.cc39-room-banner *{max-width:100%}
