/* --- Self-hostatut fontit (Fraunces + Hanken Grotesk), font-display:swap --- */
@font-face{font-display:swap;font-family:'Fraunces';font-style:normal;font-weight:400;src:url('/fontit/fraunces-v38-latin-regular.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Fraunces';font-style:normal;font-weight:500;src:url('/fontit/fraunces-v38-latin-500.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Fraunces';font-style:italic;font-weight:500;src:url('/fontit/fraunces-v38-latin-500italic.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Fraunces';font-style:normal;font-weight:600;src:url('/fontit/fraunces-v38-latin-600.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Hanken Grotesk';font-style:normal;font-weight:400;src:url('/fontit/hanken-grotesk-v12-latin-regular.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Hanken Grotesk';font-style:normal;font-weight:500;src:url('/fontit/hanken-grotesk-v12-latin-500.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Hanken Grotesk';font-style:normal;font-weight:600;src:url('/fontit/hanken-grotesk-v12-latin-600.woff2') format('woff2')}
@font-face{font-display:swap;font-family:'Hanken Grotesk';font-style:normal;font-weight:700;src:url('/fontit/hanken-grotesk-v12-latin-700.woff2') format('woff2')}

/* LOGIVIESTI – yhtenäinen styles.css (namespacing per sivu: body.pg-<nimi>) */
/* Rakennettu automaattisesti; jokaisen sivun säännöt eristetty, kaskadi säilytetty. */

/* --- Globaalit: html + @keyframes (jaetut) --- */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============ pg-alueet-pori ============ */
.pg-alueet-pori{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-alueet-pori{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-alueet-pori, .pg-alueet-pori *, .pg-alueet-pori *::before, .pg-alueet-pori *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-alueet-pori{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-alueet-pori img{max-width:100%;height:auto;display:block}
.pg-alueet-pori a{color:inherit;text-decoration:none}
.pg-alueet-pori button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-alueet-pori ul{list-style:none}
.pg-alueet-pori section{scroll-margin-top:84px}
.pg-alueet-pori h1, .pg-alueet-pori h2, .pg-alueet-pori h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-alueet-pori h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-alueet-pori h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-alueet-pori h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-alueet-pori .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-alueet-pori p{color:var(--muted)}
.pg-alueet-pori .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-alueet-pori .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-alueet-pori .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-alueet-pori .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-alueet-pori .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-alueet-pori .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-alueet-pori .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-alueet-pori .crumbs{font-size:.86rem;color:var(--muted);padding-top:1.4rem}
.pg-alueet-pori .crumbs a{color:var(--brand);font-weight:500}
.pg-alueet-pori .crumbs a:hover{text-decoration:underline}
.pg-alueet-pori .crumbs span{opacity:.5;margin:0 .45em}
.pg-alueet-pori .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-alueet-pori .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-alueet-pori .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-alueet-pori .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-alueet-pori .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-alueet-pori .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-alueet-pori .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-alueet-pori .btn-block{width:100%}
.pg-alueet-pori .btn .arrow{transition:transform .25s var(--ease)}
.pg-alueet-pori .btn:hover .arrow{transform:translateX(3px)}
.pg-alueet-pori .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-alueet-pori .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-alueet-pori .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-alueet-pori .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-alueet-pori .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-alueet-pori .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-alueet-pori .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-alueet-pori .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-alueet-pori .nav-back{display:inline-flex;align-items:center;gap:.4em}
.pg-alueet-pori .nav-back svg{width:15px;height:15px}
.pg-alueet-pori .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-alueet-pori .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-alueet-pori .nav-phone:hover{color:var(--brand)}
.pg-alueet-pori .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-alueet-pori .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet-pori .burger svg{width:24px;height:24px}
.pg-alueet-pori .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-alueet-pori .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-alueet-pori .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-alueet-pori .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet-pori .mm-close svg{width:26px;height:26px}
.pg-alueet-pori .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-alueet-pori .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-alueet-pori .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-alueet-pori .hero{position:relative;padding:clamp(2rem,5vw,4rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-alueet-pori .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-alueet-pori .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-alueet-pori .hero h1{margin-bottom:1.3rem}
.pg-alueet-pori .hero h1 .light{color:var(--muted);font-weight:400}
.pg-alueet-pori .hero-lead{max-width:42ch;margin-bottom:1.9rem}
.pg-alueet-pori .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-alueet-pori .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-alueet-pori .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-alueet-pori .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-alueet-pori .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-alueet-pori .chip b{font-weight:700;color:var(--brand)}
.pg-alueet-pori .hero-visual{position:relative}
.pg-alueet-pori .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-alueet-pori .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-alueet-pori .browser-bar .dots{display:flex;gap:.4em}
.pg-alueet-pori .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-alueet-pori .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-alueet-pori .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-alueet-pori .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-alueet-pori .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-alueet-pori .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-alueet-pori .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-alueet-pori .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-alueet-pori .why-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,3.5vw,3.2rem);align-items:center}
.pg-alueet-pori .why-points{display:flex;flex-direction:column;gap:1.1rem;margin-top:1.6rem}
.pg-alueet-pori .why-point{display:flex;gap:.9em;align-items:flex-start}
.pg-alueet-pori .why-point .ic{width:40px;height:40px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-alueet-pori .why-point .ic svg{width:21px;height:21px}
.pg-alueet-pori .why-point h3{font-size:1.08rem;margin-bottom:.25rem}
.pg-alueet-pori .why-point p{font-size:.97rem}
.pg-alueet-pori .stat-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.3rem);box-shadow:var(--shadow-sm)}
.pg-alueet-pori .stat-panel .big{font-family:var(--font-head);font-weight:600;font-size:clamp(2.6rem,6vw,3.6rem);color:var(--brand);line-height:1;letter-spacing:-.02em}
.pg-alueet-pori .stat-panel .big-sub{font-size:1rem;color:var(--ink);margin-top:.5rem;font-weight:500}
.pg-alueet-pori .stat-panel .divider{height:1px;background:var(--line);margin:1.5rem 0}
.pg-alueet-pori .stat-panel p{font-size:.97rem}
.pg-alueet-pori .stat-panel .src{font-size:.78rem;color:var(--muted);opacity:.75;margin-top:1rem}
.pg-alueet-pori .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-alueet-pori .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-alueet-pori .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-alueet-pori .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-alueet-pori .feat .ic svg{width:22px;height:22px}
.pg-alueet-pori .feat h3{font-size:1.12rem}
.pg-alueet-pori .feat p{font-size:.96rem}
.pg-alueet-pori .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-alueet-pori .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-alueet-pori .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-alueet-pori .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-alueet-pori .aud-card h3{margin-bottom:.7rem}
.pg-alueet-pori .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-alueet-pori .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem}
.pg-alueet-pori .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-alueet-pori .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-alueet-pori .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:auto;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-alueet-pori .special-link:hover .arrow{transform:translateX(4px)}
.pg-alueet-pori .special-link .arrow{transition:transform .25s var(--ease)}
.pg-alueet-pori .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-alueet-pori .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-alueet-pori .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-alueet-pori .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-alueet-pori .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-alueet-pori .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-alueet-pori .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-alueet-pori .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-alueet-pori .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-alueet-pori .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-alueet-pori .trust-box b{font-weight:600}
.pg-alueet-pori .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-alueet-pori .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-alueet-pori .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-alueet-pori .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-alueet-pori .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-alueet-pori .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);transform:scale(1.015)}
.pg-alueet-pori .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-alueet-pori .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-alueet-pori .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-alueet-pori .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-alueet-pori .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-alueet-pori .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-alueet-pori .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-alueet-pori .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-alueet-pori .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-alueet-pori .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-alueet-pori .price-card .btn{margin-top:auto}
.pg-alueet-pori .price-note{text-align:center;max-width:640px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-alueet-pori .price-note b{color:var(--ink);font-weight:600}
.pg-alueet-pori .price-foot-link{display:flex;justify-content:center;gap:1.4rem;flex-wrap:wrap;margin-top:1.3rem}
.pg-alueet-pori .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-alueet-pori .faq-item{border-bottom:1px solid var(--line)}
.pg-alueet-pori .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-alueet-pori .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-alueet-pori .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-alueet-pori .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-alueet-pori .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-alueet-pori .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-alueet-pori .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-alueet-pori .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-alueet-pori .cta-left h2{margin-bottom:1rem}
.pg-alueet-pori .cta-left .lead{margin-bottom:1.7rem}
.pg-alueet-pori .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-alueet-pori .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-alueet-pori .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-alueet-pori .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-alueet-pori .contact-alt .ic svg{width:20px;height:20px}
.pg-alueet-pori .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-alueet-pori .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-alueet-pori .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-alueet-pori .field{margin-bottom:1rem}
.pg-alueet-pori .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-alueet-pori .field label .req{color:var(--brand)}
.pg-alueet-pori .field input, .pg-alueet-pori .field select, .pg-alueet-pori .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-alueet-pori .field input:focus, .pg-alueet-pori .field select:focus, .pg-alueet-pori .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-alueet-pori .field textarea{resize:vertical;min-height:120px}
.pg-alueet-pori .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-alueet-pori .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-alueet-pori .form-note a{color:var(--brand);text-decoration:underline}
.pg-alueet-pori .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-alueet-pori .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-alueet-pori .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-alueet-pori .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-alueet-pori .form-success .check svg{width:30px;height:30px}
.pg-alueet-pori .form-success h3{margin-bottom:.5rem}
.pg-alueet-pori .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-alueet-pori .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-alueet-pori .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-alueet-pori .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-alueet-pori .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-alueet-pori .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-alueet-pori .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-alueet-pori .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-alueet-pori .foot-col a:hover{color:var(--brand-2)}
.pg-alueet-pori .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-alueet-pori .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-alueet-pori .foot-legal button, .pg-alueet-pori .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-alueet-pori .foot-legal button:hover, .pg-alueet-pori .foot-legal a:hover{color:var(--brand-2)}
.pg-alueet-pori .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-alueet-pori .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-alueet-pori .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-alueet-pori .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-alueet-pori .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-alueet-pori .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-alueet-pori .ai-seo b{color:var(--ink);font-weight:600}
.pg-alueet-pori .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-alueet-pori .sticky-bar.show{transform:translateY(0)}
.pg-alueet-pori .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-alueet-pori .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-alueet-pori .sticky-bar a svg{width:19px;height:19px}
.pg-alueet-pori .sticky-bar a.call svg{color:var(--brand)}
.pg-alueet-pori .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-alueet-pori .cookie.show{transform:translateY(0)}
.pg-alueet-pori .cookie p{font-size:.9rem;color:var(--ink)}
.pg-alueet-pori .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-alueet-pori .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-alueet-pori .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-alueet-pori .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-alueet-pori .modal.open{display:flex}
.pg-alueet-pori .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-alueet-pori .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-alueet-pori .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-alueet-pori .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-alueet-pori .modal-box p, .pg-alueet-pori .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-alueet-pori .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-alueet-pori .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet-pori .modal-close svg{width:22px;height:22px}
.pg-alueet-pori .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-alueet-pori .reveal.is-visible{opacity:1;transform:none}
.pg-alueet-pori .reveal.d1{transition-delay:.08s}
.pg-alueet-pori .reveal.d2{transition-delay:.16s}
.pg-alueet-pori .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-alueet-pori .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-alueet-pori .hero-visual{max-width:520px}.pg-alueet-pori .why-grid{grid-template-columns:1fr;gap:2rem}.pg-alueet-pori .feat-grid{grid-template-columns:1fr 1fr}.pg-alueet-pori .ref-grid{grid-template-columns:1fr}.pg-alueet-pori .cta-grid{grid-template-columns:1fr}.pg-alueet-pori .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-alueet-pori .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-alueet-pori{font-size:16px}.pg-alueet-pori .nav-links, .pg-alueet-pori .nav-phone{display:none}.pg-alueet-pori .burger{display:flex}.pg-alueet-pori .nav-actions .btn{display:none}.pg-alueet-pori .two-cards{grid-template-columns:1fr}.pg-alueet-pori .feat-grid{grid-template-columns:1fr}.pg-alueet-pori .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-alueet-pori .price-card.featured{transform:none;order:-1}.pg-alueet-pori .price-card.featured:hover{transform:translateY(-4px)}.pg-alueet-pori .field-row{grid-template-columns:1fr}.pg-alueet-pori .ref-stats{gap:1.4rem}.pg-alueet-pori .foot-grid{grid-template-columns:1fr 1fr}.pg-alueet-pori .sticky-bar{display:grid}body.pg-alueet-pori{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-alueet-pori .cookie{bottom:72px}.pg-alueet-pori section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-alueet-pori .foot-grid{grid-template-columns:1fr}.pg-alueet-pori .hero-cta{flex-direction:column}.pg-alueet-pori .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-alueet-pori, .pg-alueet-pori *, .pg-alueet-pori *::before, .pg-alueet-pori *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-alueet-pori .reveal{opacity:1;transform:none}}
.pg-alueet-pori a:focus-visible, .pg-alueet-pori button:focus-visible, .pg-alueet-pori input:focus-visible, .pg-alueet-pori select:focus-visible, .pg-alueet-pori textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-alueet-pori .img-ph{overflow:hidden}
.pg-alueet-pori .avatar-ph{position:relative;overflow:hidden}
.pg-alueet-pori .img-ph>img.ph-img, .pg-alueet-pori .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-alueet-pori .avatar-ph>img.ph-img{object-position:center 20%}
.pg-alueet-pori .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-alueet-pori .ai-seo .wrap{max-width:920px}
.pg-alueet-pori .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-alueet-pori .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-alueet-pori .ai-seo p{max-width:78ch}
.pg-alueet-pori .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-alueet-pori .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-alueet-pori .ai-facts a{color:var(--brand)}
.pg-alueet-pori .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-alueet-pori .nav-links a.active, .pg-alueet-pori .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-alueet-pori .nav-links a.active::after, .pg-alueet-pori .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-alueet-pori .mm-links a.active, .pg-alueet-pori .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-alueet-turku ============ */
.pg-alueet-turku{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-alueet-turku{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-alueet-turku, .pg-alueet-turku *, .pg-alueet-turku *::before, .pg-alueet-turku *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-alueet-turku{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-alueet-turku img{max-width:100%;height:auto;display:block}
.pg-alueet-turku a{color:inherit;text-decoration:none}
.pg-alueet-turku button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-alueet-turku ul{list-style:none}
.pg-alueet-turku section{scroll-margin-top:84px}
.pg-alueet-turku h1, .pg-alueet-turku h2, .pg-alueet-turku h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-alueet-turku h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-alueet-turku h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-alueet-turku h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-alueet-turku .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-alueet-turku p{color:var(--muted)}
.pg-alueet-turku .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-alueet-turku .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-alueet-turku .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-alueet-turku .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-alueet-turku .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-alueet-turku .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-alueet-turku .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-alueet-turku .crumbs{font-size:.86rem;color:var(--muted);padding-top:1.4rem}
.pg-alueet-turku .crumbs a{color:var(--brand);font-weight:500}
.pg-alueet-turku .crumbs a:hover{text-decoration:underline}
.pg-alueet-turku .crumbs span{opacity:.5;margin:0 .45em}
.pg-alueet-turku .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-alueet-turku .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-alueet-turku .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-alueet-turku .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-alueet-turku .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-alueet-turku .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-alueet-turku .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-alueet-turku .btn-block{width:100%}
.pg-alueet-turku .btn .arrow{transition:transform .25s var(--ease)}
.pg-alueet-turku .btn:hover .arrow{transform:translateX(3px)}
.pg-alueet-turku .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-alueet-turku .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-alueet-turku .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-alueet-turku .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-alueet-turku .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-alueet-turku .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-alueet-turku .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-alueet-turku .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-alueet-turku .nav-back{display:inline-flex;align-items:center;gap:.4em}
.pg-alueet-turku .nav-back svg{width:15px;height:15px}
.pg-alueet-turku .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-alueet-turku .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-alueet-turku .nav-phone:hover{color:var(--brand)}
.pg-alueet-turku .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-alueet-turku .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet-turku .burger svg{width:24px;height:24px}
.pg-alueet-turku .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-alueet-turku .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-alueet-turku .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-alueet-turku .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet-turku .mm-close svg{width:26px;height:26px}
.pg-alueet-turku .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-alueet-turku .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-alueet-turku .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-alueet-turku .hero{position:relative;padding:clamp(2rem,5vw,4rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-alueet-turku .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-alueet-turku .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-alueet-turku .hero h1{margin-bottom:1.3rem}
.pg-alueet-turku .hero h1 .light{color:var(--muted);font-weight:400}
.pg-alueet-turku .hero-lead{max-width:42ch;margin-bottom:1.9rem}
.pg-alueet-turku .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-alueet-turku .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-alueet-turku .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-alueet-turku .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-alueet-turku .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-alueet-turku .chip b{font-weight:700;color:var(--brand)}
.pg-alueet-turku .hero-visual{position:relative}
.pg-alueet-turku .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-alueet-turku .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-alueet-turku .browser-bar .dots{display:flex;gap:.4em}
.pg-alueet-turku .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-alueet-turku .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-alueet-turku .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-alueet-turku .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-alueet-turku .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-alueet-turku .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-alueet-turku .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-alueet-turku .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-alueet-turku .why-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,3.5vw,3.2rem);align-items:center}
.pg-alueet-turku .why-points{display:flex;flex-direction:column;gap:1.1rem;margin-top:1.6rem}
.pg-alueet-turku .why-point{display:flex;gap:.9em;align-items:flex-start}
.pg-alueet-turku .why-point .ic{width:40px;height:40px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-alueet-turku .why-point .ic svg{width:21px;height:21px}
.pg-alueet-turku .why-point h3{font-size:1.08rem;margin-bottom:.25rem}
.pg-alueet-turku .why-point p{font-size:.97rem}
.pg-alueet-turku .stat-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.3rem);box-shadow:var(--shadow-sm)}
.pg-alueet-turku .stat-panel .big{font-family:var(--font-head);font-weight:600;font-size:clamp(2.6rem,6vw,3.6rem);color:var(--brand);line-height:1;letter-spacing:-.02em}
.pg-alueet-turku .stat-panel .big-sub{font-size:1rem;color:var(--ink);margin-top:.5rem;font-weight:500}
.pg-alueet-turku .stat-panel .divider{height:1px;background:var(--line);margin:1.5rem 0}
.pg-alueet-turku .stat-panel p{font-size:.97rem}
.pg-alueet-turku .stat-panel .src{font-size:.78rem;color:var(--muted);opacity:.75;margin-top:1rem}
.pg-alueet-turku .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-alueet-turku .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-alueet-turku .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-alueet-turku .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-alueet-turku .feat .ic svg{width:22px;height:22px}
.pg-alueet-turku .feat h3{font-size:1.12rem}
.pg-alueet-turku .feat p{font-size:.96rem}
.pg-alueet-turku .compare{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;align-items:stretch}
.pg-alueet-turku .compare-card{position:relative;border-radius:var(--radius-lg);
  padding:clamp(1.6rem,3vw,2.3rem);display:flex;flex-direction:column;
  border:1px solid var(--line);background:var(--surface);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-alueet-turku .compare-card.me{border:1.5px solid var(--brand);box-shadow:var(--shadow)}
.pg-alueet-turku .compare-card.me:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.pg-alueet-turku .compare-card.them{background:color-mix(in srgb,var(--bg) 55%,var(--surface))}
.pg-alueet-turku .compare-card .c-tag{display:inline-flex;align-items:center;gap:.5em;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.7rem}
.pg-alueet-turku .compare-card.me .c-tag{color:var(--brand)}
.pg-alueet-turku .compare-card.them .c-tag{color:var(--muted)}
.pg-alueet-turku .compare-card h3{margin-bottom:1.2rem;font-size:1.3rem;font-family:var(--font-head);font-weight:600}
.pg-alueet-turku .compare-list{display:flex;flex-direction:column;gap:.85rem}
.pg-alueet-turku .compare-list li{display:flex;align-items:flex-start;gap:.65em;font-size:.97rem;color:var(--ink);line-height:1.45}
.pg-alueet-turku .compare-list li svg{width:19px;height:19px;flex-shrink:0;margin-top:2px}
.pg-alueet-turku .compare-card.me li svg{color:var(--brand)}
.pg-alueet-turku .compare-card.them li{color:var(--muted)}
.pg-alueet-turku .compare-card.them li svg{color:var(--muted);opacity:.55}
.pg-alueet-turku .compare-note{max-width:720px;margin:2rem auto 0;text-align:center;font-size:.97rem;color:var(--muted)}
.pg-alueet-turku .compare-note b{color:var(--ink);font-weight:600}
.pg-alueet-turku .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-alueet-turku .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-alueet-turku .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-alueet-turku .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-alueet-turku .aud-card h3{margin-bottom:.7rem}
.pg-alueet-turku .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-alueet-turku .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem}
.pg-alueet-turku .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-alueet-turku .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-alueet-turku .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:auto;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-alueet-turku .special-link:hover .arrow{transform:translateX(4px)}
.pg-alueet-turku .special-link .arrow{transition:transform .25s var(--ease)}
.pg-alueet-turku .assoc{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 80%,var(--surface)), var(--surface));border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.8rem,4vw,3rem)}
.pg-alueet-turku .assoc-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.6rem,4vw,3rem);align-items:center}
.pg-alueet-turku .assoc-points{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.6rem}
.pg-alueet-turku .assoc-point{display:flex;gap:.7em;align-items:flex-start}
.pg-alueet-turku .assoc-point svg{width:20px;height:20px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-alueet-turku .assoc-point b{display:block;color:var(--ink);font-weight:600;font-size:.98rem;margin-bottom:.1rem}
.pg-alueet-turku .assoc-point span{font-size:.9rem;color:var(--muted)}
.pg-alueet-turku .assoc-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.pg-alueet-turku .work-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.pg-alueet-turku .work-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.pg-alueet-turku .work-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-alueet-turku .work-body{padding:clamp(1.4rem,2.6vw,1.9rem);display:flex;flex-direction:column;flex:1}
.pg-alueet-turku .work-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem}
.pg-alueet-turku .work-meta span{font-size:.78rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.3em .7em;border-radius:8px}
.pg-alueet-turku .work-card h3{font-size:1.18rem;margin-bottom:.5rem}
.pg-alueet-turku .work-card p{font-size:.95rem;margin-bottom:1.2rem}
.pg-alueet-turku .work-card .special-link{margin-top:auto}
.pg-alueet-turku .work-honest{max-width:760px;margin:0 auto 2.4rem;text-align:center}
.pg-alueet-turku .work-honest p{font-size:1.02rem;color:var(--ink)}
.pg-alueet-turku .work-honest b{font-weight:600}
.pg-alueet-turku .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-alueet-turku .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-alueet-turku .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-alueet-turku .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);transform:scale(1.015)}
.pg-alueet-turku .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-alueet-turku .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-alueet-turku .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-alueet-turku .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-alueet-turku .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-alueet-turku .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-alueet-turku .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-alueet-turku .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-alueet-turku .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-alueet-turku .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-alueet-turku .price-card .btn{margin-top:auto}
.pg-alueet-turku .price-note{text-align:center;max-width:640px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-alueet-turku .price-note b{color:var(--ink);font-weight:600}
.pg-alueet-turku .price-foot-link{display:flex;justify-content:center;gap:1.4rem;flex-wrap:wrap;margin-top:1.3rem}
.pg-alueet-turku .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-alueet-turku .faq-item{border-bottom:1px solid var(--line)}
.pg-alueet-turku .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-alueet-turku .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-alueet-turku .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-alueet-turku .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-alueet-turku .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-alueet-turku .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-alueet-turku .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-alueet-turku .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-alueet-turku .cta-left h2{margin-bottom:1rem}
.pg-alueet-turku .cta-left .lead{margin-bottom:1.7rem}
.pg-alueet-turku .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-alueet-turku .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-alueet-turku .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-alueet-turku .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-alueet-turku .contact-alt .ic svg{width:20px;height:20px}
.pg-alueet-turku .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-alueet-turku .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-alueet-turku .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-alueet-turku .field{margin-bottom:1rem}
.pg-alueet-turku .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-alueet-turku .field label .req{color:var(--brand)}
.pg-alueet-turku .field input, .pg-alueet-turku .field select, .pg-alueet-turku .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-alueet-turku .field input:focus, .pg-alueet-turku .field select:focus, .pg-alueet-turku .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-alueet-turku .field textarea{resize:vertical;min-height:120px}
.pg-alueet-turku .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-alueet-turku .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-alueet-turku .form-note a{color:var(--brand);text-decoration:underline}
.pg-alueet-turku .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-alueet-turku .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-alueet-turku .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-alueet-turku .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-alueet-turku .form-success .check svg{width:30px;height:30px}
.pg-alueet-turku .form-success h3{margin-bottom:.5rem}
.pg-alueet-turku .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-alueet-turku .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-alueet-turku .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-alueet-turku .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-alueet-turku .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-alueet-turku .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-alueet-turku .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-alueet-turku .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-alueet-turku .foot-col a:hover{color:var(--brand-2)}
.pg-alueet-turku .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-alueet-turku .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-alueet-turku .foot-legal button, .pg-alueet-turku .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-alueet-turku .foot-legal button:hover, .pg-alueet-turku .foot-legal a:hover{color:var(--brand-2)}
.pg-alueet-turku .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-alueet-turku .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-alueet-turku .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-alueet-turku .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-alueet-turku .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-alueet-turku .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-alueet-turku .ai-seo b{color:var(--ink);font-weight:600}
.pg-alueet-turku .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-alueet-turku .sticky-bar.show{transform:translateY(0)}
.pg-alueet-turku .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-alueet-turku .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-alueet-turku .sticky-bar a svg{width:19px;height:19px}
.pg-alueet-turku .sticky-bar a.call svg{color:var(--brand)}
.pg-alueet-turku .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-alueet-turku .cookie.show{transform:translateY(0)}
.pg-alueet-turku .cookie p{font-size:.9rem;color:var(--ink)}
.pg-alueet-turku .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-alueet-turku .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-alueet-turku .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-alueet-turku .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-alueet-turku .modal.open{display:flex}
.pg-alueet-turku .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-alueet-turku .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-alueet-turku .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-alueet-turku .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-alueet-turku .modal-box p, .pg-alueet-turku .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-alueet-turku .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-alueet-turku .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet-turku .modal-close svg{width:22px;height:22px}
.pg-alueet-turku .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-alueet-turku .reveal.is-visible{opacity:1;transform:none}
.pg-alueet-turku .reveal.d1{transition-delay:.08s}
.pg-alueet-turku .reveal.d2{transition-delay:.16s}
.pg-alueet-turku .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-alueet-turku .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-alueet-turku .hero-visual{max-width:520px}.pg-alueet-turku .why-grid{grid-template-columns:1fr;gap:2rem}.pg-alueet-turku .feat-grid{grid-template-columns:1fr 1fr}.pg-alueet-turku .assoc-grid{grid-template-columns:1fr;gap:1.8rem}.pg-alueet-turku .cta-grid{grid-template-columns:1fr}.pg-alueet-turku .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-alueet-turku .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-alueet-turku{font-size:16px}.pg-alueet-turku .nav-links, .pg-alueet-turku .nav-phone{display:none}.pg-alueet-turku .burger{display:flex}.pg-alueet-turku .nav-actions .btn{display:none}.pg-alueet-turku .two-cards{grid-template-columns:1fr}.pg-alueet-turku .compare{grid-template-columns:1fr}.pg-alueet-turku .work-grid{grid-template-columns:1fr}.pg-alueet-turku .assoc-points{grid-template-columns:1fr}.pg-alueet-turku .feat-grid{grid-template-columns:1fr}.pg-alueet-turku .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-alueet-turku .price-card.featured{transform:none;order:-1}.pg-alueet-turku .price-card.featured:hover{transform:translateY(-4px)}.pg-alueet-turku .field-row{grid-template-columns:1fr}.pg-alueet-turku .foot-grid{grid-template-columns:1fr 1fr}.pg-alueet-turku .sticky-bar{display:grid}body.pg-alueet-turku{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-alueet-turku .cookie{bottom:72px}.pg-alueet-turku section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-alueet-turku .foot-grid{grid-template-columns:1fr}.pg-alueet-turku .hero-cta{flex-direction:column}.pg-alueet-turku .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-alueet-turku, .pg-alueet-turku *, .pg-alueet-turku *::before, .pg-alueet-turku *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-alueet-turku .reveal{opacity:1;transform:none}}
.pg-alueet-turku a:focus-visible, .pg-alueet-turku button:focus-visible, .pg-alueet-turku input:focus-visible, .pg-alueet-turku select:focus-visible, .pg-alueet-turku textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-alueet-turku .img-ph{overflow:hidden}
.pg-alueet-turku .avatar-ph{position:relative;overflow:hidden}
.pg-alueet-turku .img-ph>img.ph-img, .pg-alueet-turku .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-alueet-turku .avatar-ph>img.ph-img{object-position:center 20%}
.pg-alueet-turku .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-alueet-turku .ai-seo .wrap{max-width:920px}
.pg-alueet-turku .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-alueet-turku .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-alueet-turku .ai-seo p{max-width:78ch}
.pg-alueet-turku .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-alueet-turku .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-alueet-turku .ai-facts a{color:var(--brand)}
.pg-alueet-turku .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-alueet-turku .nav-links a.active, .pg-alueet-turku .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-alueet-turku .nav-links a.active::after, .pg-alueet-turku .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-alueet-turku .mm-links a.active, .pg-alueet-turku .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-alueet ============ */
.pg-alueet{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-alueet{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-alueet, .pg-alueet *, .pg-alueet *::before, .pg-alueet *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-alueet{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-alueet img{max-width:100%;height:auto;display:block}
.pg-alueet a{color:inherit;text-decoration:none}
.pg-alueet button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-alueet ul{list-style:none}
.pg-alueet section{scroll-margin-top:84px}
.pg-alueet h1, .pg-alueet h2, .pg-alueet h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-alueet h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-alueet h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-alueet h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-alueet .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-alueet p{color:var(--muted)}
.pg-alueet .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-alueet .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-alueet .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-alueet .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-alueet .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-alueet .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-alueet .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-alueet .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-alueet .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-alueet .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-alueet .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-alueet .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-alueet .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-alueet .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-alueet .btn-block{width:100%}
.pg-alueet .btn .arrow{transition:transform .25s var(--ease)}
.pg-alueet .btn:hover .arrow{transform:translateX(3px)}
.pg-alueet .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-alueet .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-alueet .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-alueet .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-alueet .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-alueet .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-alueet .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-alueet .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-alueet .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-alueet .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-alueet .nav-phone:hover{color:var(--brand)}
.pg-alueet .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-alueet .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet .burger svg{width:24px;height:24px}
.pg-alueet .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-alueet .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-alueet .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-alueet .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet .mm-close svg{width:26px;height:26px}
.pg-alueet .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-alueet .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-alueet .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-alueet .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-alueet .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-alueet .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-alueet .hero h1{margin-bottom:1.3rem}
.pg-alueet .hero h1 .light{color:var(--muted);font-weight:400}
.pg-alueet .hero-lead{max-width:40ch;margin-bottom:1.9rem}
.pg-alueet .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-alueet .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-alueet .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-alueet .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-alueet .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-alueet .chip b{font-weight:700;color:var(--brand)}
.pg-alueet .hero-visual{position:relative}
.pg-alueet .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-alueet .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-alueet .browser-bar .dots{display:flex;gap:.4em}
.pg-alueet .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-alueet .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-alueet .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-alueet .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-alueet .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-alueet .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-alueet .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-alueet .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-alueet .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-alueet .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-alueet .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-alueet .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-alueet .aud-card h3{margin-bottom:.7rem}
.pg-alueet .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-alueet .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}
.pg-alueet .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-alueet .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-alueet .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:1.8rem;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-alueet .special-link:hover .arrow{transform:translateX(4px)}
.pg-alueet .special-link .arrow{transition:transform .25s var(--ease)}
.pg-alueet .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-alueet .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-alueet .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-alueet .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-alueet .feat .ic svg{width:22px;height:22px}
.pg-alueet .feat h3{font-size:1.12rem}
.pg-alueet .feat p{font-size:.96rem}
.pg-alueet .feat.wide{grid-column:span 1}
.pg-alueet .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-alueet .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-alueet .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-alueet .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);
  transform:scale(1.015);}
.pg-alueet .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-alueet .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-alueet .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-alueet .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-alueet .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-alueet .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-alueet .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-alueet .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-alueet .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-alueet .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-alueet .price-card .btn{margin-top:auto}
.pg-alueet .price-note{text-align:center;max-width:620px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-alueet .price-note b{color:var(--ink);font-weight:600}
.pg-alueet .price-foot-link{display:flex;justify-content:center;margin-top:1.3rem}
.pg-alueet .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:step}
.pg-alueet .step{position:relative;padding-top:3.5rem}
.pg-alueet .step::before{counter-increment:step;content:"0" counter(step);
  position:absolute;top:0;left:0;font-family:var(--font-head);font-weight:600;font-size:1.05rem;
  color:var(--brand);background:var(--accent-soft);width:42px;height:42px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;}
.pg-alueet .step h3{font-size:1.1rem;margin-bottom:.5rem}
.pg-alueet .step p{font-size:.95rem}
.pg-alueet .step .line{position:absolute;top:21px;left:52px;right:-12px;height:1.5px;background:var(--line)}
.pg-alueet .step:last-child .line{display:none}
.pg-alueet .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-alueet .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-alueet .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-alueet .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-alueet .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-alueet .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-alueet .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-alueet .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-alueet .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-alueet .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-alueet .trust-box b{font-weight:600}
.pg-alueet .album{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}
.pg-alueet .album .img-ph{aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);padding:.6rem}
.pg-alueet .album .img-ph svg{width:24px;height:24px}
.pg-alueet .album .img-ph span{font-size:.66rem;max-width:14ch}
.pg-alueet .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-alueet .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-alueet .partner{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,4rem);position:relative;overflow:hidden}
.pg-alueet .partner::after{content:"";position:absolute;right:-8%;top:-30%;width:42vw;max-width:520px;height:42vw;max-height:520px;background:radial-gradient(circle,var(--brand),transparent 64%);opacity:.45;pointer-events:none}
.pg-alueet .partner .eyebrow{color:var(--brand-2)}
.pg-alueet .partner .eyebrow::before{background:var(--brand-2);opacity:.7}
.pg-alueet .partner h2{color:#fff;position:relative;z-index:1}
.pg-alueet .partner .lead{color:rgba(244,251,247,.82);max-width:54ch;position:relative;z-index:1;opacity:1}
.pg-alueet .tier-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;position:relative;z-index:1}
.pg-alueet .tier{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:1.4rem;backdrop-filter:blur(2px)}
.pg-alueet .tier .t-name{font-weight:600;font-size:1.05rem;color:#fff;margin-bottom:.2rem}
.pg-alueet .tier .t-price{font-family:var(--font-head);font-weight:600;font-size:1.7rem;color:var(--brand-2);margin-bottom:.6rem}
.pg-alueet .tier .t-price small{font-size:.8rem;color:rgba(244,251,247,.6);font-family:var(--font-body);font-weight:500}
.pg-alueet .tier p{font-size:.9rem;color:rgba(244,251,247,.72)}
.pg-alueet .partner-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;position:relative;z-index:1}
.pg-alueet .partner-foot p{color:rgba(244,251,247,.72);font-size:.95rem}
.pg-alueet .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-alueet .faq-item{border-bottom:1px solid var(--line)}
.pg-alueet .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-alueet .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-alueet .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-alueet .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-alueet .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-alueet .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-alueet .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-alueet .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-alueet .cta-left h2{margin-bottom:1rem}
.pg-alueet .cta-left .lead{margin-bottom:1.7rem}
.pg-alueet .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-alueet .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-alueet .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-alueet .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-alueet .contact-alt .ic svg{width:20px;height:20px}
.pg-alueet .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-alueet .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-alueet .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-alueet .field{margin-bottom:1rem}
.pg-alueet .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-alueet .field label .req{color:var(--brand)}
.pg-alueet .field input, .pg-alueet .field select, .pg-alueet .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-alueet .field input:focus, .pg-alueet .field select:focus, .pg-alueet .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-alueet .field textarea{resize:vertical;min-height:120px}
.pg-alueet .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-alueet .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-alueet .form-note a{color:var(--brand);text-decoration:underline}
.pg-alueet .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-alueet .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-alueet .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-alueet .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-alueet .form-success .check svg{width:30px;height:30px}
.pg-alueet .form-success h3{margin-bottom:.5rem}
.pg-alueet .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-alueet .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-alueet .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-alueet .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-alueet .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-alueet .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-alueet .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-alueet .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-alueet .foot-col a:hover{color:var(--brand-2)}
.pg-alueet .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-alueet .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-alueet .foot-legal button, .pg-alueet .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-alueet .foot-legal button:hover, .pg-alueet .foot-legal a:hover{color:var(--brand-2)}
.pg-alueet .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-alueet .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-alueet .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-alueet .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-alueet .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-alueet .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-alueet .ai-seo b{color:var(--ink);font-weight:600}
.pg-alueet .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-alueet .sticky-bar.show{transform:translateY(0)}
.pg-alueet .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-alueet .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-alueet .sticky-bar a svg{width:19px;height:19px}
.pg-alueet .sticky-bar a.call svg{color:var(--brand)}
.pg-alueet .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-alueet .cookie.show{transform:translateY(0)}
.pg-alueet .cookie p{font-size:.9rem;color:var(--ink)}
.pg-alueet .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-alueet .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-alueet .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-alueet .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-alueet .modal.open{display:flex}
.pg-alueet .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-alueet .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-alueet .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-alueet .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-alueet .modal-box p, .pg-alueet .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-alueet .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-alueet .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-alueet .modal-close svg{width:22px;height:22px}
.pg-alueet .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-alueet .reveal.is-visible{opacity:1;transform:none}
.pg-alueet .reveal.d1{transition-delay:.08s}
.pg-alueet .reveal.d2{transition-delay:.16s}
.pg-alueet .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-alueet .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-alueet .hero-visual{max-width:520px}.pg-alueet .feat-grid{grid-template-columns:1fr 1fr}.pg-alueet .steps{grid-template-columns:1fr 1fr;gap:1.6rem 1.2rem}.pg-alueet .step .line{display:none}.pg-alueet .ref-grid{grid-template-columns:1fr}.pg-alueet .cta-grid{grid-template-columns:1fr}.pg-alueet .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-alueet .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-alueet{font-size:16px}.pg-alueet .nav-links, .pg-alueet .nav-phone{display:none}.pg-alueet .burger{display:flex}.pg-alueet .nav-actions .btn{display:none}.pg-alueet .two-cards{grid-template-columns:1fr}.pg-alueet .feat-grid{grid-template-columns:1fr}.pg-alueet .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-alueet .price-card.featured{transform:none;order:-1}.pg-alueet .price-card.featured:hover{transform:translateY(-4px)}.pg-alueet .steps{grid-template-columns:1fr}.pg-alueet .tier-row{grid-template-columns:1fr}.pg-alueet .field-row{grid-template-columns:1fr}.pg-alueet .ref-stats{gap:1.4rem}.pg-alueet .foot-grid{grid-template-columns:1fr 1fr}.pg-alueet .sticky-bar{display:grid}body.pg-alueet{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-alueet .cookie{bottom:72px}.pg-alueet section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-alueet .foot-grid{grid-template-columns:1fr}.pg-alueet .hero-cta{flex-direction:column}.pg-alueet .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-alueet, .pg-alueet *, .pg-alueet *::before, .pg-alueet *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-alueet .reveal{opacity:1;transform:none}}
.pg-alueet a:focus-visible, .pg-alueet button:focus-visible, .pg-alueet input:focus-visible, .pg-alueet select:focus-visible, .pg-alueet textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-alueet .img-ph{overflow:hidden}
.pg-alueet .avatar-ph{position:relative;overflow:hidden}
.pg-alueet .img-ph>img.ph-img, .pg-alueet .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-alueet .avatar-ph>img.ph-img{object-position:center 20%}
.pg-alueet .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-alueet .ai-seo .wrap{max-width:920px}
.pg-alueet .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-alueet .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-alueet .ai-seo p{max-width:78ch}
.pg-alueet .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-alueet .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-alueet .ai-facts a{color:var(--brand)}
.pg-alueet .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-alueet .nav-links a.active, .pg-alueet .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-alueet .nav-links a.active::after, .pg-alueet .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-alueet .mm-links a.active, .pg-alueet .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-etusivu ============ */
.pg-etusivu{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-etusivu{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-etusivu, .pg-etusivu *, .pg-etusivu *::before, .pg-etusivu *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-etusivu{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-etusivu img{max-width:100%;height:auto;display:block}
.pg-etusivu a{color:inherit;text-decoration:none}
.pg-etusivu button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-etusivu ul{list-style:none}
.pg-etusivu section{scroll-margin-top:84px}
.pg-etusivu h1, .pg-etusivu h2, .pg-etusivu h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-etusivu h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-etusivu h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-etusivu h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-etusivu .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-etusivu p{color:var(--muted)}
.pg-etusivu .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-etusivu .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-etusivu .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-etusivu .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-etusivu .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-etusivu .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-etusivu .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-etusivu .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-etusivu .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-etusivu .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-etusivu .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-etusivu .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-etusivu .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-etusivu .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-etusivu .btn-block{width:100%}
.pg-etusivu .btn .arrow{transition:transform .25s var(--ease)}
.pg-etusivu .btn:hover .arrow{transform:translateX(3px)}
.pg-etusivu .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-etusivu .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-etusivu .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-etusivu .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-etusivu .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-etusivu .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-etusivu .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-etusivu .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-etusivu .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-etusivu .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-etusivu .nav-phone:hover{color:var(--brand)}
.pg-etusivu .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-etusivu .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-etusivu .burger svg{width:24px;height:24px}
.pg-etusivu .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-etusivu .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-etusivu .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-etusivu .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-etusivu .mm-close svg{width:26px;height:26px}
.pg-etusivu .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-etusivu .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-etusivu .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-etusivu .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-etusivu .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-etusivu .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-etusivu .hero h1{margin-bottom:1.3rem}
.pg-etusivu .hero h1 .light{color:var(--muted);font-weight:400}
.pg-etusivu .hero-lead{max-width:40ch;margin-bottom:1.9rem}
.pg-etusivu .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-etusivu .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-etusivu .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-etusivu .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-etusivu .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-etusivu .chip b{font-weight:700;color:var(--brand)}
.pg-etusivu .hero-visual{position:relative}
.pg-etusivu .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-etusivu .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-etusivu .browser-bar .dots{display:flex;gap:.4em}
.pg-etusivu .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-etusivu .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-etusivu .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-etusivu .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-etusivu .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-etusivu .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-etusivu .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-etusivu .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-etusivu .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-etusivu .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-etusivu .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-etusivu .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-etusivu .aud-card h3{margin-bottom:.7rem}
.pg-etusivu .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-etusivu .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}
.pg-etusivu .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-etusivu .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-etusivu .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:1.8rem;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-etusivu .special-link:hover .arrow{transform:translateX(4px)}
.pg-etusivu .special-link .arrow{transition:transform .25s var(--ease)}
.pg-etusivu .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-etusivu .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-etusivu .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-etusivu .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-etusivu .feat .ic svg{width:22px;height:22px}
.pg-etusivu .feat h3{font-size:1.12rem}
.pg-etusivu .feat p{font-size:.96rem}
.pg-etusivu .feat.wide{grid-column:span 1}
.pg-etusivu .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-etusivu .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-etusivu .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-etusivu .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);
  transform:scale(1.015);}
