:root {
  --canvas: #f7f5f2;
  --surface: #fdfdfb;
  --surface-soft: #faf8f5;
  --ink: #010002;
  --ink-soft: #3f383a;
  --muted: #70676a;
  --line: #e6deda;
  --line-strong: #d5cac5;
  --logo-red: #fb291c;
  --accent: #f5ac3f;
  --highlight: #8a4e00;
  --brand: #f5ac3f;
  --brand-dark: #e59a2e;
  --brand-soft: #fff7e9;
  --premium: #89570a;
  --premium-bg: #fff8e8;
  --premium-line: #e8bf75;
  --verified: #147c62;
  --verified-bg: #eaf7f3;
  --whatsapp: #167b4d;
  --telegram: #168dcc;
  --danger: #b42318;
  --shadow-sm: 0 1px 2px rgba(1, 0, 2, .04), 0 8px 24px rgba(1, 0, 2, .05);
  --shadow-md: 0 2px 4px rgba(1, 0, 2, .04), 0 18px 48px rgba(1, 0, 2, .08);
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 26px;
  --container: 1240px;
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--canvas);
  font-family: var(--font);
  font-size: 17px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; }
svg { display: block; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; }
ul, ol { margin: 0; padding: 0; list-style: none; }
p, h1, h2, h3 { margin-top: 0; }
h1, h2, h3 { overflow-wrap: anywhere; color: var(--ink); letter-spacing: -.035em; line-height: 1.08; }
h1 { font-size: clamp(2.35rem, 5vw, 4.6rem); }
h2 { font-size: clamp(1.8rem, 3vw, 2.65rem); }
h3 { font-size: 1.3rem; }
:focus-visible { outline: 3px solid rgba(245, 172, 63, .42); outline-offset: 3px; }

