:root{color-scheme:light;--bg: #F4EFE4;--surface: #FBF8F1;--surface-alt: #EDE6D6;--text: #1C1A15;--text-muted: #6E6657;--border: #DCD3BF;--hairline: #C9BFA6;--brand: #15315C;--brand-strong: #0C1E3C;--brand-soft: #E2E7F0;--accent: #E5560B;--accent-strong: #BF4406;--accent-soft: #FBE7D5;--success: #1E7A4D;--success-bg: #DBEFE0;--danger: #B23A2E;--danger-bg: #F6E0D9;--warning: #B07810;--warning-bg: #F6E9CC;--warning-text: #7A5208;--violet: #6741A8;--violet-bg: #EBE3F6;--teal: #0C6E58;--teal-bg: #D8EFE8;--header-bg: rgba(251,248,241,.82);--header-text: #15315C;--header-border: var(--hairline);--footer-bg: #0C1E3C;--footer-text: rgba(244,239,228,.7);--blue: var(--brand);--blue-dark: var(--brand-strong);--blue-light: var(--brand-soft);--green: var(--success);--green-light: var(--success-bg);--red: var(--danger);--red-light: var(--danger-bg);--yellow: var(--warning);--yellow-light:var(--warning-bg);--grey-50: var(--surface-alt);--grey-100: var(--surface-alt);--grey-200: var(--border);--grey-500: var(--text-muted);--grey-800: var(--text);--white: var(--surface);--font: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-mono: "Fraunces", ui-monospace, "SF Mono", Menlo, monospace;--radius-sm: 2px;--radius: 4px;--radius-lg: 8px;--shadow: 0 1px 2px rgba(28,26,21,.05), 0 2px 8px rgba(28,26,21,.05);--shadow-md: 0 10px 30px -8px rgba(12,30,60,.18);--max-width: 760px;--content-px: clamp(18px, 4vw, 44px);--ease: cubic-bezier(.22, 1, .36, 1)}[data-theme=dark]{color-scheme:dark;--bg: #0E1320;--surface: #161D2E;--surface-alt: #1D2638;--text: #ECE6D8;--text-muted: #99A2B5;--border: #2B3550;--hairline: #38415C;--brand: #6E9BE0;--brand-strong: #9BBDF0;--brand-soft: #1A2742;--accent: #FF7A33;--accent-strong: #FF6212;--accent-soft: #2C1A0E;--success: #4FBE8A;--success-bg: #102A20;--danger: #E37A6C;--danger-bg: #2E1714;--warning: #E0A93D;--warning-bg: #2A2210;--warning-text: #E0A93D;--violet: #A98BE0;--violet-bg: #211A38;--teal: #41C3A6;--teal-bg: #0C2A26;--header-bg: rgba(14,19,32,.8);--header-text: #ECE6D8;--header-border: var(--hairline);--footer-bg: #080C16;--footer-text: rgba(236,230,216,.62);--shadow: 0 1px 2px rgba(0,0,0,.4), 0 4px 14px rgba(0,0,0,.35);--shadow-md: 0 16px 40px -10px rgba(0,0,0,.6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:17px;line-height:1.7;color:var(--text);background:var(--bg);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .3s var(--ease),color .3s var(--ease);position:relative;min-height:100vh}body:before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E")}[data-theme=dark] body:before{mix-blend-mode:screen;opacity:.35}img,svg{display:block;max-width:100%}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.015em;line-height:1.12;font-optical-sizing:auto}a{color:var(--accent-strong);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent)}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.card,.calculator,.site-header,.result-box,input,select,textarea{transition:background-color .25s var(--ease),border-color .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease),transform .25s var(--ease)}.container{max-width:var(--max-width);margin-inline:auto;padding-inline:var(--content-px)}.container--wide{max-width:1120px}.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-family:var(--font);font-size:.74rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-strong)}.eyebrow:before{content:"";width:22px;height:2px;background:var(--accent)}.site-header{background:var(--header-bg);-webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);color:var(--header-text);border-bottom:1px solid var(--header-border);position:sticky;top:0;z-index:100}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:66px;padding-inline:var(--content-px);max-width:1120px;margin-inline:auto}.site-header__logo{font-family:var(--font-display);font-size:1.45rem;font-weight:600;color:var(--header-text);text-decoration:none;letter-spacing:-.03em;white-space:nowrap}.site-header__logo span{color:var(--accent);font-weight:600}.site-nav{display:flex;gap:2px;align-items:center;flex-wrap:wrap}.site-nav a:not(.btn){position:relative;color:color-mix(in srgb,var(--header-text) 78%,transparent);text-decoration:none;font-size:.92rem;font-weight:500;padding:8px 12px;border-radius:var(--radius);white-space:nowrap;transition:color .15s var(--ease)}.site-nav a:not(.btn):after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:1.5px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.site-nav a:not(.btn):hover,.site-nav a:not(.btn)[aria-current=page]{color:var(--header-text)}.site-nav a:not(.btn):hover:after,.site-nav a:not(.btn)[aria-current=page]:after{transform:scaleX(1)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--hairline);background:transparent;color:var(--header-text);cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s,transform .4s var(--ease)}.theme-toggle:hover{background:color-mix(in srgb,var(--header-text) 10%,transparent);transform:rotate(25deg)}.theme-toggle svg{width:18px;height:18px}.theme-toggle .icon-sun{display:none}.theme-toggle .icon-moon,[data-theme=dark] .theme-toggle .icon-sun{display:block}[data-theme=dark] .theme-toggle .icon-moon{display:none}.hero{position:relative;background:var(--bg);color:var(--text);padding:clamp(56px,9vw,116px) var(--content-px) clamp(48px,7vw,92px);text-align:center;overflow:hidden;border-bottom:1px solid var(--hairline)}.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(120% 80% at 50% -20%,color-mix(in srgb,var(--brand) 12%,transparent),transparent 60%),repeating-linear-gradient(to bottom,transparent 0 39px,color-mix(in srgb,var(--hairline) 55%,transparent) 39px 40px);-webkit-mask-image:radial-gradient(75% 85% at 50% 30%,#000 30%,transparent 100%);mask-image:radial-gradient(75% 85% at 50% 30%,#000 30%,transparent 100%)}.hero>*{position:relative}.hero h1{font-family:var(--font-display);font-size:clamp(2.3rem,6.5vw,4.4rem);font-weight:600;line-height:1.02;letter-spacing:-.025em;margin:18px auto 20px;max-width:16ch}.hero h1 em{font-style:italic;color:var(--accent)}.hero p{font-size:clamp(1.05rem,2vw,1.28rem);color:var(--text-muted);max-width:52ch;margin-inline:auto;margin-bottom:36px;line-height:1.55}.hero__cta{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#fff;font-weight:700;font-size:1.04rem;padding:15px 30px;border-radius:var(--radius);text-decoration:none;box-shadow:0 10px 24px -8px color-mix(in srgb,var(--accent) 70%,transparent);transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .15s}.hero__cta:hover{transform:translateY(-2px);background:var(--accent-strong);color:#fff;box-shadow:0 16px 32px -10px color-mix(in srgb,var(--accent) 80%,transparent)}.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:var(--radius);font-weight:600;font-size:.95rem;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:all .2s var(--ease);font-family:var(--font)}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-strong);color:#fff;transform:translateY(-1px)}.btn-accent{background:var(--accent);color:#fff;box-shadow:0 4px 14px -4px color-mix(in srgb,var(--accent) 65%,transparent)}.btn-accent:hover{background:var(--accent-strong);color:#fff;transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--brand);border-color:var(--hairline)}.btn-outline:hover{background:var(--surface);border-color:var(--brand);color:var(--brand)}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow);transition:box-shadow .25s var(--ease),transform .25s var(--ease),border-color .25s var(--ease);overflow:hidden}.card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);transform:scaleY(0);transform-origin:top;transition:transform .3s var(--ease)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);border-color:var(--hairline)}.card:hover:after{transform:scaleY(1)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.calculator{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(24px,4vw,40px);margin:32px 0;box-shadow:var(--shadow)}.calculator__title{font-family:var(--font-display);font-size:1.6rem;font-weight:600;margin-bottom:8px;color:var(--text)}.calculator__subtitle{color:var(--text-muted);margin-bottom:28px;font-size:.95rem}.field-group{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-bottom:24px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-weight:600;font-size:.82rem;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted)}.field label .hint{font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-muted);margin-left:4px;opacity:.8}.field input[type=number],.field input[type=text],.field select{padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--radius);font-size:1.05rem;font-family:var(--font);font-variant-numeric:tabular-nums;color:var(--text);background:var(--bg);transition:border-color .15s,box-shadow .15s,background .15s;width:100%}.field input:focus,.field select:focus{outline:none;background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.field-inline{display:flex;align-items:center;gap:12px;padding:10px 0}.field-inline input[type=checkbox]{width:19px;height:19px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.field-inline label{font-weight:500;margin:0;cursor:pointer;font-size:.95rem;color:var(--text)}.result-box{position:relative;border-radius:var(--radius-lg);padding:26px 30px;margin-top:26px;display:none;background:var(--surface);border:1px solid var(--border);border-left-width:4px}.result-box.show{display:block;animation:ledger-in .45s var(--ease)}@keyframes ledger-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-box--matkyt{border-left-color:var(--danger);background:color-mix(in srgb,var(--danger-bg) 55%,var(--surface))}.result-box--palautus{border-left-color:var(--success);background:color-mix(in srgb,var(--success-bg) 55%,var(--surface))}.result-box--neutraali{border-left-color:var(--warning);background:color-mix(in srgb,var(--warning-bg) 55%,var(--surface))}.result-box__label{font-family:var(--font);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.result-box--matkyt .result-box__label{color:var(--danger)}.result-box--palautus .result-box__label{color:var(--success)}.result-box--neutraali .result-box__label{color:var(--warning-text)}.result-box__amount{font-family:var(--font-display);font-size:clamp(2.4rem,7vw,3.6rem);font-weight:600;letter-spacing:-.03em;line-height:1;margin-bottom:10px;font-variant-numeric:tabular-nums lining-nums}.result-box--matkyt .result-box__amount{color:var(--danger)}.result-box--palautus .result-box__amount{color:var(--success)}.result-box__explanation{font-size:.95rem;color:var(--text-muted);line-height:1.55}.result-breakdown{margin-top:22px;font-size:.92rem;border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}.result-breakdown tr{display:flex;align-items:baseline;gap:6px;padding:7px 0}.result-breakdown td{padding:0}.result-breakdown td:first-child{flex:1;color:var(--text-muted);position:relative;overflow:hidden;white-space:nowrap}.result-breakdown td:first-child:after{content:" ·····························································································";color:var(--hairline);letter-spacing:2px;margin-left:6px}.result-breakdown td:last-child{text-align:right;font-weight:600;color:var(--text);white-space:nowrap}.result-breakdown .total{border-top:1.5px solid var(--hairline);margin-top:4px;padding-top:12px}.result-breakdown .total td{font-weight:700;font-size:1.05rem}.result-breakdown .total td:first-child{color:var(--text)}.result-breakdown .total td:first-child:after{content:none}.result-source{margin-top:18px;font-size:.82rem;color:var(--text-muted)}.result-source a{color:var(--text-muted)}.article-header{padding:clamp(36px,5vw,68px) 0 26px;border-bottom:1px solid var(--hairline);margin-bottom:34px}.article-header__category{display:inline-block;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-strong);background:var(--accent-soft);padding:4px 12px;border-radius:20px;margin-bottom:16px}.article-header h1{font-family:var(--font-display);font-size:clamp(1.9rem,4.5vw,3rem);font-weight:600;line-height:1.08;letter-spacing:-.02em}.article-header__meta{color:var(--text-muted);font-size:.88rem;margin-top:16px}.article-content{font-size:1.08rem}.article-content h2{font-family:var(--font-display);font-size:1.7rem;font-weight:600;margin:44px 0 14px;color:var(--text);letter-spacing:-.015em}.article-content h3{font-family:var(--font-display);font-size:1.28rem;font-weight:600;margin:28px 0 10px;color:var(--text)}.article-content p{margin-bottom:18px}.article-content ul,.article-content ol{margin:0 0 18px 22px}.article-content li{margin-bottom:8px}.article-content li::marker{color:var(--accent)}.article-content strong{font-weight:700;color:var(--text)}.article-content a{font-weight:500}.article-content blockquote{border-left:3px solid var(--accent);margin:24px 0;padding:4px 0 4px 22px;font-family:var(--font-display);font-style:italic;font-size:1.2rem;color:var(--text)}.article-content .example-box{background:var(--brand-soft);border-left:3px solid var(--brand);padding:18px 22px;border-radius:0 var(--radius) var(--radius) 0;margin:26px 0;font-size:.97rem}.article-content .example-box p:last-child{margin-bottom:0}.article-content .highlight-box{background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--warning) 45%,transparent);border-radius:var(--radius);padding:18px 22px;margin:26px 0;font-size:.97rem}.article-card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:inherit;border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;background:var(--surface);overflow:hidden;transition:box-shadow .25s var(--ease),transform .25s var(--ease),border-color .25s var(--ease)}.article-card:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.article-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px);border-color:var(--hairline);color:inherit}.article-card:hover:after{transform:scaleX(1)}.article-card__cat{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-strong);margin-bottom:12px}.article-card__title{font-family:var(--font-display);font-size:1.18rem;font-weight:600;line-height:1.2;letter-spacing:-.01em;margin-bottom:10px;color:var(--text)}.article-card__desc{font-size:.9rem;color:var(--text-muted);line-height:1.5;flex:1}.article-card__date{font-size:.78rem;color:var(--text-muted);margin-top:16px;opacity:.85}.disclaimer{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;font-size:.82rem;color:var(--text-muted);line-height:1.55;margin:36px 0 0}.disclaimer a{color:var(--text-muted)}.disclaimer strong{color:var(--text)}.badge{display:inline-block;font-size:.72rem;font-weight:700;padding:4px 11px;border-radius:20px;text-transform:uppercase;letter-spacing:.08em}.badge--matkyt{background:var(--danger-bg);color:var(--danger)}.badge--vahennykset{background:var(--success-bg);color:var(--success)}.badge--veroprosentti{background:var(--brand-soft);color:var(--brand)}.badge--sijoitukset{background:var(--violet-bg);color:var(--violet)}.badge--kausitieto{background:var(--warning-bg);color:var(--warning-text)}.badge--verosuunnittelu{background:var(--teal-bg);color:var(--teal)}.eli5-box{background:var(--success-bg);border:1px solid color-mix(in srgb,var(--success) 40%,transparent);border-left:4px solid var(--success);border-radius:var(--radius-lg);padding:22px 26px;margin:0 0 34px}.eli5-box__label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--success);margin-bottom:10px}.eli5-box p{margin:0;font-family:var(--font-display);font-size:1.2rem;line-height:1.5;color:var(--text)}.taxtip-box{background:var(--warning-bg);border:1px solid color-mix(in srgb,var(--warning) 45%,transparent);border-left:4px solid var(--warning);border-radius:var(--radius-lg);padding:22px 26px;margin:34px 0 0}.taxtip-box__label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--warning-text);margin-bottom:10px}.taxtip-box p{margin:0;font-size:1.02rem;line-height:1.6;color:var(--text)}.taxtip-box a{color:var(--warning-text);font-weight:700}.calc-cta{background:var(--brand);color:#fff;border-radius:var(--radius-lg);padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:34px 0}.calc-cta__text{font-family:var(--font-display);font-weight:600;font-size:1.25rem;color:#fff}.calc-cta__sub{font-size:.9rem;font-weight:400;color:#ffffffc7;margin-top:4px}.calc-cta .btn-primary{background:var(--accent)}.calc-cta .btn-primary:hover{background:var(--accent-strong)}.section{padding:clamp(48px,7vw,88px) var(--content-px)}.section--alt{background:var(--surface);border-block:1px solid var(--hairline)}.section-title{font-family:var(--font-display);font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:600;letter-spacing:-.02em;margin-bottom:8px;color:var(--text)}.section-sub{color:var(--text-muted);margin-bottom:32px;font-size:1.05rem;max-width:56ch}.site-footer{background:var(--footer-bg);color:var(--footer-text);padding:56px var(--content-px) 32px;font-size:.88rem;position:relative}.site-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}.site-footer__grid{max-width:1120px;margin-inline:auto;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:36px;margin-bottom:40px}.site-footer__title{font-family:var(--font);color:#fff;font-weight:700;margin-bottom:14px;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.site-footer a{color:#ffffff9e;text-decoration:none;display:block;margin-bottom:8px;transition:color .15s}.site-footer a:hover{color:var(--accent)}.site-footer__bottom{max-width:1120px;margin-inline:auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.site-footer__bottom a{display:inline;color:#ffffff9e}.site-footer__disclaimer{font-size:.8rem;opacity:.5;margin-top:10px;max-width:1120px;margin-inline:auto}.breadcrumb{font-size:.84rem;color:var(--text-muted);margin-bottom:20px}.breadcrumb a{color:var(--text-muted);text-decoration:none}.breadcrumb a:hover{color:var(--accent)}.breadcrumb__sep{margin:0 8px;opacity:.5}.source-note{font-size:.82rem;color:var(--text-muted);margin-top:8px;padding:10px 14px;background:var(--surface-alt);border-radius:var(--radius);border-left:3px solid var(--hairline)}[data-theme=dark] .card,[data-theme=dark] .article-card,[data-theme=dark] .calculator{background:var(--surface)}[data-theme=dark] .section--alt{background:var(--surface-alt)}@media (max-width: 860px){.site-footer__grid{grid-template-columns:1fr 1fr}}@media (max-width: 720px){.site-nav a:not(.btn){display:none}.calc-cta{flex-direction:column;align-items:flex-start}.field-group{grid-template-columns:1fr}.site-footer__grid{grid-template-columns:1fr;gap:28px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{body:before{display:none}.site-header,.site-footer,.hero__cta,.calc-cta,.theme-toggle{display:none}.container{max-width:100%}}
