/* Stili propri del sito Maximus (il resto viene dal design system). Pochi, e solo per ciò che non appartiene a un componente riusabile. */
.soon { min-height: 100svh; display: grid; place-content: center; justify-items: center; gap: var(--s-4); padding: var(--s-7) var(--gutter); text-align: center; }
.soon__logo { width: min(420px, 78vw); height: auto; }
.soon .gk-lead { margin-inline: auto; }
.gk-logo__text { font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }

/* articoli e pagine legali */
.mx-article { max-width: 920px; }
.mx-article__cover { position: relative; aspect-ratio: 16 / 9; border-radius: var(--r-lg); overflow: hidden; margin-bottom: var(--s-6); background: var(--surface-3) var(--lqip, none) center / cover no-repeat; }
.mx-article__cover img { width: 100%; height: 100%; object-fit: cover; }
.mx-article__body { max-width: 72ch; font-size: var(--fs-md); line-height: 1.7; }
.mx-article__body h2 { margin-top: 1.8em; font-size: var(--fs-xl); }
.mx-article__body h3 { margin-top: 1.4em; }
.mx-article__body ul, .mx-article__body ol { padding-left: 1.3em; }
.mx-article__body li + li { margin-top: .4em; }
.mx-article__body img { max-width: 100%; height: auto; border-radius: var(--r-md); }
.mx-article__body a { text-decoration: underline; text-underline-offset: 3px; }
.mx-article__cta { margin-block: var(--s-8); }
.mx-legal { max-width: 74ch; }
.mx-legal section + section { margin-top: var(--s-6); }
.mx-legal ul { padding-left: 1.2em; }
.mx-legal li + li { margin-top: .4em; }
.mx-legal__lines { line-height: 1.7; }
.mx-excerpt { display: -webkit-box; -webkit-line-clamp: 4; line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }

/* l'interruttore lista ⇄ mappa e «Filtri» stanno nel dock in basso (gk-dock, partials/viewbar.html) su OGNI larghezza: telefono e computer, in elenco e in mappa, sempre allo stesso punto */

/* l'elenco e la mappa sono UNA pagina (static/js/view.js): body[data-mx-view] dice quale si vede. Con la mappa niente piè di pagina, né spazio sopra (la testata galleggia sulla mappa) né sotto (è alta quanto lo schermo) */
body[data-mx-view="map"] { padding-bottom: 0; }
body[data-mx-view="map"] .gk-main { padding-top: 0; }
body[data-mx-view="map"] .gk-footer { display: none; }
body[data-mx-view="map"] .mx-listhead { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }        /* (il titolo e le briciole: sulla mappa li leggono solo gli screen reader) */
body[data-mx-view="map"] .gk-pagelogo__nav { display: none; }                      /* (e senza il marchio in alto a sinistra: richiesta del proprietario, 30/10/2026; nell'elenco c'è) */

