/* css/kohde2.css (11.10.2026) — kohdesivun esikatselu (?uusi=1, body.fm-k2). Arvio 24/40:
   C:\Claude\.impeccable\critique\2026-10-11T09-33-56Z__finland-map-fi-kohdesivu.md. Komponentit fm-ui.css / DESIGN.md.
   Kartta, sivupalkin affiliate-napit ja Lomarenkaan paikka ennallaan (Jere). */

/* Hero: "Reittiohjeet" päätoiminnoksi (metsä, 44 px). Koralli on varattu ostotoiminnoille. */
.fm-k2 .fm-k2-navbtn { background: var(--color-forest, #1d3a2a) !important; color: #fff !important; min-height: 44px; padding: 0 20px !important; font-size: .95rem !important; font-weight: 600; gap: 8px !important; }
.fm-k2 .fm-k2-navbtn svg { width: 18px !important; height: 18px !important; }
.fm-k2 .fm-k2-navbtn:active { transform: scale(.97); }

/* Kuvituskuva: pieni lappu kuvan kulmassa, tekijä + lisenssi kuvatekstinä alhaalla (ei ensimmäinen luettava teksti) */
.fm-k2 .kohde-hero .fm-kuvitus-krediitti.fm-k2-kuv { position: absolute !important; top: 12px; left: 12px; right: auto; bottom: auto; display: inline-flex; margin: 0; padding: 4px 10px; max-width: none; border-radius: 999px; background: rgba(15, 23, 42, .74); color: #fff; font-size: .78rem; z-index: 2; }
.fm-k2 .kohde-hero .fm-k2-kuvcap { position: absolute; right: 10px; bottom: 8px; z-index: 2; max-width: 60%; font-size: .72rem; line-height: 1.3; color: rgba(255, 255, 255, .82); text-align: right; text-shadow: 0 1px 2px rgba(0, 0, 0, .6); }
.fm-k2 .kohde-hero .fm-k2-kuvcap a { color: inherit; text-decoration: none; }
.fm-k2 .kohde-hero { position: relative; }

/* Mobiilin pikarivi: kaikki toissijaisia, sama muoto (ei tummaa "+ Reitille" -pääpainiketta) */
.fm-k2 .fm-kohde-quick .fm-add-route-btn { min-height: 44px; background: var(--color-bg, #fff) !important; color: var(--color-text, #1f2937) !important; border: 1px solid var(--color-border-strong, #d1d5db) !important; border-radius: 999px; }
.fm-k2 .fm-kohde-quick .fm-quick-route.added { background: var(--color-forest, #1d3a2a) !important; color: #fff !important; border-color: var(--color-forest, #1d3a2a) !important; }

/* Sivupalkin Jaa-nappi ei ole ostotoiminto: oranssi reunus pois (yksi oranssi -sääntö) */
.fm-k2 .kohde-sidebar .btn-primary-cta[data-share-trigger] { background: var(--color-bg, #fff) !important; color: var(--color-text, #1f2937) !important; border: 1px solid var(--color-border-strong, #d1d5db) !important; border-radius: 999px; min-height: 44px; }
.fm-k2 .kohde-sidebar .fm-add-route-btn, .fm-k2 .kohde-sidebar .fm-save-btn { min-height: 44px; border-radius: 999px; }
/* Mobiilissa samat napit ovat jo pikarivissä: ei toistoa Kohteen tiedot -laatikossa */
@media (max-width: 992px) {
  .fm-k2 .kohde-sidebar .btn-primary-cta[data-share-trigger],
  .fm-k2 .kohde-sidebar .fm-add-route-btn:not(.fm-sidebar-review-btn),
  .fm-k2 .kohde-sidebar .fm-omat-actions,
  .fm-k2 .kohde-sidebar .fm-sidebar-review-btn { display: none !important; }
}

/* Datarivi kuvauksen alla: pysäköinti, pysäkki, keskusta */
.fm-k2-facts { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 14px 0 0; padding: 0; font-size: .95rem; color: var(--color-text, #1f2937); }
.fm-k2-facts li { display: inline-flex; align-items: center; gap: 7px; }
.fm-k2-facts svg { width: 18px; height: 18px; flex: 0 0 auto; color: var(--color-aurora-text, #4e7b62); fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.fm-k2-facts strong { font-weight: 650; }

/* Saapuminen: karttasovellusnapit 44 px, pysäköinti + liikenne H3:na saman otsikon alla */
.fm-k2 #saapuminen ~ div a[data-fm-ev="directions_click"] { min-height: 44px; }
.fm-k2 .fm-k2-arrive h3, .fm-k2 .fm-k2-h3 { display: flex; align-items: center; gap: 8px; margin: 24px 0 8px; font-size: 1.1rem; font-weight: 700; }
.fm-k2 .fm-k2-h3 svg { width: 20px; height: 20px; flex: 0 0 auto; color: var(--color-aurora-text, #4e7b62); fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* GYG: varattu korkeus latauksen ajaksi (ei tyhjää hyppyä) */
.fm-k2 .fm-gyg-widget [data-gyg-href] { min-height: 340px; border-radius: 16px; background: var(--color-bg-alt, #fafaf7); }
.fm-k2 .fm-gyg-widget [data-gyg-href]:has(iframe) { min-height: 0; background: none; }

/* Lähistöllä mobiilissa: kortit -> rivit (64 px kuva, nimi, kunta · km). Kaikki linkit ja H3:t säilyvät. */
@media (max-width: 640px) {
  .fm-k2 #lahistolla .featured-grid { display: block !important; }
  .fm-k2 #lahistolla .featured-card { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 12px; padding: 8px 0; border: 0; border-bottom: 1px solid var(--color-border, #e5e7eb); border-radius: 0; box-shadow: none; background: none; }
  .fm-k2 #lahistolla .featured-card:hover { transform: none; box-shadow: none; }
  .fm-k2 #lahistolla .featured-card-image { width: 64px; height: 64px; aspect-ratio: auto; border-radius: 10px; overflow: hidden; }
  .fm-k2 #lahistolla .featured-card-image .featured-card-tag { display: none; }
  /* kuvituskuvaa ei näytetä pikkukuvana (merkintä ei mahtuisi 64 px:iin): rivi ilman kuvaa */
  .fm-k2 #lahistolla .featured-card:has(.fm-kuvitus-merkki) { grid-template-columns: minmax(0, 1fr); min-height: 56px; }
  .fm-k2 #lahistolla .featured-card:has(.fm-kuvitus-merkki) .featured-card-image { display: none; }
  .fm-k2 #lahistolla .featured-card-body { padding: 0; }
  .fm-k2 #lahistolla .featured-card-body h3 { font-size: 1rem !important; font-weight: 650; }
}

/* Luontoon.fi: tasainen sävy, ei liukuväriä */
.fm-k2 .fm-luontoon-box { background: #f3f8ee; border-color: #cfe3bf; box-shadow: none; }

/* 12 px lattia ja 44 px kosketuskohteet */
.fm-k2 .fm-kohde-source, .fm-k2 .fm-lipas-credit, .fm-k2 .fm-ld-src { font-size: .75rem; }
.fm-k2 [class*="fm-wx"] small, .fm-k2 [class*="weather"] small { font-size: .75rem; }
.fm-k2 .fm-onpage a { min-height: 44px; }
.fm-k2 .fm-copy-coords, .fm-k2 [data-copy-coords] { min-height: 44px; min-width: 44px; }

/* GYG-varalista (kun widget ei lataudu: seurannanesto / mainosesto): rivit DESIGN.md:n mukaan */
.fm-k2-gygfb ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--color-border, #e5e7eb); }
.fm-k2-gygfb li a { display: grid; gap: 2px; min-height: 56px; padding: 10px 0; border-bottom: 1px solid var(--color-border, #e5e7eb); color: inherit; text-decoration: none; }
.fm-k2-gygfb-n { font-weight: 650; line-height: 1.3; color: var(--color-text, #1f2937); }
.fm-k2-gygfb-m { font-size: .84rem; color: var(--color-text-dim, #6b7280); font-variant-numeric: tabular-nums; }
@media (hover: hover) { .fm-k2-gygfb li a:hover .fm-k2-gygfb-n { color: var(--color-forest, #1d3a2a); text-decoration: underline; text-underline-offset: 3px; } }
.fm-k2-gygfb-src { margin: 6px 0 0; font-size: .75rem; color: var(--color-text-dim, #6b7280); }
