/* CAA V41 — final visual polish. Loaded last. */
html,body{max-width:100%!important;overflow-x:hidden!important}

/* ---------- LOGO: transparent presentation, no frame/stroke ---------- */
.caa-v40-logo-only,
.caa-v40-logo-only .caa-v37-brand__mark,
.caa-v40-logo-only .caa-v20-brand__mark,
.caa-v37-footer__logo,
.caa-v20-footer__mark{
  background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;
}
.caa-v40-logo-only .caa-v37-brand__mark,
.caa-v40-logo-only .caa-v20-brand__mark{overflow:visible!important}
.caa-v37-brand__image,.caa-v20-brand__image,
.caa-v37-footer__logo img,.caa-v20-footer__mark img{
  display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;
}
/* The supplied brand artwork is circular but its source PNG contains an opaque white canvas.
   The bundled V41 derivative removes that canvas; the CSS below also protects against an old
   attachment still being cached by clipping only the square corners, never adding a frame. */
.caa-v40-logo-only .caa-v37-brand__image,
.caa-v40-logo-only .caa-v20-brand__image,
.caa-v37-footer__logo img,.caa-v20-footer__mark img{clip-path:circle(49% at 50% 50%)}
.caa-v37-footer__logo,.caa-v20-footer__mark{width:76px!important;height:76px!important;overflow:visible!important;display:grid!important;place-items:center!important}
.caa-v37-footer__logo-image,.caa-v20-footer__logo-image{width:100%!important;height:100%!important;object-fit:contain!important}