.pg-etusivu .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-etusivu .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-etusivu .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-etusivu .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-etusivu .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-etusivu .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-etusivu .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-etusivu .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-etusivu .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-etusivu .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-etusivu .price-card .btn{margin-top:auto}
.pg-etusivu .price-note{text-align:center;max-width:620px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-etusivu .price-note b{color:var(--ink);font-weight:600}
.pg-etusivu .price-foot-link{display:flex;justify-content:center;margin-top:1.3rem}
.pg-etusivu .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:step}
.pg-etusivu .step{position:relative;padding-top:3.5rem}
.pg-etusivu .step::before{counter-increment:step;content:"0" counter(step);
  position:absolute;top:0;left:0;font-family:var(--font-head);font-weight:600;font-size:1.05rem;
  color:var(--brand);background:var(--accent-soft);width:42px;height:42px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;}
.pg-etusivu .step h3{font-size:1.1rem;margin-bottom:.5rem}
.pg-etusivu .step p{font-size:.95rem}
.pg-etusivu .step .line{position:absolute;top:21px;left:52px;right:-12px;height:1.5px;background:var(--line)}
.pg-etusivu .step:last-child .line{display:none}
.pg-etusivu .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-etusivu .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-etusivu .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-etusivu .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-etusivu .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-etusivu .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-etusivu .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-etusivu .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-etusivu .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-etusivu .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-etusivu .trust-box b{font-weight:600}
.pg-etusivu .album{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}
.pg-etusivu .album .img-ph{aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);padding:.6rem}
.pg-etusivu .album .img-ph svg{width:24px;height:24px}
.pg-etusivu .album .img-ph span{font-size:.66rem;max-width:14ch}
.pg-etusivu .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-etusivu .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-etusivu .partner{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,4rem);position:relative;overflow:hidden}
.pg-etusivu .partner::after{content:"";position:absolute;right:-8%;top:-30%;width:42vw;max-width:520px;height:42vw;max-height:520px;background:radial-gradient(circle,var(--brand),transparent 64%);opacity:.45;pointer-events:none}
.pg-etusivu .partner .eyebrow{color:var(--brand-2)}
.pg-etusivu .partner .eyebrow::before{background:var(--brand-2);opacity:.7}
.pg-etusivu .partner h2{color:#fff;position:relative;z-index:1}
.pg-etusivu .partner .lead{color:rgba(244,251,247,.82);max-width:54ch;position:relative;z-index:1;opacity:1}
.pg-etusivu .tier-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;position:relative;z-index:1}
.pg-etusivu .tier{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:1.4rem;backdrop-filter:blur(2px)}
.pg-etusivu .tier .t-name{font-weight:600;font-size:1.05rem;color:#fff;margin-bottom:.2rem}
.pg-etusivu .tier .t-price{font-family:var(--font-head);font-weight:600;font-size:1.7rem;color:var(--brand-2);margin-bottom:.6rem}
.pg-etusivu .tier .t-price small{font-size:.8rem;color:rgba(244,251,247,.6);font-family:var(--font-body);font-weight:500}
.pg-etusivu .tier p{font-size:.9rem;color:rgba(244,251,247,.72)}
.pg-etusivu .partner-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;position:relative;z-index:1}
.pg-etusivu .partner-foot p{color:rgba(244,251,247,.72);font-size:.95rem}
.pg-etusivu .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-etusivu .faq-item{border-bottom:1px solid var(--line)}
.pg-etusivu .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-etusivu .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-etusivu .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-etusivu .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-etusivu .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-etusivu .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-etusivu .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-etusivu .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-etusivu .cta-left h2{margin-bottom:1rem}
.pg-etusivu .cta-left .lead{margin-bottom:1.7rem}
.pg-etusivu .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-etusivu .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-etusivu .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-etusivu .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-etusivu .contact-alt .ic svg{width:20px;height:20px}
.pg-etusivu .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-etusivu .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-etusivu .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-etusivu .field{margin-bottom:1rem}
.pg-etusivu .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-etusivu .field label .req{color:var(--brand)}
.pg-etusivu .field input, .pg-etusivu .field select, .pg-etusivu .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-etusivu .field input:focus, .pg-etusivu .field select:focus, .pg-etusivu .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-etusivu .field textarea{resize:vertical;min-height:120px}
.pg-etusivu .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-etusivu .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-etusivu .form-note a{color:var(--brand);text-decoration:underline}
.pg-etusivu .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-etusivu .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-etusivu .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-etusivu .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-etusivu .form-success .check svg{width:30px;height:30px}
.pg-etusivu .form-success h3{margin-bottom:.5rem}
.pg-etusivu .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-etusivu .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-etusivu .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-etusivu .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-etusivu .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-etusivu .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-etusivu .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-etusivu .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-etusivu .foot-col a:hover{color:var(--brand-2)}
.pg-etusivu .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-etusivu .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-etusivu .foot-legal button, .pg-etusivu .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-etusivu .foot-legal button:hover, .pg-etusivu .foot-legal a:hover{color:var(--brand-2)}
.pg-etusivu .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-etusivu .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-etusivu .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-etusivu .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-etusivu .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-etusivu .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-etusivu .ai-seo b{color:var(--ink);font-weight:600}
.pg-etusivu .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-etusivu .sticky-bar.show{transform:translateY(0)}
.pg-etusivu .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-etusivu .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-etusivu .sticky-bar a svg{width:19px;height:19px}
.pg-etusivu .sticky-bar a.call svg{color:var(--brand)}
.pg-etusivu .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-etusivu .cookie.show{transform:translateY(0)}
.pg-etusivu .cookie p{font-size:.9rem;color:var(--ink)}
.pg-etusivu .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-etusivu .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-etusivu .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-etusivu .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-etusivu .modal.open{display:flex}
.pg-etusivu .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-etusivu .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-etusivu .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-etusivu .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-etusivu .modal-box p, .pg-etusivu .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-etusivu .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-etusivu .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-etusivu .modal-close svg{width:22px;height:22px}
.pg-etusivu .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-etusivu .reveal.is-visible{opacity:1;transform:none}
.pg-etusivu .reveal.d1{transition-delay:.08s}
.pg-etusivu .reveal.d2{transition-delay:.16s}
.pg-etusivu .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-etusivu .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-etusivu .hero-visual{max-width:520px}.pg-etusivu .feat-grid{grid-template-columns:1fr 1fr}.pg-etusivu .steps{grid-template-columns:1fr 1fr;gap:1.6rem 1.2rem}.pg-etusivu .step .line{display:none}.pg-etusivu .ref-grid{grid-template-columns:1fr}.pg-etusivu .cta-grid{grid-template-columns:1fr}.pg-etusivu .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-etusivu .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-etusivu{font-size:16px}.pg-etusivu .nav-links, .pg-etusivu .nav-phone{display:none}.pg-etusivu .burger{display:flex}.pg-etusivu .nav-actions .btn{display:none}.pg-etusivu .two-cards{grid-template-columns:1fr}.pg-etusivu .feat-grid{grid-template-columns:1fr}.pg-etusivu .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-etusivu .price-card.featured{transform:none;order:-1}.pg-etusivu .price-card.featured:hover{transform:translateY(-4px)}.pg-etusivu .steps{grid-template-columns:1fr}.pg-etusivu .tier-row{grid-template-columns:1fr}.pg-etusivu .field-row{grid-template-columns:1fr}.pg-etusivu .ref-stats{gap:1.4rem}.pg-etusivu .foot-grid{grid-template-columns:1fr 1fr}.pg-etusivu .sticky-bar{display:grid}body.pg-etusivu{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-etusivu .cookie{bottom:72px}.pg-etusivu section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-etusivu .foot-grid{grid-template-columns:1fr}.pg-etusivu .hero-cta{flex-direction:column}.pg-etusivu .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-etusivu, .pg-etusivu *, .pg-etusivu *::before, .pg-etusivu *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-etusivu .reveal{opacity:1;transform:none}}
.pg-etusivu a:focus-visible, .pg-etusivu button:focus-visible, .pg-etusivu input:focus-visible, .pg-etusivu select:focus-visible, .pg-etusivu textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-etusivu .img-ph{overflow:hidden}
.pg-etusivu .avatar-ph{position:relative;overflow:hidden}
.pg-etusivu .img-ph>img.ph-img, .pg-etusivu .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-etusivu .avatar-ph>img.ph-img{object-position:center 20%}
.pg-etusivu .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-etusivu .ai-seo .wrap{max-width:920px}
.pg-etusivu .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-etusivu .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-etusivu .ai-seo p{max-width:78ch}
.pg-etusivu .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-etusivu .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-etusivu .ai-facts a{color:var(--brand)}
.pg-etusivu .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-etusivu .nav-links a.active, .pg-etusivu .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-etusivu .nav-links a.active::after, .pg-etusivu .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-etusivu .mm-links a.active, .pg-etusivu .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-hinnat ============ */
.pg-hinnat{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-hinnat{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-hinnat, .pg-hinnat *, .pg-hinnat *::before, .pg-hinnat *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-hinnat{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-hinnat img{max-width:100%;height:auto;display:block}
.pg-hinnat a{color:inherit;text-decoration:none}
.pg-hinnat button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-hinnat ul{list-style:none}
.pg-hinnat section{scroll-margin-top:84px}
.pg-hinnat h1, .pg-hinnat h2, .pg-hinnat h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-hinnat h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-hinnat h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-hinnat h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-hinnat .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-hinnat p{color:var(--muted)}
.pg-hinnat .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-hinnat .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-hinnat .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-hinnat .section-tight{padding:clamp(2.6rem,5vw,4rem) 0}
.pg-hinnat .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-hinnat .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-hinnat .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-hinnat .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-hinnat .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-hinnat .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-hinnat .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-hinnat .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-hinnat .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-hinnat .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-hinnat .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-hinnat .btn-block{width:100%}
.pg-hinnat .btn .arrow{transition:transform .25s var(--ease)}
.pg-hinnat .btn:hover .arrow{transform:translateX(3px)}
.pg-hinnat .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-hinnat .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-hinnat .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-hinnat .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-hinnat .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-hinnat .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-hinnat .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-hinnat .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-hinnat .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-hinnat .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-hinnat .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-hinnat .nav-phone:hover{color:var(--brand)}
.pg-hinnat .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-hinnat .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-hinnat .burger svg{width:24px;height:24px}
.pg-hinnat .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-hinnat .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-hinnat .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-hinnat .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-hinnat .mm-close svg{width:26px;height:26px}
.pg-hinnat .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-hinnat .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-hinnat .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-hinnat .hero-price{position:relative;padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(2rem,4vw,3rem);overflow:hidden;text-align:center}
.pg-hinnat .hero-price::before{content:"";position:absolute;top:-40%;left:50%;transform:translateX(-50%);width:80vw;height:60vw;max-width:900px;max-height:680px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 60%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-hinnat .hero-price .wrap{position:relative;z-index:1}
.pg-hinnat .hero-price .eyebrow{justify-content:center}
.pg-hinnat .hero-price h1{margin:0 auto 1.2rem;max-width:16ch}
.pg-hinnat .hero-price .lead{max-width:60ch;margin:0 auto 1.8rem}
.pg-hinnat .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:1.9rem}
.pg-hinnat .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.88rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.45em .95em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-hinnat .chip svg{width:16px;height:16px;color:var(--brand);flex-shrink:0}
.pg-hinnat .jump{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}
.pg-hinnat .jump a{display:inline-flex;align-items:center;gap:.5em;font-size:.92rem;font-weight:600;color:var(--brand);background:var(--accent-soft);border:1px solid transparent;padding:.55em 1.05em;border-radius:100px;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s}
.pg-hinnat .jump a:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:color-mix(in srgb,var(--brand) 25%,transparent)}
.pg-hinnat .group-head{display:flex;align-items:flex-start;gap:1rem;max-width:760px;margin-bottom:clamp(1.8rem,3.5vw,2.6rem)}
.pg-hinnat .group-head .gnum{flex-shrink:0;font-family:var(--font-head);font-weight:600;font-size:1.05rem;color:var(--brand);background:var(--accent-soft);width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-top:.2rem}
.pg-hinnat .group-head h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}
.pg-hinnat .group-head p{margin-top:.7rem;font-size:1.05rem}
.pg-hinnat .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-hinnat .pricing.two{grid-template-columns:repeat(2,1fr);max-width:760px}
.pg-hinnat .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-hinnat .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-hinnat .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);
  transform:scale(1.015);}
