:root{--p:#0a5bd3;--p2:#0847a6;--acc:#ff6b2c;--ink:#0f1f3a;--mut:#5b6b85;--bg:#f5f8fc;--card:#fff;--line:#e2e8f2;
--best:#16a34a;--good:#86efac;--low:#e5e7eb;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
color:var(--ink);background:var(--bg)}a{color:var(--p)}img{max-width:100%}h1,h2,h3{line-height:1.2;margin:0 0 .6em}
h1{font-size:clamp(28px,4.4vw,46px)}h2{font-size:clamp(22px,2.8vw,30px);margin-top:1.4em}h3{font-size:19px}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}main section{margin-bottom:8px}
.top{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.hdr{display:flex;align-items:center;gap:14px;min-height:64px}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.logo span{display:flex;flex-direction:column;line-height:1.1}.logo b{font-size:20px;letter-spacing:.5px}.logo small{color:var(--mut);font-size:12px;white-space:nowrap}
.menu{display:flex;gap:4px;margin-left:auto;align-items:center}.menu>a,.dd>a{white-space:nowrap;font-size:15px;padding:9px 8px;border-radius:10px;text-decoration:none;color:var(--ink);font-weight:500}
.menu>a:hover,.dd>a:hover{background:var(--bg)}.dd{position:relative}.ddm{display:none;position:absolute;top:100%;left:0;background:#fff;
border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #0f1f3a1f;padding:8px;min-width:240px;columns:2;column-gap:8px}
.dd:hover .ddm,.dd:focus-within .ddm{display:block}.ddm a{display:block;padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--ink);break-inside:avoid}
.ddm a:hover{background:var(--bg)}.ddm .all{color:var(--p);font-weight:600}.hphone{font-weight:700;text-decoration:none;color:var(--ink);white-space:nowrap}
.burger{display:none;margin-left:auto;font-size:24px;background:none;border:0;padding:8px;cursor:pointer;color:var(--ink)}
.btn{display:inline-block;background:var(--acc);color:#fff;border:0;border-radius:12px;padding:12px 20px;font:inherit;font-weight:600;
text-decoration:none;cursor:pointer;text-align:center}.btn:hover{filter:brightness(.95)}.btn.sm{padding:9px 14px;font-size:15px}
.btn.big{padding:15px 26px;font-size:17px}.btn.ghost{background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor}
.hero{color:#fff;background:linear-gradient(135deg,var(--a,#0a5bd3),var(--b,#38b6ff));padding:56px 0 48px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;inset:auto -10% -60px -10%;height:120px;background:var(--bg);border-radius:50% 50% 0 0/100% 100% 0 0}
.hero .wrap{position:relative;z-index:1}.hero.home{--a:#0a3d91;--b:#00a3e0;padding:72px 0 80px}.hero.hub{--a:#0f1f3a;--b:#0a5bd3}
.lead-t{font-size:clamp(17px,2vw,20px);max-width:780px;opacity:.95}.hbtn{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.bc{font-size:14px;color:var(--mut);padding-top:12px;padding-bottom:4px}.bc a{color:var(--mut)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.card{display:flex;flex-direction:column;justify-content:flex-end;min-height:150px;padding:16px;border-radius:var(--r);color:#fff;
text-decoration:none;background:linear-gradient(140deg,var(--a),var(--b));box-shadow:0 6px 18px #0f1f3a1a;transition:transform .15s}
.card:hover{transform:translateY(-3px)}.cname{font-size:22px;font-weight:700}.cmeta{font-size:14px;opacity:.9}.cgo{font-size:14px;margin-top:8px;font-weight:600}
.two{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}.side{position:sticky;top:84px}
.sbox{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px;display:flex;flex-direction:column;gap:8px}
.sbox p{margin:0;color:var(--mut)}.sbox .btn.ghost{color:var(--p)}
.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:0}
.facts div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px}.facts dt{font-size:13px;color:var(--mut);text-transform:uppercase;letter-spacing:.4px}
.facts dd{margin:4px 0 0;font-weight:500}
.cal{display:grid;grid-template-columns:repeat(12,1fr);gap:4px;list-style:none;padding:0;margin:0 0 6px}
.cal .m{border-radius:8px;text-align:center;padding:10px 0;font-size:13px;font-weight:600}.m.best{background:var(--best);color:#fff}
.m.good{background:var(--good)}.m.low{background:var(--low);color:#6b7280}.legend{font-size:13px;color:var(--mut)}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin:0 4px 0 10px}
.mini{display:inline-flex;gap:2px}.mini i{width:12px;height:16px;border-radius:3px}
.resorts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.resort{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.resort h3{margin:0 0 6px}.resort p{margin:0 0 6px}
.ticks{list-style:none;padding:0}.ticks li{padding-left:28px;position:relative;margin:6px 0}.ticks li:before{content:"✓";position:absolute;left:4px;color:var(--best);font-weight:700}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;margin:8px 0;padding:0 16px}
.faq summary{cursor:pointer;font-weight:600;padding:14px 0;list-style:none}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";float:right;font-size:20px;color:var(--p)}.faq details[open] summary:after{content:"−"}.faq details p{margin:0 0 14px}
.lead{margin:28px auto}.leadbox{background:#fff;border-radius:18px;padding:24px;box-shadow:0 10px 30px #0f1f3a14;border:1px solid var(--line)}
.leadbox h2{margin-top:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.lf label{display:flex;flex-direction:column;font-size:14px;color:var(--mut);gap:4px}.lf .wide{grid-column:1/-1}
.lf input,.lf select{font:inherit;color:var(--ink);padding:11px 12px;border:1px solid #cfd8e6;border-radius:10px;background:#fff;width:100%}
.lf input:focus,.lf select:focus{outline:2px solid var(--p);border-color:transparent}.lf .chk{flex-direction:row;align-items:flex-start;gap:8px;margin:14px 0}
.lf .chk input{width:auto;margin-top:4px}.hp{position:absolute;left:-9999px}.fmsg{margin:10px 0 0;font-weight:600}.fmsg.ok{color:var(--best)}.fmsg.err{color:#c62828}
.steps ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;counter-reset:s}
.steps li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;counter-increment:s;display:flex;flex-direction:column;gap:4px}
.steps li:before{content:counter(s);width:32px;height:32px;border-radius:50%;background:var(--p);color:#fff;display:grid;place-items:center;font-weight:700}
.steps span{color:var(--mut)}.tw{overflow-x:auto}.mt{border-collapse:collapse;width:100%;background:#fff;border-radius:12px;overflow:hidden}
.mt th,.mt td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top;font-size:15px}.mt thead th{background:#eef3fb}
.partner{display:flex;gap:20px;align-items:center;justify-content:space-between;background:#0f1f3a;color:#fff;border-radius:18px;padding:24px;margin-top:28px;flex-wrap:wrap}
.partner h2{margin-top:0}.partner p{max-width:720px;opacity:.9}
.feat{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:20px}
.feat div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px}.feat span{color:var(--mut)}
.note{background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:16px;margin-top:20px}
.txt{max-width:860px}.legal{padding-top:24px}.muted{color:var(--mut);font-size:14px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{background:#ffffff26;color:#fff;padding:7px 12px;border-radius:20px;text-decoration:none}.chip:hover{background:#ffffff40}
.pn{display:flex;justify-content:space-between;gap:10px;margin-top:20px}
.foot{background:#0f1f3a;color:#c8d3e6;margin-top:48px;padding:36px 0 24px;font-size:14px}.foot a{color:#c8d3e6;text-decoration:none;display:block;padding:2px 0}
.foot a:hover{color:#fff}.fcols{display:grid;grid-template-columns:2fr 2fr 1.3fr;gap:24px}.fcols>div:nth-child(-n+2){columns:2;column-gap:16px}
.foot b{display:block;color:#fff;margin-bottom:8px;column-span:all}.req{margin-top:24px;border-top:1px solid #ffffff22;padding-top:16px;color:#94a3b8}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;max-width:560px;background:#0f1f3a;color:#fff;border-radius:14px;padding:14px 16px;
display:flex;gap:12px;align-items:center;z-index:50;font-size:14px;box-shadow:0 10px 30px #0006}.cookie a{color:#9cc7ff}.cookie[hidden]{display:none}
@media(max-width:980px){.two{grid-template-columns:1fr}.side{position:static}.fcols{grid-template-columns:1fr}.fcols>div:nth-child(-n+2){columns:2}}
@media(max-width:1100px){.logo small{display:none}}
@media(max-width:860px){.burger{display:block}.menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;
align-items:stretch;padding:8px 16px 16px;border-bottom:1px solid var(--line)}.menu.open{display:flex}.ddm{position:static;box-shadow:none;border:0;columns:2;padding:0 0 0 8px}
.dd:hover .ddm{display:none}.hdr .btn.sm,.hphone{display:none}.cal{grid-template-columns:repeat(6,1fr)}.hero{padding:40px 0 56px}}
.disc{display:inline-block;background:#ffd84d;color:#0f1f3a;font-weight:800;border-radius:12px;padding:8px 14px;margin:14px 0 0;font-size:20px}
.disc.sm{font-size:16px;margin:0;padding:6px 10px;align-self:flex-start}
.fph{margin:20px 0 0;font-size:18px;font-weight:700}.foot a.ft{display:inline;color:#fff}
.fad{margin:6px 0 0;color:#c8d3e6}
.strip{display:block;background:linear-gradient(90deg,#ff6b2c,#ff9a3c);color:#fff;text-decoration:none;text-align:center;font-size:15px;padding:7px 16px}
.strip:hover{filter:brightness(1.05)}.strip b{font-weight:800}
.hot{margin-top:28px}.hhead{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hhead h2{margin:0}
.hot>h2{margin-bottom:12px}.hbody{margin-top:12px}.hfall{display:flex;flex-wrap:wrap;gap:8px}
.hcity,.htab,.hchip{font:inherit;border:0;cursor:pointer;border-radius:22px;padding:9px 16px;background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.hcity:hover,.htab:hover,.hchip:hover{box-shadow:inset 0 0 0 2px var(--p)}
.htabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.htab{font-weight:700;white-space:nowrap}.htab.on{background:var(--ink);color:#fff;box-shadow:none}
.hchips{display:flex;gap:6px;overflow-x:auto;padding:10px 0 4px}.hchip{white-space:nowrap;font-size:15px;padding:7px 12px}.hchip small{color:var(--mut)}
.hchip.on{background:var(--acc);color:#fff;box-shadow:none}.hchip.on small{color:#fff}
.hgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:10px}
.ht{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.hph{height:150px;background:#dfe7f3 center/cover no-repeat;position:relative}.hph.nopic{background:linear-gradient(135deg,#38b6ff,#0a5bd3)}
.hbd{position:absolute;left:10px;top:10px;background:#e53935;color:#fff;font-weight:800;border-radius:8px;padding:3px 8px;font-size:14px}
.hdemo{position:absolute;right:10px;top:10px;background:#0f1f3acc;color:#fff;border-radius:8px;padding:3px 8px;font-size:12px}
.hi{padding:12px 14px;display:flex;flex-direction:column;gap:3px;flex:1}.hst{color:#f5a623;letter-spacing:1px;font-size:14px}
.hn{font-size:16px;line-height:1.25}.hr{color:var(--mut);font-size:14px}.hm{font-size:14px}
.hpz{margin-top:auto;padding-top:8px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.hpz s{color:var(--mut);font-size:14px}
.hpz b{font-size:21px;color:#c62828}.hpz small{color:var(--mut);font-size:12px}.hgo{margin-top:8px;width:100%}
.hnote{color:var(--mut);font-size:13px;margin-top:10px}
@media(max-width:1000px){.hgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hgrid{grid-template-columns:1fr}.strip{font-size:13px}}
.btn.sm{white-space:nowrap}.hdr{gap:10px}.logo{flex:none}
@media(max-width:1320px){.hdr>.btn.sm{display:none}}
@media(max-width:1180px){.logo small{display:none}.menu>a,.dd>a{padding:9px 6px}}
@media(max-width:560px){.hgrid{display:grid;grid-auto-flow:column;grid-auto-columns:82%;grid-template-columns:none;overflow-x:auto;
scroll-snap-type:x mandatory;padding-bottom:6px}.ht{scroll-snap-align:start}}
/* поиск горящих туров, фото */
.tsearch{margin-top:28px}.ts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.ts label{display:flex;flex-direction:column;font-size:14px;color:var(--mut);gap:4px}
.ts input,.ts select{font:inherit;color:var(--ink);padding:10px 12px;border:1px solid #cfd8e6;border-radius:10px;background:#fff;width:100%}
.ts input:focus,.ts select:focus{outline:2px solid var(--p);border-color:transparent}.ts .btn{width:100%}
.tres{margin-top:12px}.tfound{color:var(--mut);margin:6px 0}.hop{font-size:12px;color:var(--mut)}
.hchips.wrapc{flex-wrap:wrap;overflow:visible}.hchips a.hchip{text-decoration:none}
.card.ph{background:linear-gradient(180deg,#0f1f3a00 30%,#0f1f3ad9),var(--img) center/cover,linear-gradient(140deg,var(--a),var(--b));min-height:180px}
.hero.ph{background:linear-gradient(90deg,#0f1f3af0 0%,#0f1f3aa6 55%,#0f1f3a40),var(--img) center/cover,linear-gradient(135deg,var(--a,#0a5bd3),var(--b,#38b6ff))}
.pcred{position:absolute;right:16px;bottom:64px;margin:0;font-size:11px;color:#ffffffb3;max-width:60%;text-align:right;z-index:1}
.pcred a{color:inherit}.credits td{font-size:14px}
@media(max-width:980px){.ts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ts{grid-template-columns:1fr 1fr}.ts .btn{grid-column:1/-1}.pcred{bottom:58px;max-width:90%}}
.lead-t.alt{background:#ffffff1f;border-left:4px solid #ffd84d;padding:8px 12px;border-radius:8px}
.halt{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:8px 12px;margin:10px 0 0;font-size:15px}
.htab.ph{min-width:170px;height:78px;border-radius:14px;color:#fff;display:flex;align-items:flex-end;padding:8px 12px;text-shadow:0 1px 3px #000a;
background:linear-gradient(180deg,#0f1f3a1a 20%,#0f1f3ad0),var(--img) center/cover;box-shadow:none;font-size:16px;text-align:left}
.htab.ph:hover{box-shadow:inset 0 0 0 2px #fff}.htab.ph.on{outline:3px solid var(--acc);outline-offset:2px;background:linear-gradient(180deg,#ef6c0026 20%,#0f1f3ad0),var(--img) center/cover}
.htabs{padding:4px 4px 8px}
@media(max-width:560px){.htab.ph{min-width:140px;height:66px;font-size:15px}}
.land .lph{display:block;height:150px;margin:-14px -16px 12px;border-radius:12px 12px 0 0;background:#dfe7f3 center/cover no-repeat}
.btn.ghost.dark{color:var(--p)}.lead-t.alt a{color:#ffd84d}
.resort.rph{padding-top:0;overflow:hidden}.resort.rph img{display:block;max-width:none;width:calc(100% + 32px);height:auto;aspect-ratio:16/10;object-fit:cover;margin:0 -16px 6px}
.rcred{display:block;font-size:11px;color:var(--mut);margin:-2px 0 6px}.rcred a{color:inherit}
@media(max-width:1100px){.hphone{display:none}.menu>a,.dd>a{font-size:14px;padding:9px 5px}}
.sub{margin-top:28px}.subbox{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:1px solid #ffcc80;border-radius:16px;padding:20px;display:grid;grid-template-columns:1fr 2fr;gap:20px}
.subbox h2{margin-top:0}
@media(max-width:860px){.subbox{grid-template-columns:1fr}}
/* оранжевые кнопки разделов (09.11) */
.onav{border-top:1px solid var(--line);background:#fff}.onw{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:8px;padding-bottom:8px}
.ob>a{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--acc);color:#fff;text-decoration:none;font-weight:700;
font-size:16px;line-height:1.2;padding:11px 12px;border-radius:12px;text-align:center;box-shadow:0 2px 0 #d9541c;transition:background .15s}
.ob>a:hover,.ob:focus-within>a{background:#f25a1a}.ob .oi{font-size:19px;line-height:1}.ob .mbr{display:none}
.onav .ddm{top:calc(100% + 6px);z-index:30}.onav .dd:last-child .ddm,.onav .dd:nth-child(3) .ddm{left:auto;right:0}
.onw>.ob{min-width:0}.onav .ob>a{white-space:normal;height:100%}
@media(max-width:860px){.top{position:relative}.onw{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 12px}
.ob>a{gap:5px;font-size:13px;padding:9px 6px;border-radius:10px}.ob .oi{font-size:16px}.ob>a>span{min-width:0}
.onav .ddm,.onav .dd:hover .ddm,.onav .dd:focus-within .ddm{display:none}}
@media(max-width:860px){.menu{z-index:40;box-shadow:0 12px 24px #0f1f3a26}}
.hph{position:relative}.hpop{position:absolute;left:8px;bottom:8px;background:#16a34a;color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:8px}.hrt{display:block;font-size:13px;color:var(--mut)}.hrt b{color:#16a34a}
@media(min-width:1100px){.hgrid:has(>.ht:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:561px) and (max-width:1099px){.hgrid:has(>.ht:nth-child(5)){grid-template-columns:repeat(3,minmax(0,1fr))}}

/* 09.11 владелец: 6 оранжевых плашек направлений сразу + «Больше направлений» */
.hchips.og{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;overflow:visible;padding:12px 0 6px}
.hchips.og .hchip{background:var(--acc);color:#fff;box-shadow:none;border-radius:12px;padding:9px 10px;white-space:normal;text-align:center;line-height:1.25;font-weight:600;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px}
.hchips.og .hchip small{color:#fff;opacity:1;font-weight:800;font-size:15px;margin-top:2px;letter-spacing:.2px}
.hchips.og .hchip:hover{background:#f05a18}
.hchips.og .hchip.on{background:#c94a12;box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #c94a12}
.hchips.og .hchip.hx{display:none}
.hmore{display:block;margin:4px auto 8px;font:inherit;font-weight:600;color:var(--acc);background:#fff;border:2px solid var(--acc);border-radius:22px;padding:8px 20px;cursor:pointer}
.hmore:hover{background:#fff4ee}
@media(max-width:1099px){.hchips.og{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.hchips.og{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.hchips.og .hchip{font-size:14px;min-height:50px}}

/* 09.11: отметки на фото — «Самый бюджетный» и «Самый популярный» */
.hbdg{position:absolute;left:8px;bottom:8px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.hbdg .hpop{position:static}
.hcheap{background:#0a5bd3;color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:8px}

/* 09.11: отели — ссылка с карточки, страницы /oteli/ */
a.hn{color:var(--ink);text-decoration:none;font-weight:700}
a.hn:hover{color:var(--p);text-decoration:underline}
.hfacts th{width:38%;text-align:left;font-weight:600}
.hgal{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.hgal figure{margin:0}.hgal img{width:100%;height:220px;object-fit:cover;border-radius:12px;display:block}
.hgal figcaption{font-size:11px;color:var(--mut);margin-top:4px}.hgal figcaption a{color:inherit}
.hfac{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:4px 20px}
.hfac h3{font-size:15px;margin:10px 0 2px}.hfac p{margin:0;color:var(--mut);font-size:14px}
.hrooms{columns:2;padding-left:18px}@media(max-width:560px){.hrooms{columns:1}}
.hreslist{columns:3 300px;column-gap:28px}.hres{break-inside:avoid;margin-bottom:12px}
.hres h2{font-size:18px;margin:8px 0 4px}.hres ul{margin:0;padding-left:18px}.hres li{margin:2px 0}
.hero .hrt{color:#fff;font-size:16px;opacity:.95}.hero .hrt b{color:#fff}
.fadm{margin:6px 0 10px}.fadm a{display:inline-block;color:#fff;border:1px solid #ffffff59;border-radius:18px;padding:5px 14px;font-size:14px;text-decoration:none}.fadm a:hover{background:#ffffff1a}
.agb{display:block;text-align:center;margin-top:8px;font-size:14px;font-weight:600;color:var(--p);text-decoration:none}.agb:hover{text-decoration:underline}
.fadm a+a{margin-left:8px}
/* каталог отелей карточками — фото и описание, без цен (09.11.2026) */
.hcatg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:10px 0 22px}
@media(max-width:900px){.hcatg{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.hcatg{grid-template-columns:1fr}}
.hcat{display:flex;flex-direction:column;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08),inset 0 0 0 1px var(--line);color:var(--ink);text-decoration:none}
.hcat:hover{box-shadow:0 4px 14px rgba(0,0,0,.12),inset 0 0 0 1px var(--line)}
.hcp{position:relative;display:block;aspect-ratio:5/3;background:#e9eef3}.hcp img{width:100%;height:100%;object-fit:cover;display:block}
.hcp i{position:absolute;left:8px;bottom:8px;font-style:normal;font-size:11px;background:rgba(0,0,0,.5);color:#fff;border-radius:6px;padding:2px 6px}
.hcp em{position:absolute;right:8px;top:8px;font-style:normal;font-size:12px;font-weight:600;background:var(--acc);color:#fff;border-radius:8px;padding:3px 8px}
.hci{display:flex;flex-direction:column;gap:4px;padding:12px 14px 14px;flex:1}.hci b{font-size:17px;line-height:1.25}
.hci .hst{color:#f5a623;letter-spacing:1px}.hci .hr{color:var(--mut);font-size:14px}.hci .hrt{font-size:13px}
.hci .hd{font-size:14px;line-height:1.45;color:var(--ink)}.hci .hmo{margin-top:auto;padding-top:6px;color:var(--p);font-weight:600;font-size:14px}
.hcath{font-size:21px;margin:22px 0 4px;scroll-margin-top:70px}.hcath small{font-size:14px;color:var(--mut);font-weight:400}
.htabs .htab{flex:none}
.bpop{position:fixed;right:16px;left:16px;bottom:16px;margin-left:auto;max-width:380px;z-index:60;background:#fff;border-radius:16px;padding:18px 18px 14px;box-shadow:0 14px 40px #0f1f3a40;border-top:5px solid var(--acc);display:flex;flex-direction:column;gap:10px;animation:bpin .35s ease-out}.bpop[hidden]{display:none}.bpop:focus{outline:none}
.bpop b{font-size:20px;line-height:1.25;padding-right:26px}.bpop p{margin:0;font-size:15px;color:var(--mut)}.bpop .btn{text-align:center;text-decoration:none}.bpop .btn.ghost{color:var(--p);font-size:15px;padding:10px 14px}.bpop small{color:var(--mut);font-size:12px;line-height:1.4}
.bpx{position:absolute;top:8px;right:10px;border:0;background:none;font-size:26px;line-height:1;color:var(--mut);cursor:pointer;padding:4px 8px;border-radius:8px}.bpx:hover{background:var(--bg);color:var(--ink)}
@keyframes bpin{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.bpop{animation:none}}
@media(max-width:560px){.bpop{padding:14px 14px 10px;gap:8px}.bpop b{font-size:18px}.bpop p{font-size:14px;line-height:1.45}.bpop .btn{padding:11px 14px}}
.hgcap{font-size:12px;color:var(--mut);margin:6px 0 0}
@media(max-width:560px){.hgal.ax{grid-template-columns:repeat(3,1fr);gap:6px}.hgal.ax img{height:100px;border-radius:8px}}
