/* Company-formation page styles — scoped under .cf-scope to avoid clashing with the main site. */
.cf-scope{
  --navy:#12253A;
  --navy-deep:#0C1A29;
  --sand:#EFE9DC;
  --sand-dim:#E4DDCB;
  --gold:#B8924C;
  --gold-soft:#8C6E39;
  --ink:#1E1C19;
  --grey:#6b6558;
  --line:#DED7C6;
  font-family:'Jost', Arial, sans-serif;
  color:var(--ink);
  background:#fff;
}
.cf-scope *{ box-sizing:border-box; margin:0; padding:0; }
.cf-scope img,.cf-scope svg{ display:block; }
.cf-scope a{ color:inherit; }

.cf-scope .wrap{ max-width:1040px; margin:0 auto; padding-left:24px; padding-right:24px; }

/* HERO */
.cf-scope .hero{ background:var(--navy); color:var(--sand); padding:76px 0 64px; }
.cf-scope .hero-inner{ display:grid; grid-template-columns:1.15fr 0.85fr; gap:48px; align-items:center; }
.cf-scope .hero-eyebrow{ font-size:12px; letter-spacing:2.8px; text-transform:uppercase; color:var(--gold); font-weight:500; margin-bottom:16px; }
.cf-scope .hero-title{ font-family:'Fraunces', serif; font-weight:600; font-size:clamp(32px,5vw,50px); line-height:1.1; margin-bottom:18px; }
.cf-scope .hero-title em{ font-style:normal; color:var(--gold); }
.cf-scope .hero-sub{ font-size:15.5px; line-height:1.7; color:#B7C0CB; max-width:480px; margin-bottom:30px; }
.cf-scope .hero-cta{ display:inline-flex; align-items:center; gap:9px; background:var(--gold); color:var(--navy-deep); font-weight:600; font-size:14.5px; text-decoration:none; padding:15px 28px; transition:opacity 0.15s ease; }
.cf-scope .hero-cta:hover{ opacity:0.88; }
.cf-scope .hero-stats{ border-left:1px solid rgba(184,146,76,0.3); padding-left:36px; display:flex; flex-direction:column; gap:26px; }
.cf-scope .hero-stat-num{ font-family:'Fraunces', serif; font-weight:600; font-size:30px; color:var(--gold); line-height:1; margin-bottom:6px; }
.cf-scope .hero-stat-label{ font-size:12.5px; color:#B7C0CB; line-height:1.5; }
@media (max-width:760px){
  .cf-scope .hero-inner{ grid-template-columns:1fr; }
  .cf-scope .hero-stats{ border-left:none; border-top:1px solid rgba(184,146,76,0.3); padding-left:0; padding-top:26px; flex-direction:row; flex-wrap:wrap; }
}

/* PROCESS */
.cf-scope .process{ padding:72px 0; }
.cf-scope .section-eyebrow{ font-size:12px; letter-spacing:2.8px; text-transform:uppercase; color:var(--gold-soft); font-weight:500; margin-bottom:12px; text-align:center; }
.cf-scope .section-title{ font-family:'Fraunces', serif; font-weight:600; font-size:clamp(24px,3.6vw,32px); color:var(--navy); text-align:center; margin-bottom:48px; }
.cf-scope .process-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
.cf-scope .process-card{ padding:0 22px; border-left:1px solid var(--line); }
.cf-scope .process-card:first-child{ border-left:none; padding-left:0; }
.cf-scope .process-num{ font-family:'Fraunces', serif; font-weight:600; font-size:22px; color:var(--gold); margin-bottom:14px; }
.cf-scope .process-title{ font-weight:500; font-size:15px; color:var(--navy); margin-bottom:8px; }
.cf-scope .process-desc{ font-size:12.8px; color:var(--grey); line-height:1.6; }
@media (max-width:760px){
  .cf-scope .process-grid{ grid-template-columns:1fr; gap:28px; }
  .cf-scope .process-card{ border-left:none; padding-left:0; border-top:1px solid var(--line); padding-top:24px; }
  .cf-scope .process-card:first-child{ border-top:none; padding-top:0; }
}

/* CALCULATOR */
.cf-scope .calc-section{ background:#FBF9F4; padding:76px 0 84px; }
.cf-scope .calc-wrap{ max-width:720px; margin:0 auto; padding:0 20px; }
.cf-scope .calc-header{ margin-bottom:44px; padding-bottom:26px; border-bottom:1px solid var(--line); text-align:left; }
.cf-scope .calc-eyebrow{ font-size:11.5px; letter-spacing:3px; text-transform:uppercase; color:var(--gold-soft); font-weight:500; margin-bottom:14px; }
.cf-scope .calc-title{ font-family:'Fraunces', serif; font-weight:600; font-size:clamp(26px,4vw,36px); color:var(--navy); margin-bottom:12px; line-height:1.15; }
.cf-scope .calc-sub{ color:var(--grey); font-size:14.5px; max-width:460px; line-height:1.65; }
.cf-scope .step{ display:grid; grid-template-columns:56px 1fr; gap:0 20px; padding:32px 0; border-bottom:1px solid var(--line); }
.cf-scope .step:first-of-type{ padding-top:0; }
.cf-scope .step-num{ font-family:'Fraunces', serif; font-weight:600; font-size:26px; color:var(--gold); line-height:1; }
.cf-scope .step-body{ min-width:0; }
.cf-scope .step-title{ font-family:'Fraunces', serif; font-weight:600; font-size:19px; color:var(--navy); margin-bottom:18px; }
.cf-scope .zone-list{ display:flex; flex-direction:column; }
.cf-scope .zone-row{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:14px 4px 14px 16px; border-left:2px solid transparent; cursor:pointer; transition:border-color 0.15s ease, background 0.15s ease; }
.cf-scope .zone-row + .zone-row{ border-top:1px solid var(--line); }
.cf-scope .zone-row:hover{ background:#F4F0E6; }
.cf-scope .zone-row.active{ border-left:2px solid var(--gold); background:#F4F0E6; }
.cf-scope .zone-name-wrap{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
.cf-scope .zone-name{ font-family:'Fraunces', serif; font-weight:600; font-size:16.5px; color:var(--navy); }
.cf-scope .zone-meta{ font-size:12.5px; color:var(--grey); }
.cf-scope .zone-price{ font-weight:500; font-size:14px; color:var(--navy); white-space:nowrap; }
.cf-scope .zone-row.active .zone-price{ color:var(--gold-soft); font-weight:600; }
.cf-scope .range-row{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:14px; }
.cf-scope .range-value{ font-family:'Fraunces', serif; font-weight:600; font-size:30px; color:var(--navy); }
.cf-scope .range-note{ font-size:13px; color:var(--grey); }
.cf-scope input[type="range"]{ width:100%; -webkit-appearance:none; appearance:none; height:2px; background:var(--line); outline:none; margin:10px 0 8px; }
.cf-scope input[type="range"]::-webkit-slider-thumb{ -webkit-appearance:none; width:14px; height:14px; border-radius:50%; background:var(--navy); border:2px solid var(--gold); cursor:pointer; margin-top:-6px; }
.cf-scope input[type="range"]::-moz-range-thumb{ width:14px; height:14px; border-radius:50%; background:var(--navy); border:2px solid var(--gold); cursor:pointer; }
.cf-scope .range-scale{ display:flex; justify-content:space-between; font-size:11px; letter-spacing:0.3px; color:#a39d8c; }
.cf-scope .stepper{ display:flex; align-items:center; gap:18px; }
.cf-scope .stepper-btn{ width:32px; height:32px; border-radius:50%; border:1px solid var(--navy); background:transparent; color:var(--navy); font-size:16px; font-weight:500; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background 0.15s ease, color 0.15s ease; }
.cf-scope .stepper-btn:hover{ background:var(--navy); color:var(--sand); }
.cf-scope .stepper-count{ font-family:'Fraunces', serif; font-weight:600; font-size:24px; color:var(--navy); min-width:20px; text-align:center; }
.cf-scope .addon-list{ display:flex; flex-direction:column; }
.cf-scope .addon-row{ display:flex; justify-content:space-between; align-items:center; gap:16px; padding:16px 2px; cursor:pointer; }
.cf-scope .addon-row + .addon-row{ border-top:1px solid var(--line); }
.cf-scope .addon-left{ display:flex; align-items:flex-start; gap:12px; min-width:0; }
.cf-scope .addon-name{ font-weight:500; font-size:14.5px; color:var(--navy); margin-bottom:2px; }
.cf-scope .addon-desc{ font-size:12px; color:var(--grey); }
.cf-scope .gift-tag{ display:inline-block; font-size:10px; font-weight:600; letter-spacing:0.6px; text-transform:uppercase; color:var(--gold-soft); margin-bottom:3px; }
.cf-scope .addon-right{ display:flex; align-items:center; gap:14px; flex-shrink:0; }
.cf-scope .addon-price{ font-weight:500; font-size:13.5px; color:var(--navy); white-space:nowrap; }
.cf-scope .addon-price.gift{ color:var(--gold-soft); font-weight:600; }
.cf-scope .addon-price .strike{ text-decoration:line-through; color:#b3ab98; font-weight:400; margin-right:5px; }
.cf-scope .switch{ width:38px; height:22px; border-radius:11px; background:var(--line); position:relative; flex-shrink:0; transition:background 0.15s ease; }
.cf-scope .switch::after{ content:""; position:absolute; top:2px; left:2px; width:18px; height:18px; border-radius:50%; background:#fff; transition:left 0.15s ease; box-shadow:0 1px 2px rgba(0,0,0,0.25); }
.cf-scope .addon-row.checked .switch{ background:var(--gold); }
.cf-scope .addon-row.checked .switch::after{ left:18px; }
.cf-scope .addon-row.locked{ cursor:default; }
.cf-scope .addon-row.locked .switch{ background:var(--gold-soft); opacity:0.6; }
.cf-scope .addon-row.locked .switch::after{ left:18px; }
.cf-scope .summary{ margin-top:44px; background:var(--navy); color:var(--sand); padding:32px 30px 28px; position:relative; }
.cf-scope .summary::before{ content:""; position:absolute; top:0; left:0; width:100%; height:2px; background:var(--gold); }
.cf-scope .summary-eyebrow{ font-size:11px; letter-spacing:2.4px; text-transform:uppercase; color:var(--gold); margin-bottom:18px; }
.cf-scope .summary-rows{ display:flex; flex-direction:column; gap:11px; margin-bottom:14px; }
.cf-scope .summary-row{ display:flex; align-items:baseline; gap:8px; font-size:13.5px; color:#B7C0CB; }
.cf-scope .summary-row .leader{ flex:1; border-bottom:1px dotted rgba(183,192,203,0.4); transform:translateY(-4px); }
.cf-scope .summary-row b{ color:var(--sand); font-weight:500; white-space:nowrap; }
.cf-scope .summary-gift{ display:flex; align-items:baseline; gap:8px; font-size:13.5px; padding-top:14px; margin-top:2px; border-top:1px dashed rgba(184,146,76,0.4); color:var(--sand); }
.cf-scope .summary-gift .leader{ flex:1; border-bottom:1px dotted rgba(184,146,76,0.35); transform:translateY(-4px); }
.cf-scope .summary-gift .strike{ text-decoration:line-through; color:#B7C0CB; margin-right:6px; font-weight:400; }
.cf-scope .summary-gift .gift-label{ color:var(--gold); font-weight:600; white-space:nowrap; }
.cf-scope .summary-total-row{ display:flex; justify-content:space-between; align-items:baseline; margin-top:20px; padding-top:18px; border-top:1px solid rgba(184,146,76,0.35); }
.cf-scope .summary-total-label{ font-family:'Fraunces', serif; font-size:15px; color:var(--sand); }
.cf-scope .summary-total{ font-family:'Fraunces', serif; font-weight:600; font-size:28px; color:var(--gold); }
.cf-scope .summary-buttons{ display:flex; gap:10px; margin-top:24px; }
.cf-scope .summary-cta{ flex:1; display:inline-flex; align-items:center; justify-content:center; gap:8px; background:var(--gold); color:var(--navy-deep); font-weight:600; font-size:13.5px; text-decoration:none; padding:13px 16px; white-space:nowrap; border:none; cursor:pointer; transition:opacity 0.15s ease; }
.cf-scope .summary-cta:hover{ opacity:0.85; }
.cf-scope .summary-cta svg{ width:15px; height:15px; flex-shrink:0; }
@media (max-width:520px){
  .cf-scope .summary-buttons{ flex-direction:column; }
  .cf-scope .step{ grid-template-columns:36px 1fr; }
  .cf-scope .step-num{ font-size:20px; }
}

/* WHY */
.cf-scope .why{ padding:76px 0; }
.cf-scope .why-grid{ display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:start; }
.cf-scope .why-quote{ font-family:'Fraunces', serif; font-weight:600; font-size:clamp(22px,3vw,28px); line-height:1.35; color:var(--navy); }
.cf-scope .why-quote em{ font-style:normal; color:var(--gold-soft); }
.cf-scope .why-list{ display:flex; flex-direction:column; }
.cf-scope .why-item{ padding:18px 0; border-top:1px solid var(--line); }
.cf-scope .why-item:last-child{ border-bottom:1px solid var(--line); }
.cf-scope .why-item-title{ font-weight:500; font-size:14.5px; color:var(--navy); margin-bottom:5px; }
.cf-scope .why-item-desc{ font-size:12.8px; color:var(--grey); line-height:1.6; }
@media (max-width:760px){ .cf-scope .why-grid{ grid-template-columns:1fr; } }
