/* eSIM Atlas — «легенда атласа» (консилиум дизайна 04.10.2026). Светлый лист атласа: бумага, вода
   с градусной сеткой в шапке, цена = ступень высоты 1–5. Системные шрифты, без JS, без теней и скруглений. */
:root{
  --papir:#fbfcf8;--voda:#e3eff2;--sit:#b9cdd2;--inkoust:#1f2b2e;--sedy:#4a5558;--odkaz:#17607a;--odkaz-h:#0f4a5f;
  --hranice:#b3343c;--s1:#cfe5c3;--s2:#e6e2ad;--s3:#efcb92;--s4:#d9a476;--s5:#b47652;
  --pismo:Optima,Candara,"Gill Sans","Gill Sans MT","Noto Sans","Segoe UI",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papir);color:var(--inkoust);font:17px/1.6 var(--pismo);font-variant-numeric:tabular-nums}
a{color:var(--odkaz);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--odkaz-h);text-decoration-thickness:2px}
.wrap{max-width:1000px;margin:0 auto;padding:0 20px}
i{font-style:italic}

/* шапка — вода с градусной сеткой */
.top{background-color:var(--voda);background-image:linear-gradient(rgba(185,205,210,.55) 1px,transparent 1px),linear-gradient(90deg,rgba(185,205,210,.55) 1px,transparent 1px);background-size:32px 32px;border-bottom:2px solid var(--inkoust)}
.top-in{display:flex;align-items:center;gap:22px;min-height:56px}
.logo{display:inline-flex;align-items:center;gap:9px;color:var(--inkoust);text-decoration:none;font-size:20px;letter-spacing:.02em;min-height:44px}
.logo b{font-weight:700;color:var(--odkaz)}
.znak{width:28px;height:28px;flex:none}
.menu{display:flex;gap:4px 20px;flex:1}
.menu a{color:var(--inkoust);text-decoration:none;font-size:15.5px;display:inline-flex;align-items:center;min-height:44px}
.menu a:hover{color:var(--odkaz);text-decoration:underline}
.jazyky{display:flex;gap:8px}
.jazyky a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:14px;letter-spacing:.08em;color:var(--sedy);text-decoration:none}
.jazyky a[aria-current]{color:var(--inkoust);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}

