#cogran-programs {--cpr-warm:#f7f3e9; --cpr-shadow:0 26px 70px rgba(11,48,34,.14);}
#cogran-programs .cpr-shell {width:min(1180px,calc(100% - 40px)); margin-inline:auto;}
#cogran-programs .cpr-section {padding:clamp(76px,9vw,132px) 0;}
#cogran-programs .cpr-kicker {margin:0 0 18px; color:var(--cg-green); font-size:12px; font-weight:800; letter-spacing:.14em; line-height:1.3;}
#cogran-programs h1 {font-size:clamp(48px,6.6vw,92px); line-height:.97; letter-spacing:-.06em;}
#cogran-programs h1 span, #cogran-programs .cpr-heading h2 span {color:var(--cg-green);}
#cogran-programs h2 {font-size:clamp(36px,4.5vw,64px); line-height:1.05; letter-spacing:-.045em;}
#cogran-programs h3 {font-size:clamp(21px,2vw,28px); line-height:1.2; letter-spacing:-.025em;}
#cogran-programs .cpr-lede {font-size:clamp(18px,1.7vw,22px); line-height:1.6;}
#cogran-programs .cpr-actions {display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:34px;}
#cogran-programs .cpr-button {display:inline-flex; min-height:52px; align-items:center; justify-content:center; gap:12px; padding:14px 22px; border-radius:999px; font-size:15px; font-weight:750; line-height:1.2; transition:transform .2s ease,box-shadow .2s ease,background .2s ease;}
#cogran-programs .cpr-button:hover, #cogran-programs .cpr-button:focus-visible {transform:translateY(-2px); box-shadow:0 14px 32px rgba(11,48,34,.2);}
#cogran-programs .cpr-button-primary {color:#fff; background:var(--cg-green);}
#cogran-programs .cpr-button-dark {color:#fff; background:var(--cg-deep);}
#cogran-programs .cpr-button-light {color:var(--cg-deep); background:#fff;}
#cogran-programs .cpr-link {color:var(--cg-green-dark); font-size:15px; font-weight:750;}
.cpr-skip {position:absolute; z-index:9999; top:8px; left:-9999px; padding:10px 16px; color:#fff; background:#0B3022; font:700 14px/1.3 Inter,Arial,sans-serif;}
.cpr-skip:focus {left:8px;}

#cogran-programs .cpr-hero {position:relative; padding:clamp(100px,11vw,165px) 0 105px; background:linear-gradient(135deg,#f8fbf8 0%,#eef5ee 56%,#e4f0e6 100%);}
#cogran-programs .cpr-hero::after {position:absolute; right:-8vw; bottom:-22vw; width:54vw; height:54vw; border:1px solid rgba(25,120,62,.12); border-radius:50%; content:"";}
#cogran-programs .cpr-hero-grid {position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr); align-items:center; gap:clamp(48px,7vw,96px);}
#cogran-programs .cpr-hero-copy {max-width:580px;}
#cogran-programs .cpr-hero-copy .cpr-lede {max-width:550px; margin-top:30px;}
#cogran-programs .cpr-note {margin:18px 0 0; font-size:14px;}
#cogran-programs .cpr-product-stage {position:relative; padding:24px 0 50px 22px;}
#cogran-programs .cpr-browser {overflow:hidden; border:1px solid rgba(16,41,30,.12); border-radius:24px; background:#fff; box-shadow:var(--cpr-shadow); transform:rotate(1.4deg);}
#cogran-programs .cpr-browser-bar {display:flex; align-items:center; gap:7px; height:48px; padding:0 18px; color:var(--cg-muted); border-bottom:1px solid var(--cg-line); font-size:12px;}
#cogran-programs .cpr-browser-bar i {width:9px; height:9px; border-radius:50%; background:#dce6dd;}
#cogran-programs .cpr-browser-bar span {margin-left:8px;}
#cogran-programs .cpr-browser img {width:100%; aspect-ratio:4/3; object-fit:cover; object-position:top;}
#cogran-programs .cpr-float-card {position:absolute; right:-24px; bottom:0; display:flex; align-items:center; gap:14px; min-width:250px; padding:18px; border-radius:18px; background:#fff; box-shadow:0 20px 55px rgba(11,48,34,.2);}
#cogran-programs .cpr-float-card strong, #cogran-programs .cpr-float-card small {display:block;}
#cogran-programs .cpr-float-card small {color:var(--cg-muted); font-size:12px;}
#cogran-programs .cpr-icon {display:grid; flex:0 0 38px; width:38px; height:38px; place-items:center; border-radius:50%; color:var(--cg-deep); background:var(--cg-lime); font-weight:900;}

#cogran-programs .cpr-proof {color:#fff; background:var(--cg-deep);}
#cogran-programs .cpr-proof .cpr-shell {display:grid; grid-template-columns:repeat(3,1fr);}
#cogran-programs .cpr-proof span {position:relative; padding:24px 30px 24px 48px; border-right:1px solid rgba(255,255,255,.14); font-size:14px; font-weight:700;}
#cogran-programs .cpr-proof span:last-child {border-right:0;}
#cogran-programs .cpr-proof span::before {position:absolute; top:50%; left:22px; width:8px; height:8px; border-radius:50%; background:var(--cg-lime); content:""; transform:translateY(-50%);}

#cogran-programs .cpr-heading {max-width:850px; margin-bottom:58px;}
#cogran-programs .cpr-heading > p:last-child {max-width:700px; margin:26px 0 0; font-size:18px;}
#cogran-programs .cpr-step-grid {display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--cg-line); border-bottom:1px solid var(--cg-line);}
#cogran-programs .cpr-step-grid article {min-height:300px; padding:36px 34px; border-right:1px solid var(--cg-line);}
#cogran-programs .cpr-step-grid article:last-child {border-right:0;}
#cogran-programs .cpr-step-grid b {display:block; margin-bottom:58px; color:var(--cg-green); font-size:12px; letter-spacing:.1em;}
#cogran-programs .cpr-step-grid h3 {margin-bottom:15px;}

#cogran-programs .cpr-soft {background:var(--cg-soft);}
#cogran-programs .cpr-warm {background:var(--cpr-warm);}
#cogran-programs .cpr-split {display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(60px,9vw,125px);}
#cogran-programs .cpr-device-composition {position:relative; min-height:580px; padding:35px 80px 35px 0;}
#cogran-programs .cpr-tablet {overflow:hidden; border:12px solid var(--cg-deep); border-radius:28px; background:#fff; box-shadow:var(--cpr-shadow);}
#cogran-programs .cpr-tablet img {width:100%;}
#cogran-programs .cpr-phone {position:absolute; right:0; bottom:0; overflow:hidden; width:31%; border:8px solid #172a22; border-radius:28px; background:#fff; box-shadow:0 24px 54px rgba(11,48,34,.2);}
#cogran-programs .cpr-checks {display:grid; gap:0; padding:0; margin:34px 0 0; list-style:none; border-top:1px solid var(--cg-line);}
#cogran-programs .cpr-checks li {position:relative; padding:16px 0 16px 30px; border-bottom:1px solid var(--cg-line); color:var(--cg-ink); font-weight:650;}
#cogran-programs .cpr-checks li::before {position:absolute; left:0; color:var(--cg-green); content:"✓"; font-weight:900;}

#cogran-programs .cpr-info-intro {display:grid; grid-template-columns:.82fr 1.18fr; align-items:center; gap:clamp(50px,8vw,110px); margin-bottom:62px;}
#cogran-programs .cpr-info-intro .cpr-heading {margin:0;}
#cogran-programs .cpr-human-photo {position:relative; isolation:isolate; margin:0;}
#cogran-programs .cpr-human-photo img {width:100%; object-fit:cover; box-shadow:var(--cpr-shadow);}
#cogran-programs .cpr-info-photo {padding:0 0 32px 32px;}
#cogran-programs .cpr-info-photo::before {position:absolute; z-index:-1; left:0; bottom:0; width:58%; height:62%; border-radius:24px; background:var(--cg-lime); content:"";}
#cogran-programs .cpr-info-photo img {aspect-ratio:16/10; border-radius:24px 76px 24px 24px;}
#cogran-programs .cpr-human-photo figcaption {position:absolute; right:-16px; bottom:0; width:min(330px,72%); padding:18px 20px; border:1px solid var(--cg-line); border-radius:16px; background:#fff; box-shadow:0 18px 45px rgba(11,48,34,.16);}
#cogran-programs .cpr-human-photo figcaption strong, #cogran-programs .cpr-human-photo figcaption span {display:block;}
#cogran-programs .cpr-human-photo figcaption strong {color:var(--cg-deep); font-size:15px;}
#cogran-programs .cpr-human-photo figcaption span {margin-top:4px; color:var(--cg-muted); font-size:12px; line-height:1.45;}
#cogran-programs .cpr-reference-grid {display:grid; grid-template-columns:repeat(2,1fr); gap:18px;}
#cogran-programs .cpr-reference-grid > article {position:relative; padding:clamp(30px,4vw,48px); overflow:hidden; border:1px solid var(--cg-line); border-radius:22px; background:#fff; box-shadow:0 18px 48px rgba(11,48,34,.07);}
#cogran-programs .cpr-reference-grid > article:nth-child(2) {background:var(--cpr-warm);}
#cogran-programs .cpr-reference-grid > article:nth-child(3) {border-color:var(--cg-deep); background:var(--cg-deep);}
#cogran-programs .cpr-reference-grid > article:nth-child(4) {border-color:var(--cg-green); background:var(--cg-green);}
#cogran-programs .cpr-reference-grid > article:nth-child(3) :is(h3,p,li), #cogran-programs .cpr-reference-grid > article:nth-child(4) :is(h3,p,li) {color:#fff;}
#cogran-programs .cpr-reference-grid > article:nth-child(3) .cpr-reference-number {color:var(--cg-lime);}
#cogran-programs .cpr-reference-grid > article:nth-child(4) .cpr-reference-number {color:#fff;}
#cogran-programs .cpr-reference-grid > article:nth-child(3) li::before, #cogran-programs .cpr-reference-grid > article:nth-child(4) li::before {background:var(--cg-lime);}
#cogran-programs .cpr-reference-number {display:block; margin-bottom:34px; color:var(--cg-green); font-size:12px; font-weight:850; letter-spacing:.1em;}
#cogran-programs .cpr-reference-grid h3 {margin-bottom:14px;}
#cogran-programs .cpr-reference-grid article > p {max-width:540px;}
#cogran-programs .cpr-reference-grid ul {display:grid; gap:9px; padding:0; margin:24px 0 0; list-style:none;}
#cogran-programs .cpr-reference-grid li {position:relative; padding-left:19px; color:var(--cg-muted); font-size:14px; line-height:1.5;}
#cogran-programs .cpr-reference-grid li::before {position:absolute; top:.62em; left:0; width:6px; height:6px; border-radius:50%; background:var(--cg-lime); content:"";}
#cogran-programs .cpr-list-pair {display:grid; grid-template-columns:1fr 1fr; gap:28px; padding-top:8px;}
#cogran-programs .cpr-list-pair strong {display:block; color:var(--cg-deep); font-size:13px;}
#cogran-programs .cpr-list-pair ul {margin-top:12px;}
#cogran-programs .cpr-reference-grid .cpr-reference-note {padding-top:20px; margin:24px 0 0; border-top:1px solid var(--cg-line); font-size:12px;}

#cogran-programs .cpr-season-grid {display:grid; grid-template-columns:1fr .8fr; align-items:center; gap:clamp(60px,10vw,140px);}
#cogran-programs .cpr-season-grid > div:first-child p:not(.cpr-kicker) {max-width:650px; margin-top:26px; font-size:17px;}
#cogran-programs .cpr-season-card {overflow:hidden; border:1px solid var(--cg-line); border-radius:24px; background:#fff; box-shadow:var(--cpr-shadow);}
#cogran-programs .cpr-season-head {display:flex; align-items:flex-start; justify-content:space-between; padding:24px 26px; color:#fff; background:var(--cg-green);}
#cogran-programs .cpr-season-head span {font-size:22px; font-weight:800;}
#cogran-programs .cpr-season-head b {padding:4px 9px; border-radius:999px; color:var(--cg-deep); background:var(--cg-lime); font-size:10px; letter-spacing:.08em; text-transform:uppercase;}
#cogran-programs .cpr-season-card dl {margin:0; padding:8px 26px;}
#cogran-programs .cpr-season-card dl div {display:flex; justify-content:space-between; gap:20px; padding:18px 0; border-bottom:1px solid var(--cg-line);}
#cogran-programs .cpr-season-card dt {color:var(--cg-muted);}
#cogran-programs .cpr-season-card dd {margin:0; color:var(--cg-deep); font-weight:800;}
#cogran-programs .cpr-season-card > p {padding:18px 26px; margin:0; font-size:12px;}

#cogran-programs .cpr-deep {color:#fff; background:var(--cg-deep);}
#cogran-programs .cpr-deep :is(h2,h3) {color:#fff;}
#cogran-programs .cpr-deep .cpr-kicker {color:var(--cg-lime);}
#cogran-programs .cpr-deep .cpr-heading > p:last-child {color:rgba(255,255,255,.7);}
#cogran-programs .cpr-bento {display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
#cogran-programs .cpr-bento article {min-height:250px; padding:30px; border:1px solid rgba(255,255,255,.13); border-radius:20px; background:rgba(255,255,255,.05);}
#cogran-programs .cpr-bento .cpr-bento-wide {grid-column:span 2; background:var(--cg-green);}
#cogran-programs .cpr-bento span {display:block; margin-bottom:55px; color:var(--cg-lime); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase;}
#cogran-programs .cpr-bento p {margin:14px 0 0; color:rgba(255,255,255,.72);}
#cogran-programs .cpr-session-reference {padding:clamp(28px,4vw,44px); margin-top:18px; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:rgba(255,255,255,.04);}
#cogran-programs .cpr-session-reference h3 {margin-bottom:26px;}
#cogran-programs .cpr-session-reference ul {display:grid; grid-template-columns:repeat(2,1fr); gap:0; padding:0; margin:0; list-style:none; border-top:1px solid rgba(255,255,255,.12);}
#cogran-programs .cpr-session-reference li {display:grid; grid-template-columns:120px 1fr; gap:18px; padding:18px 12px 18px 0; border-bottom:1px solid rgba(255,255,255,.12);}
#cogran-programs .cpr-session-reference li:nth-child(odd) {padding-right:28px; border-right:1px solid rgba(255,255,255,.12);}
#cogran-programs .cpr-session-reference li:nth-child(even) {padding-left:28px;}
#cogran-programs .cpr-session-reference strong {color:var(--cg-lime); font-size:13px;}
#cogran-programs .cpr-session-reference span {color:rgba(255,255,255,.72); font-size:13px; line-height:1.55;}

#cogran-programs #pricing-and-payments {position:relative; background:linear-gradient(135deg,#e9f2eb 0%,#f5f8f4 58%,#edf4ef 100%);}
#cogran-programs #pricing-and-payments::before {position:absolute; top:-180px; right:-180px; width:470px; height:470px; border:1px solid rgba(25,120,62,.1); border-radius:50%; content:"";}
#cogran-programs .cpr-payment-grid {position:relative; display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:clamp(55px,7vw,100px);}
#cogran-programs .cpr-payment-copy {padding:clamp(34px,4vw,54px); border:1px solid rgba(25,120,62,.12); border-radius:28px; background:rgba(255,255,255,.82); box-shadow:0 22px 58px rgba(11,48,34,.08); backdrop-filter:blur(8px);}
#cogran-programs .cpr-payment-grid > div:first-child > p:not(.cpr-kicker) {max-width:650px; margin-top:24px;}
#cogran-programs .cpr-payment-side {position:relative; padding-bottom:26px;}
#cogran-programs .cpr-payment-photo {z-index:1; margin:0 42px -46px 0;}
#cogran-programs .cpr-payment-photo img {aspect-ratio:16/9; border-radius:24px 24px 76px 24px;}
#cogran-programs .cpr-payment-photo figcaption {top:24px; right:-24px; bottom:auto;}
#cogran-programs .cpr-program-example {overflow:hidden; border:1px solid var(--cg-line); border-radius:24px; background:#fff; box-shadow:var(--cpr-shadow);}
#cogran-programs .cpr-payment-side .cpr-program-example {position:relative; z-index:2; width:88%; margin-left:auto;}
#cogran-programs .cpr-program-example-head {padding:28px 30px 22px; color:#fff; background:var(--cg-green);}
#cogran-programs .cpr-program-example-head .cpr-kicker {color:#fff;}
#cogran-programs .cpr-program-example-head h3 {color:#fff; font-size:30px;}
#cogran-programs .cpr-program-example-head p:last-child {margin:8px 0 0; color:rgba(255,255,255,.78); font-size:13px;}
#cogran-programs .cpr-program-example dl {padding:8px 30px; margin:0;}
#cogran-programs .cpr-program-example dl div {display:grid; grid-template-columns:1fr 1.15fr; gap:20px; padding:16px 0; border-bottom:1px solid var(--cg-line);}
#cogran-programs .cpr-program-example dt {color:var(--cg-muted); font-size:13px;}
#cogran-programs .cpr-program-example dd {margin:0; color:var(--cg-deep); font-size:13px; font-weight:800; text-align:right;}
#cogran-programs .cpr-example-note {padding:18px 30px; margin:0; color:var(--cg-muted); font-size:12px;}

#cogran-programs .cpr-demand-grid {display:grid; grid-template-columns:1fr 1fr; gap:18px;}
#cogran-programs .cpr-demand-grid > article {position:relative; min-height:410px; padding:clamp(30px,4vw,48px); overflow:hidden; border:1px solid var(--cg-line); border-radius:24px; background:#fff; box-shadow:0 22px 58px rgba(11,48,34,.08);}
#cogran-programs .cpr-demand-grid > article::after {position:absolute; right:-70px; bottom:-90px; width:210px; height:210px; border:1px solid rgba(25,120,62,.12); border-radius:50%; content:"";}
#cogran-programs .cpr-demand-grid .cpr-lottery-card {color:#fff; border-color:var(--cg-green); background:var(--cg-green); box-shadow:0 24px 64px rgba(25,120,62,.2);}
#cogran-programs .cpr-demand-grid .cpr-lottery-card :is(h3,p) {color:#fff;}
#cogran-programs .cpr-demand-label {display:flex; align-items:center; gap:12px; margin-bottom:52px; color:var(--cg-green); font-size:11px; font-weight:850; letter-spacing:.11em; text-transform:uppercase;}
#cogran-programs .cpr-demand-label span {display:grid; width:34px; height:34px; place-items:center; border:1px solid currentColor; border-radius:50%;}
#cogran-programs .cpr-lottery-card .cpr-demand-label {color:#fff;}
#cogran-programs .cpr-demand-grid h3 {max-width:480px; margin-bottom:18px; font-size:clamp(26px,3vw,38px);}
#cogran-programs .cpr-demand-grid article > p {max-width:530px;}
#cogran-programs .cpr-mini-list {display:flex; flex-wrap:wrap; gap:9px; padding:0; margin:32px 0 0; list-style:none;}
#cogran-programs .cpr-mini-list li {padding:7px 11px; border-radius:999px; color:var(--cg-green-dark); background:var(--cg-soft); font-size:12px; font-weight:750;}
#cogran-programs .cpr-distinction {position:relative; z-index:1; padding:20px 22px; margin-top:28px; border:1px solid rgba(255,255,255,.2); border-radius:16px; background:rgba(11,48,34,.25);}
#cogran-programs .cpr-distinction strong {display:block; margin-bottom:6px; color:var(--cg-lime); font-size:13px;}
#cogran-programs .cpr-distinction p {margin:0; color:rgba(255,255,255,.8); font-size:14px;}

#cogran-programs .cpr-checkout-grid {display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(55px,9vw,120px);}
#cogran-programs .cpr-checkout-grid > div:first-child > p:not(.cpr-kicker) {max-width:620px; margin-top:24px;}
#cogran-programs .cpr-campaign-card {display:grid; grid-template-columns:1fr auto .7fr; align-items:center; gap:18px; padding:26px; border-radius:26px; background:#fff; box-shadow:var(--cpr-shadow);}
#cogran-programs .cpr-ad {display:flex; min-height:300px; flex-direction:column; justify-content:flex-end; padding:28px; border-radius:18px; color:#fff; background:linear-gradient(155deg,var(--cg-green),var(--cg-deep));}
#cogran-programs .cpr-ad small {color:#fff; font-weight:800; letter-spacing:.1em;}
#cogran-programs .cpr-ad strong {margin-top:8px; font-size:28px; line-height:1.1;}
#cogran-programs .cpr-ad span {margin:10px 0 20px; color:rgba(255,255,255,.75); font-size:13px;}
#cogran-programs .cpr-ad .cpr-faux-button {padding:12px; border-radius:999px; color:var(--cg-deep); background:var(--cg-lime); font-weight:800; text-align:center;}
#cogran-programs .cpr-arrow {color:var(--cg-green); font-size:28px; font-weight:900;}
#cogran-programs .cpr-cart {display:flex; flex-direction:column; align-items:center; padding:22px 8px; text-align:center;}
#cogran-programs .cpr-cart strong {margin-top:12px;}
#cogran-programs .cpr-cart small {color:var(--cg-muted);}

#cogran-programs .cpr-faq-grid {display:grid; grid-template-columns:.75fr 1.25fr; align-items:start; gap:clamp(55px,9vw,125px);}
#cogran-programs .cpr-faq-grid > div:first-child > p:not(.cpr-kicker) {margin-top:25px; font-size:17px;}
#cogran-programs .cpr-faq {padding:12px 34px; border:1px solid var(--cg-line); border-radius:22px; box-shadow:0 22px 60px rgba(11,48,34,.08);}
#cogran-programs .cpr-faq details {border-bottom:1px solid var(--cg-line);}
#cogran-programs .cpr-faq details:last-child {border-bottom:0;}
#cogran-programs .cpr-faq summary {position:relative; padding:24px 44px 24px 0; color:var(--cg-deep); font-size:17px; font-weight:750; cursor:pointer; list-style:none;}
#cogran-programs .cpr-faq summary::-webkit-details-marker {display:none;}
#cogran-programs .cpr-faq summary::after {position:absolute; right:2px; color:var(--cg-green); content:"+"; font-size:24px; font-weight:400;}
#cogran-programs .cpr-faq details[open] summary::after {content:"−";}
#cogran-programs .cpr-faq details p {padding:0 44px 24px 0; margin:0;}

#cogran-programs .cpr-final {padding:clamp(72px,8vw,110px) 0; color:#fff; background:var(--cg-green);}
#cogran-programs .cpr-final-grid {display:grid; grid-template-columns:1fr auto; align-items:end; gap:50px;}
#cogran-programs .cpr-final :is(h2,p) {color:#fff;}
#cogran-programs .cpr-final .cpr-kicker {color:#fff;}
#cogran-programs .cpr-final p:not(.cpr-kicker) {max-width:670px; margin-top:18px; color:rgba(255,255,255,.78); font-size:18px;}
#cogran-programs .cpr-final .cpr-actions {justify-content:flex-end; margin:0;}
#cogran-programs .cpr-final-link {color:#fff; font-weight:750; text-decoration:underline; text-underline-offset:4px;}

@media (max-width:1000px) {
  #cogran-programs .cpr-hero-grid {grid-template-columns:1fr;}
  #cogran-programs .cpr-hero-copy {max-width:760px;}
  #cogran-programs .cpr-product-stage {max-width:760px;}
  #cogran-programs .cpr-split, #cogran-programs .cpr-season-grid, #cogran-programs .cpr-checkout-grid {grid-template-columns:1fr;}
  #cogran-programs .cpr-payment-grid, #cogran-programs .cpr-info-intro {grid-template-columns:1fr;}
  #cogran-programs .cpr-info-intro .cpr-heading {max-width:780px;}
  #cogran-programs .cpr-info-photo, #cogran-programs .cpr-payment-side {max-width:760px;}
  #cogran-programs .cpr-device-composition {max-width:720px;}
  #cogran-programs .cpr-season-card {max-width:650px;}
  #cogran-programs .cpr-campaign-card {max-width:680px;}
}

@media (max-width:760px) {
  #cogran-programs .cpr-shell {width:min(100% - 30px,1180px);}
  #cogran-programs .cpr-section {padding:72px 0;}
  #cogran-programs .cpr-proof .cpr-shell, #cogran-programs .cpr-step-grid, #cogran-programs .cpr-faq-grid, #cogran-programs .cpr-final-grid {grid-template-columns:1fr;}
  #cogran-programs .cpr-proof span {border-right:0; border-bottom:1px solid rgba(255,255,255,.14);}
  #cogran-programs .cpr-proof span:last-child {border-bottom:0;}
  #cogran-programs .cpr-step-grid article {min-height:0; border-right:0; border-bottom:1px solid var(--cg-line);}
  #cogran-programs .cpr-step-grid article:last-child {border-bottom:0;}
  #cogran-programs .cpr-step-grid b {margin-bottom:24px;}
  #cogran-programs .cpr-device-composition {min-height:0; padding:15px 45px 45px 0;}
  #cogran-programs .cpr-bento {grid-template-columns:1fr;}
  #cogran-programs .cpr-bento .cpr-bento-wide {grid-column:auto;}
  #cogran-programs .cpr-bento article {min-height:0;}
  #cogran-programs .cpr-bento span {margin-bottom:28px;}
  #cogran-programs .cpr-reference-grid {grid-template-columns:1fr;}
  #cogran-programs .cpr-session-reference ul {grid-template-columns:1fr;}
  #cogran-programs .cpr-session-reference li, #cogran-programs .cpr-session-reference li:nth-child(odd), #cogran-programs .cpr-session-reference li:nth-child(even) {padding:17px 0; border-right:0;}
  #cogran-programs .cpr-demand-grid {grid-template-columns:1fr;}
  #cogran-programs .cpr-demand-grid > article {min-height:0;}
  #cogran-programs .cpr-demand-label {margin-bottom:32px;}
  #cogran-programs .cpr-final .cpr-actions {justify-content:flex-start;}
}

@media (max-width:520px) {
  #cogran-programs .cpr-hero {padding-top:82px;}
  #cogran-programs .cpr-product-stage {padding:10px 6px 62px 0;}
  #cogran-programs .cpr-float-card {right:0; min-width:220px;}
  #cogran-programs .cpr-actions {align-items:flex-start; flex-direction:column;}
  #cogran-programs .cpr-button {width:100%;}
  #cogran-programs .cpr-campaign-card {grid-template-columns:1fr;}
  #cogran-programs .cpr-arrow {transform:rotate(90deg); text-align:center;}
  #cogran-programs .cpr-season-head {align-items:flex-start; flex-direction:column; gap:10px;}
  #cogran-programs .cpr-season-card dl div {align-items:flex-start; flex-direction:column; gap:3px;}
  #cogran-programs .cpr-list-pair {grid-template-columns:1fr; gap:20px;}
  #cogran-programs .cpr-session-reference li {grid-template-columns:1fr; gap:5px;}
  #cogran-programs .cpr-program-example dl div {grid-template-columns:1fr; gap:3px;}
  #cogran-programs .cpr-program-example dd {text-align:left;}
  #cogran-programs .cpr-info-photo {padding-left:16px;}
  #cogran-programs .cpr-human-photo figcaption {right:0; width:82%;}
  #cogran-programs .cpr-payment-copy {padding:28px 22px;}
  #cogran-programs .cpr-payment-photo {margin-right:15px;}
  #cogran-programs .cpr-payment-photo figcaption {right:-6px;}
  #cogran-programs .cpr-payment-side .cpr-program-example {width:94%;}
}

@media (prefers-reduced-motion:reduce) {
  #cogran-programs .cpr-button {transition:none;}
  #cogran-programs .cpr-browser {transform:none;}
}
