.site-header{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:27px 3.5%;gap:32px;background:linear-gradient(#03112155,transparent)}
.site-header .wordmark{font-size:32px}.site-header nav{display:flex;align-items:center;gap:40px;font-size:16px}.site-header nav a{padding:8px 0;position:relative;text-shadow:0 2px 12px #00101f}.site-header nav a[aria-current]:after{content:'';height:2px;background:#66cfff;position:absolute;left:0;right:0;bottom:0}.site-header nav a:hover{color:#a8dcff}
.eyebrow{font-size:13px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:var(--project,var(--gold));margin-bottom:20px}.button-primary{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:16px 26px;min-height:53px;border:1px solid var(--project,var(--gold));border-radius:40px;background:linear-gradient(135deg,color-mix(in srgb,var(--project,var(--gold)) 20%,#0a1928),#081828);color:#fff4df;box-shadow:inset 0 0 13px color-mix(in srgb,var(--project,var(--gold)) 12%,transparent),0 0 22px color-mix(in srgb,var(--project,var(--gold)) 10%,transparent);font-size:16px;transition:background .25s,box-shadow .25s,transform .25s}.button-primary:hover{background:var(--project,var(--gold));color:#071625;box-shadow:0 0 30px color-mix(in srgb,var(--project,var(--gold)) 25%,transparent)}.button-primary:hover .arrow{transform:translateX(5px)}.text-link{display:inline-flex;gap:22px;align-items:center;font-size:16px;border-bottom:1px solid var(--project,var(--gold));padding:13px 0;color:var(--ink);width:fit-content}.text-link:hover{color:var(--project,var(--gold))}.back-link{display:inline-flex;align-items:center;font-size:15px;color:#cfdee8;line-height:1.5}.back-link:hover{color:white}.content-width{width:min(1240px,89%);margin-inline:auto}.large-copy{font-size:22px;line-height:1.65;color:#c0ceda;font-weight:300}.project-logo{width:150px;height:auto;object-fit:contain}.vp-logo{display:flex;gap:12px;align-items:center;font-family:Arial,sans-serif;font-size:18px;font-weight:700;white-space:nowrap}.vp-logo img{width:42px;height:42px}.site-footer{width:93%;margin:0 auto;padding:38px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);color:#b8c8d6;font-size:14px}.site-footer .wordmark{color:var(--ink);font-size:29px}.site-footer>a:last-child{padding:10px 0}
/* A camera inside a fixed-aspect scene keeps boat and island targets aligned. */
.references{position:relative;isolation:isolate;height:100svh;min-height:760px;overflow:hidden;background:#06182b}.world-stage{position:absolute;inset:0;container-type:size;z-index:-2;overflow:hidden}.world-camera{position:absolute;inset:0;transform:translate(0,0) scale(1);transition:transform 1.3s cubic-bezier(.22,.7,.18,1);will-change:transform}.world-scene{position:absolute;left:50%;top:50%;width:max(100cqw,160cqh);aspect-ratio:1586/992;transform:translate(-50%,-50%);isolation:isolate}.world-scene .environment{z-index:-1}.world-heading{position:absolute;top:111px;left:3.5%;z-index:2;transition:opacity .6s,transform .6s;pointer-events:none}.world-heading h1{font-size:clamp(42px,4.7vw,76px);line-height:1.05;letter-spacing:-.045em;font-weight:300;text-shadow:0 2px 28px #06152588}.world-heading p{font-size:18px;font-weight:300;margin-top:18px;color:#dfebf4;text-shadow:0 2px 14px #04172a}.references:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(180deg,#0010251a,transparent 38%,transparent 65%,#02122255)}
.island-marker{position:absolute;background:#031421b8;border:1px solid color-mix(in srgb,var(--project) 70%,transparent);border-radius:50%;width:37px;height:37px;display:grid;place-items:center;color:#fff;font-size:13px;box-shadow:0 0 17px color-mix(in srgb,var(--project) 25%,transparent);transition:transform .3s,background .3s,opacity .5s;z-index:2}.island-marker:before{content:'';position:absolute;inset:-7px;border:1px solid color-mix(in srgb,var(--project) 30%,transparent);border-radius:50%;animation:marker-breathe 4s ease-in-out infinite}.island-marker:hover,.island-marker:focus-visible{transform:scale(1.16);background:#062038}.marker-label{position:absolute;left:50%;top:calc(100% + 14px);transform:translateX(-50%);padding:7px 13px;background:#041624de;border:1px solid #a6cbe32a;font-size:14px;white-space:nowrap;border-radius:4px;opacity:0;transition:opacity .2s;pointer-events:none}.island-marker:hover .marker-label,.island-marker:focus-visible .marker-label{opacity:1}.marker-bar-radar{left:24%;top:52%}.marker-fiderol{left:54%;top:33%}.marker-verkkopalvelu{left:85%;top:49%}.boat{position:absolute;left:60%;top:64%;width:6%;pointer-events:none;will-change:transform,left,top}.boat img{width:100%;filter:drop-shadow(0 2px 2px #00162999)}
.world-bottom{position:absolute;left:3%;right:3%;bottom:16px;z-index:5}.world-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px;border:1px solid #72c2f455;border-radius:17px;background:linear-gradient(120deg,#041522e6,#092638b8);backdrop-filter:blur(14px);box-shadow:0 20px 60px #0007}.project-choice{display:grid;grid-template-columns:27px minmax(95px,145px) minmax(0,1fr) 17px;gap:15px;align-items:center;min-height:104px;text-align:left;position:relative;padding:10px 21px;background:transparent;border:1px solid transparent;border-radius:12px;transition:background .35s,border-color .35s,box-shadow .35s}.project-choice:after{content:'';position:absolute;right:-1px;top:20px;bottom:20px;width:1px;background:#a1c9e53b}.project-choice:last-child:after{display:none}.project-choice:hover{background:#b8dfff0a}.project-choice[aria-pressed=true]{border-color:var(--project);box-shadow:0 0 16px color-mix(in srgb,var(--project) 18%,transparent),inset 0 0 25px color-mix(in srgb,var(--project) 8%,transparent);background:color-mix(in srgb,var(--project) 7%,transparent)}.choice-number{font-size:22px;font-weight:300;color:#cadde9}.choice-logo .logo-bar-radar{width:130px;height:78px}.choice-logo .logo-fiderol{width:138px}.choice-logo .vp-logo{font-size:13px;gap:8px;white-space:normal;overflow-wrap:anywhere}.choice-logo .vp-logo img{width:30px;height:30px}.choice-copy{font-size:14px;line-height:1.5;color:#d4e1e9}.choice-copy strong{display:none}.choice-arrow{font-size:25px;color:#d9ebf4}.world-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:0 5px;min-height:34px;font-size:13px;color:#cad5df}.quiet-back{padding:8px 0}.motion-control{padding:6px 5px;background:transparent;display:flex;align-items:center;gap:9px;font-size:13px;color:#cad5df}.motion-control>span:first-child{font-size:19px;line-height:1}.motion-control:disabled{opacity:.65}.motion-paused .mist,.motion-paused .island-marker:before{animation-play-state:paused}
.world-detail{position:absolute;right:4%;top:calc(50% - 198px);width:410px;padding:27px 30px 30px;background:linear-gradient(125deg,#071b2ae8,#071526d9);border:1px solid color-mix(in srgb,var(--project) 45%,transparent);border-radius:15px;box-shadow:0 20px 70px #0005;backdrop-filter:blur(18px);animation:detail-arrive .55s var(--ease) both;z-index:4}.world-detail[hidden]{display:none}.reset-world{padding:0 0 17px;background:transparent;color:#bbcbd7;font-size:13px}.reset-world:hover{color:#fff}.detail-brand{height:79px;display:flex;align-items:center;margin:0 0 14px}.detail-brand .logo-bar-radar{height:88px;width:150px;object-position:left center}.detail-brand .logo-fiderol{width:215px}.detail-brand .vp-logo{font-size:20px}.detail-brand .vp-logo img{width:48px;height:48px}.world-detail .eyebrow{font-size:12px;margin-bottom:10px}.world-detail h2{font-weight:400;font-size:29px;letter-spacing:-.025em;line-height:1.2}.detail-description{font-size:16px;line-height:1.65;color:#c4d4df;margin:13px 0 24px}.world-detail .button-primary{width:100%;padding:13px 20px;min-height:49px}.references[data-selected]:not([data-selected='']) .world-heading{opacity:0;transform:translateY(-10px)}.references[data-selected]:not([data-selected='']) .island-marker{opacity:0;pointer-events:none;visibility:hidden}.references[data-selected='bar-radar'] .world-camera{transform-origin:24% 60%;transform:translate(-5%,0) scale(1.65)}.references[data-selected='fiderol'] .world-camera{transform-origin:52% 30%;transform:translate(-15%,15%) scale(1.8)}.references[data-selected='verkkopalvelu'] .world-camera{transform-origin:83% 44%;transform:translate(-29%,7%) scale(1.65)}
@keyframes detail-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@keyframes marker-breathe{0%,100%{opacity:.3;transform:scale(.95)}50%{opacity:.7;transform:scale(1.08)}}
/* Individual project worlds. */
.project-page{--project:#efb765;position:relative;overflow:hidden;background:#071421}.project-hero{height:90svh;min-height:730px;max-height:1100px;position:relative;isolation:isolate;overflow:hidden}.project-landscape{position:absolute;inset:0;z-index:-3;overflow:hidden}.project-landscape img{width:100%;height:100%;object-fit:cover;transform:scale(1.8);filter:saturate(.9)}.project-bar-radar .project-landscape img{transform-origin:20% 55%}.project-fiderol .project-landscape img{transform-origin:54% 26%;transform:scale(2.1)}.project-verkkopalvelu .project-landscape img{transform-origin:91% 42%;transform:scale(2.0)}.project-glow{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#05111ef2 0%,#05111ecc 30%,#05111e44 72%),linear-gradient(0deg,#071421 0%,transparent 45%)}.project-hero-content{position:relative;padding:125px 5.5% 70px;max-width:760px;width:54%;z-index:2}.project-hero-content .back-link{margin-bottom:33px}.hero-brand{height:84px;display:flex;align-items:center;margin-bottom:17px}.hero-brand .logo-bar-radar{width:148px;max-height:106px;object-position:left}.hero-brand .logo-fiderol{width:220px}.hero-brand .vp-logo{font-size:25px}.hero-brand .vp-logo img{width:46px;height:46px}.project-hero .eyebrow{margin-bottom:13px}.project-hero h1{font-size:clamp(41px,4.3vw,70px);line-height:1.05;letter-spacing:-.045em;font-weight:300;text-wrap:balance;max-width:590px}.project-intro{font-size:19px;color:#d1dce5;line-height:1.6;max-width:460px;margin:20px 0 27px;font-weight:300}.hero-preview{position:absolute;right:-2%;top:29%;width:49%;transform:perspective(1600px) rotateY(-12deg) rotateZ(2deg);border:1px solid color-mix(in srgb,var(--project) 50%,transparent);border-radius:11px;overflow:hidden;background:#0b1a2d;box-shadow:-25px 30px 70px #0007;transition:transform .7s var(--ease)}.hero-preview:hover{transform:perspective(1600px) rotateY(-7deg) rotateZ(0)}.hero-preview>img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;object-position:top}.browser-bar{height:35px;display:flex;align-items:center;gap:5px;padding:0 12px;background:#081826;color:#abbccb;font-size:11px}.browser-bar>span:not(:last-child){width:5px;height:5px;background:#829eb158;border-radius:50%}.browser-bar p{flex:1;text-align:center}.browser-bar>span:last-child{font-size:17px}.hero-bottom{position:absolute;bottom:27px;left:5.5%;right:5.5%;display:flex;justify-content:space-between;gap:20px;font-size:13px;color:#adbfcc;border-top:1px solid #8dafc227;padding-top:19px}.project-story{padding-top:105px;padding-bottom:75px;display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.project-story h2,.gallery-section h2{font-weight:300;font-size:43px;line-height:1.15;letter-spacing:-.035em;max-width:420px}.project-story .text-link{margin-top:17px}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding-bottom:100px}.features article{padding:27px 0 0;border-top:1px solid var(--line)}.feature-index{display:block;font-size:13px;letter-spacing:.09em;color:var(--project,var(--gold));margin-bottom:24px}.features h3{font-size:23px;letter-spacing:-.02em;font-weight:400;margin-bottom:13px}.features p{font-size:16px;line-height:1.7;color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:35px}.gallery-section{padding:45px 0 90px}.gallery-section h2{max-width:none}.project-gallery{display:grid;grid-template-columns:1.35fr 1fr;gap:30px;align-items:start}.project-gallery figure{margin:0}.project-gallery button{padding:0;background:#102234;width:100%;position:relative;border-radius:9px;overflow:hidden;border:1px solid #a0c2d42a}.project-gallery img{width:100%;object-fit:cover;aspect-ratio:1.6;transition:transform .6s}.gallery-secondary{padding-top:65px}.gallery-secondary img{aspect-ratio:1.5}.project-gallery button:hover img{transform:scale(1.035)}.project-gallery figcaption{font-size:13px;color:#aebfcf;line-height:1.6;padding-top:15px}.expand-image{position:absolute;right:14px;bottom:14px;width:37px;height:37px;display:grid;place-items:center;border-radius:50%;background:#061321cc;border:1px solid #abcde74d;font-size:22px}.next-project{display:flex;justify-content:space-between;align-items:center;gap:40px;border-top:1px solid var(--line);padding:50px 0 85px}.next-link{display:flex;flex-direction:column;gap:10px;text-align:right}.next-link>span{font-size:13px;color:#aebfcf}.next-link strong{font-size:32px;font-weight:300;letter-spacing:-.02em}.next-link:hover .arrow{transform:translateX(8px)}.image-dialog{padding:65px 25px 25px;border:1px solid #abc7da4d;border-radius:14px;max-width:94vw;max-height:94svh;width:1250px;background:#061421;color:#dce8f2}.image-dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}.image-dialog img{width:100%;max-height:73svh;object-fit:contain}.image-dialog p{margin-top:16px;font-size:14px}.dialog-close{position:absolute;top:18px;right:24px;background:transparent;font-size:16px;padding:5px 10px}
/* Services and contact share the materials of the entrances. */
.info-page{position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 30%,#113552 0%,#071522 40%);--project:#81d6ff}.contact-page{--project:#efb765;background:radial-gradient(ellipse at 80% 30%,#352b1f 0%,#071522 45%)}.info-hero{position:relative;min-height:780px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:55px;padding-top:125px;padding-bottom:85px}.info-hero h1{font-size:clamp(48px,5.5vw,80px);font-weight:300;letter-spacing:-.05em;line-height:1.08;margin-bottom:30px}.info-hero .large-copy{max-width:600px}.info-hero .button-primary{margin-top:30px}.info-art{position:relative;aspect-ratio:1;min-width:0}.info-art .entrance-art{width:120%;bottom:-3%;left:-10%;background-position:0 center;filter:drop-shadow(0 0 70px #2e8caf30)}.contact-page .info-art .entrance-art{background-position:100% center;filter:drop-shadow(0 0 60px #d3862820)}.service-list{padding-bottom:50px}.service-list article{display:grid;grid-template-columns:100px 1fr;gap:30px;padding:40px 0;border-top:1px solid var(--line)}.service-list .feature-index{padding-top:8px}.service-list h2{font-size:31px;font-weight:300;letter-spacing:-.02em;margin-bottom:15px}.service-list p{font-size:18px;line-height:1.65;color:var(--muted);max-width:780px}.service-end{padding:70px 0 100px}.service-end h2{font-size:48px;font-weight:300;line-height:1.15;letter-spacing:-.03em}.service-end>p:not(.eyebrow){font-size:20px;line-height:1.65;color:var(--muted);max-width:640px;margin:25px 0 15px}.contact-details{margin:30px 0}.contact-name{font-size:21px;margin-bottom:8px}.contact-details>p:not(.contact-name){font-size:16px;line-height:1.6;color:var(--muted)}.contact-pending{margin-top:18px}
@media(max-width:1200px) and (min-width:901px){.project-choice{grid-template-columns:24px 1fr 17px;gap:13px;padding-inline:17px}.choice-copy{display:none}.choice-logo .project-logo{margin:auto}.choice-logo .vp-logo{justify-content:center}.world-detail{width:365px;right:4%;padding:23px}.world-detail h2{font-size:27px}.world-heading{top:107px}.project-hero-content{width:57%;padding-left:5.5%;padding-right:3%}.project-story{gap:45px}.hero-preview{right:-7%;width:52%}.vp-logo{white-space:normal}.hero-brand .vp-logo{font-size:21px}}
@media(max-width:900px){
  .site-header{padding:22px 22px;gap:20px}.site-header .wordmark{font-size:27px}.site-header nav{gap:17px;font-size:13px}.site-header nav a{padding:7px 0}.content-width{width:calc(100% - 44px)}.eyebrow{font-size:12px;margin-bottom:16px}.large-copy{font-size:19px;line-height:1.65}.button-primary{font-size:15px;padding:14px 22px}.site-footer{width:calc(100% - 44px);padding:30px 0;flex-wrap:wrap;font-size:12px;gap:20px}.site-footer .wordmark{font-size:26px}.site-footer>span{width:100%;order:3}.site-footer>a:last-child{font-size:13px}.vp-logo{white-space:normal}
  .references{min-height:820px;height:100svh}.world-heading{top:108px;left:22px;right:22px}.world-heading h1{font-size:46px;line-height:1.05;letter-spacing:-.045em}.world-heading p{font-size:15px;line-height:1.45;max-width:300px;margin-top:15px}.world-stage{top:225px;bottom:auto;height:330px;overflow:visible;z-index:-2}.world-camera{transform:none}.world-scene{width:132%;left:51%;top:50%;aspect-ratio:1586/992}.world-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#06182b,transparent 18%,transparent 78%,#06182b)}.references:before{display:none}.island-marker{width:30px;height:30px;font-size:12px}.island-marker:before{inset:-5px}.marker-bar-radar{left:24%;top:51%}.marker-fiderol{left:52%;top:33%}.marker-verkkopalvelu{left:83%;top:49%}.boat{width:8%}.world-bottom{left:19px;right:19px;bottom:12px}.world-selector{grid-template-columns:1fr;border-radius:13px;padding:3px;background:#051726ef;backdrop-filter:blur(12px)}.project-choice{grid-template-columns:24px 95px minmax(0,1fr) 18px;min-height:75px;padding:7px 15px;gap:12px;border-radius:9px}.project-choice:after{right:15px;left:15px;bottom:-1px;top:auto;width:auto;height:1px}.choice-number{font-size:18px}.choice-logo .logo-bar-radar{width:94px;height:60px}.choice-logo .logo-fiderol{width:94px}.choice-logo .vp-logo{font-size:10px;gap:4px;white-space:normal;overflow-wrap:anywhere}.choice-logo .vp-logo img{width:23px;height:23px}.choice-copy{font-size:13px;line-height:1.45}.choice-copy strong{display:none}.choice-arrow{font-size:21px}.world-foot{margin-top:6px;font-size:12px}.motion-control{font-size:12px}.world-detail{top:219px;right:20px;left:20px;width:auto;padding:18px 20px;backdrop-filter:blur(22px);max-height:calc(100% - 500px);overflow:auto}.reset-world{font-size:12px;padding-bottom:12px}.detail-brand{height:42px;margin-bottom:13px}.detail-brand .logo-bar-radar{width:95px;height:58px}.detail-brand .logo-fiderol{width:155px}.detail-brand .vp-logo{font-size:19px}.detail-brand .vp-logo img{width:32px;height:32px}.world-detail h2{font-size:25px}.world-detail .eyebrow{font-size:10px;margin-bottom:7px}.detail-description{font-size:14px;line-height:1.55;margin:10px 0 15px}.world-detail .button-primary{min-height:44px;padding:10px 17px;font-size:14px}.references[data-selected]:not([data-selected='']) .world-heading{opacity:1;transform:none}.references[data-selected]:not([data-selected='']) .world-heading h1{font-size:35px}.references[data-selected]:not([data-selected='']) .world-heading p{display:none}.references[data-selected='bar-radar'] .world-camera{transform:translate(14%,-6%) scale(1.4);opacity:.65}.references[data-selected='fiderol'] .world-camera{transform:translate(0,10%) scale(1.5);opacity:.65}.references[data-selected='verkkopalvelu'] .world-camera{transform:translate(-20%,0) scale(1.4);opacity:.65}
  .project-hero{height:auto;min-height:0;max-height:none;padding-bottom:80px}.project-hero-content{width:100%;max-width:none;padding:106px 22px 25px}.project-hero-content .back-link{margin-bottom:30px;font-size:13px}.hero-brand{height:65px;margin-bottom:18px}.hero-brand .logo-bar-radar{width:125px;height:83px}.hero-brand .logo-fiderol{width:180px}.hero-brand .vp-logo{font-size:22px}.hero-brand .vp-logo img{width:37px;height:37px}.project-hero h1{font-size:45px;max-width:440px;line-height:1.08}.project-intro{font-size:17px;line-height:1.6;margin:19px 0 24px;max-width:440px}.project-glow{background:linear-gradient(90deg,#05111eeb,#05111ea6),linear-gradient(0deg,#071421,transparent 70%)}.project-landscape img{height:75%;transform:scale(2.2);opacity:.8}.hero-preview{position:relative;top:auto;right:auto;margin:18px 0 35px 22px;width:calc(100% - 44px);transform:none;border-radius:8px}.hero-preview:hover{transform:none}.browser-bar{height:28px;font-size:10px}.hero-bottom{bottom:25px;left:22px;right:22px;font-size:11px;gap:12px}.hero-bottom>span:nth-child(2){display:none}.project-story{padding-top:65px;padding-bottom:40px;grid-template-columns:1fr;gap:25px}.project-story h2,.gallery-section h2{font-size:35px}.features{grid-template-columns:1fr;gap:27px;padding-bottom:35px}.features article{padding-top:21px;display:grid;grid-template-columns:30px 1fr;column-gap:15px}.features .feature-index{grid-row:1/3;margin-top:5px}.features h3{font-size:22px;margin-bottom:10px}.features p{font-size:16px;grid-column:2}.section-heading{align-items:start;gap:20px;flex-direction:column;margin-bottom:25px}.gallery-section{padding:40px 0 55px}.project-gallery{grid-template-columns:1fr;gap:30px}.gallery-secondary{padding-top:0}.project-gallery figcaption{font-size:12px;padding-top:11px}.next-project{align-items:flex-start;flex-direction:column;gap:29px;padding:35px 0 55px}.next-link{text-align:left}.next-link strong{font-size:29px}.image-dialog{max-width:96vw;padding:55px 12px 15px}.dialog-close{right:12px;top:12px}.image-dialog p{font-size:12px}
  .info-hero{grid-template-columns:1fr;gap:0;min-height:0;padding-top:123px;padding-bottom:45px}.info-hero h1{font-size:51px;line-height:1.08;margin-bottom:25px}.info-art{width:80%;max-width:370px;justify-self:center;margin-top:25px}.info-art .entrance-art{width:112%;left:-6%;bottom:0}.service-list article{grid-template-columns:27px 1fr;gap:18px;padding:27px 0}.service-list h2{font-size:26px;line-height:1.25}.service-list p{font-size:16px}.service-end{padding:30px 0 70px}.service-end h2{font-size:37px}.service-end>p:not(.eyebrow){font-size:18px}.contact-details{margin-top:27px}
}
@media(max-width:370px){.site-header{padding-inline:17px;gap:10px}.site-header nav{gap:12px;font-size:12px}.site-header .wordmark{font-size:25px}.world-heading h1{font-size:42px}.project-choice{grid-template-columns:20px 80px minmax(0,1fr) 15px;gap:9px;padding-inline:11px}.choice-logo .logo-fiderol,.choice-logo .logo-bar-radar{width:80px}.choice-copy{font-size:12px}.detail-brand .vp-logo{font-size:17px}.world-detail{padding-inline:17px}}
@media(min-width:901px) and (max-height:760px){.references{min-height:700px}.world-heading{top:94px}.world-heading h1{font-size:53px}.world-detail{top:123px;padding:20px 25px}.detail-brand{height:53px;margin-bottom:8px}.detail-brand .logo-bar-radar{height:67px}.world-detail h2{font-size:27px}.detail-description{margin:10px 0 17px;font-size:15px}.world-selector .project-choice{min-height:84px}.project-hero-content{padding-top:104px}.hero-brand{height:64px}.project-hero-content .back-link{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.world-camera,.world-heading,.hero-preview{transition:none!important}.page-enter,.world-detail{animation:none!important}.boat{opacity:1!important}.references[data-selected]:not([data-selected='']) .world-camera{transform:none;opacity:1}}

/* Preserve complete brand names and the original proportions of real screenshots. */
.choice-logo .vp-logo{font-size:11px;gap:7px;white-space:nowrap;overflow-wrap:normal}.choice-logo .vp-logo img{width:26px;height:26px}.project-choice:last-child{grid-template-columns:27px minmax(0,1fr) 17px}.project-choice:last-child .choice-copy{display:none}.project-choice:last-child .choice-logo .vp-logo{font-size:15px;gap:10px}.project-choice:last-child .choice-logo .vp-logo img{width:34px;height:34px}.hero-preview>img,.gallery-primary img{aspect-ratio:auto;height:auto}.boat{left:61%;top:76%}.world-detail .detail-brand .vp-logo{white-space:nowrap}
@media(max-width:900px){.site-header nav{font-size:14px;gap:14px}.world-scene{width:100%;left:50%}.world-stage{top:229px;height:309px}.project-choice:last-child{grid-template-columns:24px 95px minmax(0,1fr) 18px}.project-choice:last-child .choice-copy{display:block}.project-choice:last-child .choice-logo .vp-logo{font-size:9px;white-space:normal;overflow-wrap:normal;display:block;line-height:1.4}.project-choice:last-child .choice-logo .vp-logo img{width:23px;height:23px;float:left;margin-right:5px}.project-choice:last-child .choice-logo .vp-logo>span{font-size:0}.project-choice:last-child .choice-logo .vp-logo>span:after{content:'VERKKO\A PALVELU.FI';white-space:pre;font-size:9px}.hero-preview>img{aspect-ratio:auto}.boat{width:11%}.world-heading{z-index:3}.references[data-selected]:not([data-selected='']) .world-stage{top:200px;height:345px}}
@media(max-width:370px){.site-header nav{font-size:12px;gap:12px}.project-choice:last-child{grid-template-columns:20px 80px minmax(0,1fr) 15px}.project-choice:last-child .choice-logo .vp-logo>span:after{font-size:8px}}

.focused-landscape{position:absolute;inset:0;isolation:isolate;opacity:0;transition:opacity 1.1s ease .2s;pointer-events:none}.focused-landscape.shown{opacity:1}.focused-landscape .environment{z-index:-1}.project-landscape img,.project-bar-radar .project-landscape img,.project-fiderol .project-landscape img,.project-verkkopalvelu .project-landscape img{transform:none}
@media(max-width:900px){
 .project-choice:last-child{grid-template-columns:24px 1fr 18px}.project-choice:last-child .choice-copy{display:none}.project-choice:last-child .choice-logo .vp-logo{display:flex;align-items:center;white-space:nowrap;gap:9px}.project-choice:last-child .choice-logo .vp-logo img{float:none;margin:0;width:27px;height:27px}.project-choice:last-child .choice-logo .vp-logo>span{font-size:14px}.project-choice:last-child .choice-logo .vp-logo>span:after{content:none}
 .references[data-selected]:not([data-selected='']){min-height:950px}.references[data-selected]:not([data-selected='']) .world-stage{top:175px;height:340px;overflow:hidden}.references[data-selected]:not([data-selected='']) .world-detail{top:476px;max-height:none;padding:18px 20px}.references[data-selected]:not([data-selected='']) .world-heading h1{font-size:35px}.references[data-selected]:not([data-selected='']) .world-heading{top:105px}.references[data-selected]:not([data-selected='']) .world-selector{grid-template-columns:repeat(3,minmax(0,1fr));min-height:78px}.references[data-selected]:not([data-selected='']) .project-choice{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:75px;padding:10px 5px;text-align:center}.references[data-selected]:not([data-selected='']) .choice-logo,.references[data-selected]:not([data-selected='']) .choice-arrow{display:none}.references[data-selected]:not([data-selected='']) .choice-copy{display:block}.references[data-selected]:not([data-selected='']) .choice-copy strong{display:block;font-size:12px;line-height:1.3;font-weight:400;overflow-wrap:anywhere}.references[data-selected]:not([data-selected='']) .choice-copy>span{display:none}.references[data-selected]:not([data-selected='']) .choice-number{font-size:13px;color:#b3cddd}.references[data-selected]:not([data-selected='']) .project-choice:after{left:auto;right:-1px;top:15px;bottom:15px;height:auto;width:1px}.focused-landscape:after{content:'';position:absolute;inset:0;background:linear-gradient(#06182b,transparent 13%,transparent 77%,#06182b);pointer-events:none}.focused-landscape .environment{inset:0 -10%}.project-landscape img{height:85%}
}
@media(prefers-reduced-motion:reduce){.focused-landscape{transition:none}}

@keyframes page-arrive{from{opacity:0}to{opacity:1}}
.hero-preview{display:block}
.skip-link{opacity:0}.skip-link:focus{opacity:1}
@media(min-width:701px) and (max-width:900px){
 .references{min-height:1060px}.world-heading{left:35px;top:116px}.world-heading h1{font-size:55px}.world-stage{top:264px;height:480px}.world-bottom{left:30px;right:30px;bottom:18px}.project-choice{grid-template-columns:30px 145px minmax(0,1fr) 25px;gap:25px;min-height:81px;padding-inline:25px}.choice-logo .logo-bar-radar{width:110px;height:68px}.choice-logo .logo-fiderol{width:140px}.choice-copy{font-size:16px}.project-choice:last-child{grid-template-columns:30px 1fr 25px}.project-choice:last-child .choice-logo .vp-logo{font-size:18px}.references[data-selected]:not([data-selected='']){min-height:1220px}.references[data-selected]:not([data-selected='']) .world-heading h1{font-size:43px}.references[data-selected]:not([data-selected='']) .world-heading{left:35px;top:112px}.references[data-selected]:not([data-selected='']) .world-stage{top:220px;height:500px}.references[data-selected]:not([data-selected='']) .world-detail{top:694px;left:35px;right:35px;padding:25px 30px}.world-detail h2{font-size:30px}.detail-description{font-size:17px;max-width:560px}.references[data-selected]:not([data-selected='']) .project-choice{min-height:82px}.references[data-selected]:not([data-selected='']) .choice-copy strong{font-size:15px}.project-hero-content{padding-inline:35px}.project-hero h1{font-size:58px;max-width:600px}.project-intro{max-width:570px;font-size:20px}.hero-preview{margin-left:35px;width:calc(100% - 70px)}
}
@media(max-width:370px){.references[data-selected]:not([data-selected='']){min-height:1000px}.references[data-selected]:not([data-selected='']) .project-choice:last-child .choice-copy strong{font-size:11px}}
.contact-phone{display:inline-flex;align-items:center;gap:25px;font-size:clamp(28px,3vw,40px);font-weight:300;letter-spacing:-.02em;padding:18px 0 11px;border-bottom:1px solid var(--gold);margin:8px 0 16px}.contact-phone:hover{color:var(--gold)}
