/* ==========================================================================
   LEVITA Т-Банк одностраничник - база и примитивы (адаптация studio-landing)
   ========================================================================== */

/* --- Reset --- */
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;}
ul,ol{margin:0;padding:0;list-style:none;}
h1,h2,h3,p,figure,blockquote{margin:0;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  font-family:var(--font-body);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  color:var(--ink);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
:focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px;border-radius:4px;}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.sr-only:focus-visible{position:fixed;top:8px;left:8px;width:auto;height:auto;margin:0;padding:10px 18px;overflow:visible;clip:auto;white-space:normal;background:var(--graphite);color:var(--white);border-radius:var(--r-pill);z-index:100;}

/* --- Раскладка --- */
.container{width:100%;max-width:var(--maxw);margin:0 auto;padding-left:var(--page-x);padding-right:var(--page-x);}
.section{padding:var(--sec-y) 0;}
.section--dark{background:var(--surface-dark);color:var(--on-dark);}
.section--tint{background:var(--tint);}

/* --- Типографика --- */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-body);font-size:var(--fs-xs);
  letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-muted);
}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--gold-deep);}
.section--dark .eyebrow{color:var(--gold);}
.section--dark .eyebrow::before{background:var(--gold);}

.sec-head{text-align:center;max-width:26em;margin:0 auto var(--s-40);}
.sec-head__eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:14px;font-family:var(--font-body);font-size:var(--fs-xs);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-muted);}
.sec-head__eyebrow::before{content:"";width:22px;height:1px;background:var(--gold-deep);}
.section--dark .sec-head__eyebrow{color:var(--gold);}
.section--dark .sec-head__eyebrow::before{background:var(--gold);}
.sec-head__title{font-family:var(--font-display);font-weight:500;font-size:var(--fs-h2);line-height:var(--lh-head);color:var(--ink);text-wrap:balance;}
.section--dark .sec-head__title{color:var(--on-dark);}
.sec-head__title .accent{font-style:italic;color:var(--gold-deep);box-shadow:inset 0 -0.12em 0 rgba(238,201,92,.5);}
.section--dark .sec-head__title .accent{color:var(--gold);box-shadow:none;}
.sec-head__sub{margin-top:14px;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-muted);}
.section--dark .sec-head__sub{color:var(--on-dark-muted);}

/* --- Кнопки --- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:var(--tap);
  padding:15px 32px;
  border-radius:var(--r-pill);
  font-family:var(--font-body);font-size:var(--fs-body);font-weight:500;letter-spacing:.01em;
  text-align:center;
  transition:transform var(--dur) var(--ease),background var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.btn--primary{background:var(--gold);color:var(--graphite);}
.btn--primary:hover{background:var(--gold-hover);box-shadow:var(--shadow-lift);}
.btn--primary:active{transform:translateY(1px);}
.btn--primary:disabled{background:rgba(16,26,37,.12);color:rgba(16,26,37,.45);box-shadow:none;cursor:not-allowed;}
.btn--outline{background:transparent;color:var(--ink);border:1px solid var(--hairline-str);}
.btn--outline:hover{border-color:var(--gold-deep);color:var(--gold-deep);}
.btn--block{width:100%;}

/* --- Карточки --- */
.card{background:var(--white);border-left:var(--gold-border) solid var(--gold);border-radius:0 var(--r-card) var(--r-card) 0;box-shadow:var(--shadow);padding:24px;}
.card--plain{border-left:0;border-radius:var(--r-card);border:1px solid var(--hairline);box-shadow:none;}

/* --- Поля формы --- */
.field{
  width:100%;min-height:var(--tap);
  padding:12px 16px;
  font-family:var(--font-body);font-size:var(--fs-body);color:var(--ink);
  background:var(--white);border:1px solid var(--hairline-str);border-radius:var(--r-field);
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.field:hover{border-color:var(--hairline-str);}
.field:focus{outline:none;border-color:var(--gold-deep);box-shadow:0 0 0 3px rgba(238,201,92,.35);}
.field::placeholder{color:rgba(16,26,37,.4);}
select.field{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23101a25' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:42px;}

/* --- Чекбокс-согласие --- */
.consent{display:flex;gap:10px;align-items:flex-start;font-size:var(--fs-xs);line-height:1.5;color:var(--ink-muted);cursor:pointer;}
.consent input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--gold-deep);cursor:pointer;}
.consent a{text-decoration:underline;text-underline-offset:2px;}