/* ---------- HOMEPAGE CTA: same premium button language as inner pages ---------- */
.v37-home .v37-btn,
.v37-home .v37-actions .v37-btn,
.v37-home .v37-final a,
.v37-home .v37-journey-card a,
.v37-home .v37-link,
.caa-v37-header .caa-v37-plan,
.caa-v37-footer .caa-v37-footer-cta__button{
  text-decoration:none!important;
}
.v37-home .v37-btn{border:1px solid transparent;min-height:56px;padding:0 24px;border-radius:0;letter-spacing:.13em;font-weight:800;transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}
.v37-home .v37-btn--gold{background:#d9b66a!important;color:#10150f!important;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.v37-home .v37-btn--gold:hover{background:#e7ca8a!important;transform:translateY(-2px);box-shadow:0 18px 38px rgba(0,0,0,.2)}
.v37-home .v37-btn--glass{background:rgba(7,20,14,.24)!important;border-color:rgba(255,255,255,.6)!important;color:#fff!important}
.v37-home .v37-btn--glass:hover{background:rgba(255,255,255,.12)!important;border-color:#fff!important}
.caa-v37-header .caa-v37-plan{background:#d9b66a!important;color:#111!important;min-height:48px;padding:0 24px;border:0;box-shadow:0 10px 25px rgba(0,0,0,.12);font-size:9px!important}
.caa-v37-header .caa-v37-plan:hover{background:#e7ca8a!important;transform:translateY(-1px)}
.caa-v37-footer .caa-v37-footer-cta__button{background:#d9b66a!important;color:#111!important;border:0!important;box-shadow:0 12px 30px rgba(0,0,0,.18)}

/* ---------- MEGA MENUS: compact feature card so action never disappears ---------- */
.caa-v20-menu .mega-menu,
.caa-v37-primary .mega-menu{max-height:min(520px,calc(100vh - 112px))!important;overflow:hidden!important}
.caa-v20-menu .mega-menu__top,.caa-v37-primary .mega-menu__top{padding:22px 26px 17px!important}
.caa-v20-menu .mega-menu__body,.caa-v37-primary .mega-menu__body{max-height:430px!important;overflow:auto!important;align-items:stretch!important}
.caa-v20-menu .mega-menu__feature,.caa-v37-primary .mega-menu__feature{height:316px!important;min-height:316px!important;margin:14px!important;display:grid!important;grid-template-columns:1fr 1.05fr!important;grid-template-rows:1fr!important;align-self:start!important}
.caa-v20-menu .mega-menu__feature-media,.caa-v37-primary .mega-menu__feature-media{height:100%!important;min-height:0!important}
.caa-v20-menu .mega-menu__feature-copy,.caa-v37-primary .mega-menu__feature-copy{height:100%!important;min-height:0!important;padding:18px!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;overflow:hidden!important}
.caa-v20-menu .mega-menu__feature-copy h3,.caa-v37-primary .mega-menu__feature-copy h3{font-size:clamp(20px,1.9vw,29px)!important;line-height:.96!important;letter-spacing:-.015em!important;margin:8px 0 9px!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:4!important;overflow:hidden!important;overflow-wrap:normal!important;word-break:normal!important}
.caa-v20-menu .mega-menu__feature-copy p,.caa-v37-primary .mega-menu__feature-copy p{font-size:10px!important;line-height:1.45!important;margin:0 0 12px!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:4!important;overflow:hidden!important}
.caa-v20-menu .mega-menu__feature-copy .btn,.caa-v37-primary .mega-menu__feature-copy .btn{margin-top:auto!important;flex:0 0 auto!important;min-height:40px!important;width:max-content!important;padding:0 14px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;background:#d9b66a!important;color:#111!important;font-size:8px!important;line-height:1!important;white-space:nowrap!important}
.caa-v20-menu .mega-menu__feature-copy .btn:hover,.caa-v37-primary .mega-menu__feature-copy .btn:hover{background:#e7ca8a!important}
.caa-v20-menu .mega-menu__column,.caa-v37-primary .mega-menu__column{padding:22px 24px 24px!important}
.caa-v20-menu .mega-menu__column li a,.caa-v37-primary .mega-menu__column li a{padding:9px 0!important;font-size:12px!important;line-height:1.25!important}
.caa-v20-menu .mega-menu__column h3,.caa-v37-primary .mega-menu__column h3{font-size:9px!important;margin-bottom:11px!important}
.caa-v20-menu .mega-menu__feature--wide,.caa-v37-primary .mega-menu__feature--wide{grid-column:3 / 5!important}

/* Two-column families: use the fourth-column feature as one wide editorial card. */
@media(min-width:1051px){
  .caa-v20-menu .mega-menu__body,.caa-v37-primary .mega-menu__body{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(330px,1.5fr)!important}
}

/* ---------- HOMEPAGE FOOTER: exact centered width, no accidental underlines ---------- */
.caa-v37-footer{width:100%!important;max-width:100%!important;overflow:hidden!important}
.caa-v37-footer-cta__inner,
.caa-v37-footer__main,
.caa-v37-footer__bottom>.caa-v37-container{width:min(1280px,calc(100% - 72px))!important;max-width:1280px!important;margin-inline:auto!important;padding-left:0!important;padding-right:0!important}
.caa-v37-footer a{text-decoration:none!important;border-bottom:0!important}
.caa-v37-footer a:hover,.caa-v37-footer a:focus{text-decoration:none!important;border-bottom:0!important}

/* ---------- INTERNAL PAGES: no document-width leaks ---------- */
body.caa-v40-inner-body #page,
body.caa-v40-inner-body #content,
body.caa-v40-inner-body .site-content,
body.caa-v40-inner-body main,
body.caa-v40-inner-body .container,
body.caa-v40-inner-body .caa-v20-header,
body.caa-v40-inner-body .caa-v20-footer{max-width:100%!important;min-width:0!important}
body.caa-v40-inner-body img,body.caa-v40-inner-body video,body.caa-v40-inner-body iframe{max-width:100%!important}

@media(max-width:1050px){
  .caa-v20-menu .mega-menu,.caa-v37-primary .mega-menu{max-height:calc(100svh - 92px)!important;overflow:auto!important}
  .caa-v20-menu .mega-menu__body,.caa-v37-primary .mega-menu__body{max-height:none!important}
  .caa-v20-menu .mega-menu__feature,.caa-v37-primary .mega-menu__feature{height:auto!important;min-height:0!important;grid-template-columns:1fr!important;grid-template-rows:150px auto!important}
  .caa-v20-menu .mega-menu__feature-media,.caa-v37-primary .mega-menu__feature-media{height:150px!important}
  .caa-v20-menu .mega-menu__feature-copy,.caa-v37-primary .mega-menu__feature-copy{height:auto!important}
  .caa-v20-menu .mega-menu__feature-copy h3,.caa-v37-primary .mega-menu__feature-copy h3{font-size:24px!important;-webkit-line-clamp:3!important}
}
@media(max-width:600px){
  .caa-v37-footer-cta__inner,.caa-v37-footer__main,.caa-v37-footer__bottom>.caa-v37-container{width:calc(100% - 34px)!important}
  .caa-v20-menu .mega-menu__feature,.caa-v37-primary .mega-menu__feature{grid-template-rows:135px auto!important}
  .caa-v20-menu .mega-menu__feature-media,.caa-v37-primary .mega-menu__feature-media{height:135px!important}
}
