/* Camp accents layered after Cogran's existing core and page styles.
   Scoped to these pages; the global header and footer keep their own styling. */
.cc-camp-page, #content.cl-page.cl-camp, #cogran-pricing.cc-camp-pricing, .cguide {
  --cc-paper:#f7f3e8;
  --cc-paper-light:#faf8f0;
  --cc-sage:#6b8f5e;
  --cc-ochre:#e8973a;
  --cc-border:#dce6dd;
  font-family:Inter,Arial,sans-serif;
  color:var(--cg-ink,#10291e);
}
.cc-skip{position:absolute;left:20px;top:-120px;z-index:10000;background:#fff;color:#105c2e;padding:14px 20px;border-radius:8px}
.cc-skip:focus{top:12px;outline:3px solid #105c2e}

/* Preserve the warm camp overview while using the standard component system. */
#content.cl-page.cl-camp{--cl-warm:var(--cc-paper);--cl-paper:#fffefb}
#content.cl-page.cl-camp h1{font-size:clamp(48px,6.3vw,88px)}
#content.cl-page.cl-camp .cl-text-link{line-height:1.5}

/* Editorial campaign page: familiar Cogran type with warm photographic sections. */
#cogran-camp.cc-camp-page{
  --primary:var(--cg-green-dark,#105c2e);--secondary:#6b8f5e;--accent:#e8973a;
  --bg:#f7f3e8;--text:var(--cg-ink,#10291e);--fs-display:clamp(42px,5.8vw,78px);
  --fs-h2:clamp(32px,4vw,54px);--fs-body:17px;--section-pad:clamp(60px,7vw,104px);
}
#cogran-camp.cc-camp-page :is(h1,h2,h3){font-family:Inter,Arial,sans-serif;font-weight:700;line-height:1.1;letter-spacing:-.04em}
#cogran-camp.cc-camp-page .letter-body p{font-family:Inter,Arial,sans-serif;font-size:clamp(18px,2vw,24px);line-height:1.6;max-width:48ch}
#cogran-camp.cc-camp-page .letter-sig{font-family:inherit;font-size:17px}
#cogran-camp.cc-camp-page .btn-primary{min-height:52px;font-size:16px;padding:15px 24px}

/* Old blue campaign uses the same calm camp palette and legible standard type. */
#camp-demo{--primary:var(--cg-green-dark,#105c2e);--secondary:#6b8f5e;--accent:#e8973a;--bg:#f7f3e8;--text:var(--cg-ink,#10291e);background:var(--bg);font-family:Inter,Arial,sans-serif}
#camp-demo #hero{background:#f7f3e8}
#camp-demo #hero::before{display:none}
#camp-demo h1.heroh{font-size:clamp(38px,4.6vw,64px);line-height:1.08;max-width:20ch}
#camp-demo .bignum{font-size:clamp(56px,8vw,104px);font-weight:700}
#camp-demo :is(h2,h3,h4,.disp){font-weight:700}
#camp-demo .outfig,#camp-demo .outcard.lead .outfig{font-size:clamp(28px,3vw,40px);line-height:1.15}
#camp-demo .outcard.lead{background:#105c2e}
#camp-demo .outcard.lead .outfig{color:#f7f3e8}
#camp-demo #proof h2{color:#f7f3e8;font-size:clamp(32px,4vw,52px);line-height:1.12;margin-bottom:24px}
#camp-demo #proof p{color:#f7f3e8;max-width:55ch}
#camp-demo .btn{border-radius:999px;font-weight:600;line-height:1.4;box-shadow:none}
#camp-demo .btn:hover{box-shadow:0 8px 24px #10291e1a}
#camp-demo #pain-cost{background:#0b3022}
#camp-demo #pain-cost h2{color:#f7f3e8}
#camp-demo .col.with{background:#105c2e}
#camp-demo .col.with :is(h3,p){color:#f7f3e8}
#camp-demo #campband{background-image:linear-gradient(180deg,#0b302255,#0b3022bb),url('/images/Craft_Summer_Banner.png')}
#camp-demo #campband h2{color:#fff}
#camp-demo :is(.reveal,.js .reveal){opacity:1;transform:none}

/* Download page: Inter typography, paper background, quiet white cards. */
#camp-guide{--forest:var(--cg-green-dark,#105c2e);--green:var(--cg-green,#19783e);--ink:var(--cg-ink,#10291e);--muted:var(--cg-muted,#52695e);--paper:#f7f3e8;--line:#dce6dd;--lime:#eee8d8;background:#faf8f0;font-family:Inter,Arial,sans-serif}
#camp-guide :is(h1,h2,h3,.serif){font-family:Inter,Arial,sans-serif;font-weight:700}
#camp-guide h1{font-size:clamp(40px,4.8vw,64px);letter-spacing:-.045em;line-height:1.1}
#camp-guide h1 em{font-style:normal;font-weight:700;display:block;margin-top:4px}
#camp-guide h2{font-size:clamp(30px,3.5vw,46px);letter-spacing:-.035em;line-height:1.12}
#camp-guide .button{border-radius:999px;background:#105c2e;border-color:#105c2e;color:#fff;min-height:52px}
#camp-guide .button:hover{background:#0b3022}
#camp-guide .closing{background:#105c2e}
#camp-guide .closing .button{background:#e8973a;color:#10291e;border-color:#e8973a}
#camp-guide .notice a{text-decoration:underline;text-underline-offset:3px}

/* Pricing retains its real tier table and calculator, with a warmer introduction. */
#cogran-pricing.cc-camp-pricing{--cp-accent-light:#e7e6cf}
#cogran-pricing.cc-camp-pricing .cp-hero{background:#f7f3e8;color:var(--cg-ink)}
#cogran-pricing.cc-camp-pricing .cp-hero::before{display:none}
#cogran-pricing.cc-camp-pricing .cp-orbits{display:none}
#cogran-pricing.cc-camp-pricing .cp-hero-grid{min-height:0;padding-block:clamp(52px,6vw,88px);gap:clamp(32px,5vw,70px)}
#cogran-pricing.cc-camp-pricing .cp-hero h1{color:var(--cg-ink);font-size:clamp(42px,5vw,70px);line-height:1.06;letter-spacing:-.05em}
#cogran-pricing.cc-camp-pricing .cp-hero h1 span{color:var(--cg-green)}
#cogran-pricing.cc-camp-pricing .cp-hero .cp-kicker{color:var(--cg-green-dark)}
#cogran-pricing.cc-camp-pricing .cp-hero .cp-lede{color:var(--cg-muted);font-size:19px}
#cogran-pricing.cc-camp-pricing .cp-hero-card{background:#fffefb;border-color:#dce6dd;box-shadow:var(--cg-shadow-soft);backdrop-filter:none}
#cogran-pricing.cc-camp-pricing .cp-hero-card>strong{color:var(--cg-ink)}
#cogran-pricing.cc-camp-pricing :is(.cp-card-label,.cp-hero-rule b){color:var(--cg-green-dark)}
#cogran-pricing.cc-camp-pricing .cp-hero-rule{border-color:#dce6dd}
#cogran-pricing.cc-camp-pricing .cp-hero-rule span{color:var(--cg-muted)}
#cogran-pricing.cc-camp-pricing .cp-btn--lime{background:#105c2e;color:#fff;border-color:#105c2e;box-shadow:none}
#cogran-pricing.cc-camp-pricing .cp-btn--lime:hover{background:#0b3022}
#cogran-pricing.cc-camp-pricing .cp-link--light{color:var(--cg-green-dark);text-decoration-color:currentColor}
#cogran-pricing.cc-camp-pricing .cp-link--light:hover{color:var(--cg-ink)}
#cogran-pricing.cc-camp-pricing .cp-proof{background:#f0ede3;color:var(--cg-ink)}
#cogran-pricing.cc-camp-pricing .cp-proof-grid>span{color:var(--cg-ink);border-color:#dce6dd}
#cogran-pricing.cc-camp-pricing .cp-proof-grid b{color:var(--cg-green-dark)}

/* Pricing introduction and the existing guide reader retain their component layouts. */
.cp-page.cc-camp-page :is(.cp-hero,.cp-features){background:#f7f3e8}
.cp-page.cc-camp-page .cp-btn{border-radius:999px}
.cguide .cguide-hero{background:#f7f3e8}

/* The same concise promise closes each page without changing shared navigation. */
:is(#cogran-camp.cc-camp-page,#camp-demo,#camp-guide,#content.cl-camp,#cogran-pricing.cc-camp-pricing,.cp-page.cc-camp-page,.cguide) .cc-promise{
  background:#f7f3e8;border-top:1px solid #dce6dd;color:#10291e;padding:clamp(42px,6vw,72px) 24px;
}
:is(#cogran-camp.cc-camp-page,#camp-demo,#camp-guide,#content.cl-camp,#cogran-pricing.cc-camp-pricing,.cp-page.cc-camp-page,.cguide) .cc-promise-inner{max-width:900px;margin:0 auto;text-align:center}
:is(#cogran-camp.cc-camp-page,#camp-demo,#camp-guide,#content.cl-camp,#cogran-pricing.cc-camp-pricing,.cp-page.cc-camp-page,.cguide) .cc-promise-label{font:700 11px/1.5 Inter,Arial,sans-serif;letter-spacing:.14em;color:#105c2e;margin:0 0 16px}
:is(#cogran-camp.cc-camp-page,#camp-demo,#camp-guide,#content.cl-camp,#cogran-pricing.cc-camp-pricing,.cp-page.cc-camp-page,.cguide) .cc-promise h2{font:700 clamp(28px,3.4vw,42px)/1.15 Inter,Arial,sans-serif;letter-spacing:-.035em;color:#10291e;max-width:100%;margin:0 0 20px}
:is(#cogran-camp.cc-camp-page,#camp-demo,#camp-guide,#content.cl-camp,#cogran-pricing.cc-camp-pricing,.cp-page.cc-camp-page,.cguide) .cc-promise p:not(.cc-promise-label){font:400 16px/1.7 Inter,Arial,sans-serif;color:#52695e;max-width:640px;margin:0 auto 24px}
.cc-promise-links{display:flex;justify-content:center;flex-wrap:wrap;gap:16px 28px}
:is(#cogran-camp.cc-camp-page,#camp-demo,#camp-guide,#content.cl-camp,#cogran-pricing.cc-camp-pricing,.cp-page.cc-camp-page,.cguide) .cc-promise-links a{font:600 14px/1.6 Inter,Arial,sans-serif;color:#105c2e;text-decoration:underline;text-underline-offset:5px}
.cc-promise-links a:hover{text-decoration-thickness:2px}
@media(max-width:700px){
  #camp-demo .painrow{grid-template-columns:1fr;gap:8px}
  #camp-demo .painrow .fig{white-space:normal}
  #camp-guide .hero .button{white-space:normal;gap:16px;padding-inline:20px}
  #cogran-pricing.cc-camp-pricing .cp-hero-grid{grid-template-columns:minmax(0,1fr)}
  #content.cl-page.cl-camp .cl-actions{gap:20px}
  .cc-promise-links{flex-direction:column;align-items:center}
}
@media(prefers-reduced-motion:reduce){.cc-camp-page *{scroll-behavior:auto!important;transition:none!important}}

#cogran-camp.cc-camp-page #hero{background:#105c2e}
#camp-guide .closing h2{color:#f7f3e8}
#camp-guide .closing .button:hover{background:#efaa53;color:#10291e}

#cogran-camp.cc-camp-page #hero .scrim{top:0;background:linear-gradient(90deg,rgba(11,48,34,.70),rgba(11,48,34,.12) 78%),linear-gradient(0deg,rgba(11,48,34,.60),transparent 85%)}
