/* Avtopolis Online Pro 47.4.0 — mobile form order + unified yellow CTA.
   Goals: readable contrast across all templates, stable one-form layout,
   and a higher messenger chooser on mobile. Loaded last on purpose. */

:root{
  --apo473-navy:#0B2A43;
  --apo473-copy:#40586B;
  --apo473-muted:#5C7284;
  --apo473-dark-copy:#D7E6EF;
  --apo473-dark-muted:#BDD2DF;
  --apo473-line:#D5E2EA;
  --apo473-soft:#F4F8FB;
}

/* ---------------------------------------------------------
   1) Contrast contract.
   Prevent late generic heading rules from turning text navy on dark blue,
   and prevent inherited white text from leaking into light/grey cards.
   --------------------------------------------------------- */
body.apo-site :is(
  .apo-section--navy,
  .apo-section--calc-stage,
  .apo-section--dark-help,
  .apo46-proof,
  .apo15-proofbar,
  .apo15-calc,
  .apo15-insurers,
  .apo15-business__card,
  .apo15-final__card,
  .apo15-section-intro--light,
  .apo15-direction--primary,
  .apo-quick-finish,
  .apo-inner-fast,
  .apo-final-cta,
  .apo-footer,
  .apo15-footer,
  .apo-verify-card
){color:#fff!important;-webkit-text-fill-color:currentColor}

body.apo-site :is(
  .apo-section--navy,
  .apo-section--calc-stage,
  .apo-section--dark-help,
  .apo46-proof,
  .apo15-proofbar,
  .apo15-calc,
  .apo15-insurers,
  .apo15-business__card,
  .apo15-final__card,
  .apo15-section-intro--light,
  .apo15-direction--primary,
  .apo-quick-finish,
  .apo-inner-fast,
  .apo-final-cta,
  .apo-footer,
  .apo15-footer,
  .apo-verify-card
) :is(h1,h2,h3,h4,h5,h6,.apo-section-head__title,.apo-card__title,.apo-step__title,.apo-final-cta__title,.apo-inner-fast__title,.apo-verify-card__title){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

body.apo-site :is(
  .apo-section--navy,
  .apo-section--calc-stage,
  .apo-section--dark-help,
  .apo46-proof,
  .apo15-proofbar,
  .apo15-calc,
  .apo15-insurers,
  .apo15-business__card,
  .apo15-final__card,
  .apo15-section-intro--light,
  .apo15-direction--primary,
  .apo-quick-finish,
  .apo-inner-fast,
  .apo-final-cta,
  .apo-footer,
  .apo15-footer,
  .apo-verify-card
) :is(p,li,small,.apo-section-head p){
  color:var(--apo473-dark-copy)!important;
  -webkit-text-fill-color:var(--apo473-dark-copy)!important;
}

body.apo-site :is(
  .apo-section--navy,
  .apo-section--calc-stage,
  .apo-section--dark-help,
  .apo46-proof,
  .apo15-proofbar,
  .apo15-calc,
  .apo15-insurers,
  .apo15-business__card,
  .apo15-final__card,
  .apo15-section-intro--light,
  .apo15-direction--primary,
  .apo-quick-finish,
  .apo-inner-fast,
  .apo-final-cta,
  .apo-footer,
  .apo15-footer,
  .apo-verify-card
) a:not(.apo-btn):not(.apo-quick-channel):not(.apo-messenger){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Light surfaces are always dark-on-light, even when nested in a dark section. */
body.apo-site :is(
  .apo-card,
  .apo-cta-card,
  .apo46-calc-card,
  .apo472-oneform,
  .apo47-direction-card,
  .apo46-country-grid>a,
  .apo46-adv-grid article,
  .apo46-help-grid>a,
  .apo473-insurer-card,
  .apo47-pdf-card,
  .apo-policy-sample,
  .apo-policy-samples figure,
  .apo-faq details,
  .apo47-faq-fallback details,
  .apo-seo54 details,
  .apo-help-cards a,
  .apo-link-grid a,
  .apo-country-cards a,
  .apo-vehicle-cards a,
  .apo-verify-list>div,
  .apo-calculator-shell,
  .apo-quick-modal__panel
){
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:currentColor;
}

body.apo-site :is(
  .apo-card,
  .apo-cta-card,
  .apo46-calc-card,
  .apo472-oneform,
  .apo47-direction-card,
  .apo46-country-grid>a,
  .apo46-adv-grid article,
  .apo46-help-grid>a,
  .apo473-insurer-card,
  .apo47-pdf-card,
  .apo-policy-sample,
  .apo-policy-samples figure,
  .apo-faq details,
  .apo47-faq-fallback details,
  .apo-seo54 details,
  .apo-help-cards a,
  .apo-link-grid a,
  .apo-country-cards a,
  .apo-vehicle-cards a,
  .apo-verify-list>div,
  .apo-calculator-shell,
  .apo-quick-modal__panel
) :is(h1,h2,h3,h4,h5,h6,strong,.apo-section-head__title,.apo-card__title,.apo-quick-modal__title){
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
}

body.apo-site :is(
  .apo-card,
  .apo-cta-card,
  .apo46-calc-card,
  .apo472-oneform,
  .apo47-direction-card,
  .apo46-country-grid>a,
  .apo46-adv-grid article,
  .apo46-help-grid>a,
  .apo473-insurer-card,
  .apo47-pdf-card,
  .apo-policy-sample,
  .apo-policy-samples figure,
  .apo-faq details,
  .apo47-faq-fallback details,
  .apo-seo54 details,
  .apo-help-cards a,
  .apo-link-grid a,
  .apo-country-cards a,
  .apo-vehicle-cards a,
  .apo-verify-list>div,
  .apo-calculator-shell,
  .apo-quick-modal__panel
) :is(p,li,small){
  color:var(--apo473-copy)!important;
  -webkit-text-fill-color:var(--apo473-copy)!important;
}

/* CTA contrast: orange/yellow buttons use navy text; blue/navy buttons use white. */
body.apo-site .apo-btn--primary,
body.apo-site .apo-header__cta,
body.apo-site .apo15-btn-main,
body.apo-site .apo472-submit,
body.apo-site .apo44-cta-mid,
body.apo-site .apo44-cta-final,
body.apo-site .apo15-promo-card__action{
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
}
body.apo-site .apo-btn--primary :is(span,strong,b),
body.apo-site .apo-header__cta :is(span,strong,b),
body.apo-site .apo15-btn-main :is(span,strong,b),
body.apo-site .apo472-submit :is(span,strong,b){
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

/* 47.4.0: the application submit CTA must use the same approved yellow/gold
   treatment as the main "ОФОРМИТЬ СТРАХОВОЙ ПОЛИС" button, never orange. */
body.apo-site .apo472-oneform .apo472-submit.apo-btn--primary,
body.apo-site .apo-calculator-shell .apo472-submit.apo-btn--primary{
  background:linear-gradient(135deg,#FFC766,var(--apo47-orange,#F5A623))!important;
  border:1px solid #E79508!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
  box-shadow:0 11px 23px rgba(245,166,35,.20)!important;
}
body.apo-site .apo472-oneform .apo472-submit.apo-btn--primary:hover,
body.apo-site .apo-calculator-shell .apo472-submit.apo-btn--primary:hover{
  background:linear-gradient(135deg,#FFD27F,var(--apo47-orange,#F5A623))!important;
  border-color:#E79508!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
}

/* Form controls: never white-on-grey or navy-on-blue. */
body.apo-site :is(input,select,textarea){
  color:var(--apo473-navy);
}
body.apo-site :is(.apo472-oneform,.apo-calculator-shell,.apo-form,.apo-lead-form) :is(input,select,textarea){
  background:#fff!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
  border-color:#B9CCD9!important;
}
body.apo-site :is(.apo472-oneform,.apo-calculator-shell,.apo-form,.apo-lead-form) :is(input,textarea)::placeholder{
  color:#607587!important;
  -webkit-text-fill-color:#607587!important;
  opacity:1!important;
}
body.apo-site :is(.apo472-oneform,.apo-calculator-shell,.apo-form,.apo-lead-form) select option{
  background:#fff!important;
  color:var(--apo473-navy)!important;
}

/* ---------------------------------------------------------
   2) Stable calculator + application form.
   Keep one actual form / one submission, but restore the clear visual
   sequence of the reference site: calculation parameters first,
   then a separate "Ваши данные" block.
   --------------------------------------------------------- */
body.apo-site .apo472-oneform{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fff!important;
}
body.apo-site .apo472-form-badge{display:none!important}
body.apo-site .apo472-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-areas:
    'insured vehicle'
    'term age'
    'driver price'
    'contacthead contacthead'
    'name phone'!important;
  gap:18px 22px!important;
  align-items:stretch!important;
}
body.apo-site .apo472-insured{grid-area:insured!important}
body.apo-site .apo472-vehicle{grid-area:vehicle!important}
body.apo-site .apo472-term{grid-area:term!important}
body.apo-site .apo472-age{grid-area:age!important}
body.apo-site .apo472-driver{grid-area:driver!important}
body.apo-site .apo472-price{grid-area:price!important}
body.apo-site .apo473-contact-divider{grid-area:contacthead!important}
body.apo-site .apo472-name{grid-area:name!important}
body.apo-site .apo472-phone{grid-area:phone!important}

body.apo-site .apo472-grid label{
  display:grid!important;
  grid-template-rows:auto 52px auto!important;
  align-content:start!important;
  gap:7px!important;
  min-width:0!important;
  margin:0!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
}
body.apo-site .apo472-grid label>span{
  min-height:18px!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.35!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
body.apo-site .apo472-grid :is(select,input){
  height:52px!important;
  min-height:52px!important;
  border:1.5px solid #B9CCD9!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.2!important;
  box-shadow:0 1px 0 rgba(11,42,67,.02)!important;
}
body.apo-site .apo472-grid :is(select,input):focus{
  border-color:#1D75C8!important;
  box-shadow:0 0 0 3px rgba(29,117,200,.12)!important;
  outline:0!important;
}
body.apo-site .apo472-driver small{
  min-height:34px!important;
  color:var(--apo473-muted)!important;
  -webkit-text-fill-color:var(--apo473-muted)!important;
  font-size:11.5px!important;
  line-height:1.4!important;
}
body.apo-site .apo472-price{
  align-self:stretch!important;
  min-height:111px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:8px!important;
  padding:15px 17px!important;
  border:1.5px solid #C9D8E2!important;
  border-radius:14px!important;
  background:#F4F8FB!important;
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
}
body.apo-site .apo472-price>span{color:#526A7D!important;-webkit-text-fill-color:#526A7D!important;font-size:11.5px!important}
body.apo-site .apo472-price>div{display:flex!important;align-items:baseline!important;justify-content:flex-start!important;gap:18px!important;flex-wrap:wrap!important}
body.apo-site .apo472-price strong{font-size:24px!important;color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}
body.apo-site .apo472-price b{font-size:18px!important;color:#116C4D!important;-webkit-text-fill-color:#116C4D!important}
body.apo-site .apo472-price small{color:#607587!important;-webkit-text-fill-color:#607587!important;font-size:10.5px!important;line-height:1.35!important}

body.apo-site .apo473-contact-divider{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-top:5px!important;
  padding:20px 0 12px!important;
  border-top:1px solid var(--apo473-line)!important;
  border-bottom:1px solid #E5EDF2!important;
}
body.apo-site .apo473-contact-divider span{
  color:#1D5DA8!important;
  -webkit-text-fill-color:#1D5DA8!important;
  font-size:11px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.11em!important;
}
body.apo-site .apo473-contact-divider b{
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
  font-size:18px!important;
  line-height:1.25!important;
  text-align:right!important;
}
body.apo-site .apo472-consent{margin:17px 0 13px!important;color:#28475F!important;-webkit-text-fill-color:#28475F!important}
body.apo-site .apo472-consent span{color:#28475F!important;-webkit-text-fill-color:#28475F!important}
body.apo-site .apo472-consent a{color:#155C9E!important;-webkit-text-fill-color:#155C9E!important}
body.apo-site .apo472-note{color:#5E7486!important;-webkit-text-fill-color:#5E7486!important}

/* ---------------------------------------------------------
   3) Messenger chooser: on phones it was a bottom sheet and sat too low.
   Center it vertically, with a slight upward bias and safe-area padding.
   --------------------------------------------------------- */
body.apo-site .apo-quick-modal__panel{
  background:#fff!important;
  color:var(--apo473-navy)!important;
}
body.apo-site .apo-quick-modal__panel>p{color:#536A7D!important;-webkit-text-fill-color:#536A7D!important}
body.apo-site .apo-quick-channel{
  color:var(--apo473-navy)!important;
  -webkit-text-fill-color:var(--apo473-navy)!important;
}
body.apo-site .apo-quick-channel b{color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}
body.apo-site .apo-quick-channel span:not(.apo46-channel-icon){color:#526A7D!important;-webkit-text-fill-color:#526A7D!important}
body.apo-site .apo-quick-channel em{color:#155C9E!important;-webkit-text-fill-color:#155C9E!important}

@media(max-width:760px){
  body.apo-site .apo46-calc-card{padding:18px!important}
  body.apo-site .apo472-grid{
    grid-template-columns:1fr!important;
    grid-template-areas:
      'insured'
      'vehicle'
      'term'
      'age'
      'driver'
      'price'
      'contacthead'
      'name'
      'phone'!important;
    gap:15px!important;
  }
  body.apo-site .apo472-grid label{grid-template-rows:auto 54px auto!important}
  body.apo-site .apo472-grid label>span{font-size:15px!important;min-height:0!important}
  body.apo-site .apo472-grid :is(select,input){height:54px!important;min-height:54px!important;font-size:16px!important}
  body.apo-site .apo472-driver small{min-height:0!important;font-size:12.5px!important}
  body.apo-site .apo472-price{min-height:auto!important;padding:15px!important}
  body.apo-site .apo472-price strong{font-size:26px!important}
  body.apo-site .apo472-price b{font-size:20px!important}
  body.apo-site .apo473-contact-divider{display:block!important;margin-top:4px!important;padding:19px 0 12px!important}
  body.apo-site .apo473-contact-divider b{display:block!important;margin-top:6px!important;text-align:left!important;font-size:19px!important}

  body.apo-site .apo-quick-modal{
    align-items:center!important;
    justify-items:center!important;
    padding:calc(14px + env(safe-area-inset-top,0px)) 14px calc(14px + env(safe-area-inset-bottom,0px))!important;
  }
  body.apo-site .apo-quick-modal__panel{
    width:100%!important;
    max-height:calc(100dvh - 72px)!important;
    margin-top:-6vh!important;
    padding:24px 18px 18px!important;
    border-radius:23px!important;
    overflow:auto!important;
  }
}

@media(max-width:420px){
  body.apo-site .apo-quick-modal__panel{margin-top:-4vh!important;padding:22px 16px 16px!important}
  body.apo-site .apo-quick-modal__title{font-size:26px!important;line-height:1.08!important}
  body.apo-site .apo-quick-modal__links{margin-top:16px!important}
}

/* Homepage hero must stay the approved light surface.
   Older v43 mobile rules used !important on the dark hero background and were
   leaking through, creating navy/blue text on dark blue. */
body.apo-site .apo46-hero{
  background:linear-gradient(135deg,#F5FAFD 0%,#EDF6FB 100%)!important;
  color:var(--apo473-navy)!important;
  border-bottom:1px solid #D8E7EF!important;
}
body.apo-site .apo46-hero:after{
  background:linear-gradient(119deg,transparent 0 66%,rgba(29,93,168,.035) 66.1% 67%,transparent 67.1%),linear-gradient(119deg,transparent 0 76%,rgba(245,166,35,.05) 76.1% 76.8%,transparent 76.9%)!important;
}
body.apo-site .apo46-hero .apo15-kicker{color:#1D5DA8!important;-webkit-text-fill-color:#1D5DA8!important}
body.apo-site .apo46-hero .apo15-lead{color:#40586B!important;-webkit-text-fill-color:#40586B!important}
body.apo-site .apo46-hero .apo15-hero__route{color:#5C7B90!important;-webkit-text-fill-color:#5C7B90!important}
body.apo-site .apo46-hero .apo15-hero__route b{color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}

/* v43 ultimately renders the proof bar as a light surface; keep its copy dark. */
body.apo-site .apo15-proofbar{color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}
body.apo-site .apo15-proofbar b,
body.apo-site .apo15-proofbar strong{color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}
body.apo-site .apo15-proofbar small{color:#557085!important;-webkit-text-fill-color:#557085!important}

/* Customer mobile request: noticeably higher than the former bottom-sheet position. */
@media(max-width:760px){
  body.apo-site .apo-quick-modal{
    align-items:start!important;
    padding-top:max(78px,calc(8dvh + env(safe-area-inset-top,0px)))!important;
  }
  body.apo-site .apo-quick-modal__panel{
    margin-top:0!important;
    max-height:calc(100dvh - 104px)!important;
  }
}

@media(max-width:420px){
  body.apo-site .apo-quick-modal__panel>.apo-eyebrow{
    display:block!important;
    max-width:calc(100% - 44px)!important;
    padding-right:0!important;
    white-space:normal!important;
    line-height:1.35!important;
  }
}

/* Nested translucent cards inside dark-help are dark-surface cards, not light cards. */
body.apo-site .apo-section--dark-help .apo-help-cards a{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.13)!important;
}
body.apo-site .apo-section--dark-help .apo-help-cards strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body.apo-site .apo-section--dark-help .apo-help-cards small{
  color:#CFE2ED!important;
  -webkit-text-fill-color:#CFE2ED!important;
}
body.apo-site .apo-section--dark-help .apo-help-cards b{
  color:#86DDFF!important;
  -webkit-text-fill-color:#86DDFF!important;
}

/* Higher specificity than the generic dark-surface contract. */
body.apo-site .apo15-proofbar .apo-container small,
body.apo-site .apo-v15-home .apo15-proofbar small{
  color:#557085!important;
  -webkit-text-fill-color:#557085!important;
}

/* Calculator forms are light cards even inside a dark calculator section. */
body.apo-site .apo-calculator-shell .apo-form{color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}
body.apo-site .apo-calculator-shell .apo-form :is(h1,h2,h3,h4,strong){color:var(--apo473-navy)!important;-webkit-text-fill-color:var(--apo473-navy)!important}
body.apo-site .apo-calculator-shell .apo-form :is(p,li,small,label){color:var(--apo473-copy)!important;-webkit-text-fill-color:var(--apo473-copy)!important}

/* =========================================================
   47.6.0 — compact mobile menu + prominent Russia/OSAGO route.
   Loaded last, so these rules deliberately neutralize legacy v39/v43
   mobile-nav declarations that could stretch the menu vertically.
   ========================================================= */

/* Russia is an important second direction, not a low-contrast ordinary link. */
body.apo-site .apo47-nav__russia > a{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  color:#0B2A43!important;
  -webkit-text-fill-color:#0B2A43!important;
  background:linear-gradient(135deg,#FFF4C9 0%,#FFE1A0 100%)!important;
  border:1px solid #E9A51A!important;
  border-radius:12px!important;
  font-weight:900!important;
  box-shadow:0 5px 14px rgba(245,166,35,.16)!important;
}
body.apo-site .apo47-nav__russia > a::before{
  content:'РФ';
  display:inline-grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  min-width:30px!important;
  height:24px!important;
  padding:0 6px!important;
  border-radius:7px!important;
  background:#0B2A43!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
}
body.apo-site .apo47-nav__russia > a:hover,
body.apo-site .apo47-nav__russia > a:focus-visible{
  background:linear-gradient(135deg,#FFE9A8 0%,#FFD57B 100%)!important;
  border-color:#D99105!important;
  color:#0B2A43!important;
}

/* Desktop: keep the Russia item fully readable instead of ellipsized. */
@media(min-width:1660px){
  body.apo-site .apo47-nav__russia > a{
    max-width:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    padding:9px 11px!important;
    font-size:11.5px!important;
  }
  body.apo-site .apo47-nav__russia > a::before{
    min-width:26px!important;
    height:22px!important;
    font-size:9px!important;
  }
}

/* Tablet/phone dropdown: compact, left aligned, predictable height. */
@media(max-width:1100px){
  body.apo-site .apo47-header{
    position:sticky!important;
    top:0!important;
    z-index:1000!important;
  }
  body.apo-site .apo47-header .apo47-header__inner{
    position:relative!important;
  }
  body.apo-site .apo47-header .apo47-nav{
    display:none!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open{
    display:block!important;
    position:absolute!important;
    top:calc(100% + 6px)!important;
    left:0!important;
    right:0!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 180px)!important;
    margin:0!important;
    padding:8px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    background:#fff!important;
    border:1px solid #D6E3EA!important;
    border-radius:16px!important;
    box-shadow:0 18px 42px rgba(5,38,62,.20)!important;
    z-index:1001!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li{
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
    list-style:none!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li + li:not(.apo47-nav__russia){
    border-top:1px solid #EDF2F5!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li > a{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:46px!important;
    height:auto!important;
    margin:0!important;
    padding:10px 12px!important;
    border-radius:10px!important;
    background:#fff!important;
    border:0!important;
    box-shadow:none!important;
    color:#0B2A43!important;
    -webkit-text-fill-color:#0B2A43!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    font-size:15px!important;
    line-height:1.22!important;
    font-weight:820!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li > a::after{
    display:none!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li > a:hover,
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li > a:focus-visible{
    background:#F1F6FA!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li.apo47-nav__russia{
    margin:5px 0!important;
    border:0!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li.apo47-nav__russia > a{
    min-height:52px!important;
    padding:11px 12px!important;
    background:linear-gradient(135deg,#FFF4C9 0%,#FFE1A0 100%)!important;
    border:1px solid #E9A51A!important;
    border-left:5px solid #F5A623!important;
    border-radius:12px!important;
    box-shadow:0 5px 14px rgba(245,166,35,.14)!important;
    font-weight:920!important;
  }

  /* Hamburger becomes an X while the menu is open. */
  body.apo-site .apo47-header .apo-menu-toggle{
    display:grid!important;
    place-content:center!important;
    gap:0!important;
    position:relative!important;
    z-index:1003!important;
  }
  body.apo-site .apo47-header .apo-menu-toggle span{
    width:24px!important;
    height:3px!important;
    margin:2.5px 0!important;
    border-radius:999px!important;
    background:#0B2A43!important;
    transition:transform .18s ease,opacity .18s ease!important;
    transform-origin:center!important;
  }
  body.apo-site .apo47-header .apo-menu-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(8px) rotate(45deg)!important;
  }
  body.apo-site .apo47-header .apo-menu-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0!important;
  }
  body.apo-site .apo47-header .apo-menu-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg)!important;
  }
}

@media(max-width:760px){
  body.apo-site .apo47-header .apo47-nav.is-open{
    left:4px!important;
    right:4px!important;
    top:calc(100% + 4px)!important;
    max-height:calc(100dvh - 205px - env(safe-area-inset-bottom,0px))!important;
    padding:7px!important;
    border-radius:15px!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li > a{
    min-height:44px!important;
    padding:9px 11px!important;
    font-size:14.5px!important;
  }
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li.apo47-nav__russia > a{
    min-height:50px!important;
    padding:10px 11px!important;
  }
  body.apo-site.apo-menu-open:before{
    background:rgba(4,25,43,.30)!important;
    backdrop-filter:blur(1.5px)!important;
  }
}

@media(max-width:390px){
  body.apo-site .apo47-header .apo47-nav.is-open > ul > li > a{font-size:14px!important}
  body.apo-site .apo47-nav__russia > a::before{min-width:28px!important;height:23px!important}
}


/* ---------------------------------------------------------
   47.9.0 — customer request: keep a single calculator divider.
   The outer gradient under the calculator intro remains; the legacy
   second gradient generated by .apo15-calc__shell::before is removed.
   --------------------------------------------------------- */
body.apo-site .apo46-calc-card .apo15-calc__shell::before{
  content:none!important;
  display:none!important;
}
