/* Product purchase controls: keep functional form/buttons, override theme sizing. */
body .fi-vp2-cart.cart{display:grid!important;grid-template-columns:88px minmax(0,1fr) minmax(0,1fr);align-items:end;gap:12px;width:100%;margin:24px 0 14px!important}
body .fi-vp2-cart .fi-vp2-qty{width:100%;min-width:0;margin:0!important}
body .fi-vp2-cart .fi-vp2-qty>label{display:block;margin:0 0 8px;font-size:13px;line-height:1.4;font-weight:650;color:#536b7b}
body .fi-vp2-cart .quantity{float:none!important;margin:0!important;width:100%!important}
body .fi-vp2-cart input.qty{box-sizing:border-box!important;width:100%!important;max-width:none!important;height:54px!important;min-height:54px;padding:0 8px!important;border:1px solid #ccdce6!important;border-radius:12px!important;background:#fff;color:#132431;font-size:16px!important;text-align:center}
body .fi-vp2-cart button.fi-vp2-add,body .fi-vp2-cart button.fi-vp2-buy-now{box-sizing:border-box!important;display:flex!important;align-items:center;justify-content:center;float:none!important;width:100%!important;min-width:0!important;max-width:none!important;height:54px!important;min-height:54px!important;max-height:54px!important;margin:0!important;padding:0 12px!important;border-radius:12px!important;white-space:nowrap!important;word-break:keep-all!important;writing-mode:horizontal-tb!important;font-size:15px!important;font-weight:750;line-height:1.2!important;letter-spacing:0!important;transition:background .15s,box-shadow .15s}
body .fi-vp2-cart button.fi-vp2-add{background:#fff!important;border:1px solid #bdd3e1!important;color:#173e55!important;box-shadow:none!important}
body .fi-vp2-cart button.fi-vp2-buy-now{background:#087fa5!important;border:1px solid #087fa5!important;color:white!important;box-shadow:0 5px 14px #087fa51a!important}
body .fi-vp2-cart button.fi-vp2-add:hover{background:#eef8fc!important}
body .fi-vp2-cart button.fi-vp2-buy-now:hover{background:#066b8c!important}
body .fi-vp2-cart button:focus-visible,body .fi-vp2-cart input:focus-visible{outline:3px solid #61b8db!important;outline-offset:3px}
body .fi-vp2-trust{display:flex;flex-wrap:wrap;gap:8px}
body .fi-vp2-compat-cta{box-sizing:border-box;display:block;text-align:center;padding:13px 14px;border-radius:12px;line-height:1.6}
@media(max-width:640px){body .fi-vp2-cart.cart{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:20px!important}body .fi-vp2-cart .fi-vp2-qty{grid-column:1/-1;display:flex;align-items:center;gap:16px}body .fi-vp2-cart .fi-vp2-qty>label{margin:0}body .fi-vp2-cart .fi-vp2-qty .quantity{width:96px!important}body .fi-vp2-cart input.qty{height:46px!important;min-height:46px}body .fi-vp2-cart button.fi-vp2-add,body .fi-vp2-cart button.fi-vp2-buy-now{height:52px!important;min-height:52px!important;max-height:52px!important;font-size:15px!important;padding:0 8px!important}}
@media(max-width:340px){body .fi-vp2-cart.cart{grid-template-columns:minmax(0,1fr)}body .fi-vp2-cart .fi-vp2-qty{grid-column:auto}}

/* FIAPPLY mobile navigation: flat, aligned and safe-area aware. */
@media(max-width:640px){
 body:has(.fiapply-mobile-nav){padding-bottom:calc(70px + env(safe-area-inset-bottom))!important}
 body .fiapply-mobile-nav{box-sizing:border-box;height:calc(64px + env(safe-area-inset-bottom));padding:6px 12px calc(6px + env(safe-area-inset-bottom));gap:4px;background:#fffffff5;border-top:1px solid #e3ebef;box-shadow:0 -4px 18px #102b3e06}
 body .fiapply-mobile-nav a,body .fiapply-mobile-nav button{min-height:48px;gap:5px;font-size:11px;font-weight:600;line-height:1.2;border-radius:10px;color:#5d7180}
 body .fiapply-mobile-nav svg{width:22px;height:22px}
 body .fiapply-mobile-nav .fiapply-mobile-support{color:#087fa5}
 body .fiapply-mobile-nav .fiapply-mobile-support .icon-wrap{width:22px;height:22px;margin:0;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;display:block}
 body .fiapply-mobile-nav .fiapply-mobile-support span:last-child{margin:0}
 body .fiapply-cart-badge{top:0;left:calc(50% + 6px);font-size:9px;min-width:17px;height:17px}
 body .fiapply-mobile-nav :focus-visible{outline:2px solid #087fa5;outline-offset:-2px}
 body .fiapply-mobile-nav a:hover,body .fiapply-mobile-nav button:hover{background:#edf7fb;color:#087fa5}
 body .fiapply-chat-panel{inset:8px 8px calc(72px + env(safe-area-inset-bottom));max-height:calc(100dvh - 88px - env(safe-area-inset-bottom))}
}
