:root{--cc-bg:#0E1621;--cc-surface:#17222E;--cc-ink:#F2F5F8;--cc-muted:#7C93A5;--cc-accent:#C8102E;--cc-line:#2A3947;--cc-h:'Archivo',sans-serif;--cc-b:'Manrope',sans-serif;}
.catalyst-camp{background:var(--cc-bg);color:var(--cc-ink);font-family:var(--cc-b);overflow-x:hidden;}
.catalyst-camp *{box-sizing:border-box;}
.catalyst-camp img{max-width:100%;}
.cc-h2{font-family:var(--cc-h);font-weight:800;font-size:2.5rem;line-height:1.05;text-transform:uppercase;color:var(--cc-ink);margin:0 0 1.75rem;}
.cc-h3{font-family:var(--cc-h);font-weight:800;font-size:1.25rem;letter-spacing:.04em;text-transform:uppercase;color:var(--cc-ink);margin:0 0 1rem;}
.cc-body{font-family:var(--cc-b);font-size:1.15rem;line-height:1.75;color:var(--cc-ink);opacity:.88;margin:0;}
.cc-hero{min-height:92vh;display:flex;align-items:flex-end;padding:6rem 6rem 5rem;background-size:cover;background-position:center;background-attachment:fixed;}
.cc-hero-inner{max-width:820px;display:flex;flex-direction:column;gap:1.25rem;}
.cc-eyebrow{align-self:flex-start;background:var(--cc-accent);color:#F2F5F8;font-family:var(--cc-b);font-size:.85rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:.45rem .95rem;border-radius:2px;}
.cc-hero-title{font-family:var(--cc-h);font-weight:800;font-size:4rem;line-height:1.0;letter-spacing:-.025em;text-transform:uppercase;margin:0;}
.cc-hero-sub{font-family:var(--cc-b);font-size:1.25rem;line-height:1.5;opacity:.9;max-width:52ch;margin:0;}
.cc-hero-cta{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap;}
.cc-btn{display:inline-block;background:var(--cc-accent);color:#F2F5F8;font-family:var(--cc-h);font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:1rem 2.5rem;border-radius:4px;text-decoration:none;font-size:1rem;transition:background .2s,transform .2s;}
.cc-btn:hover{background:#E11530;transform:translateY(-2px);color:#F2F5F8;}
.cc-btn-ghost{background:transparent;border:1px solid rgba(242,245,248,.45);}
.cc-btn-ghost:hover{background:rgba(242,245,248,.06);border-color:var(--cc-ink);}
.cc-overview{display:flex;align-items:stretch;min-height:600px;background:var(--cc-bg);}
.cc-ov-text{flex:0 0 46%;display:flex;flex-direction:column;justify-content:center;gap:1.5rem;padding:6rem 4.5rem 6rem 6rem;}
.cc-ov-img{flex:1;background-size:cover;background-position:center;min-height:340px;}
.cc-stats{display:flex;background:var(--cc-surface);}
.cc-stat{flex:1;padding:3rem;border-left:1px solid var(--cc-line);display:flex;flex-direction:column;}
.cc-stat:first-child{border-left:none;}
.cc-stat-n{font-family:var(--cc-h);font-weight:800;font-size:5.5rem;line-height:.9;color:var(--cc-accent);}
.cc-stat-l{font-family:var(--cc-b);font-size:.95rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin-top:1.75rem;}
.cc-outcomes{background:var(--cc-bg);background-size:cover;background-position:center;background-attachment:fixed;padding:7rem 6rem;display:flex;align-items:center;min-height:600px;}
.cc-outcomes-inner{max-width:900px;width:100%;}
.cc-out-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(242,245,248,.22);}
.cc-out-list li{padding:1.35rem 0;border-bottom:1px solid rgba(242,245,248,.22);font-family:var(--cc-b);font-size:1.15rem;line-height:1.5;}
.cc-includes{background:var(--cc-surface);padding:6rem;}
.cc-inc-grid{display:flex;flex-wrap:wrap;gap:1rem 3rem;max-width:1000px;}
.cc-inc-item{flex:0 0 calc(50% - 1.5rem);border-left:3px solid var(--cc-accent);padding:.75rem 0 .75rem 1.25rem;font-family:var(--cc-b);font-size:1.1rem;line-height:1.4;}
.cc-note{margin:2.5rem 0 0;font-style:italic;color:var(--cc-muted);}
.cc-gallery{background:var(--cc-bg);padding:6rem;}
.cc-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;}
.cc-gal-item{aspect-ratio:4/3;background-size:cover;background-position:center;border-radius:2px;}
.cc-arrange{background:var(--cc-bg);padding:7rem 6rem;}
.cc-arrange-cols{display:flex;gap:6rem;max-width:1100px;margin-top:2rem;}
.cc-arrange-col{flex:1;border-top:3px solid var(--cc-accent);padding-top:2rem;}
.cc-register{background:var(--cc-surface);padding:7rem 6rem;}
.cc-register-inner{max-width:620px;margin:0 auto;}
.cc-register .cc-h2{text-align:center;}
.cc-price{font-family:var(--cc-h);font-size:1.4rem;text-align:center;margin:0 0 2rem;opacity:.9;}
.cc-addtocart .variations{width:100%;border-collapse:collapse;margin:0 0 1.5rem;}
.cc-addtocart .variations th,.cc-addtocart .variations td{padding:.5rem 0;text-align:left;vertical-align:middle;}
.cc-addtocart .variations label{color:var(--cc-ink);font-family:var(--cc-h);text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;font-weight:700;}
.cc-addtocart select{width:100%;padding:.85rem;background:var(--cc-bg);color:var(--cc-ink);border:1px solid var(--cc-line);border-radius:4px;font-family:var(--cc-b);font-size:1rem;}
.cc-addtocart .woocommerce-variation-price .price,.cc-addtocart .woocommerce-variation-price{color:var(--cc-ink);font-family:var(--cc-h);font-size:1.5rem;margin:1rem 0;display:block;}
.cc-addtocart .wc-deposits-option,.cc-addtocart .wc_deposits_option{color:var(--cc-ink);margin:1rem 0;font-family:var(--cc-b);}
.cc-addtocart .wc-deposits-option label{color:var(--cc-ink);}
.cc-addtocart .quantity{margin:0 0 1rem;}
.cc-addtocart button.single_add_to_cart_button{width:100%;background:var(--cc-accent)!important;color:#F2F5F8!important;font-family:var(--cc-h)!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.08em;padding:1.1rem 2.5rem!important;border-radius:4px!important;border:none!important;font-size:1.05rem!important;cursor:pointer;transition:background .2s;}
.cc-addtocart button.single_add_to_cart_button:hover{background:#E11530!important;}
.cc-addtocart .reset_variations{color:var(--cc-muted);font-size:.85rem;}
.cc-scarcity{margin:1.5rem 0 0;text-align:center;color:var(--cc-muted);font-style:italic;}
.cc-pathway{background:var(--cc-bg);padding:5rem 6rem 7rem;}
.cc-pathway-inner{max-width:820px;}
@media(max-width:900px){
.cc-hero{padding:4rem 1.5rem 3rem;min-height:82vh;background-attachment:scroll;}
.cc-hero-title{font-size:2.4rem;}
.cc-overview{flex-direction:column;min-height:auto;}
.cc-ov-text{flex:1 1 auto;padding:3.5rem 1.5rem;}
.cc-ov-img{min-height:300px;}
.cc-stats{flex-direction:column;}
.cc-stat{border-left:none;border-top:1px solid var(--cc-line);}
.cc-stat:first-child{border-top:none;}
.cc-stat-n{font-size:4rem;}
.cc-outcomes{padding:4rem 1.5rem;min-height:auto;background-attachment:scroll;}
.cc-includes,.cc-gallery,.cc-arrange,.cc-register,.cc-pathway{padding-left:1.5rem;padding-right:1.5rem;padding-top:4rem;padding-bottom:4rem;}
.cc-h2{font-size:1.8rem;}
.cc-inc-item{flex:1 1 100%;}
.cc-gallery-grid{grid-template-columns:1fr 1fr;}
.cc-arrange-cols{flex-direction:column;gap:2.5rem;}
}
.cc-pathway{background:var(--cc-bg);padding:6rem;}.cc-pathway-inner{max-width:1120px;margin:0 auto;}.cc-pathway-intro{max-width:660px;margin-top:1rem;}.cc-pathway-track{display:flex;gap:1.25rem;margin-top:3rem;}.cc-stop{flex:1;background:var(--cc-surface);border-top:3px solid var(--cc-line);padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:.6rem;border-radius:2px;min-height:190px;}.cc-stop-current{border-top-color:var(--cc-accent);background:linear-gradient(180deg,rgba(200,16,46,.12),var(--cc-surface));}.cc-stop-season{font-family:var(--cc-b);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cc-accent);}.cc-stop-loc{font-family:var(--cc-h);font-weight:800;font-size:1.3rem;text-transform:uppercase;color:var(--cc-ink);line-height:1.1;}.cc-stop-note{font-family:var(--cc-b);font-size:.95rem;color:var(--cc-ink);opacity:.72;line-height:1.45;}.cc-stop-badge{margin-top:auto;font-family:var(--cc-b);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cc-accent);}.cc-pathway-close{max-width:680px;margin-top:3rem;font-size:1.2rem;font-weight:600;}@media(max-width:900px){.cc-pathway{padding:4rem 1.5rem;}.cc-pathway-track{flex-direction:column;gap:1rem;margin-top:2rem;}.cc-stop{min-height:0;}}
.cc-stop-link{text-decoration:none;cursor:pointer;transition:transform .2s ease,border-color .2s ease;}.cc-stop-link:hover{transform:translateY(-4px);border-top-color:var(--cc-accent);}
.cc-addons{margin:0 0 1.5rem;border-top:1px solid var(--cc-line);padding-top:1.25rem;}.cc-addons-title{display:block;font-family:var(--cc-h);text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;font-weight:700;color:var(--cc-ink);margin-bottom:.5rem;}.cc-addon{display:flex;align-items:center;gap:.7rem;padding:.7rem 0;color:var(--cc-ink);font-family:var(--cc-b);font-size:1rem;cursor:pointer;border-bottom:1px solid rgba(42,57,71,.6);}.cc-addon input{accent-color:var(--cc-accent);width:1.15rem;height:1.15rem;flex:0 0 auto;}.cc-addon-label{flex:1;}.cc-addon-label em{color:var(--cc-muted);font-style:normal;font-size:.85rem;margin-left:.35rem;}.cc-addon-price{color:var(--cc-accent);font-family:var(--cc-h);font-weight:700;white-space:nowrap;}
.cc-pathway-eyebrow{display:inline-block;background:var(--cc-accent);color:#F2F5F8;font-family:var(--cc-b);font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:.45rem .95rem;border-radius:2px;margin-bottom:1.5rem;}.cc-pathway-photo{background-size:cover !important;background-position:center !important;background-attachment:fixed !important;}.cc-pathway-photo .cc-stop{background:rgba(23,34,46,.92);}@media(max-width:900px){.cc-pathway-photo{background-attachment:scroll !important;}}
.cc-closing{background-size:cover;background-position:center;background-attachment:fixed;min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:5rem 6rem;}.cc-closing-inner{max-width:820px;display:flex;flex-direction:column;align-items:center;gap:1.75rem;}.cc-closing-line{font-family:var(--cc-h);font-weight:800;font-size:3rem;line-height:1.05;text-transform:uppercase;color:var(--cc-ink);margin:0;letter-spacing:-.02em;text-shadow:0 2px 30px rgba(14,22,33,.6);}@media(max-width:900px){.cc-closing{background-attachment:scroll;min-height:38vh;padding:3.5rem 1.5rem;}.cc-closing-line{font-size:2rem;}}
.cc-live-total{display:none;align-items:baseline;gap:.75rem;flex-wrap:wrap;margin:0 0 1.5rem;padding:1rem 1.25rem;background:rgba(200,16,46,.10);border:1px solid var(--cc-accent);border-radius:4px;}.cc-live-total.is-visible{display:flex;}.cc-live-total-label{font-family:var(--cc-h);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;font-weight:700;color:var(--cc-ink);}.cc-live-total-amount{font-family:var(--cc-h);font-weight:800;font-size:1.6rem;color:var(--cc-accent);}.cc-live-total-note{font-family:var(--cc-b);font-size:.8rem;color:var(--cc-muted);margin-left:auto;}
.cc-affirm-msg{margin:0 0 1.5rem;padding:.85rem 1.1rem;background:rgba(242,245,248,.06);border-left:3px solid var(--cc-accent);border-radius:4px;color:var(--cc-ink);font-family:var(--cc-b);font-size:.95rem;line-height:1.45;}.cc-affirm-msg strong{color:var(--cc-ink);font-family:var(--cc-h);text-transform:uppercase;letter-spacing:.02em;font-size:.9rem;display:block;margin-bottom:.15rem;}
.cc-financing{max-width:620px;margin:1.5rem auto 0;padding:.9rem 1.1rem;background:rgba(200,16,46,.10);border-left:3px solid var(--cc-accent);border-radius:4px;color:var(--cc-ink);font-family:var(--cc-b);font-size:.95rem;line-height:1.45;text-align:left;}.cc-financing strong{color:var(--cc-ink);font-family:var(--cc-h);text-transform:uppercase;letter-spacing:.02em;font-size:.9rem;display:block;margin-bottom:.15rem;}
/* Color hardening for custom live theme (dark page needs light hero text) */
.cc-hero .cc-hero-title{color:#F2F5F8 !important;}
.cc-hero .cc-hero-sub{color:#F2F5F8 !important;}
