
.cfcalc,.cfcalc *{box-sizing:border-box}
.cfcalc{--edge:clamp(16px,4vw,64px);--red:#d52b1e;--gold:#b78a2b;background:#0a0a0a;color:#fff;padding:clamp(58px,8vw,100px) var(--edge);border-top:1px solid rgba(255,255,255,.08)}
.cfcalc-heading{max-width:1000px;margin:0 0 34px}.cfcalc-heading>p{margin:0 0 10px;color:var(--red);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.cfcalc-heading h2{margin:0!important;color:#fff!important;font:400 clamp(2.7rem,5.5vw,5.3rem)/.95 Georgia,serif!important;letter-spacing:-.04em!important}.cfcalc-heading>span{display:block;max-width:760px;margin-top:16px;color:rgba(255,255,255,.56);line-height:1.55}
.cfcalc-shell{max-width:1350px}
.cfcalc-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:18px}.cfcalc-progress button{min-height:62px;border:1px solid rgba(255,255,255,.1);background:#0e0e0e;color:rgba(255,255,255,.45);text-align:left;padding:11px 13px;cursor:pointer}.cfcalc-progress button.is-active,.cfcalc-progress button.is-complete{border-color:rgba(183,138,43,.55);color:#fff}.cfcalc-progress b{display:block;color:var(--red);font:400 1.35rem/1 Georgia,serif}.cfcalc-progress span{display:block;margin-top:6px;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.cfcalc-builder{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.65fr);gap:18px;align-items:start}.cfcalc-form{min-width:0}.cfcalc-step{display:none;min-height:500px;padding:30px;border:1px solid rgba(255,255,255,.1);background:#101010}.cfcalc-step.is-active{display:block}.cfcalc-step-kicker{color:var(--red);font-size:.65rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.cfcalc-step h3{margin:8px 0 8px!important;color:#fff!important;font:400 clamp(2rem,4vw,3.8rem)/.98 Georgia,serif!important}.cfcalc-step>p{max-width:680px;margin:0 0 24px;color:rgba(255,255,255,.56);line-height:1.5}
.cfcalc-project-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cfcalc-project-choices label{position:relative;cursor:pointer}.cfcalc-project-choices input{position:absolute;opacity:0;pointer-events:none}.cfcalc-project-choices span{display:flex;flex-direction:column;min-height:104px;padding:16px;border:1px solid rgba(255,255,255,.12);background:#0d0d0d}.cfcalc-project-choices input:checked+span{border-color:var(--gold);background:#15120c}.cfcalc-project-choices b{font:400 1.25rem/1.05 Georgia,serif}.cfcalc-project-choices small{margin-top:8px;color:rgba(255,255,255,.5);font-size:.74rem;line-height:1.35}
.cfcalc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cfcalc-fields label>span,.cfcalc-step h4{display:block;margin:0 0 8px;color:rgba(255,255,255,.72);font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.cfcalc select{width:100%;min-height:50px;padding:0 12px;border:1px solid rgba(255,255,255,.14);background:#0b0b0b;color:#fff;font:inherit}.cfcalc-step h4{margin-top:24px}
.cfcalc-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cfcalc-checks label{display:flex;align-items:center;gap:10px;min-height:50px;padding:10px 12px;border:1px solid rgba(255,255,255,.1);background:#0d0d0d;cursor:pointer}.cfcalc-checks input{width:18px;height:18px;accent-color:var(--red)}.cfcalc-checks span{font-size:.8rem;color:rgba(255,255,255,.78)}
.cfcalc-nav{display:flex;justify-content:space-between;gap:10px;margin-top:12px}.cfcalc-nav button,.cfcalc-reset,.cfcalc-cta{min-height:48px;padding:0 18px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.cfcalc-back{border:1px solid rgba(255,255,255,.16);background:transparent;color:#fff}.cfcalc-back:disabled{opacity:.3}.cfcalc-next{margin-left:auto;border:1px solid var(--gold);background:transparent;color:#fff}
.cfcalc-result{position:sticky;top:20px;padding:24px;background:#151515;border:1px solid rgba(183,138,43,.38)}.cfcalc-result-kicker{margin:0;color:rgba(255,255,255,.48);font-size:.64rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.cfcalc-price{margin-top:8px;font-size:clamp(2.4rem,4vw,4rem);font-weight:700;letter-spacing:-.05em;line-height:.95}.cfcalc-note{margin:7px 0 22px;color:rgba(255,255,255,.45);font-size:.72rem}.cfcalc-summary-block{padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}.cfcalc-summary-block>span,.cfcalc-review>div>span,.cfcalc-mobile-estimate>span{display:block;margin-bottom:6px;color:rgba(255,255,255,.42);font-size:.61rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.cfcalc-summary-block strong,.cfcalc-review strong{font-size:1rem}.cfcalc-summary-block ul,.cfcalc-review ul{list-style:none;padding:0;margin:0}.cfcalc-summary-block li,.cfcalc-review li{padding:3px 0;color:rgba(255,255,255,.7);font-size:.78rem}.cfcalc-summary-block p,.cfcalc-review p{margin:0;color:rgba(255,255,255,.7);font-size:.78rem;line-height:1.45}.cfcalc-cta{display:flex;align-items:center;justify-content:center;width:100%;margin-top:14px;border:1px solid var(--gold);background:transparent;color:#fff!important;text-decoration:none!important}.cfcalc-reset{width:100%;margin-top:8px;border:1px solid rgba(255,255,255,.15);background:transparent;color:#fff}.cfcalc-result small{display:block;margin-top:14px;color:rgba(255,255,255,.35);font-size:.64rem;line-height:1.45}
.cfcalc-mobile-estimate,.cfcalc-mobile-cta,.cfcalc-mobile-reset{display:none}
.cfcalc-review{display:grid;gap:14px;margin-top:18px}.cfcalc-review>div{padding:14px;border:1px solid rgba(255,255,255,.1);background:#0d0d0d}
@media(max-width:900px){.cfcalc-builder{grid-template-columns:1fr}.cfcalc-result{position:relative;top:auto}}
@media(max-width:620px){
  .cfcalc{--edge:12px;padding-top:48px}.cfcalc-heading h2{font-size:clamp(2.5rem,12vw,4rem)!important}
  .cfcalc-progress{position:sticky;top:0;z-index:6;margin-inline:-12px;padding:8px 12px;background:rgba(10,10,10,.96);backdrop-filter:blur(14px)}.cfcalc-progress button{min-height:50px;padding:8px}.cfcalc-progress b{font-size:1rem}.cfcalc-progress span{font-size:.5rem;letter-spacing:.03em}
  .cfcalc-step{min-height:auto;padding:20px 14px}.cfcalc-step h3{font-size:clamp(2rem,10vw,3rem)!important}
  .cfcalc-project-choices{grid-template-columns:1fr 1fr;gap:7px}.cfcalc-project-choices span{min-height:96px;padding:12px}.cfcalc-project-choices b{font-size:1rem}.cfcalc-project-choices small{font-size:.66rem}
  .cfcalc-fields,.cfcalc-checks{grid-template-columns:1fr}.cfcalc-checks label{min-height:52px}
  .cfcalc-result{display:none}
  .cfcalc-mobile-estimate,.cfcalc-mobile-cta,.cfcalc-mobile-reset{display:block}.cfcalc-mobile-estimate{padding:20px;border:1px solid rgba(183,138,43,.4);background:#151515}.cfcalc-price-mobile{display:block;margin-top:8px}.cfcalc-mobile-estimate small{display:block;margin-top:7px;color:rgba(255,255,255,.4);font-size:.65rem}.cfcalc-mobile-cta{display:flex}.cfcalc-mobile-reset{margin-top:8px}
  .cfcalc-nav{position:sticky;bottom:0;z-index:5;margin:10px -14px -20px;padding:10px 14px max(10px,env(safe-area-inset-bottom));background:rgba(16,16,16,.96);backdrop-filter:blur(14px)}
}
@media(max-width:390px){.cfcalc-project-choices{grid-template-columns:1fr}}


/* v1.9.1 Calculator module separation */
.cfs-services .cfcalc{
  background:#080808!important;
  padding-top:clamp(58px,7vw,90px)!important;
  padding-bottom:clamp(58px,7vw,90px)!important;
}

.cfs-services .cfcalc-shell{
  background:#0d0d0d;
  border:1px solid rgba(255,255,255,.08);
  padding:clamp(14px,2vw,24px);
  box-shadow:0 18px 48px rgba(0,0,0,.26);
}

.cfs-services .cfcalc-step{
  background:#121212!important;
  border-color:rgba(255,255,255,.10)!important;
}

.cfs-services .cfcalc-progress{
  margin-bottom:14px!important;
}

.cfs-services .cfcalc-progress button{
  background:#111!important;
  border-color:rgba(255,255,255,.09)!important;
}

.cfs-services .cfcalc-progress button.is-active,
.cfs-services .cfcalc-progress button.is-complete{
  background:#17130d!important;
  border-color:rgba(183,138,43,.50)!important;
}

@media(max-width:620px){
  .cfs-services .cfcalc-shell{
    margin-inline:0;
    padding:10px;
    border-radius:0;
  }
}


/* v1.10.0 higher contrast builder */
.cfs-services .cfcalc{background:#0d0d0d!important}
.cfs-services .cfcalc-shell{background:#161616!important;border-color:rgba(255,255,255,.18)!important;box-shadow:0 22px 55px rgba(0,0,0,.50)!important}
.cfs-services .cfcalc-step{background:#080808!important;border-color:rgba(255,255,255,.18)!important}
.cfs-services .cfcalc-project-choices span,
.cfs-services .cfcalc-checks label,
.cfs-services .cfcalc select{background:#050505!important;border-color:rgba(255,255,255,.18)!important}
.cfs-services .cfcalc-project-choices input:checked+span{background:#1f1708!important;border-color:var(--gold)!important}
.cfs-services .cfcalc-result{background:#1a1a1a!important;border-color:rgba(183,138,43,.62)!important}
.cfs-services .cfcalc-step>p,
.cfs-services .cfcalc-project-choices small,
.cfs-services .cfcalc-checks span{color:rgba(255,255,255,.76)!important}


/* =========================================================
   v2.1.0 Podcast / Interview Series calculator
   ========================================================= */
.cfcalc [hidden]{display:none!important}

.cfcalc-preset-callout{
  margin-bottom:22px;
  padding:18px 20px;
  border-left:3px solid var(--gold);
  background:linear-gradient(90deg,rgba(183,138,43,.10),rgba(183,138,43,.025));
}
.cfcalc-preset-callout>span{
  display:block;
  margin-bottom:6px;
  color:var(--red);
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.cfcalc-preset-callout strong{
  display:block;
  color:#fff;
  font:400 1.35rem/1.15 Georgia,serif;
}
.cfcalc-preset-callout p{
  max-width:680px;
  margin:7px 0 0;
  color:rgba(255,255,255,.58);
  font-size:.78rem;
  line-height:1.5;
}

.cfcalc-podcast-fields{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.cfcalc-podcast-package-note{
  margin-top:20px;
  padding:16px 18px;
  border:1px solid rgba(183,138,43,.28);
  background:#12100c;
}
.cfcalc-podcast-package-note strong{
  display:block;
  margin-bottom:5px;
  color:#fff;
  font-size:.82rem;
}
.cfcalc-podcast-package-note span{
  color:rgba(255,255,255,.56);
  font-size:.72rem;
  line-height:1.45;
}

.cfcalc-project-choices label:has(input[value="podcast"]) span{
  position:relative;
}
.cfcalc-project-choices label:has(input[value="podcast"]) span:after{
  content:"SERIES";
  position:absolute;
  top:10px;
  right:10px;
  color:var(--gold);
  font-size:.48rem;
  font-weight:900;
  letter-spacing:.10em;
}

@media(max-width:620px){
  .cfcalc-podcast-fields{
    grid-template-columns:1fr;
  }
  .cfcalc-preset-callout{
    padding:15px 14px;
  }
  .cfcalc-podcast-package-note{
    padding:14px;
  }
}


/* v2.2.0 Customer-facing option explanations */
.cfcalc-help{
  display:block;
  min-height:2.8em;
  margin:6px 0 10px;
  color:rgba(255,255,255,.48);
  font-size:.68rem;
  font-weight:400;
  line-height:1.42;
  letter-spacing:0;
  text-transform:none;
}
.cfcalc-checks label{
  align-items:flex-start;
}
.cfcalc-checks label>span{
  display:block;
  min-width:0;
}
.cfcalc-checks label>span>b{
  display:block;
  color:rgba(255,255,255,.82);
  font-size:.78rem;
  font-weight:600;
  line-height:1.25;
}
.cfcalc-checks label>span>small{
  display:block;
  max-width:560px;
  margin-top:5px;
  color:rgba(255,255,255,.46);
  font-size:.64rem;
  font-weight:400;
  line-height:1.42;
  letter-spacing:0;
  text-transform:none;
}
.cfcalc-checks label:has(input:checked)>span>b{
  color:#fff;
}
.cfcalc-checks label:has(input:checked)>span>small{
  color:rgba(255,255,255,.62);
}
@media(max-width:620px){
  .cfcalc-help{min-height:0;font-size:.66rem}
  .cfcalc-checks label>span>b{font-size:.76rem}
  .cfcalc-checks label>span>small{font-size:.63rem}
}

/* v2.3.0 tighter pricing presentation */
.cfcalc-range{margin-top:8px;color:rgba(255,255,255,.68);font-size:.72rem;font-weight:600;letter-spacing:.01em}
