/* SEO/static enhancement layer. Existing visual styles remain authoritative. */
.city-seo-unique{padding-top:clamp(58px,8vw,108px);padding-bottom:clamp(58px,8vw,108px)}
.city-seo-heading{max-width:880px;margin:0 auto 34px;text-align:center}
.city-seo-heading h2{margin:10px 0 18px;font-size:clamp(32px,5vw,60px);line-height:1.04}
.city-seo-heading>p{max-width:820px;margin:0 auto;color:#4d5360;font-size:clamp(16px,2vw,19px);line-height:1.7}
.city-seo-heading .city-region{display:inline-flex;margin-top:18px;padding:8px 14px;border-radius:999px;background:#eef1f4;color:#363b45;font-size:14px}
.city-seo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1120px;margin:0 auto}
.city-seo-grid article{padding:28px;border:1px solid #e4e7ea;border-radius:24px;background:#fff;box-shadow:0 14px 36px rgba(26,30,38,.06)}
.city-seo-grid h3{margin:0 0 12px;font-size:clamp(20px,2.5vw,28px);line-height:1.15}
.city-seo-grid p{margin:0;color:#555b66;line-height:1.7}
.all-cities-link{display:inline-flex;align-items:center;gap:12px;margin-top:18px;padding:13px 18px;border-radius:999px;background:#fff;color:#111;text-decoration:none;font-weight:700}
.all-cities-link span{font-size:20px}
.cities-directory{min-height:100vh;background:#f6f7f8;color:#15171b}
.directory-header{padding:22px clamp(20px,5vw,72px);background:#101114;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px}
.directory-brand{font-weight:900;font-size:20px;color:#fff;text-decoration:none}.directory-header a:last-child{color:#fff}
.directory-main{max-width:1180px;margin:0 auto;padding:clamp(52px,8vw,100px) 20px}
.directory-main h1{font-size:clamp(42px,7vw,82px);line-height:.98;margin:0 0 22px;max-width:900px}
.directory-lead{font-size:19px;line-height:1.65;max-width:780px;color:#515762;margin-bottom:38px}
.directory-search{display:flex;gap:10px;max-width:680px;margin-bottom:54px}.directory-search input{flex:1;padding:16px 18px;border:1px solid #ccd1d7;border-radius:14px;font:inherit}.directory-search button{padding:16px 20px;border:0;border-radius:14px;background:#15171b;color:#fff;font-weight:800}
.directory-group{margin:0 0 40px}.directory-group h2{font-size:30px;margin:0 0 18px}.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.directory-grid a{display:block;padding:13px 14px;border-radius:12px;background:#fff;border:1px solid #e3e6e9;color:#191b20;text-decoration:none;line-height:1.25}.directory-grid a:hover{border-color:#ff4f00;transform:translateY(-1px)}
.km-form-status{grid-column:1/-1;margin:4px 0 0;font-size:14px;line-height:1.55}.km-form-status.error{color:#b42318}.km-form-status.ok{color:#147a3d}.km-form-status.pending{color:#364152}
.lead-form[aria-busy="true"] .submit-button{cursor:wait;opacity:.68}.lead-form .submit-button:disabled{opacity:.68}.km-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.km-max-fallback{grid-column:1/-1;display:grid;gap:10px;padding:14px;border:1px solid currentColor;border-radius:12px}.km-max-fallback label{font-weight:700}.km-max-fallback textarea{width:100%;min-height:112px;padding:10px;border:1px solid #aab2bd;border-radius:8px;font:inherit;resize:vertical}.km-max-fallback a{justify-self:start;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.km-cookie-banner{position:fixed;z-index:99999;left:16px;right:16px;bottom:16px;max-width:760px;margin:auto;padding:18px;border-radius:18px;background:#10231d;color:#fff;box-shadow:0 18px 60px rgba(0,0,0,.32)}.km-cookie-banner p{margin:0 0 13px;line-height:1.5}.km-cookie-banner a{color:#d7ff44}.km-cookie-actions{display:flex;flex-wrap:wrap;gap:10px}.km-cookie-actions button,.km-cookie-settings{border:0;border-radius:999px;padding:10px 16px;font:inherit;font-weight:800;cursor:pointer}.km-cookie-accept{background:#d7ff44;color:#10231d}.km-cookie-decline{background:#fff;color:#10231d}.km-cookie-settings{display:block;margin:14px auto 0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px}
.privacy-summary{margin:22px 0;padding:18px 20px;border:1px solid rgba(255,255,255,.22);border-radius:18px}.privacy-summary p{margin:6px 0 0}.privacy-summary a,.consent a,.form-fineprint a{color:inherit;text-decoration:underline;text-underline-offset:3px}
/* Contrast corrections for small copy on green and off-white surfaces. */
.trust-strip p,.calculator-copy>p,.calculator-factors span{color:#eef8f2!important}.calculator-panel label,.range-values,.income-note{color:#4e5954!important}
@media(max-width:900px){.directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.city-seo-grid{grid-template-columns:1fr}.city-seo-grid article{padding:22px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-search{flex-direction:column}}
@media(max-width:430px){.directory-grid{grid-template-columns:1fr}}


/* v14: owner-photo framing, compact eligibility, readable articles and topical role photos */
.hero-photo-main img,.hero-photo-small img,.role-photo img{object-position:center 34%}
img[data-km-photo="hero-bike-photo"]{object-position:58% 38%}
img[data-km-photo="velo-kurier-photo"]{object-position:62% 42%}
img[data-km-photo="peshiy-kurier-photo"]{object-position:55% 36%}
.role-photo img[data-km-photo="avtokurier-photo"]{object-position:50% 28%}
.seo-role-photo img[data-km-photo="avtokurier-photo"]{object-position:50% 42%}
.role-photo img[data-km-photo="sborschik-zakazov-photo"]{object-position:50% 8%}
.seo-role-photo img[data-km-photo="sborschik-zakazov-photo"]{object-position:50% 45%}
.age-gate{display:inline-flex;align-items:center;gap:10px;margin:4px 0 18px;padding:10px 14px;border:2px solid #0c7c43;border-radius:16px;background:#effcf4;color:#073f26}
.age-gate strong{font-size:17px}.age-gate span{font-size:14px}
.vacancy-notice{display:flex;align-items:center;gap:18px;margin:0 0 22px;padding:16px 18px;border:2px solid #0c7c43;border-radius:18px;background:#f0fbf4;color:#143d2a}
.vacancy-notice strong{flex:0 0 auto;font-size:18px}.vacancy-notice span{line-height:1.5}
.role-income{max-width:155px;text-align:center;line-height:1.15;white-space:normal}
.income-note{font-size:14px;line-height:1.55;color:#3f4d45}
.eligibility-facts{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:48px;padding:72px max(5vw,32px);background:#f7f4ec;color:#10261b}
.eligibility-facts h2{margin:10px 0 8px;font-size:clamp(30px,4vw,54px);line-height:1}.eligibility-facts p{color:#536159}
.eligibility-facts dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0}
.eligibility-facts dl>div{padding:18px;border:1px solid #dbe5dd;border-radius:18px;background:#fff}
.eligibility-facts dt{margin-bottom:8px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#0c7c43}
.eligibility-facts dd{margin:0;line-height:1.5;color:#34443b}
.eligibility-confirm{border:1px solid #a8d5b8;border-radius:14px;padding:13px 14px;background:#effaf3;color:#173b29;line-height:1.45}
.eligibility-confirm span{display:block}.eligibility-confirm strong{color:#075d34}
.article-card-2>small,.article-card-2>p{color:#34443b}
.article-card-3>small,.article-card-3>p{color:#edf8f1}
.brand-logo{display:block;width:235px;max-width:28vw;height:auto;object-fit:contain}
@media(max-width:760px){.age-gate,.vacancy-notice{align-items:flex-start;flex-direction:column;gap:5px}.eligibility-facts{grid-template-columns:1fr;gap:24px;padding:52px 20px}.eligibility-facts dl{grid-template-columns:1fr}.role-income{max-width:145px}img[data-km-photo="hero-bike-photo"]{object-position:57% 34%}img[data-km-photo="velo-kurier-photo"]{object-position:60% 38%}img[data-km-photo="peshiy-kurier-photo"]{object-position:54% 34%}.role-photo img[data-km-photo="avtokurier-photo"]{object-position:50% 28%}.seo-role-photo img[data-km-photo="avtokurier-photo"]{object-position:50% 42%}.role-photo img[data-km-photo="sborschik-zakazov-photo"]{object-position:50% 8%}.seo-role-photo img[data-km-photo="sborschik-zakazov-photo"]{object-position:50% 45%}.brand-logo{width:190px;max-width:58vw}}


/* v15: keep the hero role label and branded bag clear of overlapping cards */
.hero-photo-main>.photo-label{top:22px;bottom:auto;left:22px}
img[data-km-photo="hero-bike-photo"]{object-position:68% 38%}
.hero-visual{min-height:650px}
.income-sticker{width:184px;height:184px;right:22%;bottom:0}
.income-sticker small{display:block;width:140px;max-width:calc(100% - 34px);white-space:normal;line-height:1.15}
.income-sticker strong{font-size:23px}
@media(max-width:1100px){
  .hero-photo-main>.photo-label{top:20px;bottom:auto;left:20px}
  .hero-visual{min-height:575px}
  .income-sticker{width:148px;height:148px;right:20%;bottom:0}
  .income-sticker small{font-size:10px}
  .income-sticker strong{font-size:19px}
}
@media(max-width:820px){
  .hero-visual{min-height:620px}
  .income-sticker{right:18%;bottom:0}
}
@media(max-width:560px){
  .hero-photo-main>.photo-label{top:16px;bottom:auto;left:16px;padding:9px 12px;font-size:11px}
  img[data-km-photo="hero-bike-photo"]{object-position:75% 38%}
  .hero-visual{min-height:445px}
  .hero-photo-small{bottom:72px}
  .income-sticker{width:112px;height:112px;top:62px;right:0;bottom:auto}
  .income-sticker small{font-size:8px}
  .income-sticker strong{font-size:15px}
}


/* v16: make the calculator logic clear before the application CTA */
.calculator-order-note{
  color:#063f2c!important;
  background:#fff9;
  border:1px solid #063f2c24;
  border-left:4px solid #063f2c;
  border-radius:14px;
  margin:18px 0 14px!important;
  padding:12px 14px;
  font-size:12px!important;
  line-height:1.45!important;
}
.calculator-order-note b{
  display:block;
  margin-bottom:4px;
  font-size:13px;
  line-height:1.3;
}
.calculator-order-note span{display:block}
.calculator-result>div>strong{
  font-size:clamp(21px,2.15vw,31px);
  white-space:nowrap;
}
@media(max-width:560px){
  .calculator-order-note{order:-1;margin:0 0 15px!important;padding:11px 12px;font-size:12px!important}
  .calculator-order-note b{font-size:13px}
  .calculator-result>div>strong{font-size:clamp(20px,6vw,25px)}
}

/* v17: city-specific income evidence and transparent calculator source data */
.income-source-note{margin:8px 0 14px!important;font-size:12px!important;line-height:1.5!important;color:#324b40!important}
.city-income-section{background:#f7f4ec;color:#10261b}
.city-income-section .section-heading{align-items:end}
.income-table-wrap{overflow-x:auto;margin-top:28px;border:1px solid #d8e3dc;border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(23,55,40,.06)}
.income-table-wrap table{width:100%;min-width:720px;border-collapse:collapse}
.income-table-wrap caption{padding:16px 18px;text-align:left;font-size:13px;color:#536159;background:#eef6f1}
.income-table-wrap th,.income-table-wrap td{padding:16px 18px;border-bottom:1px solid #e2e9e4;text-align:right;vertical-align:middle}
.income-table-wrap th:first-child,.income-table-wrap td:first-child{text-align:left}
.income-table-wrap thead th{font-size:13px;line-height:1.35;color:#294438;background:#f8fbf9}
.income-table-wrap tbody th{font-size:15px;color:#10261b}
.income-table-wrap tbody td{font-weight:800;color:#075d34;white-space:nowrap}
.income-table-wrap tbody tr:last-child th,.income-table-wrap tbody tr:last-child td{border-bottom:0}
.income-method-note{margin:18px 0 0;line-height:1.6;color:#42564c}
.income-method-note a{font-weight:800;color:#075d34;text-underline-offset:3px}
@media(max-width:700px){
  .city-income-section .section-heading{align-items:start}
  .income-table-wrap{margin-top:20px;border-radius:14px}
  .income-table-wrap th,.income-table-wrap td{padding:13px 14px}
}

/* v18: verifiable service, contact and methodology pages */
.footer-trust-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin:24px 0;padding:18px 0;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.footer-trust-links a{color:inherit;font-weight:750;text-decoration:none}
.footer-trust-links a:hover{text-decoration:underline;text-underline-offset:4px}
.trust-breadcrumb{display:flex;gap:9px;align-items:center;padding:18px max(5vw,28px);font-size:13px;color:#52665d;background:#f7f4ec}
.trust-breadcrumb a{color:#075d34;font-weight:800;text-underline-offset:3px}
.trust-page-main{padding:0 max(5vw,28px) 88px;background:#f7f4ec;color:#10261b}
.trust-page-hero{max-width:980px;padding:74px 0 44px}
.trust-page-hero h1{max-width:900px;margin:12px 0 22px;font-size:clamp(42px,6.2vw,82px);line-height:.96;letter-spacing:-.045em}
.trust-page-hero>p{max-width:780px;margin:0 0 20px;font-size:clamp(18px,2vw,24px);line-height:1.48;color:#42564c}
.trust-page-hero time,.trust-date{font-size:13px;color:#62736a}
.trust-page-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1180px}
.trust-card{padding:28px;border:1px solid #dbe5dd;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(23,55,40,.05)}
.trust-card h2{margin:8px 0 14px;font-size:clamp(24px,3vw,36px);line-height:1.05;letter-spacing:-.025em}
.trust-card p,.trust-card li{line-height:1.65;color:#42564c}
.trust-card ul{margin:0;padding-left:20px}
.trust-card li+li{margin-top:8px}
.trust-card a{color:#075d34;font-weight:800;text-underline-offset:3px}
.trust-label{font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#0c7c43}
.contact-card h2 a{font-size:clamp(31px,5vw,56px);text-decoration:none}
.trust-primary-link{display:inline-flex;gap:10px;align-items:center;margin-top:10px;padding:12px 18px;border-radius:999px;background:#063f2c;color:#fff!important;text-decoration:none}
.trust-link-grid,.method-grid{display:grid;gap:12px}
.trust-link-grid a,.method-grid>div{display:grid;gap:5px;padding:16px;border:1px solid #dbe5dd;border-radius:15px;background:#f8fbf9;text-decoration:none}
.trust-link-grid span,.method-grid span{font-size:14px;line-height:1.45;color:#52665d}
.formula-box{display:grid;gap:10px;margin:18px 0}
.formula-box code{display:block;overflow-x:auto;padding:15px;border-radius:13px;background:#10261b;color:#e9fff2;font-size:14px;line-height:1.45;white-space:nowrap}
@media(max-width:760px){
  .footer-trust-links{display:grid;gap:13px}
  .trust-page-main{padding:0 20px 62px}
  .trust-breadcrumb{padding:15px 20px;overflow:hidden;white-space:nowrap}
  .trust-breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis}
  .trust-page-hero{padding:52px 0 32px}
  .trust-page-content{grid-template-columns:1fr}
  .trust-card{padding:22px;border-radius:18px}
  .formula-box code{white-space:normal;overflow-wrap:anywhere}
}

/* v19: prices remain visible beside the calculator controls */
.calculator-price-preview{display:none;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.calculator-price-preview>div{min-width:0;padding:11px 12px;border:1px solid #cfe0d5;border-radius:13px;background:#f3f9f5}
.calculator-price-preview small{display:block;margin-bottom:4px;color:#5d6e65;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.calculator-price-preview strong{display:block;color:#075d34;font-size:clamp(16px,4.8vw,21px);line-height:1.1;white-space:nowrap}
@media(min-width:821px) and (max-width:1100px){
  .calculator-section{grid-template-columns:1fr;gap:40px}
  .calculator-panel{grid-template-columns:1.05fr .95fr}
}
@media(max-width:560px){
  .calculator-price-preview{display:grid}
}

/* BEGIN v18-hourly-only-income-trust */
.calculator-income-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:14px}
.calculator-income-cards>div{min-width:0;padding:12px 13px;border:1px solid #063f2c24;border-radius:14px;background:#fff9}
.calculator-income-cards small{margin-bottom:5px}
.calculator-income-cards strong{font-size:clamp(18px,2vw,27px);white-space:nowrap}
.income-hourly-table{min-width:520px!important}
.income-unavailable{display:grid;gap:6px;margin-top:24px;padding:20px 22px;border:1px solid #d8e3dc;border-left:5px solid #075d34;border-radius:18px;background:#fff;color:#183d2d}
.income-unavailable strong{font-size:18px}
.income-unavailable span{line-height:1.6;color:#42564c}
@media(max-width:560px){
  .calculator-income-cards{display:none}
  .income-hourly-table{min-width:440px!important}
  .income-unavailable{margin-top:18px;padding:17px 18px}
}
/* END v18-hourly-only-income-trust */

/* BEGIN income-evidence-20260814 */
.calculator-method-link{display:inline-flex;margin:0 0 14px;color:#063f2c;font-size:13px;font-weight:900;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}
.formula-box code{white-space:normal;overflow-wrap:anywhere;overflow-x:visible}
@media(max-width:700px){.income-table-wrap{overflow-x:visible}.income-table-wrap .income-hourly-table{width:100%!important;min-width:0!important;table-layout:fixed}.income-table-wrap th,.income-table-wrap td{padding:12px 10px}.income-table-wrap th:first-child{width:58%}.income-table-wrap thead th{font-size:11px}.income-table-wrap thead small{font-size:9px}.income-table-wrap tbody th{font-size:14px;overflow-wrap:anywhere}.income-table-wrap tbody td{font-size:14px}.income-table-wrap caption{padding:13px 12px;font-size:11px;line-height:1.45}}
/* END income-evidence-20260814 */
