/*
 * Santander Empresas — login page stylesheet
 * Hand-maintained, 1:1 with production (offline). No Angular / _ngcontent.
 * Rebuild base rules: php tools/build-login-css-hand.php
 * Edit this file directly for visual tweaks.
 */
/* --- Fonts & icons --- */

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroText-Lt-G6DRN64S.woff") format("woff"),url("../media/SantanderMicroText-Lt-QRPNNDWF.woff2") format("woff2");font-style:normal;font-weight:300}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroText-LtIt-ERN7QXO5.woff") format("woff"),url("../media/SantanderMicroText-LtIt-JND3R7H3.woff2") format("woff2");font-style:italic;font-weight:300}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroText-ORGJDJAP.woff") format("woff"),url("../media/SantanderMicroText-5COQVOE2.woff2") format("woff2");font-style:normal;font-weight:400}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroText-It-BVHKPKSF.woff") format("woff"),url("../media/SantanderMicroText-It-P4NXZPP4.woff2") format("woff2");font-style:italic;font-weight:400}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroTextSemiBold-3O5QRFFD.woff") format("woff"),url("../media/SantanderMicroTextSemiBold-JZRMGARC.woff2") format("woff2");font-style:normal;font-weight:600}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroTextSmBd-It-RQLQ72S2.woff") format("woff"),url("../media/SantanderMicroTextSmBd-It-V5L2Q54I.woff2") format("woff2");font-style:italic;font-weight:600}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroText-Bd-J7UZLHD2.woff") format("woff"),url("../media/SantanderMicroText-Bd-TPYDYIYD.woff2") format("woff2");font-style:normal;font-weight:700}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroText-BdIt-EVPJUOXC.woff") format("woff"),url("../media/SantanderMicroText-BdIt-P2HAW46Z.woff2") format("woff2");font-style:italic;font-weight:700}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroTextExtraBold-RT5ELS67.woff") format("woff"),url("../media/SantanderMicroTextExtraBold-6NGCMLGF.woff2") format("woff2");font-style:normal;font-weight:800}

@font-face{font-family:Santander Micro Text;src:url("../media/SantanderMicroTextXBd-It-THQSVKZE.woff") format("woff"),url("../media/SantanderMicroTextXBd-It-3SGJGQTC.woff2") format("woff2");font-style:italic;font-weight:800}

@font-face{font-family:SantanderIcons;src:url("../media/SantanderIcons-IRYEZ2VV.eot");src:url("../media/SantanderIcons-IRYEZ2VV.eot?#iefix") format("embedded-opentype"),url("../media/SantanderIcons-GSLKVDER.ttf") format("truetype"),url("../media/SantanderIcons-5KYJ6MWI.svg#SantanderIcons") format("svg"),url("../media/SantanderIcons-E3HKVV63.woff") format("woff"),url("../media/SantanderIcons-4ARWQHOY.woff2") format("woff2")}

@font-face{font-family:Asterisk;src:url("../media/secure-asterisk-RPVSZN7R.eot");src:url("../media/secure-asterisk-RPVSZN7R.eot?#iefix") format("embedded-opentype"),url("../media/secure-asterisk-ACV373NQ.ttf") format("truetype"),url("../media/secure-asterisk-WVBDWIHQ.svg#SantanderIcons") format("svg"),url("../media/secure-asterisk-HT4PIRL3.woff") format("woff"),url("../media/secure-asterisk-6USFCJZE.woff2") format("woff2")}

@font-face{font-family:Santander Headline;src:url("../media/SantanderHeadlineLight-P2KNOAJM.woff") format("woff"),url("../media/SantanderHeadlineLight-4MCWPTOA.woff2") format("woff2");font-style:normal;font-weight:300}

@font-face{font-family:Santander Headline;src:url("../media/SantanderHeadlineLight-It-YDBJNEIU.woff") format("woff"),url("../media/SantanderHeadlineLight-It-ZXI6MW3O.woff2") format("woff2");font-style:italic;font-weight:300}

