/*
 * Banking360 Responsive / Screen Mode Assurance R2
 * Scoped to the Banking360 marketing page; preserves the approved banking hero.
 * Honors Numerish's html[data-theme=light|dark] control, including Auto resolution.
 */
.bank360-product{
  --bk-accent:#bc0050;
  --bk-accent-soft:#fff0f6;
  --bk-accent-border:#e7a0bc;
  color-scheme:light;
}
html[data-theme="dark"] .bank360-product{
  --bk-ink:#f3f7fe;
  --bk-sub:#c5d3e4;
  --bk-bg:#0a1422;
  --bk-soft:#111f30;
  --bk-card:#182a40;
  --bk-line:#40546c;
  --bk-accent:#ff90c1;
  --bk-accent-soft:#35243b;
  --bk-accent-border:#a74b78;
  --bk-shadow:0 12px 38px rgba(0,0,0,.24);
  color-scheme:dark;
}
.bank360-product :is(h1,h2,h3,p,li,article,section,details,summary,label){
  overflow-wrap:break-word;
}
.bank360-product :is(button,input,summary,a):focus-visible{
  outline:3px solid var(--bk-accent)!important;
  outline-offset:3px;
}
.bank360-product :is(.bk-cap-card,.bk-plan-grid article,.bk-arch-connections article,
  .bk-governance-grid article,.bk-faq details,.bk-roi-form,.bk-roi-results,.bk-journey-app){
  min-width:0;
}
.bank360-product :is(.bk-card-index,.bk-journey-label,.bk-panel-kicker,
  .bk-plan-grid article span,.bk-arch-connections article span,
  .bk-owner-accent,.bk-range-value,.bk-text-link,.bk-islamic-notice strong,
  .bk-eyebrow-dark){
  color:var(--bk-accent);
}
.bank360-product .bk-nav-inner a[aria-current=location]{
  color:var(--bk-accent);
  background:var(--bk-accent-soft);
}
.bank360-product .bk-nav-inner .bk-nav-cta{
  color:#fff;
  background:#d40059;
  border:1px solid #d40059;
}
.bank360-product .bk-nav-inner .bk-nav-cta:hover{
  color:#fff;
  background:#a80046;
}
.bank360-product .bk-journey-controls button[aria-selected=true]{
  color:var(--bk-accent);
  background:var(--bk-accent-soft);
  border-color:var(--bk-accent-border);
}
.bank360-product .bk-journey-controls button{
  font-weight:750;
  color:var(--bk-ink);
}
.bank360-product .bk-roi-fields label{
  color:var(--bk-ink);
}
.bank360-product .bk-roi-fields :is(input[type="number"],input[type="text"]){
  background:var(--bk-bg);
  color:var(--bk-ink);
  border:1px solid var(--bk-line);
  border-radius:9px;
  min-height:46px;
  max-width:100%;
  min-width:0;
  accent-color:#ff0066;
}
.bank360-product .bk-roi-fields input::placeholder{
  color:var(--bk-sub);
}
.bank360-product .bk-roi-fields input[type="range"]{
  accent-color:#e80062;
  border:0;
}
.bank360-product .bk-faq summary{
  display:list-item;
  cursor:pointer;
  padding-inline-end:3px;
  line-height:1.58;
}
.bank360-product .bk-faq details{
  transition:border-color .16s ease,background-color .16s ease;
}
.bank360-product .bk-faq details[open]{
  border-color:var(--bk-accent-border);
  box-shadow:0 0 0 1px var(--bk-accent-border);
}
.bank360-product .bk-tag-row span{
  color:var(--bk-sub);
  background:var(--bk-soft);
  border-color:var(--bk-line);
}
.bank360-product .bk-roi-actions .bk-text-link{
  color:#ffd0e5;
}
html[data-theme="dark"] .bank360-product .bk-governance-symbol{
  background:#34243c;
  color:#ffc0dc;
}
html[data-theme="dark"] .bank360-product .bk-card-icon{
  background:#34243c;
  color:#ffc0dc;
}
html[data-theme="dark"] .bank360-product .bk-timeline li::before{
  color:#ffc0dc;
  background:#35243c;
  border-color:#9a5178;
}
html[data-theme="dark"] .bank360-product .bk-islamic-notice{
  background:#21283e;
  border-color:#ff6ca7;
}
html[data-theme="dark"] .bank360-product .bk-faq details{
  background:var(--bk-card);
}
html[data-theme="dark"] .bank360-product .bk-btn-primary{
  background:#d8005b;
  color:#fff;
  border-color:#d8005b;
}
html[data-theme="dark"] .bank360-product .bk-btn-primary:hover{
  background:#ad0049;
}
html[data-theme="dark"] .bank360-product .bk-journey-aside{
  background:linear-gradient(150deg,#0b1a2e,#18344e);
  border-top:1px solid #334b63;
}
html[data-theme="dark"] .bank360-product .bk-journey-aside p{
  color:#d2e0ee;
}
html[data-theme="dark"] .bank360-product .bk-roi-form,
html[data-theme="dark"] .bank360-product .bk-roi-results{
  border-color:var(--bk-line);
}
html[data-theme="dark"] .bank360-product .bk-owner-note{
  background:var(--bk-card);
}
html[data-theme="dark"] .bank360-product .bk-pricing-boundary{
  background:var(--bk-soft);
}
html[data-theme="dark"] .bank360-product .bk-faq details p{
  color:var(--bk-sub);
}

/* Tablet: all section links visible; never conceal banking workflows off-screen. */
@media(max-width:1100px){
 .bank360-product .bk-nav-inner{
   display:grid!important;
   grid-template-columns:repeat(4,minmax(0,1fr));
   gap:7px;
   width:min(100% - 36px,860px);
   padding:9px 0;
   overflow:visible!important;
   white-space:normal!important;
 }
 .bank360-product .bk-nav-inner a{
   min-width:0;
   display:flex;
   justify-content:center;
   text-align:center;
   white-space:normal;
   line-height:1.28;
   min-height:43px;
   padding:8px 6px;
   border:1px solid var(--bk-line);
   background:var(--bk-card);
   border-radius:9px;
   font-size:clamp(11px,1.15vw,12px);
 }
 .bank360-product .bk-nav-inner .bk-nav-cta{
   margin-left:0;
   color:#fff;
   background:#d40059;
   border-color:#d40059;
 }
 .bank360-product .bk-journey-controls{
   display:grid!important;
   grid-template-columns:repeat(4,minmax(0,1fr));
   gap:6px;
   padding:11px;
   white-space:normal;
   overflow:visible!important;
 }
 .bank360-product .bk-journey-controls button{
   white-space:normal;
   min-width:0;
   min-height:45px;
   line-height:1.35;
   text-align:center;
   padding:8px 6px;
 }
}
/* Compact desktop/tablet widths retain all sections and maintain comfortable gutters. */
@media(max-width:960px){
 .bank360-product .bk-sticky-nav{
   position:static!important;
 }
 .bank360-product .bk-faq{
   grid-template-columns:minmax(0,1fr);
   gap:10px;
 }
 .bank360-product .bk-faq details{
   padding:18px 20px;
 }
 .bank360-product .bk-section-intro{
   grid-template-columns:minmax(0,1fr);
 }
 .bank360-product .bk-journey-content{
   grid-template-columns:minmax(0,1fr);
 }
 .bank360-product .bk-journey-aside{
   border-radius:0 0 15px 15px;
 }
 .bank360-product .bk-proof-grid{
   grid-template-columns:repeat(2,minmax(0,1fr));
 }
}
/* Phone: balanced 3-column section tabs instead of an invisible side-scroll. */
@media(max-width:700px){
 .bank360-product .bk-nav-inner{
   grid-template-columns:repeat(3,minmax(0,1fr));
   width:calc(100% - 24px);
   gap:6px;
   padding:9px 0;
 }
 .bank360-product .bk-nav-inner a{
   font-size:11px;
   min-height:44px;
   padding:8px 5px;
   overflow-wrap:anywhere;
   font-weight:750;
 }
 .bank360-product .bk-nav-inner .bk-nav-cta{
   grid-column:span 2;
 }
 .bank360-product .bk-journey-controls{
   grid-template-columns:repeat(2,minmax(0,1fr));
   gap:7px;
   padding:10px;
 }
 .bank360-product .bk-journey-controls button{
   min-height:47px;
   padding:10px 8px;
   font-size:12px;
 }
 .bank360-product .bk-journey-main{
   padding:18px 16px;
 }
 .bank360-product .bk-journey-aside{
   padding:21px 18px;
 }
 .bank360-product .bk-journey-head h3{
   font-size:clamp(20px,5.5vw,25px);
   line-height:1.22;
 }
 .bank360-product .bk-roi-results>strong{
   font-size:clamp(32px,8.5vw,42px);
   overflow-wrap:anywhere;
 }
 .bank360-product .bk-roi-fields label{
   font-size:12px;
 }
 .bank360-product .bk-roi-fields input[type=number]{
   font-size:16px;
 }
 .bank360-product .bk-faq details summary{
   font-size:14px;
 }
 .bank360-product .bk-faq details p{
   font-size:13px;
 }
 .bank360-product .bk-plan-grid article{
   min-height:0;
 }
 .bank360-product .bk-cap-card p,
 .bank360-product .bk-governance-grid p,
 .bank360-product .bk-plan-grid p,
 .bank360-product .bk-islamic-copy>p{
   font-size:13px;
 }
 .bank360-product .bk-proof-grid div{
   min-width:0;
 }
 .bank360-product .bk-outcomes div{
   min-width:0;
 }
 .bank360-product .bk-pricing-boundary{
   min-width:0;
 }
}
/* Very narrow screens; protect card edges, the logo mockup and search controls. */
@media(max-width:365px){
 .bank360-product .bk-wrap{
   width:calc(100% - 24px)!important;
 }
 .bank360-product .bk-nav-inner{
   width:calc(100% - 18px);
 }
 .bank360-product .bk-nav-inner a{
   font-size:10.7px;
   min-height:45px;
   padding:7px 3px;
 }
 .bank360-product .bk-journey-controls button{
   font-size:11px;
 }
 .bank360-product .bk-journey-main{
   padding:17px 12px;
 }
 .bank360-product .bk-journey-aside{
   padding:17px 13px;
 }
 .bank360-product .bk-faq details{
   padding:15px;
 }
 .bank360-product .bk-roi-form,
 .bank360-product .bk-roi-results{
   padding:17px;
 }
 .bank360-product .bk-hero-approved .bk-art-mobile-actions .bk-btn{
   min-width:0;
   padding:10px 9px;
   font-size:11.5px;
 }
}
@media(prefers-reduced-motion:reduce){
 .bank360-product .bk-faq details{transition:none!important}
}

/* Clear visual affordances for every banking workflow tab. */
.bank360-product .bk-journey-controls button{
  border:1px solid var(--bk-line);
  background:var(--bk-soft);
  border-radius:9px;
}
.bank360-product .bk-journey-controls button:hover{
  background:var(--bk-accent-soft);
  border-color:var(--bk-accent-border);
}
@media(max-width:1100px){
 .bank360-product .bk-sticky-nav{
   position:static!important;
 }
}

/* Banking360 mobile: compact the shared Guide360 edge tab so it cannot cover navigation. */
@media(max-width:700px){
 body[data-page-key="product-banking360"] .ns-guide360-launch{
  top:auto!important;
  bottom:77px!important;
  right:10px!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  transform:none!important;
  writing-mode:horizontal-tb!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  font-size:0!important;
  border-radius:14px!important;
  overflow:visible!important;
 }
 body[data-page-key="product-banking360"] .ns-guide360-launch>span{
  font-size:20px!important;
  line-height:1!important;
  writing-mode:horizontal-tb!important;
 }
}