/* текст */
main.wrap{padding-top:14px;padding-bottom:56px}
.nad-h1{display:flex;justify-content:space-between;align-items:center;gap:6px 16px;flex-wrap:wrap}
.drobky ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 8px;font-size:14.5px;color:var(--sedy)}
.drobky li+li::before{content:"›";margin-right:8px;color:var(--sit)}
.drobky a{color:var(--sedy);display:inline-block}
.drobky li{padding:10px 0}
.jina{font-size:14.5px;padding:10px 0;font-style:italic}
h1{font-size:clamp(29px,4.4vw,42px);line-height:1.15;font-weight:700;letter-spacing:-.005em;margin:6px 0 10px}
h2{font-size:23px;line-height:1.25;font-weight:700;margin:44px 0 12px}
h3{font-size:18px;margin:22px 0 6px}
.lead{font-size:19px;color:var(--sedy);max-width:760px;margin:0 0 20px}
.mute{color:var(--sedy)}
.ok{color:#2c6a3e}
.pozn{font-size:15px;color:var(--sedy);margin-top:6px}
.text p,.zeme p{max-width:70ch}
.sip{font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;display:inline-block;padding:10px 0 2px}
.sip:hover{border-bottom-width:2px}

/* «Ve zkratce» — врезка-легенда в рамке */
.shrnuti{border:1.5px solid var(--inkoust);background:#fff;padding:16px 22px 14px;margin:0 0 8px}
.shrnuti>h2{margin:0 0 10px;font-size:13.5px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--sedy)}
.verdikt{display:grid;grid-template-columns:1fr 1fr;gap:0}
.v-sl{padding:0 20px 4px 0}
.v-esim{border-left:1px solid var(--sit);padding:0 0 4px 20px}
.v-sl h3{margin:0 0 4px;font-size:13.5px;text-transform:uppercase;letter-spacing:.16em;font-weight:700}
.v-esim h3{text-transform:none;letter-spacing:.06em;font-size:15px}
.v-cena{font-size:26px;margin:2px 0 0;line-height:1.25}
.v-cena b{font-weight:800}
.v-cena.ok{font-size:18px}
.v-kdo{margin:2px 0 0;color:var(--sedy);font-size:15.5px}
.v-esim p{margin:2px 0 0;color:var(--sedy);font-size:15.5px}
.shrnuti ul{margin:12px 0 0;padding:10px 0 0 20px;border-top:1px dotted var(--sit);font-size:15.5px}
.shrnuti li{margin:3px 0}
.varovani{border:1.5px dashed var(--hranice);padding:8px 12px;margin:4px 0;color:var(--inkoust);font-size:16px}
.varovani-t{color:var(--hranice);font-style:italic;white-space:normal}

/* таблицы — строки легенды */
.tab-obal{border-top:1.5px solid var(--inkoust);border-bottom:1.5px solid var(--inkoust)}
.tab{width:100%;border-collapse:collapse;font-size:16px}
.tab th,.tab td{padding:11px 12px;text-align:left;vertical-align:top;border-bottom:1px dotted var(--sit)}
.tab thead th{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--sedy);font-weight:700;border-bottom:1px solid var(--inkoust)}
.tab tbody tr:last-child>*{border-bottom:0}
.tab tbody th{font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:14.5px}
.tab tbody th a{color:var(--inkoust);text-decoration:none}
.tab tbody tr{position:relative}
.tab tbody th a::after{content:"";position:absolute;inset:0}
.tab tbody tr:hover>*{background:#f1f6f4}
.tab tbody th a:hover{color:var(--odkaz)}
.tab tbody td a{position:relative;z-index:1}
.tab b{white-space:nowrap}
.tab small{display:block;color:var(--sedy);font-size:14px;font-style:italic}
.tab .nej b{border-bottom:3px double var(--inkoust)}
.tab .mimo{background:repeating-linear-gradient(45deg,#ecece8 0 3px,var(--papir) 3px 6px)}
.mb{color:var(--sedy);white-space:nowrap}
.tab tr.reg th{background:var(--voda);font-size:12.5px;letter-spacing:.16em;color:var(--inkoust);padding:6px 12px;border-bottom:1px solid var(--sit)}
.tab tr.reg:hover>*{background:var(--voda)}
.tab-home td.c1{white-space:nowrap}
.overeno{font-size:14.5px;color:var(--sedy);font-style:italic;margin:10px 0 0}

/* ступени цены */
.st{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:9px;font-size:12px;font-weight:700;font-style:normal;border:1px solid var(--inkoust);vertical-align:-3px;color:var(--inkoust)}
.st-1{background:var(--s1)}.st-2{background:var(--s2)}.st-3{background:var(--s3)}.st-4{background:var(--s4)}.st-5{background:var(--s5);color:#fff}
.st-eu{background:var(--voda);font-size:9px;letter-spacing:0}
.st-mb{background:repeating-linear-gradient(45deg,#c9c9c2 0 2px,var(--papir) 2px 5px)}
.legenda{margin-top:18px;font-size:15px;color:var(--sedy)}
.legenda h3{font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--inkoust);margin:0 0 4px}
.legenda p{margin:0 0 8px;max-width:72ch}
.meritko{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;padding:0;margin:0}
.meritko li{display:flex;align-items:center}

/* полный ценник — свёрнут */
.cenik{margin-top:30px;border-top:1px solid var(--inkoust);border-bottom:1px solid var(--inkoust)}
.cenik summary{cursor:pointer;padding:12px 0;list-style:none;display:flex;flex-direction:column}
.cenik summary::-webkit-details-marker{display:none}
.cenik summary h2{margin:0;font-size:20px;display:inline}
.cenik summary h2::before{content:"＋ ";color:var(--odkaz)}
.cenik[open] summary h2::before{content:"－ "}
.cenik summary span{color:var(--sedy);font-size:15px;font-style:italic}
.cenik .tab-obal{border-bottom:0;margin-bottom:6px}

/* рамки: eSIM, «назад к сравнению», реквизиты */
.ramec{border:1.5px solid var(--inkoust);padding:4px 22px 16px;margin-top:40px;background:#fff}
.ramec h2{margin-top:16px}
.esim{background:var(--voda)}
.btn{display:inline-flex;align-items:center;min-height:44px;padding:8px 18px;border:2px solid var(--odkaz);color:var(--odkaz);background:transparent;font-weight:700;text-decoration:none;font-size:16px}
.btn:hover{background:var(--odkaz);color:#fff}
.reklama-stitek{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--hranice);border:1px solid var(--hranice);padding:1px 7px;margin:0}

.tipy{padding-left:22px}
.tipy li{margin:6px 0;max-width:75ch}
.faq h3{margin-top:18px}
.faq p{margin:4px 0 0;color:var(--sedy);max-width:75ch}
.dlazdice{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));border-top:1px dotted var(--sit)}
.dlazdice a{display:flex;align-items:center;min-height:48px;padding:8px 4px;border-bottom:1px dotted var(--sit);color:var(--inkoust);text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:14.5px;font-weight:600}
.dlazdice a::after{content:"›";margin-left:auto;padding-right:8px;color:var(--odkaz)}
.dlazdice a:hover{color:var(--odkaz)}
.zdroje{font-size:15px;color:var(--sedy)}
.zdroje ul{padding-left:20px}
.zdroj-zeme{color:var(--sedy);font-size:14.5px;font-style:italic}
.zdroj-zeme a{overflow-wrap:anywhere}
.prepinac{margin:-2px 0 12px;font-size:15.5px}
.prepinac a,.prepinac b{display:inline-block;padding:8px 2px}
.zona-spol{font-style:italic;color:var(--sedy);margin:0 0 10px}
.regiony{columns:2 260px;column-gap:32px;margin-top:20px}
.region{break-inside:avoid;margin-bottom:12px}
.region h3{font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--sedy);margin:8px 0 2px}
.region ul{list-style:none;padding:0;margin:0}
.region a{display:inline-block;padding:7px 0}

/* подвал — рамка листа атласа */
.pata{border-top:1px solid var(--inkoust);box-shadow:0 -4px 0 0 var(--papir),0 -5px 0 0 var(--sit);margin-top:8px;font-size:14.5px;color:var(--sedy);padding:22px 0 26px}
.pata-sloupce{display:grid;grid-template-columns:1fr 2fr 1fr;gap:20px 32px;margin-bottom:12px}
.pata h2{font-size:12.5px;text-transform:uppercase;letter-spacing:.16em;color:var(--inkoust);margin:0 0 6px}
.pata ul{list-style:none;padding:0;margin:0}
.pata li a,.pata-dest a{display:inline-block;padding:4px 0}
.pata-dest p{margin:0;line-height:1.5}
.pata-jazyky{display:flex;gap:8px;margin:10px 0 0}
.pata-jazyky a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--sit);text-decoration:none;color:var(--sedy)}
.pata-jazyky a[aria-current]{color:var(--inkoust);border-color:var(--inkoust);font-weight:700}
.pata-list{font-size:13.5px}

/* корень и 404 */
.koren{max-width:680px;padding-top:9vh;padding-bottom:9vh;text-align:center}
.velke{font-size:34px;justify-content:center}
.velke .znak{width:44px;height:44px}
.koren h1{font-size:15px;color:var(--sedy);font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin:6px 0 14px}
.koren-p{margin:2px 0;color:var(--sedy);font-style:italic}
.volba{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:0;text-align:left;border-top:1.5px solid var(--inkoust);border-bottom:1.5px solid var(--inkoust)}
.volba li+li{border-top:1px dotted var(--sit)}
.volba a{display:grid;grid-template-columns:1fr auto;gap:2px 16px;padding:16px 8px;text-decoration:none;color:var(--inkoust)}
.volba a:hover{background:#f1f6f4}
.volba b{font-size:21px;text-transform:uppercase;letter-spacing:.12em}
.volba span{color:var(--sedy);font-size:15px;grid-column:1}
.volba i{grid-row:1/3;grid-column:2;align-self:center;color:var(--odkaz);font-size:14px;letter-spacing:.1em}

@media (max-width:700px){
  body{font-size:16px}
  .top-in{flex-wrap:wrap;gap:0 10px;min-height:0}
  .logo{order:1}
  .jazyky{order:2;margin-left:auto;gap:2px}
  .menu{order:3;flex-basis:100%;gap:0 18px;overflow-x:auto;white-space:nowrap;border-top:1px solid var(--sit)}
  .menu a{min-height:40px;font-size:15px}
  .lead{font-size:17px}
  h2{font-size:21px;margin-top:36px}
  .shrnuti{padding:14px 16px 12px}
  .verdikt{grid-template-columns:1fr}
  .v-sl{padding:0 0 10px}
  .v-esim{border-left:0;border-top:1px solid var(--sit);padding:10px 0 2px}
  .v-cena{font-size:23px}
  .tab thead{display:none}
  .tab,.tab tbody,.tab tr,.tab th,.tab td{display:block;width:100%}
  .tab tr{border-bottom:1px dotted var(--sit);padding:8px 0}
  .tab tbody tr:last-child{border-bottom:0}
  .tab th,.tab td{border:0;padding:3px 6px}
  .tab td[data-l]::before{content:attr(data-l);display:block;font-size:13px;color:var(--sedy);font-style:italic}
  .tab tbody th{padding-top:6px}
  /* списки (главная, хабы): одна строка на страну */
  .tab-seznam tr{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:0 10px;padding:7px 0}
  .tab-seznam tr.reg{display:block;padding:0}
  .tab-seznam td[data-l]::before{display:none}
  .tab-seznam td{width:auto}
  .tab-seznam td small{display:inline;margin-left:6px}
  .tab-home td.c1{text-align:right;white-space:normal}
  .tab-home td.c1 b{white-space:nowrap}
  .tab-home td.c5{display:none}
  .tab-home td.kdo{grid-column:1/-1;font-size:14px;color:var(--sedy);padding-top:0}
  .tab-seznam td.zona{text-align:right;font-size:13.5px;color:var(--sedy);font-style:italic}
  .tab-seznam td.bal{grid-column:1/-1}
  .tab-seznam td.payg{grid-column:1/-1;order:5;font-size:14px;padding-top:0}
  .tab-seznam td.payg .mb{white-space:normal}
  /* таблица 1/5 GB: оператор и две цены в строку */
  .tab-sum tr{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}
  .tab-sum tbody th{grid-column:1/-1}
  .dlazdice{grid-template-columns:1fr 1fr;column-gap:14px}
  .pata-sloupce{grid-template-columns:1fr}
  .ramec{padding:2px 16px 14px}
}
