/* Scoped V2 offer formats. Native blocks remain editable; no fixed text heights. */
.kc-offer-active #content{width:100%;max-width:none;margin:0;padding:0;background:transparent}
.kc-offer-active #content>.page-header{display:none}
.kc-offer{color:#f3f8f8;font-family:"KC Montserrat",sans-serif;line-height:1.65;padding:clamp(44px,6vw,88px) 24px 40px}
.kc-offer-shell{max-width:1200px;margin-inline:auto}
.kc-offer :where(h1,h2,h3,p,figure){margin-top:0;overflow-wrap:anywhere}
.kc-offer :where(h1,h2,h3){color:inherit;line-height:1.15;letter-spacing:-.025em}
.kc-offer-active #kc-offer :is(h1,h2,h3){font-family:"KC Varela Round",sans-serif;font-weight:400}
.kc-offer-active #kc-offer h1{font-size:clamp(2.5rem,4.6vw,4.5rem);line-height:1.15;margin-bottom:20px}
.kc-offer h2{font-size:clamp(1.6rem,2.3vw,2.2rem);margin-bottom:24px}
.kc-offer h3{font-size:1rem;letter-spacing:0;margin-bottom:6px;color:#bde8e7}
.kc-offer p{font-size:1rem;margin-bottom:20px}
.kc-offer-hero{max-width:800px;margin-bottom:48px}
.kc-offer .kc-offer-eyebrow{font-size:.8rem;letter-spacing:.13em;font-weight:700;color:#bde8e7;margin-bottom:16px}
.kc-offer .kc-offer-lead{font-size:clamp(1.25rem,2vw,1.6rem);margin-bottom:12px}
.kc-offer .kc-offer-draft-note{font-size:.85rem;color:#d0e7e8;border-left:2px solid #8ed1d1;padding-left:14px}
.kc-offer-formats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.kc-offer-format{min-width:0;border:1px solid rgba(169,214,229,.36);border-radius:24px;overflow:hidden;background:linear-gradient(150deg,rgba(0,95,96,.66),rgba(22,63,64,.86));box-shadow:0 12px 35px rgba(22,63,64,.12);backdrop-filter:blur(8px)}
.kc-offer-format-image{margin:0!important;position:relative;background:rgba(169,214,229,.12)}
.kc-offer-format-image img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:contain}
.kc-offer .kc-offer-format-image figcaption{position:absolute;bottom:12px;left:16px;right:16px;text-align:left;margin:0;font-size:.75rem;color:#163f40}
.kc-offer-format-copy{padding:28px}
.kc-offer .wp-block-buttons{display:flex;flex-wrap:wrap;margin-top:26px;gap:12px}
.kc-offer .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;background:#a9d6e5;color:#163f40;text-decoration:none;padding:12px 22px;font-size:.95rem;font-weight:700;line-height:1.4;border:1px solid transparent;box-shadow:inset 0 1px rgba(255,255,255,.3)}
.kc-offer .wp-block-button__link:hover{background:#d4eeef;color:#163f40}
.kc-offer :where(a,button):focus-visible{outline:3px solid #a9d6e5;outline-offset:5px;box-shadow:0 0 0 2px #163f40}
.kc-offer-cta{margin-top:40px;padding:32px;border-radius:24px;border:1px solid rgba(169,214,229,.4);background:linear-gradient(135deg,rgba(0,95,96,.8),rgba(22,63,64,.9))}
.kc-offer-cta h2{margin-bottom:14px}.kc-offer-cta p{margin-bottom:0}
@media(max-width:767px){.kc-offer{padding:36px 20px 24px}.kc-offer-hero{margin-bottom:28px}.kc-offer-formats{grid-template-columns:minmax(0,1fr);gap:24px}.kc-offer-format-copy{padding:24px}.kc-offer-format,.kc-offer-cta{border-radius:20px}.kc-offer-cta{padding:24px;margin-top:28px}.kc-offer h2{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){.kc-offer *{scroll-behavior:auto!important}}
/* Native WordPress flow spacing must not offset adjacent grid cards. */
.kc-offer-formats > .kc-offer-format{margin:0;display:flex;flex-direction:column}
.kc-offer-format > .kc-offer-format-copy{display:flex;flex-direction:column;flex:1;min-width:0}
.kc-offer .kc-offer-format-copy > .wp-block-buttons{margin-top:auto;padding-top:26px}
