/* CGC insurance product sections. Values measured from live /car-insurance/ (8 Oct 2026). */

/* ---------- Quotezone form (hero, CTA, sticky) ---------- */
.cgc-qf { display: flex; gap: 10px; width: 100%; align-items: center; }
.cgc-qf__wrap { flex: 3; display: flex; height: 55px; background: #fff; border: 0.8px solid #fff; border-radius: 10px; overflow: hidden; transition: .2s; }
.cgc-qf__wrap:focus-within { border-color: var(--cgc-purple); box-shadow: 0 0 0 2px rgba(34, 113, 177, .2); }
.cgc-qf__flag { flex: 0 0 50px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; background: #039; color: #fff; font: 700 10px/1 var(--cgc-font-body); }
.cgc-qf__cross { position: relative; width: 20px; height: 12px; background: #fff; }
.cgc-qf__cross::before, .cgc-qf__cross::after { content: ""; position: absolute; background: #c00; }
.cgc-qf__cross::before { left: 8px; top: 0; width: 4px; height: 12px; }
.cgc-qf__cross::after { left: 0; top: 4px; width: 20px; height: 4px; }
.cgc-qf__input { flex: 1; min-width: 0; height: 100%; border: 0; padding: 0 15px; background: transparent; font: 700 32px/1 "Charles Wright", "Open Sans", Arial, sans-serif; text-align: center; text-transform: uppercase; color: var(--cgc-text); outline: 0; }
.cgc-qf__input::placeholder { color: #888; }
.cgc-qf__btn { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; min-height: 55px; padding: 0 25px; border: 0; border-radius: 5px; background: var(--cgc-teal); color: #fff; font: 700 24px/1 var(--cgc-font-head); white-space: nowrap; cursor: pointer; transition: transform .15s, background .15s; }
.cgc-qf__btn:hover, .cgc-qf__btn:focus-visible { background: #5da83a; transform: scale(1.02); }
.cgc-qf__noreg { margin: 10px 0 0; font-size: 11px; color: #fdf6e3; }
.cgc-qf__noreg a { color: #fdf6e3; text-decoration: underline; font-weight: 700; }
.cgc-qf__partner { position: relative; display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; font-size: 12px; color: #fdf6e3; }
.cgc-qf__info { display: inline-grid; place-items: center; width: 14px; height: 14px; padding: 0; border: 0.8px solid #fdf6e3; border-radius: 50%; background: var(--cgc-bg-cream); color: var(--cgc-purple); font: 700 10px/1 var(--cgc-font-body); cursor: pointer; }
.cgc-qf__tip { position: absolute; left: 0; top: calc(100% + 8px); z-index: 10; width: 300px; padding: 12px; border-radius: 8px; background: #fff; color: #2a2a2a; font-size: 11px; line-height: 1.5; box-shadow: 0 8px 24px rgba(0, 0, 0, .45); }
.cgc-qf__tip[hidden] { display: none; }

/* ---------- Product hero ---------- */
.cgc-ph { background: var(--cgc-lime); }
.cgc-ph__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: center; padding-top: 64px; padding-bottom: 32px; }
.cgc-ph__card { padding: 20px 25px 15px; border-radius: 20px; background: var(--cgc-purple); color: #fff; }
.cgc-ph__card h1 { margin: 0 0 16px; font: 800 36px/1.2 var(--cgc-font-head); color: #fff; text-align: center; }
.cgc-ph__points { list-style: none; margin: 32px 0 0; padding: 0 0 0 26px; }
.cgc-ph__points li { position: relative; margin-bottom: 10px; padding-left: 5px; font-size: 17px; line-height: 1.6; color: #fff; }
.cgc-ph__points li::before { content: "\f058"; position: absolute; left: -30px; top: 1px; font: 900 20px/1.2 "Font Awesome 6 Free", "Font Awesome 5 Free"; color: var(--cgc-lime); }
.cgc-ph__points strong { font-weight: 700; }
.cgc-ph__points mark { padding: 0 4px; border-radius: 3px; background: #fff091; color: var(--cgc-teal); font-weight: 600; }
.cgc-ph__logos { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 12px; list-style: none; margin: 30px 0 10px; padding: 0; }
.cgc-ph__logos li { display: grid; place-items: center; width: 80px; height: 40px; padding: 3px 6px; border-radius: 6px; background: #fff; }
.cgc-ph__logos img { max-width: 100%; max-height: 34px; object-fit: contain; }
.cgc-ph__art img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

/* ---------- Meta line + quick links ---------- */
.cgc-ins-meta { background: var(--cgc-bg-cream); padding: 8px 0 0; }
.cgc-ins-meta p { margin: 0; font-size: 13px; color: #888; }
.cgc-ins-meta a { color: #888; }
.cgc-ins-meta--toc { padding: 16px 0; }
.cgc-lp .cgc-lp-crumbs--cream { background: var(--cgc-bg-cream); }
.cgc-toc { margin: 0; max-width: 629px; padding: 10px; border: 0.8px solid #e0e0e0; border-radius: 10px; background: var(--cgc-bg-cream); }
.cgc-toc summary { display: flex; align-items: center; gap: 10px; list-style: none; cursor: pointer; font-size: 14px; color: var(--cgc-purple); }
.cgc-toc summary::-webkit-details-marker { display: none; }
.cgc-toc__chev { width: 0; height: 0; border-left: 8px solid var(--cgc-purple); border-top: 5px solid transparent; border-bottom: 5px solid transparent; transition: transform .15s; }
.cgc-toc[open] .cgc-toc__chev { transform: rotate(90deg); }
.cgc-toc ul { margin: 10px 0 0 20px; padding: 0; }
.cgc-toc li { margin-bottom: 10px; }
.cgc-toc a { color: var(--cgc-text); text-decoration: none; }
.cgc-toc a:hover { color: #049; }

/* ---------- Section shell ---------- */
.cgc-ins { padding: 64px 0; }
.cgc-ins--cream { background: var(--cgc-bg-cream); }
.cgc-ins--pale { background: var(--cgc-bg-pale); }
.cgc-ins--white { background: #fff; }
.cgc-ins h2 { margin: 0 0 12px; font: 700 32px/1.2 var(--cgc-font-head); color: #000; letter-spacing: normal; }
.cgc-ins h3 { font: 700 20px/1.3 var(--cgc-font-head); color: var(--cgc-text); margin: 0 0 12px; }
.cgc-ins p { font-size: 17px; line-height: 1.6; }
.cgc-ins__head { display: flex; flex-direction: column; align-items: flex-start; gap: 6.8px; padding: 3.4px 0; }
.cgc-ins__head--center { align-items: center; text-align: center; }
.cgc-ins__head--center h2 { color: var(--cgc-text); margin-bottom: 24px; }
.cgc-ins__icon { font-size: 37.4px; line-height: 1; color: var(--cgc-purple); margin-bottom: 5px; }
.cgc-ins-intro { margin: 0 0 36px; }
.cgc-ins-intro--narrow { max-width: 70%; }
.cgc-ins-copy p:last-child { margin-bottom: 0; }
.cgc-ins-copy--after { margin-top: 16px; }

/* Blockquote tip boxes */
.cgc-ins blockquote { position: relative; margin: 36px 0 0; padding: 17px 25.5px 17px 68px; border-left: 4.8px solid var(--cgc-purple); border-radius: 5px; background: #fff; color: #444; font-style: italic; }
.cgc-ins blockquote::before { content: "\275D"; position: absolute; left: 20px; top: 12px; font-size: 32px; line-height: 1; color: var(--cgc-purple); font-style: normal; }
.cgc-ins blockquote p { margin: 0; }
.cgc-ins blockquote strong { color: var(--cgc-text); }

/* ---------- Cards ---------- */
.cgc-ins-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cgc-ins-card { display: flex; gap: 16px; align-items: flex-start; padding: 20px 22px 22px; border-radius: 14px; background: #fff; box-shadow: 0 2px 8px rgba(0, 0, 0, .04); }
.cgc-ins-card__badge { flex: 0 0 34px; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--cgc-teal); color: #fff; font-size: 15px; }
.cgc-ins-card h3 { font-size: 18px; color: var(--cgc-teal); margin-bottom: 6px; }
.cgc-ins-card p { margin: 0 0 4px; font-size: 16px; line-height: 1.55; }

/* ---------- Two-column layouts ---------- */
.cgc-ins-two { display: flex; gap: 32px; align-items: center; }
.cgc-ins-two--text { gap: 40px; }
.cgc-ins-two__main { flex: 1 1 auto; min-width: 0; }
.cgc-ins-two__side { flex: 0 0 377px; text-align: center; }
.cgc-ins-two__side img { width: 160px; height: auto; }
.cgc-ins-two__side--tall { flex: 0 0 244px; text-align: right; }
.cgc-ins-two__side--tall img { width: auto; max-width: 90%; max-height: 420px; }
.cgc-ins-ticks ul, .cgc-ins-crosses ul, .cgc-ins-links ul { list-style: none; margin: 0 0 32px; padding: 0; }
.cgc-ins-ticks li, .cgc-ins-crosses li { position: relative; margin-bottom: 12px; padding-left: 26px; font-size: 17px; line-height: 1.6; }
.cgc-ins-ticks li::before { content: "\f00c"; position: absolute; left: 0; top: 5px; font: 900 13px/1.3 "Font Awesome 6 Free", "Font Awesome 5 Free"; color: #6b21a8; }
.cgc-ins-crosses h3 { margin-top: 0; }
.cgc-ins-crosses ul { margin-bottom: 32px; }
.cgc-ins-crosses li { margin-bottom: 0; }
.cgc-ins-crosses li::before { content: "\f00d"; position: absolute; left: 0; top: 2px; font: 900 17px/1.4 "Font Awesome 6 Free", "Font Awesome 5 Free"; color: #dc3545; }
.cgc-ins-btn { display: inline-flex; align-items: center; height: 44px; padding: 0 18px; border-radius: 5px; background: var(--cgc-teal); color: #fff; font: 700 18px/1 var(--cgc-font-body); text-decoration: none; transition: background .15s; }
.cgc-ins-btn:hover { background: #5da83a; color: #fff; }
.cgc-ins-btn--purple { height: auto; padding: 15px 30px; border-radius: 10px; background: var(--cgc-purple); }

/* ---------- Tables ---------- */
.cgc-ins-table { max-width: 1006px; overflow-x: auto; border-radius: 12px; }
.cgc-ins-table table { width: 100%; border-collapse: collapse; font-size: 17px; }
.cgc-ins-table th { padding: 12px 16px; background: var(--cgc-purple); color: #fff; font-weight: 600; text-align: left; }
.cgc-ins-table td { padding: 12px 16px; border-bottom: 0.8px solid #e8e8e8; color: var(--cgc-text); background: #fff; }
.cgc-ins-table tbody tr:last-child td { border-bottom: 0; }

/* ---------- Accordion ---------- */
.cgc-ins-acc { display: flex; flex-direction: column; gap: 16px; max-width: 881px; }
.cgc-ins-acc__box summary { display: flex; justify-content: space-between; align-items: center; padding: 22px 24px; border: 0.8px solid var(--cgc-teal); border-radius: 8px; background: var(--cgc-lime); list-style: none; cursor: pointer; }
.cgc-ins-acc__box summary::-webkit-details-marker { display: none; }
.cgc-ins-acc__box summary h3 { margin: 0; font-size: 20px; color: #1a1a1a; }
.cgc-ins-acc__icon { position: relative; width: 22px; height: 22px; flex: none; }
.cgc-ins-acc__icon::before, .cgc-ins-acc__icon::after { content: ""; position: absolute; left: 0; top: 9px; width: 22px; height: 4px; border-radius: 2px; background: var(--cgc-teal); transition: transform .2s; }
.cgc-ins-acc__icon::after { transform: rotate(90deg); }
.cgc-ins-acc__box[open] .cgc-ins-acc__icon::after { transform: rotate(0); }
.cgc-ins-acc__box[open] summary { border-radius: 8px 8px 0 0; }
.cgc-ins-acc__body { padding: 24px; border: 0.8px solid var(--cgc-teal); border-top: 0; border-radius: 0 0 8px 8px; background: #fff; }
.cgc-ins-acc__body p { margin: 0; }

/* ---------- Numbered cards ---------- */
.cgc-ins-steps { display: flex; flex-direction: column; gap: 24px; max-width: 881px; list-style: none; margin: 0; padding: 0; }
.cgc-ins-step { display: flex; align-items: stretch; overflow: hidden; border: 0.8px solid var(--cgc-teal); border-radius: 20px; background: #fff; }
.cgc-ins-step__num { flex: 0 0 70px; display: flex; align-items: center; justify-content: center; background: var(--cgc-lime); color: var(--cgc-teal); font: 700 40px/1 var(--cgc-font-head); }
.cgc-ins-step__body { padding: 20px; }
.cgc-ins-step__body h3 { color: var(--cgc-teal); }
.cgc-ins-step__body p { margin: 0; }

/* ---------- Expert box ---------- */
.cgc-ins-expert { display: flex; max-width: 1006px; overflow: hidden; border-radius: 20px; box-shadow: 0 35px 30px -5px rgba(0, 0, 0, .15); }
.cgc-ins-expert__content { flex: 1 1 65%; padding: 32px 36px; background: var(--cgc-teal); color: #fff; }
.cgc-ins-expert__content h2 { margin-bottom: 24px; font-size: 28px; line-height: 1.5; color: #fff; }
.cgc-ins-expert__content h2 i { font-size: 24px; margin-right: 7px; color: var(--cgc-lime); }
.cgc-ins-expert__content p { color: #fff; margin: 0 0 16px; }
.cgc-ins-expert__content a { color: var(--cgc-lime); }
.cgc-ins-expert__by { margin-top: 16px !important; font-size: 15px !important; }
.cgc-ins-expert__by a { font-weight: 700; }
.cgc-ins-expert__photo { flex: 1 1 35%; display: flex; align-items: center; justify-content: center; padding: 32px 20px; background: var(--cgc-lime); }
.cgc-ins-expert__photo img { width: 200px; height: 200px; border-radius: 50%; object-fit: cover; box-shadow: 0 4px 20px rgba(0, 0, 0, .15); }

/* ---------- Boxed FAQ ---------- */
.cgc-ins-faq__item { margin-bottom: 16px; overflow: hidden; border: 0.8px solid var(--cgc-teal); border-radius: 8px; }
.cgc-ins-faq__item summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 15px 20px; background: #fff091; list-style: none; cursor: pointer; }
.cgc-ins-faq__item summary::-webkit-details-marker { display: none; }
.cgc-ins-faq__item summary h3 { margin: 0; font-size: 19px; color: var(--cgc-text); }
.cgc-ins-faq__item summary i { color: var(--cgc-text); transition: transform .3s; }
.cgc-ins-faq__item[open] summary i { transform: rotate(180deg); }
.cgc-ins-faq__a { padding: 16px 20px; background: #fff; }
.cgc-ins-faq__a p { margin: 0; }

/* ---------- Bottom CTA ---------- */
.cgc-ins-cta { display: flex; max-width: 920px; overflow: hidden; border-radius: 20px; background: var(--cgc-purple); }
.cgc-ins-cta__main { flex: 1 1 auto; padding: 16px 24px 24px; color: #fff; }
.cgc-ins-cta__main h2 { margin: 48px 0 16px; font-size: 32px; line-height: 1.5; color: #fff; text-align: center; }
.cgc-ins-cta__art { flex: 0 0 275px; display: flex; align-items: center; padding-left: 30px; background: #fff091; }
.cgc-ins-cta__art img { width: 168px; height: auto; }

/* ---------- Useful links ---------- */
.cgc-ins-links ul { padding-left: 28px; }
.cgc-ins-links li { position: relative; margin-bottom: 8px; padding-left: 8px; }
.cgc-ins-links li::before { content: "\f0c1"; position: absolute; left: -20px; top: 4px; font: 900 13.6px/1.2 "Font Awesome 6 Free", "Font Awesome 5 Free"; color: var(--cgc-teal); }
.cgc-ins-links a { color: var(--cgc-purple); }

/* ---------- Related pills + posts ---------- */
.cgc-ins-related__h { margin-bottom: 32px !important; color: var(--cgc-text) !important; }
.cgc-ins-related { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; list-style: none; margin: 0; padding: 0; }
.cgc-ins-related a { display: block; padding: 10px 20px; border-radius: 10px; background: var(--cgc-purple); box-shadow: 0 2px 5px rgba(0, 0, 0, .05); color: #fff; font: 700 18px/1.5 var(--cgc-font-head); text-decoration: none; transition: background .15s; }
.cgc-ins-related a:hover { background: var(--cgc-teal); }
.cgc-ins-posts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; list-style: none; margin: 0; padding: 0; }
.cgc-ins-post__img img { display: block; width: 100%; height: auto; aspect-ratio: 1024 / 572; object-fit: cover; }
.cgc-ins-post h3 { margin: 12px 0 10px; font: 600 17px/1.4 var(--cgc-font-body); }
.cgc-ins-post h3 a { color: var(--cgc-text); text-decoration: none; }
.cgc-ins-post h3 a:hover { color: var(--cgc-purple); }
.cgc-ins-posts__more { margin: 24px 0 0; text-align: center; }

/* ---------- Sticky bar variant ---------- */
.cgc-ins-sticky .cgc-qf { width: 520px; }
.cgc-qf--small { zoom: .75; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.cgc-ph__inner { grid-template-columns: 1fr; }
	.cgc-ph__art { max-width: 560px; margin: 0 auto; }
	.cgc-ins-posts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.cgc-ins-two__side, .cgc-ins-two__side--tall { display: none; }
}
@media (max-width: 900px) {
	.cgc-ins-cards { grid-template-columns: 1fr; }
	.cgc-ins-related { grid-template-columns: 1fr 1fr; }
	.cgc-ins-expert { flex-direction: column-reverse; }
	.cgc-ins-cta { flex-direction: column; }
	.cgc-ins-cta__art { display: none; }
	.cgc-ins-intro--narrow { max-width: none; }
}
@media (max-width: 740px) {
	.cgc-ins { padding: 48px 0; }
	.cgc-ins h2 { font-size: 26px; }
	.cgc-ph__inner { padding-top: 24px; }
	.cgc-ph__card h1 { font-size: 28px; }
	.cgc-qf { flex-wrap: wrap; }
	.cgc-qf > * { flex: 1 1 100%; }
	.cgc-qf__input { font-size: 28px; }
	.cgc-ins-related, .cgc-ins-posts { grid-template-columns: 1fr; }
	.cgc-ins-cta__main h2 { margin-top: 16px; font-size: 24px; }
	.cgc-ins-step__num { flex-basis: 52px; font-size: 30px; }
	.cgc-ins-table td, .cgc-ins-table th { padding: 10px; font-size: 15px; }
	.cgc-ins-sticky .cgc-qf { width: 100%; }
	.cgc-qf--small { zoom: .7; }
}


/* ======================================================================
   Live-parity pass (8 Oct 2026) - values from the live /car-insurance/ agent comparison.
   Selectors are prefixed with .cgc-lp to beat the generic page rules.
   ====================================================================== */

/* Hero */
/* hero background: see "Hero sky scene" block at the end */
.cgc-lp .cgc-ph__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
.cgc-lp .cgc-ph__card { border: 1px solid #006400; min-width: 0; }
.cgc-lp .cgc-ph__art { margin-top: 33px; min-width: 0; }
.cgc-lp .cgc-qf__wrap { flex: 3 1 0; }
.cgc-lp .cgc-qf__input { border-radius: 3px; }
.cgc-lp .cgc-qf__btn { flex: 1 1 0; border: 1px solid #fff; }
.cgc-lp .cgc-qf__noreg { margin: 10px 0; font-size: 13px; color: #fff; }
.cgc-lp .cgc-qf__noreg a { color: #fff; }
.cgc-lp .cgc-qf__partner { line-height: 1.3; }
.cgc-lp .cgc-ph__points { margin-left: 25.5px; padding-left: 0; }
.cgc-lp .cgc-ph__points li { margin-left: 5px; }
.cgc-lp .cgc-ph__logos { overflow: hidden; margin: 30px 0 10px; padding: 15px 20px 5px 15px; border-radius: 10px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.cgc-lp .cgc-ph__track { display: flex; gap: 10px; width: max-content; list-style: none; margin: 0; padding: 0; animation: cgc-logos 30s linear infinite; }
.cgc-lp .cgc-ph__logos:hover .cgc-ph__track { animation-play-state: paused; }
.cgc-lp .cgc-ph__track li { display: grid; place-items: center; flex: 0 0 96px; width: 96px; height: 48px; padding: 5px 8px; border-radius: 5px; background: #fff; }
.cgc-lp .cgc-ph__track img { width: 80px; max-height: 38px; object-fit: contain; }
@keyframes cgc-logos { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .cgc-lp .cgc-ph__track { animation: none; flex-wrap: wrap; width: auto; } }

/* Meta + quick links */
.cgc-lp .cgc-ins-meta { padding-top: 8px; }
.cgc-lp .cgc-ins-meta__box { display: inline-flex; align-items: center; flex-wrap: wrap; padding: 10px 18px 10px 10px; border-radius: 8px; background: #fdf6f0; font-size: 13px; color: #888; }
.cgc-lp .cgc-ins-meta__box p { margin: 0; }
.cgc-lp .cgc-ins-meta__dot { margin: 0 8px; color: #999; }
.cgc-lp .cgc-ins-meta--toc { padding: 16px 0 0; }
.cgc-lp .cgc-toc summary { gap: 10px; padding-left: 4px; font-size: 14px; }
.cgc-lp .cgc-toc__chev { position: relative; width: 20px; height: 20px; border: 0; }
.cgc-lp .cgc-toc__chev::before { content: ""; position: absolute; left: 6px; top: 4px; border-left: 9px solid var(--cgc-purple); border-top: 6px solid transparent; border-bottom: 6px solid transparent; }
.cgc-lp .cgc-toc ul { margin: 12px 0 0; padding: 5px 30px 20px; }
.cgc-lp .cgc-ins-meta--toc + .cgc-ins { padding-top: 24px; }

/* Shared section bits */
.cgc-lp .cgc-ins p { margin: 0 0 16px; }
.cgc-lp .cgc-ins .cgc-ins-intro { margin: 0 0 38px; max-width: 881px; }
.cgc-lp .cgc-ins .cgc-ins-intro--narrow { max-width: 70%; }
.cgc-lp .cgc-ins-copy, .cgc-lp .cgc-ins-crosses, .cgc-lp .cgc-ins-links { max-width: 881px; }
.cgc-lp .cgc-ins blockquote { max-width: 881px; border-left-width: 5px; }
.cgc-lp .cgc-ins blockquote::before { font-size: 56px; top: 6px; left: 14px; }
.cgc-lp .cgc-ins blockquote p { margin: 0; color: #333; }

/* Cards */
.cgc-lp .cgc-ins-card { border: 1px solid var(--cgc-teal); border-left: 4px solid var(--cgc-purple); transition: box-shadow .2s; }
.cgc-lp .cgc-ins-card:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, .1); }
.cgc-lp .cgc-ins-card h3 { margin-bottom: 6px; }
.cgc-lp .cgc-ins-card p { margin: 0 0 4px; }
.cgc-lp .cgc-promotion-host:empty { display: none; }

/* At a glance */
.cgc-lp .cgc-ins-ticks ul { margin: 0; }
.cgc-lp .cgc-ins-ticks li::before { content: "\f111"; font-size: 13px; color: #6b21a8; }
.cgc-lp .cgc-ins-ticks p { margin: 0 0 32px; }
.cgc-lp a.cgc-ins-btn { color: #fff; border: 1px solid #fff; transition: transform .15s, background .15s; }
.cgc-lp a.cgc-ins-btn:hover { color: #fff; transform: scale(1.02); }
.cgc-lp .cgc-ins-two__side { flex: 0 0 30%; }

/* Tables */
.cgc-lp .cgc-ins-table tbody tr { background: #fff; }
.cgc-lp .cgc-ins-table tbody tr:nth-child(even) { background: #f5f3f7; }
.cgc-lp .cgc-ins-table td { background: none; }
.cgc-lp .cgc-ins-table td:first-child { font-weight: 600; }
.cgc-lp .cgc-ins--table-image .cgc-ins-table th:first-child, .cgc-lp .cgc-ins--table-image .cgc-ins-table td:first-child { width: 35%; }

/* Exclusions */
.cgc-lp .cgc-ins--lists .cgc-ins__icon { color: #dc3545; }
.cgc-lp .cgc-ins-crosses ul { margin: 0; }
.cgc-lp .cgc-ins-crosses li { padding: 6px 0 6px 26px; }
.cgc-lp .cgc-ins-crosses li::before { content: "\f057"; top: 10px; font-size: 17px; line-height: 1; }
.cgc-lp .cgc-ins-crosses h3 { margin: 0 0 12px; }
.cgc-lp .cgc-ins-crosses ul + h3 { margin-top: 36px; }

/* Accordion */
.cgc-lp .cgc-ins-acc__box summary { border-radius: 12px; transition: background .15s; }
.cgc-lp .cgc-ins-acc__box summary:hover { background: #c8eb85; }
.cgc-lp .cgc-ins-acc__box[open] summary { border-radius: 12px 12px 0 0; }
.cgc-lp .cgc-ins .cgc-ins-acc__box summary h3 { margin: 0; }
.cgc-lp .cgc-ins-acc__icon { width: auto; height: auto; font-size: 36px; line-height: 1; color: var(--cgc-teal); }
.cgc-lp .cgc-ins-acc__icon::before, .cgc-lp .cgc-ins-acc__icon::after { display: none; }
.cgc-lp .cgc-ins-acc__icon .fa-minus, .cgc-lp .cgc-ins-acc__box[open] .cgc-ins-acc__icon .fa-plus { display: none; }
.cgc-lp .cgc-ins-acc__box[open] .cgc-ins-acc__icon .fa-minus { display: inline; }
.cgc-lp .cgc-ins-acc__body { border-radius: 0 0 12px 12px; }

/* Numbered */
.cgc-lp .cgc-ins .cgc-ins-step__body h3 { margin-bottom: 12px; }

/* Expert */
.cgc-lp .cgc-ins-expert { border: 1px solid var(--cgc-purple); }
.cgc-lp .cgc-ins-expert__by, .cgc-lp .cgc-ins-expert__by * { font-weight: 700; }

/* FAQ */
.cgc-lp .cgc-ins-faq__item summary { border: 1px solid var(--cgc-teal); border-radius: 8px; }
.cgc-lp .cgc-ins .cgc-ins-faq__item summary h3 { line-height: 1.4; }

/* Bottom CTA */
.cgc-lp .cgc-ins-cta { margin: 0 16px; border: 1px solid #006400; }
.cgc-lp .cgc-ins-cta__main { border: 1px solid var(--cgc-purple); border-radius: 20px 0 0 20px; }

/* Useful links */
.cgc-lp .cgc-ins-links li { margin-left: 10px; }
.cgc-lp .cgc-ins-links a { color: #333; }
.cgc-lp .cgc-ins-links li::before { font-size: 13.6px; }

/* Related pills */
.cgc-lp .cgc-ins-related a { padding: 10px 20px; color: #fff; }

/* Posts row */
.cgc-lp .cgc-ins-posts { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 60px) / 4); grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 8px; }
.cgc-lp .cgc-ins-post { scroll-snap-align: start; overflow: hidden; border: 1px solid #e0e0e0; border-radius: 8px; background: #fff; transition: transform .2s; }
.cgc-lp .cgc-ins-post:hover { transform: translateY(-5px); }
.cgc-lp .cgc-ins-post__img { display: block; overflow: hidden; }
.cgc-lp .cgc-ins-post__img img { transition: transform .3s; }
.cgc-lp .cgc-ins-post:hover .cgc-ins-post__img img { transform: scale(1.05); }
.cgc-lp .cgc-ins-post h3 { margin: 12px 14px 14px; }
.cgc-lp .cgc-ins-post:hover h3 a { color: #87be40; }

/* Footnote + sticky */
.cgc-ins-footnote { padding: 24px 0; background: var(--cgc-bg-cream); }
.cgc-ins-footnote p { margin: 0; font-size: 12px; line-height: 1.6; color: #333; }
.cgc-lp .cgc-ins-sticky { border: 1px solid var(--cgc-teal); }

/* Tablet: live keeps most two-column layouts at 820 */
@media (max-width: 1024px) {
	.cgc-lp .cgc-ins h2, .cgc-lp .cgc-ins-related__h { font-size: 28px; }
	.cgc-lp .cgc-ph__card h1 { font-size: 32px; }
	.cgc-lp .cgc-ph__inner { grid-template-columns: minmax(0, 1fr); }
	.cgc-lp .cgc-ph__art { max-width: 500px; margin: 0 auto; }
	.cgc-lp .cgc-ins-two__side, .cgc-lp .cgc-ins-two__side--tall { display: block; }
	.cgc-lp .cgc-ins-two__side { flex-basis: 30%; }
	.cgc-lp .cgc-ins-two__side--tall { flex-basis: 25%; }
	.cgc-lp .cgc-ins-crosses h3 { font-size: 18px; }
	.cgc-lp .cgc-ins-expert__content h2 { font-size: 24px; }
	.cgc-lp .cgc-ins-expert__photo img { width: 180px; height: 200px; }
	.cgc-lp .cgc-ins-posts { grid-auto-columns: calc((100% - 20px) / 2); }
}
@media (max-width: 900px) {
	.cgc-lp .cgc-ins-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.cgc-lp .cgc-ins-related { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.cgc-lp .cgc-ins-expert { flex-direction: row; }
	.cgc-lp .cgc-ins-cta { flex-direction: row; }
	.cgc-lp .cgc-ins-cta__art { display: flex; flex-basis: 30%; }
}
/* Phone */
@media (max-width: 767px) {
	.cgc-lp .cgc-ins h2, .cgc-lp .cgc-ins-related__h { font-size: 24px; }
	.cgc-lp .cgc-ph__card h1 { font-size: 24px; }
	.cgc-lp .cgc-ph__art { display: none; }
	.cgc-lp .cgc-qf__btn { flex: 1 1 100%; }
	.cgc-lp .cgc-ins-cards, .cgc-lp .cgc-ins-related { grid-template-columns: 1fr; }
	.cgc-lp .cgc-ins-two { flex-direction: column; align-items: stretch; }
	.cgc-lp .cgc-ins-two__side, .cgc-lp .cgc-ins-two__side--tall { display: none; }
	.cgc-lp .cgc-ins-crosses h3 { font-size: 17px; }
	.cgc-lp .cgc-ins-expert { flex-direction: column-reverse; }
	.cgc-lp .cgc-ins-expert__content { padding: 24px 18px; }
	.cgc-lp .cgc-ins-expert__content h2 { font-size: 22px; }
	.cgc-lp .cgc-ins-expert__photo img { width: 150px; height: 150px; }
	.cgc-lp .cgc-ins-cta { flex-direction: column; margin: 0; }
	.cgc-lp .cgc-ins-cta__main { border-radius: 20px 20px 0 0; }
	.cgc-lp .cgc-ins-cta__art { display: flex; justify-content: center; padding: 16px 0; }
	.cgc-lp .cgc-ins-step__num { flex-basis: 70px; font-size: 40px; }
	.cgc-lp .cgc-ins-posts { grid-auto-columns: 85%; }
	.cgc-lp .cgc-ph__track li { flex-basis: 104px; width: 104px; }
	.cgc-lp .cgc-ph__track img { width: 89px; }
}


/* ======================================================================
   Pass 3 (8 Oct 2026) - second agent comparison against live /car-insurance/.
   Not copied on purpose: live's 5-8px side gutter on tablet/phone (looks like a live defect).
   ====================================================================== */
.cgc-lp .cgc-ins__head { margin-bottom: 9px; }
.cgc-lp .cgc-ins-faq__a a, .cgc-lp .cgc-ins-acc__body a { color: var(--cgc-purple); }
.cgc-lp .cgc-ins-table tbody tr:last-child td { border-bottom: 0.8px solid #e8e8e8; }
.cgc-lp .cgc-ins-table th, .cgc-lp .cgc-ins-table td { vertical-align: top; }
.cgc-lp .cgc-ins-table table { table-layout: auto; }
.cgc-lp .cgc-ins .cgc-ins-copy > p:last-child, .cgc-lp .cgc-ins .cgc-ins-links ul { margin-bottom: 0; }

/* Hero spacing */
.cgc-lp .cgc-ph__inner { padding-bottom: 64px; }
.cgc-lp .cgc-ph__card h1 { margin-bottom: 32px; }
.cgc-lp .cgc-qf__noreg { margin: 10px 0 0; }
.cgc-lp .cgc-qf__noreg a { font-weight: 400; }
.cgc-lp .cgc-ph__points { margin-top: 40px; }
.cgc-lp .cgc-ph__logos { margin: 38px 0 15px; }

/* Meta + TOC */
.cgc-lp .cgc-ins-meta__box { display: flex; width: 100%; }
.cgc-lp .cgc-toc ul { list-style: none; }

/* Cards / glance */
.cgc-lp .cgc-ins .cgc-ins-card h3 { margin-bottom: 6px; }
.cgc-lp .cgc-ins-ticks p { margin-bottom: 22px; }

/* Cover table */
.cgc-lp .cgc-ins--table .cgc-ins-table { margin-bottom: 21px; }

/* Exclusions */
.cgc-lp .cgc-ins .cgc-ins-crosses h3 { margin-bottom: 12px; }
.cgc-lp .cgc-ins blockquote { box-shadow: 0 1px 4px rgba(122, 176, 91, .08); }

/* Accordion */
.cgc-lp .cgc-ins-acc__box[open] summary { border-radius: 12px; }
.cgc-lp .cgc-ins-acc__body { margin-top: 6px; border-top: 0.8px solid var(--cgc-teal); border-radius: 12px; }
.cgc-lp .cgc-ins-acc__body p { margin: 0; }
.cgc-lp .cgc-ins-acc__box summary { padding: 15px 19px 15px 24px; min-height: 84px; }
.cgc-lp .cgc-ins-acc__icon { display: grid; place-items: center; width: 58px; height: 58px; }

/* Cost table: wide table + slim image like live */
.cgc-lp .cgc-ins--table-image .cgc-ins-two { gap: 61px; align-items: center; }
.cgc-lp .cgc-ins--table-image .cgc-ins-two__main { max-width: 974px; }
.cgc-lp .cgc-ins--table-image .cgc-ins-two__side--tall { flex: 0 0 133px; text-align: left; }
.cgc-lp .cgc-ins--table-image .cgc-ins-two__side--tall img { max-width: 100%; }
.cgc-lp .cgc-ins--table-image .cgc-ins-table th:first-child, .cgc-lp .cgc-ins--table-image .cgc-ins-table td:first-child { width: 343px; }

/* Step cards */
.cgc-lp .cgc-ins-step__body { padding: 20px 20px 4px; }
.cgc-lp .cgc-ins-step__body p { margin-bottom: 16px; }

/* Expert */
.cgc-lp .cgc-ins-expert__content > p:last-of-type { margin-bottom: 0; }
.cgc-lp .cgc-ins-expert__content { padding-bottom: 16px; }

/* FAQ: list ~974px with a slimmer image column, live open-answer styling */
.cgc-lp .cgc-ins--faq .cgc-ins-two__main { max-width: 974px; }
.cgc-lp .cgc-ins--faq .cgc-ins-two__side--tall { flex: 0 0 199px; }
.cgc-lp .cgc-ins-faq__a { padding: 20px; background: transparent; border-top: 0.8px solid var(--cgc-teal); }
.cgc-lp .cgc-ins-faq__item[open] summary { border-bottom-color: transparent; border-radius: 8px 8px 0 0; }

/* Bottom CTA */
.cgc-lp .cgc-ins-cta__main h2 { max-width: 593px; margin-left: auto; margin-right: auto; }

/* Related + posts headings and pills */
.cgc-lp .cgc-ins-related__h { line-height: 1.5; }
.cgc-lp .cgc-ins--related { padding-bottom: 105px; }
.cgc-lp .cgc-ins-related a { min-height: 50px; padding: 12px 20px; }
.cgc-lp .cgc-ins--posts .cgc-ins-related__h { margin-bottom: 39px !important; }
.cgc-lp .cgc-ins-posts { gap: 10px; grid-auto-columns: calc((100% - 30px) / 4); }
.cgc-lp .cgc-ins-post h3 { margin: 20px; font-family: var(--cgc-font-head); }
.cgc-lp .cgc-ins-posts__more { margin-top: 48px; }

/* Footnote */
.cgc-ins-footnote { padding: 56px 0 60px; }

/* Sticky: floating pill like live */
.cgc-lp .cgc-ins-sticky { bottom: 22px; border-radius: 14px; }
.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__inner { padding: 20px 24px; }
.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__text { flex: 1 1 auto; }
.cgc-lp .cgc-ins-sticky .cgc-qf { width: 424px; }
.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__close { top: 50%; right: 8px; width: 33px; height: 33px; transform: translateY(-50%); border: 0; background: rgba(0, 0, 0, .1); box-shadow: none; }
.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__inner { padding-right: 56px; }

@media (max-width: 1024px) {
	.cgc-lp .cgc-ins { padding: 46px 0 48px; }
	.cgc-lp .cgc-ins--table .cgc-ins-copy--after, .cgc-lp .cgc-ins--table blockquote { max-width: 70%; }
	.cgc-lp .cgc-ins--table-image .cgc-ins-two { gap: 32px; }
	.cgc-lp .cgc-ins--table-image .cgc-ins-two__main { max-width: 598px; }
	.cgc-lp .cgc-ins--table-image .cgc-ins-two__side--tall { flex-basis: 117px; }
	.cgc-lp .cgc-ins--faq .cgc-ins-two__main { max-width: 598px; }
	.cgc-lp .cgc-ins--faq .cgc-ins-two__side--tall { flex-basis: 117px; }
	.cgc-lp .cgc-ins-expert { max-width: 630px; }
	.cgc-lp .cgc-ins-expert__photo { flex: 0 0 220px; }
	.cgc-lp .cgc-ins-cta__art { flex: 0 0 250px; padding-left: 30px; }
	.cgc-lp .cgc-ins-cta__main h2 { max-width: 454px; }
	.cgc-lp .cgc-ins-sticky { bottom: 0; border-radius: 14px 14px 0 0; }
	.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__inner { flex-direction: column; align-items: stretch; gap: 12px; padding: 20px 24px; }
	.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__text { justify-content: center; font-size: 20px; }
	.cgc-lp .cgc-ins-sticky .cgc-qf { width: 100%; flex-wrap: wrap; }
	.cgc-lp .cgc-ins-sticky .cgc-qf > * { flex: 1 1 100%; }
	.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__close { top: -12px; transform: none; background: var(--cgc-paper); }
}
@media (max-width: 767px) {
	.cgc-lp .cgc-ins { padding: 33px 0 48px; }
	.cgc-lp .cgc-ins-meta { padding-top: 32px; }
	.cgc-lp .cgc-ins .cgc-ins-intro--narrow { max-width: none; }
	.cgc-lp .cgc-ins-table td, .cgc-lp .cgc-ins-table th { padding: 12px 16px; font-size: 17px; }
	.cgc-lp .cgc-ins--table-image .cgc-ins-table th:first-child, .cgc-lp .cgc-ins--table-image .cgc-ins-table td:first-child { width: 151px; }
	.cgc-lp .cgc-ins--table .cgc-ins-copy--after, .cgc-lp .cgc-ins--table blockquote { max-width: none; }
	.cgc-lp .cgc-ins-acc__box summary { min-height: 0; padding: 10px 12px 10px 16px; }
	.cgc-lp .cgc-ins-acc__box summary h3 { font-size: 17px; }
	.cgc-lp .cgc-ins-acc__icon { width: 40px; height: 40px; font-size: 28px; }
	.cgc-lp .cgc-ins-expert__content { padding: 24px 20px 8px; }
	.cgc-lp .cgc-ins-expert__content h2 { line-height: 1.3; }
	.cgc-lp .cgc-ins-expert__photo { padding: 24px; flex-basis: auto; }
	.cgc-lp .cgc-ins-cta__main h2 { line-height: 1.3; }
	.cgc-lp .cgc-ins-related__h { line-height: 1.3; }
	.cgc-lp .cgc-ins-related { gap: 10px; }
	.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__inner { padding: 12px 17px; gap: 8px; }
	.cgc-lp .cgc-ins-sticky .cgc-lp-sticky__text { font-size: 16px; }
	.cgc-lp .cgc-qf--small .cgc-qf__btn { min-height: 41px; }
}

.cgc-lp .cgc-ins-links ul { padding-left: 10px; }
@media (max-width: 1024px) { .cgc-lp .cgc-ins-links ul { padding-left: 2px; } }

/* CTA: let the form column shrink so the image panel stays on screen at tablet */
.cgc-lp .cgc-ins-cta__main { flex: 1 1 0; min-width: 0; }

/* ======================================================================
   Hero sky scene (8 Oct 2026) - opt-in with "scene: sky" on the hero-quote marker;
   default hero is plain lime.
   Layers, back to front: sky gradient (.cgc-ph) > sun + drifting clouds
   (.cgc-ph__sky) > hills + flat lime ground anchored to the hero art
   (.cgc-ph__art::before, full-bleed) > art. The horizon follows the art box at
   every width, so whatever cut-out image a page uses stands on the ground.
   Nothing here is tied to a particular image.
   ====================================================================== */
.cgc-lp .cgc-ph--scene { --cgc-sky-top: #c8e4f2; --cgc-sky-mid: #e2f1f6; --cgc-sky-low: #fcf6de; position: relative; overflow: hidden; isolation: isolate;
	background: linear-gradient(180deg, var(--cgc-sky-top) 0, var(--cgc-sky-mid) 240px, var(--cgc-sky-low) 420px, var(--cgc-lime) 640px); }
.cgc-ph__sky { position: absolute; inset: 0; z-index: -2; pointer-events: none; }
.cgc-ph__sky svg { position: absolute; display: block; overflow: visible; }
.cgc-ph__sun { top: 26px; right: max(4vw, calc(50% - 680px)); width: 104px; }
.cgc-ph__halo { fill: #fff6c9; opacity: .55; transform-origin: 60px 60px; animation: cgc-sun 6s ease-in-out infinite alternate; }
.cgc-ph__halo--in { fill: #fff2b0; opacity: .7; animation-delay: -3s; }
.cgc-ph__cloud { width: 150px; animation: cgc-drift 38s ease-in-out infinite alternate; }
.cgc-ph__cloud--a { top: 46px; right: calc(max(4vw, calc(50% - 680px)) + 300px); }
.cgc-ph__cloud--b { top: 120px; right: calc(max(4vw, calc(50% - 680px)) + 120px); width: 120px; animation-duration: 46s; animation-delay: -12s; }
.cgc-ph__cloud--c { top: 22px; left: max(2vw, calc(50% - 700px)); width: 96px; animation-duration: 54s; animation-delay: -25s; }
@keyframes cgc-drift { from { transform: translateX(0); } to { transform: translateX(-60px); } }
@keyframes cgc-sun { from { transform: scale(.94); } to { transform: scale(1.04); } }
@media (prefers-reduced-motion: reduce) { .cgc-ph__cloud, .cgc-ph__halo { animation: none; } }

.cgc-lp .cgc-ph__art { position: relative; }
.cgc-lp .cgc-ph__art img { position: relative; z-index: 1; }
.cgc-lp .cgc-ph--scene .cgc-ph__art::before { content: ""; position: absolute; z-index: -1; left: -200vw; right: -200vw; top: calc(57% - 120px); height: 3000px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 160'%3E%3Cpath d='M0 92C160 40 330 30 500 74S820 112 1000 56 1300 46 1440 92V160H0Z' fill='%23c4e38a'/%3E%3Cpath d='M0 92C160 40 330 30 500 74S820 112 1000 56 1300 46 1440 92' fill='none' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M978 60v-17' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round' fill='none'/%3E%3Ccircle cx='978' cy='41' r='11' fill='%23a9d36a' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M1006 58v-14' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round' fill='none'/%3E%3Ccircle cx='1006' cy='42' r='8' fill='%23a9d36a' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M1150 54v-15' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round' fill='none'/%3E%3Ccircle cx='1150' cy='37' r='9' fill='%23a9d36a' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round'/%3E%3Cpath d='M0 128C240 102 440 100 660 120S1080 140 1250 112 1390 112 1440 128V160H0Z' fill='%23d9f3a3'/%3E%3Cpath d='M0 128C240 102 440 100 660 120S1080 140 1250 112 1390 112 1440 128' fill='none' stroke='%232b3a36' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center top / 1440px 160px repeat-x, linear-gradient(transparent 158px, var(--cgc-lime) 158px) no-repeat; }

@media (max-width: 1024px) {
	.cgc-lp .cgc-ph--scene { background: linear-gradient(180deg, var(--cgc-sky-top) 0, var(--cgc-sky-mid) 30%, var(--cgc-sky-low) 62%, var(--cgc-sky-low) 100%); }
	.cgc-ph__cloud--c { left: 8%; }
	.cgc-ph__sun { top: auto; bottom: 250px; right: 6%; width: 84px; }
	.cgc-ph__cloud--a { top: auto; bottom: 300px; right: auto; left: 5%; width: 120px; }
	.cgc-ph__cloud--b { top: auto; bottom: 240px; right: 20%; width: 96px; }
	.cgc-lp .cgc-ph--scene.cgc-ph--framed .cgc-ph__art { margin-top: 40px; }
}
@media (max-width: 767px) {
	.cgc-lp .cgc-ph--scene { background: linear-gradient(180deg, var(--cgc-sky-top) 0, var(--cgc-sky-mid) 90px, var(--cgc-sky-low) 200px, var(--cgc-lime) 360px); }
	.cgc-ph__sun { top: 10px; right: 10px; width: 64px; }
	.cgc-ph__cloud--a, .cgc-ph__cloud--b { display: none; }
	.cgc-ph__cloud--c { top: 14px; left: 14px; width: 70px; }
}
/* Photo heroes (no transparency): Opie-style framed picture standing in the field,
   white mat, the same dark outline as the clouds and a flat offset shadow. */
.cgc-lp .cgc-ph--scene.cgc-ph--framed .cgc-ph__art { margin-top: 120px; }
.cgc-lp .cgc-ph--framed .cgc-ph__art { padding: 8px; border: 2.4px solid #2b3a36; border-radius: 18px; background: #fff; box-shadow: 10px 10px 0 rgba(43, 58, 54, .16); }
.cgc-lp .cgc-ph--framed .cgc-ph__art img { border-radius: 10px; }
.cgc-lp .cgc-ph--scene.cgc-ph--framed .cgc-ph__art::before { top: calc(100% - 110px); }
.cgc-lp .cgc-ph--scene.cgc-ph--framed .cgc-ph__sun { right: max(1.5vw, calc(50% - 710px)); }