@font-face{font-family:Santander Headline;src:url("../media/SantanderHeadline-Regular-OVPKCX2A.woff") format("woff"),url("../media/SantanderHeadline-Regular-BJMJT4GU.woff2") format("woff2");font-style:normal;font-weight:400}

@font-face{font-family:Santander Headline;src:url("../media/SantanderHeadline-It-GRRT6J34.woff") format("woff"),url("../media/SantanderHeadline-It-VFCGDIYG.woff2") format("woff2");font-style:italic;font-weight:400}

@font-face{font-family:Santander Headline;src:url("../media/SantanderHeadline-Bold-3QYP6HRI.woff") format("woff"),url("../media/SantanderHeadline-Bold-THW6OXKV.woff2") format("woff2");font-style:normal;font-weight:700}

@font-face{font-family:Santander Headline;src:url("../media/SantanderHeadline-BoldIt-52Q2CAGT.woff") format("woff"),url("../media/SantanderHeadline-BoldIt-HE2QNE4Y.woff2") format("woff2");font-style:italic;font-weight:700}

@font-face{font-family:SantanderIcons;src:url("../media/SantanderIcons-IRYEZ2VV.eot");src:url("../media/SantanderIcons-IRYEZ2VV.eot?#iefix") format("embedded-opentype"),url("../media/SantanderIcons-GSLKVDER.ttf") format("truetype"),url("../media/SantanderIcons-5KYJ6MWI.svg#SantanderIcons") format("svg"),url("../media/SantanderIcons-E3HKVV63.woff") format("woff"),url("../media/SantanderIcons-4ARWQHOY.woff2") format("woff2")}
.icon{font-family:SantanderIcons;font-style:normal}
.icon-close-1px:before{content:"\bd020"}
.icon-arrow-left:before{content:"\be170"}
.icon-visibility-on:before{content:"\bd460"}
.icon-visibility-off:before{content:"\bd470"}
.icon-collapse-keyboard:before{content:"\bd810"}
.icon-legal-document:before{content:"\bc040"}
.icon-phone-support:before{content:"\fa180"}
.icon-location:before{content:"\ea150"}

i.icon {
  font-family: SantanderIcons, sans-serif;
  font-style: normal;
  font-weight: normal;
  display: inline-block;
}

/* --- Production login layout (deduped) --- */

.icon-collapse-keyboard:before{content:"\bd810"}

.inicio-sesion__container{font-family:Santander Micro Text;font-weight:400;width:100%;height:100vh;background-size:cover;background-position:50%;position:relative;box-sizing:border-box}

@media(max-width:768px){.inicio-sesion__container{padding:0 10px}}

