/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-leading:initial;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-sans:"Montserrat", system-ui, sans-serif;--font-serif:"Cormorant Garamond", Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-light:300;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-cream:#f5f1ec;--color-sand:#f3ece2;--color-ink:#1f1d1b;--color-brown:#3c2b1f;--color-sun:#c35b22;--color-mist:#d9d9d9;--font-script:"Allison", cursive;--tracking-brand:.08em;--spacing-shell:112px;--breakpoint-design:1440px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--ease-soft:cubic-bezier(.22, 1, .36, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1)}html{scroll-behavior:smooth}body{background-color:var(--color-cream);color:var(--color-ink);font-family:var(--font-serif);letter-spacing:var(--tracking-brand);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}::selection{background-color:var(--color-sun);color:var(--color-cream)}:focus-visible{outline:2px solid var(--color-sun);outline-offset:3px}section[id]{scroll-margin-top:4.5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html.no-scroll,html.no-scroll body{overflow:hidden}}@layer components{.container-shell{width:100%;max-width:var(--breakpoint-design);margin-inline:auto;padding-inline:clamp(1.5rem,8vw,2rem)}@media (min-width:768px){.container-shell{padding-inline:var(--spacing-shell)}}.btn{height:48px;font-family:var(--font-sans);letter-spacing:.05em;text-align:center;white-space:nowrap;transition:background-color .3s ease, color .3s ease, transform .35s var(--ease-soft);border:2px solid #0000;border-radius:2px;justify-content:center;align-items:center;padding-inline:50px;font-size:1rem;font-weight:400;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:active{transition-duration:.1s;transform:translateY(0)}.btn-dark{border-color:var(--color-brown);color:var(--color-brown)}.btn-dark:hover{color:var(--color-brown);background-color:#b4a48e8c}.btn-light{border-color:var(--color-sand);color:var(--color-sand)}.btn-light:hover{color:var(--color-cream);background-color:#b4a48e8c}.btn--disabled{pointer-events:none;opacity:.4}@media (prefers-reduced-motion:reduce){.btn,.btn:hover,.btn:active{transition:background-color .2s,color .2s;transform:none}}@media (prefers-reduced-motion:no-preference){html.js [data-reveal]:not([data-reveal=group]){opacity:0;transition:opacity .85s ease, transform .95s var(--ease-soft);transition-delay:var(--reveal-delay,0s);transform:translateY(30px)}html.js [data-reveal=right]{transform:translate(44px)}html.js [data-reveal=left]{transform:translate(-44px)}html.js [data-reveal=scale]{transform:scale(.92)}html.js [data-reveal=fade]{transform:none}@media (max-width:767px){html.js [data-reveal=right],html.js [data-reveal=left]{transform:translateY(30px)}}html.js [data-reveal].is-visible:not([data-reveal=group]){opacity:1;transform:none}}.intro{padding-block:clamp(4rem,8vw,6.5rem)}.intro__inner{justify-content:center;align-items:center;gap:clamp(2rem,4vw,3.125rem);display:flex}.intro__logo{flex:none;width:clamp(120px,15vw,210px);height:auto}.intro__text{max-width:784px}.intro__title{margin-bottom:clamp(.85rem,1.6vw,1.35rem);font-size:clamp(1.625rem,2.6vw,2.25rem);font-weight:600;line-height:1.15}.intro__lead{font-size:clamp(1.0625rem,1.6vw,1.5rem);font-weight:400;line-height:1.4}@media (max-width:767px){.intro__inner{text-align:center;flex-direction:column;align-items:center}}.section-title{color:var(--color-ink);text-align:center;font-size:clamp(3.5rem,7vw,5.75rem);line-height:1}.palvelut{background-color:var(--color-cream);padding-block:clamp(4rem,8vw,6.5rem)}.palvelut__grid{grid-template-columns:1fr;align-items:center;gap:clamp(1.75rem,3vw,2.75rem);margin-top:clamp(2rem,4vw,3rem);display:grid}@media (min-width:900px){.palvelut__grid{grid-template-columns:minmax(0,1fr) auto}}.palvelut__services{flex-direction:column;gap:clamp(2.5rem,4.5vw,3.5rem);display:flex}.service{gap:clamp(1.25rem,3vw,2.5rem);display:flex}.service__label{word-break:break-all;text-align:center;width:1.25em;line-height:1.35;font-family:var(--font-sans);letter-spacing:.25em;color:var(--color-ink);flex:none;align-self:flex-start;margin-top:5px;font-size:.75rem;font-weight:200}.service__body{flex:auto;min-width:0}.service__title{margin-bottom:.6rem;font-size:clamp(1.375rem,1.9vw,1.625rem);font-weight:600;line-height:1.2}.service__text{max-width:76ch;margin-bottom:clamp(1rem,2vw,1.5rem);font-size:clamp(1rem,1.3vw,1.1875rem);font-weight:400;line-height:1.45}.palvelut__figure{justify-self:center;width:clamp(240px,32vw,300px);margin:0 18px 0 0;position:relative}.palvelut__figure img{z-index:1;border-radius:2px;width:100%;height:auto;display:block;position:relative}.palvelut__figure:after{content:"";z-index:0;border:1px solid var(--color-ink);border-radius:2px;position:absolute;inset:0;transform:translate(18px,-22px)}.palvelut__figure img{transition:transform .6s var(--ease-soft), box-shadow .6s ease}.palvelut__figure:hover img{transform:translate(-4px,4px);box-shadow:14px -14px 34px -18px #1f1d1b73}@media (prefers-reduced-motion:no-preference){html.js .palvelut__figure[data-reveal]:after{opacity:0;transition:opacity .5s ease .45s, transform .9s var(--ease-soft) .45s;transform:translate(0)}html.js .palvelut__figure[data-reveal].is-visible:after{opacity:1;transform:translate(18px,-22px)}}@media (max-width:899px){.palvelut__grid{gap:3rem;margin-top:2.5rem}.palvelut__services{gap:3.75rem}.palvelut__figure{margin-top:1rem}}@media (max-width:767px){.service{flex-direction:column;gap:1rem}.service__label{word-break:normal;text-align:left;align-self:flex-start;width:auto}}.projektit{background-color:var(--color-cream);padding-block:clamp(2.5rem,5vw,4rem) clamp(4rem,8vw,6.5rem)}.projektit__lead{margin-inline:auto;max-width:56rem;margin-top:clamp(1.5rem,3vw,2.5rem);font-size:clamp(1.0625rem,1.5vw,1.3125rem);font-weight:400;line-height:1.45}.projektit__grid{grid-template-columns:1fr;justify-items:center;gap:clamp(1.75rem,3.5vw,2.5rem);margin:clamp(2.5rem,5vw,4rem) 0 0;padding:0;list-style:none;display:grid}@media (min-width:768px){.projektit__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.projekti{aspect-ratio:1;border:1px solid var(--color-ink);width:100%;max-width:300px;transition:transform .5s var(--ease-soft), box-shadow .5s ease;border-radius:2px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden;container-type:inline-size}.projekti:hover{transform:translateY(-6px);box-shadow:0 26px 44px -26px #1f1d1b66}.projekti__link{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.projekti__title{z-index:1;color:var(--color-ink);text-align:center;padding-inline:1rem;font-size:clamp(1.5rem,2.1vw,1.875rem);font-weight:600;line-height:1.1;position:relative}.projekti__title--soon{font-size:clamp(1.25rem,1.7vw,1.5rem);font-weight:500}.projekti__q{color:#1f1d1b26;transition:transform .7s var(--ease-soft);justify-content:center;align-items:center;font-size:66cqw;font-weight:500;line-height:1;display:flex;position:absolute;inset:0}.projekti--tulossa:hover .projekti__q{transform:scale(1.05)}.projekti__mark{aspect-ratio:290/312;width:75%;transition:transform .8s var(--ease-soft);background-color:#c35b224d;margin:auto;position:absolute;inset:0;-webkit-mask:url(/assets/img/logo.svg) 50%/contain no-repeat;mask:url(/assets/img/logo.svg) 50%/contain no-repeat}.projekti--sun .projekti__title{transition:transform .8s var(--ease-soft)}.projekti--sun:hover .projekti__mark,.projekti--sun:active .projekti__mark{transform:scale(1.15)}.projekti--sun:hover .projekti__title,.projekti--sun:active .projekti__title{transform:scale(1.08)}@media (max-width:767px){.projektit__lead{text-align:center}.projekti{max-width:240px}}@media (prefers-reduced-motion:reduce){.projekti,.projekti__q,.projekti__mark,.projekti--sun .projekti__title{transition:none}.projekti:hover{transform:none}}.band{background-color:var(--color-ink);line-height:0;overflow:hidden}.band__video{object-fit:cover;width:100%;height:clamp(220px,32.5vw,625px);display:block}.prosessi{background-color:var(--color-ink);color:var(--color-sand);padding-block:clamp(4rem,8vw,6.5rem);overflow-x:clip}.prosessi__title{color:var(--color-sand);text-align:center;margin-bottom:clamp(2.5rem,5vw,4rem);font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:400;line-height:1}.prosessi__timeline{margin:0;padding:0;list-style:none;position:relative}.pstep{position:relative}.pstep__num{font-family:var(--font-sans);letter-spacing:.25em;color:var(--color-sun);margin-bottom:.4rem;font-size:1rem;font-weight:400;display:block}.pstep__title{color:var(--color-sand);margin-bottom:.5rem;font-size:clamp(1.125rem,1.5vw,1.25rem);font-weight:600;line-height:1.2}.pstep__text{color:var(--color-cream);font-size:clamp(.9375rem,1.2vw,1.0625rem);font-weight:400;line-height:1.45}.pstep__dot{background:var(--color-mist);border-radius:50%;width:15px;height:15px}.prosessi__timeline{flex-direction:column;gap:2.5rem;padding-left:2.5rem;display:flex}.pstep{--dot-y:calc(1.9rem + .675rem)}.pstep__dot{left:-2.5rem;top:var(--dot-y);position:absolute;transform:translate(.5px,-50%)}@media (max-width:1023px){.pstep:before,.pstep:after{background:var(--color-sand);width:3px;position:absolute;left:calc(6px - 2.5rem)}.pstep:not(:last-child):before{content:"";top:calc(var(--dot-y) + 14px);bottom:-1.25rem}.pstep:not(:first-child):after{content:"";top:-1.25rem;bottom:calc(100% - var(--dot-y) + 14px)}}@media (min-width:1024px){.prosessi__timeline{grid-template-columns:repeat(5,1fr);gap:clamp(.5rem,1.5vw,1.5rem);padding-left:0;display:grid}.prosessi__timeline:before{content:"";background:var(--color-sand);height:3px;position:absolute;top:50%;left:10%;right:10%;transform:translateY(-50%)}.prosessi__timeline:after{content:"";background:linear-gradient(90deg, transparent, var(--color-sun));opacity:0;pointer-events:none;width:16%;height:3px;position:absolute;top:50%;left:10%;transform:translateY(-50%);box-shadow:0 0 14px 1px #c35b228c}.pstep{text-align:center;grid-template-rows:1fr auto 1fr;place-items:center;min-height:clamp(340px,30vw,420px);padding-inline:.5rem;display:grid}.pstep__dot{grid-row:2;position:static;transform:none}.pstep__card{max-width:15rem;position:relative}.pstep__card:after{content:"";background:var(--color-sand);width:2px;height:1.625rem;position:absolute;left:50%;transform:translate(-50%)}.pstep:nth-child(odd) .pstep__card{grid-row:1;align-self:end;margin-bottom:2.5rem}.pstep:nth-child(odd) .pstep__card:after{bottom:-2.5rem}.pstep:nth-child(2n) .pstep__card{grid-row:3;align-self:start;margin-top:2.5rem}.pstep:nth-child(2n) .pstep__card:after{top:-2.5rem}}@media (prefers-reduced-motion:no-preference){.pstep:first-child{--step-delay:.15s}.pstep:nth-child(2){--step-delay:.27s}.pstep:nth-child(3){--step-delay:.39s}.pstep:nth-child(4){--step-delay:.51s}.pstep:nth-child(5){--step-delay:.63s}@media (max-width:1023px){html.js .prosessi__timeline[data-reveal] .pstep:before,html.js .prosessi__timeline[data-reveal] .pstep:after{opacity:0;transition:opacity .7s ease var(--step-delay)}html.js .prosessi__timeline[data-reveal].is-visible .pstep:before,html.js .prosessi__timeline[data-reveal].is-visible .pstep:after{opacity:1}}html.js .prosessi__timeline[data-reveal] .pstep__card{opacity:0;transition:opacity .7s ease var(--step-delay), transform .85s var(--ease-soft) var(--step-delay);transform:translateY(26px)}html.js .prosessi__timeline[data-reveal].is-visible .pstep__card{opacity:1;transform:none}html.js .prosessi__timeline[data-reveal] .pstep__dot{transition:transform .55s var(--ease-bounce) calc(var(--step-delay) + .15s), background-color .85s cubic-bezier(.65, 0, .35, 1);transform:translate(.5px,-50%)scale(0)}html.js .prosessi__timeline[data-reveal].is-visible .pstep__dot{transform:translate(.5px,-50%)scale(1)}@media (min-width:1024px){html.js .prosessi__timeline[data-reveal]:before{transform-origin:0;transition:transform 1.2s var(--ease-soft) 50ms;transform:translateY(-50%)scaleX(0)}html.js .prosessi__timeline[data-reveal].is-visible:before{transform:translateY(-50%)scaleX(1)}html.js .prosessi__timeline[data-reveal].is-visible:after{animation:prosessi-run 2s var(--ease-soft) 1.1s both}html.js .prosessi__timeline[data-reveal] .pstep__dot{transform:scale(0)}html.js .prosessi__timeline[data-reveal].is-visible .pstep__dot{transform:scale(1)}}}@keyframes prosessi-run{0%{opacity:0;transform:translateY(-50%)}10%{opacity:1}85%{opacity:1}to{opacity:0;transform:translate(400%,-50%)}}@media (max-width:1023px){.pstep__title{width:fit-content;transition:transform .85s cubic-bezier(.65,0,.35,1)}.pstep.is-focus .pstep__title{transform-origin:0;transform:scale(1.14)}.pstep.is-focus .pstep__dot{background:var(--color-sun)}}@media (prefers-reduced-motion:reduce){.pstep__title{transition:none}.pstep.is-focus .pstep__title{transform:none}.prosessi__timeline:after{animation:none}}.minusta{background-color:var(--color-ink);color:var(--color-cream);padding-block:clamp(4rem,8vw,6.5rem);overflow-x:clip}.minusta__title{color:var(--color-sand);text-align:center;margin-bottom:clamp(3rem,6.5vw,6.5rem);font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:400;line-height:1}.minusta__rows{flex-direction:column;gap:clamp(3.5rem,7vw,6rem);display:flex}.minusta__row{grid-template-columns:1fr;align-items:center;gap:clamp(2rem,4.5vw,4.5rem);display:grid}@media (min-width:900px){.minusta__row{grid-template-columns:minmax(0,7fr) minmax(0,6fr)}.minusta__row--flip{grid-template-columns:minmax(0,6fr) minmax(0,7fr)}.minusta__row--flip .minusta__media{order:-1}.minusta__row--intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,6.5vw,7.5rem)}.minusta__row--intro .minusta__media{width:auto;max-width:none;margin-right:calc(-1 * (var(--spacing-shell) + max(0px, (100vw - var(--breakpoint-design)) / 2)));justify-self:stretch}.minusta__row--outro .minusta__text{max-width:30rem;margin-left:auto}}.minusta__hello{color:var(--color-cream);margin-bottom:clamp(1rem,2vw,1.5rem);font-size:clamp(2.5rem,4vw,3.25rem);line-height:1.1}.minusta__text{max-width:58ch;font-size:clamp(1.0625rem,1.5vw,1.375rem);font-weight:400;line-height:1.55}.minusta__text+.minusta__text{margin-top:clamp(1.75rem,3.5vw,2.75rem)}.minusta__row--flip .minusta__text{max-width:34rem}.minusta__text strong{font-weight:600}.minusta__leadin{color:var(--color-cream);padding-right:.15em;font-size:clamp(1.875rem,2.8vw,2.5rem);line-height:1}.minusta__media{justify-self:center;width:100%;max-width:653px;margin:0}.minusta__media img{width:100%;height:auto;transition:transform .7s var(--ease-soft);border-radius:2px;display:block}.minusta__media:hover img{transform:scale(1.02)}.minusta__media--tall{max-width:400px}@media (max-width:899px){.minusta__media--tall{max-width:min(280px,75vw)}}.minusta__media--framed{max-width:340px;padding:clamp(16px,2vw,25px);position:relative}.minusta__media--framed:after{content:"";border:1px solid var(--color-sand);pointer-events:none;border-radius:2px;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.minusta__media img{transition:none}.minusta__media:hover img{transform:none}}.yhteys{background-color:var(--color-cream);padding-block:clamp(4rem,8vw,6.5rem)}.yhteys__grid{margin-inline:auto;grid-template-columns:1fr;align-items:stretch;gap:clamp(2.5rem,5vw,5rem);max-width:1060px;margin-top:clamp(2rem,4vw,3.5rem);display:grid}@media (min-width:900px){.yhteys__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.yhteys__card{border:1px solid var(--color-sun);border-radius:2px;flex-direction:column;gap:clamp(1.75rem,3vw,2.5rem);padding:clamp(1.75rem,3.5vw,3rem);display:flex}.yhteys__card-title{text-align:center;font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.4}.yhteys__channels{grid-template-columns:repeat(2,auto);justify-content:center;gap:clamp(1.5rem,2.5vw,2.25rem) clamp(1.25rem,2vw,2.25rem);margin-block:auto;display:grid}@media (max-width:460px){.yhteys__channels{grid-template-columns:auto}}.yhteys__channel{font-family:var(--font-sans);letter-spacing:.05em;color:var(--color-ink);align-items:center;gap:.75rem;font-size:.875rem;transition:color .3s;display:inline-flex}.yhteys__channel img{width:26px;height:26px;transition:transform .35s var(--ease-bounce);flex:none}.yhteys__channel span{overflow-wrap:anywhere}.yhteys__channel:hover{color:var(--color-sun)}.yhteys__channel:hover img{transform:scale(1.12)rotate(-4deg)}.yhteys__nudge{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.yhteys__nudge-text{text-align:center;text-wrap:balance;flex:8em;min-width:8em;font-size:clamp(1rem,1.4vw,1.1875rem);line-height:1.3}.yhteys__form{flex-direction:column;gap:clamp(1.25rem,2vw,1.75rem);display:flex}.yhteys__row{grid-template-columns:1fr;gap:clamp(1.25rem,2vw,1.75rem);display:grid}@media (min-width:560px){.yhteys__row{grid-template-columns:1fr 1fr}}.yhteys__field{flex-direction:column;gap:.5rem;display:flex}.yhteys__field label{font-family:var(--font-sans);letter-spacing:.08em;font-size:.8125rem}.yhteys__field input,.yhteys__field select,.yhteys__field textarea{border:1px solid var(--color-ink);width:100%;font-family:var(--font-sans);letter-spacing:.02em;color:var(--color-ink);background-color:#0000;border-radius:2px;padding:.7rem 1rem;font-size:.9375rem;transition:border-color .3s,box-shadow .3s}.yhteys__field input,.yhteys__field select{height:48px}.yhteys__field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23C35B22' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.75rem}.yhteys__field select option{color:var(--color-ink);background-color:var(--color-cream)}.yhteys__field textarea{resize:vertical;min-height:clamp(140px,18vw,170px)}.yhteys__field input:focus,.yhteys__field select:focus,.yhteys__field textarea:focus{border-color:var(--color-sun);box-shadow:0 0 0 1px var(--color-sun);outline:none}.yhteys__submit{width:100%;font-weight:500}.yhteys__submit:disabled{opacity:.6;cursor:progress}.yhteys__submit:disabled:hover{box-shadow:none;transform:none}.yhteys__pot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.yhteys__status{font-family:var(--font-serif);font-size:1rem;line-height:1.5}.yhteys__status:empty{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.yhteys__status[data-state=ok]{color:var(--color-sun)}.yhteys__status[data-state=error]{color:var(--color-brown)}@media (max-width:899px){.yhteys__form{order:-1}.yhteys__channels{justify-items:center}.yhteys__nudge{flex-direction:column;justify-content:center;align-items:center}.yhteys__nudge-text{flex:none}}@media (prefers-reduced-motion:reduce){.yhteys__channel img{transition:none}.yhteys__channel:hover img{transform:none}}.laskuri-band{background-color:var(--color-ink);line-height:0}.laskuri-band img{object-fit:cover;width:100%;height:clamp(230px,22vw,320px)}.laskuri-hero{text-align:center;padding-top:clamp(3rem,6vw,4.5rem)}.laskuri-hero__title{color:var(--color-ink);font-size:clamp(2.75rem,5.5vw,4.25rem);line-height:1}.laskuri-hero__lead{margin-top:clamp(.75rem,1.5vw,1.25rem);font-size:clamp(1.125rem,1.9vw,1.5rem);font-weight:500;line-height:1.3}.laskuri-hero__sub{margin-top:.75rem;font-size:clamp(.8125rem,1.1vw,.9375rem)}.laskuri{font-variant-numeric:lining-nums;padding-block:clamp(1.5rem,3vw,2.5rem) clamp(4rem,8vw,6.5rem);font-weight:500}.laskuri__form{max-width:880px}.lq{--lq-indent:clamp(3.25rem, 7vw, 6rem);--lq-pad:clamp(2.5rem, 4.5vw, 3.75rem);--lq-num:clamp(1.375rem, 2.2vw, 1.875rem);padding:var(--lq-pad) 0;border:0;margin:0;position:relative}.lq:has(+.lq:not(.lq-locked)):after{content:"";left:clamp(.66rem,1.05vw,.9rem);top:calc(var(--lq-pad) + var(--lq-num) + .9rem);bottom:calc(.9rem - var(--lq-pad));width:2px;animation:lq-rail .7s var(--ease-soft) both;background-color:#3c2b1f59;position:absolute;transform:translate(-50%)}@keyframes lq-rail{0%{opacity:0}to{opacity:1}}.lq__head{grid-template-columns:var(--lq-indent) 1fr;align-items:baseline;display:grid}.lq__num{font-size:var(--lq-num);line-height:1;transition:color .4s}.lq:has(input:checked) .lq__num{color:var(--color-sun)}.lq__title{font-size:clamp(1.375rem,2vw,1.75rem);font-weight:500;line-height:1.25}.lq__req{color:var(--color-sun);margin-left:.1em}.lq__optional{letter-spacing:.08em;color:var(--color-brown);white-space:nowrap;margin-left:.5em;font-size:.55em;font-weight:400}.lq__options{margin-top:clamp(1.5rem,2.5vw,2.125rem);margin-left:var(--lq-indent);flex-direction:column;gap:clamp(1rem,1.7vw,1.375rem);display:flex}@media (max-width:640px){.lq__head{grid-template-columns:1fr;gap:.5rem}.lq__options{margin-top:1.25rem;margin-left:0}.lq:after{display:none}}.lq-locked{display:none}.lq-unlocked{animation:lq-enter .7s var(--ease-soft) both}@keyframes lq-enter{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.opt{cursor:pointer;transition:border-color .3s ease, background-color .3s ease, transform .35s var(--ease-soft);border:1px solid #3c2b1f73;border-radius:2px;align-items:center;gap:clamp(.9rem,1.6vw,1.25rem);padding:clamp(.95rem,1.6vw,1.2rem) clamp(1.1rem,2vw,1.5rem);display:flex;position:relative}.opt:hover{border-color:var(--color-sun);transform:translateY(-2px)}.opt:has(input:checked){background-color:var(--color-sand);border-color:var(--color-sun)}.opt input{opacity:0;width:2rem;height:2rem;position:absolute}.opt__control{aspect-ratio:1;border:1px solid var(--color-ink);border-radius:50%;flex:none;place-items:center;width:clamp(20px,1.8vw,26px);transition:border-color .3s;display:grid}.opt input[type=checkbox]+.opt__control{border-radius:2px}.opt__control:after{content:"";aspect-ratio:1;border-radius:inherit;background-color:var(--color-sun);width:50%;transition:transform .35s var(--ease-bounce);transform:scale(0)}.opt input:checked+.opt__control{border-color:var(--color-sun)}.opt input:checked+.opt__control:after{transform:scale(1)}.opt:hover .opt__control{border-color:var(--color-sun)}.opt input:focus-visible+.opt__control{outline:2px solid var(--color-sun);outline-offset:3px}.opt__text,.opt__meta{font-size:clamp(1rem,1.35vw,1.1875rem);line-height:1.4}.opt__meta{color:var(--color-brown)}.opt__small{font-size:.72em}.opt__price{color:var(--color-brown);white-space:nowrap;flex:none;margin-left:auto;font-size:clamp(1rem,1.35vw,1.1875rem);transition:color .3s}.opt:has(input:checked) .opt__price{color:var(--color-sun)}@media (min-width:641px){.lq__options--grid{grid-template-columns:repeat(3,1fr);gap:clamp(.9rem,1.5vw,1.25rem);display:grid}.lq__options--grid .opt{grid-template-columns:auto 1fr;align-items:start;gap:.3rem clamp(.9rem,1.6vw,1.25rem);display:grid}.lq__options--grid .opt__control{grid-row:1/span 3;margin-top:.25rem}.lq__options--grid .opt__text,.lq__options--grid .opt__meta,.lq__options--grid .opt__price{grid-column:2}.lq__options--grid .opt__meta{font-size:.95em}.lq__options--grid .opt__price{margin-top:.2rem;margin-left:0}}.laskuri__result{background-color:var(--color-sand);border:1px solid var(--color-brown);border-radius:2px;margin-top:clamp(2rem,4vw,3rem);padding:clamp(1.75rem,3.5vw,2.75rem) clamp(1.5rem,5vw,5rem)}.laskuri__result-title{font-size:clamp(.9375rem,1.25vw,1.125rem);font-weight:400}.laskuri__lines{margin-top:clamp(1rem,2vw,1.5rem);padding:0;list-style:none}.laskuri__lines li{border-bottom:1px solid #3c2b1f40;justify-content:space-between;gap:1.5rem;padding-block:.65rem;font-size:clamp(1rem,1.3vw,1.1875rem);line-height:1.4;display:flex}.laskuri__total{justify-content:space-between;align-items:baseline;gap:1.5rem;margin-top:clamp(1rem,1.8vw,1.4rem);display:flex}.laskuri__total-label{letter-spacing:.08em;font-size:clamp(.875rem,1.1vw,1rem);font-weight:400}.laskuri__price{color:var(--color-sun);font-variant-numeric:lining-nums tabular-nums;font-size:clamp(2.25rem,4vw,3.25rem);line-height:1.1}.laskuri__note{max-width:44rem;margin-top:.75rem;font-size:clamp(.9375rem,1.15vw,1.0625rem);line-height:1.5}.laskuri__result .btn{margin-top:clamp(1.25rem,2vw,1.75rem)}@media (max-width:640px){.laskuri__result .btn{width:fit-content;margin-inline:auto;display:flex}}.laskuri-bar{z-index:90;background-color:var(--color-ink);visibility:hidden;transition:transform .5s var(--ease-soft), visibility .5s;position:fixed;inset:auto 0 0;transform:translateY(100%)}.laskuri-bar.is-visible{visibility:visible;transform:none}.laskuri-bar__inner{align-items:center;gap:clamp(.75rem,2vw,1.5rem);padding-block:.8rem;display:flex}.laskuri-bar__label{letter-spacing:.08em;color:var(--color-cream);font-size:clamp(.75rem,1vw,.875rem);font-weight:400}.laskuri-bar__price{color:var(--color-sun);font-variant-numeric:lining-nums tabular-nums;font-size:clamp(1.375rem,1.9vw,1.75rem);line-height:1}.laskuri-bar .btn{height:40px;margin-left:auto;padding-inline:clamp(18px,2.5vw,34px);font-size:.875rem}@media (prefers-reduced-motion:reduce){.opt,.opt:hover{transition:border-color .2s,background-color .2s;transform:none}.opt__control,.opt__control:after{transition:none}.lq-unlocked,.lq:has(+.lq:not(.lq-locked)):after{animation:none}.laskuri-bar{transition:none}}.footer__band{background-color:var(--color-sand);justify-content:center;align-items:center;padding-block:clamp(2rem,4vw,2.75rem);display:flex}.footer__mark{aspect-ratio:290/312;background-color:var(--color-sun);width:clamp(80px,8vw,104px);display:block;-webkit-mask:url(/assets/img/logo.svg) 50%/contain no-repeat;mask:url(/assets/img/logo.svg) 50%/contain no-repeat}.footer__legal{background-color:var(--color-cream);text-align:center;letter-spacing:.08em;color:var(--color-ink);padding-block:clamp(1.25rem,2.5vw,1.75rem);padding-inline:clamp(1.5rem,8vw,2rem);font-size:.8125rem}.footer__legal a{text-underline-offset:4px;transition:color .3s}.footer__legal a:hover{color:var(--color-sun);text-decoration:underline}.hero{min-height:100svh;color:var(--color-cream);flex-direction:column;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:0;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__scrim{z-index:10;background:linear-gradient(#1f1d1b73 0%,#1f1d1b00 28% 70%,#1f1d1b59 100%),#3c2b1f33;position:absolute;inset:0}.hero__stage{z-index:20;flex:auto;position:relative}.hero__content{text-align:center;flex-direction:column;align-items:center;gap:.375rem;padding-inline:1.5rem;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.hero__cta{justify-content:center;margin-top:clamp(2rem,5vh,3.25rem);display:flex}@media (prefers-reduced-motion:no-preference){@keyframes hero-rise{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes soft-fade{0%{opacity:0}to{opacity:1}}.hero__content h1{animation:hero-rise 1.1s var(--ease-soft) .15s both}.hero__content p{animation:hero-rise 1.1s var(--ease-soft) .4s both}.hero__cta .btn{animation:hero-rise 1.1s var(--ease-soft) .65s both}.site-nav__inner{animation:1s .85s both soft-fade}html.is-loading .hero__content h1,html.is-loading .hero__content p,html.is-loading .hero__cta .btn,html.is-loading .site-nav__inner{animation-play-state:paused}}.loader{z-index:200;background:var(--color-ink);justify-content:center;align-items:center;transition:opacity .6s,visibility .6s;display:flex;position:fixed;inset:0}html:not(.is-loading) .loader{opacity:0;visibility:hidden}html.is-loading{overflow:hidden}.loader__inner{flex-direction:column;align-items:center;gap:clamp(1.25rem,3vw,1.75rem);display:flex}.loader__bar{background-color:#f3ece22e;border-radius:2px;width:clamp(140px,42vw,220px);height:2px;overflow:hidden}.loader__bar span{background-color:var(--color-sun);width:0;height:100%;transition:width .25s;display:block}.loader__count{letter-spacing:.25em;color:var(--color-sand);font-variant-numeric:lining-nums tabular-nums;font-size:.75rem;font-weight:400}.loader__mark{aspect-ratio:290/312;background-color:var(--color-sun);width:clamp(72px,12vw,120px);animation:1.6s ease-in-out infinite loader-pulse;-webkit-mask:url(/assets/img/logo.svg) 50%/contain no-repeat;mask:url(/assets/img/logo.svg) 50%/contain no-repeat}@keyframes loader-pulse{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:none}}.nav-sentinel{pointer-events:none;width:1px;height:60px;position:absolute;top:0;left:0}.site-nav{z-index:50;color:var(--color-cream);position:fixed;top:0;left:0;right:0}.site-nav:before{content:"";z-index:0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;background:#1f1d1be0;border-bottom:1px solid #f3ece214;transition:opacity .45s;position:absolute;inset:0;box-shadow:0 14px 34px -22px #0000008c}.site-nav.is-scrolled:before,.site-nav.is-menu-open:before,.site-nav--solid:before{opacity:1}.site-nav__inner{z-index:1;width:100%;max-width:var(--breakpoint-design);justify-content:flex-end;align-items:center;gap:1.5rem;margin-inline:auto;padding:clamp(2.25rem,4.5vh,3.25rem) clamp(1.5rem,8vw,2rem);transition:padding .45s cubic-bezier(.22,1,.36,1);display:flex;position:relative}.site-nav.is-scrolled .site-nav__inner,.site-nav--solid .site-nav__inner{padding-block:1.1rem}.site-nav__menu{margin:0;padding:0;list-style:none}.site-nav__menu a{color:var(--color-cream);font-family:var(--font-sans);padding-block:.3rem;font-size:.9375rem;font-weight:400;text-decoration:none;transition:color .25s;display:inline-block;position:relative}.site-nav__menu a:after{content:"";background:var(--color-sun);transform-origin:100%;height:1px;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav__menu a:hover,.site-nav__menu a:focus-visible{color:var(--color-sand)}.site-nav__menu a:hover:after,.site-nav__menu a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.site-nav__burger{z-index:2;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;display:inline-flex;position:relative}.site-nav__burger span{background:var(--color-cream);width:100%;height:1.75px;transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .2s;display:block}.site-nav__burger[aria-expanded=true] span:first-child{transform:translateY(6.75px)rotate(45deg)}.site-nav__burger[aria-expanded=true] span:nth-child(2){opacity:0}.site-nav__burger[aria-expanded=true] span:nth-child(3){transform:translateY(-6.75px)rotate(-45deg)}@media (max-width:767px){.site-nav__menu{z-index:1;background:radial-gradient(120% 90% at 50% 0%, #3c2b1f8c, transparent 62%), var(--color-ink);counter-reset:navitem;opacity:0;visibility:hidden;flex-direction:column;justify-content:center;align-items:center;gap:clamp(1.4rem,4.5vh,2.2rem);padding:4.5rem 2rem 6rem;transition:opacity .45s,visibility 0s linear .45s;display:flex;position:fixed;inset:0}.site-nav.is-menu-open .site-nav__menu{opacity:1;visibility:visible;transition:opacity .45s}.site-nav__menu li{opacity:0;transition:opacity .4s,transform .5s cubic-bezier(.22,1,.36,1);transform:translateY(22px)}.site-nav.is-menu-open .site-nav__menu li{opacity:1;transform:none}.site-nav.is-menu-open .site-nav__menu li:first-child{transition-delay:.14s}.site-nav.is-menu-open .site-nav__menu li:nth-child(2){transition-delay:.2s}.site-nav.is-menu-open .site-nav__menu li:nth-child(3){transition-delay:.26s}.site-nav.is-menu-open .site-nav__menu li:nth-child(4){transition-delay:.32s}.site-nav.is-menu-open .site-nav__menu li:nth-child(5){transition-delay:.38s}.site-nav__menu li:before{counter-increment:navitem;content:counter(navitem, decimal-leading-zero);text-align:center;font-family:var(--font-sans);letter-spacing:.3em;color:var(--color-sun);margin-bottom:.4rem;font-size:.7rem;font-weight:400;display:block}.site-nav__menu a{font-family:var(--font-serif);letter-spacing:.06em;color:var(--color-sand);font-size:clamp(1.55rem,6.5vw,1.9rem);font-weight:500;line-height:1.15}}@media (min-width:768px){.site-nav__inner{padding-inline:clamp(1.5rem, 6vw, var(--spacing-shell));justify-content:center}.site-nav__menu{font-family:var(--font-sans);letter-spacing:.1em;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.875rem;font-size:.9375rem;font-weight:500;display:flex}}@media (prefers-reduced-motion:reduce){.site-nav:before,.site-nav__inner,.site-nav__burger span,.site-nav__menu,.site-nav__menu li,.site-nav__menu a:after{transition:none}}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (min-width:1440px){.container{max-width:1440px}}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.min-h-screen{min-height:100vh}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-6{gap:calc(var(--spacing) * 6)}.bg-ink{background-color:var(--color-ink)}.py-24{padding-block:calc(var(--spacing) * 24)}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.font-script{font-family:var(--font-script)}.font-serif{font-family:var(--font-serif)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-\[clamp\(1\.0625rem\,2vw\,1\.625rem\)\]{font-size:clamp(1.0625rem,2vw,1.625rem)}.text-\[clamp\(4\.25rem\,13vw\,12\.5rem\)\]{font-size:clamp(4.25rem,13vw,12.5rem)}.leading-none{--tw-leading:1;line-height:1}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.text-cream{color:var(--color-cream)}.text-sand{color:var(--color-sand)}.text-sun{color:var(--color-sun)}@media (min-width:48rem){.md\:hidden{display:none}}}@font-face{font-family:Allison;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/allison-400.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fonts/cormorant-garamond-300.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/cormorant-garamond-400.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/cormorant-garamond-500.woff2)format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/cormorant-garamond-600.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:200;font-display:swap;src:url(/assets/fonts/montserrat-200.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/montserrat-400.woff2)format("woff2")}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/montserrat-500.woff2)format("woff2")}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}