.pg-hinnat .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-hinnat .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-hinnat .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-hinnat .price-tag{display:flex;align-items:baseline;gap:.18em;margin:.5rem 0 .2rem;flex-wrap:wrap}
.pg-hinnat .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-hinnat .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-hinnat .price-tag .per{font-size:1rem;font-weight:600;color:var(--muted);margin-left:.1em}
.pg-hinnat .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-hinnat .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-hinnat .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-hinnat .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-hinnat .price-card .btn{margin-top:auto}
.pg-hinnat .price-note{max-width:680px;margin:1.8rem auto 0;font-size:.97rem;color:var(--muted);text-align:center}
.pg-hinnat .price-note b{color:var(--ink);font-weight:600}
.pg-hinnat .price-foot-link{display:flex;justify-content:center;margin-top:1.3rem}
.pg-hinnat .special-link{display:inline-flex;align-items:center;gap:.4em;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-hinnat .special-link:hover .arrow{transform:translateX(4px)}
.pg-hinnat .special-link .arrow{transition:transform .25s var(--ease)}
.pg-hinnat .tax-note{max-width:680px;margin:.7rem auto 0;text-align:center;font-size:.85rem;color:var(--muted)}
.pg-hinnat .addon-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin-top:1.4rem}
.pg-hinnat .addon{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem 1.4rem;transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-hinnat .addon:hover{border-color:color-mix(in srgb,var(--brand) 30%,var(--line));transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-hinnat .addon .ad-name{font-weight:600;color:var(--ink);font-size:1.05rem}
.pg-hinnat .addon .ad-desc{font-size:.9rem;color:var(--muted);margin-top:.25rem;max-width:38ch}
.pg-hinnat .addon .ad-price{font-family:var(--font-head);font-weight:600;font-size:1.35rem;color:var(--brand);white-space:nowrap}
.pg-hinnat .addon .ad-price small{display:block;text-align:right;font-family:var(--font-body);font-size:.72rem;font-weight:500;color:var(--muted);margin-top:.1rem}
.pg-hinnat .ptable-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.pg-hinnat .ptable{width:100%;border-collapse:collapse}
.pg-hinnat .ptable caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pg-hinnat .ptable th, .pg-hinnat .ptable td{text-align:left;padding:1.05rem 1.4rem;border-bottom:1px solid var(--line);vertical-align:top}
.pg-hinnat .ptable thead th{background:var(--accent-soft);color:var(--ink);font-weight:700;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.pg-hinnat .ptable thead th:last-child{text-align:right}
.pg-hinnat .ptable tbody tr:last-child td{border-bottom:none}
.pg-hinnat .ptable tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 35%,var(--surface))}
.pg-hinnat .ptable .svc{font-weight:600;color:var(--ink);font-size:1rem}
.pg-hinnat .ptable .svc small{display:block;font-weight:400;color:var(--muted);font-size:.88rem;margin-top:.2rem;max-width:52ch}
.pg-hinnat .ptable td.price{text-align:right;font-family:var(--font-head);font-weight:600;font-size:1.1rem;color:var(--brand);white-space:nowrap}
.pg-hinnat .ptable td.price.soft{color:var(--muted);font-family:var(--font-body);font-weight:600;font-size:.95rem}
.pg-hinnat .philo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-hinnat .philo{background:var(--surface);padding:clamp(1.5rem,2.8vw,2.2rem);display:flex;flex-direction:column;gap:.6rem;transition:background .3s}
.pg-hinnat .philo:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-hinnat .philo .ic{width:44px;height:44px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-hinnat .philo .ic svg{width:22px;height:22px}
.pg-hinnat .philo h3{font-size:1.12rem}
.pg-hinnat .philo p{font-size:.96rem}
.pg-hinnat .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-hinnat .faq-item{border-bottom:1px solid var(--line)}
.pg-hinnat .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-hinnat .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-hinnat .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-hinnat .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-hinnat .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-hinnat .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-hinnat .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-hinnat .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-hinnat .cta-left h2{margin-bottom:1rem}
.pg-hinnat .cta-left .lead{margin-bottom:1.7rem}
.pg-hinnat .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-hinnat .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-hinnat .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-hinnat .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-hinnat .contact-alt .ic svg{width:20px;height:20px}
.pg-hinnat .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-hinnat .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-hinnat .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-hinnat .field{margin-bottom:1rem}
.pg-hinnat .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-hinnat .field label .req{color:var(--brand)}
.pg-hinnat .field input, .pg-hinnat .field select, .pg-hinnat .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-hinnat .field input:focus, .pg-hinnat .field select:focus, .pg-hinnat .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-hinnat .field textarea{resize:vertical;min-height:120px}
.pg-hinnat .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-hinnat .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-hinnat .form-note a{color:var(--brand);text-decoration:underline}
.pg-hinnat .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-hinnat .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-hinnat .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-hinnat .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-hinnat .form-success .check svg{width:30px;height:30px}
.pg-hinnat .form-success h3{margin-bottom:.5rem}
.pg-hinnat .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-hinnat .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-hinnat .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-hinnat .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-hinnat .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-hinnat .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-hinnat .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-hinnat .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-hinnat .foot-col a:hover{color:var(--brand-2)}
.pg-hinnat .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-hinnat .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-hinnat .foot-legal button, .pg-hinnat .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-hinnat .foot-legal button:hover, .pg-hinnat .foot-legal a:hover{color:var(--brand-2)}
.pg-hinnat .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-hinnat .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-hinnat .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-hinnat .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-hinnat .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-hinnat .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-hinnat .ai-seo b{color:var(--ink);font-weight:600}
.pg-hinnat .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-hinnat .sticky-bar.show{transform:translateY(0)}
.pg-hinnat .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-hinnat .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-hinnat .sticky-bar a svg{width:19px;height:19px}
.pg-hinnat .sticky-bar a.call svg{color:var(--brand)}
.pg-hinnat .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-hinnat .cookie.show{transform:translateY(0)}
.pg-hinnat .cookie p{font-size:.9rem;color:var(--ink)}
.pg-hinnat .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-hinnat .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-hinnat .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-hinnat .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-hinnat .modal.open{display:flex}
.pg-hinnat .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-hinnat .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-hinnat .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-hinnat .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-hinnat .modal-box p, .pg-hinnat .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-hinnat .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-hinnat .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-hinnat .modal-close svg{width:22px;height:22px}
.pg-hinnat .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-hinnat .reveal.is-visible{opacity:1;transform:none}
.pg-hinnat .reveal.d1{transition-delay:.08s}
.pg-hinnat .reveal.d2{transition-delay:.16s}
.pg-hinnat .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-hinnat .philo-grid{grid-template-columns:1fr 1fr}.pg-hinnat .cta-grid{grid-template-columns:1fr}.pg-hinnat .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-hinnat .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-hinnat{font-size:16px}.pg-hinnat .nav-links, .pg-hinnat .nav-phone{display:none}.pg-hinnat .burger{display:flex}.pg-hinnat .nav-actions .btn{display:none}.pg-hinnat .pricing, .pg-hinnat .pricing.two{grid-template-columns:1fr;gap:1.6rem;max-width:480px;margin-left:auto;margin-right:auto}.pg-hinnat .price-card.featured{transform:none;order:-1}.pg-hinnat .price-card.featured:hover{transform:translateY(-4px)}.pg-hinnat .addon-grid{grid-template-columns:1fr}.pg-hinnat .philo-grid{grid-template-columns:1fr}.pg-hinnat .field-row{grid-template-columns:1fr}.pg-hinnat .foot-grid{grid-template-columns:1fr 1fr}.pg-hinnat .sticky-bar{display:grid}body.pg-hinnat{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-hinnat .cookie{bottom:72px}.pg-hinnat section{scroll-margin-top:72px}.pg-hinnat .ptable th, .pg-hinnat .ptable td{padding:.9rem 1rem}.pg-hinnat .ptable .svc small{max-width:none}}
@media(max-width:420px){.pg-hinnat .foot-grid{grid-template-columns:1fr}.pg-hinnat .group-head{gap:.7rem}.pg-hinnat .group-head .gnum{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.pg-hinnat, .pg-hinnat *, .pg-hinnat *::before, .pg-hinnat *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-hinnat .reveal{opacity:1;transform:none}}
.pg-hinnat a:focus-visible, .pg-hinnat button:focus-visible, .pg-hinnat input:focus-visible, .pg-hinnat select:focus-visible, .pg-hinnat textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-hinnat .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-hinnat .ai-seo .wrap{max-width:920px}
.pg-hinnat .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-hinnat .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-hinnat .ai-seo p{max-width:78ch}
.pg-hinnat .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-hinnat .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-hinnat .ai-facts a{color:var(--brand)}
.pg-hinnat .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-hinnat .nav-links a.active, .pg-hinnat .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-hinnat .nav-links a.active::after, .pg-hinnat .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-hinnat .mm-links a.active, .pg-hinnat .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-kuljettajapalvelut ============ */
.pg-kuljettajapalvelut{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-kuljettajapalvelut{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-kuljettajapalvelut, .pg-kuljettajapalvelut *, .pg-kuljettajapalvelut *::before, .pg-kuljettajapalvelut *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-kuljettajapalvelut{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-kuljettajapalvelut img{max-width:100%;height:auto;display:block}
.pg-kuljettajapalvelut a{color:inherit;text-decoration:none}
.pg-kuljettajapalvelut button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-kuljettajapalvelut ul{list-style:none}
.pg-kuljettajapalvelut section{scroll-margin-top:84px}
.pg-kuljettajapalvelut h1, .pg-kuljettajapalvelut h2, .pg-kuljettajapalvelut h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-kuljettajapalvelut h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-kuljettajapalvelut h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-kuljettajapalvelut h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-kuljettajapalvelut .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-kuljettajapalvelut p{color:var(--muted)}
.pg-kuljettajapalvelut .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-kuljettajapalvelut .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-kuljettajapalvelut .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-kuljettajapalvelut .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-kuljettajapalvelut .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-kuljettajapalvelut .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-kuljettajapalvelut .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-kuljettajapalvelut .crumbs{font-size:.86rem;color:var(--muted);padding-top:1.4rem}
.pg-kuljettajapalvelut .crumbs a{color:var(--brand);font-weight:500}
.pg-kuljettajapalvelut .crumbs a:hover{text-decoration:underline}
.pg-kuljettajapalvelut .crumbs span{opacity:.5;margin:0 .45em}
.pg-kuljettajapalvelut .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-kuljettajapalvelut .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-kuljettajapalvelut .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-kuljettajapalvelut .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-kuljettajapalvelut .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-kuljettajapalvelut .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-kuljettajapalvelut .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-kuljettajapalvelut .btn-block{width:100%}
.pg-kuljettajapalvelut .btn .arrow{transition:transform .25s var(--ease)}
.pg-kuljettajapalvelut .btn:hover .arrow{transform:translateX(3px)}
.pg-kuljettajapalvelut .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-kuljettajapalvelut .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-kuljettajapalvelut .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-kuljettajapalvelut .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-kuljettajapalvelut .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-kuljettajapalvelut .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-kuljettajapalvelut .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-kuljettajapalvelut .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-kuljettajapalvelut .nav-back{display:inline-flex;align-items:center;gap:.4em}
.pg-kuljettajapalvelut .nav-back svg{width:15px;height:15px}
.pg-kuljettajapalvelut .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-kuljettajapalvelut .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-kuljettajapalvelut .nav-phone:hover{color:var(--brand)}
.pg-kuljettajapalvelut .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-kuljettajapalvelut .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-kuljettajapalvelut .burger svg{width:24px;height:24px}
.pg-kuljettajapalvelut .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-kuljettajapalvelut .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-kuljettajapalvelut .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-kuljettajapalvelut .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-kuljettajapalvelut .mm-close svg{width:26px;height:26px}
.pg-kuljettajapalvelut .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-kuljettajapalvelut .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-kuljettajapalvelut .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-kuljettajapalvelut .hero{position:relative;padding:clamp(2rem,5vw,4rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-kuljettajapalvelut .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-kuljettajapalvelut .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-kuljettajapalvelut .hero h1{margin-bottom:1.3rem}
.pg-kuljettajapalvelut .hero h1 .light{color:var(--muted);font-weight:400}
.pg-kuljettajapalvelut .hero-lead{max-width:42ch;margin-bottom:1.9rem}
.pg-kuljettajapalvelut .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-kuljettajapalvelut .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-kuljettajapalvelut .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-kuljettajapalvelut .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-kuljettajapalvelut .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-kuljettajapalvelut .chip b{font-weight:700;color:var(--brand)}
.pg-kuljettajapalvelut .hero-visual{position:relative}
.pg-kuljettajapalvelut .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-kuljettajapalvelut .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-kuljettajapalvelut .browser-bar .dots{display:flex;gap:.4em}
.pg-kuljettajapalvelut .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-kuljettajapalvelut .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-kuljettajapalvelut .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-kuljettajapalvelut .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-kuljettajapalvelut .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-kuljettajapalvelut .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-kuljettajapalvelut .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-kuljettajapalvelut .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-kuljettajapalvelut .why-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,3.5vw,3.2rem);align-items:center}
.pg-kuljettajapalvelut .why-points{display:flex;flex-direction:column;gap:1.1rem;margin-top:1.6rem}
.pg-kuljettajapalvelut .why-point{display:flex;gap:.9em;align-items:flex-start}
.pg-kuljettajapalvelut .why-point .ic{width:40px;height:40px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-kuljettajapalvelut .why-point .ic svg{width:21px;height:21px}
.pg-kuljettajapalvelut .why-point h3{font-size:1.08rem;margin-bottom:.25rem}
.pg-kuljettajapalvelut .why-point p{font-size:.97rem}
.pg-kuljettajapalvelut .stat-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.3rem);box-shadow:var(--shadow-sm)}
.pg-kuljettajapalvelut .stat-panel .big{font-family:var(--font-head);font-weight:600;font-size:clamp(2.6rem,6vw,3.6rem);color:var(--brand);line-height:1;letter-spacing:-.02em}
.pg-kuljettajapalvelut .stat-panel .big-sub{font-size:1rem;color:var(--ink);margin-top:.5rem;font-weight:500}
.pg-kuljettajapalvelut .stat-panel .divider{height:1px;background:var(--line);margin:1.5rem 0}
.pg-kuljettajapalvelut .stat-panel p{font-size:.97rem}
.pg-kuljettajapalvelut .stat-panel .src{font-size:.78rem;color:var(--muted);opacity:.75;margin-top:1rem}
.pg-kuljettajapalvelut .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-kuljettajapalvelut .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-kuljettajapalvelut .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-kuljettajapalvelut .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-kuljettajapalvelut .feat .ic svg{width:22px;height:22px}
.pg-kuljettajapalvelut .feat h3{font-size:1.12rem}
.pg-kuljettajapalvelut .feat p{font-size:.96rem}
.pg-kuljettajapalvelut .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-kuljettajapalvelut .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-kuljettajapalvelut .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-kuljettajapalvelut .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-kuljettajapalvelut .aud-card h3{margin-bottom:.7rem}
.pg-kuljettajapalvelut .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-kuljettajapalvelut .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem}
.pg-kuljettajapalvelut .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-kuljettajapalvelut .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-kuljettajapalvelut .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:auto;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-kuljettajapalvelut .special-link:hover .arrow{transform:translateX(4px)}
.pg-kuljettajapalvelut .special-link .arrow{transition:transform .25s var(--ease)}
.pg-kuljettajapalvelut .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-kuljettajapalvelut .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-kuljettajapalvelut .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-kuljettajapalvelut .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-kuljettajapalvelut .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-kuljettajapalvelut .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-kuljettajapalvelut .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-kuljettajapalvelut .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-kuljettajapalvelut .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-kuljettajapalvelut .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-kuljettajapalvelut .trust-box b{font-weight:600}
.pg-kuljettajapalvelut .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-kuljettajapalvelut .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-kuljettajapalvelut .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-kuljettajapalvelut .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-kuljettajapalvelut .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-kuljettajapalvelut .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);transform:scale(1.015)}
.pg-kuljettajapalvelut .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-kuljettajapalvelut .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-kuljettajapalvelut .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-kuljettajapalvelut .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-kuljettajapalvelut .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-kuljettajapalvelut .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-kuljettajapalvelut .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-kuljettajapalvelut .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-kuljettajapalvelut .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-kuljettajapalvelut .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-kuljettajapalvelut .price-card .btn{margin-top:auto}
.pg-kuljettajapalvelut .price-note{text-align:center;max-width:640px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-kuljettajapalvelut .price-note b{color:var(--ink);font-weight:600}
.pg-kuljettajapalvelut .price-foot-link{display:flex;justify-content:center;gap:1.4rem;flex-wrap:wrap;margin-top:1.3rem}
.pg-kuljettajapalvelut .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-kuljettajapalvelut .faq-item{border-bottom:1px solid var(--line)}
.pg-kuljettajapalvelut .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-kuljettajapalvelut .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-kuljettajapalvelut .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-kuljettajapalvelut .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-kuljettajapalvelut .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-kuljettajapalvelut .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-kuljettajapalvelut .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-kuljettajapalvelut .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-kuljettajapalvelut .cta-left h2{margin-bottom:1rem}
.pg-kuljettajapalvelut .cta-left .lead{margin-bottom:1.7rem}
.pg-kuljettajapalvelut .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-kuljettajapalvelut .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-kuljettajapalvelut .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-kuljettajapalvelut .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-kuljettajapalvelut .contact-alt .ic svg{width:20px;height:20px}
.pg-kuljettajapalvelut .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-kuljettajapalvelut .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-kuljettajapalvelut .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-kuljettajapalvelut .field{margin-bottom:1rem}
.pg-kuljettajapalvelut .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-kuljettajapalvelut .field label .req{color:var(--brand)}
.pg-kuljettajapalvelut .field input, .pg-kuljettajapalvelut .field select, .pg-kuljettajapalvelut .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-kuljettajapalvelut .field input:focus, .pg-kuljettajapalvelut .field select:focus, .pg-kuljettajapalvelut .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-kuljettajapalvelut .field textarea{resize:vertical;min-height:120px}
.pg-kuljettajapalvelut .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-kuljettajapalvelut .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-kuljettajapalvelut .form-note a{color:var(--brand);text-decoration:underline}
.pg-kuljettajapalvelut .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-kuljettajapalvelut .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-kuljettajapalvelut .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-kuljettajapalvelut .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-kuljettajapalvelut .form-success .check svg{width:30px;height:30px}
.pg-kuljettajapalvelut .form-success h3{margin-bottom:.5rem}
.pg-kuljettajapalvelut .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-kuljettajapalvelut .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-kuljettajapalvelut .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-kuljettajapalvelut .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-kuljettajapalvelut .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-kuljettajapalvelut .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-kuljettajapalvelut .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-kuljettajapalvelut .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-kuljettajapalvelut .foot-col a:hover{color:var(--brand-2)}
.pg-kuljettajapalvelut .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-kuljettajapalvelut .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-kuljettajapalvelut .foot-legal button, .pg-kuljettajapalvelut .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-kuljettajapalvelut .foot-legal button:hover, .pg-kuljettajapalvelut .foot-legal a:hover{color:var(--brand-2)}
.pg-kuljettajapalvelut .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-kuljettajapalvelut .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-kuljettajapalvelut .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-kuljettajapalvelut .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-kuljettajapalvelut .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-kuljettajapalvelut .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-kuljettajapalvelut .ai-seo b{color:var(--ink);font-weight:600}
.pg-kuljettajapalvelut .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-kuljettajapalvelut .sticky-bar.show{transform:translateY(0)}
.pg-kuljettajapalvelut .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-kuljettajapalvelut .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-kuljettajapalvelut .sticky-bar a svg{width:19px;height:19px}
.pg-kuljettajapalvelut .sticky-bar a.call svg{color:var(--brand)}
.pg-kuljettajapalvelut .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-kuljettajapalvelut .cookie.show{transform:translateY(0)}
.pg-kuljettajapalvelut .cookie p{font-size:.9rem;color:var(--ink)}
.pg-kuljettajapalvelut .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-kuljettajapalvelut .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-kuljettajapalvelut .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-kuljettajapalvelut .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-kuljettajapalvelut .modal.open{display:flex}
.pg-kuljettajapalvelut .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-kuljettajapalvelut .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-kuljettajapalvelut .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-kuljettajapalvelut .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-kuljettajapalvelut .modal-box p, .pg-kuljettajapalvelut .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-kuljettajapalvelut .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-kuljettajapalvelut .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-kuljettajapalvelut .modal-close svg{width:22px;height:22px}
.pg-kuljettajapalvelut .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-kuljettajapalvelut .reveal.is-visible{opacity:1;transform:none}
.pg-kuljettajapalvelut .reveal.d1{transition-delay:.08s}
.pg-kuljettajapalvelut .reveal.d2{transition-delay:.16s}
.pg-kuljettajapalvelut .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-kuljettajapalvelut .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-kuljettajapalvelut .hero-visual{max-width:520px}.pg-kuljettajapalvelut .why-grid{grid-template-columns:1fr;gap:2rem}.pg-kuljettajapalvelut .feat-grid{grid-template-columns:1fr 1fr}.pg-kuljettajapalvelut .ref-grid{grid-template-columns:1fr}.pg-kuljettajapalvelut .cta-grid{grid-template-columns:1fr}.pg-kuljettajapalvelut .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-kuljettajapalvelut .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-kuljettajapalvelut{font-size:16px}.pg-kuljettajapalvelut .nav-links, .pg-kuljettajapalvelut .nav-phone{display:none}.pg-kuljettajapalvelut .burger{display:flex}.pg-kuljettajapalvelut .nav-actions .btn{display:none}.pg-kuljettajapalvelut .two-cards{grid-template-columns:1fr}.pg-kuljettajapalvelut .feat-grid{grid-template-columns:1fr}.pg-kuljettajapalvelut .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-kuljettajapalvelut .price-card.featured{transform:none;order:-1}.pg-kuljettajapalvelut .price-card.featured:hover{transform:translateY(-4px)}.pg-kuljettajapalvelut .field-row{grid-template-columns:1fr}.pg-kuljettajapalvelut .ref-stats{gap:1.4rem}.pg-kuljettajapalvelut .foot-grid{grid-template-columns:1fr 1fr}.pg-kuljettajapalvelut .sticky-bar{display:grid}body.pg-kuljettajapalvelut{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-kuljettajapalvelut .cookie{bottom:72px}.pg-kuljettajapalvelut section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-kuljettajapalvelut .foot-grid{grid-template-columns:1fr}.pg-kuljettajapalvelut .hero-cta{flex-direction:column}.pg-kuljettajapalvelut .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-kuljettajapalvelut, .pg-kuljettajapalvelut *, .pg-kuljettajapalvelut *::before, .pg-kuljettajapalvelut *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-kuljettajapalvelut .reveal{opacity:1;transform:none}}
.pg-kuljettajapalvelut a:focus-visible, .pg-kuljettajapalvelut button:focus-visible, .pg-kuljettajapalvelut input:focus-visible, .pg-kuljettajapalvelut select:focus-visible, .pg-kuljettajapalvelut textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-kuljettajapalvelut .img-ph{overflow:hidden}
.pg-kuljettajapalvelut .avatar-ph{position:relative;overflow:hidden}
.pg-kuljettajapalvelut .img-ph>img.ph-img, .pg-kuljettajapalvelut .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-kuljettajapalvelut .avatar-ph>img.ph-img{object-position:center 20%}
.pg-kuljettajapalvelut .kp-note{margin-top:1.6rem;padding:1rem 1.3rem;background:var(--accent-soft);border-radius:var(--radius);font-size:.95rem;color:var(--ink);line-height:1.6}
.pg-kuljettajapalvelut .kp-note b{color:var(--brand)}
.pg-kuljettajapalvelut .kp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.2rem;margin-top:2.4rem}
.pg-kuljettajapalvelut .kp-card{display:flex;flex-direction:column;gap:.7rem;padding:1.6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s}
.pg-kuljettajapalvelut .kp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--brand)}
.pg-kuljettajapalvelut .kp-card .kp-ic{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--brand)}
.pg-kuljettajapalvelut .kp-card .kp-ic svg{width:24px;height:24px}
.pg-kuljettajapalvelut .kp-card h3{font-size:1.14rem}
.pg-kuljettajapalvelut .kp-card p{font-size:.95rem;color:var(--muted);flex:1;line-height:1.55}
.pg-kuljettajapalvelut .kp-card .kp-go{font-weight:600;color:var(--brand);font-size:.92rem;display:inline-flex;align-items:center;gap:.35em}
.pg-kuljettajapalvelut .kp-card:hover .kp-go{gap:.6em}
.pg-kuljettajapalvelut .kp-svc{border-top:1px solid var(--line)}
.pg-kuljettajapalvelut .kp-svc .num{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:.7rem}
.pg-kuljettajapalvelut .kp-grid{display:grid;grid-template-columns:1.25fr .95fr;gap:clamp(1.5rem,4vw,3rem);align-items:start;margin-top:.5rem}
@media(max-width:820px){.pg-kuljettajapalvelut .kp-grid{grid-template-columns:1fr}}
.pg-kuljettajapalvelut .kp-list{margin-top:1.3rem;display:grid;gap:.65rem}
.pg-kuljettajapalvelut .kp-list li{display:flex;gap:.6em;align-items:flex-start;color:var(--ink);font-size:.98rem;line-height:1.5}
.pg-kuljettajapalvelut .kp-list svg{flex:none;width:20px;height:20px;color:var(--brand);margin-top:2px}
.pg-kuljettajapalvelut .kp-pricebox{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.5rem 1.6rem;position:sticky;top:90px}
.pg-kuljettajapalvelut .kp-pricebox h4{font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.9rem}
.pg-kuljettajapalvelut .kp-prow{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}
.pg-kuljettajapalvelut .kp-prow:last-of-type{border-bottom:none}
.pg-kuljettajapalvelut .kp-prow .kp-plabel{color:var(--ink);font-size:.94rem}
.pg-kuljettajapalvelut .kp-prow .kp-pval{font-family:var(--font-head);font-weight:600;font-size:1.05rem;color:var(--brand);white-space:nowrap}
.pg-kuljettajapalvelut .kp-pfoot{margin-top:1rem;font-size:.84rem;color:var(--muted);line-height:1.5}
.pg-kuljettajapalvelut .kp-quals{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1.8rem}
@media(max-width:640px){.pg-kuljettajapalvelut .kp-quals{grid-template-columns:1fr}}
.pg-kuljettajapalvelut .kp-qual{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.6rem;box-shadow:var(--shadow-sm)}
.pg-kuljettajapalvelut .kp-qual h3{font-size:1.02rem;margin-bottom:.9rem}
.pg-kuljettajapalvelut .kp-qual ul{display:grid;gap:.55rem}
.pg-kuljettajapalvelut .kp-qual li{display:flex;gap:.5em;align-items:flex-start;font-size:.95rem;color:var(--ink)}
.pg-kuljettajapalvelut .kp-qual svg{flex:none;width:18px;height:18px;color:var(--brand);margin-top:3px}
.pg-kuljettajapalvelut .kp-area-chips{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.6rem 0}
.pg-kuljettajapalvelut .kp-area-chips span{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.9rem;color:var(--ink);font-weight:500}
.pg-kuljettajapalvelut .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-kuljettajapalvelut .ai-seo .wrap{max-width:920px}
.pg-kuljettajapalvelut .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-kuljettajapalvelut .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-kuljettajapalvelut .ai-seo p{max-width:78ch}
.pg-kuljettajapalvelut .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-kuljettajapalvelut .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-kuljettajapalvelut .ai-facts a{color:var(--brand)}
.pg-kuljettajapalvelut .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-kuljettajapalvelut .nav-links a.active, .pg-kuljettajapalvelut .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-kuljettajapalvelut .nav-links a.active::after, .pg-kuljettajapalvelut .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-kuljettajapalvelut .mm-links a.active, .pg-kuljettajapalvelut .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-laki ============ */
.pg-laki{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-laki{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-laki, .pg-laki *, .pg-laki *::before, .pg-laki *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-laki{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-laki img{max-width:100%;height:auto;display:block}
.pg-laki a{color:inherit;text-decoration:none}
.pg-laki button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-laki ul{list-style:none}
.pg-laki section{scroll-margin-top:84px}
.pg-laki h1, .pg-laki h2, .pg-laki h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-laki h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-laki h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-laki h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-laki .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-laki p{color:var(--muted)}
.pg-laki .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-laki .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-laki .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-laki .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-laki .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-laki .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-laki .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-laki .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-laki .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-laki .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-laki .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-laki .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-laki .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-laki .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-laki .btn-block{width:100%}
.pg-laki .btn .arrow{transition:transform .25s var(--ease)}
.pg-laki .btn:hover .arrow{transform:translateX(3px)}
.pg-laki .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-laki .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-laki .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-laki .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-laki .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-laki .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-laki .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-laki .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-laki .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-laki .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-laki .nav-phone:hover{color:var(--brand)}
.pg-laki .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-laki .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-laki .burger svg{width:24px;height:24px}
.pg-laki .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-laki .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-laki .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-laki .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-laki .mm-close svg{width:26px;height:26px}
.pg-laki .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-laki .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-laki .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-laki .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-laki .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-laki .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-laki .hero h1{margin-bottom:1.3rem}
.pg-laki .hero h1 .light{color:var(--muted);font-weight:400}
.pg-laki .hero-lead{max-width:40ch;margin-bottom:1.9rem}
.pg-laki .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-laki .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-laki .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-laki .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-laki .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-laki .chip b{font-weight:700;color:var(--brand)}
.pg-laki .hero-visual{position:relative}
.pg-laki .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-laki .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-laki .browser-bar .dots{display:flex;gap:.4em}
.pg-laki .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-laki .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-laki .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-laki .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-laki .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-laki .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-laki .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-laki .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-laki .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-laki .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-laki .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-laki .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-laki .aud-card h3{margin-bottom:.7rem}
.pg-laki .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-laki .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}
.pg-laki .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-laki .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-laki .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:1.8rem;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-laki .special-link:hover .arrow{transform:translateX(4px)}
.pg-laki .special-link .arrow{transition:transform .25s var(--ease)}
.pg-laki .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-laki .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-laki .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-laki .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-laki .feat .ic svg{width:22px;height:22px}
.pg-laki .feat h3{font-size:1.12rem}
.pg-laki .feat p{font-size:.96rem}
.pg-laki .feat.wide{grid-column:span 1}
.pg-laki .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-laki .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-laki .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-laki .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);
  transform:scale(1.015);}
