/* Google-arvostelut etusivulla (assets/google-reviews.js, /api/google-reviews). */
.gr[hidden]{display:none}
.gr-rail[hidden]{display:none}
.gr{background:linear-gradient(180deg,var(--pale) 0%,#fff 100%)}
.gr-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:30px}
.gr-intro{max-width:560px}
.gr-intro h2{margin:0}
.gr-lead{margin:12px 0 0;color:var(--text);font-size:.95rem;line-height:1.5}
.gr-score{display:flex;align-items:center;gap:16px;flex-shrink:0;padding:16px 20px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px #0E523912}
.gr-score[hidden]{display:none}
.gr-avg{font:400 2.9rem/1 'Instrument Serif',Georgia,serif;color:var(--forest)}
.gr-score-copy{display:grid;gap:5px;font-size:.82rem;color:var(--text)}
.gr-score-copy b{color:var(--ink);font-weight:700}
.gr-rating{position:relative;display:inline-block;font-size:1.05rem;line-height:1;letter-spacing:.08em;color:#d5ddd9;white-space:nowrap}
.gr-rating span{position:absolute;inset:0 auto 0 0;overflow:hidden;color:#f4b400}
.gr-src{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--text)}
.gr-src img{display:block;height:16px;width:auto}
.gr-rail{position:relative}
.gr-cards{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 14px;scrollbar-width:thin;overscroll-behavior-x:contain}
.gr-cards:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:16px}
.gr-card{display:flex;flex-direction:column;gap:12px;min-width:0;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;scroll-snap-align:start}
.gr-card-head{display:flex;align-items:center;gap:11px;min-width:0}
.gr-av{flex-shrink:0;width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--mint)}
span.gr-av{display:grid;place-items:center;color:var(--green-dark);font-weight:800;font-size:.95rem}
.gr-who{display:grid;min-width:0}
.gr-author{overflow:hidden;color:var(--ink);font-weight:700;font-size:.9rem;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
a.gr-author:hover{text-decoration:underline}
.gr-who small{font-size:.74rem;color:var(--text)}
.gr-text{flex:1;margin:0;color:var(--ink);font-size:.93rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.gr-text.gr-text-empty{color:var(--text);font-style:italic}
.gr-more{align-self:flex-start;font-size:.78rem;font-weight:700;color:var(--green-dark);text-decoration:underline;text-underline-offset:3px}
.gr-nav{position:absolute;inset:calc(50% - 27px) 0 auto 0;z-index:2;display:flex;justify-content:space-between;pointer-events:none}
.gr-nav[hidden]{display:none}
.gr-nav button{pointer-events:auto;box-shadow:0 6px 16px #0E52391f;display:grid;place-items:center;width:40px;height:40px;border:1.5px solid var(--line);border-radius:50%;background:#fff;color:var(--forest);font-size:1.3rem;line-height:1;cursor:pointer}
.gr-nav button:hover:not(:disabled){border-color:var(--green);background:var(--mint)}
.gr-nav button:disabled{visibility:hidden}
.gr-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 18px;margin-top:22px}
.gr-actions[hidden]{display:none}
.gr-write{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:13px 26px;border-radius:99px;background:var(--green);color:#fff;font-weight:750;text-decoration:none;box-shadow:0 10px 24px #0E523933;transition:background .15s,transform .15s}
.gr-write:hover{background:var(--green-dark);transform:translateY(-1px)}
.gr-write:focus-visible,.gr-all:focus-visible{outline:3px solid var(--forest);outline-offset:3px}
.gr-all{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 6px;color:var(--green-dark);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.gr-note{max-width:720px;margin:18px auto 0;text-align:center;font-size:.72rem;line-height:1.5;color:var(--text)}
.gr-note[hidden]{display:none}
.track-invite a.track-invite-link{display:inline-flex;margin-top:8px;padding:9px 16px;border-radius:99px;background:var(--green);color:#fff;font-weight:700;text-decoration:none}
@media(max-width:900px){.gr-cards{grid-auto-columns:calc((100% - 16px)/2)}}
@media(max-width:780px){
  .gr-head{flex-direction:column;align-items:stretch;gap:18px;margin-bottom:20px}
  .gr-score{align-self:flex-start}
  .gr-nav{display:none}
  .gr-cards{grid-auto-columns:86%;gap:12px;margin:0 -16px;padding:4px 16px 14px;scroll-padding:0 16px}
  .gr-card{padding:18px}
  .gr-actions{flex-direction:column;align-items:stretch}
  .gr-write{width:100%}
  .gr-all{justify-content:center}
}
/* Tiivis kaista, kun arvostelukortteja ei näytetä (ei vielä haettu, kulukatto täynnä tai ei arvosteluja):
   otsikko ja Google-linkit samalla rivillä, ei tyhjää laatikkoa eikä ylimääräistä tilaa. */
.gr.section{padding:72px 0}
.gr:not(.gr-has-reviews).section{padding:44px 0}
.gr:not(.gr-has-reviews) .container{display:flex;align-items:center;justify-content:space-between;gap:20px 40px}
.gr:not(.gr-has-reviews) .gr-head{flex:1 1 auto;min-width:0;margin:0}
.gr:not(.gr-has-reviews) .gr-intro h2{font-size:clamp(2rem,3.4vw,2.6rem)}
.gr:not(.gr-has-reviews) .gr-actions{flex-shrink:0;flex-direction:column;align-items:center;gap:6px;margin:0}
@media(min-width:781px){.gr:not(.gr-has-reviews) .gr-head{gap:28px}}
@media(max-width:780px){
  .gr.section{padding:52px 0}
  .gr:not(.gr-has-reviews).section{padding:32px 0}
  .gr:not(.gr-has-reviews) .container{flex-direction:column;align-items:stretch;gap:18px}
  .gr:not(.gr-has-reviews) .gr-intro h2{font-size:1.9rem}
  .gr:not(.gr-has-reviews) .gr-actions{gap:6px}
}
@media(prefers-reduced-motion:reduce){.gr-cards{scroll-behavior:auto}.gr-write{transition:none}}


