
.iabafc-wrap{position:relative;width:100%;max-width:100%;overflow:hidden;background:#f7f3e9;color:#183f2c;font-family:inherit;box-sizing:border-box}
.iabafc-wrap *{box-sizing:border-box}
.iabafc-openbooks{position:relative;display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:22px;align-items:center;padding:28px 42px 30px;background:linear-gradient(90deg,#f7f3e9 0%,#f9f6ee 68%,#f3eee1 100%);overflow:hidden}
.iabafc-open-icon{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;width:94px;height:94px;border-radius:50%;background:#edf0dc;box-shadow:0 8px 20px rgba(29,63,43,.06)}
.iabafc-open-icon svg{width:70px;height:70px}
.iabafc-open-copy{position:relative;z-index:3;max-width:780px}
.iabafc-open-copy h2{margin:0;color:#153f2b;font-size:27px;line-height:1.05;font-weight:900;text-transform:uppercase;letter-spacing:-.025em}
.iabafc-open-copy span{display:block;margin-top:4px;color:#547061;font-size:14px;line-height:1.2;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.iabafc-open-copy p{margin:14px 0 0;color:#45554d;font-size:16px;line-height:1.55}
.iabafc-open-btn{position:relative;z-index:4;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:0 28px;border-radius:999px;background:linear-gradient(135deg,#1e743f,#3f8d49);color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:900;text-transform:uppercase;box-shadow:0 8px 20px rgba(22,76,45,.13)}

.iabafc-wave{position:relative;height:50px;margin-top:-1px;margin-bottom:-16px;background:#f7f3e9;z-index:2}
.iabafc-wave:after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:70px;background:#f7f3e9;border-radius:0 0 50% 50% / 0 0 100% 100%;transform:rotate(-.5deg);transform-origin:center}

.iabafc-cta{position:relative;min-height:300px;background-size:cover;background-position:center;overflow:hidden;border-radius:0}
.iabafc-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,50,31,.96) 0%,rgba(4,50,31,.84) 38%,rgba(4,50,31,.38) 68%,rgba(4,50,31,.10) 100%)}
.iabafc-cta-copy{position:relative;z-index:4;max-width:760px;padding:52px 56px 58px;color:#fff}
.iabafc-cta-copy h2{margin:0;color:#fff;font-size:32px;line-height:1.05;font-weight:900;text-transform:uppercase;letter-spacing:-.02em}
.iabafc-cta-copy h2 br + *{color:#f5821f}
.iabafc-cta-copy span{display:block;margin-top:10px;color:#fff;font-size:15px;line-height:1.25;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.iabafc-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.iabafc-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:0 26px;border-radius:999px;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:900;text-transform:uppercase;box-shadow:0 8px 18px rgba(0,0,0,.15)}
.iabafc-btn-orange{background:#f5821f}.iabafc-btn-green{background:#4c8c42}

.iabafc-floral,.iabafc-tree,.iabafc-left-jac{position:absolute;display:block;pointer-events:none;z-index:2;transform-origin:50% 100%;--x:0px;--y:0px;--flip-x:1;--flip-y:1;transform:translate3d(var(--x),var(--y),0) scaleX(var(--flip-x)) scaleY(var(--flip-y))}
.iabafc-floral{left:-18px;top:6px;width:120px;opacity:.85}
.iabafc-tree{right:-20px;bottom:-30px;width:220px;opacity:.92}
.iabafc-left-jac{left:-18px;bottom:-20px;width:170px;opacity:.96}
.iabafc-motion{animation:iabafcSway var(--dur,10s) ease-in-out infinite}
@keyframes iabafcSway{0%,100%{transform:translate3d(calc(var(--x) + 0px),calc(var(--y) + 0px),0) scaleX(var(--flip-x)) scaleY(var(--flip-y)) rotate(calc(var(--sway,1deg)*-.55))}25%{transform:translate3d(calc(var(--x) + 3px),calc(var(--y) - 2px),0) scaleX(var(--flip-x)) scaleY(var(--flip-y)) rotate(var(--sway,1deg))}50%{transform:translate3d(calc(var(--x) + 0px),calc(var(--y) - 4px),0) scaleX(var(--flip-x)) scaleY(var(--flip-y)) rotate(calc(var(--sway,1deg)*.25))}75%{transform:translate3d(calc(var(--x) - 3px),calc(var(--y) - 2px),0) scaleX(var(--flip-x)) scaleY(var(--flip-y)) rotate(calc(var(--sway,1deg)*-.9))}}
@media(prefers-reduced-motion:reduce){.iabafc-motion{animation:none!important}}

@media(max-width:980px){
  .iabafc-openbooks{grid-template-columns:90px 1fr;gap:18px}
  .iabafc-open-btn{grid-column:2;width:max-content}
  .iabafc-tree{opacity:.45}
}
@media(max-width:767px){
  .iabafc-openbooks{grid-template-columns:1fr;padding:26px 18px}
  .iabafc-open-icon{width:82px;height:82px}
  .iabafc-open-btn{grid-column:auto;width:max-content}
  .iabafc-open-copy h2{font-size:22px}
  .iabafc-open-copy p{font-size:14px}
  .iabafc-cta{min-height:330px}
  .iabafc-cta-copy{padding:42px 20px 48px}
  .iabafc-cta-copy h2{font-size:25px}
  .iabafc-cta-copy span{font-size:13px}
  .iabafc-actions{flex-direction:column;align-items:flex-start}
  .iabafc-tree{width:150px!important;right:-36px;bottom:-20px}
  .iabafc-left-jac{width:120px!important;left:-28px;bottom:-12px}
  .iabafc-floral{width:90px!important;left:-22px;top:0}
}


/* v1.0.1 — contain all decorative artwork and waves inside widget width */
.iabafc-wrap,
.iabafc-openbooks,
.iabafc-wave,
.iabafc-cta{
    max-width:100%;
    box-sizing:border-box;
}
.iabafc-wave{
    overflow:hidden;
}
.iabafc-wrap img,
.iabafc-wrap svg{
    max-width:100%;
}


/* v1.0.2 — hard fix for pseudo-element horizontal overflow */
.iabafc-wrap,
.iabafc-openbooks,
.iabafc-wave,
.iabafc-cta{
    position:relative;
    max-width:100%;
    overflow-x:clip;
}

/* Keep the wave shape entirely inside the widget bounds. */
.iabafc-wave::before,
.iabafc-wave::after,
.iabafc-openbooks::before,
.iabafc-openbooks::after,
.iabafc-cta::before,
.iabafc-cta::after{
    left:0 !important;
    right:0 !important;
    width:auto !important;
    max-width:100% !important;
    transform:none !important;
    box-sizing:border-box;
}

/* The decorative CTA ::after was the element pushing the document width. */
.iabafc-cta::after{
    content:none !important;
    display:none !important;
}

/* If the wave uses ::after for the organic edge, keep it but clamp it. */
.iabafc-wave::after{
    overflow:hidden !important;
}