.icon { width: 22px; height: 22px; flex: 0 0 auto; }
.icon-sm { width: 17px; height: 17px; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 1000; left: 16px; top: -80px; padding: 12px 18px; border-radius: 10px; color: var(--ink); background: var(--brand); }
.skip-link:focus { top: 16px; }
.container, .header-shell, .footer-shell, .telegram-cta-inner, .home-shell { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.narrow { max-width: 980px; }
.muted { color: var(--muted); }
.eyebrow { margin-bottom: 12px; color: var(--highlight); font-size: .75rem; font-weight: 800; letter-spacing: .13em; line-height: 1.2; text-transform: uppercase; }

/* Header and brand */
.site-header { position: relative; z-index: 50; min-height: 76px; border-bottom: 1px solid rgba(230, 222, 218, .92); background: rgba(253,253,251,.96); }
.header-shell { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand { display: inline-flex; align-items: center; gap: 11px; min-width: max-content; }
.site-header .brand { position: relative; isolation: isolate; }
.brand-logo { position: relative; width: 44px; height: 44px; flex: 0 0 44px; overflow: hidden; border-radius: 13px; background: #fdfdfb; }
.brand-logo img { position: absolute; width: 63px; max-width: none; height: auto; left: -9px; top: -12px; }
.site-header .brand-logo { background: transparent; transition: transform .3s cubic-bezier(.2,.8,.2,1); }
.site-header .brand-logo img { width: 54px; left: -5px; top: -7px; mix-blend-mode: multiply; transition: transform .3s cubic-bezier(.2,.8,.2,1); }
.brand-wordmark { position: relative; display: grid; gap: 0; font-size: .92rem; line-height: 1.02; letter-spacing: .01em; }
.brand-wordmark strong { font-size: 1.14rem; font-weight: 800; }
.brand-wordmark span { color: var(--muted); font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.site-header .brand-wordmark { transition: transform .26s ease; }
.site-header .brand-wordmark strong { transition: color .2s ease, letter-spacing .26s ease; }
.site-header .brand-wordmark span { transition: color .2s ease, letter-spacing .26s ease; }
.site-header .brand-wordmark::after { content: ""; position: absolute; left: 0; bottom: -6px; width: 42px; height: 3px; border-radius: 999px; background: linear-gradient(90deg, var(--logo-red), var(--brand)); opacity: 0; transform: scaleX(.25); transform-origin: left; transition: opacity .2s ease, transform .3s ease; }
@media (hover: hover) {
  .site-header .brand:hover .brand-logo { transform: translateY(-3px) rotate(-4deg) scale(1.06); }
  .site-header .brand:hover .brand-logo img { transform: scale(1.035); }
  .site-header .brand:hover .brand-wordmark { transform: translateX(3px); }
  .site-header .brand:hover .brand-wordmark strong { color: var(--highlight); letter-spacing: .005em; }
  .site-header .brand:hover .brand-wordmark span { color: #a75d00; letter-spacing: .17em; }
  .site-header .brand:hover .brand-wordmark::after { opacity: 1; transform: scaleX(1); }
}
.site-header .brand:focus-visible .brand-logo { transform: translateY(-2px) rotate(-3deg) scale(1.04); }
.site-header .brand:focus-visible .brand-wordmark::after { opacity: 1; transform: scaleX(1); }
.site-header .brand:active .brand-logo { transform: translateY(0) rotate(0) scale(.97); }
.main-nav { display: flex; align-items: center; gap: 28px; font-size: .94rem; font-weight: 650; }
.main-nav > a:hover { color: var(--highlight); }
.lang-switch { padding-left: 28px; border-left: 1px solid var(--line); color: var(--muted); font-size: .82rem; }
.header-submit { position: relative; display: grid; gap: 1px; padding: 4px 0; line-height: 1.15; }
.header-submit::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; border-radius: 2px; background: var(--brand); transform: scaleX(.28); transform-origin: left; transition: transform .24s ease; }
.header-submit-question { color: var(--muted); font-size: .67rem; font-weight: 650; }
.header-submit strong { color: var(--ink); font-size: .84rem; font-weight: 780; transition: color .18s ease; }
.header-submit:hover::after { transform: scaleX(1); }
.header-submit:hover strong { color: var(--highlight); }
.mobile-submit-button { display: none; }
.mobile-nav { display: none; }

/* Common controls */
.btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 22px; border: 1px solid transparent; border-radius: 13px; font-weight: 750; line-height: 1.2; transition: background .18s ease, border-color .18s ease, transform .18s ease; }
.btn:hover { transform: translateY(-1px); }
.btn-primary { color: var(--ink); background: var(--brand); }
.btn-primary:hover { background: var(--brand-dark); }
.btn-secondary { border-color: var(--line-strong); color: var(--ink); background: var(--surface); }
.btn-secondary:hover { border-color: var(--highlight); color: var(--highlight); }
.text-link { display: inline-flex; align-items: center; gap: 7px; color: var(--highlight); font-weight: 750; }
.text-link:hover { color: var(--brand-dark); }
.section-more { margin: 28px 0 0; }
.section-more > a:not(.btn) { display: inline-flex; align-items: center; gap: 7px; color: var(--highlight); font-weight: 750; }

/* Home */
.home-shell { padding-top: 28px; }
.market-hero { position: relative; overflow: hidden; min-height: 650px; padding: clamp(48px, 7vw, 88px); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); box-shadow: var(--shadow-sm); }
.market-hero::before { content: ""; position: absolute; z-index: 0; width: 470px; height: 470px; right: -125px; top: -145px; border-radius: 50%; background-color: var(--premium-bg); background-image: radial-gradient(circle, rgba(245,172,63,.38) 2px, transparent 2.5px); background-size: 30px 30px; }
.market-hero::after { display: none; }
.hero-copy, .hero-finder, .hero-actions, .hero-proof { position: relative; z-index: 1; }
.hero-copy, .hero-actions, .hero-proof { z-index: 2; }
.hero-copy { max-width: 760px; }
.hero-copy h1 { max-width: 760px; margin-bottom: 24px; font-weight: 760; }
.hero-title-line { display: block; }
.hero-title-accent { position: relative; z-index: 0; display: inline-block; padding-inline: .025em; color: var(--ink); }
.hero-title-accent::after { content: ""; position: absolute; z-index: -1; left: 0; right: 0; bottom: -.09em; height: .18em; background: rgba(245,172,63,.94); }
.hero-lead { max-width: 650px; margin-bottom: 36px; color: var(--ink-soft); font-size: clamp(1.08rem, 1.5vw, 1.3rem); line-height: 1.55; }
.hero-brand-visual { position: absolute; z-index: 1; width: 360px; height: 360px; right: clamp(20px, 3.6vw, 58px); top: 46%; transform: translateY(-50%); pointer-events: none; }
.hero-orbit { position: absolute; left: 50%; top: 50%; display: block; border: 1px solid rgba(245,172,63,.48); border-radius: 50%; transform-origin: center; }
.hero-orbit-outer { width: 100%; height: 100%; margin: -50% 0 0 -50%; animation: hero-orbit-spin 24s linear infinite; }
.hero-orbit-inner { width: 72%; height: 72%; margin: -36% 0 0 -36%; border-color: rgba(245,172,63,.32); animation: hero-orbit-spin-reverse 18s linear infinite; }
.hero-node { position: absolute; display: block; width: 11px; height: 11px; border: 3px solid var(--surface); border-radius: 50%; background: var(--brand); box-shadow: 0 0 0 1px rgba(138,78,0,.08); }
.node-one { left: 49%; top: -6px; }
.node-two { right: 8%; top: 21%; width: 12px; height: 12px; background: var(--logo-red); }
.node-three { right: 13%; bottom: 14%; }
.node-four { left: -6px; top: 57%; }
.node-five { right: 4%; top: 34%; width: 9px; height: 9px; background: var(--logo-red); }
.node-six { left: 17%; bottom: 8%; width: 9px; height: 9px; }
.hero-brand-mark { position: absolute; z-index: 2; left: 50%; top: 50%; width: 55%; aspect-ratio: 927 / 930; transform: translate(-50%,-50%); animation: hero-mark-breathe 5.5s ease-in-out infinite; filter: drop-shadow(0 12px 24px rgba(1,0,2,.08)); }
.hero-brand-mark img { width: 100%; height: 100%; object-fit: contain; }
@keyframes hero-orbit-spin { to { transform: rotate(360deg); } }
@keyframes hero-orbit-spin-reverse { to { transform: rotate(-360deg); } }
@keyframes hero-mark-breathe {
  0%, 100% { transform: translate(-50%,-50%) scale(1); }
  50% { transform: translate(-50%,calc(-50% - 4px)) scale(1.018); }
}
.hero-finder { width: min(100%, 980px); min-height: 96px; display: grid; grid-template-columns: minmax(280px, 1.45fr) minmax(210px, .8fr) auto; align-items: stretch; gap: 0; padding: 10px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-md); }
.finder-field, .finder-city { min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: 9px 20px; }
.finder-field { border-right: 1px solid var(--line); }
.finder-field > span:first-child, .finder-city > span { margin-bottom: 5px; color: var(--muted); font-size: .72rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.finder-control { display: flex; align-items: center; gap: 10px; }
.finder-control .icon, .finder-city .icon { color: var(--highlight); }
.finder-control input { width: 100%; min-width: 0; padding: 0; border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 1.08rem; }
.finder-control input::placeholder { color: #a89da0; }
.finder-city strong { min-width: 0; display: flex; align-items: center; gap: 8px; font-size: 1rem; }
.hero-finder .btn { min-width: 190px; }
.location-first-hero { min-height: 0; padding-block: clamp(48px, 6vw, 72px); }
.hero-actions { display: flex; align-items: center; gap: 18px; }
.hero-location-action { position: relative; isolation: isolate; min-width: 0; min-height: 62px; gap: 11px; padding: 7px 10px; overflow: hidden; border-color: #df9429; border-radius: 15px; background: var(--brand); box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 8px 20px rgba(138,78,0,.17); font-size: 1rem; font-weight: 820; letter-spacing: -.012em; transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease, background-color .22s ease; }
.hero-location-action::before { content: ""; position: absolute; z-index: 0; width: 96px; height: 96px; right: -54px; top: 50%; border-radius: 50%; background: rgba(255,255,255,.2); transform: translateY(-50%) scale(.9); transition: transform .32s cubic-bezier(.2,.8,.2,1), background-color .22s ease; pointer-events: none; }
.hero-location-action::after { content: ""; position: absolute; z-index: 0; top: -30%; bottom: -30%; left: -34%; width: 18%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.56), transparent); opacity: 0; transform: skewX(-18deg); animation: hero-cta-sheen 3s ease-in-out infinite; pointer-events: none; }
.hero-location-action > * { position: relative; z-index: 1; }
.hero-location-icon, .hero-location-arrow { display: grid; place-items: center; flex: 0 0 auto; }
.hero-location-icon { width: 46px; height: 46px; border: 1px solid rgba(138,78,0,.14); border-radius: 12px; background: rgba(255,255,255,.68); box-shadow: inset 0 1px 0 rgba(255,255,255,.82); transition: background-color .22s ease, transform .26s ease; }
.hero-location-icon .icon { width: 21px; height: 21px; }
.hero-location-label { min-width: 0; }
.hero-location-arrow { width: 28px; height: 28px; margin-left: 2px; border-radius: 50%; color: var(--ink); background: rgba(255,255,255,.38); transition: background-color .22s ease, transform .28s cubic-bezier(.2,.8,.2,1); }
.hero-location-arrow .icon { width: 17px; height: 17px; transform: rotate(90deg); transition: transform .28s cubic-bezier(.2,.8,.2,1); }
.hero-location-action:hover { border-color: #cd8217; background: #f8b449; box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 13px 28px rgba(138,78,0,.23); transform: translateY(-3px); }
.hero-location-action:hover::before { background: rgba(255,255,255,.28); transform: translateY(-50%) scale(1.18); }
.hero-location-action:hover .hero-location-icon { background: rgba(255,255,255,.84); transform: translateY(-1px) rotate(-5deg) scale(1.05); }
.hero-location-action:hover .hero-location-arrow { background: rgba(255,255,255,.62); transform: translateY(2px); }
.hero-location-action:hover .hero-location-arrow .icon { transform: translateY(2px) rotate(90deg); }
.hero-location-action:active { box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 4px 10px rgba(138,78,0,.18); transform: translateY(0) scale(.985); }
.hero-location-label-mobile { display: none; }
.hero-free-note { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--muted); line-height: 1.25; opacity: .9; }
.hero-free-icon { width: 22px; height: 22px; display: grid; place-items: center; flex: 0 0 22px; color: var(--verified); }
.hero-free-icon .icon { width: 18px; height: 18px; }
.hero-free-note strong, .hero-free-note small { display: block; }
.hero-free-note strong { margin-bottom: 2px; color: #554d50; font-size: .78rem; font-weight: 750; }
.hero-free-note small { color: #8a8184; font-size: .68rem; }
@keyframes hero-cta-sheen {
  0%, 66% { left: -34%; opacity: 0; }
  70% { opacity: .42; }
  86% { left: 116%; opacity: .34; }
  100% { left: 116%; opacity: 0; }
}
.hero-proof { max-width: 980px; display: flex; align-items: center; gap: 0; margin-top: 40px; }
.hero-proof > div { min-width: 150px; padding-right: 26px; margin-right: 26px; border-right: 1px solid var(--line); }
.hero-proof strong { display: block; font-size: 1.4rem; line-height: 1.2; }
.hero-proof span { color: var(--muted); font-size: .82rem; }
.hero-proof p { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--verified); font-size: .9rem; font-weight: 700; }
.hero-proof p .icon { width: 20px; height: 20px; }
.home-section { padding: 96px 0; }
.location-section { padding-top: 76px; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 36px; margin-bottom: 34px; }
.section-heading h2 { margin: 0; }
.section-heading > p { max-width: 430px; margin: 0; color: var(--muted); }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.service-card { min-height: 108px; display: grid; grid-template-columns: 54px 1fr auto; align-items: center; gap: 17px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.service-card:hover { border-color: #ddc49d; box-shadow: var(--shadow-sm); transform: translateY(-2px); }
.service-icon { position: relative; width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid #f2dfbd; border-radius: 16px; color: var(--highlight); background: linear-gradient(145deg, #fffaf0, var(--brand-soft)); }
.service-icon > .icon { width: 27px; height: 27px; }
.service-rank { position: absolute; right: -5px; bottom: -5px; min-width: 21px; height: 21px; display: grid; place-items: center; padding: 0 3px; border: 2px solid var(--surface); border-radius: 999px; color: var(--ink); background: var(--brand); font-size: .55rem; font-weight: 850; letter-spacing: .02em; line-height: 1; }
.service-copy { min-width: 0; display: grid; gap: 3px; }
.service-copy strong { overflow-wrap: anywhere; font-size: 1.05rem; line-height: 1.25; }
.service-copy span { color: var(--muted); font-size: .83rem; }
.service-card > .icon { width: 19px; color: #a89da0; }
.state-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 14px; }
.state-choice { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease; }
.state-choice[open] { border-color: #e7c88f; box-shadow: var(--shadow-sm); }
.state-choice summary { position: relative; isolation: isolate; min-height: 96px; display: grid; grid-template-columns: 62px minmax(0, 1fr) 42px; align-items: center; gap: 16px; padding: 14px 16px; overflow: hidden; cursor: pointer; list-style: none; }
.state-choice summary::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(112deg, rgba(245,172,63,.13), rgba(255,247,233,.66) 52%, rgba(251,41,28,.035)); opacity: 0; transform: translateX(-18%); transition: opacity .24s ease, transform .36s ease; }
.state-choice summary::-webkit-details-marker { display: none; }
.state-choice summary:hover .state-choice-copy strong { color: var(--highlight); }
.state-choice-coat { width: 62px; height: 62px; display: grid; place-items: center; padding: 7px; border: 1px solid #ead8bb; border-radius: 16px; background: linear-gradient(145deg, #fffaf0, var(--brand-soft)); transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease, transform .22s ease; }
.state-choice-coat img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 3px 5px rgba(35, 25, 19, .11)); transition: filter .22s ease, transform .22s ease; }
.state-choice-copy { min-width: 0; display: grid; align-content: center; gap: 4px; }
.state-choice-copy small { color: var(--highlight); font-size: .64rem; font-weight: 850; letter-spacing: .1em; line-height: 1.1; text-transform: uppercase; }
.state-choice-copy strong { overflow-wrap: anywhere; font-size: clamp(1.28rem, 2vw, 1.45rem); line-height: 1.08; transition: color .18s ease; }
.state-choice-toggle { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: var(--highlight); background: var(--brand-soft); transition: color .22s ease, transform .22s ease, background .22s ease, box-shadow .22s ease; }
.state-choice-toggle .icon { width: 19px; height: 19px; transition: transform .22s ease; }
.state-choice[open] .state-choice-toggle { transform: rotate(90deg); background: var(--brand); }
@media (hover: hover) {
  .state-choice:not([open]):hover { border-color: #ddc49d; box-shadow: 0 14px 34px rgba(55,37,20,.1); transform: translateY(-3px); }
  .state-choice:not([open]):hover summary::before { opacity: 1; transform: translateX(0); }
  .state-choice:not([open]):hover .state-choice-coat { border-color: #e1bc79; background: #fff9ed; box-shadow: 0 8px 18px rgba(91,58,18,.12); transform: translateY(-2px) scale(1.045); }
  .state-choice:not([open]):hover .state-choice-coat img { filter: drop-shadow(0 5px 8px rgba(35,25,19,.16)); transform: scale(1.06); }
  .state-choice:not([open]):hover .state-choice-toggle { color: var(--ink); background: var(--brand); box-shadow: 0 6px 14px rgba(138,78,0,.14); transform: translateX(3px); }
  .state-choice:not([open]):hover .state-choice-toggle .icon { transform: translateX(1px); }
}
.state-choice summary:focus-visible::before { opacity: 1; transform: translateX(0); }
.state-choice summary:focus-visible .state-choice-coat { border-color: #e1bc79; box-shadow: 0 8px 18px rgba(91,58,18,.12); transform: scale(1.045); }
.state-choice summary:active .state-choice-coat { transform: scale(.98); }
.state-city-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 14px; border-top: 1px solid var(--line); background: #fbf9f7; }
.state-city-list a { position: relative; isolation: isolate; min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 13px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); transition: border-color .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease; }
.state-city-list a::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(108deg, rgba(245,172,63,.14), rgba(255,249,239,.72) 58%, rgba(20,124,98,.035)); opacity: 0; transform: translateX(-18%); transition: opacity .22s ease, transform .34s ease; }
.state-city-list a > span { min-width: 0; display: grid; gap: 2px; transition: transform .22s ease; }
.state-city-list strong { overflow-wrap: anywhere; font-size: .92rem; transition: color .2s ease; }
.state-city-list small { color: var(--muted); font-size: .68rem; }
.state-city-list .icon { width: 17px; height: 17px; flex: 0 0 auto; color: var(--highlight); transition: color .2s ease, transform .22s ease; }
@media (hover: hover) {
  .state-city-list a:hover { border-color: #dfbf85; color: var(--ink); box-shadow: 0 8px 20px rgba(55,37,20,.09); transform: translateY(-2px); }
  .state-city-list a:hover::before { opacity: 1; transform: translateX(0); }
  .state-city-list a:hover > span { transform: translateX(2px); }
  .state-city-list a:hover strong { color: var(--highlight); }
  .state-city-list a:hover .icon { color: var(--ink); transform: translateX(4px); }
}
.state-city-list a:focus-visible::before { opacity: 1; transform: translateX(0); }
.state-city-list a:focus-visible .icon { color: var(--ink); transform: translateX(4px); }
.state-city-list a:active { transform: translateY(0) scale(.985); }
.cities-panel { border-top: 1px solid var(--line); }
.city-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.city-card { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 19px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); }
.city-card:hover { border-color: #ddc49d; color: var(--highlight); }
.city-card > span { min-width: 0; display: grid; gap: 2px; }
.city-card strong { overflow-wrap: anywhere; font-size: 1rem; }
.city-card small { color: var(--muted); font-size: .76rem; }
.city-card > .icon { width: 18px; color: var(--highlight); }
.city-grid:not(.city-grid-home) .city-card > .count { width: auto; display: inline-flex; color: var(--muted); font-size: .78rem; }
.trust-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; margin-bottom: 96px; padding: clamp(42px, 6vw, 72px); border-radius: var(--radius-lg); color: #fff; background: var(--ink); }
.trust-section .eyebrow { color: var(--accent); }
.trust-section h2 { margin: 0; color: #fff; }
.steps { display: grid; gap: 0; }
.steps li { display: grid; grid-template-columns: 44px 1fr; gap: 18px; padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.13); }
.steps li:last-child { border-bottom: 0; }
.steps li > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; color: var(--ink); background: var(--brand); font-weight: 800; }
.steps strong { display: block; margin-bottom: 3px; font-size: 1.08rem; }
.steps p { margin: 0; color: #c4b9b5; font-size: .93rem; }

/* Inner pages */
.page-shell { padding-top: 20px; padding-bottom: 96px; }
.breadcrumbs { overflow: hidden; margin: 4px 0 24px; color: var(--muted); font-size: .82rem; }
.breadcrumbs ol { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.breadcrumbs li { min-width: 0; display: flex; align-items: center; gap: 8px; }
.breadcrumbs li:not(:last-child)::after { content: "/"; color: #bbb0ad; }
.breadcrumbs li:last-child { overflow: hidden; text-overflow: ellipsis; }
.breadcrumbs a:hover { color: var(--highlight); }
.catalog-path { margin: 0 0 24px; }
.catalog-path ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
.catalog-path li { position: relative; min-width: 0; color: var(--muted); }
.catalog-path li:not(:last-child) { border-right: 1px solid var(--line); }
.catalog-path-item { position: relative; width: 100%; min-height: 64px; display: flex; align-items: center; gap: 11px; padding: 10px 16px; overflow: hidden; }
.catalog-path-link { isolation: isolate; cursor: pointer; transition: color .2s ease, background-color .2s ease, box-shadow .2s ease; }
.catalog-path-link::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(110deg, rgba(20,124,98,.09), rgba(245,172,63,.08)); opacity: 0; transform: translateX(-22%); transition: opacity .25s ease, transform .35s ease; }
.catalog-path-link:hover { color: var(--ink); box-shadow: inset 0 -3px 0 rgba(20,124,98,.62); }
.catalog-path-link:hover::before { opacity: 1; transform: translateX(0); }
.catalog-path-link:active { box-shadow: inset 0 -4px 0 var(--verified); }
.catalog-path-number { width: 32px; height: 32px; flex: 0 0 32px; display: grid; place-items: center; border: 1px solid var(--line-strong); border-radius: 50%; font-size: .74rem; font-weight: 850; }
.catalog-path-number .icon { width: 17px; height: 17px; }
.catalog-path strong { min-width: 0; overflow-wrap: anywhere; font-size: .82rem; }
.catalog-path .is-active { color: var(--ink); background: var(--brand-soft); }
.catalog-path .is-active .catalog-path-number { border-color: var(--brand); color: var(--ink); background: var(--brand); }
.catalog-path .is-complete { color: var(--ink-soft); }
.catalog-path .is-complete .catalog-path-number { border-color: var(--verified); color: #fff; background: var(--verified); transition: transform .25s ease, box-shadow .25s ease; }
.catalog-path-link:hover .catalog-path-number { transform: scale(1.08); box-shadow: 0 5px 14px rgba(20,124,98,.2); }
.catalog-path-back { width: 28px; height: 28px; display: grid; place-items: center; margin-left: auto; border-radius: 50%; color: var(--verified); background: rgba(20,124,98,.09); opacity: .78; transform: translateX(0); transition: opacity .2s ease, transform .25s ease, background-color .2s ease; }
.catalog-path-back .icon { width: 15px; height: 15px; transform: rotate(180deg); }
.catalog-path-link:hover .catalog-path-back,
.catalog-path-link:focus-visible .catalog-path-back { opacity: 1; background: rgba(20,124,98,.15); transform: translateX(-3px); }
.catalog-path-link:focus-visible { z-index: 2; outline-offset: -4px; }
.page-intro { padding: clamp(34px, 5vw, 62px); border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--surface); }
.page-intro h1 { max-width: 980px; margin-bottom: 20px; font-size: clamp(2.25rem, 5vw, 4rem); }
.page-lead { max-width: 820px; margin: 0; color: var(--muted); font-size: 1.08rem; }
.city-intro { max-width: none; }
.city-intro h1 { font-size: clamp(2.25rem, 4.2vw, 3.6rem); }
.city-photo-hero { position: relative; isolation: isolate; min-height: clamp(360px, 33vw, 450px); display: flex; align-items: flex-end; overflow: hidden; border-color: rgba(1,0,2,.12); background: #252022; box-shadow: 0 18px 44px rgba(1,0,2,.12); }
.city-photo-hero::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(12,9,10,.9) 0%, rgba(12,9,10,.72) 43%, rgba(12,9,10,.22) 78%, rgba(12,9,10,.08) 100%), linear-gradient(0deg, rgba(12,9,10,.5), transparent 55%); pointer-events: none; }
.city-photo-hero-image { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; animation: city-photo-reveal .8s cubic-bezier(.2,.8,.2,1) both; }
.city-intro-copy { position: relative; z-index: 2; max-width: 820px; }
.city-photo-hero .eyebrow { color: #ffc35f; text-shadow: 0 1px 12px rgba(0,0,0,.28); }
.city-photo-hero h1 { max-width: 850px; color: #fff; text-shadow: 0 2px 22px rgba(0,0,0,.34); }
.city-photo-hero .page-lead { max-width: 720px; color: rgba(255,255,255,.86); text-shadow: 0 1px 12px rgba(0,0,0,.24); }
.city-category-action { position: relative; isolation: isolate; min-height: 58px; display: inline-flex; align-items: center; justify-content: flex-start; gap: 11px; margin-top: 24px; padding: 7px 9px; overflow: hidden; border: 1px solid #df9429; border-radius: 15px; color: var(--ink); background: var(--brand); box-shadow: inset 0 1px 0 rgba(255,255,255,.46), 0 9px 22px rgba(0,0,0,.22); font-size: .92rem; font-weight: 820; transition: background-color .2s ease, border-color .2s ease, box-shadow .22s ease, transform .22s ease; }
.city-category-action::after { content: ""; position: absolute; z-index: 0; top: -35%; bottom: -35%; left: -34%; width: 20%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.58), transparent); opacity: 0; transform: skewX(-18deg); animation: hero-cta-sheen 3s ease-in-out infinite; pointer-events: none; }
.city-category-action > * { position: relative; z-index: 1; }
.city-category-icon { width: 42px; height: 42px; flex: 0 0 42px; display: grid; place-items: center; border: 1px solid rgba(138,78,0,.13); border-radius: 11px; background: rgba(255,255,255,.7); box-shadow: inset 0 1px 0 rgba(255,255,255,.84); transition: background-color .22s ease, transform .28s cubic-bezier(.2,.8,.2,1); }
.city-category-icon .icon { width: 24px; height: 24px; color: var(--ink); transition: transform .25s ease; }
.category-list-dot-one { fill: var(--logo-red); }
.category-list-dot-two { fill: var(--brand-dark); }
.category-list-dot-three { fill: var(--verified); }
.city-category-label { min-width: 0; padding-inline: 2px 3px; }
.city-category-arrow { width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.38); transition: background-color .22s ease, transform .25s ease; }
.city-category-arrow .icon { width: 17px; height: 17px; transform: rotate(90deg); transition: transform .25s ease; }
.city-category-action:hover { border-color: #cf8419; background: #f8b449; box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 12px 26px rgba(0,0,0,.25); transform: translateY(-2px); }
.city-category-action:hover .city-category-icon { background: rgba(255,255,255,.86); transform: translateY(-1px) scale(1.04); }
.city-category-action:hover .city-category-icon .icon { transform: translateX(1px); }
.city-category-action:hover .city-category-arrow { background: rgba(255,255,255,.64); transform: translateY(2px); }
.city-category-action:hover .city-category-arrow .icon { transform: translateY(2px) rotate(90deg); }
.city-category-action:active { box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 4px 10px rgba(0,0,0,.18); transform: translateY(0) scale(.985); }
.city-photo-credit { position: absolute; z-index: 3; right: 18px; bottom: 16px; max-width: min(52%, 560px); min-height: 30px; display: flex; align-items: center; gap: 5px; padding: 6px 10px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; color: rgba(255,255,255,.72); background: rgba(12,9,10,.48); box-shadow: 0 5px 18px rgba(0,0,0,.12); backdrop-filter: blur(8px); font-size: .64rem; line-height: 1.2; white-space: nowrap; }
.city-photo-credit a { min-width: 0; overflow: hidden; color: #fff; text-overflow: ellipsis; }
.city-photo-credit a:hover { color: #ffd28a; }
@keyframes city-photo-reveal {
  from { opacity: .72; transform: scale(1.025); }
  to { opacity: 1; transform: scale(1); }
}
.section-block { margin-top: 72px; }
.category-choice-section { scroll-margin-top: 24px; }
.compact-heading { margin-bottom: 24px; }
.compact-heading h2 { font-size: clamp(1.55rem, 3vw, 2.15rem); }
.chips { display: flex; flex-wrap: wrap; gap: 10px; }
.chip { min-height: 44px; display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 14px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface); font-size: .9rem; font-weight: 650; }
.chip:hover { border-color: var(--highlight); color: var(--highlight); }
.chip .count, .count { color: var(--muted); font-size: .76rem; font-weight: 750; }
.chips-large { display: grid; grid-template-columns: repeat(4, 1fr); }
.chips-large > li { min-width: 0; display: flex; }
.chips-large .chip { width: 100%; min-height: 58px; padding-inline: 17px; }
.featured-section { position: relative; isolation: isolate; overflow: hidden; padding: clamp(30px, 3.5vw, 44px); border: 1px solid #ecd19d; border-radius: 30px; background: radial-gradient(circle at 94% 4%, rgba(245,172,63,.2), transparent 27%), linear-gradient(145deg, #fff9ed 0%, #fffdf8 53%, #faf5ec 100%); box-shadow: 0 2px 3px rgba(71,46,14,.025), 0 20px 54px rgba(71,46,14,.07); }
.featured-section::before { content: ""; position: absolute; z-index: -1; left: clamp(30px, 3.5vw, 44px); top: 0; width: 170px; height: 5px; border-radius: 0 0 999px 999px; background: linear-gradient(90deg, #e69b2b, #ffd37c); box-shadow: 0 4px 16px rgba(229,154,46,.22); }
.featured-section::after { content: ""; position: absolute; z-index: -1; right: -92px; top: -118px; width: 290px; height: 290px; border: 1px solid rgba(226,159,54,.2); border-radius: 50%; box-shadow: inset 0 0 0 32px rgba(255,255,255,.12); pointer-events: none; }
.featured-heading { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-bottom: 30px; padding-bottom: 25px; border-bottom: 1px solid rgba(214,183,130,.42); }
.featured-heading-copy { max-width: 720px; }
.featured-heading h2 { margin: 0 0 10px; font-size: clamp(2rem, 3.2vw, 2.75rem); letter-spacing: -.045em; }
.featured-eyebrow { width: fit-content; min-height: 30px; display: inline-flex; align-items: center; gap: 7px; margin-bottom: 13px; padding: 5px 10px 5px 7px; border: 1px solid #e8c077; border-radius: 999px; color: #704300; background: linear-gradient(145deg, #fff8e9, #ffedc8); box-shadow: inset 0 1px 0 rgba(255,255,255,.82); }
.featured-eyebrow .icon { width: 19px; height: 19px; padding: 4px; border-radius: 50%; color: #4c2c00; background: var(--brand); }
.featured-lead { max-width: 620px; margin: 0; color: var(--muted); font-size: .96rem; line-height: 1.55; }
.featured-direct-note { flex: 0 0 auto; min-width: 215px; display: flex; align-items: center; gap: 11px; padding: 13px 15px; border: 1px solid #c2e1d7; border-radius: 15px; color: var(--verified); background: rgba(244,251,248,.92); box-shadow: 0 8px 22px rgba(20,124,98,.07); }
.featured-direct-note > .icon { width: 23px; height: 23px; }
.featured-direct-note span { display: grid; gap: 2px; }
.featured-direct-note strong { font-size: .79rem; line-height: 1.1; }
.featured-direct-note small { color: #60776f; font-size: .67rem; line-height: 1.1; }
.category-accordion-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 14px; }
.category-accordion { overflow: hidden; border: 1px solid var(--line); border-radius: 19px; background: var(--surface); transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease; }
.category-accordion[open] { grid-column: 1 / -1; border-color: #e3bd7b; box-shadow: 0 15px 38px rgba(48, 34, 22, .1); }
.category-accordion > summary { position: relative; isolation: isolate; min-height: 104px; display: grid; grid-template-columns: 66px minmax(0, 1fr) 40px; align-items: center; gap: 16px; padding: 17px; overflow: hidden; cursor: pointer; list-style: none; }
.category-accordion > summary::-webkit-details-marker { display: none; }
.category-accordion > summary::before { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(112deg, rgba(247,174,61,.14), rgba(255,249,238,.72) 52%, rgba(251,41,28,.035)); opacity: 0; transform: translateX(-18%); transition: opacity .24s ease, transform .38s ease; }
.category-accordion-icon { width: 66px; height: 66px; display: grid; place-items: center; border: 1px solid #eadbc5; border-radius: 18px; background: linear-gradient(145deg, #fff, #fff8ec); transition: border-color .24s ease, box-shadow .24s ease, transform .28s cubic-bezier(.2,.8,.2,1); }
.category-accordion-icon.category-art img { width: 58px; height: 58px; filter: drop-shadow(0 4px 7px rgba(39, 28, 20, .11)); transition: filter .24s ease, transform .28s cubic-bezier(.2,.8,.2,1); }
.category-accordion-copy { min-width: 0; display: grid; align-content: center; gap: 4px; }
.category-accordion-copy small { color: var(--highlight); font-size: .62rem; font-weight: 850; letter-spacing: .11em; line-height: 1.1; text-transform: uppercase; }
.category-accordion-copy strong { overflow-wrap: anywhere; font-size: clamp(1.12rem, 1.7vw, 1.32rem); line-height: 1.12; transition: color .2s ease; }
.category-accordion-copy > span { color: var(--muted); font-size: .8rem; line-height: 1.25; }
.category-accordion-toggle { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid #edddc5; border-radius: 12px; color: var(--highlight); background: var(--brand-soft); transition: color .24s ease, background-color .24s ease, border-color .24s ease, box-shadow .24s ease, transform .28s ease; }
.category-accordion-toggle .icon { width: 18px; height: 18px; transition: transform .28s ease; }
.category-accordion[open] .category-accordion-toggle { border-color: var(--brand-dark); color: var(--ink); background: var(--brand); box-shadow: 0 7px 16px rgba(138, 78, 0, .14); transform: rotate(90deg); }
.category-accordion-panel { padding: 14px; border-top: 1px solid var(--line); background: linear-gradient(180deg, #fbf9f6 0%, #f7f3ee 100%); animation: category-panel-in .28s cubic-bezier(.2,.8,.2,1) both; }
.category-accordion-heading { min-height: 31px; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; padding: 0 3px; color: var(--ink); font-size: .73rem; font-weight: 820; letter-spacing: .075em; text-transform: uppercase; }
.category-accordion-heading small { min-width: 25px; min-height: 25px; display: grid; place-items: center; padding: 4px 9px; border-radius: 999px; color: #765018; background: #f5e7cf; font-size: .68rem; line-height: 1.15; white-space: nowrap; }
.category-service-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.category-service-link { min-width: 0; min-height: 56px; display: grid; grid-template-columns: minmax(0, 1fr) 18px; align-items: center; gap: 12px; padding: 13px 15px; border: 1px solid #e7dfd6; border-radius: 14px; color: var(--ink); background: rgba(255,255,255,.88); box-shadow: inset 3px 0 transparent; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background-color .2s ease; }
.category-service-copy { min-width: 0; display: grid; gap: 4px; }
.category-service-copy strong { overflow-wrap: anywhere; font-size: .91rem; line-height: 1.22; }
.category-service-link.is-nearby { border-color: #e5ca98; background: #fffbf2; box-shadow: inset 3px 0 var(--brand); }
.category-service-nearby { display: flex; align-items: center; gap: 5px; color: #7b571d; font-size: .7rem; font-weight: 680; line-height: 1.25; }
.category-service-nearby .icon { width: 13px; height: 13px; color: #a7660c; }
.category-accordion-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 13px; border-top: 1px solid #e4ddd4; }
.category-accordion-actions.is-single { grid-template-columns: 1fr; }
.category-nearby-disclosure { position: relative; min-width: 0; grid-column: 1; overflow: hidden; background: linear-gradient(135deg, #d9f3e9 0%, #c8eadc 100%); box-shadow: inset 0 0 0 1px rgba(20,124,98,.16); }
.category-accordion-actions.is-single .category-nearby-disclosure { grid-column: 1; border-left: 0; }
.category-nearby-disclosure[open] { grid-column: 1 / -1; border-left: 0; }
.category-nearby-disclosure-summary { position: relative; isolation: isolate; min-height: 68px; display: grid; grid-template-columns: 32px minmax(0, 1fr) auto 24px; align-items: center; gap: 10px; padding: 10px 14px; color: #075d4b; cursor: pointer; list-style: none; transition: color .2s ease, background-color .2s ease, box-shadow .2s ease; }
.category-nearby-disclosure-summary::-webkit-details-marker { display: none; }
.category-nearby-disclosure-summary > * { position: relative; z-index: 1; }
.category-nearby-disclosure:not([open]) .category-nearby-disclosure-summary::after { content: ""; position: absolute; z-index: 0; top: -40%; bottom: -40%; left: -28%; width: 20%; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(255,255,255,.78), transparent); transform: skewX(-18deg); animation: category-nearby-shine 4s ease-in-out infinite; }
.category-nearby-disclosure-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; color: #0c6b55; background: rgba(255,255,255,.68); box-shadow: 0 4px 12px rgba(13,107,86,.11); }
.category-nearby-disclosure-icon .icon { width: 18px; height: 18px; }
.category-nearby-disclosure-copy { min-width: 0; display: flex; flex-direction: column-reverse; gap: 1px; }
.category-nearby-disclosure-copy strong { font-size: .88rem; line-height: 1.2; }
.category-nearby-disclosure-copy small { color: #356f61; font-size: .65rem; font-weight: 650; line-height: 1.25; }
.category-nearby-disclosure-count { min-width: 25px; height: 25px; display: grid; place-items: center; padding: 0 6px; border-radius: 999px; color: #fff; background: #147c62; box-shadow: 0 4px 10px rgba(20,124,98,.2); font-size: .67rem; font-weight: 800; }
.category-nearby-disclosure-toggle { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 8px; color: #0c6b55; background: rgba(255,255,255,.55); transition: transform .22s ease, background-color .2s ease; }
.category-nearby-disclosure-toggle .icon { width: 16px; height: 16px; transition: transform .24s ease; }
.category-nearby-disclosure[open] .category-nearby-disclosure-summary { border-bottom: 1px solid #d7e5df; background: #e7f3ef; }
.category-nearby-disclosure[open] .category-nearby-disclosure-toggle .icon { transform: rotate(90deg); }
.category-nearby-panel { padding: 12px; background: linear-gradient(135deg, #f3f9f6 0%, #fbfdfc 100%); animation: category-panel-in .22s ease both; }
.category-nearby-city-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 9px; }
.category-nearby-city { min-width: 0; overflow: hidden; border: 1px solid #e9dfd2; border-radius: 14px; background: rgba(255,255,255,.92); box-shadow: 0 4px 12px rgba(60,39,15,.035); }
.category-nearby-city-heading { min-height: 58px; display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-bottom: 1px solid #eee5d9; background: rgba(255,255,255,.64); }
.category-nearby-city-marker { width: 32px; height: 32px; display: grid; place-items: center; flex: 0 0 32px; border-radius: 10px; color: #8a570c; background: var(--brand-soft); }
.category-nearby-city-marker .icon { width: 16px; height: 16px; }
.category-nearby-city-heading > span:last-child { min-width: 0; display: grid; gap: 1px; }
.category-nearby-city-heading strong { overflow-wrap: anywhere; font-size: .88rem; line-height: 1.2; }
.category-nearby-city-heading small { color: var(--muted); font-size: .68rem; line-height: 1.25; }
.category-nearby-service-list { display: grid; padding: 4px 10px 7px; }
.category-nearby-service-link { min-width: 0; min-height: 41px; display: grid; grid-template-columns: minmax(0, 1fr) 15px; align-items: center; gap: 9px; padding: 8px 2px; border-bottom: 1px solid #f0ebe4; color: var(--ink); transition: color .2s ease, transform .2s ease; }
.category-nearby-service-link:last-child { border-bottom: 0; }
.category-nearby-service-link strong { overflow-wrap: anywhere; font-size: .79rem; line-height: 1.25; }
.category-nearby-service-link .icon { width: 15px; height: 15px; color: #aaa097; transition: color .2s ease, transform .2s ease; }
.category-service-arrow { width: 17px; height: 17px; color: #a69c93; transition: color .2s ease, transform .2s ease; }
.category-all-link { min-width: 0; min-height: 52px; display: grid; grid-column: 2; grid-template-columns: auto 16px; align-items: center; align-self: stretch; justify-content: end; gap: 7px; padding: 8px 14px; color: #756c64; background: transparent; font-size: .74rem; transition: color .2s ease, background-color .2s ease; }
.category-accordion-actions.is-single .category-all-link { grid-column: 1; border-left: 0; }
.category-nearby-disclosure[open] + .category-all-link { grid-column: 1 / -1; border-top: 1px solid #e7e0d8; }
.category-all-link > span { min-width: 0; display: block; }
.category-all-link small, .category-all-link > strong { display: none; }
.category-all-link b { font-size: .76rem; font-weight: 700; line-height: 1.2; }
.category-all-link .icon { width: 16px; height: 16px; }
@media (hover: hover) {
  .category-accordion:not([open]):hover { border-color: #ddc49d; box-shadow: 0 14px 34px rgba(55,37,20,.1); transform: translateY(-3px); }
  .category-accordion:not([open]):hover > summary::before { opacity: 1; transform: translateX(0); }
  .category-accordion:not([open]):hover .category-accordion-icon { border-color: #e1bc79; box-shadow: 0 9px 20px rgba(91,58,18,.12); transform: translateY(-2px) scale(1.04); }
  .category-accordion:not([open]):hover .category-accordion-icon img { filter: drop-shadow(0 6px 9px rgba(35,25,19,.16)); transform: scale(1.06); }
  .category-accordion:not([open]):hover .category-accordion-copy strong { color: var(--highlight); }
  .category-accordion:not([open]):hover .category-accordion-toggle { border-color: #dfa943; color: var(--ink); background: var(--brand); transform: translateX(3px); }
  .category-service-link:hover { border-color: #dfbd82; background: #fff; box-shadow: inset 3px 0 var(--brand), 0 8px 18px rgba(52,36,20,.08); transform: translateY(-2px); }
  .category-service-link.is-nearby:hover { background: #fff9eb; }
  .category-service-link:hover .category-service-arrow { color: var(--highlight); transform: translateX(3px); }
  .category-nearby-service-link:hover { color: var(--highlight); transform: translateX(2px); }
  .category-nearby-service-link:hover .icon { color: var(--highlight); transform: translateX(2px); }
  .category-nearby-disclosure:not([open]) .category-nearby-disclosure-summary:hover { color: #044d3e; background: rgba(255,255,255,.2); box-shadow: inset 0 0 0 2px rgba(20,124,98,.22); }
  .category-nearby-disclosure-summary:hover .category-nearby-disclosure-toggle { transform: translateX(2px); }
  .category-all-link:hover { color: var(--highlight); background: rgba(138,78,0,.035); }
}
@keyframes category-nearby-shine {
  0%, 66% { opacity: 0; transform: translateX(0) skewX(-18deg); }
  72% { opacity: .7; }
  86% { opacity: 0; transform: translateX(780%) skewX(-18deg); }
  100% { opacity: 0; transform: translateX(780%) skewX(-18deg); }
}
@keyframes category-panel-in {
  from { opacity: 0; transform: translateY(-7px); }
  to { opacity: 1; transform: translateY(0); }
}
.category-choice-grid, .service-selection-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.category-choice-card, .service-selection-card { min-height: 104px; display: grid; grid-template-columns: 52px minmax(0, 1fr) 20px; align-items: center; gap: 15px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.category-choice-card:hover, .service-selection-card:hover { border-color: #ddc49d; box-shadow: var(--shadow-sm); transform: translateY(-2px); }
.category-choice-icon, .service-selection-icon {
  --emblem-ink: #8a5a10;
  --emblem-bg: #fff3da;
  --emblem-accent: #f7ae3d;
  --emblem-line: #efd8a9;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border: 1px solid var(--emblem-line);
  border-radius: 15px;
  color: var(--emblem-ink);
  background: linear-gradient(145deg, #fff 0%, var(--emblem-bg) 100%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.68), 0 4px 12px rgba(52,36,20,.07);
}
.category-choice-icon::before, .service-selection-icon::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -12px;
  right: -10px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--emblem-accent);
  opacity: .3;
}
.category-choice-icon::after, .service-selection-icon::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: 8px;
  bottom: 7px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--emblem-accent);
  opacity: .82;
}
.category-choice-icon .icon, .service-selection-icon .icon { position: relative; z-index: 1; width: 27px; height: 27px; }
.category-choice-icon[data-service-icon="i-service-medical"],
.service-selection-icon[data-service-icon="i-service-medical"] { --emblem-ink: #087764; --emblem-bg: #e7f7f1; --emblem-accent: #49c4a5; --emblem-line: #bde6da; }
.category-choice-icon[data-service-icon="i-service-maternity"],
.service-selection-icon[data-service-icon="i-service-maternity"] { --emblem-ink: #b5485f; --emblem-bg: #fff0f3; --emblem-accent: #f0879b; --emblem-line: #f0c5ce; }
.category-choice-icon[data-service-icon="i-service-gynecology"],
.service-selection-icon[data-service-icon="i-service-gynecology"] { --emblem-ink: #a83e7a; --emblem-bg: #fff0f8; --emblem-accent: #df78b1; --emblem-line: #ecc5db; }
.category-choice-icon[data-service-icon="i-service-psychology"],
.service-selection-icon[data-service-icon="i-service-psychology"] { --emblem-ink: #6546a6; --emblem-bg: #f3efff; --emblem-accent: #9b7cdf; --emblem-line: #d8cff0; }
.category-choice-icon[data-service-icon="i-service-ophthalmology"],
.service-selection-icon[data-service-icon="i-service-ophthalmology"] { --emblem-ink: #275fa7; --emblem-bg: #edf4ff; --emblem-accent: #70a3e9; --emblem-line: #c8d8ee; }
.category-choice-icon[data-service-icon="i-service-neurology"],
.service-selection-icon[data-service-icon="i-service-neurology"] { --emblem-ink: #7250a2; --emblem-bg: #f5f0fb; --emblem-accent: #ad88d5; --emblem-line: #ddcfea; }
.category-choice-icon[data-service-icon="i-service-urology"],
.service-selection-icon[data-service-icon="i-service-urology"] { --emblem-ink: #117287; --emblem-bg: #eaf8fa; --emblem-accent: #55bdca; --emblem-line: #c1e2e7; }
.category-choice-icon[data-service-icon="i-service-veterinary"],
.service-selection-icon[data-service-icon="i-service-veterinary"] { --emblem-ink: #56731e; --emblem-bg: #f4f8e9; --emblem-accent: #e2a53c; --emblem-line: #d8e2bd; }
.category-choice-icon[data-service-icon="i-service-cardiology"],
.service-selection-icon[data-service-icon="i-service-cardiology"] { --emblem-ink: #b23d43; --emblem-bg: #fff0ef; --emblem-accent: #ed7775; --emblem-line: #efc3c1; }
.category-choice-icon[data-service-icon="i-service-pediatrics"],
.service-selection-icon[data-service-icon="i-service-pediatrics"] { --emblem-ink: #a85b12; --emblem-bg: #fff4df; --emblem-accent: #f1aa3e; --emblem-line: #edd3a7; }
.category-choice-icon[data-service-icon="i-service-physiotherapy"],
.service-selection-icon[data-service-icon="i-service-physiotherapy"] { --emblem-ink: #147668; --emblem-bg: #eaf8f4; --emblem-accent: #57bea9; --emblem-line: #c1e4dc; }
.category-choice-icon[data-service-icon="i-service-dermatology"],
.service-selection-icon[data-service-icon="i-service-dermatology"] { --emblem-ink: #a9543d; --emblem-bg: #fff2ec; --emblem-accent: #eb9272; --emblem-line: #eccbbd; }
.category-choice-icon[data-service-icon="i-service-ent"],
.service-selection-icon[data-service-icon="i-service-ent"] { --emblem-ink: #2b659c; --emblem-bg: #edf6fb; --emblem-accent: #6ba9d5; --emblem-line: #c9deeb; }
.category-choice-icon[data-service-icon="i-service-orthopedics"],
.service-selection-icon[data-service-icon="i-service-orthopedics"] { --emblem-ink: #4d55a5; --emblem-bg: #f0f1ff; --emblem-accent: #858fe0; --emblem-line: #cfd2ef; }
.category-choice-icon[data-service-icon="i-service-occupational-therapy"],
.service-selection-icon[data-service-icon="i-service-occupational-therapy"] { --emblem-ink: #8b6518; --emblem-bg: #fff7e6; --emblem-accent: #45ae9d; --emblem-line: #ead7ad; }
.category-choice-icon[data-service-icon="i-service-dental"],
.service-selection-icon[data-service-icon="i-service-dental"] { --emblem-ink: #087489; --emblem-bg: #e7f7fa; --emblem-accent: #49bfd2; --emblem-line: #bde3ea; }
.category-choice-icon[data-service-icon="i-service-nails"],
.service-selection-icon[data-service-icon="i-service-nails"] { --emblem-ink: #aa3978; --emblem-bg: #fff0f8; --emblem-accent: #e878b4; --emblem-line: #f0c5dc; }
.category-choice-icon[data-service-icon="i-service-eyes"],
.service-selection-icon[data-service-icon="i-service-eyes"] { --emblem-ink: #6646a9; --emblem-bg: #f2efff; --emblem-accent: #9576dc; --emblem-line: #d7cef2; }
.category-choice-icon[data-service-icon="i-service-permanent"],
.service-selection-icon[data-service-icon="i-service-permanent"] { --emblem-ink: #ae4d3f; --emblem-bg: #fff0ec; --emblem-accent: #ef876d; --emblem-line: #f0c8bd; }
.category-choice-icon[data-service-icon="i-service-hair-removal"],
.service-selection-icon[data-service-icon="i-service-hair-removal"] { --emblem-ink: #80509f; --emblem-bg: #f8efff; --emblem-accent: #bd80db; --emblem-line: #dfc9eb; }
.category-choice-icon[data-service-icon="i-service-cosmetology"],
.service-selection-icon[data-service-icon="i-service-cosmetology"] { --emblem-ink: #b84f6a; --emblem-bg: #fff1f2; --emblem-accent: #f09189; --emblem-line: #f0c6cc; }
.category-choice-icon[data-service-icon="i-service-beauty"],
.service-selection-icon[data-service-icon="i-service-beauty"] { --emblem-ink: #aa3f5e; --emblem-bg: #fff0f3; --emblem-accent: #ef7891; --emblem-line: #efc4cf; }
.category-choice-icon[data-service-icon="i-service-camera"],
.service-selection-icon[data-service-icon="i-service-camera"] { --emblem-ink: #6948a7; --emblem-bg: #f3efff; --emblem-accent: #f0a641; --emblem-line: #d7cef0; }
.category-choice-icon[data-service-icon="i-service-legal"],
.service-selection-icon[data-service-icon="i-service-legal"] { --emblem-ink: #4658aa; --emblem-bg: #eef1ff; --emblem-accent: #7f91e6; --emblem-line: #cbd3f1; }
.category-choice-icon[data-service-icon="i-service-auto"],
.service-selection-icon[data-service-icon="i-service-auto"] { --emblem-ink: #17699e; --emblem-bg: #eaf5fd; --emblem-accent: #49a7df; --emblem-line: #bfdded; }
.category-choice-icon[data-service-icon="i-service-home"],
.service-selection-icon[data-service-icon="i-service-home"] { --emblem-ink: #925918; --emblem-bg: #fff3e0; --emblem-accent: #efa43a; --emblem-line: #edd1a6; }
.category-choice-icon[data-service-icon="i-service-finance"],
.service-selection-icon[data-service-icon="i-service-finance"] { --emblem-ink: #247149; --emblem-bg: #edf8ef; --emblem-accent: #5ab978; --emblem-line: #c6e3cd; }
.category-choice-icon[data-service-icon="i-service-education"],
.service-selection-icon[data-service-icon="i-service-education"] { --emblem-ink: #3f60a0; --emblem-bg: #eef4ff; --emblem-accent: #78a1e8; --emblem-line: #cad8ef; }
.category-choice-icon[data-service-icon="i-service-travel"],
.service-selection-icon[data-service-icon="i-service-travel"] { --emblem-ink: #117687; --emblem-bg: #eaf9fa; --emblem-accent: #50c1ca; --emblem-line: #bee3e6; }
.category-choice-icon[data-service-icon="i-service-moving"],
.service-selection-icon[data-service-icon="i-service-moving"],
.category-choice-icon[data-service-icon="i-service-transport"],
.service-selection-icon[data-service-icon="i-service-transport"] { --emblem-ink: #b85820; --emblem-bg: #fff0e7; --emblem-accent: #ed9052; --emblem-line: #efcbb5; }
.category-choice-icon[data-service-icon="i-languages"],
.service-selection-icon[data-service-icon="i-languages"] { --emblem-ink: #176a79; --emblem-bg: #ebf8f6; --emblem-accent: #edaa3e; --emblem-line: #c3e2de; }
.category-choice-icon[data-service-icon="i-service-general"],
.service-selection-icon[data-service-icon="i-service-general"] { --emblem-ink: #66566f; --emblem-bg: #f4f1f6; --emblem-accent: #a98cb7; --emblem-line: #dcd2e1; }
.category-art {
  overflow: visible;
  border-color: var(--line);
  background: #fff;
  box-shadow: 0 5px 14px rgba(45,35,28,.07);
}
.category-art::before, .category-art::after { content: none; }
.category-art img {
  width: 48px;
  height: 48px;
  max-width: none;
  object-fit: contain;
  transform: translateZ(0);
}
.category-choice-copy, .service-selection-copy { min-width: 0; display: grid; gap: 4px; }
.category-choice-copy strong, .service-selection-copy strong { overflow-wrap: anywhere; font-size: 1rem; line-height: 1.25; }
.category-choice-copy span, .service-selection-copy span { color: var(--muted); font-size: .76rem; }
.category-choice-arrow, .service-selection-arrow { width: 18px; height: 18px; color: #a89da0; }
.service-selection-card { min-height: 62px; grid-template-columns: minmax(0, 1fr) 20px; gap: 14px; padding: 16px 18px; box-shadow: inset 3px 0 transparent; }
.service-selection-copy { display: block; }
@media (hover: hover) {
  .service-selection-card:hover { box-shadow: inset 3px 0 var(--brand), var(--shadow-sm); }
  .service-selection-card:hover .service-selection-arrow { color: var(--highlight); transform: translateX(3px); }
}
.subcategory-section { padding: 34px; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fbf9f7; }
.subcategory-section + .catalog-toolbar { margin-top: 36px; }
.service-selection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.category-section { padding-top: 72px; border-top: 1px solid var(--line); }
.category-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.category-card { padding: 28px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.category-card h3 { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; margin-bottom: 22px; font-size: 1.32rem; }
.category-title { min-width: 0; display: flex; align-items: center; gap: 13px; }
.category-title > a, .category-title > span:last-child { min-width: 0; overflow-wrap: anywhere; }
.category-icon { width: 46px; height: 46px; flex: 0 0 46px; display: grid; place-items: center; border: 1px solid #f2dfbd; border-radius: 14px; color: var(--highlight); background: linear-gradient(145deg, #fffaf0, var(--brand-soft)); }
.category-icon .icon { width: 24px; height: 24px; }
.category-card h3 a:hover { color: var(--highlight); }
.role-list { display: grid; gap: 0; }
.role-list li { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 0; border-bottom: 1px solid #f0ebe8; }
.role-list li:last-child { border-bottom: 0; }
.role-list a { color: var(--ink-soft); font-size: .92rem; }
.role-list a:hover { color: var(--highlight); }
.quiet-section { padding: 34px; border-radius: var(--radius-lg); background: #eee9e5; }
.quiet-section h2 { margin-bottom: 22px; font-size: 1.55rem; }
.quiet-section .chip { background: rgba(255,255,255,.72); }
.related-services-section { position: relative; isolation: isolate; overflow: hidden; padding: clamp(28px, 3.4vw, 42px); border: 1px solid #e5d2b1; border-radius: 28px; background: linear-gradient(135deg, #fff9ed 0%, #fffdf9 48%, #f8f3ec 100%); box-shadow: 0 16px 42px rgba(66,46,25,.075); }
.related-services-section::before { content: ""; position: absolute; z-index: -1; inset: 0 auto auto 42px; width: 170px; height: 5px; border-radius: 0 0 7px 7px; background: linear-gradient(90deg, #ef9f2b, #ffd27b); }
.related-services-section::after { content: ""; position: absolute; z-index: -1; right: -115px; top: -145px; width: 330px; height: 330px; border: 1px solid rgba(218,151,48,.14); border-radius: 50%; box-shadow: inset 0 0 0 38px rgba(245,172,63,.03), inset 0 0 0 86px rgba(245,172,63,.02); }
.related-services-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 25px; }
.related-services-heading > div { min-width: 0; }
.related-services-heading .eyebrow { margin-bottom: 8px; color: #8d5707; }
.related-services-heading h2 { margin: 0 0 9px; font-size: clamp(1.8rem, 3vw, 2.35rem); line-height: 1.04; letter-spacing: -.04em; }
.related-services-heading > div > p:last-child { max-width: 610px; margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.5; }
.related-services-count { min-width: max-content; min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 8px 14px; border: 1px solid #2a2526; border-radius: 13px; color: #fff; background: linear-gradient(145deg, #282224, #0a0809); box-shadow: inset 0 1px 0 rgba(255,255,255,.11), 0 9px 20px rgba(18,13,14,.13); font-size: .74rem; font-weight: 820; white-space: nowrap; }
.related-services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 245px), 1fr)); gap: 10px; }
.related-services-grid > li { min-width: 0; display: flex; }
.related-service-link { position: relative; width: 100%; min-width: 0; min-height: 68px; display: grid; grid-template-columns: minmax(0,1fr) 34px; align-items: center; gap: 13px; overflow: hidden; padding: 13px 13px 13px 17px; border: 1px solid #e7ddd4; border-radius: 16px; background: rgba(255,255,255,.92); box-shadow: 0 7px 18px rgba(60,43,28,.045); font-size: .88rem; font-weight: 780; line-height: 1.25; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.related-service-link::before { content: ""; position: absolute; left: 0; top: 15px; bottom: 15px; width: 3px; border-radius: 0 4px 4px 0; background: #f2ab3f; opacity: .55; transition: top .2s ease, bottom .2s ease, opacity .2s ease; }
.related-service-link > span { min-width: 0; overflow-wrap: anywhere; }
.related-service-link .icon { width: 34px; height: 34px; padding: 10px; border: 1px solid #f1dab4; border-radius: 11px; color: #7e4b00; background: #fff5e3; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
@media (hover: hover) {
  .related-service-link:hover { border-color: #d59a3f; box-shadow: 0 13px 27px rgba(93,59,17,.1); transform: translateY(-3px); }
  .related-service-link:hover::before { top: 0; bottom: 0; opacity: 1; }
  .related-service-link:hover .icon { border-color: #181315; color: #fff; background: #181315; transform: translateX(2px); }
}
.nearby-results-section { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(340px, .78fr) minmax(0, 1.22fr); align-items: stretch; gap: clamp(24px, 3vw, 40px); overflow: hidden; padding: clamp(26px, 3vw, 38px); border: 1px solid #dcb470; border-radius: 30px; background: #f7f3eb; box-shadow: 0 22px 58px rgba(50,42,33,.12); }
.nearby-results-section::before { content: ""; position: absolute; z-index: 0; inset: 0; background: linear-gradient(100deg, rgba(249,245,237,.1), rgba(249,245,237,.5)), url('/assets/backgrounds/nearby-cities-map.jpg') center / cover no-repeat; opacity: .96; pointer-events: none; }
.nearby-results-section::after { content: ""; position: absolute; z-index: 0; right: -96px; top: -118px; width: 310px; height: 310px; border: 1px solid rgba(190,137,57,.2); border-radius: 50%; box-shadow: inset 0 0 0 38px rgba(255,255,255,.15); pointer-events: none; }
.nearby-results-section > * { position: relative; z-index: 1; }
.nearby-results-heading { position: relative; isolation: isolate; min-width: 0; display: grid; grid-template-columns: 54px minmax(0, 1fr); align-items: start; gap: 17px; overflow: hidden; padding: clamp(24px, 3vw, 34px); border: 1px solid #332b2d; border-radius: 24px; color: #fff; background: radial-gradient(circle at 0 100%, rgba(245,172,63,.2), transparent 38%), linear-gradient(145deg, #211b1d, #080708 78%); box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 18px 38px rgba(24,17,18,.22); }
.nearby-results-heading::after { content: ""; position: absolute; z-index: -1; right: -94px; bottom: -112px; width: 280px; height: 280px; border: 1px solid rgba(245,172,63,.28); border-radius: 50%; box-shadow: inset 0 0 0 34px rgba(245,172,63,.035), inset 0 0 0 78px rgba(245,172,63,.025); }
.nearby-results-mark { width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid #ffd17e; border-radius: 17px; color: #120b00; background: linear-gradient(145deg, #ffd477, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 10px 24px rgba(245,172,63,.2); }
.nearby-results-mark .icon { width: 25px; height: 25px; }
.nearby-results-copy { min-width: 0; }
.nearby-results-copy .eyebrow { margin-bottom: 10px; color: #ffc15b; }
.nearby-results-copy h2 { max-width: 420px; margin: 0 0 14px; color: #fff; font-size: clamp(1.8rem, 3vw, 2.55rem); line-height: 1.02; letter-spacing: -.045em; text-wrap: balance; }
.nearby-results-copy > p { max-width: 410px; margin: 0; color: rgba(255,255,255,.66); font-size: .91rem; line-height: 1.55; }
.nearby-origin { width: fit-content; max-width: 100%; display: inline-flex; align-items: center; gap: 10px; margin-top: 22px; padding: 9px 13px 9px 10px; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; background: rgba(255,255,255,.07); box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }
.nearby-origin > .icon { width: 18px; height: 18px; flex: 0 0 18px; color: #ffc15b; }
.nearby-origin > span { min-width: 0; display: grid; gap: 1px; }
.nearby-origin small { color: rgba(255,255,255,.53); font-size: .62rem; font-weight: 750; letter-spacing: .04em; line-height: 1.15; text-transform: uppercase; }
.nearby-origin strong { overflow-wrap: anywhere; color: #fff; font-size: .9rem; line-height: 1.2; }
.nearby-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin-top: 20px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); }
.nearby-summary > span { min-width: 0; display: grid; gap: 3px; }
.nearby-summary > span + span { margin-left: 16px; padding-left: 16px; border-left: 1px solid rgba(255,255,255,.12); }
.nearby-summary strong { color: #fff; font-size: 1rem; line-height: 1.1; }
.nearby-summary small { color: rgba(255,255,255,.48); font-size: .66rem; line-height: 1.25; }
.nearby-city-list { min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)); gap: 12px; }
.nearby-city-card { position: relative; min-height: 170px; display: grid; grid-template-columns: minmax(0, 1fr); align-content: center; align-items: center; gap: 14px 16px; overflow: hidden; padding: 16px; border: 1px solid #ded4c8; border-radius: 19px; background: rgba(255,255,255,.95); box-shadow: 0 10px 28px rgba(65,43,18,.07); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; backdrop-filter: blur(5px); }
.nearby-city-card.is-nearest { grid-template-columns: 54px minmax(0, 1fr); border-color: #d7a04a; background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(255,248,232,.98)); box-shadow: 0 15px 34px rgba(118,73,9,.13); }
.nearby-city-card.is-nearest::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, #f5ac3f, #ffd37f); }
.nearby-city-pin { width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid #f0d6cf; border-radius: 16px; color: #e5362c; background: linear-gradient(145deg, #fffefd, #fff4f1); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 5px 12px rgba(83,59,31,.04); }
.is-nearest .nearby-city-pin { border-color: #f0cb8a; color: #120b00; background: linear-gradient(145deg, #ffd47d, #f5ac3f); box-shadow: 0 8px 17px rgba(166,101,10,.16); }
.nearby-city-pin .icon { width: 23px; height: 23px; }
.nearby-city-copy { min-width: 0; display: grid; gap: 3px; }
.nearby-city-copy small { color: #80510d; font-size: .62rem; font-weight: 850; letter-spacing: .08em; line-height: 1.15; text-transform: uppercase; }
.nearby-city-copy strong { overflow-wrap: anywhere; font-size: 1.2rem; line-height: 1.14; letter-spacing: -.02em; }
.nearby-city-distance { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 6px; color: var(--muted); font-size: .74rem; line-height: 1.3; }
.nearby-city-distance b { color: #342c2e; font-size: .8rem; font-weight: 850; }
.nearby-city-distance em { color: var(--muted); font-style: normal; }
.nearby-city-action { position: relative; min-height: 46px; display: flex; grid-column: 1 / -1; align-items: center; justify-content: space-between; gap: 8px; overflow: hidden; padding: 0 9px 0 14px; border: 1px solid #df9a33; border-radius: 12px; color: #1b1000; background: linear-gradient(145deg, #ffc664, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 7px 16px rgba(129,78,8,.12); font-size: .72rem; font-weight: 850; white-space: nowrap; }
.nearby-city-action .icon { width: 29px; height: 29px; padding: 8px; border-radius: 50%; color: #fff; background: #171214; box-shadow: 0 4px 10px rgba(23,18,20,.2); transition: transform .2s ease, background .2s ease; }
.is-nearest .nearby-city-action::before { content: ""; position: absolute; top: -50%; bottom: -50%; left: -34%; width: 22%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent); transform: skewX(-18deg); animation: nearby-action-shine 4.2s ease-in-out infinite; }
@keyframes nearby-action-shine { 0%, 68% { left: -34%; } 100% { left: 124%; } }
.nearby-city-list > li:only-child .nearby-city-card { min-height: 126px; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 16px; padding: 17px; }
.nearby-city-list > li:only-child .nearby-city-action { grid-column: auto; justify-content: center; border-color: #df9a33; color: #1b1000; background: linear-gradient(145deg, #ffc664, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 7px 16px rgba(129,78,8,.12); }
@media (hover: hover) {
  .nearby-city-card:hover { border-color: #cf9231; box-shadow: 0 18px 38px rgba(70,45,16,.14); transform: translateY(-4px); }
  .nearby-city-card:hover .nearby-city-action .icon { background: #000; transform: translateX(3px); }
}
@media (prefers-reduced-motion: reduce) { .is-nearest .nearby-city-action::before { animation: none; } }

/* Results and professional cards */
.results-intro { padding: clamp(32px, 3.6vw, 48px); }
.results-intro-copy { min-width: 0; }
.results-intro h1 { max-width: 1080px; font-size: clamp(2.35rem, 4.3vw, 3.6rem); line-height: 1.02; }
.results-intro-photo { position: relative; min-height: 360px; display: flex; align-items: flex-end; isolation: isolate; overflow: hidden; padding: 0; border-color: #5f5144; background: #17120f; }
.results-intro-photo .results-intro-copy { position: relative; z-index: 2; width: min(78%, 940px); padding: clamp(40px, 5vw, 66px); }
.results-intro-photo .eyebrow { color: #ffc462; }
.results-intro-photo h1 { max-width: 900px; color: #fff; text-wrap: balance; text-shadow: 0 2px 18px rgba(0,0,0,.2); }
.results-intro-photo .page-lead { color: rgba(255,255,255,.88); text-shadow: 0 1px 10px rgba(0,0,0,.25); }
.results-intro-visual { position: absolute; z-index: 0; inset: 0; overflow: hidden; background: #4a3829; }
.results-intro-visual::before { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(12,9,8,.94) 0%, rgba(12,9,8,.78) 45%, rgba(12,9,8,.28) 76%, rgba(12,9,8,.13) 100%); }
.results-intro-visual::after { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(0deg, rgba(12,9,8,.5) 0%, transparent 62%); }
.results-intro-visual img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: 62% 58%; transform: scale(1.015); }
.results-scroll-action { padding-left: 19px; }
.results-scroll-action .city-category-label { flex: 1; }
.results-section, .nearby-results-section, .related-services-section { scroll-margin-top: 24px; }
.catalog-context { margin-top: 24px; }
.toolbar-city { min-height: 52px; display: inline-flex; align-items: center; gap: 8px; padding: 0 17px; border: 1px solid var(--line); border-radius: 12px; font-weight: 700; }
.toolbar-city:hover { border-color: var(--highlight); color: var(--highlight); }
.toolbar-city > .icon:first-child { color: var(--highlight); }
.catalog-path-bottom { margin-top: 36px; padding-top: 24px; border-top: 1px solid var(--line); }
.catalog-path-bottom .catalog-path { margin-bottom: 0; }
.results-heading { position: relative; isolation: isolate; display: flex; align-items: center; justify-content: space-between; gap: 24px; overflow: hidden; margin-bottom: 18px; padding: 25px 28px; border: 1px solid #ead8ba; border-radius: 22px; background: linear-gradient(120deg, #fff8e9 0%, #fffdf9 52%, #fff 100%); box-shadow: 0 12px 32px rgba(76,51,24,.06); }
.results-heading::before { content: ""; position: absolute; z-index: -1; inset: 0 auto auto 28px; width: 152px; height: 4px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, #f5ac3f, #ffd27a); }
.results-heading::after { content: ""; position: absolute; z-index: -1; right: -66px; top: -92px; width: 210px; height: 210px; border: 1px solid rgba(222,158,57,.15); border-radius: 50%; box-shadow: inset 0 0 0 30px rgba(245,172,63,.035); }
.results-heading > div { min-width: 0; }
.results-kicker { margin: 0 0 7px; color: #8c5709; font-size: .68rem; font-weight: 850; letter-spacing: .1em; line-height: 1.15; text-transform: uppercase; }
.results-heading h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 2.25rem); line-height: 1.05; letter-spacing: -.04em; }
.results-heading h2 + p { max-width: 720px; margin: 10px 0 0; color: var(--muted); font-size: .86rem; line-height: 1.45; }
.result-count { min-width: max-content; min-height: 58px; display: grid; place-content: center; gap: 2px; padding: 9px 18px; border: 1px solid #2a2526; border-radius: 16px; color: #fff; background: linear-gradient(145deg, #262123, #090708); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 10px 22px rgba(17,12,13,.14); white-space: nowrap; }
.result-count small { color: rgba(255,255,255,.55); font-size: .58rem; font-weight: 750; letter-spacing: .06em; line-height: 1.1; text-transform: uppercase; }
.result-count strong { font-size: .82rem; line-height: 1.2; }
.contact-list { display: grid; grid-template-columns: 1fr; gap: 14px; }
.contact-list > li { min-width: 0; display: flex; }
.card { position: relative; width: 100%; min-width: 0; overflow: hidden; border: 1px solid #e3dcd7; border-radius: 23px; background: #fff; box-shadow: 0 2px 4px rgba(16,24,40,.02), 0 13px 34px rgba(61,42,31,.055); transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease; }
.card:hover { border-color: #cfbfae; box-shadow: 0 5px 12px rgba(16,24,40,.035), 0 20px 46px rgba(61,42,31,.1); transform: translateY(-4px); }
.card-premium { border-color: #d79e36; background: linear-gradient(112deg, #fff 0%, #fffdf7 68%, #fff6e4 100%); box-shadow: 0 2px 4px rgba(91,66,22,.045), 0 17px 40px rgba(100,63,10,.105); }
.card-premium::before { content: ""; position: absolute; z-index: 3; left: 0; right: 0; top: 0; height: 5px; background: linear-gradient(90deg, #e69a27 0%, #ffc862 52%, #f5ac3f 100%); box-shadow: 0 3px 12px rgba(229,154,46,.18); }
.card-premium:hover { border-color: #bd7d18; box-shadow: 0 5px 12px rgba(58,39,15,.055), 0 22px 48px rgba(88,54,8,.15); }
.card-premium .card-main { background: radial-gradient(circle at 8% 50%, rgba(245,172,63,.08), transparent 28%); }
.card-premium .card-media { border-color: #e5be79; background: linear-gradient(145deg, #fffdf7, #ffefd0); box-shadow: inset 0 0 0 1px rgba(255,255,255,.86), 0 12px 28px rgba(111,68,8,.105); }
.card-standard { border-color: #72b9a4; background: linear-gradient(112deg, #fff 0%, #fbfffd 70%, #edf9f5 100%); box-shadow: 0 2px 4px rgba(16,24,40,.02), 0 15px 36px rgba(20,124,98,.09); }
.card-standard::before { content: ""; position: absolute; z-index: 3; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, #147c62, #69c6a8); box-shadow: 0 3px 11px rgba(20,124,98,.16); }
.card-standard:hover { border-color: #3f9e82; box-shadow: 0 5px 12px rgba(16,24,40,.035), 0 21px 44px rgba(20,124,98,.13); }
.card-standard .card-media { border-color: #9fd4c4; background: linear-gradient(145deg, #f6fffc, #dff3ed); }
.card-free.card-no-photo .card-main::before { background: linear-gradient(180deg, #b9b0b2, #71696b); opacity: .68; }
.card-main { position: relative; min-width: 0; display: grid; grid-template-columns: 116px minmax(0, 1fr); grid-template-rows: auto auto; align-items: start; column-gap: 24px; row-gap: 0; padding: 27px 30px 24px; }
.card-no-photo .card-main { grid-template-columns: minmax(0, 1fr); padding-left: 34px; }
.card-no-photo .card-topline, .card-no-photo .card-content { grid-column: 1; }
.card-no-photo .card-main::before { content: ""; position: absolute; left: 0; top: 28px; bottom: 28px; width: 4px; border-radius: 0 5px 5px 0; background: linear-gradient(180deg, #ffc560, #ed9d28); opacity: .88; }
.card-media { position: relative; width: 116px; height: 116px; grid-column: 1; grid-row: 1 / span 2; align-self: center; overflow: hidden; border: 1px solid #eadbc7; border-radius: 20px; background: linear-gradient(145deg, #fffaf1, var(--brand-soft)); box-shadow: inset 0 0 0 1px rgba(255,255,255,.72), 0 10px 24px rgba(74,48,20,.07); }
.card-media img, .profile-media img { width: 100%; height: 100%; object-fit: cover; }
.card-media.media-portrait { height: 145px; border-radius: 18px; background: #111; }
.profile-media.media-portrait { height: 190px; background: #111; }
.card-media.media-portrait img, .profile-media.media-portrait img { object-fit: contain; }
.card-media.has-art { display: grid; place-items: center; }
.card-media .card-category-art { width: 82%; height: 82%; object-fit: contain; filter: drop-shadow(0 8px 9px rgba(72,47,20,.12)); transition: transform .25s cubic-bezier(.2,.8,.2,1); }
.card:hover .card-category-art { transform: translateY(-2px) scale(1.045); }
.card-media .avatar, .profile-media .avatar { width: 100%; height: 100%; display: grid; place-items: center; color: var(--highlight); font-size: 2.45rem; font-weight: 750; }
.avatar-network { position: absolute; right: -7px; bottom: -7px; width: 42px; height: 42px; color: var(--highlight); opacity: .18; }
.card-content { min-width: 0; grid-column: 2; grid-row: 2; align-self: start; }
.card-copy { min-width: 0; }
.card-topline { min-width: 0; grid-column: 2; grid-row: 1; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; margin-bottom: 8px; }
.card-role, .profile-kicker { margin: 0; color: #8b5405; font-size: .7rem; font-weight: 850; letter-spacing: .075em; text-transform: uppercase; }
.card-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.card-title { margin: 0 0 10px; overflow-wrap: anywhere; font-size: clamp(1.35rem, 2.3vw, 1.65rem); line-height: 1.1; letter-spacing: -.035em; }
.card-title a:hover { color: var(--highlight); }
.card-description { display: -webkit-box; overflow: hidden; max-width: 920px; margin: 0 0 16px; overflow-wrap: anywhere; color: #564e50; font-size: .93rem; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.card-description-empty { color: #978b8f; font-style: italic; }
.card-meta { display: flex; flex-wrap: wrap; gap: 7px; color: #71686b; font-size: .76rem; }
.card-meta li { min-width: 0; min-height: 31px; display: inline-flex; align-items: center; gap: 6px; overflow-wrap: anywhere; padding: 5px 10px; border: 1px solid #eee7e2; border-radius: 999px; background: #faf8f6; }
.card-meta .icon { color: #9a8e91; }
.card-meta .rating .icon { color: var(--accent); }
.badge { min-height: 26px; display: inline-flex; align-items: center; gap: 5px; padding: 4px 8px; border-radius: 8px; font-size: .67rem; font-weight: 850; letter-spacing: .035em; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.badge .icon { width: 14px; height: 14px; }
.badge-premium { border: 1px solid #e4b65d; color: #704300; background: linear-gradient(145deg, #fff7e4, #ffe6af); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 5px 12px rgba(111,68,8,.07); }
.badge-verified { color: var(--verified); background: var(--verified-bg); }
.badges { display: flex; flex-wrap: wrap; gap: 7px; }
.card-actions { min-width: 0; min-height: 72px; display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding: 12px 18px 12px 30px; border-top: 1px solid #ece5e1; background: linear-gradient(180deg, #fff, #fbf9f7); }
.card-actions:empty { display: none; }
.card-premium .card-actions { border-color: #eee0c9; background: linear-gradient(90deg, #fffdf9, #fff5e1); }
.card-standard .card-actions { border-color: #d7ebe5; background: linear-gradient(180deg, #fff, #f0faf7); }
.quick-actions { min-width: 0; display: flex; align-items: center; gap: 8px; margin-right: auto; }
.quick-contact { width: auto; min-width: 128px; min-height: 46px; display: inline-flex; align-items: center; justify-content: flex-start; gap: 8px; padding: 5px 12px 5px 7px; border: 1px solid rgba(213,202,197,.92); border-radius: 12px; color: var(--ink); background: #fff; box-shadow: 0 2px 5px rgba(16,12,13,.025); font-size: .77rem; font-weight: 790; transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease; }
.quick-contact .icon { width: 32px; height: 32px; flex: 0 0 32px; padding: 8px; border-radius: 9px; transition: transform .18s ease; }
.quick-contact:hover { color: var(--ink); border-color: #cbbdb7; background: #fff; box-shadow: 0 7px 17px rgba(33,24,19,.08); transform: translateY(-1px); }
.quick-contact:hover .icon { transform: scale(1.06); }
.quick-phone .icon { color: var(--highlight); background: #fff3df; }
.quick-whatsapp .icon { color: var(--whatsapp); background: #eaf7f1; }
.quick-telegram .icon { color: var(--telegram); background: #e9f6fc; }
.quick-contact .contact-action { display: none; }
.quick-contact .contact-value { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.card-link { position: relative; width: min(100%, 210px); min-height: 48px; display: inline-flex; align-items: center; justify-content: flex-start; gap: 9px; overflow: hidden; margin: 0; padding: 0 9px 0 16px; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; color: #fff; background: linear-gradient(145deg, #1c1819, #050405); box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 9px 20px rgba(16,12,13,.14); font-size: .78rem; font-weight: 820; white-space: nowrap; transition: color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease; }
.card-link .icon { width: 30px; height: 30px; margin-left: auto; padding: 8px; border-radius: 50%; background: rgba(255,255,255,.11); transition: background .18s ease, transform .18s ease; }
.card-link:hover { color: #fff; background: linear-gradient(145deg, #2b2527, #0b090a); box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 12px 24px rgba(16,12,13,.2); transform: translateY(-2px); }
.card-link:hover .icon { background: rgba(255,255,255,.18); transform: translateX(2px); }
.card-premium .card-link { border-color: #d89121; color: #130b00; background: linear-gradient(135deg, #ffc45d, #f4a837); box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 10px 22px rgba(148,89,7,.18); }
.card-premium .card-link .icon { background: rgba(255,255,255,.5); }
.card-premium .card-link:hover { color: #130b00; background: linear-gradient(135deg, #ffd27d, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 14px 27px rgba(148,89,7,.24); }
.card-premium .card-link:hover .icon { background: rgba(255,255,255,.67); }
.card-standard .card-link { border-color: #147c62; background: linear-gradient(145deg, #279f80, #147c62); box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 9px 20px rgba(20,124,98,.18); }
.card-standard .card-link:hover { background: linear-gradient(145deg, #31ad8c, #116e57); box-shadow: inset 0 1px 0 rgba(255,255,255,.26), 0 12px 24px rgba(20,124,98,.24); }
.contacts.js-hidden .contact-button:not(.revealed) .contact-value { display: none; }
.contacts.js-hidden .contact-button .contact-action { display: inline-flex; }
.contacts.js-hidden .quick-contact:not(.revealed) .contact-action { display: none; }
.contacts.js-hidden .quick-contact.revealed .quick-label { display: none; }

/* Profile */
.profile-page { max-width: var(--container); }
.profile-view { display: grid; gap: 28px; }
.profile-hero { position: relative; isolation: isolate; overflow: hidden; padding: 34px; border: 1px solid #ded6d1; border-radius: 30px; background: linear-gradient(145deg, #fff 0%, #fffdfa 70%, #f8f5f2 100%); box-shadow: 0 18px 48px rgba(39,28,23,.075); }
.profile-hero::before { content: ""; position: absolute; z-index: -1; top: -190px; right: -150px; width: 430px; height: 430px; border: 1px solid rgba(221,149,39,.2); border-radius: 50%; background: radial-gradient(circle, rgba(255,190,82,.13), transparent 67%); }
.profile-premium .profile-hero { border-color: #dda13a; background: linear-gradient(132deg, #fff 0%, #fffdf7 62%, #fff4dd 100%); box-shadow: 0 20px 52px rgba(116,72,9,.12); }
.profile-premium .profile-hero::after { content: ""; position: absolute; z-index: 4; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg, #e69a27, #ffca68 52%, #f4a535); }
.profile-standard .profile-hero { border-color: #7fc1ae; border-top: 4px solid #147c62; background: linear-gradient(132deg, #fff 0%, #fcfffe 65%, #edf9f5 100%); box-shadow: 0 18px 48px rgba(20,124,98,.09); }
.profile-hero-grid { min-width: 0; display: grid; grid-template-columns: minmax(270px, 350px) minmax(0, 1fr); align-items: start; column-gap: 44px; row-gap: 20px; }
.profile-hero-grid.profile-hero-grid-no-photo { grid-template-columns: minmax(0, 1fr); row-gap: 16px; }
.profile-hero:has(.profile-hero-grid-no-photo) { padding-block: 30px; }
.profile-identity { min-width: 0; grid-column: 2; grid-row: 1; padding-right: 16px; }
.profile-overview { display: contents; }
.profile-overview-copy { min-width: 0; grid-column: 2; grid-row: 2; }
.profile-hero-grid-no-photo .profile-identity,
.profile-hero-grid-no-photo .profile-overview-copy { max-width: none; grid-column: 1; padding-right: 0; }
.profile-hero-grid-no-photo .profile-identity h1 { max-width: 900px; margin-bottom: 16px; font-size: clamp(2.5rem, 4.6vw, 4.1rem); }
.profile-hero-grid-no-photo .profile-meta-pills { margin-bottom: 0; }
.profile-hero-grid-no-photo .profile-hero-description { max-width: 920px; margin-bottom: 0; }
.profile-hero-grid-no-photo .profile-assurance { display: none; }
.profile-hero-grid-no-photo .profile-contact-panel { margin-top: 0; padding-top: 24px; }
.profile-showcase { position: relative; width: 100%; aspect-ratio: 1; grid-column: 1; grid-row: 1 / span 2; display: grid; place-items: center; margin: 0; overflow: hidden; border: 1px solid #e3d8ce; border-radius: 26px; background: #f6f1ec; box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 18px 38px rgba(49,35,27,.11); }
.profile-showcase.media-portrait { aspect-ratio: 4 / 5; background: #101010; }
.profile-showcase img { position: absolute; inset: 0; width: 100%; height: 100%; min-width: 0; min-height: 0; display: block; object-fit: contain; }
.profile-showcase.media-portrait img { object-fit: contain; }
.profile-premium .profile-showcase { border-color: #dfb665; box-shadow: inset 0 1px 0 rgba(255,255,255,.85), 0 20px 42px rgba(111,68,8,.14); }
.profile-badges { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 15px; }
.profile-role { display: inline-flex; margin-bottom: 10px; color: #8b5405; font-size: .74rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.profile-role:hover { color: #5f3904; }
.profile-identity h1 { max-width: 760px; margin: 0 0 17px; overflow-wrap: anywhere; font-size: clamp(2.55rem, 4.7vw, 4.35rem); line-height: .98; letter-spacing: -.058em; }
.profile-meta-pills { min-width: 0; display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 0; color: #665e60; font-size: .79rem; }
.profile-meta-pills > * { min-width: 0; max-width: 100%; min-height: 35px; display: inline-flex; align-items: center; gap: 7px; padding: 6px 11px; border: 1px solid #e8e0dc; border-radius: 999px; background: rgba(255,255,255,.72); overflow-wrap: anywhere; white-space: normal; }
.profile-meta-pills .icon { width: 16px; height: 16px; color: #94888b; }
.profile-meta-pills .profile-rating .icon { color: var(--accent); }
.profile-verification-warning { width: fit-content; max-width: 100%; min-height: 58px; display: flex; align-items: center; gap: 11px; margin: 0 0 20px; padding: 10px 14px 10px 10px; border: 1px solid #ecd29c; border-radius: 15px; color: #84530b; background: linear-gradient(135deg, #fffaf0, #fff0d2); box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
.profile-verification-warning > .icon { width: 36px; height: 36px; flex: 0 0 36px; padding: 9px; border-radius: 11px; color: #a26409; background: #ffe5b5; }
.profile-verification-warning div { display: grid; gap: 2px; }
.profile-verification-warning strong { font-size: .79rem; }
.profile-verification-warning span { color: #8f7654; font-size: .68rem; }
.profile-hero-description { max-width: 760px; margin-bottom: 18px; }
.profile-hero-description h2 { margin: 0 0 9px; color: #302a2c; font-size: 1rem; line-height: 1.2; }
.profile-hero-description p { margin: 0; color: #51494b; font-size: .94rem; line-height: 1.7; white-space: pre-line; overflow-wrap: anywhere; }
.profile-assurance { width: fit-content; min-height: 48px; display: flex; align-items: center; gap: 9px; padding: 8px 12px 8px 8px; border: 1px solid #c9e5db; border-radius: 13px; color: #08735f; background: rgba(241,252,248,.86); }
.profile-assurance > .icon { width: 30px; height: 30px; flex: 0 0 30px; padding: 7px; border-radius: 9px; color: #078871; background: #dff5ed; }
.profile-assurance div { display: grid; gap: 2px; }
.profile-assurance strong { font-size: .79rem; }
.profile-assurance span { color: #668078; font-size: .68rem; }
.profile-contact-panel { min-width: 0; grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: 255px minmax(0, 1fr); align-items: end; gap: 24px 30px; margin-top: 2px; padding-top: 24px; border-top: 1px solid rgba(221,207,195,.86); }
.profile-contact-heading h2 { margin: 4px 0 8px; font-size: 1.45rem; line-height: 1.08; }
.profile-contact-heading > p:last-child { margin: 0; color: var(--muted); font-size: .76rem; line-height: 1.45; }
.profile-contact-buttons { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 248px)); justify-content: start; gap: 10px; }
.profile-contact-buttons > li { min-width: 0; display: grid; gap: 6px; }
.profile-contact-buttons .contact-button { --contact-color: #b8740a; --contact-start: #dc9a31; --contact-soft: #fff5df; min-width: 0; min-height: 60px; display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; grid-template-areas: "contact-icon contact-label contact-action" "contact-icon contact-value contact-value"; align-items: center; column-gap: 10px; row-gap: 2px; padding: 9px 14px; overflow: hidden; border: 1px solid rgba(0,0,0,.08); border-radius: 13px; color: #fff; background: linear-gradient(135deg, var(--contact-start), var(--contact-color)); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px color-mix(in srgb, var(--contact-color) 22%, transparent); transition: box-shadow .2s ease, transform .2s ease, filter .2s ease; }
.profile-contact-buttons .contact-button:hover { filter: saturate(1.06) brightness(1.04); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 12px 24px color-mix(in srgb, var(--contact-color) 29%, transparent); transform: translateY(-2px); }
.profile-contact-buttons .contact-button:active { box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 5px 12px color-mix(in srgb, var(--contact-color) 20%, transparent); transform: translateY(0) scale(.99); }
.profile-contact-buttons .contact-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--contact-color) 24%, transparent); outline-offset: 2px; }
.profile-contact-buttons .contact-button > .icon { grid-area: contact-icon; width: 24px; height: 24px; padding: 1px; color: #fff; background: transparent; filter: drop-shadow(0 1px 1px rgba(0,0,0,.12)); }
.profile-contact-buttons .contact-phone { --contact-color: #b86d05; --contact-start: #e4a23a; --contact-soft: #fff2dc; }
.profile-contact-buttons .contact-whatsapp { --contact-color: #117d58; --contact-start: #22a978; --contact-soft: #e8f8f1; }
.profile-contact-buttons .contact-telegram { --contact-color: #1689c5; --contact-start: #2ba9df; --contact-soft: #e8f6fd; }
.profile-contact-buttons .contact-email { --contact-color: #704784; --contact-start: #9768ad; --contact-soft: #f5eff8; }
.profile-contact-buttons .contact-website { --contact-color: #435f72; --contact-start: #69879a; --contact-soft: #edf4f7; }
.contact-label { grid-area: contact-label; min-width: 0; color: #fff; font-size: .85rem; font-weight: 820; letter-spacing: -.01em; }
.contact-value { grid-area: contact-value; min-width: 0; overflow-wrap: anywhere; color: rgba(255,255,255,.88); font-size: .68rem; line-height: 1.32; user-select: text; }
.profile-contact-buttons .contact-action { grid-area: contact-action; min-height: 24px; display: none; align-items: center; justify-content: center; gap: 7px; padding: 0; border: 0; color: #fff; background: transparent; font-size: .68rem; font-weight: 820; white-space: nowrap; }
.profile-contact-buttons .contact-action::after { content: "→"; font-size: 1rem; font-weight: 500; line-height: 1; transition: transform .18s ease; }
.profile-contact-buttons .contact-button.copy-confirmed .contact-action::after { content: "✓"; transform: none; }
.profile-contact-buttons .contact-button:hover .contact-action::after { transform: translateX(2px); }
.profile-contact-buttons .contact-button.revealed { border-color: color-mix(in srgb, var(--contact-color) 70%, #fff); color: var(--contact-color); background: linear-gradient(135deg, #fff, var(--contact-soft)); box-shadow: inset 0 0 0 1px rgba(255,255,255,.7), 0 10px 23px color-mix(in srgb, var(--contact-color) 18%, transparent); filter: none; }
.profile-contact-buttons .contact-button.revealed:hover { background: linear-gradient(135deg, #fff, color-mix(in srgb, var(--contact-soft) 88%, var(--contact-color))); filter: none; }
.profile-contact-buttons .contact-button.revealed > .icon { padding: 4px; border: 1px solid color-mix(in srgb, var(--contact-color) 22%, #fff); border-radius: 8px; color: var(--contact-color); background: #fff; filter: none; }
.profile-contact-buttons .contact-button.revealed .contact-label { color: var(--contact-color); }
.profile-contact-buttons .contact-button.revealed .contact-value { color: color-mix(in srgb, var(--contact-color) 88%, #202020); font-weight: 780; }
.profile-contact-buttons .contact-button.revealed .contact-action { min-height: 28px; padding: 4px 9px; border: 0; border-radius: 8px; color: #fff; background: var(--contact-color); box-shadow: 0 5px 12px color-mix(in srgb, var(--contact-color) 20%, transparent); }
.contact-copy { width: fit-content; min-height: 30px; display: none; justify-self: end; align-items: center; padding: 4px 10px; border: 0; border-radius: 9px; color: #6e6366; background: #f2eeeb; font: inherit; font-size: .66rem; font-weight: 800; cursor: pointer; }
.contact-copy:hover { color: #3d3537; background: #eae4e0; }
.contact-copy:focus-visible { outline: 3px solid rgba(221,151,44,.25); outline-offset: 2px; }
.contacts.js-hidden .contact-button.revealed + .contact-copy { display: inline-flex; }

@media (min-width: 701px) {
  .profile-hero .profile-verification-warning { position: absolute; z-index: 3; top: 30px; right: 30px; margin: 0; }
  .profile-hero-grid:not(.profile-hero-grid-no-photo):has(.profile-verification-warning) .profile-identity { padding-top: 72px; }
  .profile-hero-grid-no-photo:has(.profile-verification-warning) .profile-identity h1 { max-width: calc(100% - 290px); }
  .profile-reviews-panel:has(.empty-state) { display: grid; grid-template-columns: 230px minmax(0, 1fr); align-items: center; gap: 26px; padding-block: 24px; }
  .profile-reviews-panel:has(.empty-state) .profile-reviews-heading { margin: 0; padding: 0; border-bottom: 0; }
  .profile-reviews-panel:has(.empty-state) .empty-state { min-height: 72px; align-items: center; }
  .profile-reviews-panel:has(.empty-state) .profile-feedback-bar { width: 100%; grid-column: 1 / -1; }
  .profile-contact-buttons { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-end; gap: 8px; }
  .profile-hero-grid-no-photo .profile-contact-buttons { align-self: end; justify-content: flex-end; }
  .profile-contact-buttons > li { width: 230px; max-width: 100%; transition: width .2s ease; }
  .profile-contact-buttons > li:has(.contact-button.revealed) { width: 330px; }
  .profile-contact-buttons .contact-button { width: 100%; min-height: 52px; grid-template-columns: 24px minmax(0, 1fr) auto; column-gap: 9px; padding: 7px 13px; border-radius: 12px; }
  .profile-contact-buttons .contact-button:hover { transform: translateY(-1px); }
  .profile-contact-buttons .contact-button > .icon { width: 22px; height: 22px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  .profile-contact-buttons .contact-label { font-size: .82rem; }
  .profile-contact-buttons .contact-value { font-size: .68rem; }
  .profile-contact-buttons .contact-button.revealed .contact-value { cursor: copy; }
  .profile-contact-buttons .contact-action { min-height: 20px; padding: 0; border: 0; background: transparent; font-size: .64rem; }
  .profile-contact-buttons .contact-button.revealed { min-height: 62px; }
  .profile-contact-buttons .contact-button.revealed .contact-action { min-height: 27px; padding: 4px 8px; border: 0; border-radius: 8px; color: #fff; background: var(--contact-color); box-shadow: 0 4px 10px color-mix(in srgb, var(--contact-color) 18%, transparent); }
  .contacts.js-hidden .profile-contact-buttons .contact-button.revealed + .contact-copy { display: none; }
}

.profile-main-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(330px, 400px); align-items: start; gap: 26px; }
.profile-main-grid-single { grid-template-columns: 1fr; }
.profile-panel { min-width: 0; padding: 28px; border: 1px solid #e2dad5; border-radius: 24px; background: #fff; box-shadow: 0 12px 34px rgba(43,31,25,.055); }
.profile-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.profile-section-heading h2 { margin: 5px 0 0; font-size: clamp(1.55rem, 2.6vw, 2rem); line-height: 1.08; letter-spacing: -.035em; }
.profile-reviews-panel { position: relative; align-self: start; overflow: hidden; }
.profile-reviews-panel::after { content: ""; position: absolute; z-index: 0; right: -95px; top: -125px; width: 260px; height: 260px; border: 1px solid rgba(224,156,52,.13); border-radius: 50%; pointer-events: none; }
.profile-reviews-heading { position: relative; z-index: 1; align-items: center; padding-bottom: 20px; border-bottom: 1px solid #eee5df; }
.profile-rating-summary { min-width: 122px; min-height: 56px; display: grid; grid-template-columns: 29px auto; grid-template-rows: auto auto; place-content: center; column-gap: 8px; padding: 7px 12px; border: 1px solid #ebd29e; border-radius: 15px; background: linear-gradient(135deg, #fffaf0, #ffedca); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 7px 18px rgba(133,83,9,.08); }
.profile-rating-summary .icon { grid-row: 1 / -1; align-self: center; width: 29px; height: 29px; padding: 7px; border-radius: 9px; color: #fff; background: linear-gradient(135deg, #ffbd4b, #e99518); }
.profile-rating-summary strong { align-self: end; font-size: 1.2rem; line-height: 1; }
.profile-rating-summary small { align-self: start; color: #806f62; font-size: .63rem; white-space: nowrap; }
.reviews { position: relative; z-index: 1; display: grid; gap: 12px; }
.profile-main-grid-single .reviews { display: block; columns: 2; column-gap: 12px; }
.review { position: relative; min-width: 0; display: grid; grid-template-columns: 42px minmax(0, 1fr); align-content: start; gap: 13px; overflow: hidden; padding: 18px; border: 1px solid #e9e0da; border-radius: 18px; background: linear-gradient(145deg, #fff, #fcf9f6); box-shadow: 0 6px 17px rgba(45,31,25,.045); transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.profile-main-grid-single .review { width: 100%; margin: 0 0 12px; break-inside: avoid; }
.review::before { content: ""; position: absolute; inset: 15px auto 15px 0; width: 3px; border-radius: 0 3px 3px 0; background: linear-gradient(#f6b548, #e79a24); opacity: .7; }
.review:hover { border-color: #dfcbbd; box-shadow: 0 11px 24px rgba(45,31,25,.075); transform: translateY(-2px); }
.review-avatar { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid #edcf98; border-radius: 50%; color: #85530b; background: linear-gradient(145deg, #fff7e6, #ffe4b5); font-size: .92rem; font-weight: 900; }
.review-content { min-width: 0; }
.review-head { display: flex; align-items: baseline; flex-wrap: wrap; gap: 5px 12px; margin-bottom: 5px; }
.review-author { min-width: 0; overflow-wrap: anywhere; font-size: .84rem; font-weight: 850; }
.review-stars { display: inline-flex; gap: 2px; margin-bottom: 10px; color: var(--accent); }
.review-stars .icon { width: 13px; height: 13px; }
.review time { margin-left: auto; color: #9b8e89; font-size: .66rem; }
.review-text { margin: 0; color: #51494b; font-size: .84rem; line-height: 1.62; overflow-wrap: anywhere; }
.empty-state { display: flex; align-items: flex-start; gap: 15px; padding: 20px; border-radius: 14px; background: var(--surface-soft); }
.empty-state > .icon { color: var(--accent); }
.empty-state strong { display: block; margin-bottom: 3px; }
.empty-state p { margin: 0; color: var(--muted); font-size: .88rem; }
.profile-feedback-bar { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(220px, 1fr) auto; align-items: center; gap: 14px 24px; margin-top: 22px; padding-top: 20px; border-top: 1px solid #eee5df; }
.profile-feedback-copy { min-width: 0; display: grid; gap: 4px; }
.profile-feedback-copy strong { font-size: .91rem; line-height: 1.25; }
.profile-feedback-copy span { max-width: 520px; color: var(--muted); font-size: .76rem; line-height: 1.45; }
.profile-feedback-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.profile-feedback-button { min-height: 46px; display: inline-grid; grid-template-columns: 22px auto 18px; align-items: center; gap: 9px; padding: 7px 9px 7px 13px; border: 1px solid transparent; border-radius: 13px; font: inherit; font-size: .76rem; font-weight: 850; line-height: 1.1; box-shadow: inset 0 1px 0 rgba(255,255,255,.35), 0 7px 16px rgba(58,39,20,.08); cursor: pointer; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.profile-feedback-button > .icon:first-child { width: 22px; height: 22px; padding: 3px; }
.profile-feedback-review { border-color: #dc9a32; color: #1a1000; background: linear-gradient(145deg, #ffc562, #f4a93a); }
.profile-feedback-report { border-color: #e4dcd7; color: #5f5658; background: linear-gradient(145deg, #fff, #f7f3f0); box-shadow: inset 0 1px 0 #fff, 0 6px 14px rgba(58,39,20,.05); }
.profile-feedback-arrow { width: 18px; height: 18px; padding: 5px; border-radius: 50%; color: #fff; background: #181315; }
.profile-feedback-report .profile-feedback-arrow { color: #6c6264; background: #eee8e4; }
.profile-feedback-button:hover { box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 11px 22px rgba(58,39,20,.12); transform: translateY(-2px); }
.profile-feedback-button:focus-visible { outline: 3px solid rgba(224,154,47,.24); outline-offset: 2px; }
.profile-contact-report { grid-column: 2; display: flex; justify-content: flex-end; margin-top: -14px; }
.profile-contact-report-button { min-height: 38px; display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid #e7bd73; border-radius: 10px; color: #845007; background: linear-gradient(135deg, #fff8e9, #ffebc8); box-shadow: inset 0 1px 0 rgba(255,255,255,.85), 0 5px 13px rgba(139,82,6,.09); font: inherit; font-size: .69rem; font-weight: 820; cursor: pointer; transition: border-color .18s ease, color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease; }
.profile-contact-report-button .icon { width: 17px; height: 17px; color: #b46e08; }
.profile-contact-report-button:hover { border-color: #d99a36; color: #6f4000; background: linear-gradient(135deg, #fff3d8, #ffdfa5); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 8px 17px rgba(139,82,6,.14); transform: translateY(-1px); }
.profile-contact-report-button:focus-visible { outline: 3px solid rgba(224,154,47,.22); outline-offset: 2px; }
.profile-feedback-bar > small { grid-column: 1 / -1; display: inline-flex; align-items: center; justify-self: end; gap: 5px; margin-top: -6px; color: #978b86; font-size: .64rem; }
.profile-feedback-bar > small .icon { width: 13px; height: 13px; color: #168b73; }
.feedback-toast { --toast-color: #8b5908; --toast-border: #edcf96; --toast-icon: #a86605; --toast-icon-bg: #ffedc8; position: fixed; z-index: 1400; right: max(20px, env(safe-area-inset-right)); bottom: max(22px, env(safe-area-inset-bottom)); width: min(430px, calc(100vw - 32px)); min-height: 98px; display: grid; grid-template-columns: 44px minmax(0, 1fr) 32px; align-items: start; gap: 12px; padding: 16px 14px 18px 16px; overflow: hidden; border: 1px solid var(--toast-border); border-radius: 18px; color: var(--toast-color); background: linear-gradient(145deg, rgba(255,255,255,.98), #fff8e9); box-shadow: 0 20px 55px rgba(35,25,22,.2), inset 0 1px 0 rgba(255,255,255,.9); animation: feedback-toast-in .28s cubic-bezier(.2,.8,.2,1); }
.feedback-toast.is-success { --toast-color: #086b58; --toast-border: #abdccc; --toast-icon: #087b66; --toast-icon-bg: #dcf5ed; background: linear-gradient(145deg, #fbfffd, #edfaf5); }
.feedback-toast.is-info { --toast-color: #175e7d; --toast-border: #b8dce9; --toast-icon: #14789f; --toast-icon-bg: #e3f5fb; background: linear-gradient(145deg, #fcfeff, #eef9fd); }
.feedback-toast.is-error { --toast-color: #8b3f35; --toast-border: #e7bdb5; --toast-icon: #a44a3c; --toast-icon-bg: #fde9e5; background: linear-gradient(145deg, #fffdfd, #fff1ee); }
.feedback-toast-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; color: var(--toast-icon); background: var(--toast-icon-bg); }
.feedback-toast-icon .icon { width: 22px; height: 22px; }
.feedback-toast-copy { min-width: 0; padding-top: 1px; }
.feedback-toast-copy strong { display: block; margin-bottom: 5px; color: var(--toast-color); font-size: .91rem; line-height: 1.2; }
.feedback-toast-copy p { margin: 0; color: color-mix(in srgb, var(--toast-color) 78%, #5f5859); font-size: .75rem; line-height: 1.48; }
.feedback-toast-close { width: 30px; height: 30px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; color: #817779; background: rgba(255,255,255,.72); font: inherit; font-size: 1.2rem; line-height: 1; cursor: pointer; transition: color .18s ease, background .18s ease, transform .18s ease; }
.feedback-toast-close:hover { color: #241f20; background: #fff; transform: scale(1.06); }
.feedback-toast-close:focus-visible { outline: 3px solid color-mix(in srgb, var(--toast-color) 24%, transparent); outline-offset: 2px; }
.feedback-toast-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--toast-icon); transform-origin: left; animation: feedback-toast-progress 9s linear forwards; opacity: .7; }
.feedback-toast.is-leaving { pointer-events: none; animation: feedback-toast-out .22s ease forwards; }
@keyframes feedback-toast-in { from { opacity: 0; transform: translateY(16px) scale(.975); } to { opacity: 1; transform: none; } }
@keyframes feedback-toast-out { to { opacity: 0; transform: translateY(12px) scale(.985); } }
@keyframes feedback-toast-progress { from { transform: scaleX(1); } to { transform: scaleX(0); } }
.feedback-dialog { width: min(560px, calc(100vw - 28px)); max-height: min(760px, calc(100dvh - 28px)); margin: auto; padding: 0; overflow: auto; border: 1px solid #ded4cd; border-radius: 24px; color: #241f20; background: #fffdfa; box-shadow: 0 28px 90px rgba(28,20,18,.28); }
.feedback-dialog::backdrop { background: rgba(24,18,19,.58); backdrop-filter: blur(4px); }
.feedback-dialog[open] { animation: feedback-dialog-in .18s ease-out; }
@keyframes feedback-dialog-in { from { opacity: 0; transform: translateY(12px) scale(.985); } to { opacity: 1; transform: none; } }
.feedback-form { position: relative; display: grid; gap: 19px; padding: 25px; }
.feedback-dialog-heading { display: grid; grid-template-columns: 44px minmax(0, 1fr) 34px; align-items: center; gap: 12px; }
.feedback-dialog-heading h2 { margin: 3px 0 0; font-size: 1.65rem; line-height: 1.05; letter-spacing: -.035em; }
.feedback-dialog-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; }
.feedback-dialog-icon .icon { width: 22px; height: 22px; }
.feedback-dialog-icon-review { color: #fff; background: linear-gradient(145deg, #ffbd4d, #e79418); box-shadow: 0 8px 18px rgba(179,106,3,.18); }
.feedback-dialog-icon-report { color: #9a5f08; background: #ffebc4; }
.feedback-dialog-close { width: 34px; height: 34px; display: grid; place-items: center; align-self: start; padding: 0; border: 1px solid #e7ded8; border-radius: 50%; color: #766d6f; background: #fff; font: inherit; font-size: 1.35rem; line-height: 1; cursor: pointer; }
.feedback-dialog-close:hover { color: #211c1d; background: #f6f1ed; }
.feedback-dialog-lead { margin: -2px 0 0; color: #665d5f; font-size: .86rem; line-height: 1.55; }
.feedback-rating { min-width: 0; margin: 0; padding: 0; border: 0; }
.feedback-rating legend, .feedback-field > span { display: block; margin-bottom: 8px; color: #3d3638; font-size: .76rem; font-weight: 850; }
.feedback-rating-options { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 7px; }
.feedback-rating-options label { position: relative; min-width: 0; cursor: pointer; }
.feedback-rating-options input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.feedback-rating-options span { min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 5px; border: 1px solid #e8ddd5; border-radius: 12px; color: #776b67; background: #fff; font-size: .76rem; font-weight: 850; transition: border-color .16s ease, color .16s ease, background .16s ease, transform .16s ease; }
.feedback-rating-options .icon { width: 15px; height: 15px; color: #d6c7bd; }
.feedback-rating-options label:hover span { border-color: #e0b05e; transform: translateY(-1px); }
.feedback-rating-options input:checked + span { border-color: #e29b2c; color: #6e4200; background: #fff0d2; box-shadow: inset 0 0 0 1px rgba(226,155,44,.12); }
.feedback-rating-options input:checked + span .icon { color: #eea124; }
.feedback-rating-options input:focus-visible + span { outline: 3px solid rgba(226,155,44,.24); outline-offset: 2px; }
.feedback-field { display: block; min-width: 0; }
.feedback-field > span small { color: #918588; font-size: .68rem; font-weight: 650; }
.feedback-field input, .feedback-field textarea, .feedback-field select { width: 100%; min-height: 46px; padding: 11px 13px; border: 1px solid #ded5d0; border-radius: 12px; color: #2a2426; background: #fff; font: inherit; font-size: .84rem; outline: none; transition: border-color .16s ease, box-shadow .16s ease; }
.feedback-field textarea { min-height: 112px; resize: vertical; line-height: 1.5; }
.feedback-field input:focus, .feedback-field textarea:focus, .feedback-field select:focus { border-color: #d99835; box-shadow: 0 0 0 3px rgba(217,152,53,.13); }
.feedback-field > small { display: block; margin-top: 5px; color: #9a8e89; font-size: .65rem; }
.feedback-form-actions { display: grid; grid-template-columns: auto minmax(190px, 1fr); gap: 9px; margin-top: 2px; }
.feedback-cancel, .feedback-submit { min-height: 48px; padding: 9px 15px; border-radius: 13px; font: inherit; font-size: .76rem; font-weight: 850; cursor: pointer; }
.feedback-cancel { border: 1px solid #e4dcd7; color: #6f6567; background: #fff; }
.feedback-submit { display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid #df992e; color: #1b1000; background: linear-gradient(145deg, #ffc45e, #f3a638); box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 8px 18px rgba(129,78,8,.13); }
.feedback-submit .icon { width: 25px; height: 25px; padding: 7px; border-radius: 50%; color: #fff; background: #181315; }
.feedback-submit-report { border-color: #d09a47; background: linear-gradient(145deg, #ffd889, #f2b958); }
.feedback-cancel:hover { color: #2f292a; background: #f7f3f0; }
.feedback-submit:hover { filter: brightness(1.025); transform: translateY(-1px); }
.feedback-code-form { gap: 22px; }
.feedback-code-field input { min-height: 64px; text-align: center; font-size: 1.45rem; font-weight: 850; letter-spacing: .2em; font-variant-numeric: tabular-nums; }
.feedback-code-form .feedback-cancel { display: flex; align-items: center; justify-content: center; text-align: center; text-decoration: none; }
.feedback-honeypot { position: fixed !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
body.feedback-dialog-open { overflow: hidden; }
.profile-page > .similar-panel { margin-top: 48px; }
.profile-page > .similar-panel .section-heading h2 { max-width: 920px; font-size: clamp(1.75rem, 3vw, 2.5rem); }

/* City list and utility pages */
.state-panel { margin-bottom: 24px; }
.content-panel { padding: 32px; border: 1px solid var(--line); border-radius: var(--radius-md); background: var(--surface); }
.content-panel h2 { font-size: 1.55rem; }
.content-panel-muted { background: #eee9e5; }
.state-panel { margin-top: 20px; }
.state-heading { display: flex; align-items: center; gap: 18px; margin-bottom: 26px; }
.state-heading-copy { min-width: 0; display: grid; gap: 3px; }
.state-heading h2 { margin: 0; overflow-wrap: anywhere; font-size: clamp(1.5rem, 2.5vw, 2rem); line-height: 1.12; }
.state-kicker { color: var(--highlight); font-size: .7rem; font-weight: 850; letter-spacing: .11em; line-height: 1.2; text-transform: uppercase; }
.state-coat { width: 72px; height: 72px; flex: 0 0 72px; display: grid; place-items: center; padding: 8px; border: 1px solid #ead8bb; border-radius: 18px; background: linear-gradient(145deg, #fffaf0, var(--brand-soft)); }
.state-coat img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 3px 5px rgba(35, 25, 19, .12)); }
.state-panel .city-grid { grid-template-columns: repeat(3,1fr); }
.result-list { display: grid; gap: 9px; }
.result-item { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 12px 16px; border: 1px solid var(--line); border-radius: 12px; }
.result-item:hover { border-color: var(--highlight); }
.role-result { padding: 24px 0; border-bottom: 1px solid var(--line); }
.role-result:last-child { border-bottom: 0; }
.role-result h3 { display: flex; align-items: baseline; gap: 10px; }
.error-page { text-align: center; }

/* Telegram and footer */
.telegram-cta { padding: 0 0 72px; }
.telegram-cta-inner { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(330px,.78fr) minmax(520px,1.22fr); align-items: center; gap: 38px; min-height: 500px; padding: 44px 48px; overflow: hidden; border: 1px solid #a9d9ee; border-radius: 30px; background: radial-gradient(circle at 9% 14%, rgba(255,255,255,.96) 0 3%, transparent 30%), linear-gradient(120deg, #f5fcff 0%, #edf9fe 45%, #e5f5fc 100%); box-shadow: 0 22px 55px rgba(27,109,147,.1); }
.telegram-cta-inner::before { content: ""; position: absolute; z-index: -1; width: 360px; height: 360px; left: -210px; bottom: -245px; border: 1px solid rgba(34,158,217,.2); border-radius: 50%; }
.telegram-cta-inner::after { content: ""; position: absolute; z-index: -1; width: 310px; height: 310px; right: -100px; top: -180px; border-radius: 50%; background: rgba(34,158,217,.09); }
.telegram-cta-content { position: relative; z-index: 5; display: grid; justify-items: start; align-content: center; }
.telegram-icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 17px; color: #fff; background: linear-gradient(145deg, #35afe5, #168dcc); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 9px 20px rgba(34,158,217,.2); }
.telegram-icon .icon { width: 28px; height: 28px; }
.telegram-cta .cta-copy { margin-top: 24px; }
.telegram-cta h2 { max-width: 440px; margin-bottom: 13px; font-size: clamp(2rem,3vw,3rem); line-height: 1.03; letter-spacing: -.045em; }
.telegram-cta .eyebrow { margin-bottom: 10px; color: #147faf; }
.telegram-cta .cta-copy > p:last-child { max-width: 430px; margin: 0; color: #52636c; font-size: 1rem; line-height: 1.6; }
.telegram-benefits { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 24px; padding: 0; list-style: none; }
.telegram-benefits li { display: inline-flex; align-items: center; gap: 7px; min-height: 34px; padding: 7px 11px; border: 1px solid rgba(22,141,204,.16); border-radius: 999px; color: #315766; background: rgba(255,255,255,.68); font-size: .75rem; font-weight: 800; }
.telegram-benefits li::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: #229ed9; box-shadow: 0 0 0 3px rgba(34,158,217,.11); }
.telegram-button { position: relative; isolation: isolate; min-height: 58px; gap: 10px; overflow: hidden; padding-inline: 22px; border-color: #168dcc; color: #fff; background: linear-gradient(145deg, #35afe5, #168dcc); box-shadow: inset 0 1px 0 rgba(255,255,255,.26), 0 11px 24px rgba(34,158,217,.24); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .2s ease; }
.telegram-button::after, .telegram-news-card::after { content: ""; position: absolute; z-index: 0; top: -45%; bottom: -45%; left: -36%; width: 24%; pointer-events: none; opacity: 0; transform: skewX(-18deg); animation: telegram-action-sheen 4.6s ease-in-out infinite; }
.telegram-button::after { background: linear-gradient(90deg,transparent,rgba(255,255,255,.68),transparent); }
.telegram-news-card::after { width: 29%; background: linear-gradient(90deg,transparent,rgba(69,176,221,.08),rgba(255,255,255,.92),rgba(69,176,221,.08),transparent); animation-delay: 1.15s; }
.telegram-button > *, .telegram-news-card > * { position: relative; z-index: 1; }
@keyframes telegram-action-sheen {
  0%, 62% { left: -36%; opacity: 0; }
  68% { opacity: .9; }
  84% { left: 116%; opacity: .6; }
  88%, 100% { left: 116%; opacity: 0; }
}
.telegram-button > .icon:first-child { width: 21px; height: 21px; }
.telegram-button > .icon:last-child { margin-left: 3px; transition: transform .22s ease; }
.telegram-button:hover { border-color: #0c80ba; color: #fff; background: linear-gradient(145deg, #2ca9e1, #0d83be); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 12px 25px rgba(34,158,217,.29); transform: translateY(-2px); }
.telegram-button:hover > .icon:last-child { transform: translateX(3px); }
.telegram-button:active { box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 5px 12px rgba(34,158,217,.2); transform: translateY(0) scale(.99); }
.telegram-news-card { position: relative; isolation: isolate; width: min(100%,430px); min-height: 78px; display: grid; grid-template-columns: 42px minmax(0,1fr) 20px; align-items: center; gap: 12px; overflow: hidden; margin-top: 12px; padding: 10px 12px 10px 10px; border: 1px solid rgba(29,91,116,.14); border-radius: 15px; color: #233d48; background: rgba(255,255,255,.68); box-shadow: inset 0 1px 0 rgba(255,255,255,.9); transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease; }
.telegram-news-card:hover { border-color: rgba(34,158,217,.38); color: #142f3a; background: rgba(255,255,255,.94); box-shadow: 0 10px 24px rgba(37,104,132,.1); transform: translateY(-2px); }
.telegram-news-card > .icon { color: #168dcc; transition: transform .2s ease; }
.telegram-news-card:hover > .icon { transform: translateX(3px); }
.telegram-news-logo { position: relative; width: 42px; height: 42px; overflow: hidden; }
.telegram-news-logo img { position: absolute; width: 56px; max-width: none; height: auto; left: -7px; top: -8px; mix-blend-mode: multiply; }
.telegram-news-copy { min-width: 0; display: grid; gap: 2px; }
.telegram-news-kicker { color: #168dcc; font-size: .58rem; font-weight: 850; letter-spacing: .09em; line-height: 1.2; text-transform: uppercase; }
.telegram-news-copy strong { font-size: .86rem; line-height: 1.15; }
.telegram-news-copy small { overflow: hidden; color: #61727a; font-size: .69rem; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.telegram-showcase { position: relative; align-self: stretch; min-height: 440px; perspective: 1100px; }
.telegram-screen { position: absolute; bottom: 0; width: clamp(160px,32%,205px); height: auto; margin: 0; overflow: hidden; border: 7px solid rgba(255,255,255,.98); border-radius: 30px; background: #e8f1f5; box-shadow: 0 26px 50px rgba(30,73,94,.22), 0 5px 14px rgba(30,73,94,.12); transform-origin: center bottom; transition: filter .25s ease, transform .28s ease, box-shadow .28s ease; }
.telegram-screen::before { content: ""; position: absolute; z-index: 2; top: 7px; left: 50%; width: 34%; height: 12px; border-radius: 999px; background: rgba(9,22,28,.82); transform: translateX(-50%); }
.telegram-screen img { width: 100%; height: auto; display: block; }
.telegram-screen-menu { z-index: 2; left: 2%; filter: saturate(.92); transform: rotate(-5deg); }
.telegram-screen-categories { z-index: 4; left: 34%; transform: none; }
.telegram-screen-specialist { z-index: 3; right: 0; filter: saturate(.95); transform: rotate(5deg); }
.telegram-showcase:hover .telegram-screen-menu { transform: rotate(-7deg) translate(-8px,-8px); }
.telegram-showcase:hover .telegram-screen-categories { box-shadow: 0 31px 62px rgba(30,73,94,.27), 0 6px 16px rgba(30,73,94,.14); transform: translateY(-8px); }
.telegram-showcase:hover .telegram-screen-specialist { transform: rotate(7deg) translate(8px,-8px); }
.site-footer { padding: 64px 0 32px; color: #d8d0cd; background: var(--ink); }
.footer-shell { display: grid; grid-template-columns: 1.2fr .9fr; gap: 45px 80px; }
.brand-inverse { gap: 15px; color: #fff; }
.brand-inverse .footer-logo-mark { width: 58px; height: 58px; flex-basis: 58px; overflow: hidden; border: 1px solid rgba(245,172,63,.72); border-radius: 18px; background: linear-gradient(145deg, #fffaf0, #f8e7c8); box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 10px 26px rgba(245,172,63,.13); transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease; }
.brand-inverse .footer-logo-mark::after { content: ""; position: absolute; inset: 5px; border: 1px solid rgba(245,172,63,.18); border-radius: 13px; pointer-events: none; }
.brand-inverse .footer-logo-mark img { width: 70px; left: -6px; top: -9px; mix-blend-mode: multiply; }
.brand-inverse .brand-wordmark { gap: 2px; }
.brand-inverse .brand-wordmark strong { color: #fff; font-size: 1.35rem; letter-spacing: -.02em; }
.brand-inverse .brand-wordmark span { color: var(--brand); font-size: .71rem; letter-spacing: .18em; }
.brand-inverse:hover .footer-logo-mark { border-color: rgba(255,196,95,.9); box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 13px 30px rgba(245,172,63,.2); transform: translateY(-2px) rotate(-2deg); }
.footer-brand > p { max-width: 420px; margin: 20px 0 0; color: #aaa09d; font-size: .9rem; }
.footer-nav { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.footer-nav > div { display: grid; align-content: start; gap: 9px; }
.footer-nav strong { margin-bottom: 5px; color: #fff; font-size: .85rem; }
.footer-nav a { min-height: 30px; display: inline-flex; align-items: center; color: #bdb3b0; font-size: .9rem; }
.footer-nav a:hover { color: #fff; }
.footer-note { grid-column: 1 / -1; max-width: 900px; margin: 0; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.11); color: #a79c99; font-size: .8rem; line-height: 1.55; }
.footer-copy { margin: -30px 0 0 auto; color: #a79c99; font-size: .8rem; }

/* Legal documents */
.legal-page { padding-bottom: clamp(58px, 7vw, 92px); }
.legal-hero { position: relative; isolation: isolate; min-width: 0; display: grid; grid-template-columns: 66px minmax(0, 1fr) auto; align-items: center; gap: 21px; overflow: hidden; margin-bottom: 16px; padding: clamp(28px, 3.5vw, 44px); border: 1px solid #e1d1b7; border-radius: 28px; background: radial-gradient(circle at 94% 0, rgba(245,172,63,.2), transparent 30%), linear-gradient(145deg, #fffefa, #fff8e9); box-shadow: 0 20px 48px rgba(57,42,27,.08); }
.legal-hero::after { content: ""; position: absolute; z-index: -1; right: -92px; top: -150px; width: 310px; height: 310px; border: 1px solid rgba(218,146,36,.22); border-radius: 50%; }
.legal-hero-icon { width: 66px; height: 66px; display: grid; place-items: center; border: 1px solid #df9b34; border-radius: 19px; color: #372000; background: linear-gradient(145deg, #ffd275, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.65), 0 12px 25px rgba(160,95,8,.17); }
.legal-hero-icon .icon { width: 29px; height: 29px; }
.legal-hero .eyebrow { margin-bottom: 7px; }
.legal-hero h1 { max-width: 820px; margin: 0 0 9px; font-size: clamp(2.2rem, 4vw, 4rem); line-height: .98; letter-spacing: -.055em; overflow-wrap: anywhere; text-wrap: balance; }
.legal-hero > div:nth-child(2) > p:last-child { max-width: 720px; margin: 0; color: #6f6461; font-size: .92rem; line-height: 1.55; }
.legal-version { align-self: start; min-height: 32px; display: inline-flex; align-items: center; padding: 7px 11px; border: 1px solid #e5d9cd; border-radius: 999px; color: #7d716d; background: rgba(255,255,255,.74); font-size: .65rem; font-weight: 750; white-space: nowrap; }
.legal-hero-privacy { border-color: #c9e2da; background: radial-gradient(circle at 94% 0, rgba(25,141,110,.16), transparent 30%), linear-gradient(145deg, #fff, #f1fbf8); }
.legal-hero-privacy .legal-hero-icon { border-color: #65b89f; color: #fff; background: linear-gradient(145deg, #2bab88, #147c62); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 12px 25px rgba(20,124,98,.18); }
.legal-hero-privacy::after { border-color: rgba(20,124,98,.18); }
.legal-hero-terms { border-color: #d8d1ce; background: radial-gradient(circle at 94% 0, rgba(32,27,28,.09), transparent 30%), linear-gradient(145deg, #fff, #f7f4f2); }
.legal-hero-terms .legal-hero-icon { border-color: #393234; color: #fff; background: linear-gradient(145deg, #332d2f, #0e0c0d); box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 12px 25px rgba(24,18,19,.17); }
.legal-hero-terms::after { border-color: rgba(52,44,46,.12); }
.legal-nav { min-width: 0; max-width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; margin-bottom: 18px; padding: 8px; border: 1px solid #ded6d2; border-radius: 19px; background: rgba(255,255,255,.72); box-shadow: 0 10px 28px rgba(40,31,28,.05); }
.legal-nav a { min-width: 0; min-height: 56px; display: grid; grid-template-columns: 31px minmax(0, 1fr); align-items: center; gap: 10px; padding: 8px 13px; border: 1px solid transparent; border-radius: 13px; color: #6d6365; background: transparent; transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease; }
.legal-nav a > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; color: #83787a; background: #f0ecea; font-size: .62rem; font-weight: 900; }
.legal-nav a strong { overflow: hidden; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.legal-nav a:hover { color: #2b2425; border-color: #e2d6ca; background: #fffaf0; transform: translateY(-1px); }
.legal-nav a.is-active { border-color: #e0a54b; color: #2c1a00; background: linear-gradient(145deg, #fff7e4, #ffe8b8); box-shadow: inset 0 1px 0 rgba(255,255,255,.75); }
.legal-nav a.is-active > span { color: #2a1900; background: linear-gradient(145deg, #ffd276, #f5ac3f); }
.legal-layout { min-width: 0; max-width: 100%; display: grid; grid-template-columns: 225px minmax(0, 1fr); align-items: start; gap: 18px; }
.legal-aside { position: sticky; top: 92px; min-width: 0; display: grid; gap: 7px; padding: 18px; border: 1px solid #ded7d3; border-radius: 19px; background: rgba(255,255,255,.86); box-shadow: 0 14px 35px rgba(42,32,29,.06); }
.legal-aside .eyebrow { margin: 0 0 5px; }
.legal-aside > a { min-height: 43px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 10px 9px 12px; border: 1px solid #e4ddda; border-radius: 11px; color: #40383a; background: #fbf9f8; font-size: .75rem; font-weight: 800; }
.legal-aside > a:hover { border-color: #e0a54b; color: #271700; background: #fff8e9; }
.legal-aside > a span { min-width: 29px; height: 24px; display: grid; place-items: center; border-radius: 7px; color: #7c6f6b; background: #eee9e7; font-size: .56rem; font-weight: 900; }
.legal-aside-note { margin: 8px 2px 0; color: #877c79; font-size: .67rem; line-height: 1.5; }
.legal-data-note { display: grid; grid-template-columns: 25px minmax(0, 1fr); gap: 8px; margin-top: 8px; padding: 10px; border: 1px solid #c7e4db; border-radius: 12px; color: #34695b; background: #eef9f5; }
.legal-data-note .icon { width: 25px; height: 25px; padding: 5px; border-radius: 50%; color: #fff; background: #168064; }
.legal-data-note p { margin: 0; font-size: .65rem; line-height: 1.4; }
.legal-document { min-width: 0; overflow: hidden; padding: clamp(25px, 3.4vw, 46px); border: 1px solid #ddd6d2; border-radius: 24px; background: #fff; box-shadow: 0 18px 45px rgba(43,33,29,.07); overflow-wrap: anywhere; }
.legal-document h2 { scroll-margin-top: 98px; margin: 42px 0 17px; padding-bottom: 13px; border-bottom: 1px solid #eadfda; font-size: clamp(1.6rem, 2.8vw, 2.35rem); line-height: 1.08; letter-spacing: -.035em; }
.legal-document > h2:first-child { margin-top: 0; }
.legal-document h2::before { content: ""; width: 36px; height: 5px; display: block; margin-bottom: 13px; border-radius: 999px; background: linear-gradient(90deg, #f5ac3f, #ffd477); }
.legal-document h3 { margin: 31px 0 10px; color: #241e20; font-size: 1.08rem; line-height: 1.3; }
.legal-document p { max-width: 88ch; margin: 0 0 15px; color: #5f5658; font-size: .91rem; line-height: 1.72; }
.legal-document p strong { color: #292224; }
.legal-document ul { max-width: 88ch; display: grid; gap: 9px; margin: 0 0 19px; padding-left: 23px; color: #5f5658; list-style: disc; }
.legal-document li { padding-left: 4px; font-size: .89rem; line-height: 1.67; }
.legal-document li::marker { color: #e49a2a; }
.legal-document a { color: #116e93; text-decoration: underline; text-decoration-color: rgba(17,110,147,.28); text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-document a:hover { color: #0a5573; text-decoration-color: currentColor; }
.legal-document hr { height: 1px; margin: 42px 0; border: 0; background: linear-gradient(90deg, transparent, #d9cfca 12%, #d9cfca 88%, transparent); }
.legal-current-scope { min-width: 0; max-width: 100%; margin: 0 0 34px; padding: 21px 23px; border: 1px solid #bfe0d5; border-radius: 18px; background: linear-gradient(145deg, #f8fffc, #edf9f5); }
.legal-current-scope .eyebrow { margin-bottom: 7px; color: #147c62; }
.legal-current-scope h2 { margin: 0 0 10px; padding: 0; border: 0; font-size: 1.25rem; letter-spacing: -.02em; }
.legal-current-scope h2::before { display: none; }
.legal-current-scope p { margin-bottom: 9px; color: #4e6b63; font-size: .83rem; }
.legal-current-scope p:last-child { margin-bottom: 0; }

@media (max-width: 920px) {
  .legal-hero { grid-template-columns: 58px minmax(0, 1fr); }
  .legal-hero-icon { width: 58px; height: 58px; border-radius: 17px; }
  .legal-version { grid-column: 2; justify-self: start; margin-top: -9px; }
  .legal-layout { grid-template-columns: minmax(0, 1fr); }
  .legal-aside { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .legal-aside .eyebrow { grid-column: 1 / -1; }
  .legal-aside-note, .legal-data-note { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .legal-page > .breadcrumbs { display: none; }
  .legal-hero { grid-template-columns: 46px minmax(0, 1fr); gap: 13px; margin-top: 12px; padding: 21px 17px; border-radius: 21px; }
  .legal-hero-icon { width: 46px; height: 46px; border-radius: 14px; }
  .legal-hero-icon .icon { width: 22px; height: 22px; }
  .legal-hero .eyebrow { font-size: .58rem; }
  .legal-hero h1 { font-size: clamp(1.85rem, 9vw, 2.45rem); line-height: 1.01; letter-spacing: -.045em; word-break: break-word; text-wrap: wrap; }
  .legal-hero > div:nth-child(2) > p:last-child { font-size: .8rem; }
  .legal-version { min-height: 27px; padding: 5px 8px; font-size: .58rem; }
  .legal-nav { grid-template-columns: repeat(3, minmax(145px, 1fr)); overflow-x: auto; padding: 6px; border-radius: 16px; scrollbar-width: none; }
  .legal-nav::-webkit-scrollbar { display: none; }
  .legal-nav a { min-height: 49px; grid-template-columns: 27px minmax(0, 1fr); gap: 7px; padding: 7px 9px; }
  .legal-nav a > span { width: 27px; height: 27px; }
  .legal-nav a strong { font-size: .67rem; }
  .legal-aside { padding: 13px; border-radius: 16px; }
  .legal-document { padding: 22px 17px; border-radius: 20px; }
  .legal-document h2 { margin-top: 36px; font-size: 1.42rem; }
  .legal-document h3 { margin-top: 27px; font-size: 1rem; }
  .legal-document p { font-size: .88rem; line-height: 1.68; }
  .legal-document li { font-size: .86rem; }
  .legal-current-scope { margin-bottom: 29px; padding: 17px; }
}

/* Submit a listing */
.submit-page { padding-bottom: 64px; }
.submit-page .breadcrumbs { margin-bottom: 20px; }
.submit-hero {
  position: relative;
  isolation: isolate;
  min-height: 430px;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  align-items: center;
  gap: clamp(34px, 5vw, 74px);
  overflow: hidden;
  padding: clamp(38px, 5vw, 66px);
  border: 1px solid #e7c98f;
  border-radius: 30px;
  background: linear-gradient(135deg, #fff 0%, #fffdf9 55%, #fff2d9 100%);
  box-shadow: var(--shadow-md);
}
.submit-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 360px;
  height: 360px;
  right: -145px;
  top: -190px;
  border: 1px solid rgba(229,154,46,.3);
  border-radius: 50%;
}
.submit-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 250px;
  height: 250px;
  left: -175px;
  bottom: -195px;
  border-radius: 50%;
  background: rgba(245,172,63,.12);
}
.submit-hero-copy { position: relative; z-index: 1; max-width: 750px; }
.submit-hero-copy .eyebrow { margin-bottom: 14px; }
.submit-hero h1 { max-width: 720px; margin-bottom: 20px; font-size: clamp(2.75rem, 5.5vw, 4.9rem); line-height: .98; letter-spacing: -.055em; }
.submit-hero-lead { max-width: 700px; margin-bottom: 26px; color: #594f4b; font-size: 1.05rem; line-height: 1.7; }
.submit-benefits { display: flex; flex-wrap: wrap; gap: 8px; }
.submit-benefits li { min-height: 35px; display: inline-flex; align-items: center; gap: 7px; padding: 7px 11px; border: 1px solid #d4e9e2; border-radius: 999px; color: #31584e; background: rgba(241,250,247,.86); font-size: .72rem; font-weight: 800; }
.submit-benefits .icon { width: 16px; height: 16px; color: var(--verified); }
.submit-hero-card {
  position: relative;
  z-index: 1;
  min-height: 270px;
  display: grid;
  align-content: center;
  justify-items: start;
  overflow: hidden;
  padding: 34px;
  border: 1px solid rgba(245,172,63,.36);
  border-radius: 26px;
  color: #fff;
  background: linear-gradient(145deg, #1d1819, #070506);
  box-shadow: 0 22px 42px rgba(35,24,18,.2);
  transform: rotate(1.5deg);
}
.submit-hero-card::after { content: ""; position: absolute; width: 190px; height: 190px; right: -90px; bottom: -110px; border: 1px solid rgba(245,172,63,.38); border-radius: 50%; }
.submit-hero-card-label { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 18px; color: #ffc765; font-size: .7rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.submit-hero-card-label .icon { width: 17px; height: 17px; }
.submit-hero-card strong { color: #fff; font-size: clamp(4.7rem, 7vw, 6.8rem); line-height: .85; letter-spacing: -.08em; }
.submit-hero-card > span:nth-of-type(2) { margin-top: 12px; color: #d9ceca; font-size: .86rem; }
.submit-hero-card-lines { width: 100%; display: grid; gap: 7px; margin-top: 24px; }
.submit-hero-card-lines i { height: 5px; border-radius: 999px; background: rgba(255,255,255,.12); }
.submit-hero-card-lines i:nth-child(1) { width: 76%; background: linear-gradient(90deg, var(--brand), rgba(245,172,63,.18)); }
.submit-hero-card-lines i:nth-child(2) { width: 58%; }
.submit-hero-card-lines i:nth-child(3) { width: 38%; }
.submit-channels { margin-top: 28px; padding: clamp(28px, 4vw, 46px); border: 1px solid var(--line); border-radius: 28px; background: rgba(253,253,251,.94); box-shadow: var(--shadow-sm); }
.submit-section-heading { max-width: 700px; margin-bottom: 28px; }
.submit-section-heading h2 { margin-bottom: 10px; }
.submit-section-heading > p:last-child { margin: 0; color: var(--muted); font-size: .95rem; }
.submit-channel-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.submit-channels-single { display: grid; grid-template-columns: minmax(230px, .62fr) minmax(0, 1fr); align-items: center; gap: clamp(28px, 5vw, 72px); }
.submit-channels-single .submit-section-heading { margin: 0; }
.submit-channels-single .submit-channel-grid { grid-template-columns: minmax(0, 1fr); }
.submit-channel-card { min-width: 0; display: grid; grid-template-rows: auto 1fr auto auto; padding: 26px; border: 1px solid; border-radius: 22px; transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease; }
.submit-channel-card:hover { transform: translateY(-3px); }
.submit-channel-telegram { border-color: #a9d9ee; background: linear-gradient(145deg, #f8fdff, #e9f7fd); }
.submit-channel-telegram:hover { border-color: #65bce2; box-shadow: 0 17px 34px rgba(22,141,204,.13); }
.submit-channel-topline { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 22px; }
.submit-channel-icon { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 15px; color: #fff; }
.submit-channel-icon .icon { width: 24px; height: 24px; }
.submit-channel-telegram .submit-channel-icon { background: linear-gradient(145deg, #35afe5, #168dcc); box-shadow: 0 8px 18px rgba(22,141,204,.2); }
.submit-recommended { min-height: 27px; display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; font-size: .62rem; font-weight: 850; letter-spacing: .08em; line-height: 1; text-transform: uppercase; }
.submit-recommended { color: #137aa8; background: rgba(255,255,255,.8); border: 1px solid rgba(22,141,204,.2); }
.submit-channel-copy h3 { margin-bottom: 10px; font-size: 1.55rem; }
.submit-channel-copy p { margin: 0 0 24px; color: #5f5658; font-size: .9rem; line-height: 1.62; }
.submit-channel-action { min-height: 58px; display: grid; grid-template-columns: 22px minmax(0, 1fr) 22px; align-items: center; gap: 10px; padding: 10px 11px 10px 17px; border: 1px solid transparent; border-radius: 14px; color: #fff; font-size: .82rem; font-weight: 850; box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 9px 19px rgba(0,0,0,.1); transition: filter .2s ease, box-shadow .2s ease, transform .2s ease; }
.submit-channel-telegram .submit-channel-action { background: linear-gradient(145deg, #2ca9e1, #168dcc); }
.submit-channel-action:hover { color: #fff; filter: brightness(1.04); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 12px 23px rgba(0,0,0,.14); transform: translateY(-1px); }
.submit-channel-action .icon:first-child { width: 21px; height: 21px; }
.submit-channel-arrow { width: 22px; height: 22px; padding: 5px; border-radius: 50%; background: rgba(255,255,255,.17); transition: transform .2s ease; }
.submit-channel-action:hover .submit-channel-arrow { transform: translateX(2px); }
.submit-channel-note { min-width: 0; margin: 13px 0 0; color: #756b6d; font-size: .71rem; line-height: 1.45; overflow-wrap: anywhere; }
.submit-channel-note a, .submit-channel-note strong { color: var(--ink); font-weight: 800; }
.submit-channel-note a { text-decoration: underline; text-underline-offset: 2px; }
.submit-process { margin-top: 28px; display: grid; grid-template-columns: minmax(210px, .35fr) minmax(0, 1fr); gap: 30px 46px; padding: clamp(30px, 4vw, 46px); overflow: hidden; border: 1px solid #332c2e; border-radius: 28px; color: #fff; background: radial-gradient(circle at 100% 0, rgba(245,172,63,.15), transparent 34%), linear-gradient(145deg, #211b1d, #090708); box-shadow: var(--shadow-md); }
.submit-process .eyebrow { color: #ffc45f; }
.submit-process h2 { margin: 0; color: #fff; }
.submit-process-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.submit-process-list li { min-width: 0; display: grid; align-content: start; gap: 17px; padding: 20px 18px; border: 1px solid rgba(255,255,255,.11); border-radius: 17px; background: rgba(255,255,255,.055); }
.submit-process-list li > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: #20170a; background: var(--brand); font-size: .8rem; font-weight: 900; }
.submit-process-list strong { display: block; margin-bottom: 7px; color: #fff; font-size: .86rem; line-height: 1.3; }
.submit-process-list p { margin: 0; color: #c6bcba; font-size: .74rem; line-height: 1.52; }
.submit-free-disclaimer { grid-column: 1 / -1; min-height: 48px; display: flex; align-items: center; gap: 10px; margin: 0; padding: 12px 15px; border: 1px solid rgba(82,202,162,.22); border-radius: 14px; color: #bfe5d8; background: rgba(20,124,98,.16); font-size: .76rem; font-weight: 750; }
.submit-free-disclaimer .icon { width: 19px; height: 19px; color: #5bd0ac; }
.submit-plans { margin-top: 28px; padding: clamp(34px, 4.2vw, 54px); overflow: hidden; border: 1px solid #e5d9d3; border-radius: 30px; background: radial-gradient(circle at 100% 0, rgba(245,172,63,.13), transparent 28%), linear-gradient(145deg, #fff, #faf7f3); box-shadow: var(--shadow-md); }
.submit-plans-heading { max-width: 820px; display: grid; justify-items: center; margin: 0 auto 30px; text-align: center; }
.submit-plans-heading .eyebrow { margin-bottom: 13px; }
.submit-plans-heading h2 { max-width: 780px; margin-bottom: 15px; font-size: clamp(2.15rem, 4vw, 3.55rem); line-height: 1.01; }
.submit-plans-heading > p { max-width: 660px; margin: 0; color: var(--muted); font-size: .96rem; line-height: 1.62; }
.submit-plans-real { min-height: 30px; display: inline-flex; align-items: center; gap: 7px; margin-top: 18px; padding: 6px 10px; border: 1px solid #c8e5dc; border-radius: 999px; color: #196c58; background: #f0faf7; font-size: .68rem; font-weight: 850; }
.submit-plans-real .icon { width: 16px; height: 16px; }
.submit-plan-tabs { max-width: 870px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin: 0 auto 16px; padding: 7px; border: 1px solid #ded5d1; border-radius: 20px; background: rgba(255,255,255,.82); box-shadow: 0 8px 24px rgba(30,22,19,.07); }
.submit-plan-tab { position: relative; min-width: 0; min-height: 68px; display: grid; grid-template-columns: 39px minmax(0, 1fr); align-items: center; gap: 10px; padding: 9px 11px; border: 1px solid transparent; border-radius: 14px; color: #62595b; background: transparent; text-align: left; transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.submit-plan-tab:hover { color: var(--ink); background: #faf8f6; }
.submit-plan-tab-mark { width: 39px; height: 39px; display: grid; place-items: center; border: 1px solid #ded6d2; border-radius: 12px; color: #62595b; background: #fff; font-size: .68rem; font-weight: 900; }
.submit-plan-tab-mark .icon { width: 18px; height: 18px; }
.submit-plan-tab > span:nth-child(2) { min-width: 0; display: grid; gap: 2px; }
.submit-plan-tab strong { font-size: .82rem; }
.submit-plan-tab small { overflow: hidden; color: #8a8082; font-size: .61rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.submit-plan-tab em { position: absolute; right: 10px; top: -10px; min-height: 21px; display: inline-flex; align-items: center; padding: 4px 7px; border: 1px solid #d6901f; border-radius: 999px; color: #583400; background: #ffca69; box-shadow: 0 5px 12px rgba(132,76,0,.16); font-size: .52rem; font-style: normal; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.submit-plan-tab[aria-selected="true"] { color: var(--ink); background: #fff; border-color: #ccc3bf; box-shadow: 0 8px 19px rgba(40,30,25,.09); transform: translateY(-1px); }
.submit-plan-tab-free[aria-selected="true"] { border-color: #bdb4b6; background: linear-gradient(145deg, #fff, #f0edec); }
.submit-plan-tab-free[aria-selected="true"] .submit-plan-tab-mark { border-color: #9b9294; color: #fff; background: #756d70; }
.submit-plan-tab-standard[aria-selected="true"] { border-color: #55a98f; background: linear-gradient(145deg, #f4fcf9, #ddf3ec); box-shadow: 0 9px 21px rgba(20,124,98,.12); }
.submit-plan-tab-standard[aria-selected="true"] .submit-plan-tab-mark { border-color: #147c62; color: #fff; background: linear-gradient(145deg, #2aa484, #147c62); }
.submit-plan-tab-premium[aria-selected="true"] { border-color: #d28c1d; background: linear-gradient(145deg, #fff7e6, #ffe9bc); box-shadow: 0 9px 21px rgba(139,82,5,.13); }
.submit-plan-tab-premium[aria-selected="true"] .submit-plan-tab-mark { border-color: #d89120; color: #382000; background: linear-gradient(145deg, #ffd47f, #f5ac3f); }
.submit-plan-panels { position: relative; }
.submit-plan-panel { min-width: 0; display: grid; grid-template-columns: minmax(330px, .88fr) minmax(0, 1.12fr); align-items: center; gap: clamp(30px, 4vw, 58px); min-height: 590px; padding: clamp(27px, 3.5vw, 44px); overflow: hidden; border: 1px solid; border-radius: 26px; animation: submit-plan-enter .35s cubic-bezier(.2,.8,.2,1) both; }
.submit-plan-panel[hidden] { display: none !important; }
@keyframes submit-plan-enter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.submit-plan-panel-premium { position: relative; border-color: #7f571b; color: #fff; background: radial-gradient(circle at 95% 7%, rgba(245,172,63,.24), transparent 30%), radial-gradient(circle at 4% 100%, rgba(245,172,63,.09), transparent 28%), linear-gradient(145deg, #211a1c, #090708); box-shadow: 0 24px 48px rgba(34,23,16,.2); }
.submit-plan-panel-premium::before { content: ""; position: absolute; width: 340px; height: 340px; right: -210px; bottom: -230px; border: 1px solid rgba(245,172,63,.3); border-radius: 50%; }
.submit-plan-panel-standard { border-color: #75bda7; color: #213a34; background: radial-gradient(circle at 100% 0, rgba(20,124,98,.16), transparent 30%), linear-gradient(145deg, #fff, #e7f7f2); box-shadow: 0 20px 43px rgba(20,124,98,.1); }
.submit-plan-panel-free { border-color: #c6bdba; color: #3d3638; background: radial-gradient(circle at 100% 0, rgba(118,109,112,.1), transparent 28%), linear-gradient(145deg, #fff, #efedec); }
.submit-plan-visual { position: relative; z-index: 1; min-width: 0; }
.submit-plan-visual-label { width: fit-content; min-height: 29px; display: inline-flex; align-items: center; gap: 8px; margin: 0 0 12px 8px; padding: 6px 10px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; color: #d5ccca; background: rgba(255,255,255,.07); font-size: .62rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.submit-plan-visual-label i { width: 7px; height: 7px; border-radius: 50%; background: #56d6ae; box-shadow: 0 0 0 4px rgba(86,214,174,.12); }
.submit-plan-panel-standard .submit-plan-visual-label, .submit-plan-panel-free .submit-plan-visual-label { border-color: rgba(75,65,67,.12); color: #665d5f; background: rgba(255,255,255,.6); }
.submit-plan-panel-standard .submit-plan-visual-label i { background: #20a27f; box-shadow: 0 0 0 4px rgba(32,162,127,.12); }
.submit-plan-panel-free .submit-plan-visual-label i { background: #898083; box-shadow: 0 0 0 4px rgba(137,128,131,.12); }
.submit-plan-shot { max-width: 460px; margin: 0; overflow: hidden; padding: 8px; border: 6px solid rgba(255,255,255,.96); border-radius: 21px; background: #f7f5f2; box-shadow: 0 24px 48px rgba(0,0,0,.27), 0 4px 12px rgba(0,0,0,.12); transform: none; transition: box-shadow .25s ease; }
.submit-plan-panel-standard .submit-plan-shot, .submit-plan-panel-free .submit-plan-shot { box-shadow: 0 20px 42px rgba(45,36,33,.15), 0 4px 11px rgba(45,36,33,.07); }
.submit-plan-panel-standard .submit-plan-shot { border-color: #fff; }
.submit-plan-panel-free .submit-plan-shot { border-color: #fff; }
.submit-plan-shot:hover { box-shadow: 0 28px 55px rgba(0,0,0,.3), 0 5px 14px rgba(0,0,0,.13); transform: none; }
.submit-plan-shot img { width: 100%; height: auto; }
.submit-preview-card { position: relative; overflow: hidden; border: 1px solid #c8c0bd; border-radius: 17px; color: #282123; background: #fff; box-shadow: 0 7px 18px rgba(47,38,34,.08); font-size: 16px; text-align: left; }
.submit-preview-card::before { content: ""; position: absolute; z-index: 2; inset: 0 0 auto; height: 4px; background: #777073; }
.submit-preview-premium { border-color: #e19a2c; background: linear-gradient(135deg, #fff 0%, #fffdf9 72%, #fff4df 100%); }
.submit-preview-premium::before { background: linear-gradient(90deg, #e99b28, #ffd27b); }
.submit-preview-standard { border-color: #5eaf96; background: linear-gradient(135deg, #fff 0%, #f6fcfa 72%, #e7f6f1 100%); }
.submit-preview-standard::before { background: linear-gradient(90deg, #147c62, #69c6a8); }
.submit-preview-free { border-color: #c8c0bd; background: linear-gradient(135deg, #fff, #f5f3f2); }
.submit-preview-main { padding: 18px 17px 15px; }
.submit-preview-topline { display: grid; gap: 9px; margin-bottom: 13px; }
.submit-preview-topline > p { margin: 0; color: #895400; font-size: .62rem; font-weight: 900; letter-spacing: .09em; line-height: 1.25; text-transform: uppercase; }
.submit-preview-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.submit-preview-badge { min-height: 25px; display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border: 1px solid; border-radius: 9px; font-size: .53rem; font-weight: 900; letter-spacing: .025em; line-height: 1; text-transform: uppercase; }
.submit-preview-badge .icon { width: 12px; height: 12px; }
.submit-preview-badge-premium { border-color: #e5a236; color: #754400; background: #fff5df; }
.submit-preview-badge-verified { border-color: #c8e9df; color: #08765d; background: #e9f8f3; }
.submit-preview-content { min-width: 0; display: grid; gap: 11px; }
.submit-preview-content.has-photo { grid-template-columns: 78px minmax(0, 1fr); align-items: start; }
.submit-preview-photo { width: 78px; height: 78px; margin: 0; overflow: hidden; border: 1px solid #a69d9a; border-radius: 15px; background: #ebe7e5; }
.submit-preview-premium .submit-preview-photo { border-color: #dea047; }
.submit-preview-standard .submit-preview-photo { border-color: #78bba6; }
.submit-preview-photo img { width: 100%; height: 100%; display: block; object-fit: cover; }
.submit-preview-copy { min-width: 0; }
.submit-preview-copy h4 { margin: 1px 0 7px; color: #0b0909; font-size: 1.08rem; line-height: 1.08; letter-spacing: -.035em; }
.submit-preview-copy p { display: -webkit-box; margin: 0; overflow: hidden; color: #5e5557; font-size: .69rem; line-height: 1.48; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.submit-preview-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.submit-preview-meta li { min-height: 28px; display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border: 1px solid #e4ddda; border-radius: 999px; color: #746a6c; background: rgba(255,255,255,.74); font-size: .54rem; line-height: 1.1; }
.submit-preview-meta .icon { width: 12px; height: 12px; color: #9a9092; }
.submit-preview-meta .submit-preview-rating .icon { color: #f5a623; }
.submit-preview-rating strong { color: #5d5355; }
.submit-preview-footer { padding: 11px; border-top: 1px solid #e3dcd9; background: rgba(255,255,255,.55); }
.submit-preview-action { position: relative; min-height: 46px; display: grid; grid-template-columns: minmax(0, 1fr) 27px; align-items: center; gap: 9px; overflow: hidden; padding: 8px 8px 8px 13px; border: 1px solid #282224; border-radius: 12px; color: #fff; background: #100d0e; font-size: .66rem; font-weight: 900; box-shadow: 0 8px 16px rgba(31,24,22,.13); }
.submit-preview-action .icon { width: 27px; height: 27px; padding: 7px; border-radius: 50%; background: rgba(255,255,255,.12); }
.submit-preview-standard .submit-preview-action { border-color: #147c62; background: linear-gradient(145deg, #2aa382, #147c62); }
.submit-preview-premium .submit-preview-action { border-color: #dc9222; color: #241500; background: linear-gradient(145deg, #ffd071, #f5ac3f); }
.submit-plan-visual > p { max-width: 440px; margin: 14px 8px 0; color: #bfb5b3; font-size: .72rem; line-height: 1.52; }
.submit-plan-panel-standard .submit-plan-visual > p, .submit-plan-panel-free .submit-plan-visual > p { color: #716769; }
.submit-plan-offer { position: relative; z-index: 1; min-width: 0; }
.submit-plan-offer-topline { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 19px; }
.submit-plan-name { min-height: 32px; display: inline-flex; align-items: center; gap: 7px; padding: 6px 10px; border: 1px solid rgba(255,190,80,.5); border-radius: 999px; color: #ffc866; background: rgba(245,172,63,.1); font-size: .68rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.submit-plan-name .icon { width: 16px; height: 16px; }
.submit-plan-panel-standard .submit-plan-name { border-color: #73bda6; color: #116d56; background: rgba(239,251,247,.86); }
.submit-plan-panel-free .submit-plan-name { border-color: #bbb2b4; color: #5f5658; background: rgba(255,255,255,.72); }
.submit-plan-availability { display: inline-flex; align-items: center; gap: 7px; color: #d6cbc8; font-size: .62rem; font-weight: 750; }
.submit-plan-availability i { width: 7px; height: 7px; border-radius: 50%; background: #ffbe4e; box-shadow: 0 0 0 4px rgba(255,190,78,.12); }
.submit-plan-includes { color: #6d6365; font-size: .65rem; font-weight: 750; }
.submit-plan-free-price { color: #5f5658; font-size: 1.5rem; font-weight: 900; letter-spacing: -.04em; }
.submit-plan-offer h3 { max-width: 570px; margin-bottom: 13px; color: #fff; font-size: clamp(2.05rem, 3.2vw, 3.3rem); line-height: 1; }
.submit-plan-panel-standard .submit-plan-offer h3, .submit-plan-panel-free .submit-plan-offer h3 { color: var(--ink); }
.submit-plan-offer-lead { max-width: 590px; margin-bottom: 24px; color: #c7bdba; font-size: .88rem; line-height: 1.58; }
.submit-plan-panel-standard .submit-plan-offer-lead, .submit-plan-panel-free .submit-plan-offer-lead { color: #685f61; }
.submit-plan-benefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.submit-plan-benefits li { min-width: 0; display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: start; gap: 10px; padding: 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: rgba(255,255,255,.055); }
.submit-plan-benefits > li > .icon { width: 38px; height: 38px; padding: 10px; border-radius: 11px; color: #ffc55e; background: rgba(245,172,63,.12); }
.submit-plan-benefits li > span { min-width: 0; display: grid; gap: 4px; }
.submit-plan-benefits strong { color: #fff; font-size: .73rem; line-height: 1.3; }
.submit-plan-benefits small { color: #afa4a2; font-size: .61rem; line-height: 1.42; }
.submit-plan-panel-standard .submit-plan-benefits li, .submit-plan-panel-free .submit-plan-benefits li { border-color: rgba(64,54,56,.1); background: rgba(255,255,255,.63); }
.submit-plan-panel-standard .submit-plan-benefits > li > .icon { color: #117157; background: #d8f0e8; }
.submit-plan-panel-free .submit-plan-benefits > li > .icon { color: #675f61; background: #e7e2e0; }
.submit-plan-panel-standard .submit-plan-benefits strong, .submit-plan-panel-free .submit-plan-benefits strong { color: #30292b; }
.submit-plan-panel-standard .submit-plan-benefits small, .submit-plan-panel-free .submit-plan-benefits small { color: #776d6f; }
.submit-plan-scarcity { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 12px; margin-top: 11px; padding: 13px; border: 1px solid rgba(245,172,63,.35); border-radius: 15px; background: linear-gradient(90deg, rgba(245,172,63,.14), rgba(245,172,63,.055)); }
.submit-plan-scarcity > span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; color: #261700; background: linear-gradient(145deg, #ffd177, #f5ac3f); }
.submit-plan-scarcity .icon { width: 20px; height: 20px; }
.submit-plan-scarcity strong { display: block; margin-bottom: 3px; color: #ffe0a8; font-size: .75rem; }
.submit-plan-scarcity p { margin: 0; color: #bdb2af; font-size: .61rem; line-height: 1.42; }
.submit-plan-free-limits { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
.submit-plan-free-limits span { min-height: 30px; display: inline-flex; align-items: center; padding: 6px 9px; border: 1px dashed #c7bdbf; border-radius: 999px; color: #83797b; background: rgba(255,255,255,.52); font-size: .63rem; font-weight: 750; }
.submit-plan-cta { width: 100%; min-height: 57px; display: grid; grid-template-columns: 21px minmax(0, 1fr) 23px; align-items: center; gap: 10px; margin-top: 16px; padding: 10px 11px 10px 17px; border: 1px solid; border-radius: 14px; font-size: .78rem; font-weight: 900; box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 11px 23px rgba(0,0,0,.18); transition: filter .2s ease, box-shadow .2s ease, transform .2s ease; }
.submit-plan-cta > .icon { width: 21px; height: 21px; }
.submit-plan-cta > .icon:last-child { width: 23px; height: 23px; padding: 5px; border-radius: 50%; background: rgba(255,255,255,.2); }
.submit-plan-cta:hover { transform: translateY(-2px); filter: brightness(1.035); }
.submit-plan-cta-premium { border-color: #d89427; color: #211300; background: linear-gradient(145deg, #ffd071, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 12px 25px rgba(171,101,8,.25); }
.submit-plan-cta-premium:hover { color: #211300; }
.submit-plan-cta-standard { border-color: #147c62; color: #fff; background: linear-gradient(145deg, #2baa87, #147c62); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 11px 23px rgba(20,124,98,.21); }
.submit-plan-cta-standard:hover { color: #fff; }
.submit-plan-cta-free { border-color: #5f5759; color: #fff; background: linear-gradient(145deg, #7b7275, #514a4c); }
.submit-plan-cta-free:hover { color: #fff; }
.submit-plan-price-note { display: block; margin-top: 9px; color: #8f8482; font-size: .59rem; line-height: 1.4; text-align: center; }
.submit-plan-panel-standard .submit-plan-price-note, .submit-plan-panel-free .submit-plan-price-note { color: #786e70; }
.submit-plans-footer { min-height: 58px; display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 15px; padding: 12px 16px; border: 1px solid #b7ded2; border-radius: 15px; color: #486b62; background: #f0faf7; text-align: center; }
.submit-plans-footer .icon { width: 20px; height: 20px; color: var(--verified); }
.submit-plans-footer p { margin: 0; font-size: .7rem; line-height: 1.45; }
.submit-plans-footer strong { color: #145e4c; }

/* Tariff showcase: each level has its own visual weight instead of looking like
   the same card recolored. Standard is the recommended starting point. */
.submit-plans { padding: clamp(38px, 4.3vw, 56px); background: radial-gradient(circle at 94% 3%, rgba(245,172,63,.12), transparent 25%), radial-gradient(circle at 5% 94%, rgba(20,124,98,.07), transparent 24%), #fffdfb; box-shadow: 0 26px 60px rgba(50,38,31,.1); }
.submit-plans-heading { max-width: none; grid-template-columns: minmax(0, 1fr) 255px; align-items: end; justify-items: stretch; gap: 34px; margin-bottom: 34px; text-align: left; }
.submit-plans-heading-copy { min-width: 0; }
.submit-plans-heading .eyebrow { margin-bottom: 11px; }
.submit-plans-heading h2 { max-width: 760px; margin-bottom: 13px; }
.submit-plans-heading > .submit-plans-heading-copy > p:last-child { max-width: 650px; margin: 0; color: var(--muted); font-size: .94rem; line-height: 1.58; }
.submit-plans-proof { min-height: 74px; display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: 12px; padding: 13px 15px; border: 1px solid #cbe5dd; border-radius: 18px; color: #185f4f; background: linear-gradient(145deg, #f8fffc, #e9f7f2); box-shadow: 0 10px 24px rgba(20,124,98,.08); }
.submit-plans-proof > span { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; color: #fff; background: linear-gradient(145deg, #2cab89, #147c62); box-shadow: 0 8px 18px rgba(20,124,98,.18); }
.submit-plans-proof .icon { width: 21px; height: 21px; }
.submit-plans-proof div { min-width: 0; display: grid; gap: 3px; }
.submit-plans-proof strong { font-size: .75rem; }
.submit-plans-proof small { color: #668279; font-size: .61rem; line-height: 1.35; }
.submit-plan-tabs { max-width: none; gap: 11px; margin-bottom: 14px; padding: 0; border: 0; background: transparent; box-shadow: none; }
.submit-plan-tab { min-height: 94px; grid-template-columns: 46px minmax(0, 1fr) auto; gap: 12px; padding: 16px 17px; border-color: #d6cecb; border-radius: 18px; color: #62595b; background: linear-gradient(145deg, #fff, #f2efee); box-shadow: 0 8px 20px rgba(48,38,34,.06); }
.submit-plan-tab::before { content: ""; position: absolute; left: 16px; right: 16px; top: 0; height: 3px; border-radius: 0 0 4px 4px; opacity: .52; background: #8b8385; }
.submit-plan-tab:hover { color: var(--ink); background: linear-gradient(145deg, #fff, #f5f2f1); transform: translateY(-2px); }
.submit-plan-tab-mark { width: 46px; height: 46px; border-radius: 14px; }
.submit-plan-tab strong { font-size: .9rem; }
.submit-plan-tab small { color: #7e7476; font-size: .64rem; }
.submit-plan-tab-standard { border-color: #a9d3c6; color: #175f4f; background: linear-gradient(145deg, #fbfffd, #e7f6f1); }
.submit-plan-tab-standard::before { background: #168064; }
.submit-plan-tab-standard .submit-plan-tab-mark { border-color: #9ccfbe; color: #147c62; background: #effaf6; }
.submit-plan-tab-standard:hover { color: #124f42; background: linear-gradient(145deg, #fff, #dff3ec); }
.submit-plan-tab-premium { border-color: #eccb91; color: #65400c; background: linear-gradient(145deg, #fffdf7, #fff1d4); }
.submit-plan-tab-premium::before { background: #e79e2d; }
.submit-plan-tab-premium .submit-plan-tab-mark { border-color: #eac176; color: #8c5707; background: #fff6e4; }
.submit-plan-tab-premium:hover { color: #553505; background: linear-gradient(145deg, #fffdf8, #ffe9bd); }
.submit-plan-tab em { right: 12px; top: 8px; }
.submit-plan-tab-standard em { border-color: #168064; color: #fff; background: linear-gradient(145deg, #2ba785, #147c62); box-shadow: 0 5px 12px rgba(20,124,98,.16); }
.submit-plan-level { display: inline-flex; align-items: end; justify-content: flex-end; gap: 3px; padding-top: 21px; }
.submit-plan-level i { width: 5px; border-radius: 4px; background: currentColor; opacity: .18; }
.submit-plan-level i:nth-child(1) { height: 8px; }
.submit-plan-level i:nth-child(2) { height: 13px; }
.submit-plan-level i:nth-child(3) { height: 18px; }
.submit-plan-tab-free .submit-plan-level i:first-child { opacity: .72; }
.submit-plan-tab-standard .submit-plan-level i:nth-child(-n+2) { opacity: .72; }
.submit-plan-tab-premium .submit-plan-level i { opacity: .76; }
.submit-plan-tab[aria-selected="true"] { transform: translateY(-2px); box-shadow: inset 0 0 0 1px rgba(255,255,255,.7); }
.submit-plan-tab[aria-selected="true"]::before { height: 4px; opacity: 1; }
.submit-plan-tab[aria-selected="true"] .submit-plan-tab-mark { transform: scale(1.04); }
.submit-plan-tab-free[aria-selected="true"] { box-shadow: inset 0 0 0 1px rgba(104,96,98,.12); }
.submit-plan-tab-standard[aria-selected="true"] { border-color: #218b6f; background: linear-gradient(145deg, #f9fffc, #d8f0e8); box-shadow: inset 0 0 0 1px rgba(20,124,98,.1); }
.submit-plan-tab-premium[aria-selected="true"] { border-color: #d28c1d; background: linear-gradient(145deg, #fffaf0, #ffe6b1); box-shadow: inset 0 0 0 1px rgba(210,140,29,.12); }
.submit-plan-tab:active { transform: translateY(0) scale(.985); }
.submit-plan-panel { min-height: 540px; grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr); align-items: center; gap: clamp(32px, 4.2vw, 62px); padding: clamp(30px, 3.5vw, 45px); border-radius: 28px; animation-duration: .24s; }
.submit-plan-panel::after { content: ""; position: absolute; z-index: 2; left: 34px; right: 34px; top: 0; height: 4px; border-radius: 0 0 7px 7px; }
.submit-plan-panel-premium::after { background: linear-gradient(90deg, #f5ac3f, #ffe099); box-shadow: 0 4px 15px rgba(245,172,63,.3); }
.submit-plan-panel-standard { position: relative; border-color: #5eaf96; background: radial-gradient(circle at 100% 0, rgba(20,124,98,.18), transparent 32%), radial-gradient(circle at 0 100%, rgba(74,183,150,.1), transparent 28%), linear-gradient(145deg, #fff, #e8f7f2); box-shadow: 0 24px 50px rgba(20,124,98,.14); }
.submit-plan-panel-standard::after { background: linear-gradient(90deg, #147c62, #67c5a7); box-shadow: 0 4px 15px rgba(20,124,98,.23); }
.submit-plan-panel-free { position: relative; border-color: #c6bdba; box-shadow: 0 18px 38px rgba(53,44,42,.08); }
.submit-plan-panel-free::after { background: linear-gradient(90deg, #6f6769, #b8b0b2); }
.submit-plan-shot { max-width: 420px; border-width: 5px; transform: none; }
.submit-plan-panel-standard .submit-plan-shot { border-color: #f7fffc; box-shadow: 0 23px 48px rgba(16,99,77,.2), 0 4px 12px rgba(35,71,61,.09); }
.submit-plan-panel-free .submit-plan-shot { filter: saturate(.82); }
.submit-plan-offer h3 { font-size: clamp(2rem, 3vw, 3.05rem); letter-spacing: -.04em; }
.submit-plan-offer-lead { margin-bottom: 20px; }
.submit-plan-benefits li { min-height: 74px; padding: 12px; }
.submit-plan-panel-standard .submit-plan-benefits li { border-color: #c4e1d8; background: rgba(255,255,255,.82); box-shadow: 0 5px 14px rgba(20,124,98,.055); }
.submit-plan-panel-free .submit-plan-benefits li { border-color: #ddd7d5; background: rgba(255,255,255,.67); }
.submit-plan-includes { min-height: 27px; display: inline-flex; align-items: center; padding: 5px 9px; border: 1px solid #a7d5c6; border-radius: 999px; color: #12674f; background: rgba(255,255,255,.68); }
.submit-plans-footer { border-color: #ddd5d1; color: #6d6365; background: rgba(255,255,255,.76); }
.submit-plans-footer .icon { color: #168064; }
.submit-plans-footer strong { color: #292224; }
.submit-page { display: flex; flex-direction: column; }
.submit-page > .breadcrumbs { order: 0; }
.submit-page > .submit-hero { order: 1; }
.submit-page > .submit-plans { order: 2; }
.submit-page > .submit-channels { order: 3; }
.submit-channel-card { grid-template-rows: auto auto auto auto auto; }
.submit-channel-copy p { margin-bottom: 17px; }
.submit-channel-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 0 17px; }
.submit-channel-steps li { min-width: 0; display: grid; grid-template-columns: 29px minmax(0, 1fr); align-items: center; gap: 8px; padding: 9px; border: 1px solid rgba(22,141,204,.16); border-radius: 12px; color: #315567; background: rgba(255,255,255,.68); }
.submit-channel-steps li > span { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 9px; color: #fff; background: linear-gradient(145deg, #35afe5, #168dcc); font-size: .63rem; font-weight: 900; box-shadow: 0 5px 11px rgba(22,141,204,.16); }
.submit-channel-steps strong { min-width: 0; font-size: .65rem; line-height: 1.25; }

/* Conversion details and motion are intentionally local to the submit page. */
.submit-hero-actions { display: flex; align-items: center; gap: 13px; margin-top: 19px; }
.submit-hero-actions small { color: #7c706d; font-size: .66rem; font-weight: 700; }
.submit-hero-plans-link { position: relative; min-height: 50px; display: inline-grid; grid-template-columns: minmax(0, 1fr) 29px; align-items: center; gap: 14px; overflow: hidden; padding: 8px 9px 8px 18px; border: 1px solid #d99121; border-radius: 14px; color: #271700; background: linear-gradient(145deg, #ffd274, #f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.55), 0 13px 25px rgba(165,98,7,.2); font-size: .78rem; font-weight: 900; transition: color .2s ease, transform .22s ease, box-shadow .22s ease; }
.submit-hero-plans-link::before, .submit-plan-cta::before, .submit-channel-action::before { content: ""; position: absolute; inset: -60% auto -60% -42%; width: 34%; pointer-events: none; background: linear-gradient(90deg, transparent, rgba(255,255,255,.58), transparent); transform: skewX(-18deg); transition: left .58s cubic-bezier(.2,.8,.2,1); }
.submit-hero-plans-link:hover::before, .submit-plan-cta:hover::before, .submit-channel-action:hover::before { left: 118%; }
.card-premium .card-link::before,
.submit-preview-premium .submit-preview-action::before,
.submit-plan-cta-premium::before { content: ""; position: absolute; z-index: 1; top: -65%; bottom: -65%; left: -44%; width: 32%; pointer-events: none; border-radius: 50%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.82), transparent); transform: translateX(-130%) skewX(-18deg); animation: premium-button-shine 3.8s cubic-bezier(.22,.72,.24,1) infinite; }
.submit-plan-cta.submit-plan-cta-premium:hover::before { left: -44%; }
@keyframes premium-button-shine {
  0%, 54% { opacity: 0; transform: translateX(-130%) skewX(-18deg); }
  60% { opacity: .9; }
  79% { opacity: .72; transform: translateX(590%) skewX(-18deg); }
  82%, 100% { opacity: 0; transform: translateX(590%) skewX(-18deg); }
}
.submit-hero-plans-link:hover { color: #271700; transform: translateY(-2px); box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 17px 30px rgba(165,98,7,.25); }
.submit-hero-plans-link .icon { width: 29px; height: 29px; padding: 7px; border-radius: 50%; background: rgba(255,255,255,.34); transition: transform .22s ease; }
.submit-hero-plans-link:hover .icon { transform: translateX(2px) rotate(90deg); }
.submit-hero-card { --tilt-x: 0deg; --tilt-y: 0deg; transform: perspective(950px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) rotateZ(1.5deg); transform-style: preserve-3d; transition: transform .16s ease-out, box-shadow .25s ease; }
.submit-hero-card::before { content: ""; position: absolute; inset: -45% -90%; pointer-events: none; background: linear-gradient(105deg, transparent 43%, rgba(255,211,125,.16) 49%, rgba(255,255,255,.22) 50%, transparent 57%); animation: submit-card-light 6.5s ease-in-out infinite; }
.submit-hero-card > * { position: relative; z-index: 1; transform: translateZ(18px); }
.submit-hero-card:hover { box-shadow: 0 30px 58px rgba(35,24,18,.28), 0 0 0 1px rgba(245,172,63,.15); }
@keyframes submit-card-light { 0%, 28% { transform: translateX(-24%); opacity: 0; } 43% { opacity: 1; } 62%, 100% { transform: translateX(30%); opacity: 0; } }
.submit-plans { --spotlight-color: rgba(245,172,63,.14); --spotlight-x: 50%; --spotlight-y: 22%; position: relative; scroll-margin-top: 86px; }
.submit-plans[data-active-plan="standard"] { --spotlight-color: rgba(28,157,122,.16); }
.submit-plans[data-active-plan="free"] { --spotlight-color: rgba(104,96,98,.1); }
.submit-plans::before { content: ""; position: absolute; z-index: 0; inset: 0; pointer-events: none; border-radius: inherit; background: radial-gradient(520px circle at var(--spotlight-x) var(--spotlight-y), var(--spotlight-color), transparent 62%); opacity: .9; transition: background .25s ease; }
.submit-plans > * { position: relative; z-index: 1; }
.submit-plan-panel.is-active .submit-plan-shot { animation: submit-shot-arrive .42s cubic-bezier(.2,.85,.2,1) both; }
.submit-plan-panel.is-active .submit-plan-benefits li { animation: submit-benefit-arrive .38s cubic-bezier(.2,.8,.2,1) both; }
.submit-plan-panel.is-active .submit-plan-benefits li:nth-child(2) { animation-delay: .045s; }
.submit-plan-panel.is-active .submit-plan-benefits li:nth-child(3) { animation-delay: .09s; }
.submit-plan-panel.is-active .submit-plan-benefits li:nth-child(4) { animation-delay: .135s; }
@keyframes submit-shot-arrive { from { opacity: .35; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes submit-benefit-arrive { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.submit-plan-benefits li { transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease; }
.submit-plan-benefits li:hover { transform: translateY(-3px); }
.submit-plan-panel-premium .submit-plan-benefits li:hover { border-color: rgba(245,172,63,.38); background: rgba(255,255,255,.085); box-shadow: 0 12px 24px rgba(0,0,0,.14); }
.submit-plan-panel-standard .submit-plan-benefits li:hover { border-color: #83c8b3; box-shadow: 0 12px 24px rgba(20,124,98,.1); }
.submit-plan-panel-free .submit-plan-benefits li:hover { border-color: #c4bbbd; box-shadow: 0 10px 22px rgba(60,50,48,.08); }
.submit-plan-cta, .submit-channel-action { position: relative; overflow: hidden; }
.submit-plan-cta > *, .submit-channel-action > * { position: relative; z-index: 1; }
.submit-plan-panel-premium::after { background-size: 200% 100%; animation: submit-premium-line 3.8s linear infinite; }
@keyframes submit-premium-line { to { background-position: -200% 0; } }
.submit-channel-icon { animation: submit-telegram-pulse 3s ease-in-out infinite; }
@keyframes submit-telegram-pulse { 50% { box-shadow: 0 8px 18px rgba(22,141,204,.2), 0 0 0 7px rgba(22,141,204,.08); transform: translateY(-2px); } }
.submit-effects-ready .submit-reveal { opacity: 0; transform: translateY(28px); transition: opacity .72s ease, transform .72s cubic-bezier(.2,.75,.2,1); }
.submit-effects-ready .submit-reveal.is-visible { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  .submit-hero-card, .submit-hero-card::before, .submit-plan-panel.is-active .submit-plan-shot, .submit-plan-panel.is-active .submit-plan-benefits li, .submit-plan-panel-premium::after, .submit-channel-icon { animation: none !important; transition: none !important; transform: none !important; }
  .card-premium .card-link::before, .submit-preview-premium .submit-preview-action::before, .submit-plan-cta-premium::before { animation: none !important; opacity: 0 !important; }
  .submit-effects-ready .submit-reveal { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 1020px) {
  .main-nav { gap: 18px; }
  .lang-switch { display: none; }
  .hero-finder { grid-template-columns: 1fr .7fr; }
  .hero-finder .btn { grid-column: 1 / -1; min-height: 54px; margin-top: 8px; }
  .market-hero { min-height: auto; }
  .hero-copy { max-width: 65%; }
  .hero-copy h1 { max-width: 650px; }
  .hero-brand-visual { width: 270px; height: 270px; right: 12px; top: 43%; }
  .service-grid { grid-template-columns: repeat(2,1fr); }
  .category-service-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .city-grid { grid-template-columns: repeat(3,1fr); }
  .city-intro { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .chips-large { grid-template-columns: repeat(3,1fr); }
  .contact-list { grid-template-columns: 1fr; }
  .submit-hero { grid-template-columns: minmax(0, 1fr) 260px; gap: 28px; }
  .submit-hero-card { min-height: 240px; padding: 27px; }
  .submit-channels-single { grid-template-columns: minmax(210px, .58fr) minmax(0, 1fr); gap: 28px; }
  .submit-process { grid-template-columns: 1fr; }
  .submit-process-heading { max-width: 560px; }
  .submit-plan-panel { grid-template-columns: minmax(290px, .82fr) minmax(0, 1.18fr); gap: 28px; padding: 29px; }
  .submit-plan-benefits { grid-template-columns: 1fr; }
  .submit-plan-offer h3 { font-size: clamp(2rem, 4vw, 2.7rem); }
  .profile-hero-grid { grid-template-columns: minmax(240px, 300px) minmax(0, 1fr); gap: 32px; }
  .profile-identity { padding-right: 0; }
  .profile-identity h1 { font-size: clamp(2.45rem, 5vw, 3.8rem); }
  .profile-contact-panel { grid-template-columns: 210px minmax(0, 1fr); gap: 24px; }
  .profile-contact-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-main-grid { grid-template-columns: minmax(0, 1fr) 330px; }
  .card { grid-template-columns: minmax(0, 1fr) 220px; }
  .card-main { grid-template-columns: 112px minmax(0, 1fr); column-gap: 20px; row-gap: 0; padding: 24px; }
  .card-media { width: 112px; height: 112px; border-radius: 18px; }
  .card-media.media-portrait { height: 140px; }
  .card-actions { padding: 20px 18px; }
  .telegram-cta-inner { grid-template-columns: minmax(280px,.8fr) minmax(390px,1.2fr); gap: 24px; padding-inline: 32px; }
  .telegram-screen { width: clamp(145px,34%,180px); }
}

@media (max-width: 900px) {
  .profile-main-grid { grid-template-columns: 1fr; }
  .telegram-cta-inner { display: flex; flex-direction: column; align-items: stretch; gap: 0; min-height: 0; padding: 36px 32px 30px; }
  .telegram-cta-content { display: contents; }
  .telegram-icon { order: 1; }
  .telegram-cta .cta-copy { order: 2; }
  .telegram-benefits { order: 3; }
  .telegram-showcase { width: 100%; min-height: 430px; order: 4; margin-top: 8px; }
  .telegram-cta .btn { width: min(100%,310px); order: 5; align-self: flex-start; margin-top: 24px; }
  .telegram-news-card { width: min(100%,430px); order: 6; align-self: flex-start; margin-top: 10px; }
  .telegram-screen { bottom: 0; width: min(31%,205px); height: auto; border: 7px solid rgba(255,255,255,.98); border-radius: 30px; }
  .telegram-screen-menu { left: 5%; transform: rotate(-4deg) translateY(10px); }
  .telegram-screen-categories { left: 50%; transform: translateX(-50%); }
  .telegram-screen-specialist { right: 5%; transform: rotate(4deg) translateY(10px); }
  .telegram-showcase:hover .telegram-screen-menu { transform: rotate(-4deg) translateY(10px); }
  .telegram-showcase:hover .telegram-screen-categories { transform: translateX(-50%); }
  .telegram-showcase:hover .telegram-screen-specialist { transform: rotate(4deg) translateY(10px); }
}

@media (max-width: 760px) {
  body { padding-bottom: 70px; font-size: 16px; }
  .profile-page > .breadcrumbs { display: none; }
  .container, .header-shell, .footer-shell, .telegram-cta-inner, .home-shell { width: min(calc(100% - 28px), var(--container)); }
  .site-header, .header-shell { min-height: 66px; }
  .brand-logo { width: 40px; height: 40px; flex-basis: 40px; border-radius: 12px; }
  .brand-logo img { width: 57px; left: -8px; top: -11px; }
  .site-header .brand-logo img { width: 49px; left: -4px; top: -6px; }
  .brand-wordmark strong { font-size: 1.02rem; }
  .main-nav { display: none; }
  .mobile-submit-button { position: relative; min-height: 44px; display: grid; align-content: center; justify-items: start; gap: 2px; padding: 5px 0; line-height: 1.15; white-space: nowrap; }
  .mobile-submit-button::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; border-radius: 2px; background: var(--brand); transform: scaleX(.32); transform-origin: left; transition: transform .24s ease; }
  .mobile-submit-button .header-submit-question { color: var(--muted); font-size: .68rem; font-weight: 650; }
  .mobile-submit-button strong { color: var(--ink); font-size: .82rem; font-weight: 780; transition: color .18s ease; }
  .mobile-submit-button:hover::after { transform: scaleX(1); }
  .mobile-submit-button:hover strong { color: var(--highlight); }
  .mobile-nav { position: fixed; z-index: 70; left: 0; right: 0; bottom: 0; height: 70px; display: grid; grid-template-columns: repeat(3,1fr); padding: 6px 8px max(6px, env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: rgba(255,255,255,.97); box-shadow: 0 -8px 24px rgba(16,24,40,.08); backdrop-filter: blur(14px); }
  .mobile-nav a { min-height: 54px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; border-radius: 12px; color: var(--muted); background: transparent; font-size: .7rem; font-weight: 750; -webkit-tap-highlight-color: transparent; }
  .mobile-nav a > span { line-height: 1.08; text-align: center; }
  .mobile-nav a:hover, .mobile-nav a:active, .mobile-nav a:visited, .mobile-nav a:focus { color: var(--muted); background: transparent; }
  .mobile-nav a:focus-visible { outline: 2px solid #9b9294; outline-offset: -4px; }
  .mobile-nav .icon { width: 23px; height: 23px; }
  .is-pwa-standalone .mobile-nav { grid-template-columns: repeat(2, 1fr); }
  .is-pwa-standalone .mobile-nav-install { display: none; }
  .home-shell { padding-top: 14px; }
  .market-hero { padding: 38px 22px 26px; border-radius: 20px; }
  .market-hero::before { width: 230px; height: 230px; right: -100px; top: -105px; background-size: 24px 24px; }
  .market-hero::after { display: none; }
  .hero-brand-visual { display: none; }
  .hero-copy { max-width: none; }
  .hero-copy h1 { margin-bottom: 18px; font-size: clamp(1.85rem, 8.5vw, 2.15rem); line-height: 1.04; overflow-wrap: normal; }
  .hero-title-line { white-space: nowrap; }
  .hero-title-accent { margin-top: .18em; font-size: .72em; white-space: nowrap; }
  .hero-lead { margin-bottom: 28px; font-size: 1rem; }
  .hero-actions { width: 100%; min-width: 0; display: grid; gap: 10px; }
  .hero-location-action { width: 100%; max-width: 100%; min-width: 0; min-height: 60px; gap: 9px; padding: 7px 8px; font-size: .95rem; }
  .hero-location-icon { width: 44px; height: 44px; }
  .hero-location-label { flex: 1; text-align: left; }
  .hero-location-label-desktop { display: none; }
  .hero-location-label-mobile { display: block; }
  .hero-location-arrow { width: 28px; height: 28px; margin-left: 0; }
  .hero-free-note { padding: 3px 7px; }
  .hero-free-icon { width: 20px; height: 20px; flex-basis: 20px; }
  .hero-free-icon .icon { width: 17px; height: 17px; }
  .hero-free-note strong { font-size: .76rem; }
  .hero-free-note small { font-size: .67rem; }
  .hero-finder { min-height: 0; display: grid; grid-template-columns: 1fr; padding: 9px; border-radius: 16px; }
  .finder-field, .finder-city { min-height: 66px; padding: 9px 12px; }
  .finder-field { border-right: 0; border-bottom: 1px solid var(--line); }
  .hero-finder .btn { grid-column: auto; min-height: 52px; margin-top: 7px; }
  .hero-proof { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin-top: 28px; }
  .hero-proof > div { min-width: 0; margin: 0; padding: 0; border-right: 0; }
  .hero-proof strong { font-size: 1.12rem; }
  .hero-proof span { display: block; font-size: .71rem; line-height: 1.3; }
  .hero-proof p { grid-column: 1 / -1; padding-top: 15px; border-top: 1px solid var(--line); font-size: .8rem; }
  .home-section { padding: 64px 0; }
  .location-section { padding-top: 54px; }
  .section-heading { display: grid; gap: 12px; margin-bottom: 24px; }
  .section-heading .text-link { font-size: .88rem; }
  .service-grid { grid-template-columns: 1fr; gap: 9px; }
  .service-card { min-height: 88px; grid-template-columns: 48px 1fr auto; padding: 14px; }
  .service-icon { width: 48px; height: 48px; border-radius: 14px; }
  .service-icon > .icon { width: 24px; height: 24px; }
  .service-rank { right: -4px; bottom: -4px; }
  .state-picker { grid-template-columns: 1fr; gap: 10px; }
  .state-choice summary { min-height: 88px; grid-template-columns: 56px minmax(0, 1fr) 38px; gap: 13px; padding: 13px; }
  .state-choice-coat { width: 56px; height: 56px; border-radius: 15px; }
  .state-choice-toggle { width: 36px; height: 36px; }
  .state-city-list { gap: 7px; padding: 11px; }
  .city-grid, .state-panel .city-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .city-card { min-height: 70px; padding: 14px; }
  .city-grid-home .city-card > .icon { display: none; }
  .trust-section { grid-template-columns: 1fr; gap: 30px; margin-bottom: 64px; padding: 34px 22px; border-radius: 20px; }
  .page-shell { padding-top: 12px; padding-bottom: 70px; }
  .breadcrumbs { margin-bottom: 15px; }
  .breadcrumbs ol { overflow: hidden; }
  .breadcrumbs li { display: none; }
  .breadcrumbs li:nth-last-child(2) { min-width: 0; display: flex; overflow: hidden; }
  .breadcrumbs li:nth-last-child(2)::before { content: "←"; flex: 0 0 auto; color: var(--highlight); }
  .breadcrumbs li:nth-last-child(2)::after { display: none; }
  .breadcrumbs li:nth-last-child(2) a { overflow: hidden; text-overflow: ellipsis; }
  .catalog-path { margin-bottom: 16px; }
  .catalog-path li { min-height: 60px; padding: 0; text-align: center; }
  .catalog-path-item { min-height: 60px; flex-direction: column; justify-content: center; gap: 4px; padding: 6px 4px; }
  .catalog-path .is-complete { background: rgba(20,124,98,.035); }
  .catalog-path-back { position: absolute; right: 4px; top: 4px; width: 18px; height: 18px; margin: 0; opacity: 1; transform: none; background: transparent; }
  .catalog-path-back .icon { width: 11px; height: 11px; }
  .catalog-path-number { width: 27px; height: 27px; flex-basis: 27px; font-size: .67rem; }
  .catalog-path-number .icon { width: 15px; height: 15px; }
  .catalog-path strong { font-size: .66rem; line-height: 1.15; }
  .page-intro { padding: 30px 22px; border-radius: 20px; }
  .page-intro h1 { font-size: clamp(2.15rem, 10vw, 3rem); }
  .page-lead { font-size: .95rem; }
  .city-intro { gap: 24px; }
  .city-photo-hero { min-height: 420px; padding: 30px 20px 68px; }
  .city-photo-hero::before { background: linear-gradient(0deg, rgba(12,9,10,.92) 0%, rgba(12,9,10,.72) 58%, rgba(12,9,10,.16) 100%), linear-gradient(90deg, rgba(12,9,10,.28), transparent); }
  .city-photo-hero h1 { font-size: clamp(2rem, 9vw, 2.75rem); }
  .city-photo-hero .page-lead { font-size: .95rem; }
  .city-category-action { width: 100%; min-height: 60px; margin-top: 22px; }
  .city-category-label { flex: 1; text-align: left; }
  .city-photo-credit { left: 18px; right: auto; bottom: 15px; max-width: calc(100% - 36px); padding: 4px 7px; border-radius: 7px; background: rgba(0,0,0,.34); font-size: .68rem; }
  .state-heading { gap: 14px; margin-bottom: 22px; }
  .state-coat { width: 62px; height: 62px; flex-basis: 62px; padding: 7px; border-radius: 16px; }
  .state-heading h2 { font-size: clamp(1.4rem, 6.5vw, 1.75rem); }
  .section-block { margin-top: 52px; }
  .chips-large { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .chips-large .chip { min-height: 52px; }
  .featured-section { margin-inline: 0; padding: 25px 14px 16px; border-radius: 22px; }
  .featured-section::before { left: 22px; width: 120px; height: 4px; }
  .featured-section::after { right: -130px; top: -150px; }
  .featured-heading { display: grid; gap: 16px; margin-bottom: 17px; padding: 0 4px 19px; }
  .featured-heading h2 { font-size: clamp(1.75rem, 8vw, 2.2rem); }
  .featured-lead { font-size: .9rem; }
  .featured-direct-note { width: 100%; min-width: 0; }
  .category-accordion-list { grid-template-columns: 1fr; gap: 10px; }
  .category-accordion > summary { min-height: 92px; grid-template-columns: 58px minmax(0, 1fr) 36px; gap: 13px; padding: 14px; }
  .category-accordion-icon { width: 58px; height: 58px; border-radius: 16px; }
  .category-accordion-icon.category-art img { width: 51px; height: 51px; }
  .category-accordion-copy strong { font-size: 1.08rem; }
  .category-accordion-toggle { width: 36px; height: 36px; }
  .category-accordion-panel { padding: 11px; }
  .category-service-list { grid-template-columns: 1fr; gap: 7px; }
  .category-service-link { min-height: 54px; grid-template-columns: minmax(0, 1fr) 18px; padding: 12px 14px; }
  .category-service-copy strong { font-size: .93rem; }
  .category-accordion-actions { grid-template-columns: minmax(0, 1fr) auto; }
  .category-nearby-disclosure { grid-column: 1; }
  .category-nearby-disclosure[open] { grid-column: 1 / -1; }
  .category-nearby-disclosure-summary { min-height: 72px; grid-template-columns: minmax(0, 1fr) auto 18px; gap: 6px; padding: 8px; }
  .category-nearby-disclosure-icon { display: none; }
  .category-nearby-disclosure-copy strong { font-size: .85rem; }
  .category-nearby-disclosure-copy small { display: block; font-size: .69rem; line-height: 1.25; }
  .category-nearby-disclosure-count { min-width: 22px; height: 22px; padding-inline: 5px; font-size: .61rem; }
  .category-nearby-disclosure-toggle { width: 18px; height: 18px; }
  .category-nearby-panel { padding: 10px; }
  .category-nearby-city-grid { grid-template-columns: 1fr; gap: 8px; }
  .category-nearby-city-heading { min-height: 54px; padding: 9px 11px; }
  .category-nearby-service-list { padding-inline: 10px; }
  .category-nearby-service-link strong { font-size: .81rem; }
  .category-all-link { min-width: 116px; min-height: 72px; grid-template-columns: auto 15px; justify-content: end; gap: 5px; padding: 8px 10px; }
  .category-all-link small, .category-all-link > strong { display: none; }
  .category-all-link b { font-size: .7rem; }
  .category-all-link .icon { width: 15px; height: 15px; }
  .category-choice-grid, .service-selection-grid { grid-template-columns: 1fr; gap: 9px; }
  .category-choice-card { min-height: 86px; grid-template-columns: 46px minmax(0, 1fr) 18px; gap: 12px; padding: 14px; }
  .service-selection-card { min-height: 56px; grid-template-columns: minmax(0, 1fr) 18px; gap: 12px; padding: 13px 15px; }
  .category-choice-icon, .service-selection-icon { width: 46px; height: 46px; border-radius: 14px; }
  .category-choice-icon .icon, .service-selection-icon .icon { width: 23px; height: 23px; }
  .category-art img { width: 43px; height: 43px; }
  .subcategory-section { padding: 24px 14px; border-radius: 20px; }
  .subcategory-section + .catalog-context { margin-top: 24px; }
  .category-section { padding-top: 52px; }
  .category-grid { grid-template-columns: 1fr; }
  .category-card { padding: 23px 20px; }
  .category-card h3 { align-items: center; }
  .category-icon { width: 42px; height: 42px; flex-basis: 42px; border-radius: 13px; }
  .category-icon .icon { width: 22px; height: 22px; }
  .quiet-section, .content-panel { padding: 24px 20px; }
  .related-services-section { padding: 25px 14px 14px; border-radius: 22px; }
  .related-services-section::before { left: 22px; width: 118px; height: 4px; }
  .related-services-heading { display: grid; gap: 15px; margin-bottom: 18px; padding-inline: 4px; }
  .related-services-heading h2 { font-size: clamp(1.55rem, 7.2vw, 1.9rem); }
  .related-services-heading > div > p:last-child { font-size: .84rem; }
  .related-services-count { min-height: 38px; width: fit-content; padding-inline: 12px; }
  .related-services-grid { grid-template-columns: 1fr; gap: 8px; }
  .related-service-link { min-height: 60px; padding: 11px 11px 11px 15px; border-radius: 14px; font-size: .85rem; }
  .related-service-link .icon { width: 32px; height: 32px; padding: 9px; }
  .nearby-results-section { grid-template-columns: 1fr; gap: 22px; padding: 24px 14px 14px; border-radius: 22px; }
  .nearby-results-heading { grid-template-columns: 46px minmax(0, 1fr); gap: 13px; padding: 17px 14px; border-radius: 18px; }
  .nearby-results-mark { width: 46px; height: 46px; border-radius: 14px; }
  .nearby-results-mark .icon { width: 22px; height: 22px; }
  .nearby-results-copy h2 { font-size: clamp(1.55rem, 7.2vw, 1.9rem); }
  .nearby-results-copy > p:last-child { font-size: .85rem; }
  .nearby-city-list { grid-template-columns: 1fr; gap: 9px; }
  .nearby-city-card { min-height: 0; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 13px; border-radius: 16px; }
  .nearby-city-card.is-nearest { grid-template-columns: 46px minmax(0, 1fr); }
  .nearby-city-pin { width: 46px; height: 46px; border-radius: 13px; }
  .nearby-city-action { grid-column: 1 / -1; min-height: 48px; justify-content: space-between; padding-inline: 15px; }
  .nearby-city-list > li:only-child .nearby-city-card { min-height: 0; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; padding: 13px; }
  .nearby-city-list > li:only-child .nearby-city-action { grid-column: 1 / -1; justify-content: space-between; }
  .catalog-context { margin-top: 16px; }
  .catalog-context .toolbar-city { width: 100%; justify-content: center; }
  .catalog-path-bottom { margin-top: 24px; padding-top: 18px; }
  .results-heading { align-items: center; gap: 13px; padding: 21px 17px; border-radius: 18px; }
  .results-heading::before { left: 17px; width: 104px; }
  .results-heading h2 { font-size: clamp(1.45rem, 6.8vw, 1.75rem); }
  .results-kicker { margin-bottom: 6px; font-size: .6rem; }
  .result-count { min-height: 51px; padding: 8px 11px; border-radius: 13px; }
  .result-count strong { font-size: .7rem; }
  .results-intro { padding: 24px 20px 28px; }
  .results-intro-photo { min-height: 390px; align-items: flex-end; padding: 0; }
  .results-intro-photo .results-intro-copy { width: 100%; padding: 28px 20px 30px; }
  .results-intro-photo h1 { max-width: none; }
  .results-intro-photo .results-intro-visual { min-height: 0; }
  .results-intro-photo .results-intro-visual::before { background: linear-gradient(0deg, rgba(12,9,8,.96) 0%, rgba(12,9,8,.76) 53%, rgba(12,9,8,.24) 100%); }
  .results-intro-photo .results-intro-visual::after { background: linear-gradient(90deg, rgba(12,9,8,.28), transparent 72%); }
  .results-intro-photo .results-intro-visual img { height: 100%; min-height: 0; object-position: 66% center; transform: scale(1.02); }
  .results-intro h1 { margin-bottom: 16px; font-size: clamp(1.9rem, 8.2vw, 2.1rem); line-height: 1.02; }
  .results-intro .page-lead { font-size: .9rem; line-height: 1.55; }
  .contact-list { gap: 13px; }
  .card { min-height: 0; display: flex; flex-direction: column; border-radius: 18px; }
  .card-main { grid-template-columns: 88px minmax(0,1fr); grid-template-rows: auto auto auto; column-gap: 14px; row-gap: 0; padding: 18px 16px 16px; }
  .card-no-photo .card-main { grid-template-columns: minmax(0, 1fr); }
  .card-media { width: 88px; height: 88px; grid-column: 1; grid-row: 2; align-self: start; border-radius: 14px; }
  .card-media.media-portrait { height: 110px; }
  .card-media .avatar { font-size: 2rem; }
  .card-media .avatar-network, .profile-media .avatar-network { display: none; }
  .card-topline { grid-column: 1 / -1; grid-row: 1; grid-template-columns: 1fr; gap: 8px; margin-bottom: 14px; }
  .card-role { font-size: .62rem; }
  .card-badges { justify-content: flex-start; gap: 6px; }
  .card-badges .badge { min-height: 24px; padding: 3px 7px; font-size: .59rem; }
  .card-content { display: contents; }
  .card-copy { min-width: 0; grid-column: 2; grid-row: 2; align-self: center; }
  .card-no-photo .card-copy { grid-column: 1; }
  .card-title { margin-bottom: 8px; font-size: 1.2rem; }
  .card-description { margin-bottom: 0; font-size: .84rem; line-height: 1.48; -webkit-line-clamp: 3; }
  .card-meta { grid-column: 1 / -1; grid-row: 3; gap: 6px; margin-top: 14px; font-size: .69rem; }
  .card-meta li { min-height: 29px; padding: 4px 9px; }
  .card-actions { min-height: 0; display: grid; grid-template-columns: 1fr; align-items: stretch; gap: 8px; padding: 10px 12px; border-left: 0; border-top: 1px solid rgba(230,222,218,.9); background: #fff; }
  .card-premium .card-actions { border-top-color: #ebd5ad; background: linear-gradient(145deg, #fffdf8, #fff5e2); }
  .quick-actions { width: 100%; display: flex; align-items: center; gap: 6px; grid-column: 1; grid-row: 2; margin: 0; }
  .quick-contact { width: auto; min-width: 0; min-height: 46px; flex: 1; justify-content: center; gap: 6px; padding: 5px 8px; font-size: .7rem; }
  .quick-contact .icon { width: 27px; height: 27px; flex-basis: 27px; padding: 6px; border-radius: 8px; }
  .quick-actions > .quick-contact:only-child { flex-direction: row; gap: 8px; font-size: .76rem; }
  .card-link { width: 100%; min-height: 48px; grid-column: 1; grid-row: 1; margin-left: 0; padding: 0 9px 0 15px; box-shadow: none; font-size: .73rem; }
  .card-actions:has(.quick-contact:only-child) { grid-template-columns: minmax(0, 1fr) minmax(112px, .42fr); }
  .card-actions:has(.quick-contact:only-child) .card-link { width: auto; grid-column: 1; grid-row: 1; }
  .card-actions:has(.quick-contact:only-child) .quick-actions { width: auto; grid-column: 2; grid-row: 1; }
  .profile-page, .profile-view, .profile-hero, .profile-hero-grid { min-width: 0; max-width: 100%; }
  .profile-view { gap: 16px; }
  .profile-hero { padding: 18px; border-radius: 22px; }
  .profile-hero:has(.profile-hero-grid-no-photo) { padding-block: 18px; }
  .profile-hero::before { top: -240px; right: -230px; }
  .profile-hero-grid { display: block; }
  .profile-identity { display: block; padding-right: 0; }
  .profile-overview { min-width: 0; display: flow-root; }
  .profile-overview-copy { min-width: 0; display: block; }
  .profile-showcase,
  .profile-showcase.media-portrait { width: 100%; max-width: 340px; float: none; margin: 0 auto 20px; border-radius: 18px; box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 10px 24px rgba(49,35,27,.1); }
  .profile-contact-panel { clear: both; }
  .profile-badges { gap: 6px; margin-bottom: 17px; }
  .profile-badges .badge { min-height: 24px; padding: 3px 7px; font-size: .59rem; }
  .profile-role { margin-bottom: 10px; font-size: .65rem; }
  .profile-identity h1 { width: 100%; margin-bottom: 16px; font-size: clamp(2.15rem, 10vw, 2.85rem); line-height: 1; }
  .profile-hero-grid-no-photo .profile-identity h1 { font-size: clamp(2.15rem, 10vw, 2.85rem); }
  .profile-meta-pills { width: 100%; gap: 6px; margin-bottom: 20px; font-size: .71rem; }
  .profile-hero-grid-no-photo .profile-meta-pills { margin-bottom: 20px; }
  .profile-meta-pills > * { max-width: 100%; min-height: 32px; padding: 5px 9px; }
  .profile-meta-pills .icon { flex: 0 0 16px; }
  .profile-verification-warning { width: 100%; margin-bottom: 18px; }
  .profile-hero-description { max-width: none; margin-bottom: 17px; }
  .profile-hero-grid-no-photo .profile-hero-description { margin-bottom: 20px; }
  .profile-hero-description h2 { margin-bottom: 8px; font-size: .95rem; }
  .profile-hero-description p { font-size: .88rem; line-height: 1.62; }
  .profile-assurance { width: fit-content; max-width: 100%; clear: both; }
  .profile-contact-panel { display: block; margin-top: 20px; padding-top: 20px; }
  .profile-contact-heading { margin-bottom: 15px; }
  .profile-contact-heading h2 { font-size: 1.3rem; }
  .profile-contact-buttons { grid-template-columns: 1fr; gap: 7px; }
  .profile-contact-buttons .contact-button { min-height: 61px; }
  .profile-contact-report { margin-top: 10px; justify-content: stretch; }
  .profile-contact-report-button { width: 100%; min-height: 44px; justify-content: center; }
  .profile-main-grid { grid-template-columns: 1fr; gap: 16px; }
  .profile-panel { padding: 20px 17px; border-radius: 20px; }
  .profile-section-heading { margin-bottom: 18px; }
  .profile-section-heading h2 { font-size: 1.55rem; }
  .profile-reviews-heading { padding-bottom: 16px; }
  .profile-rating-summary { min-width: 116px; min-height: 56px; grid-template-columns: 27px auto; padding: 7px 10px; }
  .profile-rating-summary .icon { width: 27px; height: 27px; padding: 6px; }
  .profile-rating-summary strong { font-size: 1.08rem; }
  .review { grid-template-columns: 38px minmax(0, 1fr); gap: 11px; padding: 15px; border-radius: 16px; }
  .review-avatar { width: 38px; height: 38px; border-radius: 50%; }
  .profile-main-grid-single .reviews { columns: 1; }
  .profile-feedback-bar { grid-template-columns: 1fr; gap: 14px; margin-top: 18px; padding-top: 18px; }
  .profile-feedback-actions { display: grid; grid-template-columns: 1fr; justify-content: stretch; gap: 8px; }
  .profile-feedback-button { width: 100%; min-height: 50px; grid-template-columns: 24px minmax(0, 1fr) 20px; padding-inline: 13px 9px; }
  .profile-feedback-bar > small { grid-column: 1; justify-self: start; margin-top: -4px; }
  .feedback-toast { left: 12px; right: 12px; bottom: calc(78px + env(safe-area-inset-bottom)); width: auto; min-height: 94px; grid-template-columns: 40px minmax(0, 1fr) 30px; gap: 10px; padding: 14px 12px 17px 14px; border-radius: 16px; }
  .feedback-toast-icon { width: 40px; height: 40px; border-radius: 12px; }
  .feedback-toast-copy strong { font-size: .86rem; }
  .feedback-toast-copy p { font-size: .72rem; line-height: 1.45; }
  .feedback-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); border-radius: 20px; }
  .feedback-form { gap: 17px; padding: 20px 16px 17px; }
  .feedback-dialog-heading { grid-template-columns: 40px minmax(0, 1fr) 32px; gap: 10px; }
  .feedback-dialog-icon { width: 40px; height: 40px; border-radius: 12px; }
  .feedback-dialog-heading h2 { font-size: 1.4rem; }
  .feedback-rating-options { gap: 5px; }
  .feedback-rating-options span { min-height: 42px; gap: 3px; border-radius: 10px; font-size: .7rem; }
  .feedback-rating-options .icon { width: 13px; height: 13px; }
  .feedback-form-actions { grid-template-columns: 1fr; }
  .feedback-cancel { order: 2; }
  .feedback-submit { order: 1; }
  .profile-page > .similar-panel { margin-top: 32px; }
  .submit-page { padding-bottom: 32px; }
  .submit-page .breadcrumbs { margin-bottom: 14px; }
  .submit-hero { min-height: 0; grid-template-columns: 1fr; gap: 26px; padding: 27px 20px 22px; border-radius: 22px; }
  .submit-hero::before { width: 260px; height: 260px; right: -150px; top: -145px; }
  .submit-hero h1 { margin-bottom: 16px; font-size: clamp(2.35rem, 12vw, 3.25rem); }
  .submit-hero-lead { margin-bottom: 20px; font-size: .9rem; line-height: 1.6; }
  .submit-benefits { display: grid; gap: 6px; }
  .submit-benefits li { width: fit-content; min-height: 31px; padding: 5px 9px; font-size: .66rem; }
  .submit-hero-actions { display: grid; gap: 8px; margin-top: 16px; }
  .submit-hero-actions small { text-align: center; }
  .submit-hero-plans-link { width: 100%; min-height: 52px; }
  .submit-hero-card { min-height: 184px; padding: 23px; border-radius: 19px; transform: none; }
  .submit-hero-card strong { font-size: 4.5rem; }
  .submit-hero-card-label { margin-bottom: 12px; }
  .submit-hero-card-lines { position: absolute; width: 42%; right: 20px; bottom: 24px; }
  .submit-channels { margin-top: 16px; padding: 24px 15px 15px; border-radius: 22px; }
  .submit-channels-single { display: grid; grid-template-columns: 1fr; gap: 20px; }
  .submit-section-heading { margin-bottom: 20px; padding-inline: 4px; }
  .submit-section-heading h2 { font-size: 1.7rem; }
  .submit-section-heading > p:last-child { font-size: .82rem; line-height: 1.5; }
  .submit-channel-grid { grid-template-columns: 1fr; gap: 10px; }
  .submit-channel-card { padding: 19px 16px 16px; border-radius: 18px; }
  .submit-channel-card:hover { transform: none; }
  .submit-channel-topline { margin-bottom: 17px; }
  .submit-channel-icon { width: 44px; height: 44px; border-radius: 13px; }
  .submit-channel-icon .icon { width: 21px; height: 21px; }
  .submit-channel-copy h3 { margin-bottom: 8px; font-size: 1.3rem; }
  .submit-channel-copy p { margin-bottom: 18px; font-size: .82rem; line-height: 1.55; }
  .submit-channel-steps { gap: 5px; margin-bottom: 14px; }
  .submit-channel-steps li { grid-template-columns: 1fr; justify-items: center; gap: 6px; padding: 8px 4px; text-align: center; }
  .submit-channel-steps li > span { width: 27px; height: 27px; border-radius: 8px; }
  .submit-channel-steps strong { font-size: .56rem; }
  .submit-channel-action { min-height: 54px; }
  .submit-channel-note { font-size: .68rem; }
  .submit-process { margin-top: 16px; gap: 22px; padding: 25px 16px 16px; border-radius: 22px; }
  .submit-process-heading { padding-inline: 4px; }
  .submit-process-heading h2 { font-size: 1.7rem; }
  .submit-process-list { grid-template-columns: 1fr; gap: 7px; }
  .submit-process-list li { grid-template-columns: 34px minmax(0, 1fr); gap: 13px; padding: 15px; }
  .submit-process-list strong { margin-bottom: 4px; }
  .submit-free-disclaimer { align-items: flex-start; font-size: .7rem; line-height: 1.45; }
  .submit-plans { margin-top: 16px; padding: 25px 10px 12px; border-radius: 22px; }
  .submit-plans-heading { margin-bottom: 21px; padding-inline: 7px; }
  .submit-plans-heading h2 { margin-bottom: 12px; font-size: clamp(1.75rem, 8vw, 2.15rem); }
  .submit-plans-heading > p { font-size: .8rem; line-height: 1.52; }
  .submit-plans-real { min-height: 28px; margin-top: 14px; font-size: .62rem; }
  .submit-plan-tabs { gap: 3px; margin-bottom: 9px; padding: 4px; border-radius: 15px; }
  .submit-plan-tab { min-height: 70px; grid-template-columns: 1fr; justify-items: center; align-content: center; gap: 4px; padding: 7px 3px; border-radius: 11px; text-align: center; }
  .submit-plan-tab-mark { width: 31px; height: 31px; border-radius: 9px; font-size: .59rem; }
  .submit-plan-tab-mark .icon { width: 15px; height: 15px; }
  .submit-plan-tab > span:nth-child(2) { justify-items: center; }
  .submit-plan-tab strong { font-size: .68rem; }
  .submit-plan-tab small { display: none; }
  .submit-plan-tab em { right: 2px; top: -9px; padding: 3px 5px; font-size: .43rem; }
  .submit-plan-panel { min-height: 0; grid-template-columns: 1fr; gap: 24px; padding: 18px 14px 16px; border-radius: 19px; }
  .submit-plan-panel-premium::before { width: 230px; height: 230px; right: -160px; bottom: -165px; }
  .submit-plan-visual-label { min-height: 26px; margin: 0 0 10px 2px; padding: 5px 8px; font-size: .55rem; }
  .submit-plan-shot { max-width: 390px; border-width: 4px; border-radius: 16px; transform: none; }
  .submit-plan-shot:hover { transform: none; }
  .submit-plan-visual > p { margin: 11px 3px 0; font-size: .66rem; }
  .submit-plan-offer-topline { align-items: flex-start; margin-bottom: 15px; }
  .submit-plan-name { min-height: 29px; font-size: .61rem; }
  .submit-plan-availability { max-width: 125px; justify-content: flex-end; text-align: right; font-size: .55rem; line-height: 1.3; }
  .submit-plan-includes { max-width: 135px; text-align: right; font-size: .57rem; line-height: 1.35; }
  .submit-plan-free-price { font-size: 1.3rem; }
  .submit-plan-offer h3 { margin-bottom: 11px; font-size: clamp(1.9rem, 9vw, 2.35rem); }
  .submit-plan-offer-lead { margin-bottom: 18px; font-size: .79rem; line-height: 1.53; }
  .submit-plan-benefits { grid-template-columns: 1fr; gap: 7px; }
  .submit-plan-benefits li { grid-template-columns: 36px minmax(0, 1fr); gap: 9px; padding: 11px; border-radius: 12px; }
  .submit-plan-benefits > li > .icon { width: 36px; height: 36px; padding: 9px; }
  .submit-plan-benefits strong { font-size: .69rem; }
  .submit-plan-benefits small { font-size: .58rem; }
  .submit-plan-scarcity { grid-template-columns: 38px minmax(0, 1fr); gap: 10px; padding: 11px; border-radius: 13px; }
  .submit-plan-scarcity > span { width: 38px; height: 38px; }
  .submit-plan-scarcity strong { font-size: .69rem; }
  .submit-plan-scarcity p { font-size: .57rem; }
  .submit-plan-cta { min-height: 54px; margin-top: 13px; }
  .submit-plan-price-note { font-size: .56rem; }
  .submit-plans-footer { display: grid; grid-template-columns: 19px minmax(0, 1fr); justify-content: stretch; gap: 9px; margin-top: 9px; padding: 12px; text-align: left; }
  .submit-plans-footer p { font-size: .63rem; }
  .submit-plans { max-width: 100%; padding: 27px 9px 11px; overflow: hidden; }
  .submit-plans-heading { grid-template-columns: 1fr; align-items: stretch; gap: 15px; margin-bottom: 23px; padding-inline: 8px; text-align: left; }
  .submit-plans-heading h2 { max-width: 340px; font-size: clamp(1.9rem, 9vw, 2.45rem); }
  .submit-plans-heading > .submit-plans-heading-copy > p:last-child { font-size: .79rem; line-height: 1.52; }
  .submit-plans-proof { width: fit-content; min-height: 48px; grid-template-columns: 32px minmax(0, 1fr); gap: 9px; padding: 7px 11px 7px 8px; border-radius: 13px; }
  .submit-plans-proof > span { width: 32px; height: 32px; border-radius: 9px; }
  .submit-plans-proof .icon { width: 16px; height: 16px; }
  .submit-plans-proof strong { font-size: .66rem; }
  .submit-plans-proof small { font-size: .55rem; }
  .submit-plan-tabs { gap: 6px; margin-bottom: 10px; padding: 0; }
  .submit-plan-tab { min-height: 88px; grid-template-columns: 1fr; justify-items: center; align-content: center; gap: 4px; padding: 10px 3px 7px; border-radius: 14px; text-align: center; }
  .submit-plan-tab::before { left: 10px; right: 10px; }
  .submit-plan-tab-mark { width: 34px; height: 34px; border-radius: 10px; }
  .submit-plan-tab strong { font-size: .7rem; }
  .submit-plan-level { height: 12px; align-items: end; justify-content: center; gap: 2px; padding: 0; }
  .submit-plan-level i { width: 3px; }
  .submit-plan-level i:nth-child(1) { height: 4px; }
  .submit-plan-level i:nth-child(2) { height: 7px; }
  .submit-plan-level i:nth-child(3) { height: 10px; }
  .submit-plan-tab em { right: 3px; top: -7px; padding: 3px 5px; font-size: .42rem; }
  .submit-plan-tab[aria-selected="true"] { transform: translateY(-2px); }
  .submit-plan-panel { gap: 18px; padding: 18px 12px 15px; }
  .submit-plan-panel.is-active .submit-plan-shot { animation-name: submit-shot-arrive-mobile; }
  @keyframes submit-shot-arrive-mobile { from { opacity: .35; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
  .submit-plan-panel::after { left: 18px; right: 18px; }
  .submit-plan-shot { max-width: 320px; margin-inline: auto; padding: 5px; border-width: 4px; }
  .submit-plan-visual-label { margin-left: max(2px, calc((100% - 300px) / 2)); }
  .submit-plan-visual > p { display: none; }
  .submit-plan-offer-topline { margin-bottom: 12px; }
  .submit-plan-offer h3 { max-width: 315px; margin-bottom: 9px; font-size: clamp(1.75rem, 8.5vw, 2.15rem); }
  .submit-plan-offer-lead { margin-bottom: 14px; font-size: .77rem; }
  .submit-plan-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .submit-plan-benefits li { min-height: 78px; grid-template-columns: 31px minmax(0, 1fr); align-content: start; gap: 7px; padding: 9px 8px; }
  .submit-plan-benefits > li > .icon { width: 31px; height: 31px; padding: 8px; border-radius: 9px; }
  .submit-plan-benefits strong { font-size: .64rem; line-height: 1.28; }
  .submit-plan-benefits small { display: none; }
  .submit-plan-panel-free .submit-plan-benefits li:last-child { grid-column: 1 / -1; min-height: 66px; }
  .submit-plan-free-limits { margin-top: 9px; }
  .submit-plan-scarcity { margin-top: 8px; }
  .submit-plan-scarcity p { display: none; }
  .submit-plan-cta { margin-top: 11px; }
  .telegram-cta { padding-bottom: 28px; }
  .telegram-cta-inner { display: flex; flex-direction: column; align-items: stretch; gap: 0; min-height: 0; padding: 25px 20px 22px; border-radius: 22px; }
  .telegram-cta-content { display: contents; }
  .telegram-icon { width: 48px; height: 48px; order: 1; border-radius: 14px; }
  .telegram-cta .cta-copy { order: 2; margin-top: 17px; }
  .telegram-cta h2 { max-width: 520px; font-size: clamp(1.65rem,7vw,2.2rem); }
  .telegram-cta .cta-copy > p:last-child { margin-top: 9px; font-size: .88rem; line-height: 1.5; }
  .telegram-benefits { order: 3; gap: 6px; margin: 17px 0 19px; }
  .telegram-benefits li { min-height: 30px; padding: 5px 9px; font-size: .67rem; }
  .telegram-cta .btn { width: 100%; order: 5; margin-top: 24px; }
  .telegram-news-card { width: 100%; order: 6; margin-top: 9px; }
  .telegram-showcase { min-height: 0; display: flex; align-items: flex-end; justify-content: center; order: 4; margin: 3px -6px 0; padding: 8px 0 10px; }
  .telegram-screen { position: relative; inset: auto; width: min(42%, 205px); height: auto; flex: 0 0 min(42%, 205px); border: 5px solid rgba(255,255,255,.98); border-radius: 22px; }
  .telegram-screen::before { top: 5px; height: 8px; }
  .telegram-screen-menu { z-index: 2; margin-right: -11%; transform: rotate(-5deg); }
  .telegram-screen-categories { z-index: 4; transform: none; }
  .telegram-screen-specialist { z-index: 3; margin-left: -11%; transform: rotate(5deg); }
  .telegram-showcase:hover .telegram-screen-menu { transform: rotate(-5deg); }
  .telegram-showcase:hover .telegram-screen-categories { transform: translateY(0); }
  .telegram-showcase:hover .telegram-screen-specialist { transform: rotate(5deg); }
  .site-footer { padding: 36px 0 28px; }
  .brand-inverse .footer-logo-mark { width: 54px; height: 54px; flex-basis: 54px; border-radius: 17px; }
  .brand-inverse .footer-logo-mark img { width: 64px; left: -5px; top: -8px; }
  .brand-inverse .brand-wordmark strong { font-size: 1.25rem; }
  .footer-shell { grid-template-columns: 1fr; gap: 24px; }
  .footer-nav { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer-nav-documents { grid-column: 1 / -1; }
  .footer-note { padding-top: 18px; font-size: .82rem; }
  .footer-copy { margin: 0; }
}

@media (max-width: 430px) {
  .container, .header-shell, .footer-shell, .telegram-cta-inner, .home-shell { width: min(calc(100% - 20px), var(--container)); }
  .telegram-showcase { margin-inline: 0; padding-inline: 6px; }
  .telegram-screen { width: 37%; flex-basis: 37%; }
  .telegram-screen-menu { margin-right: -9%; }
  .telegram-screen-specialist { margin-left: -9%; }
  .brand-wordmark { display: grid; }
  .market-hero { padding-inline: 18px; }
  .hero-location-action { padding-inline: 8px; }
  .state-city-list { grid-template-columns: 1fr; }
  .city-grid { grid-template-columns: 1fr; }
  .city-grid-home { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .chips-large { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .card-main { grid-template-columns: 76px minmax(0,1fr); column-gap: 12px; row-gap: 0; padding-inline: 13px; }
  .card-media { width: 76px; height: 76px; }
  .card-media.media-portrait { height: 95px; }
  .card-actions { padding-inline: 10px; }
  .card-actions:has(.quick-contact:only-child) { grid-template-columns: minmax(0, 1fr) 108px; }
  .profile-hero { padding: 15px; border-radius: 20px; }
  .profile-identity h1 { font-size: clamp(2rem, 10.8vw, 2.55rem); }
  .profile-contact-buttons .contact-button { grid-template-columns: 26px minmax(0, 1fr) auto; padding-inline: 12px; }
  .profile-contact-buttons .contact-button > .icon { width: 23px; height: 23px; }
  .footer-nav { gap: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
  .hero-orbit, .hero-brand-mark, .hero-location-action::after, .city-category-action::after, .city-photo-hero-image, .category-accordion-panel, .category-nearby-disclosure-summary::after, .telegram-button::after, .telegram-news-card::after { animation: none !important; }
}

/* Consent-first analytics */
.footer-consent-button { min-height: 30px; justify-self: start; padding: 0; border: 0; color: #bdb3b0; background: transparent; font-size: .9rem; text-align: left; }
.footer-consent-button:hover { color: #fff; }
.consent-banner[hidden] { display: none !important; }
.consent-banner { box-sizing: border-box; position: fixed; z-index: 1500; left: 50%; bottom: max(22px, env(safe-area-inset-bottom)); width: min(calc(100% - 40px), 1120px); display: grid; grid-template-columns: 58px minmax(0, 1fr) 244px; align-items: center; gap: 20px; padding: 20px; overflow: hidden; border: 1px solid rgba(255,190,82,.48); border-radius: 22px; color: #fff; background: radial-gradient(circle at 0 0, rgba(255,190,82,.16), transparent 28%), linear-gradient(135deg, rgba(24,19,21,.985), rgba(44,35,38,.985)); box-shadow: 0 30px 90px rgba(18,12,14,.46), 0 0 0 4px rgba(255,255,255,.2), inset 0 1px 0 rgba(255,255,255,.12); backdrop-filter: blur(18px); transform: translateX(-50%); animation: consent-banner-in .32s cubic-bezier(.2,.8,.2,1) both; }
.consent-banner::before { content: ""; position: absolute; z-index: 0; left: 22px; right: 22px; top: 0; height: 2px; border-radius: 0 0 999px 999px; background: linear-gradient(90deg, transparent, #ffbf50 24%, #ffe1a6 50%, #ffbf50 76%, transparent); opacity: .82; pointer-events: none; }
.consent-banner::after { content: ""; position: absolute; z-index: -1; right: -82px; top: -118px; width: 250px; height: 250px; border: 1px solid rgba(255,190,82,.24); border-radius: 50%; box-shadow: inset 0 0 0 32px rgba(245,172,63,.045); pointer-events: none; }
.consent-banner-mark { position: relative; z-index: 1; width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(107,229,191,.6); border-radius: 17px; color: #fff; background: linear-gradient(145deg, #2dbb90, #11775f); box-shadow: inset 0 1px 0 rgba(255,255,255,.3), 0 12px 28px rgba(9,91,71,.32); }
.consent-banner-mark .icon { width: 27px; height: 27px; }
.consent-banner-copy { position: relative; z-index: 1; min-width: 0; }
.consent-banner-copy .eyebrow { margin-bottom: 5px; color: #ffc65e; font-size: .62rem; }
.consent-banner-copy h2 { margin-bottom: 6px; color: #fff; font-size: 1.25rem; letter-spacing: -.025em; }
.consent-banner-copy > p:not(.eyebrow) { max-width: 700px; margin: 0; color: #d2c9cc; font-size: .78rem; line-height: 1.48; }
.consent-banner-copy > a { display: inline-flex; margin-top: 6px; color: #f5dcae; font-size: .68rem; font-weight: 700; text-decoration: underline; text-decoration-color: rgba(255,198,94,.48); text-underline-offset: 3px; }
.consent-banner-copy > a:hover { color: #fff; }
.consent-banner-actions { position: relative; z-index: 1; min-width: 0; display: grid; grid-template-columns: 1fr; gap: 7px; }
.consent-button { min-width: 0; max-width: 100%; min-height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 14px; border: 1px solid transparent; border-radius: 12px; font-size: .72rem; font-weight: 800; line-height: 1.2; white-space: normal; transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease; }
.consent-button .icon { width: 17px; height: 17px; }
.consent-button:hover { transform: translateY(-1px); }
.consent-button-primary { position: relative; isolation: isolate; overflow: hidden; border-color: #f0a52d; color: #1d1200; background: linear-gradient(135deg, #ffd477 0%, #ffb53e 48%, #ee9419 100%); box-shadow: 0 9px 24px rgba(239,151,29,.24), inset 0 1px 0 rgba(255,255,255,.62); }
.consent-button-primary::after { content: ""; position: absolute; z-index: 1; top: -55%; bottom: -55%; left: -48%; width: 34%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent); transform: skewX(-22deg); animation: consent-primary-shine 3.8s ease-in-out infinite; pointer-events: none; }
.consent-button-primary:hover { border-color: #ffc766; background: linear-gradient(135deg, #ffdd8b 0%, #ffc051 48%, #f29c23 100%); box-shadow: 0 11px 28px rgba(239,151,29,.32), inset 0 1px 0 rgba(255,255,255,.7); }
.consent-button-primary:focus-visible { outline: 3px solid rgba(255,204,109,.48); outline-offset: 3px; }
.consent-button-secondary { border-color: rgba(255,255,255,.2); color: #f5f1f2; background: rgba(255,255,255,.075); }
.consent-banner-actions > .consent-button-secondary { width: 82%; min-height: 38px; justify-self: end; }
.consent-button-secondary:hover { border-color: rgba(255,255,255,.38); background: rgba(255,255,255,.13); }
.consent-details-button { min-height: 28px; padding: 2px 8px; border: 0; color: #bdb3b6; background: transparent; font-size: .66rem; font-weight: 750; text-decoration: underline; text-decoration-color: rgba(255,255,255,.24); text-underline-offset: 3px; }
.consent-details-button:hover { color: #ffd47d; }
@keyframes consent-banner-in { from { opacity: 0; transform: translate(-50%,18px) scale(.985); } to { opacity: 1; transform: translate(-50%,0) scale(1); } }
@keyframes consent-primary-shine { 0%, 55% { left: -48%; opacity: 0; } 62% { opacity: 1; } 82%, 100% { left: 118%; opacity: 0; } }

.consent-settings { width: min(calc(100% - 28px), 610px); max-height: calc(100dvh - 32px); padding: 0; overflow: auto; border: 0; border-radius: 24px; color: var(--ink); background: #fffdfb; box-shadow: 0 32px 100px rgba(23,17,17,.3); }
.consent-settings::backdrop { background: rgba(16,12,13,.52); backdrop-filter: blur(5px); }
.consent-settings-card { display: grid; gap: 16px; padding: 24px; }
.consent-settings-heading { display: grid; grid-template-columns: 48px minmax(0, 1fr) 36px; align-items: center; gap: 12px; }
.consent-settings-heading .eyebrow { margin-bottom: 4px; color: var(--verified); font-size: .62rem; }
.consent-settings-heading h2 { margin: 0; font-size: 1.55rem; }
.consent-settings-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; color: #fff; background: linear-gradient(145deg, #25a781, #147c62); }
.consent-settings-icon .icon { width: 23px; height: 23px; }
.consent-settings-close { width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 1px solid #e2dad6; border-radius: 50%; color: #766d6f; background: #fff; font-size: 1.3rem; line-height: 1; }
.consent-settings-lead { margin: 0; color: #6f6567; font-size: .82rem; line-height: 1.5; }
.consent-option { position: relative; min-height: 82px; display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 14px; border: 1px solid #e4dcD8; border-radius: 16px; background: #fff; }
.consent-option.is-required { border-color: #cde4dd; background: #f3fbf8; }
.consent-option-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; color: var(--verified); background: #e1f5ef; }
.consent-option-icon .icon { width: 20px; height: 20px; }
.consent-option div { min-width: 0; }
.consent-option strong { display: block; margin-bottom: 3px; font-size: .82rem; }
.consent-option p { margin: 0; color: #776d6f; font-size: .7rem; line-height: 1.45; }
.consent-option-status { min-height: 29px; display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; color: var(--verified); background: #daf1ea; font-size: .61rem; font-weight: 850; }
.consent-option-toggle { cursor: pointer; }
.consent-option-toggle:hover { border-color: #d1b98f; background: #fffaf1; }
.consent-option-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.consent-switch { position: relative; width: 48px; height: 28px; border: 1px solid #cfc5c1; border-radius: 999px; background: #ddd5d2; transition: border-color .2s ease, background-color .2s ease; }
.consent-switch::after { content: ""; position: absolute; left: 3px; top: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; box-shadow: 0 2px 7px rgba(39,29,29,.2); transition: transform .2s ease; }
.consent-option-toggle input:checked + .consent-switch { border-color: #147c62; background: #199571; }
.consent-option-toggle input:checked + .consent-switch::after { transform: translateX(20px); }
.consent-option-toggle input:focus-visible + .consent-switch { outline: 3px solid rgba(245,172,63,.42); outline-offset: 3px; }
.consent-settings-policy { justify-self: start; color: #685d5f; font-size: .72rem; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.consent-settings-actions { display: grid; grid-template-columns: .7fr 1.3fr; gap: 9px; padding-top: 4px; }

@media (max-width: 760px) {
  .consent-banner { bottom: calc(78px + env(safe-area-inset-bottom)); width: calc(100% - 20px); max-height: calc(100dvh - 98px); grid-template-columns: 42px minmax(0, 1fr); align-items: start; gap: 10px 12px; padding: 15px; overflow-y: auto; border-radius: 18px; box-shadow: 0 22px 64px rgba(12,8,10,.58), 0 0 0 3px rgba(255,255,255,.26), inset 0 1px 0 rgba(255,255,255,.12); }
  .consent-banner-mark { width: 42px; height: 42px; border-radius: 12px; }
  .consent-banner-mark .icon { width: 21px; height: 21px; }
  .consent-banner-copy .eyebrow { margin-bottom: 4px; }
  .consent-banner-copy h2 { margin-bottom: 6px; font-size: 1.05rem; }
  .consent-banner-copy > p:not(.eyebrow) { font-size: .71rem; line-height: 1.42; }
  .consent-banner-copy > a { font-size: .62rem; }
  .consent-banner-actions { grid-column: 1 / -1; grid-template-columns: 1.22fr .78fr; gap: 7px; }
  .consent-banner-actions .consent-details-button { grid-column: 1 / -1; }
  .consent-button { min-height: 45px; padding-inline: 9px; font-size: .66rem; }
  .consent-banner-actions > .consent-button-secondary { width: 100%; min-height: 41px; }
  .consent-button .icon { display: none; }
  .consent-settings { width: calc(100% - 18px); max-height: calc(100dvh - 18px); border-radius: 20px; }
  .consent-settings-card { gap: 13px; padding: 18px 14px 15px; }
  .consent-settings-heading { grid-template-columns: 42px minmax(0, 1fr) 34px; gap: 9px; }
  .consent-settings-icon { width: 42px; height: 42px; border-radius: 12px; }
  .consent-settings-heading h2 { font-size: 1.3rem; }
  .consent-option { min-height: 76px; grid-template-columns: 36px minmax(0, 1fr) auto; gap: 9px; padding: 11px; }
  .consent-option-icon { width: 36px; height: 36px; border-radius: 10px; }
  .consent-option p { font-size: .64rem; }
  .consent-option-status { padding-inline: 7px; font-size: .55rem; }
  .consent-settings-actions { grid-template-columns: 1fr; }
  .consent-settings-actions .consent-button-primary { order: 1; }
  .consent-settings-actions .consent-button-secondary { order: 2; }
}

@media (prefers-reduced-motion: reduce) {
  .consent-button-primary::after { animation: none !important; }
}

/* Installable web app */
.install-page { padding-bottom: clamp(58px,7vw,92px); }
.install-hero { position: relative; isolation: isolate; min-height: 570px; display: grid; grid-template-columns: minmax(0,1fr) 370px; align-items: center; gap: clamp(36px,6vw,86px); overflow: hidden; margin-bottom: 18px; padding: clamp(38px,5vw,72px); border: 1px solid #2b2628; border-radius: 32px; color: #fff; background: radial-gradient(circle at 88% 24%,rgba(44,172,223,.2),transparent 29%),radial-gradient(circle at 72% 100%,rgba(245,172,63,.18),transparent 32%),linear-gradient(135deg,#100d0f 0%,#191416 58%,#0c171b 100%); box-shadow: 0 28px 70px rgba(28,20,22,.2); }
.install-hero-glow { position: absolute; z-index: -1; right: -120px; top: -170px; width: 480px; height: 480px; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; box-shadow: inset 0 0 0 58px rgba(255,255,255,.018),0 0 0 90px rgba(255,255,255,.012); }
.install-hero-copy { min-width: 0; }
.install-hero .eyebrow { margin-bottom: 17px; color: #ffc761; }
.install-hero h1 { max-width: 760px; margin: 0 0 22px; color: #fff; font-size: clamp(2.8rem,5.2vw,5rem); line-height: .96; letter-spacing: -.06em; overflow-wrap: anywhere; text-wrap: balance; }
.install-hero h1 span { color: #ffc45d; }
.install-hero-lead { max-width: 680px; margin: 0; color: #cbc4c6; font-size: clamp(.97rem,1.4vw,1.1rem); line-height: 1.7; }
.install-hero-points { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px; }
.install-hero-points span { min-height: 34px; display: inline-flex; align-items: center; gap: 7px; padding: 7px 11px; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; color: #e9e4e5; background: rgba(255,255,255,.055); font-size: .68rem; font-weight: 750; backdrop-filter: blur(8px); }
.install-hero-points .icon { width: 16px; height: 16px; padding: 3px; border-radius: 50%; color: #0e5f4b; background: #8ee4ca; }
.install-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 28px; }
.install-native-button,.install-instruction-link { position: relative; min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; overflow: hidden; padding: 11px 20px; border: 1px solid transparent; border-radius: 15px; font-size: .78rem; font-weight: 900; transition: border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease; }
.install-native-button,.install-instruction-link { border-color: #e29a2d; color: #241600; background: linear-gradient(145deg,#ffcc6c,#f3a83a); box-shadow: inset 0 1px 0 rgba(255,255,255,.58),0 13px 28px rgba(196,116,8,.24); }
.install-native-button:hover,.install-instruction-link:hover { color: #241600; background: linear-gradient(145deg,#ffd47c,#f0a031); transform: translateY(-2px); }
.install-native-button .icon,.install-instruction-link .icon { width: 18px; height: 18px; }
.install-instruction-link > span { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.4); font-size: 1rem; }
.install-device-note { margin: 13px 0 0; color: #9f9699; font-size: .67rem; }
.install-success-note { width: fit-content; min-height: 40px; display: inline-flex; align-items: center; gap: 8px; margin-top: 15px; padding: 8px 12px; border: 1px solid rgba(125,226,194,.36); border-radius: 12px; color: #a8efd9; background: rgba(35,151,116,.13); font-size: .72rem; font-weight: 800; }
.install-success-note[hidden],.install-native-button[hidden],.install-card-native-button[hidden] { display: none !important; }
.install-success-note .icon { width: 18px; height: 18px; }

.install-showcase { position: relative; min-height: 590px; display: grid; place-items: center; }
.install-showcase::before { content: ""; position: absolute; width: 360px; height: 360px; border: 1px solid rgba(85,202,244,.24); border-radius: 50%; box-shadow: inset 0 0 0 35px rgba(85,202,244,.025),0 0 70px rgba(37,165,215,.08); }
.install-phone { position: relative; z-index: 2; width: 278px; height: 575px; padding: 10px; border: 2px solid #4d474a; border-radius: 42px; background: #080708; box-shadow: 0 42px 75px rgba(0,0,0,.48),inset 0 0 0 1px rgba(255,255,255,.12); }
.install-phone-speaker { position: absolute; z-index: 3; left: 50%; top: 17px; width: 78px; height: 24px; border-radius: 999px; background: #020203; box-shadow: inset 0 1px 1px rgba(255,255,255,.08),0 1px 4px rgba(0,0,0,.26); transform: translateX(-50%); }
.install-phone-speaker::after { content: ""; position: absolute; right: 8px; top: 50%; width: 5px; height: 5px; border-radius: 50%; background: radial-gradient(circle at 35% 35%,#243f69,#07101d 58%,#010205); box-shadow: 0 0 0 1px rgba(35,55,82,.42); transform: translateY(-50%); }
.install-phone-screen { position: relative; height: 100%; overflow: hidden; padding: 0; border-radius: 32px; background: #05080d; }
.install-phone-screenshot { width: 100%; height: 100%; display: block; object-fit: cover; image-rendering: auto; }
.install-status { display: flex; justify-content: space-between; padding: 0 5px; color: #332e2f; font-size: .5rem; font-weight: 850; }
.install-phone-screen > p { margin: 28px 0 18px; color: #3a3436; font-size: .7rem; font-weight: 850; text-align: center; }
.install-app-grid { display: grid; grid-template-columns: repeat(3,1fr); align-items: start; justify-items: center; gap: 24px 13px; }
.ghost-app { width: 43px; height: 43px; border-radius: 13px; opacity: .84; box-shadow: inset 0 1px 0 rgba(255,255,255,.4),0 8px 15px rgba(52,42,41,.1); }
.ghost-blue { background: linear-gradient(145deg,#77c8f2,#278bc6); }.ghost-green { background: linear-gradient(145deg,#95dfb1,#2b9d64); }.ghost-violet { background: linear-gradient(145deg,#c2a3ea,#7953b6); }.ghost-orange { background: linear-gradient(145deg,#ffc66a,#e78128); }.ghost-sky { background: linear-gradient(145deg,#8de4e2,#239eaa); }.ghost-rose { background: linear-gradient(145deg,#f2a8b7,#c65371); }
.install-app-icon { display: grid; justify-items: center; gap: 5px; }
.install-app-icon img { width: 49px; height: 49px; border-radius: 14px; box-shadow: 0 10px 22px rgba(50,34,31,.18); }
.install-app-icon strong { color: #322d2f; font-size: .48rem; }
.install-phone-dock { position: absolute; left: 14px; right: 14px; bottom: 16px; display: grid; grid-template-columns: repeat(4,1fr); justify-items: center; padding: 11px 8px; border: 1px solid rgba(255,255,255,.65); border-radius: 20px; background: rgba(255,255,255,.45); backdrop-filter: blur(10px); }
.install-phone-dock i { width: 34px; height: 34px; border-radius: 10px; background: rgba(72,62,61,.2); }

.install-instructions { padding: clamp(30px,4.5vw,56px); border: 1px solid #ded5d0; border-radius: 28px; background: linear-gradient(150deg,#fff,#fffdfa); box-shadow: 0 18px 48px rgba(44,33,31,.07); scroll-margin-top: 92px; }
.install-section-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,420px); align-items: end; gap: 28px; margin-bottom: 30px; }
.install-section-heading .eyebrow { margin-bottom: 8px; }
.install-section-heading h2 { margin: 0; font-size: clamp(2.1rem,3.6vw,3.5rem); line-height: .98; letter-spacing: -.05em; }
.install-section-heading > p { margin: 0; color: #756b6d; line-height: 1.6; }
.install-platform-tabs { width: min(100%,650px); display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-bottom: 18px; padding: 7px; border: 1px solid #e1d8d3; border-radius: 20px; background: #f5f1ee; }
.install-platform-tabs button { min-width: 0; min-height: 68px; display: grid; grid-template-columns: 42px minmax(0,1fr) 24px; align-items: center; gap: 11px; padding: 9px 12px; border: 1px solid transparent; border-radius: 14px; color: #665d60; background: transparent; text-align: left; transition: color .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease; }
.install-platform-tabs button:hover { color: #272225; background: rgba(255,255,255,.6); }
.install-platform-tabs button.is-active { border-color: #e4d5c6; color: #211d1f; background: #fff; box-shadow: 0 8px 20px rgba(48,36,34,.08),inset 0 -3px 0 #f5ac3f; }
.install-tab-icon { width: 42px; height: 42px; display: grid; place-items: center; color: #171416; background: transparent; }
.install-tab-icon svg { width: 20px; height: 24px; overflow: visible; fill: currentColor; }
.install-tab-android { color: #2fbf67; }
.install-tab-android svg { width: 29px; height: 29px; }
.install-platform-tabs small,.install-platform-tabs strong { display: block; }.install-platform-tabs small { margin-bottom: 2px; color: #8c8184; font-size: .56rem; text-transform: uppercase; }.install-platform-tabs strong { font-size: .93rem; }
.install-platform-tabs button > i { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; color: transparent; background: #eee8e4; font-size: .65rem; font-style: normal; }
.install-platform-tabs button.is-active > i { color: #fff; background: #159071; }
.install-platform-card { display: none; animation: install-panel-in .28s ease both; }
.install-platform-card.is-active { display: block; }
@keyframes install-panel-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }
.install-ios-guide { display: grid; grid-template-columns: minmax(310px,360px) minmax(0,1fr); align-items: start; gap: 18px; }
.install-video-card { position: relative; margin: 0; padding: 12px; border: 1px solid #2f292c; border-radius: 24px; color: #fff; background: radial-gradient(circle at 100% 0,rgba(51,181,227,.16),transparent 32%),linear-gradient(145deg,#151214,#242022); box-shadow: 0 20px 42px rgba(33,24,26,.16); }
.install-video-heading { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 3px 10px; }
.install-video-heading span { display: inline-flex; align-items: center; gap: 8px; font-size: .62rem; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.install-video-heading span i { width: 8px; height: 8px; border-radius: 50%; background: #ee4d5a; box-shadow: 0 0 0 5px rgba(238,77,90,.12); }
.install-video-heading small { padding: 5px 8px; border: 1px solid rgba(255,255,255,.11); border-radius: 999px; color: #cfc8cb; background: rgba(255,255,255,.055); font-size: .55rem; }
.install-video-shell { position: relative; overflow: hidden; aspect-ratio: 1180 / 2556; border: 1px solid rgba(255,255,255,.11); border-radius: 18px; background: #0c0a0b; }
.install-android-guide .install-video-shell { aspect-ratio: 576 / 1280; }
.install-video-card video { width: 100%; height: 100%; display: block; border: 0; background: #0c0a0b; object-fit: cover; }
.install-video-cover { position: absolute; z-index: 2; inset: 0; overflow: hidden; padding: 0; border: 0; color: #fff; background: #080b11; cursor: pointer; }
.install-video-cover[hidden] { display: none; }
.install-video-cover::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 58%,rgba(3,5,8,.12) 72%,rgba(3,5,8,.7)); pointer-events: none; }
.install-video-cover > img { width: 100%; height: 100%; display: block; object-fit: cover; image-rendering: auto; transition: transform .35s ease,filter .35s ease; }
.install-video-cover:hover > img { transform: scale(1.012); filter: brightness(.94); }
.install-video-play { position: absolute; z-index: 3; left: 50%; bottom: 24px; min-width: 178px; display: grid; grid-template-columns: 42px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; column-gap: 10px; padding: 10px 14px 10px 10px; border: 1px solid rgba(255,255,255,.28); border-radius: 17px; background: rgba(17,14,16,.82); box-shadow: 0 14px 34px rgba(0,0,0,.3); backdrop-filter: blur(12px); transform: translateX(-50%); text-align: left; }
.install-video-play > i { grid-row: 1 / 3; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: #171013; background: #ffc45b; font-size: .9rem; font-style: normal; padding-left: 2px; }
.install-video-play strong { align-self: end; font-size: .7rem; line-height: 1.15; }.install-video-play small { align-self: start; color: #cfc7ca; font-size: .55rem; }
.install-video-card figcaption { display: grid; gap: 3px; padding: 12px 4px 3px; }
.install-video-card figcaption strong { font-size: .7rem; }.install-video-card figcaption span { color: #a9a1a4; font-size: .59rem; line-height: 1.4; }
.install-ios-steps { min-width: 0; }
.install-ios-steps .install-step-list { grid-template-columns: 1fr; }
.install-ios-steps .install-step-list li { min-height: 0; }
.install-ios-button-strip { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 7px; overflow: hidden; margin-bottom: 12px; padding: 9px; border: 1px solid #292526; border-radius: 19px; background: linear-gradient(145deg,#151214,#282123); }
.install-ios-button-shot { min-width: 0; overflow: hidden; margin: 0; border: 1px solid rgba(255,255,255,.12); border-radius: 12px; background: rgba(255,255,255,.055); }
.install-ios-button-shot > div { height: 86px; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.11); background: #ece9e7; }
.install-ios-button-shot img { width: 100%; height: 100%; display: block; object-fit: cover; image-rendering: auto; }
.install-ios-button-shot-1 img { object-position: 50% 100%; }
.install-ios-button-shot-2 img { object-position: 50% 55%; }
.install-ios-button-shot-3 img { object-position: 50% 100%; }
.install-ios-button-shot-4 img { object-position: 50% 78%; }
.install-ios-button-shot-5 img { object-position: 50% 15%; }
.install-ios-button-shot figcaption { min-height: 43px; display: grid; grid-template-columns: 23px minmax(0,1fr); align-items: center; gap: 5px; padding: 5px; color: #fff; }
.install-ios-button-shot figcaption > span { width: 23px; height: 23px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 7px; color: #f3edef; background: rgba(255,255,255,.08); font-size: .46rem; font-weight: 950; }
.install-ios-button-shot figcaption strong { min-width: 0; overflow: hidden; color: #eee8ea; font-size: .49rem; line-height: 1.18; text-overflow: ellipsis; }
.install-ios-sequence-head { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: 13px; margin: 0 0 12px; padding: 3px 2px; }
.install-ios-sequence-head > span { min-height: 30px; display: inline-flex; align-items: center; justify-content: center; padding: 6px 10px; border: 1px solid #e4a33e; border-radius: 999px; color: #7d4700; background: #fff2d9; font-size: .59rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.install-ios-sequence-head h3 { margin: 0 0 4px; font-size: 1.05rem; line-height: 1.15; letter-spacing: -.025em; }
.install-ios-sequence-head p { max-width: 640px; margin: 0; color: #71676a; font-size: .66rem; line-height: 1.45; }
.install-ios-shot-list { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.install-ios-shot-step { min-width: 0; display: grid; grid-template-columns: minmax(180px,1fr) minmax(190px,230px); align-items: stretch; gap: 10px; overflow: hidden; padding: 9px; border: 1px solid #e3d9d4; border-radius: 19px; background: linear-gradient(145deg,#fff,#fbf7f3); box-shadow: 0 8px 20px rgba(46,34,35,.045); }
.install-ios-step-copy { min-width: 0; display: grid; grid-template-columns: 35px minmax(0,1fr); align-content: center; gap: 10px; padding: 12px 8px 12px 10px; }
.install-ios-step-copy > span { width: 35px; height: 35px; display: grid; place-items: center; border: 1px solid #e2a03a; border-radius: 11px; color: #784300; background: #fff0d3; font-size: .58rem; font-weight: 950; letter-spacing: .05em; }
.install-ios-step-copy strong { display: block; margin: 1px 0 5px; font-size: .76rem; line-height: 1.3; }
.install-ios-step-copy p { margin: 0; color: #756b6e; font-size: .62rem; line-height: 1.47; }
.install-ios-shot { position: relative; height: 158px; min-height: 158px; overflow: hidden; margin: 0; border: 1px solid #d6cfcc; border-radius: 14px; background: #efedeb; box-shadow: inset 0 1px 0 rgba(255,255,255,.8); }
.install-ios-shot::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,255,255,.36); pointer-events: none; }
.install-ios-shot img { width: 100%; height: 100%; display: block; object-fit: cover; image-rendering: auto; }
.install-ios-shot-step-1 .install-ios-shot img { object-position: 50% 100%; }
.install-ios-shot-step-2 .install-ios-shot img { object-position: 50% 55%; }
.install-ios-shot-step-3 .install-ios-shot img { object-position: 50% 100%; }
.install-ios-shot-step-4 .install-ios-shot img { object-position: 50% 78%; }
.install-ios-shot-step-5 .install-ios-shot img { object-position: 50% 15%; }
.install-ios-domain-mask { display: none; position: absolute; z-index: 2; align-items: center; justify-content: center; overflow: hidden; border: 1px solid rgba(194,187,181,.8); color: #383334; background: rgba(248,246,243,.96); box-shadow: 0 3px 10px rgba(42,35,35,.08); font-size: .51rem; font-weight: 750; line-height: 1; backdrop-filter: blur(10px); }
.install-ios-shot-step-1 .install-ios-domain-mask { left: 23%; right: 17%; top: 64%; height: 23%; display: flex; border-radius: 999px; }
.install-ios-shot-step-5 .install-ios-domain-mask { left: 18%; right: 5%; top: 45%; height: 19%; display: flex; border-radius: 8px; }
.install-ios-tap { position: absolute; z-index: 4; width: 30px; height: 30px; border: 2px solid #f39e1e; border-radius: 50%; background: rgba(255,188,75,.14); box-shadow: 0 0 0 5px rgba(255,179,57,.17),0 4px 12px rgba(103,57,0,.2); pointer-events: none; }
.install-ios-tap::after { content: ""; position: absolute; left: 50%; top: 50%; width: 7px; height: 7px; border-radius: 50%; background: #f39e1e; transform: translate(-50%,-50%); }
.install-ios-shot-step-1 .install-ios-tap { right: 3.5%; bottom: 8%; }
.install-ios-shot-step-2 .install-ios-tap { left: 41%; top: 36%; }
.install-ios-shot-step-3 .install-ios-tap { right: 6%; top: 42%; }
.install-ios-shot-step-4 .install-ios-tap { left: 8%; top: 58%; }
.install-ios-shot-step-5 .install-ios-tap { right: 5%; top: 8%; }
.install-action-preview { display: grid; grid-template-columns: minmax(115px,1fr) 30px minmax(140px,1fr) 30px minmax(100px,1fr); align-items: center; gap: 10px; margin-bottom: 16px; padding: 23px clamp(18px,4vw,44px); border: 1px solid #292526; border-radius: 22px; color: #fff; background: radial-gradient(circle at 80% 10%,rgba(244,172,63,.2),transparent 30%),linear-gradient(135deg,#151113,#282123); }
.install-action-preview > div { min-height: 90px; display: grid; place-items: center; align-content: center; gap: 8px; padding: 11px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.055); }
.install-action-preview > i { color: #f6b64f; font-size: 1.35rem; font-style: normal; text-align: center; }
.install-action-symbol { position: relative; min-width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: #1f1712; background: #ffc55f; font-size: 1.35rem; font-weight: 850; }
.install-action-symbol b { position: absolute; top: 1px; font-size: 1rem; }
.install-action-preview small { color: #ddd6d8; font-size: .64rem; font-weight: 750; text-align: center; }
.install-action-result img { width: 46px; height: 46px; border-radius: 13px; box-shadow: 0 9px 22px rgba(0,0,0,.25); }
.install-step-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; margin: 0; padding: 0; list-style: none; }
.install-step-list li { min-width: 0; min-height: 155px; display: grid; grid-template-columns: 42px minmax(0,1fr); align-items: start; gap: 12px; padding: 19px 17px; border: 1px solid #e7ddd7; border-radius: 18px; background: #fff; }
.install-step-list li > span { color: #ad6600; font-size: .65rem; font-weight: 900; letter-spacing: .06em; }
.install-step-list strong { display: block; margin: 0 0 7px; font-size: .8rem; line-height: 1.3; }
.install-step-list p { margin: 0; color: #756b6e; font-size: .68rem; line-height: 1.52; }
.install-platform-tip { margin: 12px 0 0; padding: 12px 14px; border-left: 3px solid #f3ad41; border-radius: 4px 12px 12px 4px; color: #70666a; background: #f7f3f0; font-size: .65rem; line-height: 1.5; }
.install-card-native-button { width: min(100%,440px); min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 9px; margin: 0 0 15px; padding: 9px 16px; border: 1px solid #138064; border-radius: 14px; color: #fff; background: linear-gradient(145deg,#25a781,#147c62); box-shadow: 0 10px 22px rgba(20,124,98,.18); font-size: .73rem; font-weight: 850; }
.install-card-native-button:hover { background: linear-gradient(145deg,#2bb48c,#116e57); transform: translateY(-1px); }
.install-card-native-button .icon { width: 17px; height: 17px; }

.install-final-card { position: relative; display: grid; grid-template-columns: 84px minmax(0,1fr) auto; align-items: center; gap: 23px; overflow: hidden; margin-top: 18px; padding: 25px 28px; border: 1px solid #e0a143; border-radius: 23px; background: radial-gradient(circle at 12% 0,rgba(255,255,255,.65),transparent 20%),linear-gradient(125deg,#fff2d4,#ffc55f); box-shadow: 0 16px 38px rgba(139,80,5,.1); }
.install-final-card::after { content: ""; position: absolute; right: 18%; top: -115px; width: 230px; height: 230px; border: 1px solid rgba(120,68,0,.1); border-radius: 50%; }
.install-final-logo { width: 84px; height: 84px; display: grid; place-items: center; }.install-final-logo img { width: 84px; height: 84px; object-fit: contain; }
.install-final-card .eyebrow { margin-bottom: 5px; color: #955500; }.install-final-card h2 { margin: 0 0 5px; font-size: clamp(1.45rem,2.4vw,2.1rem); letter-spacing: -.035em; }.install-final-card p:last-child { max-width: 670px; margin: 0; color: #715736; font-size: .75rem; line-height: 1.5; }
.install-final-card > a { position: relative; z-index: 2; min-height: 53px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; overflow: hidden; padding: 10px 18px; border: 1px solid #201a1c; border-radius: 14px; color: #fff; background: #181416; font-size: .72rem; font-weight: 850; box-shadow: 0 10px 24px rgba(35,24,20,.17); }.install-final-card > a:hover { color: #fff; background: #2b2427; transform: translateY(-1px); }.install-final-card > a .icon { width: 17px; height: 17px; }

.pwa-install-prompt[hidden] { display: none !important; }
.pwa-install-prompt { position: fixed; z-index: 1400; left: 50%; bottom: calc(82px + env(safe-area-inset-bottom)); width: min(calc(100% - 20px),520px); display: grid; grid-template-columns: 54px minmax(0,1fr); align-items: center; gap: 11px 13px; overflow: hidden; padding: 16px; border: 1px solid #d8c8b7; border-radius: 20px; color: var(--ink); background: linear-gradient(145deg,rgba(255,255,255,.98),rgba(255,248,235,.98)); box-shadow: 0 24px 70px rgba(31,23,22,.24),inset 0 1px 0 rgba(255,255,255,.96); backdrop-filter: blur(16px); transform: translateX(-50%); animation: pwa-prompt-in .34s cubic-bezier(.2,.8,.2,1) both; }
.pwa-install-prompt::after { content: ""; position: absolute; z-index: -1; right: -78px; top: -105px; width: 220px; height: 220px; border: 1px solid rgba(245,172,63,.25); border-radius: 50%; box-shadow: inset 0 0 0 26px rgba(245,172,63,.04); }
.pwa-prompt-close { position: absolute; z-index: 3; right: 10px; top: 10px; width: 30px; height: 30px; display: grid; place-items: center; padding: 0; border: 1px solid #e0d7d2; border-radius: 50%; color: #776d6f; background: rgba(255,255,255,.86); font-size: 1.05rem; line-height: 1; }
.pwa-prompt-logo { width: 54px; height: 54px; display: grid; place-items: center; }
.pwa-prompt-logo img { width: 54px; height: 54px; object-fit: contain; }
.pwa-prompt-copy { min-width: 0; padding-right: 27px; }
.pwa-prompt-copy .eyebrow { margin-bottom: 4px; color: #9b5900; font-size: .56rem; }
.pwa-prompt-copy h2 { margin: 0 0 4px; font-size: 1.02rem; line-height: 1.12; letter-spacing: -.025em; }
.pwa-prompt-copy > p:last-child { margin: 0; color: #73696b; font-size: .69rem; line-height: 1.4; }
.pwa-prompt-actions { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.pwa-prompt-primary,.pwa-prompt-later { min-height: 45px; padding: 8px 14px; border-radius: 12px; font-size: .69rem; font-weight: 850; }
.pwa-prompt-primary { border: 1px solid #db9222; color: #241600; background: linear-gradient(145deg,#ffca65,#f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.52); }
.pwa-prompt-primary:hover { background: linear-gradient(145deg,#ffd173,#efa230); }
.pwa-prompt-later { border: 1px solid #ddd4cf; color: #665d5f; background: rgba(255,255,255,.84); }
@keyframes pwa-prompt-in { from { opacity: 0; transform: translate(-50%,16px) scale(.98); } to { opacity: 1; transform: translate(-50%,0) scale(1); } }

@media (max-width: 900px) {
  .install-hero { grid-template-columns: minmax(0,1fr) 300px; gap: 28px; }
  .install-phone { width: 240px; height: 492px; }
  .install-showcase::before { width: 300px; height: 300px; }
  .install-section-heading { grid-template-columns: 1fr; gap: 10px; }
  .install-step-list { grid-template-columns: 1fr; }
  .install-step-list li { min-height: 0; }
  .install-final-card { grid-template-columns: 70px minmax(0,1fr); }
  .install-final-logo,.install-final-logo img { width: 70px; height: 70px; }
  .install-final-card > a { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .install-page { padding-top: 12px; }
  .install-page > .breadcrumbs { display: none; }
  .install-hero { min-height: 0; grid-template-columns: minmax(0,1fr); gap: 18px; margin-bottom: 12px; padding: 28px 19px 24px; border-radius: 23px; }
  .install-hero h1 { max-width: 100%; font-size: clamp(2.25rem,11vw,3.25rem); line-height: .98; }
  .install-hero-lead { font-size: .88rem; line-height: 1.58; }
  .install-hero-points { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
  .install-hero-points span { min-width: 0; padding-inline: 9px; font-size: .62rem; }
  .install-hero-points span:last-child { grid-column: 1 / -1; }
  .install-hero-actions { display: grid; grid-template-columns: 1fr; margin-top: 21px; }
  .install-native-button,.install-instruction-link { width: 100%; min-height: 54px; }
  .install-device-note { font-size: .65rem; line-height: 1.4; }
  .install-showcase { min-height: 445px; }
  .install-showcase::before { width: 270px; height: 270px; }
  .install-phone { width: 205px; height: 422px; border-radius: 33px; }
  .install-phone-screen { padding: 0; border-radius: 25px; }
  .install-phone-screen > p { margin: 22px 0 13px; }
  .install-app-grid { gap: 17px 9px; }
  .ghost-app { width: 34px; height: 34px; border-radius: 10px; }
  .install-app-icon img { width: 40px; height: 40px; border-radius: 11px; }
  .install-phone-dock { left: 10px; right: 10px; bottom: 11px; padding: 8px 5px; }
  .install-phone-dock i { width: 27px; height: 27px; }
  .install-instructions { padding: 25px 13px 17px; border-radius: 21px; }
  .install-section-heading { margin-bottom: 21px; }
  .install-section-heading h2 { font-size: clamp(2rem,9vw,2.65rem); }
  .install-section-heading > p { font-size: .8rem; }
  .install-platform-tabs { gap: 5px; padding: 5px; border-radius: 17px; }
  .install-platform-tabs button { min-height: 61px; grid-template-columns: 36px minmax(0,1fr); gap: 8px; padding: 7px 9px; border-radius: 12px; }
  .install-platform-tabs button > i { display: none; }
  .install-tab-icon { width: 36px; height: 36px; border-radius: 11px; }
  .install-platform-tabs small { font-size: .48rem; }
  .install-platform-tabs strong { font-size: .8rem; }
  .install-ios-guide { grid-template-columns: 1fr; gap: 13px; }
  .install-video-card { width: min(100%,300px); margin-inline: auto; padding: 10px; border-radius: 21px; }
  .install-video-shell { border-radius: 16px; }
  .install-video-play { bottom: 18px; min-width: 166px; }
  .install-ios-sequence-head { margin-top: 7px; }
  .install-ios-shot-list { gap: 10px; }
  .install-ios-shot-step { grid-template-columns: 1fr; gap: 8px; padding: 8px; border-radius: 17px; }
  .install-ios-step-copy { align-content: start; padding: 10px 8px 5px; }
  .install-ios-shot { height: auto; min-height: 0; aspect-ratio: 16 / 9; border-radius: 13px; }
  .install-ios-step-copy strong { font-size: .75rem; }
  .install-ios-step-copy p { font-size: .63rem; }
  .install-action-preview { grid-template-columns: 1fr 20px 1fr 20px 1fr; gap: 4px; padding: 15px 8px; border-radius: 17px; }
  .install-action-preview > div { min-width: 0; min-height: 80px; gap: 6px; padding: 8px 4px; border-radius: 13px; }
  .install-action-preview > i { font-size: .95rem; }
  .install-action-symbol { min-width: 36px; height: 36px; border-radius: 11px; font-size: 1.1rem; }
  .install-action-preview small { font-size: .53rem; line-height: 1.25; }
  .install-action-result img { width: 39px; height: 39px; border-radius: 11px; }
  .install-step-list { gap: 8px; }
  .install-step-list li { grid-template-columns: 34px minmax(0,1fr); gap: 8px; padding: 14px 12px; border-radius: 15px; }
  .install-step-list strong { font-size: .76rem; }
  .install-step-list p { font-size: .64rem; }
  .install-final-card { grid-template-columns: 55px minmax(0,1fr); gap: 13px; margin-top: 12px; padding: 20px 16px; border-radius: 19px; }
  .install-final-logo,.install-final-logo img { width: 55px; height: 55px; }
  .install-final-card h2 { font-size: 1.35rem; }
  .install-final-card p:last-child { font-size: .68rem; }
  .install-final-card > a { width: 100%; min-height: 51px; }
  .pwa-install-prompt { bottom: calc(80px + env(safe-area-inset-bottom)); }
}

@media (max-width: 390px) {
  .pwa-install-prompt { grid-template-columns: 46px minmax(0,1fr); padding: 14px 12px 12px; }
  .pwa-prompt-logo,.pwa-prompt-logo img { width: 46px; height: 46px; }
  .pwa-prompt-copy h2 { font-size: .92rem; }
  .pwa-prompt-actions { grid-template-columns: 1fr; }
  .pwa-prompt-later { min-height: 38px; }
}

@media (prefers-reduced-motion: reduce) {
  .pwa-install-prompt,.install-platform-card { animation: none !important; }
}

/* Focused iPhone walkthrough */
.install-ios-experience { position: relative; overflow: hidden; padding: clamp(16px,2.2vw,25px); border: 1px solid #ded4cf; border-radius: 25px; background: radial-gradient(circle at 100% 0,rgba(255,183,65,.12),transparent 25%),linear-gradient(145deg,#fff,#faf7f3); box-shadow: 0 20px 50px rgba(43,31,32,.08); }
.install-ios-experience::before { content: ""; position: absolute; right: -120px; top: -175px; width: 330px; height: 330px; border: 1px solid rgba(230,157,45,.18); border-radius: 50%; box-shadow: inset 0 0 0 38px rgba(255,185,75,.025); pointer-events: none; }
.install-ios-experience-head { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 25px; margin-bottom: 19px; padding: 2px 2px 18px; border-bottom: 1px solid #e6ddd8; }
.install-ios-experience-head > div { max-width: 760px; }
.install-ios-kicker { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 8px; color: #945300; font-size: .6rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.install-ios-kicker i { width: 8px; height: 8px; border-radius: 50%; background: #1ca37f; box-shadow: 0 0 0 5px rgba(28,163,127,.11); }
.install-ios-experience-head h3 { max-width: 790px; margin: 0 0 7px; font-size: clamp(1.4rem,2.3vw,2.05rem); line-height: 1.03; letter-spacing: -.045em; }
.install-ios-experience-head p { max-width: 700px; margin: 0; color: #71676a; font-size: .7rem; line-height: 1.5; }
.install-ios-video-toggle { min-width: 214px; min-height: 62px; display: grid; grid-template-columns: 39px minmax(0,1fr) 25px; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid #292326; border-radius: 17px; color: #fff; background: linear-gradient(145deg,#171315,#292225); box-shadow: 0 12px 27px rgba(35,26,28,.16); text-align: left; transition: transform .2s ease,box-shadow .2s ease,background .2s ease; }
.install-ios-video-toggle:hover { color: #fff; background: linear-gradient(145deg,#211a1d,#342a2d); box-shadow: 0 15px 30px rgba(35,26,28,.2); transform: translateY(-2px); }
.install-ios-video-toggle > span:first-child { width: 39px; height: 39px; display: grid; place-items: center; padding-left: 2px; border-radius: 12px; color: #251600; background: #ffc157; font-size: .72rem; }
.install-ios-video-toggle small,.install-ios-video-toggle strong { display: block; }.install-ios-video-toggle small { margin-bottom: 1px; color: #bdb5b8; font-size: .51rem; font-weight: 750; text-transform: uppercase; letter-spacing: .06em; }.install-ios-video-toggle strong { color: #fff; font-size: .66rem; line-height: 1.25; }
.install-ios-video-toggle > i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; color: #271900; background: #ffc157; font-size: .78rem; font-style: normal; transition: transform .25s ease; }
.install-ios-video-toggle[aria-expanded="true"] > i { transform: rotate(180deg); }

.install-ios-walkthrough { position: relative; display: grid; grid-template-columns: minmax(285px,340px) minmax(0,1fr); align-items: stretch; gap: 15px; }
.install-ios-step-nav { position: relative; display: grid; align-content: start; gap: 8px; margin: 0; padding: 0; list-style: none; }
.install-ios-step-nav::before { content: ""; position: absolute; z-index: 0; left: 28px; top: 41px; bottom: 41px; width: 1px; background: linear-gradient(#f0a12d,#ded5d1 25%,#ded5d1 75%,#1da17d); }
.install-ios-step-nav li { position: relative; z-index: 1; min-width: 0; }
.install-ios-step-nav button { width: 100%; min-height: 74px; display: grid; grid-template-columns: 40px minmax(0,1fr) 28px; align-items: center; gap: 11px; padding: 10px 11px; border: 1px solid #e1d8d3; border-radius: 16px; color: #2d282a; background: rgba(255,255,255,.82); box-shadow: 0 5px 14px rgba(45,34,35,.035); text-align: left; transition: border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease; }
.install-ios-step-nav button:hover { border-color: #d9c7b5; background: #fff; transform: translateX(3px); }
.install-ios-step-nav button > span:first-child { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #e2d8d3; border-radius: 12px; color: #8a7d81; background: #f7f3f0; font-size: .57rem; font-weight: 950; letter-spacing: .05em; }
.install-ios-step-nav button > span:nth-child(2) { min-width: 0; }
.install-ios-step-nav strong,.install-ios-step-nav small { display: block; }.install-ios-step-nav strong { margin-bottom: 3px; font-size: .68rem; line-height: 1.25; }.install-ios-step-nav small { overflow: hidden; color: #887d80; font-size: .55rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.install-ios-step-nav button > i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 50%; color: #9d8f92; background: #f1ece9; font-size: .72rem; font-style: normal; }
.install-ios-step-nav button.is-active { border-color: #211c1e; color: #fff; background: radial-gradient(circle at 100% 0,rgba(255,191,84,.16),transparent 35%),linear-gradient(145deg,#171315,#292124); box-shadow: 0 14px 30px rgba(34,25,27,.18); transform: translateX(5px); }
.install-ios-step-nav button.is-active > span:first-child { border-color: #ffc35c; color: #241600; background: #ffc35c; box-shadow: 0 0 0 5px rgba(255,190,81,.1); }
.install-ios-step-nav button.is-active small { color: #c9c1c4; }
.install-ios-step-nav button.is-active > i { color: #271800; background: #ffc35c; }

.install-ios-stage { position: relative; min-width: 0; overflow: hidden; padding: 13px; border: 1px solid #292326; border-radius: 22px; color: #fff; background: radial-gradient(circle at 100% 0,rgba(52,177,218,.17),transparent 31%),radial-gradient(circle at 0 100%,rgba(255,170,44,.11),transparent 34%),linear-gradient(145deg,#141113,#262022); box-shadow: 0 18px 38px rgba(35,26,28,.19); }
.install-ios-stage-top { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 3px 10px; color: #c8c0c3; font-size: .55rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.install-ios-stage-top > span:first-child { color: #ffc45d; }
.install-ios-stage-top > span:last-child { display: inline-flex; align-items: center; gap: 7px; }.install-ios-stage-top i { width: 7px; height: 7px; border-radius: 50%; background: #27cfa3; box-shadow: 0 0 0 4px rgba(39,207,163,.11); }
.install-ios-stage-screen { min-width: 0; }
.install-ios-stage-slide { margin: 0; animation: install-ios-slide-in .3s cubic-bezier(.2,.8,.2,1) both; }
.install-ios-stage-slide[hidden] { display: none !important; }
@keyframes install-ios-slide-in { from { opacity: 0; transform: translateX(14px) scale(.992); } to { opacity: 1; transform: translateX(0) scale(1); } }
.install-ios-stage .install-ios-shot { position: relative; height: auto; min-height: 0; overflow: hidden; aspect-ratio: 16 / 10; border: 1px solid rgba(255,255,255,.22); border-radius: 18px; background: #f2efed; box-shadow: 0 18px 34px rgba(0,0,0,.22); }
.install-ios-stage .install-ios-shot::before { content: ""; position: absolute; z-index: 3; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,255,255,.45); pointer-events: none; }
.install-ios-stage-slide figcaption { min-height: 92px; display: grid; grid-template-columns: 39px minmax(0,1fr); align-content: center; gap: 11px; padding: 14px 5px 4px; }
.install-ios-stage-slide figcaption > span { width: 39px; height: 39px; display: grid; place-items: center; border: 1px solid rgba(255,196,93,.45); border-radius: 12px; color: #ffc45d; background: rgba(255,196,93,.08); font-size: .57rem; font-weight: 950; }
.install-ios-stage-slide figcaption strong { display: block; margin: 0 0 4px; color: #fff; font-size: .78rem; line-height: 1.25; }
.install-ios-stage-slide figcaption p { max-width: 620px; margin: 0; color: #bdb5b8; font-size: .61rem; line-height: 1.4; }
.install-ios-stage .install-ios-tap { width: 42px; height: 42px; border-width: 3px; background: rgba(255,184,62,.17); box-shadow: 0 0 0 7px rgba(255,178,48,.2),0 8px 20px rgba(82,44,0,.28); animation: install-ios-tap-pulse 1.8s ease-in-out infinite; }
.install-ios-stage .install-ios-tap::before { content: ""; position: absolute; left: 50%; top: 50%; width: 9px; height: 9px; border-radius: 50%; background: #f39e1e; transform: translate(-50%,-50%); }
.install-ios-stage .install-ios-tap::after { content: attr(data-label); position: absolute; left: auto; right: 48px; top: 50%; width: max-content; height: auto; padding: 7px 10px; border: 1px solid #e38f13; border-radius: 999px; color: #2b1900; background: #ffc45d; box-shadow: 0 7px 18px rgba(75,42,0,.23); font-size: .56rem; font-weight: 900; line-height: 1; transform: translateY(-50%); }
.install-ios-stage .install-ios-shot-step-4 .install-ios-tap::after { left: 48px; right: auto; }
@keyframes install-ios-tap-pulse { 0%,100% { box-shadow: 0 0 0 6px rgba(255,178,48,.15),0 8px 20px rgba(82,44,0,.25); } 50% { box-shadow: 0 0 0 12px rgba(255,178,48,.04),0 8px 20px rgba(82,44,0,.3); } }
.install-ios-stage-controls { min-height: 49px; display: grid; grid-template-columns: auto minmax(90px,1fr) auto; align-items: end; gap: 11px; padding-top: 9px; border-top: 1px solid rgba(255,255,255,.09); }
.install-ios-stage-controls button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 7px 13px; border-radius: 11px; font-size: .59rem; font-weight: 850; }
.install-ios-stage-controls button:first-child { border: 1px solid rgba(255,255,255,.14); color: #fff; background: rgba(255,255,255,.065); }
.install-ios-stage-controls button:first-child:disabled { opacity: .34; cursor: default; }
.install-ios-next { position: relative; overflow: hidden; border: 1px solid #e69720; color: #241600; background: linear-gradient(145deg,#ffca66,#f5ac3f); box-shadow: inset 0 1px 0 rgba(255,255,255,.5); }
.install-ios-progress-dots { display: flex; align-items: center; justify-content: center; gap: 6px; padding-bottom: 12px; }
.install-ios-progress-dots i { width: 6px; height: 6px; border-radius: 999px; background: rgba(255,255,255,.2); transition: width .25s ease,background .25s ease; }
.install-ios-progress-dots i.is-active { width: 22px; background: #ffc45d; }

.install-ios-video-drawer[hidden] { display: none !important; }
.install-ios-video-drawer { display: grid; grid-template-columns: minmax(260px,310px) minmax(0,1fr); align-items: center; gap: clamp(22px,4vw,55px); margin-top: 17px; padding: clamp(15px,2.4vw,25px); border: 1px solid #30292c; border-radius: 22px; color: #fff; background: radial-gradient(circle at 100% 0,rgba(255,185,67,.12),transparent 30%),linear-gradient(145deg,#151214,#282124); animation: install-panel-in .28s ease both; }
.install-ios-video-drawer .install-video-card { width: min(100%,290px); justify-self: center; box-shadow: none; }
.install-ios-video-drawer h4 { max-width: 600px; margin: 0 0 10px; color: #fff; font-size: clamp(1.35rem,2.5vw,2.15rem); line-height: 1.05; letter-spacing: -.04em; }
.install-ios-video-drawer > div > p:last-child { max-width: 580px; margin: 0; color: #bcb4b7; font-size: .72rem; line-height: 1.55; }

@media (max-width: 980px) {
  .install-ios-walkthrough { grid-template-columns: minmax(255px,300px) minmax(0,1fr); }
  .install-ios-step-nav button { min-height: 70px; }
}

@media (max-width: 760px) {
  .install-ios-experience { padding: 14px 10px 12px; border-radius: 20px; }
  .install-ios-experience-head { grid-template-columns: 1fr; align-items: stretch; gap: 13px; margin-bottom: 13px; padding: 2px 3px 14px; }
  .install-ios-experience-head h3 { font-size: clamp(1.45rem,7vw,1.85rem); }
  .install-ios-experience-head p { font-size: .67rem; }
  .install-ios-video-toggle { width: 100%; min-width: 0; min-height: 57px; }
  .install-ios-walkthrough { grid-template-columns: 1fr; gap: 9px; }
  .install-ios-step-nav { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 5px; }
  .install-ios-step-nav::before { left: 8%; right: 8%; top: 50%; bottom: auto; width: auto; height: 1px; background: #ded5d1; }
  .install-ios-step-nav button { min-height: 49px; display: grid; grid-template-columns: 1fr; place-items: center; gap: 0; padding: 5px; border-radius: 12px; text-align: center; }
  .install-ios-step-nav button:hover,.install-ios-step-nav button.is-active { transform: none; }
  .install-ios-step-nav button > span:first-child { width: 33px; height: 33px; border-radius: 10px; }
  .install-ios-step-nav button > span:nth-child(2),.install-ios-step-nav button > i { display: none; }
  .install-ios-stage { padding: 9px; border-radius: 18px; }
  .install-ios-stage-top { min-height: 32px; padding-bottom: 8px; }
  .install-ios-stage .install-ios-shot { aspect-ratio: 4 / 3; border-radius: 14px; }
  .install-ios-stage-slide figcaption { min-height: 105px; grid-template-columns: 35px minmax(0,1fr); gap: 9px; padding: 12px 3px 5px; }
  .install-ios-stage-slide figcaption > span { width: 35px; height: 35px; border-radius: 10px; }
  .install-ios-stage-slide figcaption strong { font-size: .74rem; }
  .install-ios-stage-slide figcaption p { font-size: .6rem; }
  .install-ios-stage .install-ios-tap { width: 34px; height: 34px; border-width: 2px; }
  .install-ios-stage .install-ios-tap::after { right: 39px; padding: 6px 8px; font-size: .5rem; }
  .install-ios-stage .install-ios-shot-step-4 .install-ios-tap::after { left: 39px; }
  .install-ios-stage-controls { grid-template-columns: 78px minmax(30px,1fr) minmax(128px,auto); gap: 6px; }
  .install-ios-stage-controls button { min-height: 39px; padding: 6px 9px; }
  .install-ios-progress-dots { gap: 4px; }
  .install-ios-progress-dots i.is-active { width: 15px; }
  .install-ios-video-drawer { grid-template-columns: 1fr; gap: 18px; padding: 14px; }
  .install-ios-video-drawer .install-video-card { width: min(100%,280px); }
}

@media (max-width: 390px) {
  .install-ios-stage-controls { grid-template-columns: 68px minmax(0,1fr) 122px; }
  .install-ios-stage-controls button { font-size: .54rem; }
  .install-ios-progress-dots { display: none; }
  .install-ios-stage-controls { grid-template-columns: 75px 1fr; }
  .install-ios-next { justify-self: stretch; }
}

@media (prefers-reduced-motion: reduce) {
  .install-ios-stage-slide,.install-ios-stage .install-ios-tap { animation: none !important; }
}

/* Original, unedited iPhone screenshots */
.install-ios-experience-old { display: none !important; }
.install-ios-originals-old { display: none !important; }
.install-ios-originals { padding: clamp(15px,2.2vw,24px); border: 1px solid #ded5d0; border-radius: 24px; background: #fbfaf8; box-shadow: 0 17px 42px rgba(43,32,33,.07); }
.install-ios-originals-head { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 17px; padding: 2px 2px 17px; border-bottom: 1px solid #e5dcd7; }
.install-ios-originals-head > div { max-width: 760px; }
.install-ios-originals-head > div > span { display: block; margin-bottom: 7px; color: #985600; font-size: .61rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.install-ios-originals-head h3 { margin: 0 0 6px; font-size: clamp(1.45rem,2.3vw,2.05rem); line-height: 1.05; letter-spacing: -.04em; }
.install-ios-originals-head p { margin: 0; color: #766c6f; font-size: .69rem; line-height: 1.5; }
.install-ios-swipe-hint { display: none; align-items: center; gap: 7px; color: #8a7c80; font-size: .59rem; font-weight: 800; white-space: nowrap; }
.install-ios-swipe-hint i { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; color: #261800; background: #ffc45c; font-style: normal; }
.install-ios-original-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.install-ios-original-grid > li { grid-column: span 2; min-width: 0; overflow: hidden; border: 1px solid #ddd4cf; border-radius: 19px; background: #fff; box-shadow: 0 9px 25px rgba(43,33,34,.06); }
.install-ios-original-grid > li:nth-child(4) { grid-column: 2 / span 2; }
.install-ios-original-grid > li:nth-child(5) { grid-column: 4 / span 2; }
.install-ios-original-grid > li > header { min-height: 78px; display: grid; grid-template-columns: 40px minmax(0,1fr); align-items: center; gap: 10px; padding: 10px 12px; border-bottom: 1px solid #e6ddda; background: #fff; }
.install-ios-original-grid > li > header > span { width: 40px; height: 40px; display: grid; place-items: center; border: 1px solid #e3a13c; border-radius: 12px; color: #774300; background: #fff0d3; font-size: .59rem; font-weight: 950; letter-spacing: .05em; }
.install-ios-original-grid strong,.install-ios-original-grid small { display: block; }.install-ios-original-grid strong { margin-bottom: 3px; font-size: .72rem; line-height: 1.25; }.install-ios-original-grid small { color: #817579; font-size: .57rem; line-height: 1.35; }
.install-ios-original-grid figure { display: flex; justify-content: center; overflow: hidden; margin: 0; padding: 10px; background: #f2f0ee; }
.install-ios-original-grid figure img { width: auto; max-width: 100%; height: 610px; display: block; object-fit: contain; border: 1px solid #d7d0cd; border-radius: 13px; background: #fff; box-shadow: 0 8px 20px rgba(33,26,27,.09); }
.install-ios-video-details { width: min(100%,520px); margin: 18px auto 0; }
.install-ios-video-details > summary { min-height: 61px; display: grid; grid-template-columns: 39px minmax(0,1fr) 27px; align-items: center; gap: 10px; padding: 9px 11px; border: 1px solid #2a2427; border-radius: 17px; color: #fff; background: linear-gradient(145deg,#171315,#2a2326); box-shadow: 0 11px 25px rgba(35,26,28,.14); cursor: pointer; list-style: none; }
.install-ios-video-details > summary::-webkit-details-marker { display: none; }
.install-ios-video-details > summary > span:first-child { width: 39px; height: 39px; display: grid; place-items: center; padding-left: 2px; border-radius: 12px; color: #261700; background: #ffc35a; font-size: .7rem; }
.install-ios-video-details > summary strong,.install-ios-video-details > summary small { display: block; }.install-ios-video-details > summary strong { color: #fff; font-size: .68rem; }.install-ios-video-details > summary small { margin-top: 1px; color: #bdb5b8; font-size: .54rem; }
.install-ios-video-details > summary > i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 50%; color: #291900; background: #ffc35a; font-size: .75rem; font-style: normal; transition: transform .2s ease; }
.install-ios-video-details[open] > summary > i { transform: rotate(180deg); }
.install-ios-video-details > .install-video-card { width: min(100%,300px); margin: 13px auto 0; }

@media (max-width: 980px) {
  .install-ios-original-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .install-ios-original-grid > li,.install-ios-original-grid > li:nth-child(4) { grid-column: auto; }
  .install-ios-original-grid > li:nth-child(5) { width: calc(50% - 7px); grid-column: 1 / -1; justify-self: center; }
  .install-ios-original-grid figure img { height: 570px; }
}

@media (max-width: 760px) {
  .install-ios-originals { padding: 14px 10px 13px; border-radius: 20px; }
  .install-ios-originals-head { align-items: start; margin-bottom: 13px; padding: 2px 3px 13px; }
  .install-ios-originals-head h3 { font-size: clamp(1.35rem,7vw,1.75rem); }
  .install-ios-originals-head p { font-size: .65rem; }
  .install-ios-swipe-hint { display: inline-flex; align-self: end; }
  .install-ios-original-grid { display: flex; gap: 10px; overflow-x: auto; margin-inline: -10px; padding: 0 22px 11px; scroll-padding-inline: 22px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .install-ios-original-grid::-webkit-scrollbar { display: none; }
  .install-ios-original-grid > li,.install-ios-original-grid > li:nth-child(4),.install-ios-original-grid > li:nth-child(5) { width: min(82vw,330px); flex: 0 0 min(82vw,330px); grid-column: auto; scroll-snap-align: center; }
  .install-ios-original-grid > li > header { min-height: 72px; }
  .install-ios-original-grid figure img { width: 100%; height: auto; max-height: none; }
  .install-ios-video-details { margin-top: 7px; }
}

@media (max-width: 430px) {
  .install-ios-originals-head { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .install-ios-swipe-hint { justify-self: end; }
}

@media (max-width: 760px) {
  .install-ios-button-strip { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 124px; overflow-x: auto; padding: 8px; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .install-ios-button-strip::-webkit-scrollbar { display: none; }
  .install-ios-button-shot { scroll-snap-align: start; }
  .install-ios-button-shot > div { height: 92px; }
  .install-ios-button-shot figcaption strong { font-size: .51rem; white-space: normal; }
}

/* Premium install guide refinement */
.install-page { position: relative; isolation: isolate; }
.install-page::before { content: ""; position: absolute; z-index: -2; left: 50%; top: 390px; width: min(1180px,92vw); height: 760px; border-radius: 50%; background: radial-gradient(ellipse,rgba(246,178,72,.1),transparent 68%); filter: blur(34px); transform: translateX(-50%); pointer-events: none; }
.install-hero { min-height: 610px; grid-template-columns: minmax(0,1fr) minmax(330px,410px); border-color: rgba(255,255,255,.12); background: radial-gradient(circle at 82% 20%,rgba(45,184,226,.22),transparent 27%),radial-gradient(circle at 74% 96%,rgba(247,173,61,.21),transparent 29%),linear-gradient(132deg,#0d0b0d 0%,#191315 54%,#0b171b 100%); box-shadow: 0 34px 90px rgba(26,18,21,.24),inset 0 1px 0 rgba(255,255,255,.06); }
.install-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .18; background-image: linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size: 74px 74px; mask-image: linear-gradient(90deg,transparent 28%,#000 78%,transparent); pointer-events: none; }
.install-hero::after { content: ""; position: absolute; z-index: -1; left: 54%; top: 9%; bottom: 9%; width: 1px; background: linear-gradient(transparent,rgba(255,255,255,.13),transparent); pointer-events: none; }
.install-hero-glow { border-color: rgba(100,214,255,.17); box-shadow: inset 0 0 0 58px rgba(60,192,239,.025),0 0 0 90px rgba(255,192,79,.018),0 0 95px rgba(48,186,232,.1); }
.install-hero-copy { position: relative; z-index: 2; }
.install-hero .eyebrow { width: fit-content; min-height: 31px; display: inline-flex; align-items: center; margin-bottom: 20px; padding: 6px 11px; border: 1px solid rgba(255,199,97,.24); border-radius: 999px; background: rgba(255,190,78,.08); }
.install-hero h1 { max-width: 790px; margin-bottom: 24px; text-shadow: 0 8px 34px rgba(0,0,0,.24); overflow-wrap: normal; }
.install-hero h1 span { position: relative; display: inline; background: linear-gradient(95deg,#ffd47c,#ffb43e); -webkit-background-clip: text; background-clip: text; color: transparent; }
.install-hero-lead { color: #d1cbcd; }
.install-hero-points span { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.065); box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }
.install-instruction-link,.install-native-button { min-height: 59px; padding-inline: 23px; border-radius: 17px; box-shadow: inset 0 1px 0 rgba(255,255,255,.68),0 16px 34px rgba(203,120,6,.27); }
.install-instruction-link > span { transition: transform .24s ease,background-color .24s ease; }
.install-instruction-link:hover > span { background: rgba(255,255,255,.58); transform: translateY(3px); }
.install-showcase { min-height: 610px; }
.install-showcase::before { width: 390px; height: 390px; border-color: rgba(84,208,248,.27); box-shadow: inset 0 0 0 42px rgba(85,202,244,.026),0 0 95px rgba(37,165,215,.11); }
.install-showcase::after { content: ""; position: absolute; left: 50%; bottom: 32px; width: 270px; height: 54px; border-radius: 50%; background: rgba(0,0,0,.58); filter: blur(23px); transform: translateX(-50%); }
.install-phone { box-shadow: 0 48px 90px rgba(0,0,0,.56),0 0 0 1px rgba(255,255,255,.08),inset 0 0 0 1px rgba(255,255,255,.13); transform: none; }

.install-instructions { position: relative; overflow: hidden; padding: clamp(34px,4.8vw,60px); border-color: #ded4ce; background: radial-gradient(circle at 96% 0,rgba(245,172,63,.12),transparent 25%),linear-gradient(145deg,#fff,#fcfaf7 67%,#fff8eb); box-shadow: 0 25px 70px rgba(44,33,31,.095),inset 0 1px 0 #fff; }
.install-instructions::before { content: ""; position: absolute; right: -150px; top: -195px; width: 390px; height: 390px; border: 1px solid rgba(230,157,47,.16); border-radius: 50%; box-shadow: inset 0 0 0 48px rgba(245,172,63,.025); pointer-events: none; }
.install-section-heading { position: relative; z-index: 1; padding-bottom: 24px; border-bottom: 1px solid #e8dfda; }
.install-section-heading h2 { max-width: 760px; }
.install-section-heading > p { max-width: 400px; }
.install-platform-tabs { position: relative; z-index: 2; width: min(100%,720px); margin: -3px 0 24px; padding: 6px; border-color: #ddd3cd; background: rgba(242,237,233,.88); box-shadow: inset 0 1px 2px rgba(48,37,35,.035); backdrop-filter: blur(10px); }
.install-platform-tabs button { min-height: 72px; border-radius: 15px; }
.install-platform-tabs button.is-active { border-color: #e2b56d; background: linear-gradient(145deg,#fff,#fffaf1); box-shadow: inset 0 -3px 0 #f4aa3b; }
.install-platform-tabs button.is-active .install-tab-icon { transform: scale(1.06); }
.install-tab-icon { transition: transform .22s ease; }

.install-ios-guide { position: relative; grid-template-columns: minmax(280px,320px) minmax(0,1fr); gap: clamp(26px,4vw,52px); padding: clamp(16px,2vw,24px); border: 1px solid #e5dcd7; border-radius: 27px; background: linear-gradient(145deg,rgba(255,255,255,.92),rgba(247,243,239,.9)); box-shadow: 0 16px 38px rgba(43,32,33,.07),inset 0 1px 0 #fff; }
.install-video-card { position: sticky; top: 88px; width: 100%; padding: 11px; border-color: rgba(255,255,255,.12); background: radial-gradient(circle at 100% 0,rgba(48,189,233,.18),transparent 31%),radial-gradient(circle at 0 100%,rgba(247,174,62,.13),transparent 30%),linear-gradient(145deg,#100d0f,#252023); box-shadow: 0 26px 58px rgba(29,22,24,.21),inset 0 1px 0 rgba(255,255,255,.055); }
.install-video-cover::before { content: ""; position: absolute; z-index: 3; top: -10%; bottom: -10%; left: -48%; width: 28%; background: linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent); transform: skewX(-16deg); animation: install-video-sheen 5.8s ease-in-out infinite; pointer-events: none; }
@keyframes install-video-sheen { 0%,58% { left: -48%; opacity: 0; } 68% { opacity: 1; } 86%,100% { left: 122%; opacity: 0; } }
.install-video-play { border-color: rgba(255,255,255,.34); background: rgba(15,12,14,.86); box-shadow: 0 18px 42px rgba(0,0,0,.38); }
.install-video-play > i { box-shadow: 0 0 0 0 rgba(255,190,76,.35); animation: install-play-pulse 2.6s ease-out infinite; }
@keyframes install-play-pulse { 0%,42% { box-shadow: 0 0 0 0 rgba(255,190,76,.35); } 75%,100% { box-shadow: 0 0 0 12px rgba(255,190,76,0); } }

.install-ios-steps { align-self: start; padding: 3px 0; }
.install-android-guide .install-ios-steps { align-self: center; }
.install-guide-intro { margin: 0 0 17px; padding: 2px 2px 17px; border-bottom: 1px solid #e5dcd7; }
.install-guide-platform { min-height: 29px; display: inline-flex; align-items: center; margin-bottom: 10px; padding: 5px 10px; border: 1px solid; border-radius: 999px; font-size: .58rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.install-guide-platform-ios { border-color: #d7cdd0; color: #302a2c; background: #f2eef0; }
.install-guide-platform-android { border-color: #b9dfd1; color: #087458; background: #e8f8f2; }
.install-guide-intro h3 { margin: 0 0 7px; font-size: clamp(1.35rem,2.15vw,1.85rem); line-height: 1.04; letter-spacing: -.04em; }
.install-guide-intro p { max-width: 650px; margin: 0; color: #756b6e; font-size: .72rem; line-height: 1.55; }
.install-ios-steps .install-step-list { position: relative; gap: 10px; }
.install-ios-steps .install-step-list::before { content: ""; position: absolute; z-index: 0; left: 34px; top: 35px; bottom: 35px; width: 1px; background: linear-gradient(#ebb052,#e5d8cf 88%,#51b695); }
.install-ios-steps .install-step-list li { position: relative; z-index: 1; min-height: 88px; grid-template-columns: 48px minmax(0,1fr); align-items: center; gap: 14px; padding: 14px 16px 14px 12px; border-color: #e6ddd8; border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 8px 22px rgba(48,35,34,.045); transition: border-color .22s ease,box-shadow .22s ease,transform .22s ease; }
.install-ios-steps .install-step-list li:hover { border-color: #e1ba7f; box-shadow: 0 13px 28px rgba(53,37,33,.085); transform: translateX(4px); }
.install-ios-steps .install-step-list li > span { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid #e6a23a; border-radius: 14px; color: #754100; background: linear-gradient(145deg,#fff5e3,#ffd98f); box-shadow: 0 6px 15px rgba(192,112,6,.12); }
.install-ios-steps .install-step-list li:last-child { border-color: #cce4dc; background: linear-gradient(145deg,#fff,#f3fbf8); }
.install-ios-steps .install-step-list li:last-child > span { border-color: #55ad92; color: #fff; background: linear-gradient(145deg,#23a17c,#12755c); box-shadow: 0 7px 17px rgba(21,133,102,.18); }
.install-step-list strong { margin-bottom: 5px; font-size: .84rem; }
.install-step-list p { font-size: .69rem; line-height: 1.48; }
.install-platform-tip { margin-top: 14px; padding: 13px 15px; border: 1px solid #e6ddd8; border-left: 3px solid #f3ad41; border-radius: 13px; background: rgba(248,245,242,.9); }

.install-final-card { margin-top: 22px; padding: 29px 31px; border-color: #2e292b; color: #fff; background: radial-gradient(circle at 5% 0,rgba(255,190,76,.18),transparent 23%),radial-gradient(circle at 86% 100%,rgba(43,181,222,.16),transparent 27%),linear-gradient(135deg,#121012,#241d20); box-shadow: 0 24px 58px rgba(32,23,25,.2),inset 0 1px 0 rgba(255,255,255,.07); }
.install-final-card::after { border-color: rgba(255,195,90,.12); box-shadow: inset 0 0 0 32px rgba(255,195,90,.025); }
.install-final-logo { border: 1px solid rgba(255,255,255,.15); border-radius: 24px; background: rgba(255,255,255,.96); box-shadow: 0 13px 32px rgba(0,0,0,.22); }
.install-final-card .eyebrow { color: #ffc55e; }
.install-final-card h2 { color: #fff; }
.install-final-card p:last-child { color: #c6bec1; }
.install-final-card > a { border-color: #e69a28; color: #241600; background: linear-gradient(145deg,#ffd073,#f2a638); box-shadow: inset 0 1px 0 rgba(255,255,255,.62),0 13px 28px rgba(218,130,12,.22); }
.install-final-card > a:hover { color: #241600; background: linear-gradient(145deg,#ffda8b,#f3a536); }

@media (max-width: 900px) {
  .install-hero::after { display: none; }
  .install-ios-guide { grid-template-columns: minmax(270px,300px) minmax(0,1fr); gap: 22px; }
  .install-guide-intro h3 { font-size: 1.4rem; }
}

@media (max-width: 760px) {
  .install-hero { min-height: 0; grid-template-columns: minmax(0,1fr); gap: 18px; padding: 27px 18px 22px; }
  .install-hero::before { background-size: 54px 54px; mask-image: linear-gradient(180deg,transparent 24%,#000 75%,transparent); }
  .install-hero .eyebrow { margin-bottom: 16px; font-size: .57rem; }
  .install-hero h1 { font-size: clamp(2.25rem,10.8vw,3.05rem); line-height: .98; letter-spacing: -.055em; }
  .install-showcase { min-height: 390px; margin-top: -3px; }
  .install-showcase::before { width: 245px; height: 245px; }
  .install-showcase::after { bottom: 17px; width: 205px; }
  .install-phone { width: 185px; height: 381px; border-radius: 31px; }
  .install-phone-screen { border-radius: 23px; }
  .install-instructions { padding: 24px 10px 14px; }
  .install-section-heading { margin-inline: 5px; padding-bottom: 18px; }
  .install-section-heading h2 { font-size: clamp(1.9rem,8.6vw,2.45rem); }
  .install-platform-tabs { margin-bottom: 13px; }
  .install-ios-guide { grid-template-columns: 1fr; gap: 17px; padding: 11px; border-radius: 22px; }
  .install-video-card { position: relative; top: auto; width: min(100%,292px); }
  .install-android-guide .install-ios-steps { align-self: start; }
  .install-guide-intro { margin-bottom: 12px; padding: 3px 3px 14px; }
  .install-guide-intro h3 { font-size: 1.35rem; }
  .install-guide-intro p { font-size: .68rem; }
  .install-ios-steps .install-step-list::before { left: 28px; }
  .install-ios-steps .install-step-list li { min-height: 82px; grid-template-columns: 38px minmax(0,1fr); gap: 10px; padding: 12px 11px 12px 9px; border-radius: 16px; }
  .install-ios-steps .install-step-list li:hover { transform: none; }
  .install-ios-steps .install-step-list li > span { width: 38px; height: 38px; border-radius: 12px; }
  .install-step-list strong { font-size: .78rem; }
  .install-step-list p { font-size: .65rem; }
  .install-final-card { padding: 21px 16px; }
  .install-final-logo { border-radius: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .install-phone,.install-video-cover::before,.install-video-play > i { animation: none !important; }
}
