/* ---------- 1. reset ---------- */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden}
img,picture,video,svg{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,figure,blockquote{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit}

/* ---------- 2. tokens ---------- */
:root{
  --base:#F7F6F2;
  --card:#FFFFFF;
  --ink:#16161A;
  --ink-soft:#5A5C64;
  --ink-inv:#F7F6F2;
  --c:#1D4ED8;
  --on-c:#FFFFFF;
  --line:rgba(22,22,26,.18);
  --t-max:clamp(2.6rem,7vw,6rem);
  --t-h2:clamp(1.7rem,3.2vw,2.8rem);
  --t-h3:clamp(1.1rem,1.7vw,1.42rem);
  --t-lede:clamp(1.06rem,1.35vw,1.26rem);
  --t-body:1.0625rem;
  --t-micro:.7rem;
  --space:clamp(60px,6.8vw,108px);
  --edge:clamp(18px,4vw,52px);
  --wide:1300px;
  --read:58ch;
  --ease:cubic-bezier(.2,.7,.2,1);
}
/* тема задаётся классом на элементе <html> */
html.t-art{--c:#1D4ED8;--on-c:#FFFFFF}
html.t-capsule{--c:#B45309;--on-c:#FFFFFF}
html.t-casino{--c:#4D7C0F;--on-c:#FFFFFF}
html.t-ice{--c:#7C3AED;--on-c:#FFFFFF}

/* ---------- 3. base ---------- */
body{
  background:var(--base);
  color:var(--ink);
  font-family:"Mulish",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:var(--t-body);
  line-height:1.64;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"Barlow Condensed","Helvetica Neue",Arial,sans-serif;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.01em}
h1{font-size:var(--t-max)}
h2{font-size:var(--t-h2)}
h3{font-size:var(--t-h3)}
p{max-width:var(--read)}
p + p{margin-top:.85em}

/* ---------- 4. layout ---------- */
.gm-wrap{width:100%;max-width:var(--wide);margin:0 auto;padding-left:var(--edge);padding-right:var(--edge)}
.gm-sec{padding-top:var(--space);padding-bottom:var(--space)}
.gm-sec-card{background:var(--card)}
.gm-sec-dark{background:var(--ink);color:var(--ink-inv)}
.gm-sec-c{background:var(--c);color:var(--on-c)}

/* пара: слева отель A, посередине шкала, справа отель B */
.gm-pair{display:grid;gap:0;grid-template-columns:minmax(0,1fr);grid-template-areas:"a" "mid" "b";background:var(--card);border:2px solid var(--ink);margin-bottom:26px}
.gm-side-a{grid-area:a;padding:clamp(18px,2.4vw,30px)}
.gm-side-b{grid-area:b;padding:clamp(18px,2.4vw,30px)}
.gm-mid{grid-area:mid;padding:clamp(18px,2.4vw,30px);background:var(--base);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
@media (min-width:900px){
  .gm-pair{grid-template-columns:minmax(0,1fr) minmax(0,240px) minmax(0,1fr);grid-template-areas:"a mid b"}
  .gm-mid{border-top:0;border-bottom:0;border-left:2px solid var(--ink);border-right:2px solid var(--ink)}
}

/* ---------- 5. компоненты ---------- */
.gm-skip{position:absolute;left:-9999px}
.gm-skip:focus{left:var(--edge);top:12px;z-index:60;background:var(--card);padding:10px 14px}
.gm-top{background:var(--card);border-bottom:2px solid var(--ink)}
.gm-top-in{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:14px;padding-bottom:14px}
.gm-word{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;font-size:1.5rem;letter-spacing:.02em;text-decoration:none;margin-right:auto}
.gm-top a{text-decoration:none;font-size:.93rem;font-weight:600}
.gm-micro{font-size:var(--t-micro);letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--ink-soft)}
.gm-lede{font-size:var(--t-lede);color:var(--ink-soft);max-width:56ch}
.gm-no{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;font-size:clamp(2.2rem,4.4vw,3.4rem);line-height:.9;color:var(--c)}
.gm-tag{display:inline-block;background:var(--c);color:var(--on-c);padding:4px 11px;font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.gm-tag-flat{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.gm-shot{overflow:hidden;background:var(--base);aspect-ratio:4/3;border:2px solid var(--ink)}
.gm-shot img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.gm-shot-wide{aspect-ratio:21/9}
.gm-cap{font-size:var(--t-micro);color:var(--ink-soft);margin-top:8px}
/* шкала в середине пары */
.gm-scale dt{font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);text-align:center;margin-top:14px}
.gm-scale dd{margin:4px 0 0 0;display:flex;gap:10px;justify-content:space-between;font-weight:600;font-size:.95rem}
.gm-scale dd span:last-child{text-align:right}
.gm-call{border-top:2px solid var(--ink);padding:clamp(16px,2vw,24px);grid-column:1/-1}
.gm-pick{background:var(--card);border:2px solid var(--ink);padding:9px 16px;cursor:pointer;font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.95rem}
.gm-pick[aria-pressed="true"]{background:var(--c);color:var(--on-c);border-color:var(--c)}
.gm-tally{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;font-size:1.15rem}
.gm-list li{display:flex;flex-wrap:wrap;gap:6px 16px;padding:12px 0;border-bottom:1px solid var(--line)}
.gm-list a{text-decoration:none;font-weight:700}
.gm-link{display:inline-block;text-decoration:none;font-weight:700;border-bottom:3px solid var(--c);padding-bottom:1px}
.gm-drop{border-top:1px solid var(--line);padding:12px 0}
.gm-drop summary{cursor:pointer;list-style:none;font-weight:700}
.gm-drop summary::-webkit-details-marker{display:none}
.gm-foot{background:var(--ink);color:var(--ink-inv)}
.gm-foot a{text-decoration:none}
.gm-foot a:hover{text-decoration:underline;text-underline-offset:4px}
:focus-visible{outline:3px solid var(--c);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- 6. дополнения goldenmeadowis ---------- */
.gm-nav{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;width:100%}
.gm-menu-btn{background:var(--card);border:2px solid var(--ink);padding:6px 12px;cursor:pointer;font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
@media (max-width:899px){
  .gm-nav{flex-direction:column;align-items:flex-start;gap:14px;padding-top:6px}
}
@media (min-width:900px){
  .gm-nav{width:auto;flex-wrap:nowrap;gap:18px}
  .gm-menu-btn{display:none}
  .gm-top-in{flex-wrap:nowrap}
}
.gm-mt-s{margin-top:10px}
.gm-mt-m{margin-top:22px}
.gm-mt-l{margin-top:40px}
.gm-mt-xl{margin-top:64px}
.gm-hold{max-width:none}
.gm-fill{background:var(--c);color:var(--on-c);display:flex;align-items:flex-end;padding:16px;height:100%}
.gm-fill-word{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;line-height:.95;font-size:clamp(1.3rem,2.4vw,2.1rem);letter-spacing:.02em;max-width:22ch}
.gm-hero{display:grid;gap:34px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.gm-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:52px;align-items:end}}
.gm-rule{border-top:2px solid var(--ink);padding-top:12px;margin-top:34px;font-weight:600}
.gm-band{display:block;text-decoration:none;background:var(--c);color:var(--on-c);border:2px solid var(--ink);border-bottom:0;padding:clamp(20px,3vw,38px)}
.gm-band-last{border-bottom:2px solid var(--ink)}
.gm-band-b{display:grid;gap:8px 30px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.gm-band-b{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:baseline}}
.gm-band h3{font-size:clamp(1.8rem,4vw,3rem)}
.gm-band p{max-width:52ch;color:inherit}
.gm-cols{display:grid;gap:30px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.gm-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.gm-cols-3{display:grid;gap:30px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.gm-cols-3{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (min-width:900px){.gm-cols-3{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}
.gm-cols-4{display:grid;gap:30px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.gm-cols-4{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.gm-picks{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.gm-note{border:2px solid var(--ink);background:var(--card);padding:clamp(16px,2vw,26px)}
.gm-gtk{border-top:2px solid var(--ink);margin-top:16px;padding-top:12px}
.gm-pairhead{max-width:none;margin-bottom:16px}
.gm-anchor{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.gm-form{display:grid;gap:16px;max-width:640px}
.gm-form label{font-size:var(--t-micro);letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--ink-soft);display:block;margin-bottom:6px}
.gm-form input,.gm-form select,.gm-form textarea{width:100%;background:var(--card);border:2px solid var(--ink);padding:11px 13px}
.gm-check{display:flex;gap:10px;align-items:flex-start}
.gm-check input{width:auto;border:2px solid var(--ink)}
.gm-check span{font-size:.95rem}
.gm-btn{background:var(--c);color:var(--on-c);border:2px solid var(--c);padding:11px 22px;cursor:pointer;font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.06em;justify-self:start}
.gm-foot-top{border-bottom:1px solid rgba(247,246,242,.28);padding-bottom:26px}
.gm-foot-top p{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(1.6rem,3.4vw,2.6rem);line-height:1.02;max-width:22ch}
.gm-foot-cols{display:grid;gap:26px;grid-template-columns:minmax(0,1fr);padding-top:26px;padding-bottom:26px}
@media (min-width:640px){.gm-foot-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media (min-width:900px){.gm-foot-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}}
.gm-foot-cols li{padding:4px 0;font-size:.97rem}
.gm-foot-end{border-top:1px solid rgba(247,246,242,.28);padding-top:20px;padding-bottom:34px;display:flex;flex-wrap:wrap;gap:8px 30px;font-size:.9rem}
.gm-foot .gm-micro{color:rgba(247,246,242,.72)}
.gm-fine{font-size:.9rem;color:var(--ink-soft);max-width:80ch}
.gm-legal p{max-width:76ch}
.gm-legal h2{margin-top:38px}
.gm-legal h3{margin-top:24px}
.gm-legal ul{margin-top:10px}
.gm-legal li{padding:5px 0;border-bottom:1px solid var(--line);max-width:76ch}
.gm-big{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(1.9rem,5vw,3.6rem);line-height:1.02;max-width:20ch}
.gm-quiet{color:var(--ink-soft)}
.gm-inv{color:rgba(247,246,242,.78)}
.band-art{--c:#1D4ED8;--on-c:#FFFFFF}
.band-capsule{--c:#B45309;--on-c:#FFFFFF}
.band-casino{--c:#4D7C0F;--on-c:#FFFFFF}
.band-ice{--c:#7C3AED;--on-c:#FFFFFF}
.gm-sec-c .gm-micro{color:inherit}
.gm-sec-c .gm-lede{color:inherit}
.gm-sec-dark .gm-micro{color:rgba(247,246,242,.72)}
.gm-sec-dark .gm-lede{color:rgba(247,246,242,.82)}
.gm-band .gm-micro{color:inherit}