.pg-laki .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-laki .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-laki .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-laki .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-laki .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-laki .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-laki .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-laki .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-laki .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-laki .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-laki .price-card .btn{margin-top:auto}
.pg-laki .price-note{text-align:center;max-width:620px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-laki .price-note b{color:var(--ink);font-weight:600}
.pg-laki .price-foot-link{display:flex;justify-content:center;margin-top:1.3rem}
.pg-laki .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:step}
.pg-laki .step{position:relative;padding-top:3.5rem}
.pg-laki .step::before{counter-increment:step;content:"0" counter(step);
  position:absolute;top:0;left:0;font-family:var(--font-head);font-weight:600;font-size:1.05rem;
  color:var(--brand);background:var(--accent-soft);width:42px;height:42px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;}
.pg-laki .step h3{font-size:1.1rem;margin-bottom:.5rem}
.pg-laki .step p{font-size:.95rem}
.pg-laki .step .line{position:absolute;top:21px;left:52px;right:-12px;height:1.5px;background:var(--line)}
.pg-laki .step:last-child .line{display:none}
.pg-laki .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-laki .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-laki .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-laki .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-laki .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-laki .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-laki .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-laki .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-laki .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-laki .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-laki .trust-box b{font-weight:600}
.pg-laki .album{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}
.pg-laki .album .img-ph{aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);padding:.6rem}
.pg-laki .album .img-ph svg{width:24px;height:24px}
.pg-laki .album .img-ph span{font-size:.66rem;max-width:14ch}
.pg-laki .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-laki .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-laki .partner{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,4rem);position:relative;overflow:hidden}
.pg-laki .partner::after{content:"";position:absolute;right:-8%;top:-30%;width:42vw;max-width:520px;height:42vw;max-height:520px;background:radial-gradient(circle,var(--brand),transparent 64%);opacity:.45;pointer-events:none}
.pg-laki .partner .eyebrow{color:var(--brand-2)}
.pg-laki .partner .eyebrow::before{background:var(--brand-2);opacity:.7}
.pg-laki .partner h2{color:#fff;position:relative;z-index:1}
.pg-laki .partner .lead{color:rgba(244,251,247,.82);max-width:54ch;position:relative;z-index:1;opacity:1}
.pg-laki .tier-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;position:relative;z-index:1}
.pg-laki .tier{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:1.4rem;backdrop-filter:blur(2px)}
.pg-laki .tier .t-name{font-weight:600;font-size:1.05rem;color:#fff;margin-bottom:.2rem}
.pg-laki .tier .t-price{font-family:var(--font-head);font-weight:600;font-size:1.7rem;color:var(--brand-2);margin-bottom:.6rem}
.pg-laki .tier .t-price small{font-size:.8rem;color:rgba(244,251,247,.6);font-family:var(--font-body);font-weight:500}
.pg-laki .tier p{font-size:.9rem;color:rgba(244,251,247,.72)}
.pg-laki .partner-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;position:relative;z-index:1}
.pg-laki .partner-foot p{color:rgba(244,251,247,.72);font-size:.95rem}
.pg-laki .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-laki .faq-item{border-bottom:1px solid var(--line)}
.pg-laki .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-laki .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-laki .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-laki .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-laki .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-laki .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-laki .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-laki .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-laki .cta-left h2{margin-bottom:1rem}
.pg-laki .cta-left .lead{margin-bottom:1.7rem}
.pg-laki .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-laki .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-laki .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-laki .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-laki .contact-alt .ic svg{width:20px;height:20px}
.pg-laki .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-laki .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-laki .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-laki .field{margin-bottom:1rem}
.pg-laki .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-laki .field label .req{color:var(--brand)}
.pg-laki .field input, .pg-laki .field select, .pg-laki .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-laki .field input:focus, .pg-laki .field select:focus, .pg-laki .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-laki .field textarea{resize:vertical;min-height:120px}
.pg-laki .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-laki .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-laki .form-note a{color:var(--brand);text-decoration:underline}
.pg-laki .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-laki .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-laki .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-laki .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-laki .form-success .check svg{width:30px;height:30px}
.pg-laki .form-success h3{margin-bottom:.5rem}
.pg-laki .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-laki .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-laki .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-laki .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-laki .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-laki .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-laki .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-laki .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-laki .foot-col a:hover{color:var(--brand-2)}
.pg-laki .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-laki .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-laki .foot-legal button, .pg-laki .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-laki .foot-legal button:hover, .pg-laki .foot-legal a:hover{color:var(--brand-2)}
.pg-laki .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-laki .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-laki .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-laki .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-laki .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-laki .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-laki .ai-seo b{color:var(--ink);font-weight:600}
.pg-laki .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-laki .sticky-bar.show{transform:translateY(0)}
.pg-laki .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-laki .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-laki .sticky-bar a svg{width:19px;height:19px}
.pg-laki .sticky-bar a.call svg{color:var(--brand)}
.pg-laki .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-laki .cookie.show{transform:translateY(0)}
.pg-laki .cookie p{font-size:.9rem;color:var(--ink)}
.pg-laki .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-laki .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-laki .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-laki .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-laki .modal.open{display:flex}
.pg-laki .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-laki .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-laki .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-laki .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-laki .modal-box p, .pg-laki .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-laki .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-laki .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-laki .modal-close svg{width:22px;height:22px}
.pg-laki .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-laki .reveal.is-visible{opacity:1;transform:none}
.pg-laki .reveal.d1{transition-delay:.08s}
.pg-laki .reveal.d2{transition-delay:.16s}
.pg-laki .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-laki .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-laki .hero-visual{max-width:520px}.pg-laki .feat-grid{grid-template-columns:1fr 1fr}.pg-laki .steps{grid-template-columns:1fr 1fr;gap:1.6rem 1.2rem}.pg-laki .step .line{display:none}.pg-laki .ref-grid{grid-template-columns:1fr}.pg-laki .cta-grid{grid-template-columns:1fr}.pg-laki .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-laki .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-laki{font-size:16px}.pg-laki .nav-links, .pg-laki .nav-phone{display:none}.pg-laki .burger{display:flex}.pg-laki .nav-actions .btn{display:none}.pg-laki .two-cards{grid-template-columns:1fr}.pg-laki .feat-grid{grid-template-columns:1fr}.pg-laki .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-laki .price-card.featured{transform:none;order:-1}.pg-laki .price-card.featured:hover{transform:translateY(-4px)}.pg-laki .steps{grid-template-columns:1fr}.pg-laki .tier-row{grid-template-columns:1fr}.pg-laki .field-row{grid-template-columns:1fr}.pg-laki .ref-stats{gap:1.4rem}.pg-laki .foot-grid{grid-template-columns:1fr 1fr}.pg-laki .sticky-bar{display:grid}body.pg-laki{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-laki .cookie{bottom:72px}.pg-laki section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-laki .foot-grid{grid-template-columns:1fr}.pg-laki .hero-cta{flex-direction:column}.pg-laki .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-laki, .pg-laki *, .pg-laki *::before, .pg-laki *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-laki .reveal{opacity:1;transform:none}}
.pg-laki a:focus-visible, .pg-laki button:focus-visible, .pg-laki input:focus-visible, .pg-laki select:focus-visible, .pg-laki textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-laki .img-ph{overflow:hidden}
.pg-laki .avatar-ph{position:relative;overflow:hidden}
.pg-laki .img-ph>img.ph-img, .pg-laki .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-laki .avatar-ph>img.ph-img{object-position:center 20%}
.pg-laki .legal{padding:clamp(2.5rem,6vw,5rem) 0 clamp(3.5rem,8vw,6rem)}
.pg-laki .legal .wrap{max-width:760px}
.pg-laki .legal-crumb{font-size:.9rem;color:var(--muted);margin-bottom:1.4rem}
.pg-laki .legal-crumb a{color:var(--brand);font-weight:500}
.pg-laki .legal-crumb a:hover{text-decoration:underline}
.pg-laki .legal h1{font-size:clamp(2rem,4.5vw,2.9rem);margin-bottom:.6rem}
.pg-laki .legal-updated{font-size:.9rem;color:var(--muted);margin-bottom:2.4rem}
.pg-laki .legal h2{font-size:clamp(1.18rem,2.2vw,1.5rem);font-weight:600;margin:2.3rem 0 .7rem;color:var(--ink)}
.pg-laki .legal p{color:var(--ink);opacity:.9;margin-bottom:1rem;line-height:1.75}
.pg-laki .legal p.legal-lead{font-size:1.12rem;opacity:1}
.pg-laki .legal ul{list-style:disc;padding-left:1.35rem;margin:0 0 1.2rem;color:var(--ink)}
.pg-laki .legal li{margin-bottom:.5rem;opacity:.9;line-height:1.65}
.pg-laki .legal a.legal-inline{color:var(--brand);font-weight:500;text-decoration:underline}
.pg-laki .legal .legal-box{margin-top:2.6rem;padding:1.4rem 1.6rem;background:var(--accent-soft);border-radius:var(--radius);font-size:.98rem}
.pg-laki .legal .legal-box p{margin-bottom:0}
.pg-laki .legal .legal-nav{display:flex;flex-wrap:wrap;gap:1.1rem 1.6rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid var(--line);font-size:.92rem}
.pg-laki .legal .legal-nav a{color:var(--brand);font-weight:500}
.pg-laki .legal .legal-nav a:hover{text-decoration:underline}
.pg-laki .notfound{padding:clamp(3rem,10vw,7rem) 0;text-align:center}
.pg-laki .notfound .wrap{max-width:640px}
.pg-laki .nf-code{display:inline-block;font-family:var(--font-head);font-size:clamp(3.5rem,12vw,6rem);font-weight:600;color:var(--brand);line-height:1;margin-bottom:.4rem}
.pg-laki .notfound h1{font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:1rem}
.pg-laki .notfound p{color:var(--muted);max-width:50ch;margin:0 auto 1.6rem;line-height:1.7}
.pg-laki .nf-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.8rem}
.pg-laki .nf-links{font-size:.95rem;color:var(--muted)}
.pg-laki .nf-links a{color:var(--brand);font-weight:500}
.pg-laki .nf-links a:hover{text-decoration:underline}
.pg-laki .legal-table-wrap{overflow-x:auto;margin:1.2rem 0 1.4rem;border:1px solid var(--line);border-radius:var(--radius)}
.pg-laki .legal-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:540px}
.pg-laki .legal-table th, .pg-laki .legal-table td{text-align:left;padding:.75rem .85rem;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.45}
.pg-laki .legal-table tr:last-child td{border-bottom:none}
.pg-laki .legal-table th{background:var(--accent-soft);color:var(--ink);font-weight:600;font-size:.8rem;letter-spacing:.03em;text-transform:uppercase}
.pg-laki .legal-table td:first-child{font-weight:600;color:var(--brand);white-space:nowrap}
.pg-laki .legal-part{margin-top:3rem;padding-top:1.5rem;border-top:2px solid var(--brand);color:var(--brand);font-size:clamp(1.35rem,2.8vw,1.85rem)}
.pg-laki .legal-sub{font-size:.92rem;color:var(--muted);margin:.2rem 0 1.4rem;font-style:italic}
.pg-laki .legal h3{font-size:1.06rem;font-weight:600;margin:1.6rem 0 .5rem;color:var(--ink)}
.pg-laki .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-laki .nav-links a.active, .pg-laki .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-laki .nav-links a.active::after, .pg-laki .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-laki .mm-links a.active, .pg-laki .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-nettisivut ============ */
.pg-nettisivut{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-nettisivut{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-nettisivut, .pg-nettisivut *, .pg-nettisivut *::before, .pg-nettisivut *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-nettisivut{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-nettisivut img{max-width:100%;height:auto;display:block}
.pg-nettisivut a{color:inherit;text-decoration:none}
.pg-nettisivut button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-nettisivut ul{list-style:none}
.pg-nettisivut section{scroll-margin-top:84px}
.pg-nettisivut h1, .pg-nettisivut h2, .pg-nettisivut h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-nettisivut h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-nettisivut h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-nettisivut h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-nettisivut .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-nettisivut p{color:var(--muted)}
.pg-nettisivut .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-nettisivut .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-nettisivut .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-nettisivut .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-nettisivut .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-nettisivut .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-nettisivut .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-nettisivut .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-nettisivut .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-nettisivut .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-nettisivut .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-nettisivut .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-nettisivut .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-nettisivut .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-nettisivut .btn-block{width:100%}
.pg-nettisivut .btn .arrow{transition:transform .25s var(--ease)}
.pg-nettisivut .btn:hover .arrow{transform:translateX(3px)}
.pg-nettisivut .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-nettisivut .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-nettisivut .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-nettisivut .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-nettisivut .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-nettisivut .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-nettisivut .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-nettisivut .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-nettisivut .nav-links a.nav-back{display:inline-flex;align-items:center;gap:.4em;opacity:.7}
.pg-nettisivut .nav-links a.nav-back svg{width:15px;height:15px}
.pg-nettisivut .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-nettisivut .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-nettisivut .nav-phone:hover{color:var(--brand)}
.pg-nettisivut .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-nettisivut .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-nettisivut .burger svg{width:24px;height:24px}
.pg-nettisivut .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-nettisivut .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-nettisivut .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-nettisivut .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-nettisivut .mm-close svg{width:26px;height:26px}
.pg-nettisivut .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-nettisivut .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-nettisivut .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-nettisivut .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-nettisivut .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-nettisivut .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-nettisivut .hero h1{margin-bottom:1.3rem}
.pg-nettisivut .hero h1 .light{color:var(--muted);font-weight:400}
.pg-nettisivut .hero-lead{max-width:42ch;margin-bottom:1.9rem}
.pg-nettisivut .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-nettisivut .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-nettisivut .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-nettisivut .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-nettisivut .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-nettisivut .chip b{font-weight:700;color:var(--brand)}
.pg-nettisivut .hero-visual{position:relative}
.pg-nettisivut .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-nettisivut .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-nettisivut .browser-bar .dots{display:flex;gap:.4em}
.pg-nettisivut .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-nettisivut .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-nettisivut .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-nettisivut .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-nettisivut .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-nettisivut .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-nettisivut .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-nettisivut .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-nettisivut .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-nettisivut .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-nettisivut .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-nettisivut .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);
  transform:scale(1.015);}
.pg-nettisivut .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-nettisivut .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-nettisivut .price-pages{display:inline-flex;align-items:center;gap:.4em;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:100px;margin-bottom:.9rem;align-self:flex-start}
.pg-nettisivut .price-name{font-family:var(--font-head);font-weight:600;font-size:1.45rem;margin-bottom:.3rem}
.pg-nettisivut .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-nettisivut .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.6rem;color:var(--ink);letter-spacing:-.02em}
.pg-nettisivut .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-nettisivut .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.1rem}
.pg-nettisivut .price-for{font-size:.92rem;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.75em .9em;margin-bottom:1.3rem;line-height:1.5}
.pg-nettisivut .price-for b{color:var(--brand);font-weight:600}
.pg-nettisivut .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-nettisivut .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-nettisivut .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-nettisivut .price-feats li.lead-in{font-weight:600;color:var(--brand)}
.pg-nettisivut .price-card .btn{margin-top:auto}
.pg-nettisivut .price-note{text-align:center;max-width:640px;margin:2.2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-nettisivut .price-note b{color:var(--ink);font-weight:600}
.pg-nettisivut .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-nettisivut .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-nettisivut .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-nettisivut .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-nettisivut .feat .ic svg{width:22px;height:22px}
.pg-nettisivut .feat h3{font-size:1.12rem}
.pg-nettisivut .feat p{font-size:.96rem}
.pg-nettisivut .included-foot{margin-top:1.8rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem 1.6rem;text-align:center}
.pg-nettisivut .included-foot .pill{display:inline-flex;align-items:center;gap:.5em;font-size:.96rem;font-weight:600;color:var(--ink)}
.pg-nettisivut .included-foot .pill svg{width:19px;height:19px;color:var(--brand);flex-shrink:0}
.pg-nettisivut .choose{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-nettisivut .choose-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:1.8rem 1.6rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-nettisivut .choose-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 25%,var(--line))}
.pg-nettisivut .choose-card.is-feature{border-color:color-mix(in srgb,var(--brand) 40%,var(--line));background:linear-gradient(160deg,color-mix(in srgb,var(--accent-soft) 60%,var(--surface)),var(--surface))}
.pg-nettisivut .choose-card .c-pick{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:.5rem}
.pg-nettisivut .choose-card .c-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;color:var(--ink);margin-bottom:.9rem}
.pg-nettisivut .choose-card ul{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.3rem}
.pg-nettisivut .choose-card li{display:flex;align-items:flex-start;gap:.55em;font-size:.95rem;color:var(--ink)}
.pg-nettisivut .choose-card li svg{width:17px;height:17px;color:var(--brand);flex-shrink:0;margin-top:4px}
.pg-nettisivut .choose-card .c-foot{margin-top:auto;font-size:.9rem;color:var(--muted)}
.pg-nettisivut .choose-card .c-foot b{color:var(--ink);font-weight:600}
.pg-nettisivut .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:step}
.pg-nettisivut .step{position:relative;padding-top:3.5rem}
.pg-nettisivut .step::before{counter-increment:step;content:"0" counter(step);
  position:absolute;top:0;left:0;font-family:var(--font-head);font-weight:600;font-size:1.05rem;
  color:var(--brand);background:var(--accent-soft);width:42px;height:42px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;}