/* ---- mappe (static/js/map.js) */
.mx-mapview { position: relative; height: 100svh; min-height: 560px; overflow: hidden; background: #f8f4f0; }        /* (the colour of the light map: the maps are light in every theme) */
.mx-mapview .mx-mapview__canvas { position: absolute; inset: 0; width: 100%; height: 100%; }       /* (the library's .maplibregl-map says position: relative: this wins by being more specific) */
.mx-mapview__bar { position: absolute; z-index: 4; top: calc(var(--sat) + 68px); left: var(--gutter); right: calc(max(var(--gutter), var(--sar))); display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); pointer-events: none; }        /* (phone: the second row, under the pill of the header) */
.mx-mapview__bar > * { pointer-events: auto; }
.mx-mapview__count { display: inline-flex; align-items: center; min-height: 44px; padding: 0 var(--s-4); border-radius: var(--r-pill); font-size: var(--fs-sm); font-weight: 650; }
.mx-mapview__count.is-quiet { position: absolute; width: 1px; height: 1px; min-height: 0; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; box-shadow: none; }        /* «N immobili in quest'area»: non si vede (lo leggono gli screen reader); con nessun immobile in vista il messaggio si vede */
/* la mappa è chiara in ogni tema: ciò che sta sopra di lei (il messaggio «nessun immobile in quest'area») è PIENO (il vetro del tema scuro era testo crema su mappa chiara) */
.mx-mapview__count { background-color: var(--glass-solid); box-shadow: inset 0 0 0 1px var(--glass-line), 0 10px 24px -12px var(--glass-shadow); }
.mx-mapview__panel { display: none; }
.mx-mapview__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-3); }
.mx-mapview__empty { margin: var(--s-4); color: var(--muted); }
/* telefono: le card dell'immobile toccato stanno in una fila che scorre a scatto sopra il dock; la X sta sopra la fila, a sinistra */
.mx-mapview__card { position: absolute; z-index: 4; left: 0; right: 0; bottom: var(--dock-clear); }
.mx-mapview__rail { display: flex; gap: var(--s-3); margin: 0; padding: var(--s-2) var(--gutter) var(--s-3); list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: var(--gutter); overscroll-behavior-x: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.mx-mapview__rail::-webkit-scrollbar { display: none; }
.mx-mapview__rail > li { flex: 0 0 min(88%, 420px); scroll-snap-align: start; scroll-snap-stop: always; min-width: 0; display: grid; }          /* (una scheda alla volta: uno scatto forte del dito non ne salta tre) */
.mx-mapview__rail > li:only-child { flex-basis: min(100%, 520px); margin-inline: auto; }
.mx-mapview__close.gk-glass { position: absolute; top: -34px; left: var(--gutter); color: var(--text); background: var(--glass-solid); box-shadow: inset 0 0 0 1px var(--glass-line), 0 8px 20px -10px var(--glass-shadow); }                        /* (a sinistra, allineata alla fila di card) */
.mx-mapview__fallback { position: absolute; z-index: 6; left: var(--gutter); right: var(--gutter); top: 38%; max-width: 420px; margin-inline: auto; padding: var(--s-5); border-radius: var(--r-lg); display: grid; gap: var(--s-4); justify-items: start; }
/* la card dell'immobile (telefono: nella fila sopra il dock; computer: nell'elenco a sinistra): UN collegamento copre foto e parole, il cuore sta accanto al collegamento, mai dentro.
   Sulla foto due cose piccole (quante foto in basso a sinistra, il cuore in alto a destra; lo stato «In trattativa», di rado, è una fascia in basso e le foto passano in alto); accanto, in ordine: prezzo, titolo, paese, locali e superficie.
   Niente è tagliato con «…» tranne il titolo (due righe): il paese e i dati vanno a capo, la scheda ha il testo intero. */
.mx-mcard { --photo: 120px; position: relative; border-radius: var(--r-lg); background: var(--surface); color: var(--text); box-shadow: inset 0 0 0 1px var(--line), 0 16px 34px -18px rgb(0 0 0 / .55); }
.mx-mcard__link { display: flex; gap: var(--s-3); align-items: center; height: 100%; padding: var(--s-2); border-radius: inherit; color: inherit; text-decoration: none; -webkit-tap-highlight-color: transparent; }
.mx-mcard__media { position: relative; flex: none; width: var(--photo); aspect-ratio: 1; border-radius: var(--r-md); overflow: hidden; background: var(--surface-3); }
.mx-mcard__media img { width: 100%; height: 100%; object-fit: cover; }
.mx-mcard__tag { position: absolute; right: 6px; bottom: 6px; left: 6px; padding: 5px 8px; border-radius: 12px; font: 650 .6875rem/1.15 var(--font); text-align: center; text-wrap: balance; overflow-wrap: break-word; color: #f6dfa8; background: rgb(12 10 8 / .74); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .14); }        /* (lo stato, di rado: fascia scura in basso con la scritta oro chiaro (uguale in ogni tema: sta su una foto), a capo per parole; senza sfocatura, una fila ne ha fino a dodici) */
.mx-mcard__photos { position: absolute; left: 6px; bottom: 6px; display: inline-flex; align-items: center; gap: 4px; padding: 4px 8px 4px 7px; border-radius: var(--r-pill); font: 650 .6875rem/1 var(--font); color: #fff; background: rgb(12 10 8 / .66); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .14); }
.mx-mcard__photos .gk-i { width: 12px; height: 12px; }
.mx-mcard__tag ~ .mx-mcard__photos { top: 6px; bottom: auto; }                                                                                                          /* (con la fascia in basso, quante foto passa in alto a sinistra) */
.mx-mcard__fav { position: absolute; z-index: 2; top: calc(var(--s-2) + 6px); left: calc(var(--s-2) + var(--photo) - 38px); display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; color: #fff; background: rgb(12 10 8 / .66); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .16); -webkit-tap-highlight-color: transparent; }
.mx-mcard__fav::after { content: ""; position: absolute; inset: -6px; }                                                                                                  /* (si tocca su 44 px: il cerchio visibile è più piccolo) */
.mx-mcard__fav .gk-i { width: 18px; height: 18px; }
.mx-mcard__fav[aria-pressed="true"] .gk-i { fill: #ff6b61; stroke: #ff6b61; }                                                                                /* (sta su un cerchio scuro sopra una foto: il corallo del tema scuro in ogni tema; il rosso del chiaro ci si perderebbe) */
.mx-mcard__body { min-width: 0; flex: 1; display: grid; gap: 4px; align-content: center; }
.mx-mcard__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 var(--s-1); font: 760 1.375rem/1.1 var(--font-display); letter-spacing: -.02em; }
.mx-mcard__price small { font: 650 .8125rem/1 var(--font); letter-spacing: 0; color: var(--muted); }
.mx-mcard__title { font-weight: 640; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.mx-mcard__loc { display: flex; align-items: flex-start; gap: 4px; min-width: 0; color: var(--muted); font-size: var(--fs-sm); font-weight: 560; line-height: 1.3; }
.mx-mcard__loc > span { min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }        /* (il paese a capo se serve, mai tagliato su una riga: «San Bartolomeo al Mare», «Вилла Бордигера») */
.mx-mcard__loc .gk-i { width: 1.1em; height: 1.3em; flex: none; color: var(--accent-ink); }
.mx-mcard__specs { display: flex; flex-wrap: wrap; gap: 2px var(--s-3); margin-top: 2px; color: var(--muted); font-size: var(--fs-sm); font-weight: 600; }
.mx-mcard__specs > span { display: inline-flex; align-items: center; gap: 4px; }
.mx-mcard__specs .gk-i { width: 1.1em; height: 1.1em; flex: none; }
@media (max-width: 379px) { .mx-mapview__rail > li { flex-basis: 92%; } .mx-mcard { --photo: 100px; } .mx-mcard__link { gap: var(--s-2); } .mx-mcard__price { font-size: 1.1875rem; } .mx-mcard__specs { gap: 2px var(--s-2); font-size: var(--fs-xs); } .mx-mcard__specs > span { gap: 3px; } .mx-mcard__loc { font-size: var(--fs-xs); } }
.mx-mcard.is-swipeable, .mx-mcard.is-swipeable a { touch-action: pan-y; }                                                                                  /* (la card grande dell'elenco sulla mappa: un dito che scorre di lato sulla foto la cambia; in verticale scorre l'elenco) */
.mx-mcard.is-on { box-shadow: inset 0 0 0 2px var(--accent), 0 16px 34px -18px rgb(0 0 0 / .55); }
@media (hover: hover) { .mx-mcard:hover { box-shadow: inset 0 0 0 2px var(--accent), 0 20px 38px -18px rgb(0 0 0 / .6); } }
.mx-pointmap { position: relative; height: 300px; background: #f8f4f0; }
/* computer: l'elenco di ciò che si vede sulla mappa sta in un CONTENITORE sopra la mappa, a sinistra (come prima della 0.22.0: nella 0.22.0 era una colonna a tutta altezza con un taglio netto
   contro la mappa e al proprietario non piaceva, 31/10/2026). La mappa resta a tutto schermo sotto di lui. Larghezza: un terzo dello schermo ALMENO e MAI più della metà (sempre il proprietario:
   «almeno 1/3, ma in ogni caso non più del 50 %»): di solito il 40 %, con un minimo di 400 px sugli schermi stretti, tenuta fra 1/3 e 1/2 da clamp(). Altezza FISSA (sempre il proprietario,
   31/10/2026: «non variabile come ora»): dalla testata fino al dock, qualunque sia il numero delle card (con poche resta vuoto in fondo, con tante le card scorrono dentro). Nell'elenco stanno
   TUTTI gli immobili della mappa, anche quelli i cui punti sono sotto il contenitore (static/js/map.js, inView). */
@media (min-width: 900px) {
  .mx-mapview { --panel-w: clamp(33.333vw, max(40vw, 400px), 50vw); --panel-top: calc(var(--header-h) + var(--sat) + 28px); }
  .mx-mapview__bar { top: var(--panel-top); left: calc(var(--gutter) + var(--panel-w) + var(--s-4)); right: var(--s-4); }
  .mx-mapview__panel { display: block; position: absolute; z-index: 3; top: var(--panel-top); left: var(--gutter); width: var(--panel-w); height: calc(100% - var(--panel-top) - var(--dock-clear)); overflow-y: auto;
    overscroll-behavior: contain; scrollbar-width: thin; padding: var(--s-4); border-radius: var(--r-xl); scroll-padding-block: var(--s-3); }
  .mx-mapview__panel[hidden] { display: none; }
  .mx-mapview__list { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: var(--s-4); }
  .mx-mapview__list > li { display: grid; }
  .mx-mapview__empty { margin: var(--s-2); font-size: var(--fs-lg); }
  /* nell'elenco largo la card è in piedi, come quelle dell'elenco: la foto grande sopra, le parole sotto (sul telefono resta la card bassa e larga della fila) */
  .mx-mapview__panel .mx-mcard { --photo: 100%; display: grid; }
  .mx-mapview__panel .mx-mcard__link { flex-direction: column; align-items: stretch; gap: var(--s-3); padding: var(--s-2) var(--s-2) var(--s-4); }
  .mx-mapview__panel .mx-mcard__media { width: 100%; aspect-ratio: 3 / 2; max-height: 320px; }
  .mx-mapview__panel .mx-mcard__fav { left: auto; right: calc(var(--s-2) + 10px); }
  /* le frecce delle foto: due cerchi sopra la foto (non possono stare dentro il collegamento, che copre la card): un velo grande quanto la foto, che non prende i tocchi, con le frecce dentro */
  .mx-mcard__arrows { position: absolute; z-index: 2; top: var(--s-2); left: var(--s-2); right: var(--s-2); aspect-ratio: 3 / 2; max-height: 320px; pointer-events: none; }
  .mx-mcard__arrows > .gk-pcard__arrow { pointer-events: auto; }
  .mx-mcard:hover .gk-pcard__arrow, html:not(.gk-pointer) .mx-mcard:focus-within .gk-pcard__arrow { opacity: 1; }
  .mx-mapview__panel .mx-mcard__body { flex: none; padding-inline: var(--s-2); gap: 6px; align-content: start; }
  .mx-mapview__panel .mx-mcard__price { font-size: 1.5rem; }
  .mx-mapview__panel .mx-mcard__title { font-size: var(--fs-lg); }
  .mx-mapview__card { display: none !important; }
  .mx-pointmap { height: 380px; }
}
/* the maps are light in every theme, so are the library's own controls: the zoom buttons and the credits (the (i) button) of the SMALL maps (a property's place, the agency); the big map has neither (and no credits line: the owner asked for none on it; they are written in the page footer and the privacy notice) */
.maplibregl-ctrl-group { border-radius: var(--r-md) !important; overflow: hidden; background: rgb(255 255 255 / .94) !important; box-shadow: 0 0 0 1px rgb(29 26 20 / .12), 0 6px 18px -8px rgb(29 26 20 / .35) !important; }
.maplibregl-ctrl-group button { width: 40px !important; height: 40px !important; }
.maplibregl-ctrl-group button + button { border-top: 1px solid rgb(29 26 20 / .12) !important; }
.maplibregl-ctrl-attrib { background: rgb(255 255 255 / .88) !important; color: #5a5446 !important; font-size: 11px; border-radius: var(--r-sm) 0 0 0; }
.maplibregl-ctrl-attrib a { color: #5a5446 !important; }
.maplibregl-canvas:focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }

/* ---- la pagina dell'agenzia (templates/agency.html): il «Chi siamo» scritto dal titolare e i dati dell'agenzia ---- */
.mx-about { max-width: 72ch; margin-bottom: var(--s-8); }
.mx-about h2 { margin-bottom: var(--s-4); }
.mx-about p { font-size: var(--fs-lg); line-height: 1.7; }
.mx-about p + p { margin-top: var(--s-4); }
.mx-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: var(--s-4) var(--s-6); margin: 0; }
.mx-facts > div { display: grid; gap: 2px; align-content: start; }
.mx-facts dt { color: var(--muted); font-size: var(--fs-xs); font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.mx-facts dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.mx-facts a { color: inherit; }

/* «Sanremo e dintorni»: la fascia della home (l'unica cosa che dice dove lavora l'agenzia: nessun altro comune) e il blocco della pagina «L'agenzia» (1/11/2026) */
.mx-area { display: grid; gap: var(--s-5); align-items: center; padding: clamp(var(--s-5), 4vw, var(--s-7)); border-radius: var(--r-xl); background: var(--surface); box-shadow: inset 0 0 0 1px var(--line); }
.mx-area__icon { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 22px; color: var(--accent-ink); background: radial-gradient(120% 120% at 20% 10%, var(--accent-soft, rgb(214 180 106 / .22)), transparent 70%), var(--surface-2, var(--surface)); box-shadow: inset 0 0 0 1px var(--line); }
.mx-area__icon .gk-i { width: 30px; height: 30px; }
.mx-area__text { display: grid; gap: var(--s-2); min-width: 0; }
.mx-area__text .gk-lead { max-width: 56ch; margin: 0; }
@media (min-width: 760px) { .mx-area { grid-template-columns: auto minmax(0, 1fr) auto; gap: var(--s-6); } .mx-area__icon { width: 84px; height: 84px; border-radius: 28px; } .mx-area__icon .gk-i { width: 38px; height: 38px; } }
.mx-area__name { display: flex; align-items: center; gap: var(--s-2); margin: var(--s-3) 0 var(--s-2); font: 760 var(--fs-xl)/1.2 var(--font-display); letter-spacing: -.02em; }
.mx-area__name .gk-i { flex: none; width: 24px; height: 24px; color: var(--accent-ink); }

/* la posizione di un immobile (scheda): un riquadro senza margini interni, la mappa a tutta larghezza e sotto la riga del luogo (1/11/2026) */
.mx-place { position: relative; border-radius: var(--r-xl); overflow: hidden; background: var(--surface); box-shadow: inset 0 0 0 1px var(--line); }
.mx-place .mx-pointmap { margin: 0; }
.mx-place__info { display: grid; gap: var(--s-2) var(--s-4); align-items: center; padding: var(--s-4) var(--s-5) var(--s-5); }
.mx-place__where { display: flex; align-items: flex-start; gap: var(--s-2); margin: 0; font-weight: 650; line-height: 1.35; }
.mx-place__where .gk-i { flex: none; width: 20px; height: 20px; margin-top: 1px; color: var(--accent-ink); }
.mx-place__note { margin: 0; color: var(--muted); font-size: var(--fs-sm); }
.mx-place__open { justify-self: start; margin-top: var(--s-2); }
@media (min-width: 640px) { .mx-place__info { grid-template-columns: minmax(0, 1fr) auto; padding-block: var(--s-4); } .mx-place__where, .mx-place__note { grid-column: 1; } .mx-place__open { grid-column: 2; grid-row: 1 / span 2; margin-top: 0; justify-self: end; } }
.mx-pointmap__chip { position: absolute; z-index: 2; left: var(--s-3); top: var(--s-3); display: inline-flex; align-items: center; gap: 6px; padding: 8px 13px 8px 10px; border-radius: var(--r-pill); font: 650 var(--fs-xs)/1 var(--font); color: #fff; background: rgb(12 10 8 / .66);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: inset 0 0 0 1px rgb(255 255 255 / .16); pointer-events: none; }
.mx-pointmap__chip svg { width: 15px; height: 15px; color: var(--accent); }

/* le pagine legali: la tabella di ciò che il sito salva (informativa sui cookie). Sul telefono ogni riga è una scheda e l'etichetta della colonna sta davanti al valore. */
.mx-legal__table { margin-block: var(--s-3); overflow-x: auto; border-radius: var(--r-lg); box-shadow: inset 0 0 0 1px var(--line); background: var(--surface); }
.mx-legal__table:focus-visible { outline-offset: 2px; }
.mx-legal__table table { width: 100%; border-collapse: collapse; font-size: var(--fs-sm); line-height: 1.45; }
.mx-legal__table th, .mx-legal__table td { padding: var(--s-3) var(--s-4); text-align: left; vertical-align: top; border-top: 1px solid var(--line); }
.mx-legal__table thead th { border-top: 0; font-size: var(--fs-xs); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
.mx-legal__table tbody th { min-width: 9rem; font-weight: 650; }          /* (il nome di un cookie, come «gk_seg_view», non va spezzato a metà parola) */
.mx-legal__table code { font: 600 .92em/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; overflow-wrap: break-word; }
@media (max-width: 719.98px) {
  .mx-legal__table table, .mx-legal__table tbody, .mx-legal__table tr, .mx-legal__table th, .mx-legal__table td { display: block; }
  .mx-legal__table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .mx-legal__table tr { padding: var(--s-3) 0; border-top: 1px solid var(--line); }
  .mx-legal__table tr:first-child { border-top: 0; }
  .mx-legal__table th, .mx-legal__table td { padding: var(--s-1) var(--s-4); border: 0; }
  .mx-legal__table td::before { content: attr(data-label); display: block; font-size: var(--fs-xs); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
}

/* ---- le pagine dei comuni (/zone/<comune>) e la valutazione gratuita (server/areas.py) ---- */
.mx-twin { display: grid; gap: var(--s-5); }
.mx-twin > .gk-card { display: grid; gap: var(--s-3); align-content: start; justify-items: start; }
.mx-twin > .gk-card .gk-lead, .mx-twin > .gk-card p { margin: 0; }
@media (min-width: 900px) { .mx-twin { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1100px) { .gk-tiles.mx-tiles--3 { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1100px) { .gk-tiles.mx-tiles--2 { grid-template-columns: repeat(2, 1fr); } }
.mx-tile--static:active { transform: none; }
@media (hover: hover) { .mx-tile--static:hover { transform: none; box-shadow: none; } }
.mx-formwrap { max-width: 760px; }
.mx-checks { display: grid; gap: var(--s-3); margin-top: var(--s-3); }
.mx-checks li { display: flex; align-items: flex-start; gap: var(--s-3); }
.mx-checks .gk-i { flex: none; width: 22px; height: 22px; margin-top: 1px; color: var(--accent-ink); }
.mx-area__zones { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-top: var(--s-3); }
.gk-zones .gk-chip .gk-i, .mx-area__zones .gk-chip .gk-i { width: 18px; height: 18px; color: var(--accent-ink); }
.mx-place__area { margin: 0; font-weight: 650; }
.mx-place__area a { color: var(--accent-ink); text-decoration: underline; text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
