*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: 'Open Sans', sans-serif; background: #fff; color: #222; -webkit-font-smoothing: antialiased; }

:root {
  --cc-black:      #111111;
  --cc-green:      #7ED348;
  --cc-dark-green: #2D5A27;
  --cc-gold:       #C9A843;
  --cc-white:      #FFFFFF;
  --cc-gray:       #f5f5f5;
  --cc-gray-dark:  #444444;
  --cc-max-width:  1280px;
}

.cc-eyebrow {
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--cc-green);
  margin-bottom: 12px;
}
.cc-h1 {
  font-family: 'Montserrat', sans-serif;
  font-size: clamp(2.5rem, 7vw, 5rem);
  font-weight: 900;
  text-transform: uppercase;
  line-height: 1;
  color: #fff;
}
.cc-h2 {
  font-family: 'Montserrat', sans-serif;
  font-size: clamp(1.75rem, 4vw, 3rem);
  font-weight: 900;
  text-transform: uppercase;
  line-height: 1.05;
  color: var(--cc-black);
}
.cc-h2.light { color: #fff; }
.cc-accent { color: var(--cc-green); }
.cc-gold-accent { color: var(--cc-gold); }

.cc-btn-primary {
  display: inline-block;
  background: var(--cc-green);
  color: var(--cc-black);
  padding: 14px 32px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  font-size: .875rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: background .2s, transform .15s;
}
.cc-btn-primary:hover { background: #6bc438; transform: translateY(-1px); }

.cc-btn-outline {
  display: inline-block;
  background: transparent;
  color: #fff;
  border: 2px solid #fff;
  padding: 12px 30px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: .875rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  transition: background .2s, color .2s;
}
.cc-btn-outline:hover { background: #fff; color: var(--cc-black); }

.cc-btn-dark {
  display: inline-block;
  background: var(--cc-black);
  color: #fff;
  padding: 14px 32px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  font-size: .875rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  text-decoration: none;
  transition: background .2s;
}
.cc-btn-dark:hover { background: #2a2a2a; }

.cc-section { padding: 80px 24px; }
.cc-section-dark { background: var(--cc-black); }
.cc-section-gray { background: var(--cc-gray); }
.cc-inner { max-width: var(--cc-max-width); margin: 0 auto; }

.cc-divider {
  display: block;
  width: 60px;
  height: 3px;
  background: var(--cc-gold);
  margin: 16px 0 32px;
}
.cc-divider.center { margin: 16px auto 32px; }

.cclf{background:#111;padding:48px 24px;font-family:'Open Sans',sans-serif;scroll-margin-top:72px;border-bottom:2px solid #7ED348}
.cclf-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:start}
.cclf-eyebrow{display:inline-block;font-family:'Montserrat',sans-serif;font-size:.6875rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#C9A843;margin-bottom:12px}
.cclf-copy h2{font-family:'Montserrat',sans-serif;font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:900;text-transform:uppercase;color:#fff;line-height:1.1;margin:0 0 14px}
.cclf-copy p{font-size:1rem;color:rgba(255,255,255,.72);line-height:1.7;margin:0}
.cclf-copy a{color:#7ED348;font-weight:700;text-decoration:none}
.cclf-form,.cclf-form *{box-sizing:border-box}
.cclf-form{background:#fff;border-top:4px solid #7ED348;padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.cclf-full{grid-column:1/-1}
.cclf-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.cclf-field span{font-family:'Montserrat',sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#111}
.cclf-field em{font-style:normal;font-weight:400;text-transform:none;color:#777}
.cclf-field input,.cclf-field select,.cclf-field textarea{width:100%;font:inherit;font-size:1rem;color:#111;padding:12px 14px;border:1px solid #ccc;border-radius:0;background:#fff}
.cclf-field textarea{min-height:110px;resize:vertical}
.cclf-field input:focus,.cclf-field select:focus,.cclf-field textarea:focus{outline:2px solid #7ED348;outline-offset:1px;border-color:#7ED348}
.cclf-cb{display:flex;gap:10px;align-items:flex-start;font-size:.8125rem;color:#444;line-height:1.5;cursor:pointer}
.cclf-cb input{width:18px;height:18px;margin-top:2px;accent-color:#2D5A27;flex:none}
.cclf-consent p{font-size:.75rem;color:#777;line-height:1.5;margin:6px 0 0}
.cclf-consent a{color:#2D5A27}
.cclf-submit{background:#7ED348;color:#111;border:0;padding:16px;font-family:'Montserrat',sans-serif;font-size:.9375rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer}
.cclf-submit:hover{background:#6bc438}
.cclf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:860px){.cclf{padding:36px 16px}.cclf-inner{grid-template-columns:1fr;gap:20px}.cclf-form{grid-template-columns:1fr;padding:18px}}

.ccpop{border:0;padding:0;margin:auto;width:min(560px,calc(100% - 24px));max-height:calc(100% - 24px);background:#111;color:#fff;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.5);border-top:3px solid #7ED348}
.ccpop::backdrop{background:rgba(0,0,0,.65)}
.ccpop-body{padding:28px 22px 22px}
.ccpop-body .cclf-copy h2{font-size:1.5rem}
.ccpop-body .cclf-copy p{font-size:.9375rem;margin:0 0 16px}
.ccpop-body .cclf-form{grid-template-columns:1fr}
.ccpop-x{position:sticky;top:8px;float:right;margin:8px 8px 0 0;width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;z-index:2}
.ccpop-x:hover{background:rgba(255,255,255,.22)}
@media(max-width:860px){.ccpop{width:100%;max-width:100%;max-height:92%;margin:auto 0 0;border-radius:16px 16px 0 0}}

.ccab{display:none}
@media(max-width:860px){
body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
.ccab{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:999;background:#111;padding:8px 10px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px rgba(0,0,0,.35);border-top:2px solid #7ED348}
.ccab-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-family:'Montserrat',sans-serif;font-size:.6875rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;-webkit-tap-highlight-color:transparent}
.ccab-btn svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ccab-lead{background:#7ED348;color:#111}
.ccab-btn:active{transform:scale(.96)}

section[class*="-hero"]{min-height:0 !important;padding-top:48px !important;padding-bottom:40px !important}
.cc-hp-hero-logo{width:auto !important;max-height:72px;margin-bottom:12px !important}
.cc-hp-hero-scroll{display:none !important}
}