.pg-nettisivut .step h3{font-size:1.1rem;margin-bottom:.5rem}
.pg-nettisivut .step p{font-size:.95rem}
.pg-nettisivut .step .line{position:absolute;top:21px;left:52px;right:-12px;height:1.5px;background:var(--line)}
.pg-nettisivut .step:last-child .line{display:none}
.pg-nettisivut .crosslinks{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.pg-nettisivut .xlink{display:flex;gap:1.1em;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.7rem;transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-nettisivut .xlink:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:var(--shadow)}
.pg-nettisivut .xlink .ic{width:48px;height:48px;border-radius:12px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-nettisivut .xlink .ic svg{width:24px;height:24px}
.pg-nettisivut .xlink h3{font-size:1.15rem;margin-bottom:.35rem}
.pg-nettisivut .xlink p{font-size:.95rem;margin-bottom:.8rem;line-height:1.55}
.pg-nettisivut .xlink .go{display:inline-flex;align-items:center;gap:.4em;font-weight:600;color:var(--brand);font-size:.96rem}
.pg-nettisivut .xlink:hover .go .arrow{transform:translateX(4px)}
.pg-nettisivut .xlink .go .arrow{transition:transform .25s var(--ease)}
.pg-nettisivut .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-nettisivut .faq-item{border-bottom:1px solid var(--line)}
.pg-nettisivut .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-nettisivut .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-nettisivut .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-nettisivut .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-nettisivut .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-nettisivut .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-nettisivut .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-nettisivut .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-nettisivut .cta-left h2{margin-bottom:1rem}
.pg-nettisivut .cta-left .lead{margin-bottom:1.7rem}
.pg-nettisivut .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-nettisivut .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-nettisivut .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-nettisivut .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-nettisivut .contact-alt .ic svg{width:20px;height:20px}
.pg-nettisivut .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-nettisivut .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-nettisivut .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-nettisivut .field{margin-bottom:1rem}
.pg-nettisivut .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-nettisivut .field label .req{color:var(--brand)}
.pg-nettisivut .field input, .pg-nettisivut .field select, .pg-nettisivut .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-nettisivut .field input:focus, .pg-nettisivut .field select:focus, .pg-nettisivut .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-nettisivut .field textarea{resize:vertical;min-height:120px}
.pg-nettisivut .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-nettisivut .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-nettisivut .form-note a{color:var(--brand);text-decoration:underline}
.pg-nettisivut .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-nettisivut .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-nettisivut .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-nettisivut .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-nettisivut .form-success .check svg{width:30px;height:30px}
.pg-nettisivut .form-success h3{margin-bottom:.5rem}
.pg-nettisivut .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-nettisivut .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-nettisivut .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-nettisivut .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-nettisivut .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-nettisivut .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-nettisivut .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-nettisivut .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-nettisivut .foot-col a:hover{color:var(--brand-2)}
.pg-nettisivut .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-nettisivut .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-nettisivut .foot-legal button, .pg-nettisivut .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-nettisivut .foot-legal button:hover, .pg-nettisivut .foot-legal a:hover{color:var(--brand-2)}
.pg-nettisivut .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-nettisivut .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-nettisivut .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-nettisivut .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-nettisivut .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-nettisivut .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-nettisivut .ai-seo b{color:var(--ink);font-weight:600}
.pg-nettisivut .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-nettisivut .sticky-bar.show{transform:translateY(0)}
.pg-nettisivut .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-nettisivut .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-nettisivut .sticky-bar a svg{width:19px;height:19px}
.pg-nettisivut .sticky-bar a.call svg{color:var(--brand)}
.pg-nettisivut .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-nettisivut .cookie.show{transform:translateY(0)}
.pg-nettisivut .cookie p{font-size:.9rem;color:var(--ink)}
.pg-nettisivut .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-nettisivut .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-nettisivut .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-nettisivut .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-nettisivut .modal.open{display:flex}
.pg-nettisivut .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-nettisivut .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-nettisivut .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-nettisivut .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-nettisivut .modal-box p, .pg-nettisivut .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-nettisivut .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-nettisivut .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-nettisivut .modal-close svg{width:22px;height:22px}
.pg-nettisivut .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-nettisivut .reveal.is-visible{opacity:1;transform:none}
.pg-nettisivut .reveal.d1{transition-delay:.08s}
.pg-nettisivut .reveal.d2{transition-delay:.16s}
.pg-nettisivut .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-nettisivut .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-nettisivut .hero-visual{max-width:520px}.pg-nettisivut .feat-grid{grid-template-columns:1fr 1fr}.pg-nettisivut .choose{grid-template-columns:1fr}.pg-nettisivut .steps{grid-template-columns:1fr 1fr;gap:1.6rem 1.2rem}.pg-nettisivut .step .line{display:none}.pg-nettisivut .crosslinks{grid-template-columns:1fr}.pg-nettisivut .cta-grid{grid-template-columns:1fr}.pg-nettisivut .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-nettisivut .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-nettisivut{font-size:16px}.pg-nettisivut .nav-links, .pg-nettisivut .nav-phone{display:none}.pg-nettisivut .burger{display:flex}.pg-nettisivut .nav-actions .btn{display:none}.pg-nettisivut .feat-grid{grid-template-columns:1fr}.pg-nettisivut .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-nettisivut .price-card.featured{transform:none;order:-1}.pg-nettisivut .price-card.featured:hover{transform:translateY(-4px)}.pg-nettisivut .steps{grid-template-columns:1fr}.pg-nettisivut .field-row{grid-template-columns:1fr}.pg-nettisivut .foot-grid{grid-template-columns:1fr 1fr}.pg-nettisivut .sticky-bar{display:grid}body.pg-nettisivut{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-nettisivut .cookie{bottom:72px}.pg-nettisivut section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-nettisivut .foot-grid{grid-template-columns:1fr}.pg-nettisivut .hero-cta{flex-direction:column}.pg-nettisivut .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-nettisivut, .pg-nettisivut *, .pg-nettisivut *::before, .pg-nettisivut *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-nettisivut .reveal{opacity:1;transform:none}}
.pg-nettisivut a:focus-visible, .pg-nettisivut button:focus-visible, .pg-nettisivut input:focus-visible, .pg-nettisivut select:focus-visible, .pg-nettisivut textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-nettisivut .img-ph{overflow:hidden}
.pg-nettisivut .avatar-ph{position:relative;overflow:hidden}
.pg-nettisivut .img-ph>img.ph-img, .pg-nettisivut .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-nettisivut .avatar-ph>img.ph-img{object-position:center 20%}
.pg-nettisivut .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-nettisivut .ai-seo .wrap{max-width:920px}
.pg-nettisivut .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-nettisivut .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-nettisivut .ai-seo p{max-width:78ch}
.pg-nettisivut .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-nettisivut .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-nettisivut .ai-facts a{color:var(--brand)}
.pg-nettisivut .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-nettisivut .nav-links a.active, .pg-nettisivut .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-nettisivut .nav-links a.active::after, .pg-nettisivut .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-nettisivut .mm-links a.active, .pg-nettisivut .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-referenssit ============ */
.pg-referenssit{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-referenssit{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-referenssit, .pg-referenssit *, .pg-referenssit *::before, .pg-referenssit *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-referenssit{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-referenssit img{max-width:100%;height:auto;display:block}
.pg-referenssit a{color:inherit;text-decoration:none}
.pg-referenssit button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-referenssit ul{list-style:none}
.pg-referenssit section{scroll-margin-top:84px}
.pg-referenssit h1, .pg-referenssit h2, .pg-referenssit h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-referenssit h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-referenssit h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-referenssit h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-referenssit .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-referenssit p{color:var(--muted)}
.pg-referenssit .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-referenssit .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-referenssit .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-referenssit .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-referenssit .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-referenssit .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-referenssit .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-referenssit .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-referenssit .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-referenssit .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-referenssit .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-referenssit .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-referenssit .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-referenssit .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-referenssit .btn-block{width:100%}
.pg-referenssit .btn .arrow{transition:transform .25s var(--ease)}
.pg-referenssit .btn:hover .arrow{transform:translateX(3px)}
.pg-referenssit .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-referenssit .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-referenssit .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-referenssit .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-referenssit .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-referenssit .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-referenssit .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-referenssit .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-referenssit .nav-links a.active{opacity:1;color:var(--brand)}
.pg-referenssit .nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-referenssit .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-referenssit .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-referenssit .nav-phone:hover{color:var(--brand)}
.pg-referenssit .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-referenssit .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-referenssit .burger svg{width:24px;height:24px}
.pg-referenssit .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-referenssit .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-referenssit .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-referenssit .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-referenssit .mm-close svg{width:26px;height:26px}
.pg-referenssit .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-referenssit .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-referenssit .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-referenssit .page-hero{position:relative;text-align:center;padding:clamp(2.6rem,6vw,4.6rem) 0 clamp(2rem,4vw,3rem);overflow:hidden}
.pg-referenssit .page-hero::before{content:"";position:absolute;top:-40%;left:50%;transform:translateX(-50%);
  width:80vw;height:60vw;max-width:900px;max-height:680px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-referenssit .page-hero .wrap{position:relative;z-index:1}
.pg-referenssit .page-hero .eyebrow{justify-content:center}
.pg-referenssit .page-hero h1{max-width:18ch;margin:0 auto 1.2rem}
.pg-referenssit .page-hero h1 .light{color:var(--muted);font-weight:400}
.pg-referenssit .page-hero .lead{max-width:60ch;margin:0 auto 1.9rem}
.pg-referenssit .page-hero .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin-bottom:1.6rem}
.pg-referenssit .seg-legend{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center}
.pg-referenssit .seg-legend .chip{display:inline-flex;align-items:center;gap:.5em;font-size:.86rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.45em .95em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-referenssit .seg-legend .chip .d{width:8px;height:8px;border-radius:50%;background:var(--brand-2)}
.pg-referenssit .ref-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;align-items:stretch}
.pg-referenssit .ref-card{display:flex;flex-direction:column;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s;}
.pg-referenssit .ref-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--brand) 28%,var(--line))}
.pg-referenssit .ref-shot .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-referenssit .ref-shot .browser-bar .dots{display:flex;gap:.4em}
.pg-referenssit .ref-shot .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-referenssit .ref-shot .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-referenssit .ref-shot .img-ph{position:relative;aspect-ratio:16/10;
  background:linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.4rem;}
.pg-referenssit .ref-shot .img-ph svg{width:38px;height:38px;opacity:.55}
.pg-referenssit .ref-shot .img-ph span{font-size:.8rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:26ch}
.pg-referenssit .ref-body{padding:clamp(1.4rem,2.6vw,1.85rem);display:flex;flex-direction:column;flex:1}
.pg-referenssit .seg-tag{align-self:flex-start;display:inline-flex;align-items:center;gap:.5em;
  font-size:.73rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:var(--brand);background:var(--accent-soft);padding:.42em .9em;border-radius:100px;margin-bottom:.95rem;}
.pg-referenssit .seg-tag .d{width:7px;height:7px;border-radius:50%;background:var(--brand-2)}
.pg-referenssit .ref-card h3{font-size:1.32rem;margin-bottom:.55rem}
.pg-referenssit .ref-card p{font-size:.96rem;margin-bottom:1.05rem}
.pg-referenssit .ref-feats{display:flex;flex-wrap:wrap;gap:.4rem;margin:.1rem 0 1.35rem}
.pg-referenssit .ref-feats span{font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.32em .72em;border-radius:8px}
.pg-referenssit .ref-link{display:inline-flex;align-items:center;gap:.45em;margin-top:auto;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-referenssit .ref-link .arrow{transition:transform .25s var(--ease)}
.pg-referenssit .ref-link:hover .arrow{transform:translateX(4px)}
.pg-referenssit .trust-band{background:var(--surface)}
.pg-referenssit .trust-card{display:grid;grid-template-columns:auto 1fr;gap:clamp(1.2rem,3vw,2rem);align-items:center;
  background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 60%,var(--surface)), var(--surface));
  border:1px solid var(--line);border-left:3px solid var(--brand);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3.5vw,2.6rem);}
.pg-referenssit .trust-card .avatar-ph{width:78px;height:78px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-referenssit .trust-card .avatar-ph svg{width:34px;height:34px;opacity:.6}
.pg-referenssit .trust-card h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:.7rem}
.pg-referenssit .trust-card p{font-size:1.02rem;color:var(--ink);opacity:.92;max-width:62ch}
.pg-referenssit .trust-card p b{font-weight:600}
.pg-referenssit .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-referenssit .cta-left h2{margin-bottom:1rem}
.pg-referenssit .cta-left .lead{margin-bottom:1.7rem}
.pg-referenssit .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-referenssit .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-referenssit .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-referenssit .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-referenssit .contact-alt .ic svg{width:20px;height:20px}
.pg-referenssit .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-referenssit .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-referenssit .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-referenssit .field{margin-bottom:1rem}
.pg-referenssit .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-referenssit .field label .req{color:var(--brand)}
.pg-referenssit .field input, .pg-referenssit .field select, .pg-referenssit .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-referenssit .field input:focus, .pg-referenssit .field select:focus, .pg-referenssit .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-referenssit .field textarea{resize:vertical;min-height:120px}
.pg-referenssit .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-referenssit .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-referenssit .form-note a{color:var(--brand);text-decoration:underline}
.pg-referenssit .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-referenssit .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-referenssit .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-referenssit .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-referenssit .form-success .check svg{width:30px;height:30px}
.pg-referenssit .form-success h3{margin-bottom:.5rem}
.pg-referenssit .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-referenssit .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-referenssit .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-referenssit .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-referenssit .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-referenssit .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-referenssit .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-referenssit .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-referenssit .foot-col a:hover{color:var(--brand-2)}
.pg-referenssit .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-referenssit .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-referenssit .foot-legal button, .pg-referenssit .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-referenssit .foot-legal button:hover, .pg-referenssit .foot-legal a:hover{color:var(--brand-2)}
.pg-referenssit .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-referenssit .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-referenssit .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-referenssit .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-referenssit .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-referenssit .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-referenssit .ai-seo b{color:var(--ink);font-weight:600}
.pg-referenssit .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-referenssit .sticky-bar.show{transform:translateY(0)}
.pg-referenssit .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-referenssit .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-referenssit .sticky-bar a svg{width:19px;height:19px}
.pg-referenssit .sticky-bar a.call svg{color:var(--brand)}
.pg-referenssit .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-referenssit .cookie.show{transform:translateY(0)}
.pg-referenssit .cookie p{font-size:.9rem;color:var(--ink)}
.pg-referenssit .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-referenssit .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-referenssit .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-referenssit .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-referenssit .modal.open{display:flex}
.pg-referenssit .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-referenssit .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-referenssit .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-referenssit .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-referenssit .modal-box p, .pg-referenssit .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-referenssit .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-referenssit .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-referenssit .modal-close svg{width:22px;height:22px}
.pg-referenssit .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-referenssit .reveal.is-visible{opacity:1;transform:none}
.pg-referenssit .reveal.d1{transition-delay:.08s}
.pg-referenssit .reveal.d2{transition-delay:.16s}
.pg-referenssit .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-referenssit .cta-grid{grid-template-columns:1fr}.pg-referenssit .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-referenssit .foot-brand{grid-column:1 / -1}.pg-referenssit .trust-card{grid-template-columns:1fr;text-align:left}}
@media(max-width:760px){body.pg-referenssit{font-size:16px}.pg-referenssit .nav-links, .pg-referenssit .nav-phone{display:none}.pg-referenssit .burger{display:flex}.pg-referenssit .nav-actions .btn{display:none}.pg-referenssit .field-row{grid-template-columns:1fr}.pg-referenssit .foot-grid{grid-template-columns:1fr 1fr}.pg-referenssit .sticky-bar{display:grid}body.pg-referenssit{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-referenssit .cookie{bottom:72px}.pg-referenssit section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-referenssit .foot-grid{grid-template-columns:1fr}.pg-referenssit .page-hero .hero-cta{flex-direction:column}.pg-referenssit .page-hero .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-referenssit, .pg-referenssit *, .pg-referenssit *::before, .pg-referenssit *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-referenssit .reveal{opacity:1;transform:none}}
.pg-referenssit a:focus-visible, .pg-referenssit button:focus-visible, .pg-referenssit input:focus-visible, .pg-referenssit select:focus-visible, .pg-referenssit textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-referenssit .img-ph{overflow:hidden}
.pg-referenssit .avatar-ph{position:relative;overflow:hidden}
.pg-referenssit .img-ph>img.ph-img, .pg-referenssit .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-referenssit .avatar-ph>img.ph-img{object-position:center 20%}
.pg-referenssit .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-referenssit .ai-seo .wrap{max-width:920px}
.pg-referenssit .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-referenssit .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-referenssit .ai-seo p{max-width:78ch}
.pg-referenssit .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-referenssit .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-referenssit .ai-facts a{color:var(--brand)}
.pg-referenssit .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-referenssit .nav-links a.active, .pg-referenssit .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-referenssit .nav-links a.active::after, .pg-referenssit .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-referenssit .mm-links a.active, .pg-referenssit .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-tietoa ============ */
.pg-tietoa{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-tietoa{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-tietoa, .pg-tietoa *, .pg-tietoa *::before, .pg-tietoa *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-tietoa{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-tietoa img{max-width:100%;height:auto;display:block}
.pg-tietoa a{color:inherit;text-decoration:none}
.pg-tietoa button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-tietoa ul{list-style:none}
.pg-tietoa section{scroll-margin-top:84px}
.pg-tietoa h1, .pg-tietoa h2, .pg-tietoa h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-tietoa h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-tietoa h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-tietoa h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-tietoa .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-tietoa p{color:var(--muted)}
.pg-tietoa .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-tietoa .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-tietoa .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-tietoa .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-tietoa .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-tietoa .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-tietoa .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-tietoa .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-tietoa .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-tietoa .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-tietoa .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-tietoa .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-tietoa .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-tietoa .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-tietoa .btn-block{width:100%}
.pg-tietoa .btn .arrow{transition:transform .25s var(--ease)}
.pg-tietoa .btn:hover .arrow{transform:translateX(3px)}
.pg-tietoa .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-tietoa .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-tietoa .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-tietoa .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-tietoa .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-tietoa .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-tietoa .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-tietoa .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-tietoa .nav-links a.active{opacity:1;color:var(--brand)}
.pg-tietoa .nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-tietoa .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-tietoa .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-tietoa .nav-phone:hover{color:var(--brand)}
.pg-tietoa .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-tietoa .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-tietoa .burger svg{width:24px;height:24px}
.pg-tietoa .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-tietoa .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-tietoa .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-tietoa .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-tietoa .mm-close svg{width:26px;height:26px}
.pg-tietoa .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-tietoa .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-tietoa .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-tietoa .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-tietoa .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-tietoa .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-tietoa .hero h1{margin-bottom:1.3rem}
.pg-tietoa .hero h1 .light{color:var(--muted);font-weight:400}
.pg-tietoa .hero-lead{max-width:46ch;margin-bottom:1.9rem}
.pg-tietoa .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-tietoa .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:48ch}
.pg-tietoa .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-tietoa .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-tietoa .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-tietoa .chip b{font-weight:700;color:var(--brand)}
.pg-tietoa .hero-visual{position:relative}
.pg-tietoa .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-tietoa .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-tietoa .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-tietoa .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-tietoa .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-tietoa .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-tietoa .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-tietoa .story-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-tietoa .story-copy p{margin-bottom:1.15rem;font-size:1.04rem;color:var(--muted)}
.pg-tietoa .story-copy p strong{color:var(--ink);font-weight:600}
.pg-tietoa .story-copy .lead{margin-bottom:1.3rem}
.pg-tietoa .story-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:1.2rem}
.pg-tietoa .pullquote{margin:1.6rem 0;padding:1.5rem 1.7rem;border-left:3px solid var(--brand);
  background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);}
.pg-tietoa .pullquote p{font-family:var(--font-head);font-style:italic;font-weight:500;
  font-size:clamp(1.18rem,2.4vw,1.5rem);line-height:1.4;color:var(--ink)}
.pg-tietoa .pullquote .cite{display:block;margin-top:.8rem;font-family:var(--font-body);
  font-style:normal;font-size:.9rem;font-weight:600;color:var(--brand)}
.pg-tietoa .fact-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.5rem;box-shadow:var(--shadow-sm)}
.pg-tietoa .fact-card h3{font-size:1.05rem;margin-bottom:.9rem}
.pg-tietoa .fact-row{display:flex;align-items:baseline;gap:.7rem;padding:.55rem 0;border-top:1px solid var(--line)}
.pg-tietoa .fact-row:first-of-type{border-top:none;padding-top:0}
.pg-tietoa .fact-row .n{font-family:var(--font-head);font-weight:600;font-size:1.25rem;color:var(--brand);min-width:62px}
.pg-tietoa .fact-row .l{font-size:.92rem;color:var(--muted)}
.pg-tietoa .timeline{position:relative;max-width:780px;margin:0 auto}
.pg-tietoa .timeline::before{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:var(--line)}
.pg-tietoa .tl-item{position:relative;padding:0 0 1.9rem 3rem}
.pg-tietoa .tl-item:last-child{padding-bottom:0}
.pg-tietoa .tl-dot{position:absolute;left:5px;top:1px;width:22px;height:22px;border-radius:50%;
  background:var(--surface);border:2px solid var(--brand);z-index:1}
.pg-tietoa .tl-item.now .tl-dot{background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-tietoa .tl-year{display:inline-block;font-family:var(--font-head);font-weight:600;font-size:.92rem;color:var(--brand);letter-spacing:.03em;margin-bottom:.15rem}
.pg-tietoa .tl-item.now .tl-year{background:var(--brand);color:var(--ink-on-brand);padding:.1em .6em;border-radius:6px;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}
.pg-tietoa .tl-item h3{font-size:1.1rem;margin:.2rem 0 .35rem}
.pg-tietoa .tl-item p{font-size:.95rem;max-width:60ch}
.pg-tietoa .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-tietoa .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-tietoa .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-tietoa .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-tietoa .feat .ic svg{width:22px;height:22px}
.pg-tietoa .feat h3{font-size:1.12rem}
.pg-tietoa .feat p{font-size:.96rem}
.pg-tietoa .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-tietoa .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-tietoa .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-tietoa .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-tietoa .aud-card h3{margin-bottom:.7rem}
.pg-tietoa .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-tietoa .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}
.pg-tietoa .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-tietoa .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-tietoa .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:1.8rem;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-tietoa .special-link:hover .arrow{transform:translateX(4px)}
.pg-tietoa .special-link .arrow{transition:transform .25s var(--ease)}
.pg-tietoa .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-tietoa .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-tietoa .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-tietoa .trust-box b{font-weight:600}
.pg-tietoa .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-tietoa .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-tietoa .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-tietoa .cta-left h2{margin-bottom:1rem}
.pg-tietoa .cta-left .lead{margin-bottom:1.7rem}
.pg-tietoa .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-tietoa .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-tietoa .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-tietoa .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-tietoa .contact-alt .ic svg{width:20px;height:20px}
.pg-tietoa .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-tietoa .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-tietoa .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-tietoa .field{margin-bottom:1rem}
.pg-tietoa .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-tietoa .field label .req{color:var(--brand)}
.pg-tietoa .field input, .pg-tietoa .field select, .pg-tietoa .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-tietoa .field input:focus, .pg-tietoa .field select:focus, .pg-tietoa .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-tietoa .field textarea{resize:vertical;min-height:120px}
.pg-tietoa .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-tietoa .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-tietoa .form-note a{color:var(--brand);text-decoration:underline}
.pg-tietoa .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-tietoa .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-tietoa .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-tietoa .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-tietoa .form-success .check svg{width:30px;height:30px}
.pg-tietoa .form-success h3{margin-bottom:.5rem}
.pg-tietoa .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-tietoa .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr;gap:2rem}
.pg-tietoa .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-tietoa .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-tietoa .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-tietoa .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-tietoa .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-tietoa .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-tietoa .foot-col a:hover{color:var(--brand-2)}
.pg-tietoa .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-tietoa .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-tietoa .foot-legal button, .pg-tietoa .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-tietoa .foot-legal button:hover, .pg-tietoa .foot-legal a:hover{color:var(--brand-2)}
.pg-tietoa .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-tietoa .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-tietoa .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-tietoa .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-tietoa .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-tietoa .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-tietoa .ai-seo b{color:var(--ink);font-weight:600}
.pg-tietoa .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-tietoa .sticky-bar.show{transform:translateY(0)}
.pg-tietoa .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-tietoa .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-tietoa .sticky-bar a svg{width:19px;height:19px}
.pg-tietoa .sticky-bar a.call svg{color:var(--brand)}
.pg-tietoa .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-tietoa .cookie.show{transform:translateY(0)}
.pg-tietoa .cookie p{font-size:.9rem;color:var(--ink)}
.pg-tietoa .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-tietoa .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-tietoa .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-tietoa .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-tietoa .modal.open{display:flex}
.pg-tietoa .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-tietoa .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-tietoa .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-tietoa .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-tietoa .modal-box p, .pg-tietoa .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-tietoa .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-tietoa .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-tietoa .modal-close svg{width:22px;height:22px}
.pg-tietoa .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-tietoa .reveal.is-visible{opacity:1;transform:none}
.pg-tietoa .reveal.d1{transition-delay:.08s}
.pg-tietoa .reveal.d2{transition-delay:.16s}
.pg-tietoa .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-tietoa .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-tietoa .hero-visual{max-width:520px}.pg-tietoa .story-grid{grid-template-columns:1fr;gap:2rem}.pg-tietoa .story-aside{position:static;order:-1}.pg-tietoa .feat-grid{grid-template-columns:1fr 1fr}.pg-tietoa .cta-grid{grid-template-columns:1fr}.pg-tietoa .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-tietoa .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-tietoa{font-size:16px}.pg-tietoa .nav-links, .pg-tietoa .nav-phone{display:none}.pg-tietoa .burger{display:flex}.pg-tietoa .nav-actions .btn{display:none}.pg-tietoa .two-cards{grid-template-columns:1fr}.pg-tietoa .feat-grid{grid-template-columns:1fr}.pg-tietoa .field-row{grid-template-columns:1fr}.pg-tietoa .foot-grid{grid-template-columns:1fr 1fr}.pg-tietoa .sticky-bar{display:grid}body.pg-tietoa{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-tietoa .cookie{bottom:72px}.pg-tietoa section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-tietoa .foot-grid{grid-template-columns:1fr}.pg-tietoa .hero-cta{flex-direction:column}.pg-tietoa .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-tietoa, .pg-tietoa *, .pg-tietoa *::before, .pg-tietoa *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-tietoa .reveal{opacity:1;transform:none}}
.pg-tietoa a:focus-visible, .pg-tietoa button:focus-visible, .pg-tietoa input:focus-visible, .pg-tietoa select:focus-visible, .pg-tietoa textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-tietoa .img-ph{overflow:hidden}
.pg-tietoa .avatar-ph{position:relative;overflow:hidden}
.pg-tietoa .img-ph>img.ph-img, .pg-tietoa .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-tietoa .avatar-ph>img.ph-img{object-position:center 20%}
.pg-tietoa .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-tietoa .ai-seo .wrap{max-width:920px}
.pg-tietoa .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-tietoa .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-tietoa .ai-seo p{max-width:78ch}
.pg-tietoa .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-tietoa .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-tietoa .ai-facts a{color:var(--brand)}
.pg-tietoa .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-tietoa .nav-links a.active, .pg-tietoa .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-tietoa .nav-links a.active::after, .pg-tietoa .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-tietoa .mm-links a.active, .pg-tietoa .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-toimialat-taksi ============ */
.pg-toimialat-taksi{--bg:#FBFAF6;          
  --surface:#FFFFFF;     
  --ink:#16140E;         
  --muted:#5F5A4E;       
  --brand:#E0A100;       
  --brand-ink:#B98400;   
  --brand-2:#F5B301;     
  --accent-soft:#FAF0D2; 
  --line:#EAE4D3;        
  --ink-on-brand:#1A1505;}
.pg-toimialat-taksi{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(22,20,14,.05), 0 2px 8px rgba(22,20,14,.05);
  --shadow:0 10px 30px -12px rgba(22,20,14,.18);
  --shadow-lg:0 24px 60px -22px rgba(22,20,14,.40);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-toimialat-taksi, .pg-toimialat-taksi *, .pg-toimialat-taksi *::before, .pg-toimialat-taksi *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-toimialat-taksi{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-toimialat-taksi img{max-width:100%;height:auto;display:block}
.pg-toimialat-taksi a{color:inherit;text-decoration:none}
.pg-toimialat-taksi button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-toimialat-taksi ul{list-style:none}
.pg-toimialat-taksi section{scroll-margin-top:84px}
.pg-toimialat-taksi h1, .pg-toimialat-taksi h2, .pg-toimialat-taksi h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-toimialat-taksi h1{font-size:clamp(2.3rem,6vw,4.2rem)}
.pg-toimialat-taksi h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-toimialat-taksi h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-toimialat-taksi .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-toimialat-taksi p{color:var(--muted)}
.pg-toimialat-taksi .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-toimialat-taksi .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-toimialat-taksi .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-toimialat-taksi .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand-ink);margin-bottom:1.1rem;}
.pg-toimialat-taksi .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.6}
.pg-toimialat-taksi .section-head{max-width:740px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-toimialat-taksi .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-toimialat-taksi .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-toimialat-taksi .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm);font-weight:700}
.pg-toimialat-taksi .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-toimialat-taksi .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-toimialat-taksi .btn-ghost:hover{border-color:var(--brand);color:var(--brand-ink);transform:translateY(-2px)}
.pg-toimialat-taksi .btn-light{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm);font-weight:700}
.pg-toimialat-taksi .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow);background:var(--brand-ink)}
.pg-toimialat-taksi .btn-block{width:100%}
.pg-toimialat-taksi .btn .arrow{transition:transform .25s var(--ease)}
.pg-toimialat-taksi .btn:hover .arrow{transform:translateX(3px)}
.pg-toimialat-taksi .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--ink) 78%, transparent);
  backdrop-filter:saturate(140%) blur(9px);
  -webkit-backdrop-filter:saturate(140%) blur(9px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-toimialat-taksi .site-header.scrolled{border-bottom-color:rgba(245,179,1,.18);box-shadow:var(--shadow-sm);background:color-mix(in srgb, var(--ink) 94%, transparent)}
.pg-toimialat-taksi .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-toimialat-taksi .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:#fff}
.pg-toimialat-taksi .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand-2);box-shadow:0 0 0 4px rgba(245,179,1,.18)}
.pg-toimialat-taksi .brand .home-arrow{font-size:1.05rem;color:var(--brand-2);margin-right:.1em;transition:transform .25s var(--ease)}
.pg-toimialat-taksi .brand:hover .home-arrow{transform:translateX(-3px)}
.pg-toimialat-taksi .nav-links{display:flex;align-items:center;gap:1.8rem}
.pg-toimialat-taksi .nav-links a{font-size:.97rem;font-weight:500;color:rgba(255,248,232,.82);transition:opacity .2s,color .2s;position:relative}
.pg-toimialat-taksi .nav-links a:hover{color:var(--brand-2)}
.pg-toimialat-taksi .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-toimialat-taksi .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:#fff}
.pg-toimialat-taksi .nav-phone:hover{color:var(--brand-2)}
.pg-toimialat-taksi .nav-phone svg{width:16px;height:16px;color:var(--brand-2)}
.pg-toimialat-taksi .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:#fff}
.pg-toimialat-taksi .burger svg{width:24px;height:24px}
.pg-toimialat-taksi .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-toimialat-taksi .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-toimialat-taksi .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-toimialat-taksi .mm-top .brand{color:var(--ink)}
.pg-toimialat-taksi .mm-top .brand .dot{background:var(--brand)}
.pg-toimialat-taksi .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat-taksi .mm-close svg{width:26px;height:26px}
.pg-toimialat-taksi .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-toimialat-taksi .mm-links a{font-family:var(--font-head);font-size:1.55rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-toimialat-taksi .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-toimialat-taksi .hero{position:relative;padding:clamp(2.8rem,6vw,5.5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden;background:var(--ink);color:var(--ink-on-brand)}
.pg-toimialat-taksi .hero::before{content:"";position:absolute;top:-25%;right:-8%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, rgba(245,179,1,.20), transparent 62%);
  opacity:1;z-index:0;pointer-events:none;}
.pg-toimialat-taksi .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg, transparent, var(--brand-2) 20%, var(--brand-2) 80%, transparent);
  opacity:.55;z-index:1;}
