/* Autokorjaamo Generator v2.0 — scoped for ASAP Theme.
   No global h1/h2/body rules: the site keeps its own ASAP typography/headings. */
body .akg-v2{
  --akg-navy:#002a5c;--akg-navy2:#0f2b46;--akg-cyan:#00a3c4;--akg-blue:#0075e3;
  --akg-line:#dce7ef;--akg-muted:#62737d;--akg-bg:#f5f7fa;--akg-shadow:0 4px 12px rgba(0,0,0,.07);
  max-width:1100px;margin:0 auto;color:#26343d;line-height:1.65;
}
body .akg-v2 *{box-sizing:border-box}
body .akg-v2 a{transition:all .18s ease}
body .akg-v2 .akg-intro{font-size:1.03rem;line-height:1.75;margin:0 0 20px}
body .akg-v2 .akg-section-lead{margin:-8px 0 20px;color:#536774;line-height:1.65}
body .akg-v2 .akg-center{text-align:center;margin:24px 0}

/* Stats */
body .akg-v2 .akg-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 32px}
body .akg-v2 .akg-stat{background:#fff;border:1px solid #dce8f0;border-radius:12px;padding:17px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.04)}
body .akg-v2 .akg-stat i{display:block;color:var(--akg-cyan);font-size:1.3rem;margin-bottom:7px}
body .akg-v2 .akg-stat strong{display:block;color:var(--akg-navy);font-size:1.2rem;line-height:1.2}
body .akg-v2 .akg-stat span{display:block;color:#6a7a85;font-size:.86rem;margin-top:4px}

/* Directory Top cards */
body .akg-v2 .akg-directory-list{display:grid;gap:18px;margin:18px 0 30px}
body .akg-v2 .akg-directory-card{display:grid;grid-template-columns:minmax(0,1fr) 245px;background:#fff;border:2px solid var(--akg-cyan);border-radius:10px;box-shadow:var(--akg-shadow);overflow:hidden}
body .akg-v2 .akg-directory-main{padding:20px 22px}
body .akg-v2 .akg-directory-side{padding:20px;border-left:1px solid #d8e9f2;background:linear-gradient(145deg,#f4fbfd,#f8fbff);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
body .akg-v2 .akg-directory-title-row{display:flex;gap:13px;align-items:flex-start}
body .akg-v2 .akg-directory-rank{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:8px;background:var(--akg-cyan);color:#fff;font-weight:800}
body .akg-v2 .akg-directory-card h3{margin:0 0 5px!important;font-size:1.18rem!important;line-height:1.35!important;font-weight:800!important;color:var(--akg-navy2)!important}
body .akg-v2 .akg-directory-card h3 a{color:var(--akg-navy2)!important;text-decoration:none!important;border-bottom:0!important}
body .akg-v2 .akg-directory-card h3 a:hover{color:var(--akg-blue)!important}
body .akg-v2 .akg-directory-meta{display:flex;flex-wrap:wrap;gap:7px 12px;color:#62727c;font-size:.89rem}
body .akg-v2 .akg-directory-meta .akg-rating{font-weight:700;color:#8d6500}
body .akg-v2 .akg-directory-meta .akg-rating i{color:#f2a900;margin-right:4px}
body .akg-v2 .akg-directory-data{list-style:none!important;margin:15px 0 13px!important;padding:0!important}
body .akg-v2 .akg-directory-data li{margin:7px 0!important;padding:0!important;color:#33444f;font-size:.95rem}
body .akg-v2 .akg-directory-data li:before{display:none!important}
body .akg-v2 .akg-directory-data i{width:22px;color:var(--akg-cyan);text-align:center;margin-right:5px}
body .akg-v2 .akg-directory-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}
body .akg-v2 .akg-score-big{font-size:2.35rem;font-weight:800;color:var(--akg-navy);line-height:1}
body .akg-v2 .akg-score-stars{color:#f2a900;letter-spacing:2px;font-size:1rem;margin:9px 0 6px;white-space:nowrap}
body .akg-v2 .akg-review-count{font-weight:700;color:#415563}
body .akg-v2 .akg-review-note{font-size:.88rem;color:#657580;line-height:1.45;margin:8px 0 14px;max-width:210px}
body .akg-v2 .akg-review-chip{display:inline-flex;align-items:center;gap:6px;background:#e9f8f1;color:#287a5b!important;border:1px solid #cbe9dc!important;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:700;text-decoration:none!important}
body .akg-v2 .akg-review-chip:hover{transform:translateY(-1px);box-shadow:0 4px 9px rgba(40,122,91,.12)}

/* Buttons — high specificity because ASAP styles links globally */
body .akg-v2 a.akg-btn,body .akg-v2 .akg-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:.7rem 1.15rem;border-radius:6px;font-weight:700!important;font-size:.94rem;line-height:1.2!important;text-decoration:none!important;border-bottom-width:4px!important;border-bottom-style:solid!important;box-shadow:none}
body .akg-v2 a.akg-btn-primary{background:var(--akg-cyan);color:#fff!important;border:0!important;border-bottom:4px solid var(--akg-blue)!important}
body .akg-v2 a.akg-btn-primary:hover{background:#0091b0;color:#fff!important;transform:translateY(-2px)}
body .akg-v2 a.akg-btn-outline{background:#fff;color:#076d91!important;border:1px solid #b9dce8!important;border-bottom:4px solid #9bcbd9!important}
body .akg-v2 a.akg-btn-outline:hover{background:#f1fbfd;color:#075a76!important;transform:translateY(-2px)}

/* Region/city clusters */
body .akg-v2 .akg-cluster-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:center;margin-bottom:16px}
body .akg-v2 .akg-cluster-intro p{margin:0}
body .akg-v2 .akg-mini-note{background:#f5f9fc;border-left:4px solid var(--akg-cyan);padding:12px 14px;border-radius:6px;color:#435460;font-size:.93rem}
body .akg-v2 .akg-mini-note i{color:var(--akg-blue);margin-right:6px}
body .akg-v2 .akg-cluster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 24px}
body .akg-v2 a.akg-cluster-card{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#fff;border:1px solid var(--akg-line)!important;border-bottom:1px solid var(--akg-line)!important;border-radius:12px;padding:15px 16px;text-decoration:none!important;box-shadow:0 1px 4px rgba(0,0,0,.04);color:#23313a!important;font-weight:700!important;min-width:0}
body .akg-v2 a.akg-cluster-card:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(0,0,0,.08)}
body .akg-v2 .akg-cluster-card i{color:var(--akg-cyan);margin-right:7px}
body .akg-v2 .akg-cluster-card small{display:block;color:#72808b;font-weight:500;margin-left:24px}
body .akg-v2 .akg-count{background:#eef7fb;color:#057d9b;border-radius:999px;padding:4px 9px;font-size:.8rem;white-space:nowrap}

/* Tip/spintax blocks */
body .akg-v2 .akg-tip{padding:1rem 1.25rem;border-radius:4px;margin:1.65rem 0;font-size:1rem;line-height:1.65}
body .akg-v2 .akg-tip>i{margin-right:.45rem}
body .akg-v2 .akg-tip-green{background:#f0fdf9;border-left:4px solid #b3e6d2}.akg-v2 .akg-tip-green>i{color:#2a8a67}
body .akg-v2 .akg-tip-gray{background:#f5f5f5;border-left:4px solid #d1d1d1}.akg-v2 .akg-tip-gray>i{color:#6b7280}
body .akg-v2 .akg-tip-blue{background:#e6f0ff;border-left:4px solid var(--akg-blue)}.akg-v2 .akg-tip-blue>i{color:var(--akg-blue)}

/* Guide cards */
body .akg-v2 .akg-local-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 30px}
body .akg-v2 .akg-guide-card{background:#fff;border:1px solid #dce8f0;border-radius:12px;padding:19px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
body .akg-v2 .akg-guide-card>i{font-size:1.25rem;color:var(--akg-cyan);margin-bottom:8px}
body .akg-v2 .akg-guide-card h3{margin:2px 0 7px!important;font-size:1.08rem!important;color:var(--akg-navy2)!important}
body .akg-v2 .akg-guide-card p{margin:0;font-size:.94rem;color:#536774}

/* Shop profile */
body .akg-v2 .akg-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:20px 0}
body .akg-v2 .akg-info-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0}
body .akg-v2 .akg-data-card,body .akg-v2 .akg-map-card,body .akg-v2 .akg-info-card,body .akg-v2 .akg-online-card,body .akg-v2 .akg-busy-card{background:#fff;border:2px solid var(--akg-cyan);border-radius:10px;box-shadow:var(--akg-shadow);padding:20px;min-width:0}
body .akg-v2 h2.akg-card-title{all:unset!important;display:block!important;font-family:inherit!important;font-size:1.3rem!important;font-weight:700!important;color:var(--akg-blue)!important;margin:0 0 1rem!important;line-height:1.4!important;border:0!important;background:none!important;padding:0!important}
body .akg-v2 .akg-card-title i{margin-right:8px;color:var(--akg-cyan)}
body .akg-v2 .akg-arrow-list{list-style:none!important;margin:0!important;padding:0!important}
body .akg-v2 .akg-arrow-list li{position:relative;padding-left:22px!important;margin:.55rem 0!important;overflow-wrap:anywhere}
body .akg-v2 .akg-arrow-list li:before{content:'►'!important;display:block!important;position:absolute;left:0;top:.28em;color:#619CDA;font-size:.8em}
body .akg-v2 .akg-map-card iframe{width:100%!important;aspect-ratio:4/3;min-height:320px;display:block;border:0;border-radius:10px;box-shadow:var(--akg-shadow)}
body .akg-v2 .akg-plain-value{overflow-wrap:anywhere}

/* Review feature */
body .akg-v2 .akg-review-feature{display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:stretch}
body .akg-v2 .akg-review-summary{border-radius:10px;background:linear-gradient(145deg,#eef8fb,#f8fbff);padding:20px;text-align:center;display:flex;flex-direction:column;justify-content:center}
body .akg-v2 .akg-review-summary .akg-score-big{font-size:2.7rem}
body .akg-v2 .akg-review-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
body .akg-v2 .akg-review-copy p{margin:.25rem 0 .8rem}
body .akg-v2 .akg-review-facts{display:flex;gap:8px;flex-wrap:wrap}
body .akg-v2 .akg-review-fact{background:#f4f7f9;border:1px solid #e0e7ec;border-radius:999px;padding:6px 10px;font-size:.83rem;color:#405360;font-weight:600}

/* Online URLs shown deliberately as plain text */
body .akg-v2 .akg-module-note{font-size:.92rem;color:var(--akg-muted);margin-top:-.25rem}
body .akg-v2 .akg-online-list{list-style:none!important;padding:0!important;margin:12px 0 0!important}
body .akg-v2 .akg-online-list li{display:grid;grid-template-columns:24px 105px minmax(0,1fr);gap:7px;align-items:start;padding:8px 0!important;margin:0!important;border-bottom:1px solid #edf1f4}
body .akg-v2 .akg-online-list li:before{display:none!important}
body .akg-v2 .akg-online-list i{color:var(--akg-cyan);margin-top:4px;text-align:center}
body .akg-v2 .akg-plain-url{overflow-wrap:anywhere;word-break:break-word;color:#344d5c}

/* Popular hours bars */
body .akg-v2 .akg-busy-card{margin:22px 0}
body .akg-v2 .akg-busy-bars{display:grid;gap:10px;margin-top:16px}
body .akg-v2 .akg-busy-row{display:grid;grid-template-columns:62px 1fr 48px;gap:10px;align-items:center}
body .akg-v2 .akg-bar-bg{height:12px;background:#edf1f4;border-radius:999px;overflow:hidden}
body .akg-v2 .akg-bar-fill{height:100%;background:linear-gradient(90deg,var(--akg-cyan),var(--akg-blue));border-radius:999px}
body .akg-v2 .akg-busy-summary{background:#f5f9fc;border-radius:8px;padding:12px 14px;margin-top:15px}
body .akg-v2 .akg-busy-summary strong{color:var(--akg-navy2)}
body .akg-v2 .akg-busy-summary i{color:var(--akg-blue);margin-right:5px}

/* Services, related, FAQ */
body .akg-v2 .akg-service-tags{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 25px}
body .akg-v2 .akg-service-tag{display:inline-flex;align-items:center;gap:6px;background:#eef8fb;border:1px solid #cde8ef;color:#22556a;border-radius:999px;padding:7px 11px;font-size:.9rem;font-weight:700}
body .akg-v2 .akg-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0 25px}
body .akg-v2 .akg-related a{display:block;border:1px solid #e0e8ef!important;border-bottom:1px solid #e0e8ef!important;background:#fff;border-radius:10px;padding:13px 14px;text-decoration:none!important;font-weight:700!important;color:var(--akg-navy2)!important}
body .akg-v2 .akg-related a:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,.07)}
body .akg-v2 .akg-related small{display:block;color:#77838c;font-weight:400;margin-top:3px}
body .akg-v2 .akg-nav-links{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}
body .akg-v2 .akg-nav-links a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #d6e4ec!important;border-bottom:1px solid #d6e4ec!important;border-radius:9px;background:#fff;text-decoration:none!important;color:#164864!important;font-weight:700!important}
body .akg-v2 .akg-faq{display:grid;gap:12px;margin:14px 0 25px}
body .akg-v2 .akg-faq-item{background:#fff;border:1px solid #dfe8ee;border-radius:10px;padding:16px 18px}
body .akg-v2 .akg-faq-item h3{font-size:1.05rem!important;color:var(--akg-navy2)!important;margin:0 0 6px!important}
body .akg-v2 .akg-faq-item p{margin:0!important}

/* Breadcrumb */
body .akg-breadcrumb{max-width:1100px;margin:30px auto 10px;font-size:13.5px;color:#5a6b82}
body .akg-breadcrumb a{color:#2271b1;text-decoration:none;border-bottom:0!important}

/* Dynamic home region cluster. Works even if home keeps its own akh-* CSS. */
body .akg-home-regions{scroll-margin-top:90px}
body .akg-home-region-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin:16px 0 28px}
body a.akg-home-region-pill{display:block;text-decoration:none!important;border:1px solid #d5e6f3!important;border-left:4px solid #00a3c4!important;border-bottom:1px solid #d5e6f3!important;border-radius:9px;background:#fff;padding:12px 14px;color:#002a5c!important;font-weight:800!important;box-shadow:0 1px 4px rgba(0,0,0,.03)}
body a.akg-home-region-pill:hover{transform:translateY(-2px);box-shadow:0 5px 14px rgba(0,115,150,.12)}
body .akg-home-region-pill small{display:block;margin-top:4px;color:#6a7e99;font-size:.78rem;font-weight:600}

/* ASAP mobile/tablet compatibility */
@media(max-width:800px){
  body .akg-v2 .akg-hero-stats,body .akg-v2 .akg-profile-grid,body .akg-v2 .akg-info-row,body .akg-v2 .akg-local-guide,body .akg-v2 .akg-review-feature,body .akg-v2 .akg-cluster-intro{grid-template-columns:1fr}
  body .akg-v2 .akg-directory-card{grid-template-columns:1fr}
  body .akg-v2 .akg-directory-side{border-left:0;border-top:1px solid #d8e9f2}
  body .akg-v2 .akg-cluster,body .akg-v2 .akg-related{grid-template-columns:repeat(2,minmax(0,1fr))}
  body .akg-v2 .akg-review-summary{min-height:165px}
}
@media(max-width:600px){
  body .akg-v2 .akg-cluster,body .akg-v2 .akg-related{grid-template-columns:1fr}
  body .akg-v2 .akg-directory-main,body .akg-v2 .akg-directory-side{padding:17px}
  body .akg-v2 .akg-directory-actions a.akg-btn{flex:1 1 45%}
  body .akg-v2 .akg-map-card iframe{min-height:250px;aspect-ratio:16/9}
  body .akg-v2 .akg-busy-row{grid-template-columns:54px 1fr 42px;font-size:.9rem}
  body .akg-v2 .akg-online-list li{grid-template-columns:22px minmax(0,1fr)}
  body .akg-v2 .akg-online-list li strong{grid-column:2}.akg-v2 .akg-online-list .akg-plain-url{grid-column:2}
}

/* Legacy presentation retained for already-created /palvelut/ and /hinnat/ pages (v1). */
body .akg-city-grid,body .akg-service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:24px 0}
body .akg-city-card,body .akg-service-card{display:flex;flex-direction:column;justify-content:center;padding:16px 18px;background:#f7f9fc;border:1px solid #dde5ef!important;border-bottom:1px solid #dde5ef!important;border-radius:8px;text-decoration:none!important;color:#1a2b45!important}
body .akg-city-card:hover,body .akg-service-card:hover{border-color:#00a3c4!important;box-shadow:0 2px 8px rgba(0,163,196,.12)}
body .akg-city-name{font-weight:600;font-size:16px}body .akg-city-count{font-size:13px;color:#5a6b82;margin-top:2px}body .akg-service-card{font-weight:600;text-align:center}
body .akg-shop-list{margin:20px 0}body .akg-shop-item{padding:16px 18px;border:1px solid #e3e8ef;border-radius:8px;margin-bottom:12px;background:#fff}body .akg-shop-item h3,body .akg-shop-item h4{margin:0 0 6px;font-size:18px}body .akg-shop-item h3 a,body .akg-shop-item h4 a{text-decoration:none;color:#1a2b45;border-bottom:0!important}body .akg-shop-meta{margin:0 0 4px;font-size:14px;color:#5a6b82}body .akg-shop-addr{margin:0;font-size:14px;color:#45536a}
body .akg-price-box{background:#fbf6ea;border:1px solid #ecd9a8;border-radius:10px;padding:20px 24px;margin:24px 0}body .akg-price-note{font-size:14px;color:#6b5d3a}body .akg-price-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:15px}body .akg-price-table th,body .akg-price-table td{padding:10px 12px;border:1px solid #ecd9a8;text-align:left}body .akg-price-table th{background:#f3e8cd}body .akg-price-table tr:nth-child(even) td{background:#fdf9ef}body .akg-cta-box{background:#eef5fc;border:1px solid #c9ddf0;border-radius:10px;padding:22px 26px;margin:30px 0 10px;text-align:center}body .akg-crosslink{margin:26px 0 6px;font-size:15px}

/* v2.0.3 — ASAP alignment and internal-link refinements */
body .akg-v2{max-width:none!important;width:100%!important;margin:0!important}
body .akg-breadcrumb{max-width:none!important;width:100%;margin:30px 0 10px}
body .akg-v2 .akg-nav-links{justify-content:center;text-align:center}
body .akg-v2 .akg-section-lead strong{color:var(--akg-navy2);font-weight:800}
body .akg-v2 a.akg-btn-soft{background:#f1f8fb;color:#0b6885!important;border:1px solid #cfe3ec!important;border-bottom:3px solid #9cc9d8!important;padding:.58rem .82rem;font-size:.86rem}
body .akg-v2 a.akg-btn-soft:hover{background:#e7f5f9;transform:translateY(-1px)}
body .akg-v2 .akg-contact-actions{margin:14px 0 10px;display:flex;gap:8px;flex-wrap:wrap}
body .akg-v2 .akg-price-links{margin-top:18px;padding-top:14px;border-top:1px solid #e4edf2}
body .akg-v2 .akg-price-links>strong{display:block;color:var(--akg-navy2);margin-bottom:9px}
body .akg-v2 .akg-price-links>strong i{color:var(--akg-cyan);margin-right:5px}
body .akg-v2 .akg-price-link-buttons{display:flex;gap:8px;flex-wrap:wrap}
body .akg-v2 .akg-price-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 30px}
body .akg-v2 .akg-price-guide-grid a{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#fff;border:1px solid #dce7ef!important;border-bottom:1px solid #dce7ef!important;border-radius:10px;padding:14px 16px;text-decoration:none!important;color:#123f5c!important;font-weight:700!important}
body .akg-v2 .akg-price-guide-grid a i{color:var(--akg-cyan)}
body .akg-v2 .akg-price-guide-grid a:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(0,0,0,.07)}
@media(max-width:800px){body .akg-v2 .akg-price-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body .akg-v2 .akg-price-guide-grid{grid-template-columns:1fr}}

/* v2.0.4 — compact service categories inside Tiedot */
body .akg-v2 .akg-inline-services{display:flex!important;align-items:flex-start;gap:8px;flex-wrap:wrap}
body .akg-v2 .akg-service-inline-list{display:inline-flex;gap:7px;flex-wrap:wrap;margin-top:-2px}
body .akg-v2 .akg-service-tag-small{padding:4px 8px;font-size:.8rem}
