.fx{display:flex}
.col{display:flex;flex-direction:column}
.grid{display:grid}
.ac{align-items:center}
.jc{justify-content:center}
.jb{justify-content:space-between}
.f1{flex:1}
.noshrink{flex-shrink:0}
.wrap{flex-wrap:wrap}
.fw5{font-weight:500}
.fw6{font-weight:600}
.fw7{font-weight:700}
.fw8{font-weight:800}
.fs11{font-size:11px}
.fs12{font-size:12px}
.fs13{font-size:13px}
.fs14{font-size:14px}
.fs15{font-size:15px}
.fs16{font-size:16px}
.fs20{font-size:20px}
.fs22{font-size:22px}
.upper{text-transform:uppercase}
.tc{text-align:center}
.nowrap{white-space:nowrap}
.gap8{gap:8px}
.gap10{gap:10px}
.gap12{gap:12px}
.gap16{gap:16px}
.gap24{gap:24px}
.m0{margin:0}
.mt8{margin-top:8px}
.mt12{margin-top:12px}
.mt16{margin-top:16px}
.mb8{margin-bottom:8px}
.mb12{margin-bottom:12px}
.mb16{margin-bottom:16px}
.posrel{position:relative}
.posabs{position:absolute}
.round{border-radius:50%}
.ohide{overflow:hidden}
.bbox{box-sizing:border-box}
.pointer{cursor:pointer}
.w100{width:100%}
.b0{border:none}
body { margin: 0; background: #FFFFFF; }
a { color: #3C66DD; text-decoration: none; }
a:hover { color: #1E2C8C; }
.ui { font-family: 'Space Grotesk', 'Helvetica Neue', Helvetica, sans-serif; }
.mono { font-family: 'JetBrains Mono', ui-monospace, Menlo, monospace; }
.meta { font-family: 'JetBrains Mono', ui-monospace, Menlo, monospace; font-size: 11px; letter-spacing: 0.06em; color: #6B7280; }
.sq { aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; border-right: 1px solid #E4E6EF; border-bottom: 1px solid #E4E6EF; }
.gap6{gap:6px}
.gap14{gap:14px}
.gap18{gap:18px}
.gap20{gap:20px}
.gap22{gap:22px}
.gap26{gap:26px}
.gap28{gap:28px}
.gap30{gap:30px}
.gap40{gap:40px}
.gap56{gap:56px}
/* pad-compress */ .dc-page [style*="padding: 0px 40px 40px"]{padding:0px 40px 34px 40px!important}
.dc-page [style*="padding: 0px 40px 40px"]{padding:0px 40px 34px 40px!important}
.dc-page [style*="padding: 20px 0px 40px"]{padding:20px 0px 34px 0px!important}
.dc-page [style*="padding: 22px 0px 40px"]{padding:22px 0px 34px 0px!important}
.dc-page [style*="padding: 26px 24px 40px"]{padding:26px 24px 34px 24px!important}
.dc-page [style*="padding: 26px 40px 40px"]{padding:26px 40px 34px 40px!important}
.dc-page [style*="padding: 30px 40px 38px"]{padding:30px 40px 34px 40px!important}
.dc-page [style*="padding: 30px 40px 44px"]{padding:30px 40px 34px 40px!important}
.dc-page [style*="padding: 32px 32px 40px"]{padding:32px 32px 34px 32px!important}
.dc-page [style*="padding: 32px 36px 40px"]{padding:32px 36px 34px 36px!important}
.dc-page [style*="padding: 32px 40px 38px"]{padding:32px 40px 34px 40px!important}
.dc-page [style*="padding: 36px 36px 40px"]{padding:34px 36px 34px 36px!important}
.dc-page [style*="padding: 36px 40px 40px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 36px 40px 44px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 38px 36px 40px"]{padding:34px 36px 34px 36px!important}
.dc-page [style*="padding: 38px 40px 34px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 38px 40px 40px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 38px 40px 42px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 40px 40px 34px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 44px 40px 36px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 44px 40px 38px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 44px 40px 40px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 44px 40px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 46px 40px 40px"]{padding:34px 40px 34px 40px!important}
.dc-page [style*="padding: 46px 40px 42px"]{padding:34px 40px 34px 40px!important}
a[href]{cursor:pointer}
.dh-burger { display: none; }
.dh-util, .dh-bar, .dh-bar .fx { flex-wrap: nowrap !important; }
.dh-bar .fx { flex-shrink: 0; }
.df-bottom { flex-wrap: wrap; }
.cell { aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; border-right: 1px solid #EEF0F8; border-bottom: 1px solid #EEF0F8; }
.lbl { font-family: 'JetBrains Mono', ui-monospace, Menlo, monospace; font-size: 10.5px; letter-spacing: 0.12em; color: #6B7280; }
.dc-page [style*="padding: 46px 40px 34px"]{padding:34px 40px 34px 40px!important}
/* добор build.py */
.dc-page [style*="padding: 24px 32px 36px;"]{padding: 24px 32px 34px 32px!important}
.dc-page [style*="padding: 26px 0px 40px;"]{padding: 26px 0px 34px 0px!important}
.dc-page [style*="padding: 28px 32px 36px;"]{padding: 28px 32px 34px 32px!important}
.dc-page [style*="padding: 28px 40px 36px;"]{padding: 28px 40px 34px 40px!important}
.dc-page [style*="padding: 30px 32px 36px;"]{padding: 30px 32px 34px 32px!important}
.dc-page [style*="padding: 34px 28px 36px;"]{padding: 34px 28px 34px 28px!important}
@media (max-width:1400px) {
.dc-page{width:100%!important;max-width:1360px!important}
}
@media (max-width:1120px) {
.dc-page [style*="repeat(4, minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.dc-page [style*="repeat(7, minmax"]{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.dc-page [style*="repeat(8, minmax"]{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.dc-page img[style*="aspect-ratio"]{max-width:340px!important;margin-left:auto!important;margin-right:auto!important}
.dc-page [style*="width: 238px"],.dc-page [style*="width: 242px"],.dc-page [style*="width: 250px"],.dc-page [style*="width: 264px"],.dc-page [style*="width: 398px"],.dc-page [style*="width: 400px"],.dc-page [style*="width: 420px"],.dc-page [style*="width: 430px"],.dc-page [style*="width: 452px"],.dc-page [style*="width: 470px"],.dc-page [style*="width: 520px"],.dc-page [style*="width: 560px"],.dc-page [style*="width: 640px"],.dc-page [style*="width: 700px"]{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;border-left:0!important;border-right:0!important}
.dc-page .fx:has(> [style*="width: 238px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 238px"]),.dc-page .fx:has(> [style*="width: 242px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 242px"]),.dc-page .fx:has(> [style*="width: 250px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 250px"]),.dc-page .fx:has(> [style*="width: 264px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 264px"]),.dc-page .fx:has(> [style*="width: 398px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 398px"]),.dc-page .fx:has(> [style*="width: 400px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 400px"]),.dc-page .fx:has(> [style*="width: 420px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 420px"]),.dc-page .fx:has(> [style*="width: 430px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 430px"]),.dc-page .fx:has(> [style*="width: 452px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 452px"]),.dc-page .fx:has(> [style*="width: 470px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 470px"]),.dc-page .fx:has(> [style*="width: 520px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 520px"]),.dc-page .fx:has(> [style*="width: 560px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 560px"]),.dc-page .fx:has(> [style*="width: 640px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 640px"]),.dc-page .fx:has(> [style*="width: 700px"]),.dc-page a[style*="display: flex"]:has(> [style*="width: 700px"]){flex-wrap:wrap!important}
.dc-page [style*="height: 88px"]{height:auto!important;min-height:88px!important;padding-top:16px!important;padding-bottom:16px!important;row-gap:12px!important}
.dc-page [style*="max-width: 150px"],.dc-page [style*="max-width: 280px"],.dc-page [style*="max-width: 330px"],.dc-page [style*="max-width: 352px"],.dc-page [style*="max-width: 420px"],.dc-page [style*="max-width: 430px"],.dc-page [style*="max-width: 440px"],.dc-page [style*="max-width: 470px"],.dc-page [style*="max-width: 480px"],.dc-page [style*="max-width: 520px"],.dc-page [style*="max-width: 530px"],.dc-page [style*="max-width: 560px"],.dc-page [style*="max-width: 620px"]{max-width:none!important}
.ab-stats{flex-direction:row!important}
.ab-stat{flex:1;border-bottom:0!important;border-right:1px solid #E4E6EF}
.ab-stat:last-child{border-right:0}
.dc-page [style*="max-width: 760px"]{max-width:none!important}
.dc-page [style*="max-width: 720px"]{max-width:none!important}
}
@media (max-width:820px) {
.dc-page [style*="width: 214px"],.dc-page [style*="width: 230px"],.dc-page [style*="width: 238px"],.dc-page [style*="width: 242px"],.dc-page [style*="width: 250px"],.dc-page [style*="width: 264px"],.dc-page [style*="width: 288px"],.dc-page [style*="width: 300px"],.dc-page [style*="width: 352px"],.dc-page [style*="width: 398px"],.dc-page [style*="width: 400px"],.dc-page [style*="width: 420px"],.dc-page [style*="width: 430px"],.dc-page [style*="width: 452px"],.dc-page [style*="width: 470px"],.dc-page [style*="width: 520px"],.dc-page [style*="width: 560px"],.dc-page [style*="width: 640px"],.dc-page [style*="width: 700px"]{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;border-left:0!important;border-right:0!important}
.dc-page .fx,.dc-page a[style*="display: flex"]{flex-wrap:wrap}
.dc-page [style*="repeat(3, minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.dc-page [style*="repeat(8, minmax"]{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.dc-page h1{font-size:36px!important}
.dc-page [style*="max-width: 352px"],.dc-page [style*="max-width: 330px"]{max-width:none!important}
.dc-page [style*="padding: 0px 28px 34px"]{padding:0px 28px 28px 28px!important}
.dc-page [style*="padding: 0px 40px 34px"]{padding:0px 24px 28px 24px!important}
.dc-page [style*="padding: 0px 40px 40px"]{padding:0px 24px 28px 24px!important}
.dc-page [style*="padding: 20px 0px 40px"]{padding:20px 0px 28px 0px!important}
.dc-page [style*="padding: 22px 0px 40px"]{padding:22px 0px 28px 0px!important}
.dc-page [style*="padding: 24px 32px 36px"]{padding:24px 24px 28px 24px!important}
.dc-page [style*="padding: 26px 24px 40px"]{padding:26px 24px 28px 24px!important}
.dc-page [style*="padding: 26px 32px 34px"]{padding:26px 24px 28px 24px!important}
.dc-page [style*="padding: 26px 40px 34px"]{padding:26px 24px 28px 24px!important}
.dc-page [style*="padding: 26px 40px 40px"]{padding:26px 24px 28px 24px!important}
.dc-page [style*="padding: 28px 32px 36px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 28px 40px 34px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 28px 40px 36px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 30px 26px 26px"]{padding:28px 26px 26px 26px!important}
.dc-page [style*="padding: 30px 28px 34px"]{padding:28px 28px 28px 28px!important}
.dc-page [style*="padding: 30px 32px 36px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 30px 36px 32px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 30px 40px 26px"]{padding:28px 24px 26px 24px!important}
.dc-page [style*="padding: 30px 40px 38px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 30px 40px 44px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 30px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 32px 32px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 32px 36px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 32px 40px 38px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 32px;"]{padding:28px 24px!important}
.dc-page [style*="padding: 34px 28px 30px"]{padding:28px 28px 28px 28px!important}
.dc-page [style*="padding: 34px 40px 30px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 34px 40px 32px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 34px 40px 36px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 34px 28px 36px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 34px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 34px;"]{padding:28px 24px!important}
.dc-page [style*="padding: 36px 36px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 36px 40px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 36px 40px 44px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 36px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 38px 36px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 38px 40px 34px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 38px 40px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 38px 40px 42px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 40px 40px 34px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 44px 40px 36px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 44px 40px 38px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 44px 40px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 44px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 46px 40px 40px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 46px 40px 42px"]{padding:28px 24px 28px 24px!important}
.dc-page [style*="padding: 6px 40px 30px"]{padding:6px 24px 28px 24px!important}
.dc-page [style*="padding: 46px 40px 34px"]{padding:28px 24px 28px 24px!important}
/* добор build.py */
.dc-page [style*="padding: 0px 20px 0px 40px;"]{padding: 0px 20px 0px 24px!important}
.dc-page [style*="padding: 0px 24px 16px 40px;"]{padding: 0px 24px 16px 24px!important}
.dc-page [style*="padding: 0px 28px;"]{padding: 0px 24px 0px 24px!important}
.dc-page [style*="padding: 0px 40px;"]{padding: 0px 24px 0px 24px!important}
.dc-page [style*="padding: 11px 32px;"]{padding: 11px 24px 11px 24px!important}
.dc-page [style*="padding: 12px 28px;"]{padding: 12px 24px 12px 24px!important}
.dc-page [style*="padding: 13px 40px;"]{padding: 13px 24px 13px 24px!important}
.dc-page [style*="padding: 14px 28px;"]{padding: 14px 24px 14px 24px!important}
.dc-page [style*="padding: 16px 40px;"]{padding: 16px 24px 16px 24px!important}
.dc-page [style*="padding: 18px 24px 20px 40px;"]{padding: 18px 24px 20px 24px!important}
.dc-page [style*="padding: 18px 28px 26px;"]{padding: 18px 24px 26px 24px!important}
.dc-page [style*="padding: 18px 32px 22px;"]{padding: 18px 24px 22px 24px!important}
.dc-page [style*="padding: 18px 32px;"]{padding: 18px 24px 18px 24px!important}
.dc-page [style*="padding: 20px 40px 18px;"]{padding: 20px 24px 18px 24px!important}
.dc-page [style*="padding: 20px 40px 22px;"]{padding: 20px 24px 22px 24px!important}
.dc-page [style*="padding: 22px 26px;"]{padding: 22px 24px 22px 24px!important}
.dc-page [style*="padding: 24px 40px 20px;"]{padding: 24px 24px 20px 24px!important}
.dc-page [style*="padding: 26px 0px 40px;"]{padding: 26px 0px 28px 0px!important}
.dc-page [style*="padding: 26px 28px 30px;"]{padding: 26px 24px 28px 24px!important}
.dc-page [style*="padding: 26px 28px;"]{padding: 26px 24px 26px 24px!important}
.dc-page [style*="padding: 26px 36px;"]{padding: 26px 24px 26px 24px!important}
.dc-page [style*="padding: 26px 40px 22px;"]{padding: 26px 24px 22px 24px!important}
.dc-page [style*="padding: 28px 40px 24px;"]{padding: 28px 24px 24px 24px!important}
.dc-page [style*="padding: 34px 40px 34px;"]{padding: 28px 24px 28px 24px!important}
}
@media (max-width:640px) {
.dc-page [style*="minmax"],.dc-page [style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}
.dc-page{text-align:center}
.dc-page .fx{justify-content:center!important}
.dc-page p{margin-left:auto!important;margin-right:auto!important}
.dc-page .fx[style*="margin-left: auto"]{margin-right:auto!important}
.dc-page .fx.col{align-items:center!important}
.dc-page h1{font-size:30px!important}
.dc-page [style*="padding: 0px 40px"]{padding-left:20px!important;padding-right:20px!important}
.dc-page [style*="repeat(8, minmax"]{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.dc-page img[style*="aspect-ratio"]{max-width:300px!important}
.dc-page [style*="padding: 0px 28px 34px"]{padding:0px 20px 18px 20px!important}
.dc-page [style*="padding: 0px 40px 26px"]{padding:0px 20px 18px 20px!important}
.dc-page [style*="padding: 0px 40px 34px"]{padding:0px 20px 18px 20px!important}
.dc-page [style*="padding: 0px 40px 40px"]{padding:0px 20px 18px 20px!important}
.dc-page [style*="padding: 18px 28px 26px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 18px 32px 22px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 20px 0px 40px"]{padding:18px 0px 18px 0px!important}
.dc-page [style*="padding: 22px 0px 40px"]{padding:18px 0px 18px 0px!important}
.dc-page [style*="padding: 22px 26px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 22px 40px 12px"]{padding:18px 20px 12px 20px!important}
.dc-page [style*="padding: 22px;"]{padding:18px 22px!important}
.dc-page [style*="padding: 24px 32px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 24px 40px 20px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 24px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 24px 40px"]{padding:18px 24px 18px 24px!important}
.dc-page [style*="padding: 26px 28px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 32px 34px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 40px 22px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 40px 34px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 40px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 28px 30px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 28px 32px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 28px 32px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 28px 40px 24px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 28px 40px 34px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 28px 40px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 26px 26px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 28px 34px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 32px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 36px 32px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 40px 26px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 40px 38px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 40px 44px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 30px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 32px 32px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 32px 36px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 32px 40px 38px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 32px;"]{padding:18px 20px!important}
.dc-page [style*="padding: 34px 28px 30px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px 40px 30px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px 40px 32px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px 40px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px 28px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px;"]{padding:18px 20px!important}
.dc-page [style*="padding: 36px 36px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 36px 40px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 36px 40px 44px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 36px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 38px 36px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 38px 40px 34px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 38px 40px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 38px 40px 42px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 40px 40px 34px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 44px 40px 36px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 44px 40px 38px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 44px 40px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 44px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 46px 40px 40px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 46px 40px 42px"]{padding:18px 20px 18px 20px!important}
.dc-page [style*="padding: 6px 40px 30px"]{padding:6px 20px 18px 20px!important}
.dc-page [style*="gap: 6px 30px"]{margin-top:16px!important;padding-top:14px!important}
.ab-stats{flex-direction:column!important}
.ab-stat{border-right:0!important;border-bottom:1px solid #E4E6EF!important}
.dc-page [style*="padding: 46px 40px 34px"]{padding:18px 20px 18px 20px!important}
/* добор build.py */
.dc-page [style*="padding-top: 20px;"]{padding-top: 18px!important}
.dc-page [style*="padding-top: 22px;"]{padding-top: 18px!important}
.dc-page [style*="padding-top: 24px;"]{padding-top: 18px!important}
.dc-page [style*="padding: 0px 20px 0px 40px;"]{padding: 0px 20px 0px 20px!important}
.dc-page [style*="padding: 0px 22px 12px;"]{padding: 0px 20px 12px 20px!important}
.dc-page [style*="padding: 0px 22px;"]{padding: 0px 20px 0px 20px!important}
.dc-page [style*="padding: 0px 24px 12px;"]{padding: 0px 20px 12px 20px!important}
.dc-page [style*="padding: 0px 24px 16px 40px;"]{padding: 0px 20px 16px 20px!important}
.dc-page [style*="padding: 0px 24px;"]{padding: 0px 20px 0px 20px!important}
.dc-page [style*="padding: 0px 28px;"]{padding: 0px 20px 0px 20px!important}
.dc-page [style*="padding: 11px 22px;"]{padding: 11px 20px 11px 20px!important}
.dc-page [style*="padding: 11px 32px;"]{padding: 11px 20px 11px 20px!important}
.dc-page [style*="padding: 12px 24px;"]{padding: 12px 20px 12px 20px!important}
.dc-page [style*="padding: 12px 28px;"]{padding: 12px 20px 12px 20px!important}
.dc-page [style*="padding: 13px 40px;"]{padding: 13px 20px 13px 20px!important}
.dc-page [style*="padding: 14px 28px;"]{padding: 14px 20px 14px 20px!important}
.dc-page [style*="padding: 16px 40px;"]{padding: 16px 20px 16px 20px!important}
.dc-page [style*="padding: 18px 24px 20px 40px;"]{padding: 18px 20px 18px 20px!important}
.dc-page [style*="padding: 18px 32px;"]{padding: 18px 20px 18px 20px!important}
.dc-page [style*="padding: 20px 22px;"]{padding: 18px 20px 18px 20px!important}
.dc-page [style*="padding: 20px 40px 18px;"]{padding: 18px 20px 18px 20px!important}
.dc-page [style*="padding: 20px 40px 22px;"]{padding: 18px 20px 18px 20px!important}
.dc-page [style*="padding: 26px 0px 40px;"]{padding: 18px 0px 18px 0px!important}
.dc-page [style*="padding: 26px 28px 30px;"]{padding: 18px 20px 18px 20px!important}
.dc-page [style*="padding: 34px 40px 34px;"]{padding: 18px 20px 18px 20px!important}
}
@media (max-width: 1120px) {
.dh-bar a.dh-search { width: 40px !important; min-width: 40px !important; max-width: 40px !important; padding: 0 !important; justify-content: center; flex-shrink: 0; }
.dh-bar a.dh-search span { display: none !important; }
.df-top { flex-wrap: wrap !important; gap: 32px !important; }
.df-brand { width: 100% !important; min-width: 0 !important; }
.df-cols { flex-wrap: wrap !important; gap: 28px !important; width: 100% !important; }
.df-col { flex: 1 1 0 !important; min-width: 0 !important; }
.df-brand { flex-shrink: 1 !important; }
}
@media (max-width: 820px) {
.dh-nav { display: none !important; }
.dh-burger { display: flex !important; }
.dh-util { font-size: 9.5px !important; }
.dh-util-b { display: none !important; }
}
@media (max-width: 700px) {
.dh-bar { gap: 14px !important; padding: 0 20px !important; }
.dh-util { padding: 0 20px !important; }
.dh-acct { display: none !important; }
}
@media (max-width: 520px) {
.dh-bar { gap: 10px !important; padding: 0 16px !important; }
.dh-util { display: none !important; }
.dh-wish { display: none !important; }
.dh-total { display: none !important; }
}
@media (max-width: 640px) {
.df-top { text-align: center; align-items: center !important; gap: 24px !important; padding: 30px 20px 24px !important; }
.df-brand { display: flex; flex-direction: column; align-items: center; }
.df-brand > a { display: flex !important; justify-content: center; }
.df-top .fx { justify-content: center !important; }
.df-cols { gap: 20px !important; }
.df-col { width: 100% !important; flex: 0 0 100% !important; }
.df-col .fx.col { align-items: center; }
.df-bottom { justify-content: center !important; text-align: center; padding: 16px 20px !important; row-gap: 14px; }
.df-bottom > * { margin-left: 0 !important; }
}

/* ---- добавлено при статической сборке (см. REPORT.md) ---- */
html { -webkit-text-size-adjust: 100%; }
.skip-link { position: absolute; left: -9999px; top: 0; z-index: 100; background: #080A1E; color: #fff;
  padding: 10px 16px; font: 500 13px/1 'Space Grotesk', sans-serif; }
.skip-link:focus { left: 0; color: #fff; }
/* Кольцо фокуса. Синее #3C66DD на синей кнопке #3C66DD давало 1:1 — цвет
   кольца выбирается по подложке, а не по элементу: чернила на светлом,
   белое внутри тёмных полос и подвала. */
:focus-visible { outline: 2px solid #080A1E; outline-offset: 2px; }
footer :focus-visible,
[style*="background: rgb(8, 10, 30)"] :focus-visible,
[style*="background: rgb(20, 24, 51)"] :focus-visible { outline-color: #FFFFFF; }

/* карточка-ссылка: ховер из README (в прототипе правила не было) */
a.dc-card { transition: background-color .12s linear, border-color .12s linear; }
a.dc-card:hover { border-color: #3C66DD !important; background: #F6F7FB !important; }

/* мобильный ящик навигации. Орган управления — сам чекбокс поверх иконки:
   Tab и Space работают нативно, без JS. Раскрытие — на :has(), как и остальной
   адаптив бандла. JS ниже только добавляет Escape и синхронизирует aria. */
.dh-menu-state { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0;
  opacity: 0; cursor: pointer; z-index: 1; }
.dh-drawer { display: none; }
.dh-burger:has(.dh-menu-state:focus-visible) { outline: 2px solid #3C66DD; outline-offset: 2px; }
@media (max-width: 820px) {
  .dh-bar:has(.dh-menu-state:checked) ~ .dh-drawer { display: block; }
  .dh-drawer nav { border-bottom: 1px solid #080A1E; }
  .dh-drawer a { display: block; padding: 14px 20px; min-height: 40px; box-sizing: border-box;
    border-bottom: 1px solid #E4E6EF; font-family: 'JetBrains Mono', ui-monospace, monospace;
    font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; color: #080A1E;
    text-align: left; text-decoration: none; }
  .dh-drawer a:last-child { border-bottom: 0; }
  .dh-drawer a[aria-current="page"] { color: #3C66DD; }
}
@media print { .dh-drawer, .dh-burger, .skip-link { display: none !important; } }

/* тач-цели на мобильном (§8 VERIFY: ничего интерактивного ниже 40x40 на 390) */
@media (max-width: 640px) {
  .skip-link { min-height: 40px; display: inline-flex; align-items: center; box-sizing: border-box; }
  .dc-page a { min-height: 40px; }
  .dc-page a, header a { min-width: 40px; }
  .dc-page nav a, .dc-page a[style*="display: inline-flex"] { justify-content: center; }
  .dc-page a[style*="display: flex"], .dc-page a[style*="display: block"] { align-items: center; }
  footer a { display: flex; align-items: center; justify-content: center; min-height: 40px; }
  /* строчная ссылка в предложении: тач-зона растёт вниз и вверх, строка не едет */
  .dc-inline-link { display: inline-block; min-width: 40px; text-align: center;
    padding: 12px 0; margin: -12px 0; }
  header a { align-items: center; min-height: 40px; }
}

/* согласие на cookie: по категориям, с раздельным opt-in (C5 чеклиста эквайера) */
.dc-cookie { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: #FFFFFF;
  border-top: 1px solid #080A1E; max-height: 82vh; overflow-y: auto;
  /* баннер лежит вне .ui, поэтому шрифт задаём явно — иначе тут вылезает засечный дефолт */
  font-family: 'Space Grotesk', 'Helvetica Neue', Helvetica, sans-serif; }
.dc-cookie[hidden] { display: none; }
.dc-ck-inner { max-width: 1360px; margin: 0 auto; padding: 20px 40px 22px; box-sizing: border-box;
  display: flex; gap: 32px; align-items: flex-start; }
.dc-ck-head { flex: 0 0 340px; }
.dc-ck-eyebrow { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px;
  letter-spacing: 0.16em; color: #3C66DD; }
.dc-ck-h { font-size: 19px; font-weight: 700; letter-spacing: -0.02em; margin-top: 8px; color: #080A1E; }
.dc-ck-p { font-size: 13px; line-height: 1.55; color: #23263D; margin: 8px 0 0; }
.dc-ck-p a { color: #3C66DD; text-decoration: underline; }
.dc-ck-p a.dc-inline-link { min-height: 40px; }
.dc-ck-cats { flex: 1 1 auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 24px; }
.dc-ck-row { display: flex; gap: 10px; align-items: flex-start; padding: 9px 0; min-height: 40px;
  box-sizing: border-box; cursor: pointer; position: relative; }
/* сам чекбокс растянут на всю строку: тач-цель = строка, а не квадратик 16px,
   и при этом он остаётся настоящим input — Tab и Space работают нативно */
.dc-ck-row input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0;
  opacity: 0; cursor: pointer; }
.dc-ck-box { width: 16px; height: 16px; border: 1px solid #E4E6EF; background: #FFFFFF;
  flex-shrink: 0; margin-top: 2px; display: block; }
.dc-ck-row input:checked ~ .dc-ck-box { border-color: #3C66DD; background: #3C66DD; }
.dc-ck-row input:checked ~ .dc-ck-box::after { content: ''; display: block; width: 8px; height: 4px;
  margin: 4px auto 0; border-left: 2px solid #FFFFFF; border-bottom: 2px solid #FFFFFF;
  transform: rotate(-45deg); }
.dc-ck-row input:disabled ~ .dc-ck-box { border-color: #6B7280; background: #6B7280; }
.dc-ck-row input:focus-visible ~ .dc-ck-box { outline: 2px solid #080A1E; outline-offset: 2px; }
.dc-ck-text { font-size: 13px; line-height: 1.5; color: #23263D; }
.dc-ck-text b { display: block; font-weight: 700; color: #080A1E; }
.dc-ck-text i { font-style: normal; color: #4E5563; font-size: 12.5px; }
.dc-ck-actions { flex: 0 0 auto; display: flex; flex-direction: column; gap: 8px; }
.dc-ck-btn { min-height: 40px; min-width: 190px; padding: 0 18px; border: 1px solid #080A1E;
  background: #FFFFFF; color: #080A1E; font: 500 13.5px/1 'Space Grotesk', 'Helvetica Neue', sans-serif;
  cursor: pointer; }
.dc-ck-primary { background: #3C66DD; border-color: #3C66DD; color: #FFFFFF; }
/* 2026-09-17: кнопка «Customise» нужна только на телефоне, где категории свёрнуты */
.dc-ck-custom { display: none; }
@media (max-width: 1120px) {
  .dc-ck-inner { flex-wrap: wrap; gap: 18px 24px; padding: 18px 24px 20px; }
  .dc-ck-head { flex: 1 1 100%; }
  /* блок кнопок на всю строку: иначе три кнопки по 190px встают в ряд шириной 586px и уезжают за экран */
  .dc-ck-actions { flex: 1 1 100%; flex-direction: row; flex-wrap: wrap; }
}
@media (max-width: 640px) {
  .dc-ck-inner { padding: 14px 16px 16px; gap: 12px; }
  .dc-ck-h { font-size: 17px; margin-top: 4px; }
  .dc-ck-p { font-size: 12.5px; margin-top: 6px; }
  .dc-ck-cats { grid-template-columns: 1fr; }
  .dc-ck-btn { flex: 1 1 100%; min-width: 0; }
  /* 2026-09-17: панель со всеми категориями закрывала на телефоне почти весь экран, включая формы входа
     и регистрации. По умолчанию — текст и три кнопки; категории и «Save» раскрываются по «Customise». */
  .dc-cookie:not(.is-custom) .dc-ck-cats,
  .dc-cookie:not(.is-custom) .dc-ck-primary { display: none; }
  .dc-cookie:not(.is-custom) .dc-ck-custom { display: block; }
}
@media print { .dc-cookie { display: none !important; } }

/* ---- порт на WooCommerce ---- */
.dic-pager a, .dic-pager span { display: flex; align-items: center; justify-content: center;
  min-width: 40px; height: 40px; padding: 0 10px; border: 1px solid #E4E6EF;
  font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 12px; color: #080A1E;
  text-decoration: none; }
.dic-pager .current { background: #080A1E; border-color: #080A1E; color: #FFFFFF; }
.dic-pager a:hover { border-color: #3C66DD; color: #3C66DD; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { margin: 0; padding: 14px 40px;
  border-bottom: 1px solid #E4E6EF; background: #EEF2FE; font-size: 14px; color: #23263D; list-style: none; }
.woocommerce-error { background: #FDECEC; }
.woocommerce-message a, .woocommerce-info a, .woocommerce-error a { color: #3C66DD; }

.dic-qty-btn { width: 38px; height: 44px; border: 0; background: #FFFFFF; color: #080A1E;
  font: 400 17px/1 'Space Grotesk', sans-serif; cursor: pointer; }
.dic-qty-btn:hover { background: #F6F7FB; }
.dic-qty-input { width: 46px; height: 44px; border: 0; border-left: 1px solid #E4E6EF;
  border-right: 1px solid #E4E6EF; text-align: center;
  font: 400 14px/1 'JetBrains Mono', ui-monospace, monospace; color: #080A1E;
  -moz-appearance: textfield; }
.dic-qty-input::-webkit-outer-spin-button, .dic-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none; margin: 0; }
.dic-add:hover { background: #1E2C8C; }
.dic-desc p { font-size: 15px; line-height: 1.65; color: #23263D; margin: 18px 0 0; }
.dic-desc ul { margin: 14px 0 0; padding-left: 0; list-style: none; }
.dic-desc li { position: relative; padding-left: 21px; font-size: 14.5px; line-height: 1.6;
  color: #23263D; margin-top: 7px; }
.dic-desc li::before { content: ''; position: absolute; left: 0; top: 11px; width: 9px; height: 1px;
  background: #3C66DD; }
.dic-desc h2, .dic-desc h3 { font-size: 19px; font-weight: 700; letter-spacing: -0.02em; margin: 22px 0 0; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0);
  clip-path: inset(50%); white-space: nowrap; }
.yith-wcwl-add-to-wishlist { margin: 0 !important; }
.yith-wcwl-add-to-wishlist a { display: flex !important; align-items: center; justify-content: center;
  height: 44px; border: 1px solid #080A1E; color: #080A1E !important;
  font: 400 13.5px/1 'Space Grotesk', sans-serif; text-decoration: none !important; }

/* ---- скин WooCommerce под язык макета ----------------------------------
   Формы, таблицы и кнопки остаются НАСТОЯЩИМИ (nonce, валидация, обработчики
   WooCommerce на месте) — меняется только внешний вид. Ничего круглого,
   ничего с тенью: система квадратная и держится на волосяных линейках. */
.dic-wc { font-size: 14px; color: #23263D; }
.dic-wc a { color: #3C66DD; }
.dic-wc h2, .dic-wc h3 { font-family: 'Space Grotesk', sans-serif; font-size: 19px; font-weight: 700;
  letter-spacing: -0.02em; color: #080A1E; margin: 0 0 14px; }
.dic-wc table { width: 100%; border-collapse: collapse; border: 1px solid #080A1E; }
.dic-wc table th { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px;
  letter-spacing: 0.12em; text-transform: uppercase; color: #4E5563; text-align: left;
  padding: 12px 14px; border-bottom: 1px solid #080A1E; font-weight: 400; }
.dic-wc table td { padding: 14px; border-bottom: 1px solid #EEF0F8; vertical-align: middle;
  font-size: 14px; }
.dic-wc table tr:last-child td { border-bottom: 0; }
.dic-wc .product-thumbnail img { width: 62px; height: 62px; object-fit: contain; border: 1px solid #EEF0F8;
  padding: 5px; box-sizing: border-box; display: block; }
.dic-wc .product-name a { font-weight: 700; color: #080A1E; text-decoration: none; }
.dic-wc .product-price, .dic-wc .product-subtotal { font-family: 'JetBrains Mono', ui-monospace, monospace;
  color: #1E2C8C; }
.dic-wc .quantity input[type=number] { width: 66px; height: 40px; border: 1px solid #E4E6EF;
  text-align: center; font: 400 14px/1 'JetBrains Mono', ui-monospace, monospace; }
.dic-wc a.remove { display: inline-flex; align-items: center; justify-content: center; width: 24px;
  height: 24px; color: #6B7280 !important; font-size: 18px; text-decoration: none; }
.dic-wc a.remove:hover { color: #B22A2A !important; background: transparent !important; }

.dic-wc .coupon { display: flex; gap: 10px; align-items: center; }
.dic-wc input[type=text], .dic-wc input[type=email], .dic-wc input[type=tel],
.dic-wc input[type=password], .dic-wc input[type=number], .dic-wc textarea, .dic-wc select,
.dic-wc .select2-selection { height: 44px; border: 1px solid #E4E6EF; background: #FFFFFF;
  padding: 0 14px; box-sizing: border-box; font: 400 14px/1 'Space Grotesk', sans-serif;
  color: #080A1E; width: 100%; }
.dic-wc textarea { height: 88px; padding: 12px 14px; line-height: 1.5; }
.dic-wc input:focus, .dic-wc textarea:focus, .dic-wc select:focus { outline: 2px solid #080A1E;
  outline-offset: 1px; border-color: #080A1E; }
/* 2026-09-17: кнопка «показать пароль» WooCommerce. Стили WC тут не подключены, поэтому кнопка
   рисовалась пустой рамкой 42x46 под полем. Иконка глаза внутри поля справа; класс display-password
   ставит сам скрипт WooCommerce, когда пароль показан. */
.password-input { position: relative; display: block; }
.dic-wc .password-input > input.input-text { padding-right: 48px; }
.password-input > .show-password-input { position: absolute; top: 0; right: 0; bottom: 0; width: 44px;
  min-width: 0; min-height: 0; height: auto; margin: 0; padding: 0; border: 0; background: transparent;
  cursor: pointer; display: flex; align-items: center; justify-content: center; }
.password-input > .show-password-input::before { content: ""; width: 20px; height: 20px; background: #4E5563;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; }
.password-input > .show-password-input.display-password::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7c2 0 3.8.7 5.2 1.6M22 12s-3.5 7-10 7c-2 0-3.8-.7-5.2-1.6'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M3 3l18 18'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7c2 0 3.8.7 5.2 1.6M22 12s-3.5 7-10 7c-2 0-3.8-.7-5.2-1.6'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M3 3l18 18'/%3E%3C/svg%3E"); }
.password-input > .show-password-input:hover::before { background: #080A1E; }
.password-input > .show-password-input:focus-visible { outline: 2px solid #3C66DD; outline-offset: -4px; }
.dic-wc label { font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px;
  letter-spacing: 0.12em; text-transform: uppercase; color: #4E5563; display: block; margin-bottom: 7px; }
.dic-wc .form-row { margin: 0 0 16px; }
.dic-wc .woocommerce-billing-fields__field-wrapper,
.dic-wc .woocommerce-additional-fields__field-wrapper { display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.dic-wc .form-row-wide, .dic-wc #order_comments_field { grid-column: 1 / -1; }

.dic-wc button, .dic-wc .button, .dic-wc input[type=submit] { display: inline-flex; align-items: center;
  justify-content: center; min-height: 46px; padding: 0 20px; border: 1px solid #080A1E;
  background: #FFFFFF; color: #080A1E; border-radius: 0; box-shadow: none;
  font: 500 14.5px/1 'Space Grotesk', sans-serif; cursor: pointer; text-decoration: none; }
.dic-wc button:hover, .dic-wc .button:hover { background: #F6F7FB; }
.dic-wc .checkout-button, .dic-wc #place_order, .dic-wc button[name=woocommerce_checkout_place_order] {
  background: #3C66DD; border-color: #3C66DD; color: #FFFFFF; width: 100%; }
.dic-wc .checkout-button:hover, .dic-wc #place_order:hover { background: #1E2C8C; border-color: #1E2C8C; }

.dic-wc .cart_totals, .dic-wc .woocommerce-checkout-review-order { border: 1px solid #080A1E;
  padding: 20px 22px; background: #FFFFFF; }
.dic-wc .cart_totals table, .dic-wc .woocommerce-checkout-review-order table { border: 0; }
.dic-wc .cart_totals table th, .dic-wc .woocommerce-checkout-review-order table th { border-bottom: 1px solid #EEF0F8; }
.dic-wc .order-total th, .dic-wc .order-total td { border-top: 1px solid #080A1E; font-weight: 700;
  color: #080A1E; font-size: 16px; }
.dic-wc .wc_payment_methods { list-style: none; margin: 0 0 16px; padding: 0; border: 1px solid #080A1E; }
.dic-wc .wc_payment_method label { font-family: 'Space Grotesk', sans-serif; font-size: 14px;
  letter-spacing: 0; text-transform: none; color: #080A1E; display: inline; margin: 0 0 0 8px; }
.dic-wc .wc_payment_method { padding: 14px; border-bottom: 1px solid #E4E6EF; }
.dic-wc .wc_payment_method:last-child { border-bottom: 0; }
.dic-wc .payment_box { background: #F6F7FB !important; padding: 12px 14px !important; margin: 10px 0 0 !important;
  font-size: 13px; line-height: 1.5; }
.dic-wc .payment_box::before { display: none !important; }
.dic-wc .woocommerce-privacy-policy-text p, .dic-wc .woocommerce-terms-and-conditions-wrapper p {
  font-size: 12.5px; line-height: 1.55; color: #4E5563; }

.dic-wc .woocommerce-order-overview { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0; list-style: none; margin: 0 0 24px; padding: 0; border: 1px solid #080A1E; }
.dic-wc .woocommerce-order-overview li { padding: 16px 18px; border-right: 1px solid #E4E6EF;
  font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px; letter-spacing: 0.12em;
  text-transform: uppercase; color: #4E5563; }
.dic-wc .woocommerce-order-overview li strong { display: block; margin-top: 7px;
  font-family: 'Space Grotesk', sans-serif; font-size: 15px; letter-spacing: 0; text-transform: none;
  color: #080A1E; }

.dic-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0;
  border: 1px solid #E4E6EF; }
.dic-account .woocommerce-MyAccount-navigation li { border-bottom: 1px solid #E4E6EF; }
.dic-account .woocommerce-MyAccount-navigation li:last-child { border-bottom: 0; }
.dic-account .woocommerce-MyAccount-navigation a { display: block; padding: 13px 18px; min-height: 40px;
  box-sizing: border-box; color: #080A1E; text-decoration: none; font-size: 14px; }
.dic-account .woocommerce-MyAccount-navigation li.is-active a { background: #EEF2FE; font-weight: 700;
  border-left: 3px solid #3C66DD; }
.dic-account .woocommerce-MyAccount-content { min-width: 0; }
@media (min-width: 821px) {
  .dic-account .woocommerce-account .woocommerce { display: flex; gap: 32px; align-items: flex-start; }
  .dic-account .woocommerce-MyAccount-navigation { width: 238px; flex-shrink: 0; }
  .dic-account .woocommerce-MyAccount-content { flex-grow: 1; }
}
@media (max-width: 820px) {
  .dic-wc .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
  .dic-wc .woocommerce-order-overview { grid-template-columns: 1fr; }
}

/* ---- карточка товара: клик по всей плитке и устойчивая строка действий ----
   Правила `.dc-stretch` не было вовсе — невидимая ссылка не имела размеров,
   и карточка не кликалась ни на витрине, ни на главной. */
.dc-cardhost { position: relative; }
/* Слой ссылки лежит ПОВЕРХ содержимого — иначе картинка перехватывает курсор
   и плитка не кликается. Выше него поднимаются только настоящие органы
   управления: кнопка добавления и ссылка «View cart». */
.dc-stretch { position: absolute; inset: 0; z-index: 1; }
.dic-add-btn, .dic-card-actions .added_to_cart { position: relative; z-index: 2; }

.dic-card-actions { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
  column-gap: 12px; margin-top: 10px; min-height: 36px; }
.dic-card-price { font-size: 17px; font-weight: 700; color: #1E2C8C; justify-self: start; }
.dic-add-btn { display: inline-flex; align-items: center; justify-content: center; height: 36px;
  min-width: 62px; padding: 0 14px; background: #080A1E; color: #FFFFFF; font-size: 12px;
  text-decoration: none; justify-self: center; }
.dic-add-btn:hover { background: #3C66DD; color: #FFFFFF; }
/* ссылка «View cart» садится в третью колонку и никого не двигает */
.dic-card-actions .added_to_cart { justify-self: end; font-size: 12px; color: #3C66DD;
  text-decoration: none; white-space: nowrap; }
.dic-card-actions .added_to_cart:hover { text-decoration: underline; }
.dic-add-btn.loading { opacity: .6; }

/* ==== адаптив портированных экранов =====================================
   Раньше колонки задавались точной шириной в inline-стиле и полагались на
   подстрочные правила бандла. Своих ширин (262px и прочих) тот список не знает,
   поэтому на телефоне колонки не схлопывались, а их border-right рисовал
   одинокую вертикальную линию посреди пустоты. Здесь — свои классы и явные
   границы, без угадывания. */
.dic-cols { align-items: stretch; }
.dic-main { flex-grow: 1; min-width: 0; }
.dic-main-bordered { border-right: 1px solid #080A1E; }
.dic-main-bordered-soft { border-right: 1px solid #E4E6EF; }
.dic-side { width: 262px; flex-shrink: 0; border-right: 1px solid #E4E6EF; box-sizing: border-box; }
.dic-side-narrow { width: 264px; }
.dic-rail { width: 420px; flex-shrink: 0; box-sizing: border-box; }
.dic-rail-left { width: 250px; border-left: 1px solid #E4E6EF; }
.dic-rail-wide { width: 352px; }
.dic-buy { width: 430px; flex-shrink: 0; box-sizing: border-box; }
.dic-col-wide { width: 640px; flex-shrink: 0; box-sizing: border-box; }
.dic-col-bordered { border-right: 1px solid #080A1E; }
.dic-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dic-cat-grid { grid-template-columns: repeat(7, minmax(0, 1fr)); }

.dic-sort { display: flex; align-items: center; height: 34px; padding: 0 11px;
  border: 1px solid #E4E6EF; font-size: 12px; color: inherit; text-decoration: none; white-space: nowrap; }
.dic-sort.is-on { border-color: #080A1E; font-weight: 700; }
.dic-sort:hover { border-color: #3C66DD; color: #3C66DD; }

@media (max-width: 1120px) {
  .dic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dic-cat-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .dic-buy, .dic-rail, .dic-rail-left, .dic-rail-wide, .dic-col-wide {
    width: 100%; border-left: 0; border-right: 0; }
  .dic-cols { flex-wrap: wrap; }
  .dic-main-bordered, .dic-main-bordered-soft, .dic-col-bordered { border-right: 0;
    border-bottom: 1px solid #080A1E; }
}
@media (max-width: 820px) {
  /* Боковая панель фильтров разворачивается в обычный блок: одинокая рамка
     справа убирается, разделение берёт на себя горизонтальная линейка. */
  .dic-side, .dic-side-narrow { width: 100%; border-right: 0;
    border-bottom: 1px solid #E4E6EF; padding-left: 0 !important; padding-right: 0 !important; }
  .dic-cat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  /* Заголовок раздела и числа перестают тесниться в одну строку */
  .dic-hero { flex-wrap: wrap; }
  .dic-hero-stats { width: 100%; margin: 16px 0 0 !important; justify-content: center;
    gap: 28px !important; }
  .dic-toolbar { flex-wrap: wrap; row-gap: 12px; }
  .dic-sorts { width: 100%; margin: 0 !important; justify-content: center; flex-wrap: wrap;
    row-gap: 8px; }
}
@media (max-width: 640px) {
  .dic-grid { grid-template-columns: 1fr; }
  .dic-cat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dic-hero-stats { gap: 20px !important; }
  /* строки фасета получают боковые поля страницы, раз панель стала полной ширины */
  .dic-side > div { padding-left: 20px !important; padding-right: 20px !important; }
  .dic-side .dc-inline-link { margin-left: auto; }
}

/* ==== корзина на телефоне ================================================
   Таблица разворачивается в карточку: миниатюра слева, название справа,
   ниже — строки «подпись / значение» из data-title, который проставляет
   сам WooCommerce. Подписи колонок при этом не теряются. */
@media (max-width: 820px) {
  .dic-wc table.shop_table thead { position: absolute; width: 1px; height: 1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); }
  .dic-wc table.shop_table, .dic-wc table.shop_table tbody { display: block; }
  .dic-wc table.shop_table tr.cart_item { display: grid; grid-template-columns: 72px minmax(0, 1fr);
    column-gap: 14px; align-items: center; padding: 14px; border-bottom: 1px solid #080A1E; }
  .dic-wc table.shop_table tr.cart_item:last-of-type { border-bottom: 0; }
  .dic-wc table.shop_table tr.cart_item td { display: flex; align-items: center; gap: 12px;
    border: 0; padding: 6px 0; text-align: left; }
  .dic-wc table.shop_table tr.cart_item td::before { content: attr(data-title);
    font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px; letter-spacing: 0.12em;
    text-transform: uppercase; color: #4E5563; flex: 0 0 82px; }
  .dic-wc table.shop_table td.product-thumbnail { grid-column: 1; grid-row: 1 / span 2; padding: 0; }
  .dic-wc table.shop_table td.product-thumbnail::before { display: none; }
  .dic-wc table.shop_table td.product-thumbnail img { width: 72px; height: 72px; }
  .dic-wc table.shop_table td.product-name { grid-column: 2; grid-row: 1; }
  .dic-wc table.shop_table td.product-name::before { display: none; }
  .dic-wc table.shop_table td.product-remove { grid-column: 2; grid-row: 2; justify-content: flex-end;
    order: 9; }
  .dic-wc table.shop_table td.product-remove::before { display: none; }
  .dic-wc table.shop_table td.product-price,
  .dic-wc table.shop_table td.product-quantity,
  .dic-wc table.shop_table td.product-subtotal { grid-column: 1 / -1;
    border-top: 1px solid #EEF0F8; }
  .dic-wc table.shop_table tr:not(.cart_item) { display: block; padding: 14px; }
  .dic-wc table.shop_table td.actions { display: block; padding: 0; }
  .dic-wc table.shop_table td.actions::before { display: none; }
  .dic-wc .coupon { flex-wrap: wrap; row-gap: 10px; }
  .dic-wc .coupon input[type=text] { flex: 1 1 100%; }
  /* значения строк не центрируем: подпись слева, значение сразу за ней */
  .dic-wc table.shop_table tr.cart_item td > * { text-align: left; }
}

/* фильтры каталога: на широком экране обычная панель, на телефоне — раскрывашка */
.dic-filters > summary { list-style: none; }
.dic-filters > summary::-webkit-details-marker { display: none; }
.dic-filters-toggle { display: none; }
.dic-filters-hint { display: none; }
@media (max-width: 820px) {
  .dic-filters-head { display: none !important; }
  .dic-filters-toggle { display: flex; align-items: center; gap: 10px; min-height: 48px;
    padding: 0 20px; border-bottom: 1px solid #E4E6EF; cursor: pointer;
    font-size: 10.5px; letter-spacing: 0.16em; color: #4E5563; }
  .dic-filters-toggle::after { content: '+'; margin-left: auto; font-size: 18px; color: #080A1E; }
  .dic-filters[open] > .dic-filters-toggle::after { content: '–'; }
  .dic-filters-hint { display: inline; color: #6B7280; letter-spacing: 0.06em; }
  .dic-filters[open] .dic-filters-hint { display: none; }
  .dic-side-note { margin: 18px 20px 0 !important; }
}

/* корзина в две колонки, как в макете: позиции слева, итоги справа */
.dic-cart-page .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 398px;
  gap: 0 32px; align-items: start; }
.dic-cart-page .woocommerce-cart-form { grid-column: 1; }
.dic-cart-page .cart-collaterals { grid-column: 2; width: auto !important; float: none !important; }
.dic-cart-page .cart_totals { width: auto !important; float: none !important; }
.dic-cart-page .woocommerce-notices-wrapper,
.dic-cart-page .woocommerce-message, .dic-cart-page .woocommerce-info { grid-column: 1 / -1; }
.dic-wc .cart_totals h2 { font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase;
  font-family: 'JetBrains Mono', ui-monospace, monospace; font-weight: 400; color: #4E5563; }
.dic-wc .wc-proceed-to-checkout { margin-top: 14px; }
.dic-wc td.actions { padding-top: 16px; }
.dic-wc td.actions .button[name=update_cart] { margin-left: 10px; }
.dic-wc .cross-sells { grid-column: 1 / -1; margin-top: 8px; }
@media (max-width: 1120px) {
  .dic-cart-page .woocommerce { grid-template-columns: minmax(0, 1fr); gap: 24px 0; }
  .dic-cart-page .cart-collaterals { grid-column: 1; }
}

/* Сводка заказа на оформлении: длинное имя пака плюс «× 6» вылезали за экран
   на 44px. Колонки фиксируем, перенос разрешаем. */
.dic-wc .woocommerce-checkout-review-order-table { table-layout: fixed; width: 100%; }
.dic-wc .woocommerce-checkout-review-order-table td,
.dic-wc .woocommerce-checkout-review-order-table th { overflow-wrap: anywhere; }
.dic-wc .woocommerce-checkout-review-order-table .product-name { width: 62%; }
.dic-wc .woocommerce-checkout-review-order-table .product-quantity { white-space: nowrap; }
@media (max-width: 640px) {
  .dic-wc .woocommerce-checkout-review-order-table .product-name { width: 58%; }
}

/* Хлебные крошки: звено и его шеврон — один элемент флекса, чтобы перенос строки
   никогда не оставлял шеврон висеть в конце. Ссылка и текущее звено выровнены по
   центру: тач-правило ниже 640 даёт ссылке min-height 40px, и без центровки её
   текст поднимался выше соседа (замер 21.08 на 390: 79px против 90.5px). */
.dic-bc { flex-wrap: wrap; row-gap: 0; }
.dic-bc .dic-crumb { display: inline-flex; align-items: center; gap: 8px; }
.dic-bc .dic-crumb > a,
.dic-bc .dic-crumb > span { display: flex; align-items: center; }
@media (max-width: 640px) {
  .dic-bc .dic-crumb > a,
  .dic-bc .dic-crumb > span { min-height: 40px; }
}

/* Заголовок товара на телефоне: «Communication Pack Vol. 1» рвался так, что на
   вторую строку уезжала одинокая единица. Балансировка делит строки поровну. */
@media (max-width: 820px) {
  .dic-buy h1 { text-wrap: balance; }
}