.inicio-sesion__img{background-color:#fff;height:112px;width:288px}

@media(max-width:768px){.inicio-sesion__img{background-color:transparent;width:100%;height:64px}}

.inicio-sesion__img img{max-width:180px;height:auto;width:100%}

@media(max-width:768px){.inicio-sesion__img img{max-width:160px}}

.inicio-sesion__img a{width:100%;height:100%;display:flex;align-items:center;justify-content:center}

.banner-app__container{display:flex;align-items:center;padding:7px 11px 8px 16px;background-color:#deedf2;border-bottom:1px solid #9bc3d3;width:100%;position:absolute;top:0;z-index:1;animation:_ngcontent-ng-c2410980765_bar 1s ease}

@media(min-width:769px){.banner-app__container{display:none}}

.banner-app__container a{display:flex;gap:12px;align-items:center;text-decoration:none}

.banner-app__img img{width:50px;height:auto}

.banner-app__text p{font-size:13px;line-height:17px;color:#444}

.banner-app__text p.title{font-size:15px;line-height:22px;color:#000}

.banner-app__icon i{font-size:25px}

.login__container{position:absolute;top:54px;right:174px;width:408px;display:flex;flex-direction:column;gap:6px;box-sizing:border-box}

@media(max-width:768px){.login__container{width:100%;position:static}}

.login__top{background-color:#fff;width:100%;padding:16px;box-sizing:border-box}

body.site-flow-page .login__top--flow{padding-top:20px}

.login__top a{text-decoration:none!important}

.login__top .nav__container{display:flex;justify-content:space-between}

.login__top .nav__main{display:flex;gap:24px}

.login__top .nav__link{font-size:14px;line-height:20px;cursor:pointer;padding-bottom:4px;color:#727272;display:flex;gap:8px}

.login__top .nav__link:hover{border-bottom:1px solid #137e84;color:#222}

.login__top .nav__link--active{color:#222;border-bottom:1px solid #137e84}

.login__top .nav__container--display-only .nav__link{cursor:default;pointer-events:none}

.login__top .nav__container--display-only .nav__link:hover{border-bottom:none;color:inherit}

.login__top .nav__container--display-only .nav__link--active:hover{border-bottom:1px solid #137e84;color:#222}

.login__top .nav__link--back{color:#222}

.login__top .nav__link--back .icon{-webkit-text-stroke:1px}

.login__top .nav__link--back:hover{font-weight:700}

.input-password__container{display:flex;height:100%;width:100%;min-height:48px;max-height:48px;border:1px solid #dbe0e3;border-bottom:1px solid #8cbabd;background-color:#f4f6f7;box-sizing:border-box;padding:0 8px 8px 12px;font-size:14px;color:#222;font-family:Santander Micro Text;line-height:24px;flex-wrap:nowrap;gap:12px;align-items:flex-end;position:relative;justify-content:space-between}

.input-password__container label{position:absolute;font-size:12px;line-height:16px;color:#727272;top:4px}

.input-password__inputs{display:flex;gap:12px}

.input-password__inputs input{max-width:20px;border:none;border-bottom:1px solid #cedee7;background-color:transparent;outline:none;text-align:center}

.input-password__icons{display:flex;align-items:center;gap:12px}

.input-password__icons .icon-close__container{display:flex;align-items:center;background-color:#6f7779;width:15px;height:15px;border-radius:50%;justify-content:center}

.input-password__icons .icon-close__container .icon{font-size:11px;color:#fff}

.input-password__icons .icon{color:#257fa4;font-size:24px;cursor:pointer}

.input-password__icons .icon:hover{opacity:.6}

/*# sourceMappingURL=inicio-sesion.component-IQXHPXPF.css.map */@charset "UTF-8";html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline}

.form__container{margin-top:12px;display:flex;flex-direction:column;gap:8px}

.form__user{display:flex;flex-direction:column;gap:8px;margin:12px 0}

.form__user > p{font-size:24px}

.form__user .back-link{font-size:14px;line-height:20px;cursor:pointer;padding-bottom:4px;display:flex;gap:8px;border:none;background-color:transparent;color:#222;box-sizing:border-box;width:fit-content}

.form__user .back-link .icon{-webkit-text-stroke:1px}

.form__user .back-link:hover{border-bottom:1px solid #137e84;color:#222;margin-bottom:-1px}

.form__error-message{background-color:#fee5e5;min-height:36px;font-size:14px;display:flex;justify-content:space-between;padding:12px;border-radius:8px;gap:12px}

.form__error-message .inner-content{display:flex;gap:8px;flex-direction:column}

.form__error-message .text{display:flex;gap:8px;flex-direction:column;color:#222;line-height:20px}

.form__error-message a{font-weight:700;cursor:pointer}

.form__error-message .icon{font-size:20px;color:#900}

.form__error-message .icon.icon-close-1px{color:#222;cursor:pointer}

.form__error-description{line-height:20px}

.form__error-link{color:#127277;display:flex;align-items:center;gap:4px}

.form__error-link .icon{color:#127277}

.form__error-link:hover, .form__error-link:hover .icon{color:#0d5155}

.form__title{font-family:Santander Headline;font-weight:400;color:#222;font-size:22px;line-height:36px}

.form__submit{display:flex;justify-content:space-between}

@media(max-width:768px){.form__submit{flex-direction:column;gap:16px}}

.form__checkbox{display:flex;align-items:flex-start}

.form__checkbox input{position:absolute;display:none}

.form__checkbox label{display:flex;gap:12px;font-size:14px;color:#222;align-items:center}

.form__checkbox label:before{content:"";width:20px;height:20px;border:1px solid #dbe0e3;border-radius:2px;box-sizing:border-box;display:flex;justify-content:center;align-items:center;cursor:pointer;padding-bottom:4px}

.form__checkbox label:hover:before{border-color:#222}

.form__checkbox input:checked + label:before{content:"";background-image:url("../media/check-JMF4KQ65.svg");background-repeat:no-repeat;background-size:10px;background-position:center;border-color:#137e84;border-width:2px;font-family:SantanderIcons;color:#137e84}

.form__button{display:flex;align-items:flex-end;flex-direction:column;gap:8px}

@media(max-width:768px){.form__button{width:100%}}

.form__button button{font-family:Santander Micro Text;font-weight:700;background-color:#ec0000;border:none;min-height:48px;width:192px;color:#fff;font-size:16px;cursor:pointer}

@media(max-width:768px){.form__button button{width:100%}}

.form__button button:hover{background-color:#c00}

.form__button--rounded button{border-radius:32px;width:100%}

.form__button--disabled{cursor:not-allowed;opacity:.5;-webkit-filter:grayscale(.5);filter:grayscale(.5)}

.form__button--disabled button{cursor:not-allowed}

.form__button p{font-size:13px;color:#222;padding-bottom:2px;cursor:pointer;line-height:20px;box-sizing:border-box}

.form__button p:hover{text-decoration:underline}

.form__input{margin-bottom:8px;width:100%;min-height:48px}

.form__input input{height:100%;width:100%;min-height:48px;border:1px solid #dbe0e3;border-bottom:1px solid #8cbabd;background-color:#f4f6f7;box-sizing:border-box;padding:20px 12px 6px;font-size:14px;color:#222;font-family:Santander Micro Text;line-height:24px}

.form__input input:focus{outline:none;border-bottom-width:2px;box-sizing:border-box}

.form__input input:focus + .placeholder{top:2px;font-size:12px;line-height:16px}

.form__input--user{position:relative}

.form__input--user .placeholder{position:absolute;top:12px;left:12px;font-size:16px;line-height:24px;color:#727272;transition:.3s;pointer-events:none}

@media(max-width:390px){.form__input--user .placeholder{font-size:14px}}

.form__input--user .placeholder__filled{top:2px;font-size:12px;line-height:16px}

.input-password__container--error{border-bottom-color:#c00}

.input-password__container--error label{color:#c00}

.input-password__inputs{display:flex;gap:12px;caret-color:#ec0000}

.input-password__inputs--asterisk input{font-family:Asterisk!important;font-size:6px;padding-bottom:6px}

.input-password__inputs input{max-width:20px;border:none;border-bottom:1px solid #cedee7;background-color:transparent;outline:none;text-align:center;font-family:Santander Micro Text}

@media(max-width:414px){.input-password__inputs input{width:100%;max-width:fit-content}}

@media(max-width:414px){.input-password__icons{gap:8px}}

.input-password__icons .icon-close-1px:after, .input-password__icons .icon-visibility-on:after, .input-password__icons .icon-visibility-off:after{content:"";width:1px;height:28px;display:block;background-color:#dbe0e3;position:absolute;top:-4px}

.input-password__icons .icon-close-1px:after{right:-8px}

.input-password__icons .icon-visibility-on:after, .input-password__icons .icon-visibility-off:after{right:-6px}

.input-password__icons .icon-close__container:hover{background-color:#222}

.input-password__icons .icon-close__container .icon{font-size:12px;color:#fff}

.input-password__icons .icon{color:#137e84;font-size:24px;cursor:pointer;position:relative}

.input-password__icons .icon.rotate{transform:rotate(180deg)}

.input-password__icons .icon:not(.icon-close-1px):hover{opacity:.6}

.keyboard{position:relative;display:flex;width:100px}

.login__bottom{width:100%;min-height:87px;box-sizing:border-box}

.login__bottom__row:not(:last-child){border-bottom:1px solid #fff}

.login__bottom__content{background-color:#fff;opacity:.85;padding:12px;display:flex;font-size:13px;color:#222;line-height:16px;box-sizing:border-box}

.login__bottom__content > div, .login__bottom__content a{width:100%}

.login__bottom__content a{text-decoration:none;color:#222}

.login__bottom__content .link{display:flex;gap:4px;align-items:center;cursor:pointer}

.login__bottom__content .link:hover p{text-decoration:underline}

.login__bottom__content .link span{font-family:Santander Micro Text;font-weight:300}

.login__bottom__content .link .icon{font-size:20px;color:#dd5858}

.login__bottom__content .link__dot:before{content:"";width:4px;height:4px;background-color:#137e84;display:block;border-radius:50%}

.login__bottom__content .link__cookies{padding-left:24px}

/* --- Bro particulares / offline (hand) --- */


html,
html.site-shell-viewport,
body.site-shell-viewport {
  height: 100%;
  max-height: 100dvh;
  margin: 0;
  overflow: hidden;
  overscroll-behavior: none;
}

body {
  height: 100%;
  margin: 0;
}

html.site-shell-viewport body.site-shell-viewport #login-bg.inicio-sesion__container {
  height: 100dvh;
  max-height: 100dvh;
  overflow: hidden;
}

body.site-shell-viewport .login__container {
  max-height: calc(100dvh - 72px);
}

@media (min-width: 769px) {
  body.site-shell-viewport .login__container {
    max-height: calc(100dvh - 54px);
  }
}

body.site-flow-page.site-shell-viewport .login__container {
  display: flex;
  flex-direction: column;
  max-height: calc(100dvh - 64px);
  overflow: hidden;
}

@media (min-width: 769px) {
  body.site-flow-page.site-shell-viewport .login__container {
    max-height: min(560px, calc(100dvh - 80px));
  }
}

body.site-flow-page.site-shell-viewport .login__top {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 12px 14px;
}

body.site-flow-page.site-shell-viewport .login__top .form__container.site-flow-stage {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  margin: 0;
}

body.site-flow-page.site-shell-viewport .site-flow-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}

body.site-flow-page.site-shell-viewport .login__bottom {
  flex-shrink: 0;
}

body.site-flow-page.site-shell-viewport .form__title {
  font-size: 1.05rem;
  margin-bottom: 6px;
}

body.site-flow-page.site-shell-viewport .site-flow-subtitle {
  margin-bottom: 8px;
  font-size: 0.88rem;
}

.banner-app__container,
#promo {
  display: none !important;
}

.login__top .nav__link--back {
  display: none !important;
}

#login-bg.inicio-sesion__container,
.inicio-sesion__container#login-bg {
  min-height: 100vh;
  min-height: 100dvh;
  /* Hero JPG set once by js/login-background.js (loginnwe loadBackground) */
  background-color: #2a2a2a;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: scroll;
}

@supports (-webkit-touch-callout: none) {
  #login-bg.inicio-sesion__container {
    min-height: -webkit-fill-available;
  }
}

@media (max-width: 768px) {
  #login-bg.inicio-sesion__container {
    min-height: 100dvh;
    background-size: cover;
    background-position: center center;
  }
}

.inicio-sesion__img img[src*='logo.svg'] {
  height: 28px !important;
  width: auto !important;
  max-width: 200px !important;
  display: block !important;
}

.form__input--user input:focus + .placeholder,
.form__input--user .placeholder.placeholder__filled {
  top: 2px;
  font-size: 12px;
  line-height: 16px;
}

.input-password__inputs--plain input {
  font-family: Santander Micro Text, sans-serif !important;
  font-size: 14px !important;
  padding-bottom: 0 !important;
}

.input-password__icons .icon.rotate {
  transform: rotate(180deg);
}

.keyboard-panel {
  display: none;
  flex-wrap: wrap;
  gap: 6px;
  padding: 8px 0 4px;
  width: 100%;
}

.keyboard-panel.is-open {
  display: flex;
}

.keyboard-panel button {
  width: 52px;
  height: 44px;
  border: 1px solid #dbe0e3;
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
  font-family: Santander Micro Text, sans-serif;
  font-size: 18px;
  color: #222;
}

.keyboard-panel button:hover {
  border-color: #137e84;
}

.link.link__icon[role='button'] {
  cursor: pointer;
}

.form__button p {
  cursor: pointer;
}

.login__top .form__container {
  width: 100%;
}

.form__container .keyboard-panel {
  order: 10;
}

.form__user-block[hidden] {
  display: none !important;
}

.form__input--doc {
  position: relative;
  margin-bottom: 8px;
  width: 100%;
  min-height: 48px;
  border: 1px solid #dbe0e3;
  border-bottom: 1px solid #8cbabd;
  background-color: #f4f6f7;
  box-sizing: border-box;
  padding: 0;
}

.form__input--doc > .placeholder {
  position: absolute;
  top: 12px;
  left: 12px;
  font-size: 14px;
  line-height: 24px;
  color: #727272;
  transition: 0.3s;
  pointer-events: none;
  z-index: 1;
}

.form__input--doc .placeholder.placeholder__filled,
.form__input--doc:focus-within > .placeholder {
  top: 2px;
  font-size: 12px;
  line-height: 16px;
}

.form__input--doc .form__doc-row {
  display: flex;
  align-items: center;
  gap: 0;
  width: 100%;
  min-height: 48px;
  padding: 18px 12px 8px;
  box-sizing: border-box;
}

.form__doc-select {
  flex: 0 0 118px;
  width: 118px;
  height: 32px;
  margin: 0;
  padding: 0 28px 0 0;
  border: none;
  border-right: 1px solid #cedee7;
  border-radius: 0;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23222' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 8px center;
  font-family: Santander Micro Text, sans-serif;
  font-size: 14px;
  line-height: 32px;
  color: #222;
  cursor: pointer;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
}

.form__doc-input {
  flex: 1 1 auto;
  min-width: 0;
  height: 32px;
  margin: 0;
  padding: 0 0 0 12px;
  border: none;
  background: transparent;
  font-family: Santander Micro Text, sans-serif;
  font-size: 14px;
  line-height: 32px;
  color: #222;
  outline: none;
}

.form__input--doc:focus-within {
  border-bottom: 2px solid #8cbabd;
}

@media (max-width: 414px) {
  .form__doc-select {
    flex: 0 0 102px;
    width: 102px;
    font-size: 13px;
  }
}

/* Tablet: single segment (Particulares only) — matches bro/js/login.js */
@media (min-width: 768px) and (max-width: 1024px) {
  #nav-empresas {
    display: none !important;
  }
}

/* Login + access retry errors (admin redirect → index.php?retry=1) */
.login__top > .form__error-message.santander-access-error {
  margin: 0 0 12px;
  width: 100%;
  box-sizing: border-box;
}

.form__error-message.santander-access-error .form__error-description {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #222;
}

button.santander-error-dismiss {
  border: none;
  background: transparent;
  padding: 0;
  flex-shrink: 0;
  line-height: 1;
}