.pg-toimialat-taksi .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-toimialat-taksi .hero .eyebrow{color:var(--brand-2)}
.pg-toimialat-taksi .hero .eyebrow::before{background:var(--brand-2);opacity:.65}
.pg-toimialat-taksi .hero h1{margin-bottom:1.3rem;color:#fff}
.pg-toimialat-taksi .hero h1 .light{color:rgba(255,248,232,.5);font-weight:400}
.pg-toimialat-taksi .hero-lead{max-width:42ch;margin-bottom:1.9rem;color:rgba(255,248,232,.82);opacity:1}
.pg-toimialat-taksi .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-toimialat-taksi .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:rgba(255,248,232,.62);max-width:48ch}
.pg-toimialat-taksi .hero-trust svg{width:18px;height:18px;color:var(--brand-2);flex-shrink:0;margin-top:3px}
.pg-toimialat-taksi .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-toimialat-taksi .hero .chip{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);color:#fff;box-shadow:none}
.pg-toimialat-taksi .hero .chip b{font-weight:700;color:var(--brand-2)}
.pg-toimialat-taksi .hero .btn-ghost{color:#fff;border-color:rgba(255,255,255,.24)}
.pg-toimialat-taksi .hero .btn-ghost:hover{border-color:var(--brand-2);color:var(--brand-2)}
.pg-toimialat-taksi .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-toimialat-taksi .chip b{font-weight:700;color:var(--brand-ink)}
.pg-toimialat-taksi .hero-visual{position:relative}
.pg-toimialat-taksi .hero-card{position:relative;background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-toimialat-taksi .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-toimialat-taksi .browser-bar .dots{display:flex;gap:.4em}
.pg-toimialat-taksi .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-toimialat-taksi .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-toimialat-taksi .img-ph{position:relative;aspect-ratio:4/3;
  background:linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand-ink);text-align:center;padding:1.5rem;}
.pg-toimialat-taksi .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-toimialat-taksi .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-toimialat-taksi .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-toimialat-taksi .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand-ink);line-height:1}
.pg-toimialat-taksi .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-toimialat-taksi .marquee{background:var(--ink);border-top:1px solid rgba(255,255,255,.06);overflow:hidden;padding:.85rem 0;position:relative}
.pg-toimialat-taksi .marquee::before, .pg-toimialat-taksi .marquee::after{content:"";position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
.pg-toimialat-taksi .marquee::before{left:0;background:linear-gradient(90deg,var(--ink),transparent)}
.pg-toimialat-taksi .marquee::after{right:0;background:linear-gradient(270deg,var(--ink),transparent)}
.pg-toimialat-taksi .marquee-track{display:flex;width:max-content;gap:0;animation:marquee 34s linear infinite}
.pg-toimialat-taksi .marquee:hover .marquee-track{animation-play-state:paused}
.pg-toimialat-taksi .mq-chip{display:inline-flex;align-items:center;gap:.6em;font-size:.9rem;font-weight:600;color:rgba(255,248,232,.82);padding:0 1.4rem;white-space:nowrap}
.pg-toimialat-taksi .mq-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand-2);flex-shrink:0}
.pg-toimialat-taksi .pain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.pg-toimialat-taksi .pain-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.2rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-toimialat-taksi .pain-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 35%,var(--line))}
.pg-toimialat-taksi .pain-card .ic{width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--brand-ink);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.pg-toimialat-taksi .pain-card .ic svg{width:23px;height:23px}
.pg-toimialat-taksi .pain-card h3{margin-bottom:.7rem;font-style:italic;font-weight:500;font-family:var(--font-head);font-size:1.22rem;line-height:1.25}
.pg-toimialat-taksi .pain-card p{margin-bottom:1.1rem;font-size:.98rem}
.pg-toimialat-taksi .pain-fix{margin-top:auto;display:flex;align-items:flex-start;gap:.55em;font-size:.92rem;color:var(--ink);font-weight:600;border-top:1px solid var(--line);padding-top:1rem}
.pg-toimialat-taksi .pain-fix svg{width:18px;height:18px;color:var(--brand-ink);flex-shrink:0;margin-top:2px}
.pg-toimialat-taksi .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-toimialat-taksi .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-toimialat-taksi .feat:hover{background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}
.pg-toimialat-taksi .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand-ink);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-toimialat-taksi .feat .ic svg{width:22px;height:22px}
.pg-toimialat-taksi .feat h3{font-size:1.12rem}
.pg-toimialat-taksi .feat p{font-size:.96rem}
.pg-toimialat-taksi .roi-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,3.5rem);align-items:center}
.pg-toimialat-taksi .roi-copy .lead{margin-bottom:1.2rem}
.pg-toimialat-taksi .roi-copy p{font-size:1.02rem;margin-bottom:1.1rem}
.pg-toimialat-taksi .roi-copy .punch{color:var(--ink);font-weight:600}
.pg-toimialat-taksi .calc{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.3rem);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
.pg-toimialat-taksi .calc::after{content:"";position:absolute;right:-20%;top:-30%;width:60%;height:80%;background:radial-gradient(circle,rgba(245,179,1,.22),transparent 65%);pointer-events:none}
.pg-toimialat-taksi .calc h3{color:#fff;font-size:1.15rem;margin-bottom:1.2rem;position:relative;z-index:1}
.pg-toimialat-taksi .calc-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:1}
.pg-toimialat-taksi .calc-row .l{color:rgba(255,248,232,.78);font-size:.97rem}
.pg-toimialat-taksi .calc-row .v{font-family:var(--font-head);font-weight:600;font-size:1.18rem;color:#fff;white-space:nowrap}
.pg-toimialat-taksi .calc-total{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.2rem;padding-top:.4rem;position:relative;z-index:1}
.pg-toimialat-taksi .calc-total .l{color:#fff;font-weight:600;font-size:1.02rem}
.pg-toimialat-taksi .calc-total .v{font-family:var(--font-head);font-weight:600;font-size:2.1rem;color:var(--brand-2);line-height:1}
.pg-toimialat-taksi .calc-note{font-size:.8rem;color:rgba(255,248,232,.55);margin-top:1rem;position:relative;z-index:1}
.pg-toimialat-taksi .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-toimialat-taksi .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-toimialat-taksi .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-toimialat-taksi .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);transform:scale(1.015)}
.pg-toimialat-taksi .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-toimialat-taksi .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-toimialat-taksi .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-toimialat-taksi .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-toimialat-taksi .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-toimialat-taksi .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-toimialat-taksi .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-toimialat-taksi .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-toimialat-taksi .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-toimialat-taksi .price-feats li svg{width:18px;height:18px;color:var(--brand-ink);flex-shrink:0;margin-top:3px}
.pg-toimialat-taksi .price-card .btn{margin-top:auto}
.pg-toimialat-taksi .price-note{text-align:center;max-width:640px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-toimialat-taksi .price-note b{color:var(--ink);font-weight:600}
.pg-toimialat-taksi .price-foot-link{display:flex;justify-content:center;margin-top:1.3rem}
.pg-toimialat-taksi .special-link{display:inline-flex;align-items:center;gap:.4em;font-weight:600;color:var(--brand-ink);font-size:.98rem}
.pg-toimialat-taksi .special-link:hover .arrow{transform:translateX(4px)}
.pg-toimialat-taksi .special-link .arrow{transition:transform .25s var(--ease)}
.pg-toimialat-taksi .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-toimialat-taksi .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-toimialat-taksi .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-toimialat-taksi .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand-ink);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-toimialat-taksi .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-toimialat-taksi .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-toimialat-taksi .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-toimialat-taksi .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-toimialat-taksi .trust-box svg{width:22px;height:22px;color:var(--brand-ink);flex-shrink:0;margin-top:2px}
.pg-toimialat-taksi .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-toimialat-taksi .trust-box b{font-weight:600}
.pg-toimialat-taksi .album{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}
.pg-toimialat-taksi .album .img-ph{aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);padding:.6rem}
.pg-toimialat-taksi .album .img-ph svg{width:24px;height:24px}
.pg-toimialat-taksi .album .img-ph span{font-size:.66rem;max-width:14ch}
.pg-toimialat-taksi .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand-ink);border:1px solid var(--line)}
.pg-toimialat-taksi .avatar-ph svg{width:24px;height:24px;opacity:.65}
.pg-toimialat-taksi .partner{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,4rem);position:relative;overflow:hidden}
.pg-toimialat-taksi .partner::after{content:"";position:absolute;right:-8%;top:-30%;width:42vw;max-width:520px;height:42vw;max-height:520px;background:radial-gradient(circle,rgba(245,179,1,.18),transparent 64%);pointer-events:none}
.pg-toimialat-taksi .partner .eyebrow{color:var(--brand-2)}
.pg-toimialat-taksi .partner .eyebrow::before{background:var(--brand-2);opacity:.7}
.pg-toimialat-taksi .partner h2{color:#fff;position:relative;z-index:1}
.pg-toimialat-taksi .partner .lead{color:rgba(255,248,232,.82);max-width:60ch;position:relative;z-index:1;opacity:1}
.pg-toimialat-taksi .ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;position:relative;z-index:1}
.pg-toimialat-taksi .ops{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);border-radius:var(--radius);padding:1.4rem;backdrop-filter:blur(2px);transition:border-color .3s,transform .3s}
.pg-toimialat-taksi .ops:hover{border-color:rgba(245,179,1,.4);transform:translateY(-3px)}
.pg-toimialat-taksi .ops .o-ic{width:40px;height:40px;border-radius:10px;background:rgba(245,179,1,.14);color:var(--brand-2);display:flex;align-items:center;justify-content:center;margin-bottom:.9rem}
.pg-toimialat-taksi .ops .o-ic svg{width:21px;height:21px}
.pg-toimialat-taksi .ops .o-name{font-weight:600;font-size:1.08rem;color:#fff;margin-bottom:.35rem}
.pg-toimialat-taksi .ops p{font-size:.92rem;color:rgba(255,248,232,.72)}
.pg-toimialat-taksi .partner-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2.2rem;position:relative;z-index:1}
.pg-toimialat-taksi .partner-foot p{color:rgba(255,248,232,.66);font-size:.93rem;max-width:46ch}
.pg-toimialat-taksi .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-toimialat-taksi .faq-item{border-bottom:1px solid var(--line)}
.pg-toimialat-taksi .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-toimialat-taksi .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-toimialat-taksi .faq-q .pm svg{width:16px;height:16px;color:var(--brand-ink);transition:transform .3s var(--ease)}
.pg-toimialat-taksi .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-toimialat-taksi .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-toimialat-taksi .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-toimialat-taksi .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-toimialat-taksi .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-toimialat-taksi .cta-left h2{margin-bottom:1rem}
.pg-toimialat-taksi .cta-left .lead{margin-bottom:1.7rem}
.pg-toimialat-taksi .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-toimialat-taksi .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-toimialat-taksi .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-toimialat-taksi .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand-ink);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-toimialat-taksi .contact-alt .ic svg{width:20px;height:20px}
.pg-toimialat-taksi .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-toimialat-taksi .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-toimialat-taksi .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-toimialat-taksi .field{margin-bottom:1rem}
.pg-toimialat-taksi .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-toimialat-taksi .field label .req{color:var(--brand-ink)}
.pg-toimialat-taksi .field input, .pg-toimialat-taksi .field select, .pg-toimialat-taksi .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-toimialat-taksi .field input:focus, .pg-toimialat-taksi .field select:focus, .pg-toimialat-taksi .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-toimialat-taksi .field textarea{resize:vertical;min-height:120px}
.pg-toimialat-taksi .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-toimialat-taksi .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-toimialat-taksi .form-note a{color:var(--brand-ink);text-decoration:underline}
.pg-toimialat-taksi .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-toimialat-taksi .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-toimialat-taksi .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-toimialat-taksi .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand-ink);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-toimialat-taksi .form-success .check svg{width:30px;height:30px}
.pg-toimialat-taksi .form-success h3{margin-bottom:.5rem}
.pg-toimialat-taksi .site-footer{background:var(--ink);color:rgba(255,248,232,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-toimialat-taksi .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-toimialat-taksi .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-toimialat-taksi .foot-brand p{font-size:.92rem;color:rgba(255,248,232,.6);max-width:32ch;margin-bottom:1rem}
.pg-toimialat-taksi .foot-ytun{font-size:.82rem;color:rgba(255,248,232,.5)}
.pg-toimialat-taksi .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,248,232,.5);margin-bottom:1rem}
.pg-toimialat-taksi .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-toimialat-taksi .foot-col a{font-size:.93rem;color:rgba(255,248,232,.78);transition:color .2s}
.pg-toimialat-taksi .foot-col a:hover{color:var(--brand-2)}
.pg-toimialat-taksi .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-toimialat-taksi .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center}
.pg-toimialat-taksi .foot-legal button, .pg-toimialat-taksi .foot-legal a{font-size:.85rem;color:rgba(255,248,232,.6);transition:color .2s}
.pg-toimialat-taksi .foot-legal button:hover, .pg-toimialat-taksi .foot-legal a:hover{color:var(--brand-2)}
.pg-toimialat-taksi .foot-home{display:inline-flex;align-items:center;gap:.35em;font-weight:600;color:var(--brand-2)!important}
.pg-toimialat-taksi .foot-credit{font-size:.85rem;color:rgba(255,248,232,.5)}
.pg-toimialat-taksi .foot-credit b{color:rgba(255,248,232,.8);font-weight:600}
.pg-toimialat-taksi .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-toimialat-taksi .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-toimialat-taksi .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-toimialat-taksi .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-toimialat-taksi .ai-seo b{color:var(--ink);font-weight:600}
.pg-toimialat-taksi .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(22,20,14,.30);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-toimialat-taksi .sticky-bar.show{transform:translateY(0)}
.pg-toimialat-taksi .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:700;font-size:1rem;background:var(--ink);color:#fff}
.pg-toimialat-taksi .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-toimialat-taksi .sticky-bar a svg{width:19px;height:19px}
.pg-toimialat-taksi .sticky-bar a.call svg{color:var(--brand-2)}
.pg-toimialat-taksi .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-toimialat-taksi .cookie.show{transform:translateY(0)}
.pg-toimialat-taksi .cookie p{font-size:.9rem;color:var(--ink)}
.pg-toimialat-taksi .cookie p a{color:var(--brand-ink);text-decoration:underline;cursor:pointer}
.pg-toimialat-taksi .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-toimialat-taksi .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-toimialat-taksi .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-toimialat-taksi .modal.open{display:flex}
.pg-toimialat-taksi .modal-overlay{position:absolute;inset:0;background:rgba(22,20,14,.55);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-toimialat-taksi .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-toimialat-taksi .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-toimialat-taksi .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-toimialat-taksi .modal-box p, .pg-toimialat-taksi .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-toimialat-taksi .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-toimialat-taksi .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat-taksi .modal-close svg{width:22px;height:22px}
.pg-toimialat-taksi .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-toimialat-taksi .reveal.is-visible{opacity:1;transform:none}
.pg-toimialat-taksi .reveal.d1{transition-delay:.08s}
.pg-toimialat-taksi .reveal.d2{transition-delay:.16s}
.pg-toimialat-taksi .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-toimialat-taksi .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-toimialat-taksi .hero-visual{max-width:520px}.pg-toimialat-taksi .pain-grid{grid-template-columns:1fr;gap:1.1rem}.pg-toimialat-taksi .feat-grid{grid-template-columns:1fr 1fr}.pg-toimialat-taksi .roi-grid{grid-template-columns:1fr;gap:2.2rem}.pg-toimialat-taksi .ops-grid{grid-template-columns:1fr 1fr}.pg-toimialat-taksi .ref-grid{grid-template-columns:1fr}.pg-toimialat-taksi .cta-grid{grid-template-columns:1fr}.pg-toimialat-taksi .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-toimialat-taksi .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-toimialat-taksi{font-size:16px}.pg-toimialat-taksi .nav-links, .pg-toimialat-taksi .nav-phone{display:none}.pg-toimialat-taksi .burger{display:flex}.pg-toimialat-taksi .nav-actions .btn{display:none}.pg-toimialat-taksi .feat-grid{grid-template-columns:1fr}.pg-toimialat-taksi .ops-grid{grid-template-columns:1fr}.pg-toimialat-taksi .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-toimialat-taksi .price-card.featured{transform:none;order:-1}.pg-toimialat-taksi .price-card.featured:hover{transform:translateY(-4px)}.pg-toimialat-taksi .field-row{grid-template-columns:1fr}.pg-toimialat-taksi .ref-stats{gap:1.4rem}.pg-toimialat-taksi .foot-grid{grid-template-columns:1fr 1fr}.pg-toimialat-taksi .sticky-bar{display:grid}body.pg-toimialat-taksi{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-toimialat-taksi .cookie{bottom:72px}.pg-toimialat-taksi section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-toimialat-taksi .foot-grid{grid-template-columns:1fr}.pg-toimialat-taksi .hero-cta{flex-direction:column}.pg-toimialat-taksi .hero-cta .btn{width:100%}.pg-toimialat-taksi .ref-stats{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.pg-toimialat-taksi, .pg-toimialat-taksi *, .pg-toimialat-taksi *::before, .pg-toimialat-taksi *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-toimialat-taksi .reveal{opacity:1;transform:none}.pg-toimialat-taksi .marquee-track{animation:none}}
.pg-toimialat-taksi a:focus-visible, .pg-toimialat-taksi button:focus-visible, .pg-toimialat-taksi input:focus-visible, .pg-toimialat-taksi select:focus-visible, .pg-toimialat-taksi textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-toimialat-taksi .img-ph{overflow:hidden}
.pg-toimialat-taksi .avatar-ph{position:relative;overflow:hidden}
.pg-toimialat-taksi .img-ph>img.ph-img, .pg-toimialat-taksi .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-toimialat-taksi .avatar-ph>img.ph-img{object-position:center 20%}
.pg-toimialat-taksi .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-toimialat-taksi .ai-seo .wrap{max-width:920px}
.pg-toimialat-taksi .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-toimialat-taksi .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-toimialat-taksi .ai-seo p{max-width:78ch}
.pg-toimialat-taksi .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-toimialat-taksi .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-toimialat-taksi .ai-facts a{color:var(--brand)}
.pg-toimialat-taksi .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-toimialat-taksi .nav-links a.active, .pg-toimialat-taksi .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-toimialat-taksi .nav-links a.active::after, .pg-toimialat-taksi .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-toimialat-taksi .mm-links a.active, .pg-toimialat-taksi .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-toimialat-yhdistykset ============ */
.pg-toimialat-yhdistykset{--bg:#FAF7F0;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5C645B;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E7F1E8; 
  --warm:#C47A33;        
  --warm-ink:#9A5C23;    
  --warm-soft:#F5EADA;   
  --line:#EAE3D5;        
  --ink-on-brand:#F4FBF7;}
.pg-toimialat-yhdistykset{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.28);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-toimialat-yhdistykset, .pg-toimialat-yhdistykset *, .pg-toimialat-yhdistykset *::before, .pg-toimialat-yhdistykset *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-toimialat-yhdistykset{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-toimialat-yhdistykset img{max-width:100%;height:auto;display:block}
.pg-toimialat-yhdistykset a{color:inherit;text-decoration:none}
.pg-toimialat-yhdistykset button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-toimialat-yhdistykset ul{list-style:none}
.pg-toimialat-yhdistykset section{scroll-margin-top:84px}
.pg-toimialat-yhdistykset h1, .pg-toimialat-yhdistykset h2, .pg-toimialat-yhdistykset h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-toimialat-yhdistykset h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-toimialat-yhdistykset h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-toimialat-yhdistykset h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-toimialat-yhdistykset .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-toimialat-yhdistykset p{color:var(--muted)}
.pg-toimialat-yhdistykset .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-toimialat-yhdistykset .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-toimialat-yhdistykset .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-toimialat-yhdistykset .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-toimialat-yhdistykset .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-toimialat-yhdistykset .eyebrow.warm{color:var(--warm-ink)}
.pg-toimialat-yhdistykset .eyebrow.warm::before{background:var(--warm)}
.pg-toimialat-yhdistykset .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-toimialat-yhdistykset .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-toimialat-yhdistykset .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-toimialat-yhdistykset .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-toimialat-yhdistykset .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-toimialat-yhdistykset .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-toimialat-yhdistykset .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-toimialat-yhdistykset .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-toimialat-yhdistykset .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-toimialat-yhdistykset .btn-block{width:100%}
.pg-toimialat-yhdistykset .btn .arrow{transition:transform .25s var(--ease)}
.pg-toimialat-yhdistykset .btn:hover .arrow{transform:translateX(3px)}
.pg-toimialat-yhdistykset .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-toimialat-yhdistykset .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-toimialat-yhdistykset .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-toimialat-yhdistykset .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-toimialat-yhdistykset .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-toimialat-yhdistykset .nav-links{display:flex;align-items:center;gap:1.7rem}
.pg-toimialat-yhdistykset .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-toimialat-yhdistykset .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-toimialat-yhdistykset .nav-links a.back{display:inline-flex;align-items:center;gap:.35em;opacity:.7}
.pg-toimialat-yhdistykset .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-toimialat-yhdistykset .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-toimialat-yhdistykset .nav-phone:hover{color:var(--brand)}
.pg-toimialat-yhdistykset .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-toimialat-yhdistykset .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat-yhdistykset .burger svg{width:24px;height:24px}
.pg-toimialat-yhdistykset .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-toimialat-yhdistykset .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-toimialat-yhdistykset .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-toimialat-yhdistykset .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat-yhdistykset .mm-close svg{width:26px;height:26px}
.pg-toimialat-yhdistykset .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-toimialat-yhdistykset .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-toimialat-yhdistykset .mm-links a.back{font-size:1.05rem;font-family:var(--font-body);font-weight:600;color:var(--muted);border-bottom:none;display:inline-flex;align-items:center;gap:.4em}
.pg-toimialat-yhdistykset .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-toimialat-yhdistykset .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-toimialat-yhdistykset .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.75;z-index:0;pointer-events:none;}
.pg-toimialat-yhdistykset .hero::after{content:"";position:absolute;bottom:-20%;left:-12%;width:46vw;height:46vw;max-width:560px;max-height:560px;
  background:radial-gradient(circle at 50% 50%, var(--warm-soft), transparent 64%);
  opacity:.6;z-index:0;pointer-events:none;}
.pg-toimialat-yhdistykset .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-toimialat-yhdistykset .hero h1{margin-bottom:1.3rem}
.pg-toimialat-yhdistykset .hero h1 .light{color:var(--muted);font-weight:400}
.pg-toimialat-yhdistykset .hero-lead{max-width:42ch;margin-bottom:1.9rem}
.pg-toimialat-yhdistykset .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-toimialat-yhdistykset .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-toimialat-yhdistykset .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-toimialat-yhdistykset .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-toimialat-yhdistykset .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-toimialat-yhdistykset .chip b{font-weight:700;color:var(--brand)}
.pg-toimialat-yhdistykset .hero-visual{position:relative}
.pg-toimialat-yhdistykset .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-toimialat-yhdistykset .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-toimialat-yhdistykset .browser-bar .dots{display:flex;gap:.4em}
.pg-toimialat-yhdistykset .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-toimialat-yhdistykset .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-toimialat-yhdistykset .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--warm-soft) 50%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-toimialat-yhdistykset .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-toimialat-yhdistykset .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-toimialat-yhdistykset .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em .9em;display:flex;align-items:center;gap:.7em;max-width:230px;}
.pg-toimialat-yhdistykset .float-badge .fb-ic{width:40px;height:40px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-toimialat-yhdistykset .float-badge .fb-ic svg{width:22px;height:22px}
.pg-toimialat-yhdistykset .float-badge .lbl{font-size:.78rem;color:var(--muted);line-height:1.3;font-weight:500}
.pg-toimialat-yhdistykset .float-badge .lbl b{color:var(--ink);font-weight:700}
.pg-toimialat-yhdistykset .need-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}
.pg-toimialat-yhdistykset .need-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:1.6rem 1.4rem;display:flex;flex-direction:column;gap:.7rem;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-toimialat-yhdistykset .need-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--warm) 26%,var(--line))}
.pg-toimialat-yhdistykset .need-card .ic{width:44px;height:44px;border-radius:12px;background:var(--warm-soft);color:var(--warm-ink);display:flex;align-items:center;justify-content:center}
.pg-toimialat-yhdistykset .need-card .ic svg{width:23px;height:23px}
.pg-toimialat-yhdistykset .need-card h3{font-size:1.1rem}
.pg-toimialat-yhdistykset .need-card p{font-size:.95rem}
.pg-toimialat-yhdistykset .need-foot{margin-top:1.6rem;display:flex;align-items:flex-start;gap:.6em;font-size:1rem;color:var(--ink);max-width:62ch}
.pg-toimialat-yhdistykset .need-foot svg{width:20px;height:20px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-toimialat-yhdistykset .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-toimialat-yhdistykset .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-toimialat-yhdistykset .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-toimialat-yhdistykset .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-toimialat-yhdistykset .feat .ic svg{width:22px;height:22px}
.pg-toimialat-yhdistykset .feat h3{font-size:1.12rem}
.pg-toimialat-yhdistykset .feat p{font-size:.96rem}
.pg-toimialat-yhdistykset .ev-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.8rem,4vw,3.5rem);align-items:center}
.pg-toimialat-yhdistykset .ev-copy .lead{margin:1rem 0 1.4rem}
.pg-toimialat-yhdistykset .ev-list{display:flex;flex-direction:column;gap:.85rem;margin-top:1.3rem}
.pg-toimialat-yhdistykset .ev-list li{display:flex;align-items:flex-start;gap:.65em;font-size:1rem;color:var(--ink)}
.pg-toimialat-yhdistykset .ev-list li svg{width:20px;height:20px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-toimialat-yhdistykset .sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}
.pg-toimialat-yhdistykset .sheet-head{display:flex;align-items:center;gap:.55em;padding:.8em 1em;background:var(--brand);color:var(--ink-on-brand);font-size:.85rem;font-weight:600}
.pg-toimialat-yhdistykset .sheet-head svg{width:18px;height:18px}
.pg-toimialat-yhdistykset .sheet-head .tag{margin-left:auto;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.16);padding:.3em .7em;border-radius:100px}
.pg-toimialat-yhdistykset .sheet-row{display:grid;grid-template-columns:.8fr 1.3fr .9fr}
.pg-toimialat-yhdistykset .sheet-row>span{padding:.65em .8em;font-size:.84rem;color:var(--ink);border-top:1px solid var(--line);border-right:1px solid var(--line);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pg-toimialat-yhdistykset .sheet-row>span:last-child{border-right:none}
.pg-toimialat-yhdistykset .sheet-row.head>span{background:var(--warm-soft);font-weight:700;color:var(--warm-ink);border-top:none;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase}
.pg-toimialat-yhdistykset .sheet-row .cell-num{color:var(--muted)}
.pg-toimialat-yhdistykset .sheet-foot{padding:.75em 1em;font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);background:color-mix(in srgb,var(--warm-soft) 45%,var(--surface));display:flex;align-items:center;gap:.5em}
.pg-toimialat-yhdistykset .sheet-foot svg{width:16px;height:16px;color:var(--warm-ink);flex-shrink:0}
.pg-toimialat-yhdistykset .why-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.8rem,4vw,3.5rem);align-items:center}
.pg-toimialat-yhdistykset .why-list{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}
.pg-toimialat-yhdistykset .why-list li{display:flex;align-items:flex-start;gap:.8em}
.pg-toimialat-yhdistykset .why-list .wic{width:38px;height:38px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-toimialat-yhdistykset .why-list .wic svg{width:20px;height:20px}
.pg-toimialat-yhdistykset .why-list b{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-bottom:.1rem}
.pg-toimialat-yhdistykset .why-list p{font-size:.95rem}
.pg-toimialat-yhdistykset .trust-box{padding:1.5rem 1.6rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:1em;align-items:flex-start;}
.pg-toimialat-yhdistykset .trust-box .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--warm-soft) 50%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-toimialat-yhdistykset .trust-box .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-toimialat-yhdistykset .trust-box p{font-size:1rem;color:var(--ink)}
.pg-toimialat-yhdistykset .trust-box b{font-weight:600}
.pg-toimialat-yhdistykset .trust-box .sig{display:block;margin-top:.6rem;font-size:.88rem;color:var(--muted)}
.pg-toimialat-yhdistykset .assoc-band{margin-top:clamp(1.6rem,3vw,2.2rem);display:flex;gap:1em;align-items:flex-start;padding:1.4rem 1.6rem;background:var(--warm-soft);border:1px solid var(--line);border-left:3px solid var(--warm);border-radius:var(--radius)}
.pg-toimialat-yhdistykset .assoc-band .ab-ic{width:46px;height:46px;border-radius:12px;background:var(--surface);color:var(--warm-ink);display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid var(--line)}
.pg-toimialat-yhdistykset .assoc-band .ab-ic svg{width:23px;height:23px}
.pg-toimialat-yhdistykset .assoc-band p{font-size:1rem;color:var(--ink);margin:0;line-height:1.6}
.pg-toimialat-yhdistykset .assoc-band b{font-weight:600;color:var(--warm-ink)}
.pg-toimialat-yhdistykset .pricing{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;align-items:stretch;max-width:760px;margin:0 auto}
.pg-toimialat-yhdistykset .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-toimialat-yhdistykset .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-toimialat-yhdistykset .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);transform:scale(1.015)}
.pg-toimialat-yhdistykset .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-toimialat-yhdistykset .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-toimialat-yhdistykset .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-toimialat-yhdistykset .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-toimialat-yhdistykset .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-toimialat-yhdistykset .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-toimialat-yhdistykset .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-toimialat-yhdistykset .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-toimialat-yhdistykset .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-toimialat-yhdistykset .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-toimialat-yhdistykset .price-card .btn{margin-top:auto}
.pg-toimialat-yhdistykset .price-note{text-align:center;max-width:640px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-toimialat-yhdistykset .price-note b{color:var(--ink);font-weight:600}
.pg-toimialat-yhdistykset .partner{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,4rem);position:relative;overflow:hidden}
.pg-toimialat-yhdistykset .partner::after{content:"";position:absolute;right:-8%;top:-30%;width:42vw;max-width:520px;height:42vw;max-height:520px;background:radial-gradient(circle,var(--brand),transparent 64%);opacity:.45;pointer-events:none}
.pg-toimialat-yhdistykset .partner .eyebrow{color:var(--brand-2)}
.pg-toimialat-yhdistykset .partner .eyebrow::before{background:var(--brand-2);opacity:.7}
.pg-toimialat-yhdistykset .partner h2{color:#fff;position:relative;z-index:1}
.pg-toimialat-yhdistykset .partner .lead{color:rgba(244,251,247,.82);max-width:56ch;position:relative;z-index:1;opacity:1}
.pg-toimialat-yhdistykset .care-row{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:clamp(1.6rem,3.5vw,3rem);align-items:center;margin-top:clamp(1.8rem,3vw,2.4rem);position:relative;z-index:1}
.pg-toimialat-yhdistykset .care-tier{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:1.6rem 1.8rem;width:100%;backdrop-filter:blur(2px)}
.pg-toimialat-yhdistykset .care-tier .t-name{font-weight:600;font-size:1.1rem;color:#fff;margin-bottom:.2rem}
.pg-toimialat-yhdistykset .care-tier .t-price{font-family:var(--font-head);font-weight:600;font-size:2.1rem;color:var(--brand-2);margin-bottom:.5rem}
.pg-toimialat-yhdistykset .care-tier .t-price small{font-size:.85rem;color:rgba(244,251,247,.6);font-family:var(--font-body);font-weight:500}
.pg-toimialat-yhdistykset .care-tier p{font-size:.9rem;color:rgba(244,251,247,.74)}
.pg-toimialat-yhdistykset .care-copy p{color:rgba(244,251,247,.82);font-size:1.02rem;margin-bottom:1.2rem}
.pg-toimialat-yhdistykset .care-copy .small{font-size:.92rem;color:rgba(244,251,247,.62);margin-bottom:0}
.pg-toimialat-yhdistykset .partner-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;position:relative;z-index:1}
.pg-toimialat-yhdistykset .ex-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.8rem,4vw,3.5rem);align-items:center}
.pg-toimialat-yhdistykset .ex-copy .lead{margin:1rem 0 1.2rem}
.pg-toimialat-yhdistykset .ex-note{margin-top:1.4rem;padding:1.1rem 1.3rem;background:var(--warm-soft);border-radius:var(--radius);font-size:.95rem;color:var(--warm-ink)}
.pg-toimialat-yhdistykset .ex-note b{font-weight:700}
.pg-toimialat-yhdistykset .ex-note a{color:var(--warm-ink);text-decoration:underline;font-weight:600}
.pg-toimialat-yhdistykset .ref-card{margin-top:1.4rem;padding:1.5rem 1.6rem;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.pg-toimialat-yhdistykset .ref-card-head{display:flex;align-items:center;gap:.9em;margin-bottom:.9rem}
.pg-toimialat-yhdistykset .ref-card-head .ref-ic{width:46px;height:46px;border-radius:12px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-toimialat-yhdistykset .ref-card-head .ref-ic svg{width:24px;height:24px}
.pg-toimialat-yhdistykset .ref-card-head h3{font-size:1.18rem;margin-bottom:.12rem}
.pg-toimialat-yhdistykset .ref-card-head .ref-meta{font-size:.85rem;color:var(--muted);font-weight:500}
.pg-toimialat-yhdistykset .ref-card p{font-size:.97rem;color:var(--muted);margin-bottom:0}
.pg-toimialat-yhdistykset .ref-card .special-link{margin-top:.9rem}
.pg-toimialat-yhdistykset .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:1.4rem;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-toimialat-yhdistykset .special-link:hover .arrow{transform:translateX(4px)}
.pg-toimialat-yhdistykset .special-link .arrow{transition:transform .25s var(--ease)}
.pg-toimialat-yhdistykset .album{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}
.pg-toimialat-yhdistykset .album .img-ph{aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);padding:.6rem}
.pg-toimialat-yhdistykset .album .img-ph svg{width:24px;height:24px}
.pg-toimialat-yhdistykset .album .img-ph span{font-size:.66rem;max-width:14ch}
.pg-toimialat-yhdistykset .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-toimialat-yhdistykset .faq-item{border-bottom:1px solid var(--line)}
.pg-toimialat-yhdistykset .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-toimialat-yhdistykset .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-toimialat-yhdistykset .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-toimialat-yhdistykset .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-toimialat-yhdistykset .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-toimialat-yhdistykset .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-toimialat-yhdistykset .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-toimialat-yhdistykset .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-toimialat-yhdistykset .cta-left h2{margin-bottom:1rem}
.pg-toimialat-yhdistykset .cta-left .lead{margin-bottom:1.7rem}
.pg-toimialat-yhdistykset .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-toimialat-yhdistykset .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-toimialat-yhdistykset .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-toimialat-yhdistykset .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-toimialat-yhdistykset .contact-alt .ic svg{width:20px;height:20px}
.pg-toimialat-yhdistykset .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-toimialat-yhdistykset .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-toimialat-yhdistykset .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-toimialat-yhdistykset .field{margin-bottom:1rem}
.pg-toimialat-yhdistykset .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-toimialat-yhdistykset .field label .req{color:var(--brand)}
.pg-toimialat-yhdistykset .field input, .pg-toimialat-yhdistykset .field select, .pg-toimialat-yhdistykset .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-toimialat-yhdistykset .field input:focus, .pg-toimialat-yhdistykset .field select:focus, .pg-toimialat-yhdistykset .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-toimialat-yhdistykset .field textarea{resize:vertical;min-height:120px}
.pg-toimialat-yhdistykset .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-toimialat-yhdistykset .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-toimialat-yhdistykset .form-note a{color:var(--brand);text-decoration:underline}
.pg-toimialat-yhdistykset .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-toimialat-yhdistykset .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-toimialat-yhdistykset .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-toimialat-yhdistykset .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-toimialat-yhdistykset .form-success .check svg{width:30px;height:30px}
.pg-toimialat-yhdistykset .form-success h3{margin-bottom:.5rem}
.pg-toimialat-yhdistykset .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-toimialat-yhdistykset .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-toimialat-yhdistykset .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-toimialat-yhdistykset .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-toimialat-yhdistykset .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-toimialat-yhdistykset .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-toimialat-yhdistykset .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-toimialat-yhdistykset .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-toimialat-yhdistykset .foot-col a:hover{color:var(--brand-2)}
.pg-toimialat-yhdistykset .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-toimialat-yhdistykset .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-toimialat-yhdistykset .foot-legal button, .pg-toimialat-yhdistykset .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-toimialat-yhdistykset .foot-legal button:hover, .pg-toimialat-yhdistykset .foot-legal a:hover{color:var(--brand-2)}
.pg-toimialat-yhdistykset .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-toimialat-yhdistykset .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-toimialat-yhdistykset .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-toimialat-yhdistykset .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-toimialat-yhdistykset .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-toimialat-yhdistykset .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-toimialat-yhdistykset .ai-seo b{color:var(--ink);font-weight:600}
.pg-toimialat-yhdistykset .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-toimialat-yhdistykset .sticky-bar.show{transform:translateY(0)}
.pg-toimialat-yhdistykset .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-toimialat-yhdistykset .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-toimialat-yhdistykset .sticky-bar a svg{width:19px;height:19px}
.pg-toimialat-yhdistykset .sticky-bar a.call svg{color:var(--brand)}
.pg-toimialat-yhdistykset .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-toimialat-yhdistykset .cookie.show{transform:translateY(0)}
.pg-toimialat-yhdistykset .cookie p{font-size:.9rem;color:var(--ink)}
.pg-toimialat-yhdistykset .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-toimialat-yhdistykset .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-toimialat-yhdistykset .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-toimialat-yhdistykset .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-toimialat-yhdistykset .modal.open{display:flex}
.pg-toimialat-yhdistykset .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-toimialat-yhdistykset .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-toimialat-yhdistykset .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-toimialat-yhdistykset .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-toimialat-yhdistykset .modal-box p, .pg-toimialat-yhdistykset .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-toimialat-yhdistykset .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-toimialat-yhdistykset .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat-yhdistykset .modal-close svg{width:22px;height:22px}
.pg-toimialat-yhdistykset .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-toimialat-yhdistykset .reveal.is-visible{opacity:1;transform:none}
.pg-toimialat-yhdistykset .reveal.d1{transition-delay:.08s}
.pg-toimialat-yhdistykset .reveal.d2{transition-delay:.16s}
.pg-toimialat-yhdistykset .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-toimialat-yhdistykset .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-toimialat-yhdistykset .hero-visual{max-width:520px}.pg-toimialat-yhdistykset .need-grid{grid-template-columns:1fr 1fr}.pg-toimialat-yhdistykset .feat-grid{grid-template-columns:1fr 1fr}.pg-toimialat-yhdistykset .ev-grid{grid-template-columns:1fr;gap:2.2rem}.pg-toimialat-yhdistykset .why-grid{grid-template-columns:1fr;gap:2.2rem}.pg-toimialat-yhdistykset .ex-grid{grid-template-columns:1fr;gap:2.2rem}.pg-toimialat-yhdistykset .cta-grid{grid-template-columns:1fr}.pg-toimialat-yhdistykset .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-toimialat-yhdistykset .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-toimialat-yhdistykset{font-size:16px}.pg-toimialat-yhdistykset .nav-links, .pg-toimialat-yhdistykset .nav-phone{display:none}.pg-toimialat-yhdistykset .burger{display:flex}.pg-toimialat-yhdistykset .nav-actions .btn{display:none}.pg-toimialat-yhdistykset .need-grid{grid-template-columns:1fr}.pg-toimialat-yhdistykset .feat-grid{grid-template-columns:1fr}.pg-toimialat-yhdistykset .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-toimialat-yhdistykset .price-card.featured{transform:none;order:-1}.pg-toimialat-yhdistykset .price-card.featured:hover{transform:translateY(-4px)}.pg-toimialat-yhdistykset .care-row{grid-template-columns:1fr}.pg-toimialat-yhdistykset .field-row{grid-template-columns:1fr}.pg-toimialat-yhdistykset .foot-grid{grid-template-columns:1fr 1fr}.pg-toimialat-yhdistykset .sticky-bar{display:grid}body.pg-toimialat-yhdistykset{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-toimialat-yhdistykset .cookie{bottom:72px}.pg-toimialat-yhdistykset section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-toimialat-yhdistykset .foot-grid{grid-template-columns:1fr}.pg-toimialat-yhdistykset .hero-cta{flex-direction:column}.pg-toimialat-yhdistykset .hero-cta .btn{width:100%}.pg-toimialat-yhdistykset .album{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.pg-toimialat-yhdistykset, .pg-toimialat-yhdistykset *, .pg-toimialat-yhdistykset *::before, .pg-toimialat-yhdistykset *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-toimialat-yhdistykset .reveal{opacity:1;transform:none}}
.pg-toimialat-yhdistykset a:focus-visible, .pg-toimialat-yhdistykset button:focus-visible, .pg-toimialat-yhdistykset input:focus-visible, .pg-toimialat-yhdistykset select:focus-visible, .pg-toimialat-yhdistykset textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-toimialat-yhdistykset .price-note-extra{margin-top:1rem}
.pg-toimialat-yhdistykset .board-cta{display:flex;flex-direction:column;align-items:center;gap:.55rem;margin:1.7rem auto 0;text-align:center}
.pg-toimialat-yhdistykset .board-cta .btn svg{width:20px;height:20px}
.pg-toimialat-yhdistykset .board-cta-hint{font-size:.9rem;color:var(--muted);max-width:440px;margin:0}
.pg-toimialat-yhdistykset .board-eyebrow{font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);font-weight:700;margin-bottom:.5rem}
.pg-toimialat-yhdistykset .board-kooste ul{list-style:disc;padding-left:1.2rem;margin:.2rem 0 .7rem}
.pg-toimialat-yhdistykset .board-kooste li{font-size:.95rem;color:var(--muted);margin-bottom:.35rem;line-height:1.6}
.pg-toimialat-yhdistykset .board-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.7rem}
.pg-toimialat-yhdistykset .board-actions .btn{flex:1;min-width:170px}
.pg-toimialat-yhdistykset .board-copied{background:var(--brand-2)!important;color:var(--ink-on-brand)!important}
.pg-toimialat-yhdistykset .board-copysrc{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pg-toimialat-yhdistykset #board-print-area{display:none}
@media print{body.pg-toimialat-yhdistykset{background:#fff!important}body.pg-toimialat-yhdistykset>*{display:none!important}.pg-toimialat-yhdistykset #board-print-area{display:block!important}.pg-toimialat-yhdistykset #board-print-area *{color:#111!important}.pg-toimialat-yhdistykset #board-print-area h2{font-size:20pt;line-height:1.2;margin:0 0 10pt}.pg-toimialat-yhdistykset #board-print-area h3{font-size:12.5pt;margin:13pt 0 3pt}.pg-toimialat-yhdistykset #board-print-area p, .pg-toimialat-yhdistykset #board-print-area li{font-size:11pt;line-height:1.5;margin:0 0 6pt}.pg-toimialat-yhdistykset #board-print-area ul{padding-left:16pt;margin:0 0 6pt}.pg-toimialat-yhdistykset #board-print-area .board-eyebrow{display:none}.pg-toimialat-yhdistykset @page{margin:18mm}}
.pg-toimialat-yhdistykset .img-ph{overflow:hidden}
.pg-toimialat-yhdistykset .avatar-ph{position:relative;overflow:hidden}
.pg-toimialat-yhdistykset .img-ph>img.ph-img, .pg-toimialat-yhdistykset .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-toimialat-yhdistykset .avatar-ph>img.ph-img{object-position:center 20%}
.pg-toimialat-yhdistykset .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-toimialat-yhdistykset .ai-seo .wrap{max-width:920px}
.pg-toimialat-yhdistykset .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-toimialat-yhdistykset .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-toimialat-yhdistykset .ai-seo p{max-width:78ch}
.pg-toimialat-yhdistykset .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-toimialat-yhdistykset .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-toimialat-yhdistykset .ai-facts a{color:var(--brand)}
.pg-toimialat-yhdistykset .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-toimialat-yhdistykset .nav-links a.active, .pg-toimialat-yhdistykset .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-toimialat-yhdistykset .nav-links a.active::after, .pg-toimialat-yhdistykset .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-toimialat-yhdistykset .mm-links a.active, .pg-toimialat-yhdistykset .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-toimialat ============ */
.pg-toimialat{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-toimialat{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-toimialat, .pg-toimialat *, .pg-toimialat *::before, .pg-toimialat *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-toimialat{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-toimialat img{max-width:100%;height:auto;display:block}
.pg-toimialat a{color:inherit;text-decoration:none}
.pg-toimialat button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-toimialat ul{list-style:none}
.pg-toimialat section{scroll-margin-top:84px}
.pg-toimialat h1, .pg-toimialat h2, .pg-toimialat h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-toimialat h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-toimialat h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-toimialat h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-toimialat .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-toimialat p{color:var(--muted)}
.pg-toimialat .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-toimialat .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-toimialat .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-toimialat .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-toimialat .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-toimialat .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-toimialat .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-toimialat .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-toimialat .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-toimialat .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-toimialat .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-toimialat .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-toimialat .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-toimialat .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-toimialat .btn-block{width:100%}
.pg-toimialat .btn .arrow{transition:transform .25s var(--ease)}
.pg-toimialat .btn:hover .arrow{transform:translateX(3px)}
.pg-toimialat .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-toimialat .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-toimialat .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-toimialat .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-toimialat .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-toimialat .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-toimialat .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-toimialat .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-toimialat .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-toimialat .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-toimialat .nav-phone:hover{color:var(--brand)}
.pg-toimialat .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-toimialat .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat .burger svg{width:24px;height:24px}
.pg-toimialat .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-toimialat .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-toimialat .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-toimialat .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat .mm-close svg{width:26px;height:26px}
.pg-toimialat .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-toimialat .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-toimialat .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-toimialat .hero{position:relative;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5.5rem);overflow:hidden}
.pg-toimialat .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-toimialat .hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,4vw,4rem);align-items:center}
.pg-toimialat .hero h1{margin-bottom:1.3rem}
.pg-toimialat .hero h1 .light{color:var(--muted);font-weight:400}
.pg-toimialat .hero-lead{max-width:40ch;margin-bottom:1.9rem}
.pg-toimialat .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-toimialat .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:46ch}
.pg-toimialat .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-toimialat .hero-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.8rem}
.pg-toimialat .chip{display:inline-flex;align-items:center;gap:.45em;font-size:.85rem;font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:.4em .85em;border-radius:100px;box-shadow:var(--shadow-sm)}
.pg-toimialat .chip b{font-weight:700;color:var(--brand)}
.pg-toimialat .hero-visual{position:relative}
.pg-toimialat .hero-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);overflow:hidden;}
.pg-toimialat .browser-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 60%,var(--surface))}
.pg-toimialat .browser-bar .dots{display:flex;gap:.4em}
.pg-toimialat .browser-bar .dots i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.pg-toimialat .browser-bar .url{flex:1;font-size:.78rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:.35em .8em;text-align:center}
.pg-toimialat .img-ph{position:relative;aspect-ratio:4/3;
  background:
    linear-gradient(135deg, var(--accent-soft), color-mix(in srgb,var(--accent-soft) 40%, var(--surface)));
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5em;
  color:var(--brand);text-align:center;padding:1.5rem;}
