.lang-switcher[data-astro-cid-a2mxz4y6]{display:inline-flex;gap:.5em;font-size:var(--text-sm)}.lang-switcher[data-astro-cid-a2mxz4y6] a[data-astro-cid-a2mxz4y6]{text-decoration:none;color:var(--color-muted);padding:.1em .4em;border-radius:var(--radius-sm);letter-spacing:.05em}.lang-switcher[data-astro-cid-a2mxz4y6] a[data-astro-cid-a2mxz4y6].active{color:var(--color-brand-on-bg);font-weight:var(--weight-medium)}.lang-switcher[data-astro-cid-a2mxz4y6] a[data-astro-cid-a2mxz4y6]:hover{color:var(--color-link)}.primary-nav[data-astro-cid-dmqpwcec] ul[data-astro-cid-dmqpwcec]{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space) var(--space-sm)}.primary-nav[data-astro-cid-dmqpwcec] li[data-astro-cid-dmqpwcec]{padding:0}.nav-sep[data-astro-cid-dmqpwcec]{color:var(--color-muted-soft);font-size:1.4em;line-height:0;user-select:none;padding:0 var(--space-sm);pointer-events:none}.nav-link[data-astro-cid-dmqpwcec]{text-decoration:none;color:var(--color-ink-strong);font-weight:var(--weight-medium);font-size:var(--text-base);padding:.25em 0;border-bottom:2px solid transparent;transition:border-color .15s,color .15s}.nav-link[data-astro-cid-dmqpwcec]:hover{color:var(--color-link);border-bottom-color:currentColor}.nav-link[data-astro-cid-dmqpwcec].active{color:var(--color-brand-on-bg);border-bottom-color:var(--color-brand-on-bg)}.nav-link[data-astro-cid-dmqpwcec].cta{padding:.35em 1em;border:1px solid var(--color-brand-on-bg);border-radius:var(--radius-sm);color:var(--color-brand-on-bg);background:transparent}.nav-link[data-astro-cid-dmqpwcec].cta:hover{background:var(--color-brand-on-bg);color:var(--color-bg);border-bottom-color:var(--color-brand-on-bg)}.nav-link[data-astro-cid-dmqpwcec].cta.active{border-bottom-color:var(--color-brand-on-bg)}@media(max-width:720px){.primary-nav[data-astro-cid-dmqpwcec] ul[data-astro-cid-dmqpwcec]{gap:var(--space-sm) var(--space-xs)}.nav-link[data-astro-cid-dmqpwcec]{font-size:var(--text-sm)}.nav-sep[data-astro-cid-dmqpwcec]{padding:0 .15em;font-size:1.2em}}*{box-sizing:border-box}html{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg)}body{margin:0;line-height:1.7;font-size:var(--text-base);display:flex;flex-direction:column;min-height:100vh}main{max-width:var(--container);margin:0 auto;padding:var(--space-lg) var(--space);width:100%;flex:1}h1,h2,h3,h4,h5,h6{color:var(--color-heading);margin-top:0;overflow-wrap:break-word;hyphens:auto}h1{font-family:var(--font-script);font-weight:var(--weight-regular);color:var(--color-brand-on-bg);letter-spacing:normal;line-height:1.15;font-size:clamp(2.5rem,6vw + 1rem,4rem);margin-bottom:var(--space-md)}h2{font-family:var(--font-body);font-weight:var(--weight-medium);letter-spacing:.02em;line-height:var(--leading-snug);font-size:clamp(1.5rem,3vw + .75rem,2.25rem);margin-bottom:var(--space);color:var(--color-ink-strong)}h3,h4,h5,h6{font-family:var(--font-body);font-weight:var(--weight-bold);letter-spacing:.05em;line-height:var(--leading-tight)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base);text-transform:uppercase;letter-spacing:.08em}h6{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted)}blockquote,.accent{font-family:var(--font-serif);font-style:italic}a{color:var(--color-link);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--color-link-hover)}.muted{color:var(--color-muted);font-size:var(--text-sm)}article.page.testimonials>p:not(:first-of-type):not(:has(>img:only-child)):not(:has(>a[href*="varaa.timma.fi"]:only-child)),article.page.testimonials>h3{font-family:var(--font-serif);font-style:italic;font-weight:var(--weight-regular);border-left:3px solid var(--color-rose);padding:.35em 0 .35em var(--space);margin:var(--space-md) 0;color:var(--color-ink-strong)}article.page.testimonials>h3{font-size:var(--text-lg)}.location-map{display:block;width:100%;max-width:52rem;margin:var(--space-lg) auto;aspect-ratio:16 / 9;border-radius:var(--radius);overflow:hidden;background:var(--color-bg-soft)}.location-map iframe{width:100%;height:100%;border:0;display:block}article.page a[href*="varaa.timma.fi"]{display:inline-block;padding:.55em 1.3em;margin:.2em .3em .2em 0;border:1px solid var(--color-brand-on-bg);border-radius:var(--radius-sm);color:var(--color-brand-on-bg);text-decoration:none;font-weight:var(--weight-medium);letter-spacing:.02em;transition:background .15s,color .15s}article.page a[href*="varaa.timma.fi"]:hover{background:var(--color-brand-on-bg);color:var(--color-bg)}.aurora-butterflies{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.aurora-butterflies .abf{position:absolute;background-color:var(--color-aurora-butterfly);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;will-change:transform,translate}.aurora-butterflies .abf-1{top:6vh;left:7vw;width:140px;aspect-ratio:182.6 / 195.1;opacity:.18;translate:calc(var(--abf-sx, 0px) * 1) calc(var(--abf-sy, 0px) * 1);-webkit-mask-image:url(/brand/butterfly-1.svg);mask-image:url(/brand/butterfly-1.svg)}.aurora-butterflies .abf-2{top:36vh;right:4vw;width:120px;aspect-ratio:176.4 / 208.2;opacity:.15;transform:rotate(6deg);translate:calc(var(--abf-sx, 0px) * -.7) calc(var(--abf-sy, 0px) * .8);-webkit-mask-image:url(/brand/butterfly-2.svg);mask-image:url(/brand/butterfly-2.svg)}.aurora-butterflies .abf-3{top:62vh;left:26vw;width:130px;aspect-ratio:171.8 / 166.2;opacity:.13;transform:rotate(-8deg);translate:calc(var(--abf-sx, 0px) * .5) calc(var(--abf-sy, 0px) * 1.2);-webkit-mask-image:url(/brand/butterfly-3.svg);mask-image:url(/brand/butterfly-3.svg)}.aurora-butterflies .abf-4{bottom:6vh;right:14vw;width:160px;aspect-ratio:214.9 / 199.4;opacity:.14;transform:rotate(4deg);translate:calc(var(--abf-sx, 0px) * -.9) calc(var(--abf-sy, 0px) * .6);-webkit-mask-image:url(/brand/butterfly-4.svg);mask-image:url(/brand/butterfly-4.svg)}@media(max-width:48rem){.aurora-butterflies .abf-1{width:90px;top:5vh;left:3vw}.aurora-butterflies .abf-2{width:75px;top:40vh;right:2vw}.aurora-butterflies .abf-3{width:85px;top:66vh;left:8vw}.aurora-butterflies .abf-4{width:100px;bottom:5vh;right:6vw}}@media(prefers-reduced-motion:no-preference){.aurora-butterflies .abf-1{animation:abf-drift-1 72s ease-in-out -8s infinite alternate}.aurora-butterflies .abf-2{animation:abf-drift-2 58s ease-in-out -22s infinite alternate}.aurora-butterflies .abf-3{animation:abf-drift-3 86s ease-in-out -40s infinite alternate}.aurora-butterflies .abf-4{animation:abf-drift-4 64s ease-in-out -14s infinite alternate}}@keyframes abf-drift-1{0%{transform:translateZ(0) rotate(0)}to{transform:translate3d(26px,38px,0) rotate(3deg)}}@keyframes abf-drift-2{0%{transform:translateZ(0) rotate(6deg)}to{transform:translate3d(-44px,-24px,0) rotate(1deg)}}@keyframes abf-drift-3{0%{transform:translateZ(0) rotate(-8deg)}to{transform:translate3d(28px,-18px,0) rotate(-12deg)}}@keyframes abf-drift-4{0%{transform:translateZ(0) rotate(4deg)}to{transform:translate3d(-32px,-30px,0) rotate(-2deg)}}.site-header{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.site-utility-bar{display:flex;justify-content:flex-end;align-items:center;padding:.4em 0 .3em;border-bottom:1px solid var(--color-border)}.brand-tagline-mobile{display:none;font-family:var(--font-serif);font-style:italic;font-size:var(--text-sm);color:var(--color-brand-on-bg);letter-spacing:.01em;margin-right:auto}.site-main-bar{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-md) 0 var(--space-lg)}.site-main-bar .brand{display:inline-block;text-decoration:none;line-height:1}.brand-tagline{position:absolute;right:100%;bottom:0;margin-right:.35em;white-space:nowrap;font-family:var(--font-serif);font-style:italic;font-size:var(--text-lg);color:var(--color-brand-on-bg);letter-spacing:.01em}.brand-wordmark-wrap{position:relative;display:inline-block}.brand-wordmark{font-family:var(--font-script);font-size:clamp(3.5rem,9vw + 1rem,6rem);font-weight:var(--weight-regular);color:var(--color-brand-on-bg);line-height:1;clip-path:inset(0 100% 0 0);animation:handwrite-reveal 1.8s ease-out .3s forwards}.brand-butterfly{position:absolute;left:108%;bottom:.8em;width:2.8em;height:auto;opacity:0;pointer-events:none;animation:butterfly-appear .6s ease-out 1.8s forwards,butterfly-hover 3.5s ease-in-out 2.4s infinite}@media(prefers-reduced-motion:reduce){.brand-wordmark{animation:none;clip-path:none}.brand-butterfly{animation:none;opacity:1}}@media(max-width:31.25rem){.brand-tagline{display:none}.brand-tagline-mobile{display:inline}}@keyframes handwrite-reveal{to{clip-path:inset(0 0% 0 0)}}@keyframes butterfly-appear{0%{opacity:0;transform:translateY(1.5em)}to{opacity:1;transform:translateY(0)}}@keyframes butterfly-hover{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-4px) rotate(2deg)}60%{transform:translateY(3px) rotate(-2deg)}80%{transform:translateY(-1px) rotate(1deg)}}.header-utils{display:inline-flex;align-items:center;gap:var(--space-sm)}.theme-toggle{font:inherit;font-size:var(--text-sm);padding:.3em;width:2em;height:2em;background:transparent;color:var(--color-ink-strong);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.theme-toggle:hover{border-color:var(--color-navy)}.theme-toggle svg{display:none;width:1.1em;height:1.1em;flex-shrink:0}#theme-toggle-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root:not([data-theme]) .theme-toggle .icon-auto{display:inline-block}:root[data-theme=light] .theme-toggle .icon-light{display:inline-block}:root[data-theme=dark] .theme-toggle .icon-dark{display:inline-block}.site-footer{border-top:1px solid var(--color-border);padding:var(--space-lg) var(--space);color:var(--color-muted);font-size:var(--text-sm)}.site-footer-inner{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--space-lg)}.site-footer h3{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-strong);margin:0 0 var(--space-sm)}.site-footer p{margin:.2em 0}.site-footer a{color:var(--color-ink-strong)}.site-footer-legal{max-width:var(--container);margin:var(--space-lg) auto 0;padding-top:var(--space);border-top:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-muted)}