.pg-toimialat .img-ph svg{width:40px;height:40px;opacity:.55}
.pg-toimialat .img-ph span{font-size:.82rem;font-weight:600;letter-spacing:.02em;opacity:.85;max-width:24ch}
.pg-toimialat .float-badge{position:absolute;left:-14px;bottom:24px;z-index:2;
  background:var(--surface);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--shadow);padding:.7em 1em;display:flex;align-items:center;gap:.7em;}
.pg-toimialat .float-badge .score{font-family:var(--font-head);font-weight:600;font-size:1.5rem;color:var(--brand);line-height:1}
.pg-toimialat .float-badge .lbl{font-size:.72rem;color:var(--muted);line-height:1.25;font-weight:500}
.pg-toimialat .two-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
.pg-toimialat .aud-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;}
.pg-toimialat .aud-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--brand) 30%,var(--line))}
.pg-toimialat .aud-card .num{font-family:var(--font-head);font-size:.95rem;font-weight:600;color:var(--brand);letter-spacing:.04em;margin-bottom:1.1rem}
.pg-toimialat .aud-card h3{margin-bottom:.7rem}
.pg-toimialat .aud-card p{margin-bottom:1.2rem;font-size:1rem}
.pg-toimialat .aud-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}
.pg-toimialat .aud-tags span{font-size:.8rem;color:var(--muted);background:var(--bg);border:1px solid var(--line);padding:.3em .7em;border-radius:8px}
.pg-toimialat .aud-card.is-feature{background:linear-gradient(160deg, color-mix(in srgb,var(--accent-soft) 70%,var(--surface)), var(--surface))}
.pg-toimialat .special-link{display:inline-flex;align-items:center;gap:.4em;margin-top:1.8rem;font-weight:600;color:var(--brand);font-size:.98rem}
.pg-toimialat .special-link:hover .arrow{transform:translateX(4px)}
.pg-toimialat .special-link .arrow{transition:transform .25s var(--ease)}
.pg-toimialat .feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.pg-toimialat .feat{background:var(--surface);padding:clamp(1.5rem,2.6vw,2.1rem);display:flex;flex-direction:column;gap:.7rem;transition:background .3s}
.pg-toimialat .feat:hover{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}
.pg-toimialat .feat .ic{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}
.pg-toimialat .feat .ic svg{width:22px;height:22px}
.pg-toimialat .feat h3{font-size:1.12rem}
.pg-toimialat .feat p{font-size:.96rem}
.pg-toimialat .feat.wide{grid-column:span 1}
.pg-toimialat .pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;align-items:stretch}
.pg-toimialat .price-card{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease);}
.pg-toimialat .price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pg-toimialat .price-card.featured{border:1.5px solid var(--brand);box-shadow:var(--shadow-lg);
  transform:scale(1.015);}
.pg-toimialat .price-card.featured:hover{transform:scale(1.015) translateY(-4px)}
.pg-toimialat .badge-top{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--ink-on-brand);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.45em 1em;border-radius:100px;white-space:nowrap}
.pg-toimialat .price-name{font-family:var(--font-head);font-weight:600;font-size:1.3rem;margin-bottom:.3rem}
.pg-toimialat .price-tag{display:flex;align-items:baseline;gap:.25em;margin:.5rem 0 .2rem}
.pg-toimialat .price-tag .amount{font-family:var(--font-head);font-weight:600;font-size:2.5rem;color:var(--ink);letter-spacing:-.02em}
.pg-toimialat .price-tag .cur{font-size:1.2rem;font-weight:600;color:var(--ink)}
.pg-toimialat .price-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.3rem}
.pg-toimialat .price-feats{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.6rem}
.pg-toimialat .price-feats li{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--ink)}
.pg-toimialat .price-feats li svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-toimialat .price-card .btn{margin-top:auto}
.pg-toimialat .price-note{text-align:center;max-width:620px;margin:2rem auto 0;font-size:.97rem;color:var(--muted)}
.pg-toimialat .price-note b{color:var(--ink);font-weight:600}
.pg-toimialat .price-foot-link{display:flex;justify-content:center;margin-top:1.3rem}
.pg-toimialat .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:step}
.pg-toimialat .step{position:relative;padding-top:3.5rem}
.pg-toimialat .step::before{counter-increment:step;content:"0" counter(step);
  position:absolute;top:0;left:0;font-family:var(--font-head);font-weight:600;font-size:1.05rem;
  color:var(--brand);background:var(--accent-soft);width:42px;height:42px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;}
.pg-toimialat .step h3{font-size:1.1rem;margin-bottom:.5rem}
.pg-toimialat .step p{font-size:.95rem}
.pg-toimialat .step .line{position:absolute;top:21px;left:52px;right:-12px;height:1.5px;background:var(--line)}
.pg-toimialat .step:last-child .line{display:none}
.pg-toimialat .ref-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem);align-items:center}
.pg-toimialat .ref-visual .hero-card{box-shadow:var(--shadow)}
.pg-toimialat .ref-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 1.5rem}
.pg-toimialat .ref-meta span{font-size:.8rem;font-weight:600;color:var(--brand);background:var(--accent-soft);padding:.35em .8em;border-radius:8px}
.pg-toimialat .ref-stats{display:flex;gap:2rem;margin:1.4rem 0}
.pg-toimialat .ref-stat .n{font-family:var(--font-head);font-weight:600;font-size:1.9rem;color:var(--ink);line-height:1}
.pg-toimialat .ref-stat .l{font-size:.85rem;color:var(--muted);margin-top:.2rem}
.pg-toimialat .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-toimialat .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-toimialat .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-toimialat .trust-box b{font-weight:600}
.pg-toimialat .album{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:.9rem}
.pg-toimialat .album .img-ph{aspect-ratio:1/1;border-radius:var(--radius);border:1px solid var(--line);padding:.6rem}
.pg-toimialat .album .img-ph svg{width:24px;height:24px}
.pg-toimialat .album .img-ph span{font-size:.66rem;max-width:14ch}
.pg-toimialat .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-toimialat .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-toimialat .partner{background:var(--ink);color:var(--ink-on-brand);border-radius:var(--radius-lg);padding:clamp(2.2rem,5vw,4rem);position:relative;overflow:hidden}
.pg-toimialat .partner::after{content:"";position:absolute;right:-8%;top:-30%;width:42vw;max-width:520px;height:42vw;max-height:520px;background:radial-gradient(circle,var(--brand),transparent 64%);opacity:.45;pointer-events:none}
.pg-toimialat .partner .eyebrow{color:var(--brand-2)}
.pg-toimialat .partner .eyebrow::before{background:var(--brand-2);opacity:.7}
.pg-toimialat .partner h2{color:#fff;position:relative;z-index:1}
.pg-toimialat .partner .lead{color:rgba(244,251,247,.82);max-width:54ch;position:relative;z-index:1;opacity:1}
.pg-toimialat .tier-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;position:relative;z-index:1}
.pg-toimialat .tier{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:1.4rem;backdrop-filter:blur(2px)}
.pg-toimialat .tier .t-name{font-weight:600;font-size:1.05rem;color:#fff;margin-bottom:.2rem}
.pg-toimialat .tier .t-price{font-family:var(--font-head);font-weight:600;font-size:1.7rem;color:var(--brand-2);margin-bottom:.6rem}
.pg-toimialat .tier .t-price small{font-size:.8rem;color:rgba(244,251,247,.6);font-family:var(--font-body);font-weight:500}
.pg-toimialat .tier p{font-size:.9rem;color:rgba(244,251,247,.72)}
.pg-toimialat .partner-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem;position:relative;z-index:1}
.pg-toimialat .partner-foot p{color:rgba(244,251,247,.72);font-size:.95rem}
.pg-toimialat .faq-list{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.pg-toimialat .faq-item{border-bottom:1px solid var(--line)}
.pg-toimialat .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.4rem 0;font-family:var(--font-head);font-weight:600;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--ink)}
.pg-toimialat .faq-q .pm{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .25s,border-color .25s,transform .25s}
.pg-toimialat .faq-q .pm svg{width:16px;height:16px;color:var(--brand);transition:transform .3s var(--ease)}
.pg-toimialat .faq-item.open .pm{background:var(--accent-soft);border-color:transparent}
.pg-toimialat .faq-item.open .pm svg{transform:rotate(45deg)}
.pg-toimialat .faq-a{max-height:0;overflow:hidden;transition:max-height .35s var(--ease)}
.pg-toimialat .faq-a p{padding:0 0 1.4rem;font-size:1rem;color:var(--muted);max-width:68ch}
.pg-toimialat .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-toimialat .cta-left h2{margin-bottom:1rem}
.pg-toimialat .cta-left .lead{margin-bottom:1.7rem}
.pg-toimialat .contact-alts{display:flex;flex-direction:column;gap:.8rem;margin-top:1.7rem}
.pg-toimialat .contact-alt{display:flex;align-items:center;gap:.9em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:border-color .25s,transform .25s,box-shadow .25s}
.pg-toimialat .contact-alt:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-toimialat .contact-alt .ic{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-toimialat .contact-alt .ic svg{width:20px;height:20px}
.pg-toimialat .contact-alt .ca-l{display:block;font-size:.8rem;color:var(--muted);font-weight:500}
.pg-toimialat .contact-alt .ca-v{display:block;font-weight:600;color:var(--ink);font-size:1.02rem;margin-top:1px}
.pg-toimialat .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-toimialat .field{margin-bottom:1rem}
.pg-toimialat .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-toimialat .field label .req{color:var(--brand)}
.pg-toimialat .field input, .pg-toimialat .field select, .pg-toimialat .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-toimialat .field input:focus, .pg-toimialat .field select:focus, .pg-toimialat .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-toimialat .field textarea{resize:vertical;min-height:120px}
.pg-toimialat .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-toimialat .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-toimialat .form-note a{color:var(--brand);text-decoration:underline}
.pg-toimialat .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-toimialat .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-toimialat .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-toimialat .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-toimialat .form-success .check svg{width:30px;height:30px}
.pg-toimialat .form-success h3{margin-bottom:.5rem}
.pg-toimialat .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-toimialat .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-toimialat .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-toimialat .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-toimialat .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-toimialat .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-toimialat .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-toimialat .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-toimialat .foot-col a:hover{color:var(--brand-2)}
.pg-toimialat .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-toimialat .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-toimialat .foot-legal button, .pg-toimialat .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-toimialat .foot-legal button:hover, .pg-toimialat .foot-legal a:hover{color:var(--brand-2)}
.pg-toimialat .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-toimialat .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-toimialat .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-toimialat .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-toimialat .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-toimialat .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-toimialat .ai-seo b{color:var(--ink);font-weight:600}
.pg-toimialat .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-toimialat .sticky-bar.show{transform:translateY(0)}
.pg-toimialat .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-toimialat .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-toimialat .sticky-bar a svg{width:19px;height:19px}
.pg-toimialat .sticky-bar a.call svg{color:var(--brand)}
.pg-toimialat .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-toimialat .cookie.show{transform:translateY(0)}
.pg-toimialat .cookie p{font-size:.9rem;color:var(--ink)}
.pg-toimialat .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-toimialat .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-toimialat .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-toimialat .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-toimialat .modal.open{display:flex}
.pg-toimialat .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-toimialat .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-toimialat .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-toimialat .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-toimialat .modal-box p, .pg-toimialat .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-toimialat .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-toimialat .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-toimialat .modal-close svg{width:22px;height:22px}
.pg-toimialat .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-toimialat .reveal.is-visible{opacity:1;transform:none}
.pg-toimialat .reveal.d1{transition-delay:.08s}
.pg-toimialat .reveal.d2{transition-delay:.16s}
.pg-toimialat .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-toimialat .hero-grid{grid-template-columns:1fr;gap:2.5rem}.pg-toimialat .hero-visual{max-width:520px}.pg-toimialat .feat-grid{grid-template-columns:1fr 1fr}.pg-toimialat .steps{grid-template-columns:1fr 1fr;gap:1.6rem 1.2rem}.pg-toimialat .step .line{display:none}.pg-toimialat .ref-grid{grid-template-columns:1fr}.pg-toimialat .cta-grid{grid-template-columns:1fr}.pg-toimialat .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-toimialat .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-toimialat{font-size:16px}.pg-toimialat .nav-links, .pg-toimialat .nav-phone{display:none}.pg-toimialat .burger{display:flex}.pg-toimialat .nav-actions .btn{display:none}.pg-toimialat .two-cards{grid-template-columns:1fr}.pg-toimialat .feat-grid{grid-template-columns:1fr}.pg-toimialat .pricing{grid-template-columns:1fr;gap:1.6rem}.pg-toimialat .price-card.featured{transform:none;order:-1}.pg-toimialat .price-card.featured:hover{transform:translateY(-4px)}.pg-toimialat .steps{grid-template-columns:1fr}.pg-toimialat .tier-row{grid-template-columns:1fr}.pg-toimialat .field-row{grid-template-columns:1fr}.pg-toimialat .ref-stats{gap:1.4rem}.pg-toimialat .foot-grid{grid-template-columns:1fr 1fr}.pg-toimialat .sticky-bar{display:grid}body.pg-toimialat{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-toimialat .cookie{bottom:72px}.pg-toimialat section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-toimialat .foot-grid{grid-template-columns:1fr}.pg-toimialat .hero-cta{flex-direction:column}.pg-toimialat .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-toimialat, .pg-toimialat *, .pg-toimialat *::before, .pg-toimialat *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-toimialat .reveal{opacity:1;transform:none}}
.pg-toimialat a:focus-visible, .pg-toimialat button:focus-visible, .pg-toimialat input:focus-visible, .pg-toimialat select:focus-visible, .pg-toimialat textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-toimialat .img-ph{overflow:hidden}
.pg-toimialat .avatar-ph{position:relative;overflow:hidden}
.pg-toimialat .img-ph>img.ph-img, .pg-toimialat .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-toimialat .avatar-ph>img.ph-img{object-position:center 20%}
.pg-toimialat .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-toimialat .ai-seo .wrap{max-width:920px}
.pg-toimialat .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-toimialat .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-toimialat .ai-seo p{max-width:78ch}
.pg-toimialat .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-toimialat .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-toimialat .ai-facts a{color:var(--brand)}
.pg-toimialat .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-toimialat .nav-links a.active, .pg-toimialat .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-toimialat .nav-links a.active::after, .pg-toimialat .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-toimialat .mm-links a.active, .pg-toimialat .mm-links a[aria-current="page"]{color:var(--brand)}

/* ============ pg-yhteystiedot ============ */
.pg-yhteystiedot{--bg:#FAFAF7;          
  --surface:#FFFFFF;     
  --ink:#0F1A14;         
  --muted:#5B6660;       
  --brand:#0E5C43;       
  --brand-ink:#0A3D2C;   
  --brand-2:#18B981;     
  --accent-soft:#E8F3EC; 
  --line:#E7E5DE;        
  --ink-on-brand:#F4FBF7;}
.pg-yhteystiedot{--font-head:'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --maxw:1180px;
  --radius:14px;
  --radius-sm:10px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(15,26,20,.04), 0 2px 8px rgba(15,26,20,.04);
  --shadow:0 10px 30px -12px rgba(15,26,20,.16);
  --shadow-lg:0 24px 60px -22px rgba(14,92,67,.30);
  --ease:cubic-bezier(.2,.7,.2,1);}
.pg-yhteystiedot, .pg-yhteystiedot *, .pg-yhteystiedot *::before, .pg-yhteystiedot *::after{box-sizing:border-box;margin:0;padding:0}
body.pg-yhteystiedot{font-family:var(--font-body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  font-weight:400;
  overflow-x:hidden;             
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;}
.pg-yhteystiedot img{max-width:100%;height:auto;display:block}
.pg-yhteystiedot a{color:inherit;text-decoration:none}
.pg-yhteystiedot button{font-family:inherit;cursor:pointer;border:none;background:none}
.pg-yhteystiedot ul{list-style:none}
.pg-yhteystiedot section{scroll-margin-top:84px}
.pg-yhteystiedot h1, .pg-yhteystiedot h2, .pg-yhteystiedot h3{font-family:var(--font-head);font-weight:500;line-height:1.08;letter-spacing:-.015em;color:var(--ink)}
.pg-yhteystiedot h1{font-size:clamp(2.4rem,6.2vw,4.3rem)}
.pg-yhteystiedot h2{font-size:clamp(1.9rem,4.2vw,3.05rem);font-weight:500}
.pg-yhteystiedot h3{font-size:clamp(1.18rem,2.1vw,1.42rem);font-weight:600;letter-spacing:-.01em}
.pg-yhteystiedot .em-italic{font-style:italic;font-weight:500;color:var(--brand)}
.pg-yhteystiedot p{color:var(--muted)}
.pg-yhteystiedot .lead{font-size:clamp(1.08rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink);opacity:.9}
.pg-yhteystiedot .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.pg-yhteystiedot .section{padding:clamp(3.5rem,8vw,7rem) 0}
.pg-yhteystiedot .eyebrow{display:inline-flex;align-items:center;gap:.55em;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--brand);margin-bottom:1.1rem;}
.pg-yhteystiedot .eyebrow::before{content:"";width:26px;height:1.5px;background:var(--brand);opacity:.5}
.pg-yhteystiedot .section-head{max-width:720px;margin-bottom:clamp(2rem,4vw,3.2rem)}
.pg-yhteystiedot .section-head p{margin-top:1rem;font-size:1.08rem}
.pg-yhteystiedot .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:600;font-size:1rem;letter-spacing:-.01em;
  padding:.92em 1.5em;border-radius:var(--radius-sm);
  transition:transform .25s var(--ease), background .25s var(--ease), box-shadow .25s var(--ease), color .25s var(--ease);
  white-space:nowrap;}
.pg-yhteystiedot .btn-primary{background:var(--brand);color:var(--ink-on-brand);box-shadow:var(--shadow-sm)}
.pg-yhteystiedot .btn-primary:hover{background:var(--brand-ink);transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-yhteystiedot .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.pg-yhteystiedot .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.pg-yhteystiedot .btn-light{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-sm)}
.pg-yhteystiedot .btn-light:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.pg-yhteystiedot .btn-block{width:100%}
.pg-yhteystiedot .btn .arrow{transition:transform .25s var(--ease)}
.pg-yhteystiedot .btn:hover .arrow{transform:translateX(3px)}
.pg-yhteystiedot .site-header{position:sticky;top:0;z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(140%) blur(8px);
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid transparent;
  transition:border-color .3s, box-shadow .3s, background .3s;}
.pg-yhteystiedot .site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 1px 0 rgba(15,26,20,.02), var(--shadow-sm);background:color-mix(in srgb, var(--bg) 96%, transparent)}
.pg-yhteystiedot .nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;height:72px}
.pg-yhteystiedot .brand{display:flex;align-items:center;gap:.6em;font-family:var(--font-head);font-weight:600;font-size:1.4rem;letter-spacing:-.02em;color:var(--ink)}
.pg-yhteystiedot .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px var(--accent-soft)}
.pg-yhteystiedot .nav-links{display:flex;align-items:center;gap:1.9rem}
.pg-yhteystiedot .nav-links a{font-size:.97rem;font-weight:500;color:var(--ink);opacity:.82;transition:opacity .2s,color .2s;position:relative}
.pg-yhteystiedot .nav-links a:hover{opacity:1;color:var(--brand)}
.pg-yhteystiedot .nav-links a.active{opacity:1;color:var(--brand)}
.pg-yhteystiedot .nav-links a.active::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-yhteystiedot .nav-actions{display:flex;align-items:center;gap:1.1rem}
.pg-yhteystiedot .nav-phone{display:inline-flex;align-items:center;gap:.45em;font-weight:600;font-size:.97rem;color:var(--ink)}
.pg-yhteystiedot .nav-phone:hover{color:var(--brand)}
.pg-yhteystiedot .nav-phone svg{width:16px;height:16px;color:var(--brand)}
.pg-yhteystiedot .burger{display:none;width:44px;height:44px;border-radius:10px;align-items:center;justify-content:center;color:var(--ink)}
.pg-yhteystiedot .burger svg{width:24px;height:24px}
.pg-yhteystiedot .mobile-menu{position:fixed;inset:0;z-index:70;background:var(--bg);
  display:flex;flex-direction:column;padding:0 22px 22px;
  transform:translateX(100%);transition:transform .35s var(--ease);
  visibility:hidden;}
.pg-yhteystiedot .mobile-menu.open{transform:translateX(0);visibility:visible}
.pg-yhteystiedot .mm-top{display:flex;align-items:center;justify-content:space-between;height:72px}
.pg-yhteystiedot .mm-close{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-yhteystiedot .mm-close svg{width:26px;height:26px}
.pg-yhteystiedot .mm-links{display:flex;flex-direction:column;gap:.3rem;margin-top:1.5rem}
.pg-yhteystiedot .mm-links a{font-family:var(--font-head);font-size:1.6rem;font-weight:500;padding:.5rem 0;border-bottom:1px solid var(--line);color:var(--ink)}
.pg-yhteystiedot .mm-cta{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding-top:1.5rem}
.pg-yhteystiedot .hero{position:relative;padding:clamp(2.6rem,6vw,4.5rem) 0 clamp(2rem,4vw,3rem);overflow:hidden}
.pg-yhteystiedot .hero::before{content:"";position:absolute;top:-30%;right:-10%;width:60vw;height:60vw;max-width:760px;max-height:760px;
  background:radial-gradient(circle at 50% 50%, var(--accent-soft), transparent 62%);
  opacity:.7;z-index:0;pointer-events:none;}
.pg-yhteystiedot .hero-inner{position:relative;z-index:1;max-width:760px}
.pg-yhteystiedot .hero h1{margin-bottom:1.3rem}
.pg-yhteystiedot .hero h1 .light{color:var(--muted);font-weight:400}
.pg-yhteystiedot .hero-lead{max-width:54ch;margin-bottom:1.9rem}
.pg-yhteystiedot .hero-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1.4rem}
.pg-yhteystiedot .hero-trust{display:flex;align-items:flex-start;gap:.6em;font-size:.95rem;color:var(--muted);max-width:50ch}
.pg-yhteystiedot .hero-trust svg{width:18px;height:18px;color:var(--brand);flex-shrink:0;margin-top:3px}
.pg-yhteystiedot .contact-info{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.pg-yhteystiedot .ci-card{display:flex;align-items:flex-start;gap:1rem;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:1.3rem 1.4rem;transition:border-color .25s,transform .25s,box-shadow .25s;}
.pg-yhteystiedot a.ci-card:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.pg-yhteystiedot .ci-ic{width:46px;height:46px;border-radius:12px;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.pg-yhteystiedot .ci-ic svg{width:22px;height:22px}
.pg-yhteystiedot .ci-body{display:flex;flex-direction:column;min-width:0}
.pg-yhteystiedot .ci-label{font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:.4rem}
.pg-yhteystiedot .ci-value{font-family:var(--font-head);font-weight:600;font-size:1.2rem;color:var(--ink);line-height:1.25;word-break:break-word}
.pg-yhteystiedot .ci-note{font-size:.92rem;color:var(--muted);line-height:1.5;margin-top:.4rem}
.pg-yhteystiedot .cta-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.pg-yhteystiedot .cta-left h2{margin-bottom:1rem}
.pg-yhteystiedot .cta-left .lead{margin-bottom:1.7rem}
.pg-yhteystiedot .trust-box{margin-top:1.6rem;padding:1.3rem 1.5rem;background:var(--surface);
  border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:var(--radius);
  display:flex;gap:.9em;align-items:flex-start;}
.pg-yhteystiedot .trust-box svg{width:22px;height:22px;color:var(--brand);flex-shrink:0;margin-top:2px}
.pg-yhteystiedot .trust-box p{font-size:.98rem;color:var(--ink)}
.pg-yhteystiedot .trust-box b{font-weight:600}
.pg-yhteystiedot .avatar-ph{width:54px;height:54px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,var(--accent-soft) 40%,var(--surface)));display:flex;align-items:center;justify-content:center;color:var(--brand);border:1px solid var(--line)}
.pg-yhteystiedot .avatar-ph svg{width:24px;height:24px;opacity:.6}
.pg-yhteystiedot .form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--shadow)}
.pg-yhteystiedot .field{margin-bottom:1rem}
.pg-yhteystiedot .field label{display:block;font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.pg-yhteystiedot .field label .req{color:var(--brand)}
.pg-yhteystiedot .field input, .pg-yhteystiedot .field select, .pg-yhteystiedot .field textarea{width:100%;font-family:inherit;font-size:1rem;color:var(--ink);
  background:var(--bg);border:1.5px solid var(--line);border-radius:var(--radius-sm);
  padding:.8em .95em;transition:border-color .2s,box-shadow .2s;}
.pg-yhteystiedot .field input:focus, .pg-yhteystiedot .field select:focus, .pg-yhteystiedot .field textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--accent-soft)}
.pg-yhteystiedot .field textarea{resize:vertical;min-height:120px}
.pg-yhteystiedot .field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pg-yhteystiedot .form-note{font-size:.82rem;color:var(--muted);margin-top:.6rem;text-align:center}
.pg-yhteystiedot .form-note a{color:var(--brand);text-decoration:underline}
.pg-yhteystiedot .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.pg-yhteystiedot .form-success{display:none;text-align:center;padding:1.5rem .5rem}
.pg-yhteystiedot .form-success.show{display:block;animation:fadeUp .5s var(--ease)}
.pg-yhteystiedot .form-success .check{width:62px;height:62px;border-radius:50%;background:var(--accent-soft);color:var(--brand);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}
.pg-yhteystiedot .form-success .check svg{width:30px;height:30px}
.pg-yhteystiedot .form-success h3{margin-bottom:.5rem}
.pg-yhteystiedot .site-footer{background:var(--ink);color:rgba(244,251,247,.72);padding:clamp(3rem,5vw,4.5rem) 0 7rem}
.pg-yhteystiedot .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem}
.pg-yhteystiedot .foot-brand .brand{color:#fff;margin-bottom:.9rem}
.pg-yhteystiedot .foot-brand p{font-size:.92rem;color:rgba(244,251,247,.6);max-width:30ch;margin-bottom:1rem}
.pg-yhteystiedot .foot-ytun{font-size:.82rem;color:rgba(244,251,247,.5)}
.pg-yhteystiedot .foot-col h4{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,251,247,.5);margin-bottom:1rem}
.pg-yhteystiedot .foot-col ul{display:flex;flex-direction:column;gap:.6rem}
.pg-yhteystiedot .foot-col a{font-size:.93rem;color:rgba(244,251,247,.78);transition:color .2s}
.pg-yhteystiedot .foot-col a:hover{color:var(--brand-2)}
.pg-yhteystiedot .foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1)}
.pg-yhteystiedot .foot-legal{display:flex;flex-wrap:wrap;gap:1.2rem}
.pg-yhteystiedot .foot-legal button, .pg-yhteystiedot .foot-legal a{font-size:.85rem;color:rgba(244,251,247,.6);transition:color .2s}
.pg-yhteystiedot .foot-legal button:hover, .pg-yhteystiedot .foot-legal a:hover{color:var(--brand-2)}
.pg-yhteystiedot .foot-credit{font-size:.85rem;color:rgba(244,251,247,.5)}
.pg-yhteystiedot .foot-credit b{color:rgba(244,251,247,.8);font-weight:600}
.pg-yhteystiedot .ai-seo{background:var(--bg);border-top:1px solid var(--line)}
.pg-yhteystiedot .ai-seo .wrap{padding-top:3rem;padding-bottom:3rem}
.pg-yhteystiedot .ai-seo h2{font-size:1.4rem;margin-bottom:1rem}
.pg-yhteystiedot .ai-seo p{font-size:.96rem;color:var(--muted);max-width:80ch;margin-bottom:1rem;line-height:1.7}
.pg-yhteystiedot .ai-seo b{color:var(--ink);font-weight:600}
.pg-yhteystiedot .sticky-bar{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:55;display:none;
  grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px -6px rgba(15,26,20,.28);
  transform:translateY(calc(100% + 16px));transition:transform .35s var(--ease);}
.pg-yhteystiedot .sticky-bar.show{transform:translateY(0)}
.pg-yhteystiedot .sticky-bar a{display:flex;align-items:center;justify-content:center;gap:.55em;padding:1em;font-weight:600;font-size:1rem;background:var(--surface);color:var(--ink)}
.pg-yhteystiedot .sticky-bar a.wa{background:var(--brand);color:var(--ink-on-brand)}
.pg-yhteystiedot .sticky-bar a svg{width:19px;height:19px}
.pg-yhteystiedot .sticky-bar a.call svg{color:var(--brand)}
.pg-yhteystiedot .cookie{position:fixed;left:14px;right:14px;bottom:14px;z-index:80;max-width:560px;margin:0 auto;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:1.2rem 1.3rem;
  transform:translateY(140%);transition:transform .45s var(--ease);}
.pg-yhteystiedot .cookie.show{transform:translateY(0)}
.pg-yhteystiedot .cookie p{font-size:.9rem;color:var(--ink)}
.pg-yhteystiedot .cookie p a{color:var(--brand);text-decoration:underline;cursor:pointer}
.pg-yhteystiedot .cookie-btns{display:flex;gap:.6rem;margin-top:.9rem;flex-wrap:wrap}
.pg-yhteystiedot .cookie-btns .btn{padding:.6em 1.1em;font-size:.92rem;flex:1;min-width:130px}
.pg-yhteystiedot .modal{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:18px}
.pg-yhteystiedot .modal.open{display:flex}
.pg-yhteystiedot .modal-overlay{position:absolute;inset:0;background:rgba(15,26,20,.5);backdrop-filter:blur(2px);animation:fadeIn .3s}
.pg-yhteystiedot .modal-box{position:relative;background:var(--surface);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg);padding:clamp(1.6rem,3vw,2.4rem);animation:fadeUp .35s var(--ease)}
.pg-yhteystiedot .modal-box h2{font-size:1.6rem;margin-bottom:1rem}
.pg-yhteystiedot .modal-box h3{font-size:1.05rem;margin:1.3rem 0 .4rem}
.pg-yhteystiedot .modal-box p, .pg-yhteystiedot .modal-box li{font-size:.95rem;color:var(--muted);margin-bottom:.7rem;line-height:1.65}
.pg-yhteystiedot .modal-box ul{list-style:disc;padding-left:1.2rem}
.pg-yhteystiedot .modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.pg-yhteystiedot .modal-close svg{width:22px;height:22px}
.pg-yhteystiedot .js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.pg-yhteystiedot .reveal.is-visible{opacity:1;transform:none}
.pg-yhteystiedot .reveal.d1{transition-delay:.08s}
.pg-yhteystiedot .reveal.d2{transition-delay:.16s}
.pg-yhteystiedot .reveal.d3{transition-delay:.24s}
@media(max-width:980px){.pg-yhteystiedot .cta-grid{grid-template-columns:1fr}.pg-yhteystiedot .foot-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.pg-yhteystiedot .foot-brand{grid-column:1 / -1}}
@media(max-width:760px){body.pg-yhteystiedot{font-size:16px}.pg-yhteystiedot .nav-links, .pg-yhteystiedot .nav-phone{display:none}.pg-yhteystiedot .burger{display:flex}.pg-yhteystiedot .nav-actions .btn{display:none}.pg-yhteystiedot .contact-info{grid-template-columns:1fr}.pg-yhteystiedot .field-row{grid-template-columns:1fr}.pg-yhteystiedot .foot-grid{grid-template-columns:1fr 1fr}.pg-yhteystiedot .sticky-bar{display:grid}body.pg-yhteystiedot{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.pg-yhteystiedot .cookie{bottom:72px}.pg-yhteystiedot section{scroll-margin-top:72px}}
@media(max-width:420px){.pg-yhteystiedot .foot-grid{grid-template-columns:1fr}.pg-yhteystiedot .hero-cta{flex-direction:column}.pg-yhteystiedot .hero-cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.pg-yhteystiedot, .pg-yhteystiedot *, .pg-yhteystiedot *::before, .pg-yhteystiedot *::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.pg-yhteystiedot .reveal{opacity:1;transform:none}}
.pg-yhteystiedot a:focus-visible, .pg-yhteystiedot button:focus-visible, .pg-yhteystiedot input:focus-visible, .pg-yhteystiedot select:focus-visible, .pg-yhteystiedot textarea:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
.pg-yhteystiedot .img-ph{overflow:hidden}
.pg-yhteystiedot .avatar-ph{position:relative;overflow:hidden}
.pg-yhteystiedot .img-ph>img.ph-img, .pg-yhteystiedot .avatar-ph>img.ph-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:2}
.pg-yhteystiedot .avatar-ph>img.ph-img{object-position:center 20%}
.pg-yhteystiedot .ai-seo{background:color-mix(in srgb, var(--accent-soft) 50%, var(--bg))}
.pg-yhteystiedot .ai-seo .wrap{max-width:920px}
.pg-yhteystiedot .ai-seo .eyebrow{margin-bottom:.7rem}
.pg-yhteystiedot .ai-seo h2{font-size:clamp(1.3rem,2.4vw,1.75rem);margin-bottom:1rem}
.pg-yhteystiedot .ai-seo p{max-width:78ch}
.pg-yhteystiedot .ai-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.7rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line);list-style:none}
.pg-yhteystiedot .ai-facts li{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.42rem .95rem;font-size:.88rem;color:var(--ink);font-weight:500}
.pg-yhteystiedot .ai-facts a{color:var(--brand)}
.pg-yhteystiedot .scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--brand);z-index:65;transition:width .08s linear;will-change:width;pointer-events:none}
.pg-yhteystiedot .nav-links a.active, .pg-yhteystiedot .nav-links a[aria-current="page"]{opacity:1;color:var(--brand);font-weight:600}
.pg-yhteystiedot .nav-links a.active::after, .pg-yhteystiedot .nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--brand);border-radius:2px}
.pg-yhteystiedot .mm-links a.active, .pg-yhteystiedot .mm-links a[aria-current="page"]{color:var(--brand)}
