@font-face{font-family:Caveat;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/font-0-DsYsnaLC.woff2)format("woff2")}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/font-1-zv1q-IGv.woff2)format("woff2")}@font-face{font-family:"Exo 2";font-style:italic;font-weight:500;font-display:swap;src:url(/assets/font-2-CIdKOG10.woff2)format("woff2")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/font-3-s93GRyf8.woff2)format("woff2")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/font-4-CcBOOuM_.woff2)format("woff2")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/font-5-CA6wbth7.woff2)format("woff2")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/font-6-BipcJC6j.woff2)format("woff2")}@font-face{font-family:"Exo 2";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/font-7-DzTGSa-9.woff2)format("woff2")}:root{--brand-blue:#005b8a;--brand-green:#a9e5b1;--navy:#005b8a;--navy-deep:#031f50;--green:var(--brand-green);--green-dark:#35834a;--ink:#0a2f70;--text:#38517f;--mist:#f4f8fb;--line:#dce8f2;--white:#fff;--shadow:0 18px 55px #0d35691c;--radius:18px;--sky-1:#eaf7ff;--sky-2:#dceff8;--sea-1:#c7eaf3;--sea-2:#83cbdc;--sea-3:#4ba8c8;--sun:#ffd968;--glow:#ffdc7561;--hero-ink:#06327a;--scene-filter:none;--page-bg:#fff;--soft-bg:#f7fbfd;--soft-bg-2:#f1f7fb;--card-bg:#fff;--header-bg:#fffffff5;--contact-bg:#031f50;--footer-bg:#02163a;--horizon-color:#74bede47}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:var(--page-bg);margin:0;font-family:Arial,Helvetica Neue,sans-serif;font-size:16px;line-height:1.65;transition:background-color 1.2s;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit}h1,h2,h3,.brand,.eyebrow,.nav-link,.btn,.metric strong,.category{font-family:"Exo 2",Arial,sans-serif}h1,h2,h3{color:var(--ink);margin:0;line-height:1.12}h1{letter-spacing:-.045em;max-width:13ch;font-size:clamp(2.55rem,5.2vw,5.15rem)}h2{letter-spacing:-.035em;font-size:clamp(2rem,3.5vw,3.35rem)}h3{font-size:1.18rem}.container{width:min(1180px,100% - 40px);margin-inline:auto}.section{padding:clamp(76px,9vw,126px) 0}.section-head{justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px;display:flex}.section-head p{max-width:460px;margin:0}@media (width>=801px){.services .section-head,.projects .section-head{align-items:flex-start}.services .section-head h2{font-size:clamp(2.2rem,3.2vw,2.8rem)}.services .section-head>p{letter-spacing:.01em;color:var(--ink);max-width:540px;font-family:Caveat,Segoe Print,Bradley Hand,cursive;font-size:1.3rem;font-weight:600;line-height:1.4}}.eyebrow{color:var(--green-dark);letter-spacing:.16em;text-transform:uppercase;-webkit-text-stroke:.12px #031f503d;text-shadow:0 1px #031f5014;margin:0 0 16px;font-size:.78rem;font-weight:800}.eyebrow.light{color:var(--brand-green);-webkit-text-stroke:.12px #031f5061;text-shadow:0 1px 1px #031f5038}.scribble{display:inline-block;position:relative}.scribble:after{content:"";border-top:3px solid var(--green);border-radius:50%;height:8px;position:absolute;bottom:-10px;left:0;right:25%;transform:rotate(-1deg)}.site-header{background:var(--header-bg);border-bottom:1px solid var(--line);z-index:50;align-items:center;height:94px;transition:background-color 1.2s,border-color 1.2s;display:flex;position:relative}.header-inner{justify-content:space-between;align-items:center;gap:30px;display:flex}.brand{letter-spacing:0;color:var(--brand-blue);white-space:nowrap;align-items:baseline;font-family:"Exo 2",Arial,sans-serif;font-size:2.05rem;font-style:normal;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.brand span{color:var(--brand-green)}.brand-tagline{color:var(--navy);letter-spacing:.01em;margin-left:10px;font-family:Caveat,Segoe Print,Bradley Hand,cursive;font-size:1.22rem;font-weight:600;transform:translateY(2px)rotate(-4deg)}.desktop-nav{align-items:center;gap:42px;display:flex}.nav-link{color:var(--navy);font-size:.92rem;font-weight:600;text-decoration:none;transition:color .2s}.nav-link:hover,.nav-link:focus-visible{color:var(--green-dark)}.menu-toggle{border:1px solid var(--line);width:46px;height:46px;color:var(--navy);background:#fff;border-radius:12px;justify-content:center;align-items:center;display:none}.menu-toggle svg{width:24px}.btn{border:1.5px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:9px;min-height:50px;padding:0 25px;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--brand-green);color:var(--navy);box-shadow:0 10px 25px #005b8a29}.btn-primary:hover{background:var(--brand-green);filter:brightness(.95)}.btn-outline{border-color:var(--navy);color:var(--navy);background:#ffffffb8}.btn-header{border-color:var(--green);min-height:46px;color:var(--navy);background:#fff;padding-inline:19px}@media (width>=801px){.btn-header{background:var(--brand-green);border-color:var(--brand-green);box-shadow:0 9px 24px #005b8a2e}.btn-header:hover{background:var(--brand-green);filter:brightness(.96);box-shadow:0 12px 28px #005b8a3d}}.hero{background:linear-gradient(150deg,var(--sky-1),var(--sky-2) 72%);isolation:isolate;align-items:center;min-height:560px;transition:background 1.2s;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:1;background:linear-gradient(108deg,#ffffffe0 0 40%,#ffffff57 58%,#0000 76%);position:absolute;inset:0}.hero .container{z-index:8;position:relative}.hero-copy{width:min(680px,60%);padding:68px 0 126px}.hero h1{max-width:none;color:var(--hero-ink);font-size:clamp(2.7rem,4vw,4.25rem);transition:color 1.2s}.hero h1 .hero-phrase{white-space:nowrap;display:block}.hero h1 .hero-highlight{white-space:nowrap;position:relative}.hero h1 .hero-highlight:after{content:"";background:var(--brand-green);border-radius:50%;width:.14em;height:.14em;position:absolute;bottom:.12em;right:-.18em}.hero-lead{max-width:610px;color:var(--hero-ink);margin:22px 0 28px;font-size:clamp(1rem,1.25vw,1.18rem)}.hero .eyebrow{color:var(--brand-green);background:#005b8aeb;border-radius:4px;padding:.28rem .58rem;line-height:1.25;display:inline-block;box-shadow:0 4px 14px #005b8a1a}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.time-badge{color:var(--hero-ink);opacity:.68;align-items:center;gap:8px;font-family:"Exo 2",sans-serif;font-size:.78rem;font-weight:600;display:none;position:absolute;top:28px;right:0}.time-badge i{background:var(--sun);width:8px;height:8px;box-shadow:0 0 15px var(--sun);border-radius:50%}.sky-light{background:radial-gradient(circle,var(--sun) 0 88%,color-mix(in srgb,var(--sun) 82%,transparent) 94%,transparent 100%);width:116px;height:116px;box-shadow:0 0 108px 54px var(--glow);filter:drop-shadow(0 0 22px var(--glow));z-index:0;opacity:.45;border-radius:50%;transition:all 1.2s;position:absolute;top:13%;right:21%}.stars{z-index:1;opacity:0;pointer-events:none;transition:opacity 1s;position:absolute;inset:0 0 20.8% 44%}.star{width:var(--star-size,2px);height:var(--star-size,2px);opacity:.2;background:#f4f9ffe0;border-radius:50%;position:absolute;box-shadow:0 0 4px #daebff38}.star.is-twinkling{animation:1.55s ease-in-out starTwinkle}.cloud-field{z-index:4;opacity:0;pointer-events:none;transition:opacity 1.2s;position:absolute;inset:0 0 20.8%;overflow:hidden}.hero-cloud{filter:saturate(.42)contrast(.92);height:auto;animation:cloudDrift var(--cloud-speed) linear infinite;animation-delay:var(--cloud-delay);will-change:transform;position:absolute;left:0}.cloud-long{--cloud-speed:76s;--cloud-delay:-18s;width:142px;top:17%}.cloud-round{--cloud-speed:93s;--cloud-delay:-61s;width:88px;top:29%}.cloud-wind{--cloud-speed:64s;--cloud-delay:-42s;width:105px;top:40%}.horizon-haze{z-index:2;background:linear-gradient(180deg,transparent 0,var(--horizon-color) 72%,#7ec0da33 100%);pointer-events:none;height:14.2%;transition:background 1.2s;position:absolute;top:65%;left:0;right:0}.dots{display:none}.hero-scene{z-index:3;aspect-ratio:739/224;clip-path:inset(0 0 8px);width:min(31vw,440px);filter:var(--scene-filter);pointer-events:none;background:0 0;transition:filter 1.2s,opacity 1.2s;position:absolute;bottom:calc(20.8% - 8px);right:0}.hero-beach{z-index:3;width:100%;height:100%;filter:var(--scene-filter);pointer-events:none;background:0 0;transition:filter 1.2s,opacity 1.2s;position:absolute;bottom:0;right:0;-webkit-mask-image:linear-gradient(90deg,#0000 0 42%,#00000029 49%,#000000c2 57%,#000 64%);mask-image:linear-gradient(90deg,#0000 0 42%,#00000029 49%,#000000c2 57%,#000 64%)}.hero:after{content:"";z-index:4;background:var(--page-bg);clip-path:ellipse(70% 85% at 50% 100%);filter:blur(11px);pointer-events:none;height:120px;transition:background-color 1.2s;position:absolute;bottom:-60px;left:-8%;right:-8%}.hero-beach{background-image:url(/assets/hero-beach-layer-v12-DjkAChrv.webp)}.hero-mascot{z-index:6;pointer-events:none;filter:drop-shadow(0 13px 12px #193b581f);width:clamp(205px,18vw,276px);position:absolute;bottom:34px;right:max(7vw,50vw - 560px)}.hero-mascot img{width:100%;height:auto}.sea-canvas{z-index:1;pointer-events:none;width:100%;height:20.8%;filter:var(--scene-filter);transition:filter 1.2s;display:block;position:absolute;top:79.2%;bottom:auto;left:0}.water-reflection{--reflection:#fff0;--reflection-soft:#fff0;z-index:5;opacity:0;clip-path:polygon(47% 0,53% 0,88% 100%,12% 100%);filter:blur(.12px);pointer-events:none;width:clamp(96px,9vw,142px);height:15%;transition:opacity 1.2s,right 1.2s;position:absolute;top:calc(79.2% + 8px);right:24%;overflow:hidden}.water-reflection:before,.water-reflection:after{--glint:linear-gradient(90deg,transparent 0,var(--reflection) 30%,var(--reflection-soft) 50%,var(--reflection) 70%,transparent 100%);content:"";background-image:var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint),var(--glint);transform-origin:50% 0;will-change:transform,opacity;background-position:50% 2%,47% 6%,54% 10%,43% 14%,59% 18%,49% 22%,38% 27%,63% 31%,46% 35%,69% 39%,31% 44%,56% 48%,75% 52%,41% 56%,64% 60%,24% 65%,79% 69%,49% 73%,34% 77%,68% 81%,18% 85%,57% 88%,83% 91%,39% 94%,70% 97%,48% 99%;background-repeat:no-repeat;background-size:4px 1px,6px 1px,5px 1px,7px 1px,6px 1px,8px 1px,7px 1px,9px 1px,8px 1px,10px 1px,8px 1px,11px 1px,9px 1px,12px 1px,10px 1px,13px 1px,11px 1px,14px 1px,12px 1px,15px 1px,13px 1px,16px 1px,14px 1px,18px 1px,16px 1px,20px 1px;animation:3.4s ease-in-out infinite alternate reflectionShimmer;position:absolute;inset:-3px -8px;-webkit-mask-image:linear-gradient(#0000008a,#000 20%,#000000e6 82%,#0000 100%);mask-image:linear-gradient(#0000008a,#000 20%,#000000e6 82%,#0000 100%)}.water-reflection:after{opacity:.38;animation-duration:5.1s;animation-direction:alternate-reverse;animation-delay:-2.7s;inset:-1px -12px}body[data-time=sunset] .water-reflection{--reflection:#f6a265d1;--reflection-soft:#ffe2b4eb;clip-path:polygon(72% 0,79% 0,96% 100%,7% 100%);filter:blur(.22px);opacity:.64;width:clamp(112px,10vw,154px);height:12%;top:calc(79.2% + 10px);right:22%}body[data-time=sunset] .water-reflection:before,body[data-time=sunset] .water-reflection:after{filter:drop-shadow(0 0 2px #ffbe843d)}body[data-time=night] .water-reflection{--reflection:#c7ddf8ad;--reflection-soft:#f5faffc2;opacity:.5;right:24%}@media (width>=801px){.water-reflection{z-index:5;clip-path:polygon(44% 0,51% 0,42% 100%,23% 100%);filter:blur(.12px);mix-blend-mode:screen;width:100%;height:11.5%;top:calc(79.2% + 5px);right:0}.water-reflection:before,.water-reflection:after{filter:drop-shadow(0 0 1.3px var(--reflection-soft));background-position:48% 2%,47% 6%,48% 10%,46% 14%,47% 18%,45% 22%,46% 27%,44% 31%,45% 35%,43% 39%,44% 44%,42% 48%,43% 52%,41% 56%,42% 60%,39% 65%,40% 69%,37% 73%,39% 77%,35% 81%,37% 85%,33% 88%,35% 91%,31% 94%,34% 97%,32% 99%;background-size:18px 1px,26px 1px,22px 1px,34px 1px,28px 1px,40px 1px,32px 1px,48px 1px,38px 1px,56px 1px,44px 2px,62px 1px,50px 2px,72px 1px,58px 2px,82px 1px,64px 2px,92px 1px,70px 2px,104px 2px,76px 2px,116px 2px,84px 2px,128px 2px,94px 2px,142px 2px;transform:none}.water-reflection:before{animation:9.4s ease-in-out infinite desktopMoonFlicker}.water-reflection:after{animation:13.8s ease-in-out -5.2s infinite desktopMoonFlickerSoft}body[data-time=sunset] .water-reflection{clip-path:polygon(44% 0,51% 0,42% 100%,23% 100%);opacity:.7;width:100%;height:11.5%;top:calc(79.2% + 5px);right:0}body[data-time=night] .water-reflection{clip-path:polygon(44% 0,51% 0,42% 100%,23% 100%);opacity:.68;width:100%;height:11.5%;top:calc(79.2% + 5px);right:0}}@keyframes desktopMoonFlicker{0%,to{opacity:.52}18%{opacity:.7}37%{opacity:.47}61%{opacity:.74}82%{opacity:.56}}@keyframes desktopMoonFlickerSoft{0%,to{opacity:.16}24%{opacity:.32}49%{opacity:.2}73%{opacity:.38}89%{opacity:.24}}body[data-time=dawn]{--sky-1:#ffd9bf;--sky-2:#ddecf5;--sea-1:#c4e2e7;--sea-2:#70aec1;--sun:#ffb052;--glow:#ffb15270;--scene-filter:sepia(.14) saturate(.9) brightness(1.04);--scene-tint:#ffd1ad;--page-bg:#fffdfb;--soft-bg:#fff8f2;--soft-bg-2:#fdf3eb;--card-bg:#fffefd;--header-bg:#fffcf8f5;--line:#eadfd5;--shadow:0 18px 55px #7e4e2c1f;--contact-bg:#173653;--footer-bg:#102a45;--horizon-color:#7ebed854}body[data-time=sunset]{--sky-1:#f39b74;--sky-2:#8fb7d2;--sea-1:#9ecbd3;--sea-2:#568aa2;--sun:#f27d42;--glow:#f27d4294;--scene-filter:sepia(.24) saturate(.92) brightness(.88);--scene-tint:#e99b79;--page-bg:#fffaf8;--soft-bg:#fff2ed;--soft-bg-2:#f9eae5;--card-bg:#fffdfc;--header-bg:#fff9f6f5;--line:#e7d6d2;--shadow:0 18px 55px #713e2d24;--contact-bg:#263551;--footer-bg:#1a2944;--horizon-color:#6caecc61}body[data-time=night]{--sky-1:#071b43;--sky-2:#16466c;--sea-1:#174c6c;--sea-2:#062f51;--sea-3:#052b4d;--sun:#e9f2ff;--glow:#cae1ff38;--hero-ink:#f4f8ff;--scene-filter:brightness(.43) saturate(.72) hue-rotate(8deg);--scene-tint:#12365d;--page-bg:#f7f9fc;--soft-bg:#eff4fa;--soft-bg-2:#e9f0f8;--card-bg:#fbfdff;--header-bg:#f7fafdf5;--line:#cbd8e8;--shadow:0 18px 55px #051a3c26;--contact-bg:#061d3f;--footer-bg:#03142f;--horizon-color:#4884a961}body[data-time=dawn] .cloud-field{opacity:.16}body[data-time=day] .cloud-field{opacity:.17}body[data-time=sunset] .hero{background:linear-gradient(150deg,#f5a07a 0%,#eaa083 44%,#91bad4 78%,#759fbd 100%)}body[data-time=sunset] .cloud-field{opacity:.24}body[data-time=dawn] .hero-cloud{filter:sepia(.12)saturate(.52)contrast(.9)}body[data-time=sunset] .hero-cloud{filter:sepia(.28)saturate(.58)contrast(.9)}body[data-time=night] .stars{opacity:.62}body[data-time=night] .hero:before{opacity:.12}body[data-time=night] .btn-outline{color:#fff;background:#ffffff0f;border-color:#fffc}body[data-time=night] .sky-light{opacity:.88;filter:drop-shadow(0 0 24px #cde1ff61);background:radial-gradient(circle,#edf5ff 0 88%,#edf5ffd1 94%,#0000 100%);box-shadow:0 0 66px 27px #cde1ff45}body[data-time=night] .sky-light:after{content:"";background:var(--sky-2);filter:blur(.7px);border-radius:50%;width:92%;height:92%;position:absolute;top:-13%;left:24%}.sky-light{z-index:2}body[data-time=day] .sky-light{opacity:.45;top:13%;right:21%}body[data-time=dawn] .sky-light{opacity:.52;top:25%;right:36%}body[data-time=sunset] .sky-light{opacity:.64;top:52%;right:6%}body[data-time=night] .sky-light{top:16%;right:15%}.hero-mascot{transition:filter 1.2s}body[data-time=dawn] .hero-mascot{filter:sepia(.08)saturate(.9)drop-shadow(0 13px 12px #193b581f)}body[data-time=sunset] .hero-mascot{filter:sepia(.18)brightness(.88)drop-shadow(0 13px 12px #193b582e)}body[data-time=night] .hero-mascot{filter:brightness(.58)saturate(.74)drop-shadow(0 13px 12px #00122c52)}body[data-time=dawn] .hero-beach,body[data-time=dawn] .hero-scene{filter:sepia(.14)saturate(.9)brightness(1.04)}body[data-time=sunset] .hero-beach,body[data-time=sunset] .hero-scene{filter:sepia(.24)saturate(.92)brightness(.88)}body[data-time=night] .hero-beach,body[data-time=night] .hero-scene{filter:brightness(.43)saturate(.72)hue-rotate(8deg)}.time-tester{z-index:120;pointer-events:auto;isolation:isolate;transition:bottom .3s;position:fixed;bottom:20px;right:clamp(18px,3vw,46px)}body.show-scroll-top .time-tester{bottom:82px}.time-toggle{width:50px;height:50px;color:var(--brand-blue);cursor:pointer;background:#fffffff0;border:1px solid #005b8a2e;border-radius:50%;place-items:center;display:grid;box-shadow:0 10px 28px #042b5529}.time-toggle svg{width:23px;height:23px}.scroll-top{z-index:119;width:50px;height:50px;color:var(--brand-blue);cursor:pointer;opacity:0;visibility:hidden;background:#fffffff0;border:1px solid #005b8a2e;border-radius:50%;place-items:center;transition:opacity .25s,transform .25s,visibility .25s;display:grid;position:fixed;bottom:20px;right:clamp(18px,3vw,46px);transform:translateY(12px)scale(.9);box-shadow:0 10px 28px #042b5529}.scroll-top.visible{opacity:1;visibility:visible;transform:none}.scroll-top svg{width:23px;height:23px}.time-panel{width:min(300px,100vw - 28px);color:var(--navy);opacity:0;visibility:hidden;background:#fffffff7;border:1px solid #005b8a1f;border-radius:12px;padding:16px 17px;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;bottom:62px;right:0;transform:translateY(8px);box-shadow:0 18px 48px #042b5533}.time-tester.open .time-panel{opacity:1;visibility:visible;transform:none}.time-panel-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:10px;font:700 .85rem "Exo 2",sans-serif;display:flex}.time-value{font-variant-numeric:tabular-nums;color:var(--green-dark)}.time-slider{width:100%;accent-color:var(--brand-blue)}.time-panel-foot{justify-content:space-between;align-items:center;margin-top:8px;font-size:.76rem;display:flex}.time-auto{color:var(--brand-blue);cursor:pointer;background:0 0;border:0;padding:4px 0;font-weight:700}.metrics-wrap{z-index:20;margin-top:-54px;position:relative}.metrics{--metrics-surface:#eef7fb;--metrics-glow:#4e97bd21;background:var(--metrics-surface);box-shadow:0 30px 72px var(--metrics-glow),var(--shadow);border-radius:10px;grid-template-columns:repeat(3,1fr);padding:25px 28px;transition:background-color 1.2s,box-shadow 1.2s;display:grid}body[data-time=dawn] .metrics{--metrics-surface:#fff3e2;--metrics-glow:#dd9b4d26}body[data-time=day] .metrics{--metrics-surface:#eef7fb;--metrics-glow:#3d91be21}body[data-time=sunset] .metrics{--metrics-surface:#fff0ea;--metrics-glow:#cc684f29}body[data-time=night] .metrics{--metrics-surface:#eef2fa;--metrics-glow:#1f43772b}.metric{grid-template-columns:48px 1fr;align-items:start;gap:14px;padding:9px 27px;display:grid}.metric+.metric{border-left:1px solid #bfd1e4}.metric svg{width:34px;height:34px;color:var(--navy);stroke-width:1.8px}.metric strong{color:var(--navy);margin-bottom:3px;font-size:1rem;display:block}.metric span{font-size:.88rem;line-height:1.45}.services{background:linear-gradient(180deg,var(--page-bg) 0%,var(--soft-bg) 24%,var(--soft-bg) 72%,var(--page-bg) 100%);padding-top:72px;transition:background 1.2s}.service-grid{grid-template-columns:repeat(5,1fr);gap:20px;display:grid}.service-card{background:var(--card-bg);border:1px solid var(--line);border-radius:9px;min-height:250px;padding:28px 22px 22px;transition:transform .25s,box-shadow .25s,background-color 1.2s,border-color 1.2s;box-shadow:0 10px 30px #0a32690e}.service-card:hover{transform:translateY(-7px);box-shadow:0 18px 42px #0a32691f}.service-icon{width:58px;height:58px;color:var(--navy);background:#f4f8fb;border-radius:50%;place-items:center;margin-bottom:21px;display:grid}.service-icon svg{stroke-width:1.6px;width:29px;height:29px}.service-card p{margin:12px 0 18px;font-size:.9rem;line-height:1.52}.arrow-link{color:var(--green-dark);justify-content:flex-end;font-size:1.5rem;line-height:1;text-decoration:none;display:flex}.services{padding-bottom:42px}.clients{--logo-tone:#6f91a7;padding:16px 0 54px;overflow:hidden}.clients-title{width:max-content;max-width:100%;margin:0 0 34px}.logo-marquee{padding:10px 8px 14px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 3% 97%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 3% 97%,#0000 100%)}.logo-track{will-change:transform;width:max-content;animation:38s linear infinite client-logo-scroll;display:flex}.logo-set{align-items:center;gap:clamp(18px,2vw,28px);padding-right:clamp(18px,2vw,28px);display:flex}.client-logo{background:#fffffff0;border:1px solid #6f91a729;border-radius:14px;flex:none;width:clamp(154px,13vw,188px);height:96px;padding:16px 20px;transition:box-shadow .4s,transform .4s;display:block;position:relative;box-shadow:0 0 24px #1f41601a}.client-logo:before{content:"";background:var(--logo-tone);-webkit-mask-image:var(--logo);-webkit-mask-image:var(--logo);mask-image:var(--logo);opacity:var(--logo-opacity,.7);transition:opacity .4s,transform .4s;position:absolute;inset:16px 20px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.client-logo img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity .4s,transform .4s;display:block}.client-logo:hover{transform:translateY(-2px);box-shadow:0 0 30px #1f416029}.client-logo:hover:before{opacity:0;transform:scale(1.03)}.client-logo:hover img{opacity:1;transform:scale(1.03)}.logo-marquee:hover .logo-track{animation-play-state:paused}body[data-time=dawn] .clients{--logo-tone:#918d88;--logo-opacity:.54}body[data-time=day] .clients{--logo-tone:#6f91a7;--logo-opacity:.7}body[data-time=sunset] .clients{--logo-tone:#948b89;--logo-opacity:.52}body[data-time=night] .clients{--logo-tone:#64758f;--logo-opacity:.66}@keyframes client-logo-scroll{to{transform:translate(-50%)}}.service-card.ai-card{background:#eaf9ec;background:color-mix(in srgb,var(--brand-green) 24%,white);border-color:#dbf4de;border-color:color-mix(in srgb,var(--brand-green) 44%,white);color:var(--navy-deep);box-shadow:0 14px 34px #005b8a12}.ai-card .service-icon{color:var(--navy);background:#ffffffad}.ai-card h3{color:var(--navy-deep)}.ai-card p{max-width:820px}.ai-card .arrow-link{color:var(--navy)}@media (width>=801px){.clients{padding-bottom:24px}.ai-development{padding-top:48px}.ai-development:before{inset:18px -5% 0}.service-card.ai-card{grid-column:1/-1;grid-template-rows:auto auto;grid-template-columns:72px minmax(0,1fr) 44px;align-items:center;column-gap:24px;min-height:176px;padding:28px 34px;display:grid}.ai-card .service-icon{grid-area:1/1/3;margin:0}.ai-card h3{grid-area:1/2;align-self:end;font-size:1.6rem}.ai-card p{grid-area:2/2;align-self:start;margin:8px 0 0;font-size:1rem}.ai-card .arrow-link{grid-area:1/3/3;justify-content:center;align-self:center}}.ai-development{isolation:isolate;background:color-mix(in srgb,var(--brand-green) 25%,white);scroll-margin-top:90px;position:relative;overflow:hidden}.ai-development:before{content:"";z-index:-2;background:radial-gradient(circle at 16% 18%,#ffffffc7,transparent 27%),radial-gradient(circle at 84% 76%,color-mix(in srgb,var(--brand-green) 26%,transparent),transparent 31%),linear-gradient(124deg,color-mix(in srgb,var(--brand-green) 30%,white),color-mix(in srgb,var(--brand-green) 14%,white) 54%,color-mix(in srgb,var(--brand-green) 25%,white));box-shadow:0 0 52px color-mix(in srgb,var(--brand-green) 15%,transparent);pointer-events:none;border-radius:7% 13% 0 0/16% 10% 0 0;position:absolute;inset:34px -5% 0;transform:rotate(-.65deg)}.ai-development:after{content:"";z-index:-1;background:radial-gradient(ellipse,color-mix(in srgb,var(--brand-green) 24%,transparent),transparent 70%);filter:blur(18px);pointer-events:none;border-radius:50%;width:420px;height:180px;position:absolute;bottom:5px;left:31%}.ai-dev-grid{grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(48px,6vw,82px);display:grid;position:relative}.ai-dev-copy h2{max-width:650px;margin-bottom:22px}.ai-dev-lead{max-width:650px;margin:0 0 26px;font-size:1.08rem;line-height:1.75}.ai-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 28px;display:grid}.ai-benefit{border:1px solid color-mix(in srgb,var(--brand-green) 24%,transparent);color:var(--ink);background:#ffffff9e;border-radius:11px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.92rem;line-height:1.45;display:flex}.ai-benefit svg{width:19px;height:19px;color:var(--green-dark);stroke-width:2px;flex:none;margin-top:1px}.ai-engine{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffdb;border:1px solid #6f91a72e;border-radius:22px;padding:30px;position:relative;box-shadow:0 0 42px #1f41601f}.ai-engine-label{letter-spacing:.13em;text-transform:uppercase;color:var(--green-dark);align-items:center;gap:9px;margin:0 0 24px;font-size:.78rem;font-weight:800;display:flex}.ai-engine-label:before{content:"";background:var(--brand-green);width:8px;height:8px;box-shadow:0 0 0 6px color-mix(in srgb,var(--brand-green) 18%,transparent);border-radius:50%;animation:2.4s ease-in-out infinite aiPulse}.ai-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid;position:relative}.ai-flow:before{content:"";background:linear-gradient(90deg,#6f91a71f,color-mix(in srgb,var(--brand-green) 52%,transparent),#6f91a71f);height:2px;position:absolute;top:37px;left:8%;right:8%}.ai-flow:after{content:"";background:linear-gradient(90deg,transparent,var(--brand-green),transparent);filter:blur(1px);border-radius:99px;width:42px;height:6px;animation:4.8s ease-in-out infinite aiFlow;position:absolute;top:35px;left:5%}.ai-stage{z-index:1;text-align:center;position:relative}.ai-stage-icon{width:74px;height:74px;color:var(--navy);background:#fff;border:1px solid #6f91a733;border-radius:18px;place-items:center;margin:0 auto 13px;animation:4s ease-in-out infinite aiIconDrift;display:grid;box-shadow:0 0 22px #1f41601a}.ai-stage:nth-child(2) .ai-stage-icon{animation-delay:-1s}.ai-stage:nth-child(3) .ai-stage-icon{animation-delay:-2s}.ai-stage:nth-child(4) .ai-stage-icon{animation-delay:-3s}.ai-stage-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:30px;height:30px}.ai-stage strong{color:var(--navy-deep);font-size:.9rem;line-height:1.3;display:block}.ai-stage span{color:var(--muted);margin-top:5px;font-size:.77rem;line-height:1.35;display:block}.ai-result{background:color-mix(in srgb,var(--brand-green) 15%,white);border:1px solid color-mix(in srgb,var(--brand-green) 34%,white);border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:14px 18px;margin-top:28px;padding:18px 20px;display:grid}.ai-result strong{color:var(--navy-deep);white-space:nowrap}.ai-result p{margin:0;font-size:.92rem;line-height:1.55}@keyframes aiPulse{0%,to{opacity:.65;transform:scale(.82)}50%{opacity:1;transform:scale(1.12)}}@keyframes aiFlow{0%{opacity:0;transform:translate(0)}15%{opacity:.8}50%{opacity:1}85%{opacity:.8}to{opacity:0;transform:translate(720%)}}@keyframes aiIconDrift{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (width<=900px){.ai-dev-grid{grid-template-columns:1fr}.ai-dev-copy{max-width:760px}.ai-engine{padding:26px}}@media (width<=620px){.ai-development{scroll-margin-top:76px}.ai-benefits{grid-template-columns:1fr}.ai-engine{padding:22px 16px}.ai-flow{grid-template-columns:repeat(2,1fr);gap:24px 12px}.ai-flow:before,.ai-flow:after{display:none}.ai-stage-icon{width:66px;height:66px}.ai-result{grid-template-columns:1fr;gap:6px}.ai-result strong{white-space:normal}}.about-home{background:var(--page-bg);padding:0 0 clamp(64px,6vw,88px);scroll-margin-top:90px;position:relative;overflow:hidden}.about-home-visual{--about-slope:7%;z-index:1;height:clamp(390px,42vw,610px);position:relative;overflow:hidden}.about-home-visual:before{content:"";z-index:2;height:var(--about-slope);background:color-mix(in srgb,var(--brand-green) 25%,white);clip-path:polygon(0 0,100% 0,0 100%);pointer-events:none;position:absolute;inset:0 0 auto}.about-home-visual img{object-fit:cover;object-position:center 48%;filter:saturate(.94)contrast(1.02);width:100%;height:100%}.about-home-visual:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#031f500a,#0000 44%,#031f5029);position:absolute;inset:0}.about-home-label{z-index:3;color:var(--navy);letter-spacing:.13em;background:#ffffffe6;border-radius:5px;padding:9px 14px;font:800 .74rem "Exo 2",sans-serif;position:absolute;bottom:clamp(68px,8vw,108px);left:max(20px,50vw - 590px);box-shadow:0 8px 24px #031f501f}.about-home-wave{z-index:3;width:102%;height:clamp(58px,8vw,108px);color:var(--page-bg);display:block;position:absolute;bottom:-1px;left:-1%}.about-home-copy{z-index:4;margin-top:-4px;position:relative}.about-home-copy h2{max-width:850px;margin-bottom:24px}.about-home-lead{max-width:900px;color:var(--ink);margin:0 0 34px;font-size:1.14rem;line-height:1.78}.about-home-text{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,6vw,82px);display:grid}.about-home-column p{margin:0 0 22px;line-height:1.78}.about-home-column p:last-child{margin-bottom:0}.projects{background:linear-gradient(180deg,var(--page-bg) 0%,var(--soft-bg-2) 22%,var(--soft-bg-2) 76%,var(--page-bg) 100%);transition:background 1.2s}.project-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:24px;display:grid}.project-card{background:var(--card-bg);height:100%;box-shadow:var(--shadow);border-radius:13px;flex-direction:column;transition:transform .25s,background-color 1.2s,box-shadow 1.2s;display:flex;overflow:hidden}.project-card:hover{transform:translateY(-6px)}.project-visual{background:linear-gradient(135deg,#d9e7f4,#f8fbff);height:210px;position:relative;overflow:hidden}.project-visual.dashboard:before{content:"";background:linear-gradient(90deg,var(--navy) 0 23%,#fff 23%);border-radius:8px;position:absolute;inset:22px;box-shadow:0 12px 25px #05234b33}.project-visual.dashboard:after{content:"";background:linear-gradient(135deg,transparent 0 13%,var(--brand-green) 14% 18%,transparent 19% 30%,#1d68b2 31% 36%,transparent 37%);opacity:.8;height:70px;position:absolute;bottom:38px;left:34%;right:10%}.project-visual.shop{background:linear-gradient(125deg,#e7efe3,#fff)}.project-visual.shop:before{content:"GREENHAUS";color:var(--brand-green);font:800 1.4rem "Exo 2",sans-serif;position:absolute;top:27%;left:13%}.project-visual.shop:after{content:"";background:var(--brand-green);width:105px;height:135px;box-shadow:-55px 15px 0 -22px var(--brand-green);border-radius:70% 20% 60%;position:absolute;bottom:-15px;right:14%;transform:rotate(-13deg)}.project-visual.app{background:linear-gradient(135deg,#cad6e1,#f6f8fa)}.project-visual.app:before{content:"2.458,00 €";width:132px;height:180px;color:var(--navy);background:#fff;border:7px solid #182a4f;border-radius:23px;padding:32px 13px;font:800 1.05rem "Exo 2",sans-serif;position:absolute;top:22px;right:13%;transform:rotate(9deg);box-shadow:-50px 30px 0 -5px #5f6e86}.project-body{flex-direction:column;flex:1;padding:20px 22px 23px;display:flex}.category{letter-spacing:.1em;color:var(--green-dark);text-transform:uppercase;-webkit-text-stroke:.12px #031f503d;text-shadow:0 1px #031f5014;font-size:.68rem;font-weight:800}.project-body h3{margin:4px 0 7px}.project-body p{margin:0;font-size:.9rem}.project-media{width:100%;color:inherit;cursor:zoom-in;text-align:inherit;background:0 0;border:0;flex:none;padding:0;display:block}.project-media:focus-visible{outline:3px solid var(--brand-green);outline-offset:-3px}.project-visual.project-katalog{background:linear-gradient(135deg,#e6f2f8,#fafdff);place-items:center;padding:34px;display:grid}.project-visual.project-katalog img{object-fit:contain;filter:drop-shadow(0 10px 18px #0a2f701f);width:min(86%,285px);max-height:118px;transition:transform .3s}.project-media:hover .project-visual.project-katalog img{transform:scale(1.035)}.project-visual.project-system{background:#edf3f7}.project-visual.project-system img{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .3s}.project-media:hover .project-visual.project-system img{transform:scale(1.025)}.project-visual.project-eve{background:linear-gradient(135deg,#fff3eb,#fff);place-items:center;padding:34px;display:grid}.project-visual.project-eve img{object-fit:contain;filter:drop-shadow(0 10px 18px #2d2d2d1f);width:min(88%,290px);max-height:112px;transition:transform .3s}.project-media:hover .project-visual.project-eve img{transform:scale(1.035)}.project-visual.project-logo{background:linear-gradient(135deg,#eaf3fa,#fff);place-items:center;padding:32px;display:grid}.project-visual.project-logo.project-ck{background:linear-gradient(135deg,#edf5fb,#fff4f0)}.project-visual.project-logo.project-pvsos{background:linear-gradient(135deg,#eef7ed,#fff)}.project-visual.project-logo img{object-fit:contain;filter:drop-shadow(0 10px 18px #0a2f701c);width:min(88%,285px);max-height:116px;transition:transform .3s}.project-media:hover .project-visual.project-logo img{transform:scale(1.035)}.project-visual.project-inverter{background:#edf2f5}.project-visual.project-inverter img{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .3s}.project-media:hover .project-visual.project-inverter img{transform:scale(1.025)}.project-private{background:color-mix(in srgb,var(--brand-green) 22%,white);color:var(--navy);border-radius:999px;align-items:center;margin-top:14px;padding:5px 8px;font:700 .7rem "Exo 2",sans-serif;display:inline-flex}.project-zoom{color:#fff;background:#031f50e0;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font:700 .72rem "Exo 2",sans-serif;display:inline-flex;position:absolute;bottom:15px;right:15px;box-shadow:0 7px 18px #031f5033}.project-link{color:var(--navy);align-items:center;gap:6px;margin-top:15px;font:700 .82rem "Exo 2",sans-serif;text-decoration:none;display:inline-flex}.project-link:hover,.project-link:focus-visible{text-underline-offset:3px;text-decoration:underline}.project-lightbox[hidden]{display:none}.project-lightbox{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02163ae6;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.project-lightbox-panel{background:#fff;border-radius:16px;grid-template-rows:minmax(0,1fr) auto;width:min(1080px,100%);height:min(760px,100vh - 56px);display:grid;position:relative;overflow:hidden;box-shadow:0 30px 90px #0006}.project-lightbox-stage{background:linear-gradient(145deg,#eef5fa,#fff);place-items:center;min-height:0;padding:54px 70px;display:grid;position:relative}.project-lightbox-image{object-fit:contain;max-width:100%;max-height:100%}.project-lightbox-close,.project-lightbox-nav{z-index:2;color:#fff;cursor:pointer;background:#031f50e6;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 8px 22px #031f5040}.project-lightbox-close{width:42px;height:42px;font-size:1.6rem;line-height:1;top:18px;right:18px}.project-lightbox-nav{width:46px;height:46px;font-size:1.8rem;top:50%;transform:translateY(-50%)}.project-lightbox-prev{left:16px}.project-lightbox-next{right:16px}.project-lightbox-nav[hidden]{display:none}.project-lightbox-caption{color:var(--ink);justify-content:space-between;align-items:center;gap:20px;padding:15px 20px;font:700 .9rem "Exo 2",sans-serif;display:flex}body.lightbox-open{overflow:hidden}@media (width>=801px){.projects .section-head>p,.location .section-head>p{letter-spacing:.01em;color:var(--ink);font-family:Caveat,Segoe Print,Bradley Hand,cursive;font-size:1.45rem;font-weight:600;line-height:1.35;transform:rotate(-1deg)}}.journey{padding:48px 0}.journey-box{color:#fff;background:linear-gradient(115deg,#062b6c,#074c92);border-radius:17px;align-items:center;min-height:210px;padding:45px 40% 45px 48px;display:flex;position:relative;overflow:hidden}.journey-box:before{content:"";background:repeating-radial-gradient(at 70% 90%,#0000 0 22px,#ffffff09 23px 24px);position:absolute;inset:0}.partner-logo-watermark{z-index:1;object-fit:contain;opacity:.075;filter:grayscale()brightness(3);pointer-events:none;-webkit-user-select:none;user-select:none;width:330px;max-height:120%;position:absolute;top:50%;right:2.5%;transform:translateY(-48%)rotate(5deg)}.journey-copy{z-index:2;position:relative}.journey h2{color:#fff;font-size:clamp(1.8rem,3vw,2.8rem)}.journey p{margin:12px 0 24px}.partner-sheep{z-index:2;width:250px;position:absolute;bottom:-14%;right:5%}.partner-tag{z-index:3;max-width:310px;color:var(--brand-green);letter-spacing:.1em;text-align:center;text-transform:uppercase;background:#031f504d;border:1px solid #a6e8b24d;border-radius:999px;padding:8px 13px;font:700 .69rem/1.35 "Exo 2",sans-serif;position:absolute;top:28px;right:32px;box-shadow:0 6px 18px #031f501f}.journey+.projects{padding-top:clamp(58px,7vw,88px)}.projects{padding-bottom:clamp(42px,5vw,68px)}.projects+.location{padding-top:clamp(46px,5vw,72px)}.project-more{height:100%;min-height:210px;box-shadow:var(--shadow);background:linear-gradient(120deg,#eefaf1,#e5f5fb);border:1px solid #a9e5b1b3;border-radius:18px;grid-column:span 2;align-items:center;margin-top:0;padding:34px 275px 34px 42px;display:flex;position:relative;overflow:hidden}.project-more:before{content:"";border:2px dashed #005b8a21;border-radius:50%;width:280px;height:280px;position:absolute;top:-70px;right:170px}.project-more-copy{z-index:2;max-width:650px;position:relative}.project-more .eyebrow{margin-bottom:10px}.project-more h3{margin-bottom:10px;font-size:clamp(1.65rem,2.6vw,2.35rem)}.project-more-note{color:var(--ink);margin:0 0 21px;font-family:Caveat,Segoe Print,Bradley Hand,cursive;font-size:1.35rem;line-height:1.35}.project-more-sheep{object-fit:contain;object-position:center bottom;z-index:1;width:205px;max-height:calc(100% - 16px);position:absolute;bottom:8px;right:42px}.location{background:linear-gradient(180deg,var(--page-bg),var(--soft-bg-2));transition:background 1.2s}.location .section-head{align-items:flex-start}.location-grid{grid-template-columns:1.08fr .92fr;align-items:stretch;gap:48px;display:grid}.map-card{min-height:410px;box-shadow:var(--shadow);background:#dcebf4;border:7px solid #fff;border-radius:18px;position:relative;overflow:hidden}.map-card iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.location-copy{align-content:center;gap:16px;display:grid}.location-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border-radius:14px;grid-template-columns:50px 1fr;align-items:center;gap:17px;padding:22px 24px;display:grid;box-shadow:0 12px 32px #0d356914}.location-card svg{width:36px;height:36px;color:var(--brand-green)}.location-card strong{color:var(--ink);font:800 1.05rem "Exo 2",sans-serif;display:block}.location-card a,.location-card span{color:var(--text);text-decoration:none}.location-card a:hover,.location-card a:focus-visible{text-underline-offset:3px;text-decoration:underline}.location-copy>p{max-width:580px;margin:5px 0 0}.location-copy>p+p{margin-top:-6px}.contact{isolation:isolate;background:linear-gradient(135deg,var(--navy-deep),var(--brand-blue));color:#dbe8f8;position:relative;overflow:hidden}.contact:before{content:"";z-index:0;opacity:.045;mix-blend-mode:soft-light;pointer-events:none;background:url(/assets/norddeich-soft-shapes-PSnuif3d.webp) 50% 55%/cover no-repeat;position:absolute;inset:0}.contact:after{content:"";z-index:0;pointer-events:none;opacity:1;transition:background 1.2s;position:absolute;inset:-15%}body[data-time=day] .contact:after{background:radial-gradient(circle at 76% 14%,#beeeff29,#0000 38%),linear-gradient(115deg,#55b4dc09,#0000 62%)}body[data-time=dawn] .contact:after{background:radial-gradient(circle at 18% 12%,#ffc36947,#0000 42%),linear-gradient(110deg,#ff965817,#0000 62%)}body[data-time=sunset] .contact:after{background:radial-gradient(circle at 84% 28%,#ff70484f,#0000 43%),radial-gradient(circle at 62% 72%,#b74e8f21,#0000 48%)}body[data-time=night] .contact:after{background:radial-gradient(circle at 76% 12%,#658bdc36,#0000 38%),linear-gradient(115deg,#020d2c33,#0000 64%)}.contact>.container{z-index:1;position:relative}.contact .section-head{align-items:flex-end}@media (width>=801px){.contact .section-head{align-items:flex-start}.contact .section-head>p{letter-spacing:.01em;color:#dbe8f8;max-width:540px;font-family:Caveat,Segoe Print,Bradley Hand,cursive;font-size:1.3rem;font-weight:600;line-height:1.4}}.contact .section-head h2{color:#fff}.contact .section-head>p{color:#dbe8f8}.contact .scribble:after{border-color:var(--brand-green)}.contact-grid{grid-template-columns:.82fr 1.18fr;align-items:stretch;gap:54px;display:grid}.contact-copy{color:#eef6ff;background:radial-gradient(circle at 52% 24%,#a9e5b11c,#0000 45%),linear-gradient(145deg,#031f509e,#005b8a3d);border:0;border-radius:22px;flex-direction:column;justify-content:center;align-self:stretch;padding:24px 24px 20px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 58px #000e2d3d}.contact-copy>*{z-index:1;position:relative}.contact-dog{filter:drop-shadow(0 17px 22px #00000045);width:calc(100% + 34px);max-width:540px;margin:-16px auto 0 -10px}.contact-copy-text{color:#eef6ff;text-shadow:0 1px 2px #031f5073;padding:12px 4px 0}.contact-copy p{max-width:440px;margin:8px 0}.contact-form{color:#fff;box-shadow:none;background:0 0;padding:0}.form-row{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.field{gap:7px;margin-bottom:14px;display:grid}.field label{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.field input,.field textarea{color:#fff;background:#ffffff1a;border:1px solid #ffffff5c;border-radius:9px;outline:none;width:100%;padding:14px 15px;box-shadow:inset 0 1px #ffffff14}.field input::placeholder,.field textarea::placeholder{color:#ebf5ffd1}.field input:focus,.field textarea:focus{border-color:var(--brand-green);background:#ffffff29;box-shadow:0 0 0 3px #a9e5b133}.field textarea{resize:vertical;min-height:150px}.contact-form .btn{width:100%;margin-top:12px}.contact-form .btn:disabled{cursor:wait;opacity:.72}.form-honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.form-status{color:var(--brand-green);margin:15px 0 0;font-weight:700;display:none}.form-status.show{display:block}.form-status.pending{color:#ffffffe0}.form-status.error{color:#ffd0c7}.footer{isolation:isolate;background:linear-gradient(135deg,#8bd69a,var(--brand-green));color:var(--navy-deep);padding:48px 0 0;position:relative;overflow:hidden}.footer:before{content:"";z-index:0;pointer-events:none;transition:background 1.2s;position:absolute;inset:-30%}body[data-time=day] .footer:before{background:radial-gradient(circle at 82% 5%,#ebfcff29,#0000 36%)}body[data-time=dawn] .footer:before{background:radial-gradient(circle at 16% 4%,#ffc16340,#0000 40%),linear-gradient(110deg,#ff975312,#0000 60%)}body[data-time=sunset] .footer:before{background:radial-gradient(circle at 84% 7%,#ff704845,#0000 40%),radial-gradient(circle at 58% 74%,#b84f8b1c,#0000 47%)}body[data-time=night] .footer:before{background:radial-gradient(circle at 76% 5%,#547dcd30,#0000 37%),linear-gradient(110deg,#02122f2e,#0000 62%)}.footer>.container,.footer-grass{z-index:1;position:relative}.footer-main{grid-template-columns:1.05fr .95fr .8fr;align-items:start;gap:48px;display:grid}.footer-mascot-mark{width:126px;height:111px;margin:-16px 0 4px;position:relative;overflow:visible}.footer-mascot-mark img{width:126px;max-width:none;display:block}.footer-slogan{max-width:340px;margin:12px 0 0}.footer-heading{color:var(--navy-deep);letter-spacing:.11em;text-transform:uppercase;margin:0 0 13px;font:800 .78rem "Exo 2",sans-serif}.footer-contact{gap:7px;display:grid}.footer-contact a{color:var(--navy-deep);text-decoration:none}.footer-nav{justify-items:start;gap:9px;display:grid}.footer-nav a{color:var(--navy-deep);font-size:.87rem;text-decoration:none}.footer a:hover,.footer a:focus-visible{text-underline-offset:3px;text-decoration:underline}.footer-socials{gap:10px;margin-top:22px;display:flex}.social-link{width:42px;height:42px;color:var(--navy-deep);background:#ffffff29;border:1px solid #031f5047;border-radius:50%;place-items:center;text-decoration:none;transition:transform .2s,background .2s,border-color .2s;display:grid}.social-link:hover,.social-link:focus-visible{background:var(--navy-deep);border-color:var(--navy-deep);color:#fff;text-decoration:none;transform:translateY(-2px)}.social-link svg{width:20px;height:20px}.footer-bottom{border-top:1px solid #031f502e;justify-content:space-between;gap:20px;margin-top:34px;padding:20px 0 16px;font-size:.8rem;display:flex}.footer-legal{gap:18px;display:flex}.footer-legal a{color:inherit;text-decoration:none}.footer-grass{pointer-events:none;background-image:url(/assets/footer-grass-DxMhXM-O.svg);background-position:bottom;background-repeat:repeat-x;background-size:220px 72px;height:72px;margin-top:0}@keyframes cloudDrift{0%{transform:translate(-16vw)}to{transform:translate(116vw)}}@keyframes reflectionShimmer{0%{opacity:.42;transform:translate(-5px)scaleX(.78)}32%{opacity:.72;transform:translate(3px,1px)scaleX(1.12)}66%{opacity:.5;transform:translate(-2px,2px)scaleX(.9)}to{opacity:.68;transform:translate(5px,3px)scaleX(1.18)}}@keyframes starTwinkle{0%,to{opacity:.18;transform:scale(.7);box-shadow:0 0 3px #daebff2e}45%{opacity:.95;transform:scale(1.75);box-shadow:0 0 9px 3px #daebff8c}70%{opacity:.42;transform:scale(1.05)}}@media (width<=1050px){.desktop-nav{gap:24px}.service-grid{grid-template-columns:repeat(3,1fr)}.service-card:nth-child(n+4){grid-column:span 1}.hero-copy{width:64%}.hero-scene{width:min(36vw,440px)}.journey-box{padding-right:43%}}@media (width<=800px){.site-header{height:78px}.desktop-nav{z-index:60;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:24px 20px;transition:transform .3s;display:flex;position:fixed;inset:78px 0 0;transform:translate(100%)}.menu-open .desktop-nav{transform:translate(0)}.desktop-nav .nav-link{border-bottom:1px solid var(--line);padding:17px 8px;font-size:1.05rem}.desktop-nav .btn{margin-top:20px}.menu-toggle{display:flex}.hero{align-items:flex-start;min-height:720px}.hero-copy{width:100%;padding:58px 0 312px}.hero h1{max-width:none;font-size:clamp(2.65rem,9vw,4.2rem)}.hero-lead{max-width:560px}.hero-scene{opacity:.98;width:min(54vw,330px);bottom:61px}.hero-beach{background-image:url(/assets/hero-beach-layer-mobile-v14-B8G5sDRu.webp);background-size:100% 330px;width:100%;height:330px}.sea{height:82px;right:22%}.time-badge{top:20px;right:12px}.metrics{grid-template-columns:1fr;padding:13px 22px}.metric{padding:17px 10px}.metric+.metric{border-top:1px solid #bfd1e4;border-left:0}.service-grid{grid-template-columns:repeat(2,1fr)}.location-grid,.contact-grid,.about-home-text,.project-grid{grid-template-columns:1fr}.project-more{grid-column:1}.project-visual{height:260px}.project-lightbox{padding:14px}.project-lightbox-panel{height:min(680px,100vh - 28px)}.project-lightbox-stage{padding:58px 18px 34px}.project-lightbox-nav{top:auto;bottom:14px}.project-lightbox-prev{left:14px}.project-lightbox-next{right:14px}.journey-box{padding:42px 43% 42px 34px}.partner-tag{top:22px;right:24px}.location-copy{order:-1}}@media (width<=560px){.container{width:min(100% - 28px,1180px)}.section{padding:66px 0}.brand{font-size:1.75rem}.hero{min-height:760px}.hero-copy{padding:52px 0 348px}.hero h1{max-width:none;font-size:clamp(2.1rem,10.4vw,2.55rem)}.hero-lead{margin:20px 0 25px;font-size:1rem}.hero-actions{grid-template-columns:1fr;display:grid}.hero-actions .btn{width:100%}.hero-scene{background-position:100% 100%;width:min(65vw,300px);bottom:61px}.hero-beach{background-position:100% 100%;background-size:100% 326px;height:326px}.sky-light{width:85px;height:85px;top:55%;right:10%}body[data-time=day] .sky-light{top:17%;right:9%}body[data-time=dawn] .sky-light{top:29%;right:29%}body[data-time=sunset] .sky-light{top:57%;right:4%}body[data-time=night] .sky-light{top:18%;right:9%}.sea{height:98px;right:32%}.metrics-wrap{margin-top:-34px}.metric{grid-template-columns:40px 1fr}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.section-head{display:block}.section-head p{margin-top:22px}.about-home{padding-bottom:54px}.about-home-visual{--about-slope:5%;height:320px}.about-home-label{font-size:.65rem;bottom:58px;left:14px}.about-home-wave{height:62px}.about-home-lead{margin-bottom:27px;font-size:1.04rem}.about-home-text{gap:0}.about-home-column p{margin-bottom:20px}.journey{padding:30px 0}.journey+.projects{padding-top:48px}.projects{padding-bottom:40px}.projects+.location{padding-top:44px}.journey-box{min-height:420px;padding:37px 26px 205px}.partner-sheep{width:200px;right:calc(50% - 100px)}.partner-logo-watermark{opacity:.055;width:255px;top:auto;bottom:26px;right:-34px;transform:rotate(6deg)}.partner-tag{white-space:normal;background:#031f50b8;border-radius:12px;width:min(230px,100% - 48px);max-width:none;padding:8px 12px;line-height:1.4;inset:auto auto 132px 50%;transform:translate(-50%)}.partner-tag:after{content:"";background:#031f50b8;border-bottom:1px solid #a6e8b24d;border-right:1px solid #a6e8b24d;width:14px;height:14px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.map-card{min-height:300px}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:24px 20px}.footer-main,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-nav{gap:14px 20px}}@media (width<=800px){.hero-mascot{width:205px;bottom:24px;right:8%}.hero-scene{aspect-ratio:1400/455;clip-path:none;background-image:none;background-position:100% 100%;background-repeat:no-repeat;background-size:100% 100%;width:min(70vw,420px);bottom:100px;right:0;-webkit-mask-image:linear-gradient(#000 0 73%,#000000f5 80%,#000000b3 89%,#0000 100%);mask-image:linear-gradient(#000 0 73%,#000000f5 80%,#000000b3 89%,#0000 100%)}body[data-time=sunset] .sky-light{top:64%;right:4%}.horizon-haze{background:linear-gradient(180deg,transparent 0,var(--horizon-color) 42%,#7ec0da24 78%,transparent 100%);height:calc(44% - 148px);top:56%}.sea-canvas{width:100%;height:148px;top:calc(100% - 148px);-webkit-mask-image:linear-gradient(#0000 0,#00000094 16px,#000 34px);mask-image:linear-gradient(#0000 0,#00000094 16px,#000 34px)}.water-reflection{z-index:5;clip-path:polygon(47% 0,53% 0,90% 100%,10% 100%);filter:blur(.15px);width:124px;height:108px;top:calc(100% - 120px)}.water-reflection:before,.water-reflection:after{filter:drop-shadow(0 0 1px var(--reflection))}body[data-time=sunset] .water-reflection{clip-path:polygon(72% 0,79% 0,96% 100%,7% 100%);filter:blur(.2px);opacity:.72;width:148px;height:82px;top:calc(100% - 140px);right:30%}body[data-time=sunset] .water-reflection:before,body[data-time=sunset] .water-reflection:after{filter:drop-shadow(0 0 1.5px #ffbe8438)}body[data-time=night] .water-reflection{opacity:.62;right:28%}.time-tester{bottom:14px;right:16px}}@media (width<=560px){.hero-mascot{width:188px;bottom:22px;right:4%}.hero-scene{width:70vw;bottom:114px}body[data-time=sunset] .sky-light{top:67%;right:3%}.horizon-haze{height:calc(44% - 150px)}.sea-canvas{width:100%;height:150px;top:calc(100% - 150px)}.time-toggle{width:46px;height:46px}.time-panel{bottom:56px}}@media (width<=800px){.logo-set{gap:16px;padding-right:16px}.logo-marquee{padding-inline:0;-webkit-mask-image:linear-gradient(90deg,#000 0 96%,#0000 100%);mask-image:linear-gradient(90deg,#000 0 96%,#0000 100%)}.client-logo{border-radius:12px;width:calc(50vw - 28px);height:76px;padding:11px 14px}.client-logo:before{inset:11px 14px}}@media (width<=560px){.services{padding-bottom:30px}.clients{padding:10px 0 34px}.clients+#agentur{padding-top:58px}.client-logo{height:64px}.brand-tagline{margin-left:7px;font-size:1.02rem}}.reveal-on-scroll{opacity:0;will-change:opacity,transform;transition:opacity .72s,transform .82s cubic-bezier(.22,1,.36,1);transform:translateY(38px)}.reveal-on-scroll.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-cloud,.star,.logo-track,.water-reflection:before,.water-reflection:after,.ai-engine-label:before,.ai-flow:after,.ai-stage-icon{animation:none!important}.btn,.service-card,.project-card,.desktop-nav,.time-panel,.time-tester,.scroll-top{transition:none}.reveal-on-scroll{opacity:1!important;transition:none!important;transform:none!important}}@media (width<=800px){.location-grid,.contact-grid{grid-template-columns:1fr}.location-copy{order:-1}.map-card{min-height:340px}.contact-grid{gap:30px}.contact-copy{max-width:560px;margin-inline:auto}.contact-dog{width:min(100%,540px);margin:0 auto -3px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand-column{grid-column:1/-1}}@media (width<=560px){.location .section-head,.contact .section-head{margin-bottom:28px}.location-card{grid-template-columns:42px 1fr;padding:18px 17px}.location-card svg{width:31px;height:31px}.map-card{border-width:5px;min-height:300px}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:22px 17px}.contact-copy{padding:20px 18px 18px}.contact-copy-text{padding:12px 4px 2px}.footer{text-align:center}.footer-main{grid-template-columns:1fr;justify-items:center;gap:30px}.footer-brand-column{grid-column:auto;justify-items:center;display:grid}.footer-contact,.footer-nav{justify-items:center}.footer-socials,.footer-legal{justify-content:center}.footer-bottom{flex-direction:column;align-items:center}.footer-grass{background-size:190px 62px;height:62px}}@media (width<=700px){.project-more{min-height:390px;padding:30px 24px 190px}.project-more:before{top:auto;bottom:-100px;right:-70px}.project-more-sheep{width:165px;max-height:178px;bottom:8px;right:calc(50% - 82px)}.project-more .btn{width:100%}}@media (width>=801px){.hero-scene{aspect-ratio:520/364;clip-path:none;background-image:url(/assets/hero-norderney-mobile-BOY6uxkh.webp);background-position:100% 100%;background-repeat:no-repeat;background-size:100% 100%;width:min(34vw,520px);bottom:calc(20.8% + 8px);right:-1vw}.sea-canvas{height:calc(20.8% + 24px);top:calc(79.2% - 24px)}.horizon-haze{height:calc(14.2% - 24px)}.water-reflection{height:calc(11.5% + 24px);top:calc(79.2% - 19px)}}@media (width<=800px){.hero-scene{aspect-ratio:520/364;background-image:url(/assets/hero-norderney-mobile-BOY6uxkh.webp);background-position:100% 100%;background-repeat:no-repeat;background-size:100% 100%;width:min(52vw,320px);bottom:132px;right:-12vw}.hero-mascot{transform-origin:bottom;left:6%;right:auto;transform:scaleX(-1)}}@media (width<=560px){.hero-scene{width:55vw;bottom:134px;right:-15vw}.hero-mascot{left:4%;right:auto}}@media (width>=801px){.hero-beach{background-position:100% 100%;background-repeat:no-repeat;background-size:100% 100%}}.contact-copy.contact-copy-photo{justify-content:flex-start;padding:0}.contact-copy-photo .contact-dog{filter:none;width:100%;max-width:none;height:auto;margin:0;display:block}.contact-copy-photo .contact-copy-text{padding:16px 28px 24px}@media (width<=560px){.contact-copy-photo .contact-copy-text{padding:14px 22px 20px}}.project-summary{gap:9px;margin-top:10px;display:grid}.project-summary strong{color:var(--ink)}.ai-flow.ai-examples{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ai-examples:before,.ai-examples:after{display:none}.ai-examples .ai-stage strong{overflow-wrap:anywhere;font-size:1rem}.ai-examples .ai-stage span{color:var(--text);font-size:.9rem;line-height:1.55}.contact-form-hint,.contact-next-step{color:#eef6ff;margin:12px 0;font-size:.9rem;line-height:1.6}.contact-next-step strong{color:var(--brand-green);display:block}@media (width<=620px){.ai-flow.ai-examples{grid-template-columns:1fr;gap:24px}.ai-examples .ai-stage{max-width:360px;margin-inline:auto}}.header-socials{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-socials .social-link{width:36px;height:36px}.desktop-nav{gap:24px}.contact-teams{border-bottom:1px solid #ffffff40;margin-bottom:24px;padding-bottom:20px}.contact-teams-link{color:#fff;border:1px solid #fff9;border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:46px;padding:10px 16px;font-weight:700;line-height:1.4;text-decoration:none;display:inline-flex}.contact-teams-link svg{--teams-letter:var(--brand-blue);flex-shrink:0;width:24px;height:24px}.contact-teams-link:hover{background:#ffffff1f}.contact-teams-link:focus-visible,.header-socials a:focus-visible,.footer-socials a:focus-visible{outline-offset:4px;outline:3px solid}.contact-teams p{margin:10px 0 0;font-size:.9rem}@media (width>=801px) and (width<=1100px){.header-inner{gap:14px}.desktop-nav{gap:12px}.desktop-nav .nav-link{font-size:.82rem}.btn-header{padding-inline:12px}.header-socials{gap:4px}.header-socials .social-link{width:32px;height:36px}}@media (width<=800px){.desktop-nav{gap:0;overflow-y:auto}.header-socials{gap:12px;margin-top:22px}.header-socials .social-link{width:44px;height:44px}}.contact-chat-links{flex-wrap:wrap;gap:10px;display:flex}.contact-teams .contact-chat-heading{margin:0 0 12px;font-size:1rem}@media (width>=801px) and (width<=1000px){.header-inner .brand-tagline{display:none}.desktop-nav{gap:10px}}@media (width<=560px){.contact-chat-links .contact-teams-link{width:100%}}.coastal-weather{z-index:9;width:min(1180px,100% - 40px);color:var(--ink);margin:22px auto 90px;position:relative}.coast-inner{border:1px solid var(--line);background:var(--card-bg);border-radius:14px;padding:18px;box-shadow:0 8px 24px #031f5014}.coastal-weather h2{margin:0 0 12px;font-size:1rem;line-height:1.4}.coastal-weather h2 span{font-weight:500}.coast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.coast-card{border:1px solid var(--line);border-radius:9px;flex-direction:column;gap:5px;min-width:0;padding:12px;display:flex}.coast-label{color:var(--brand-blue);font-size:.75rem;font-weight:700}.coast-card strong{font-size:1rem;line-height:1.35}.coast-card>span:not(.coast-label){font-size:.8rem;line-height:1.4}@media (width>=1640px){.coastal-weather{width:calc(50vw - 628px);max-width:170px;margin:0;position:absolute;top:114px;left:18px}.coast-grid{grid-template-columns:1fr}.coast-inner{padding:12px}.coastal-weather h2 span{display:block}.coast-card{padding:9px 10px}.coast-meta,.coast-meta span{display:block}}@media (width<=800px){.coast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coastal-weather{margin-top:18px;margin-bottom:85px}.coast-inner{padding:14px}.coast-card{padding:10px}.coast-card strong{font-size:.95rem}}.coast-weather-icon{width:32px;height:32px;color:var(--brand-blue)}.coastal-weather{max-width:540px;margin-left:max(20px,50vw - 590px)}.coast-inner{box-shadow:none;background:0 0;border:0;padding:0}.coast-card{background:0 0}.coast-card span:empty{display:none}@media (width>=1640px){.coastal-weather{max-width:170px;margin:0}.coast-inner{padding:0}}@media (width<=800px){.coastal-weather{max-width:none;margin-inline:auto}.coast-inner{padding:0}}@media (width>=1640px){body[data-time=night] .coastal-weather,body[data-time=night] .coastal-weather h2,body[data-time=night] .coast-label,body[data-time=night] .coast-weather-icon{color:#f4f8ff}body[data-time=night] .coast-card{border-color:#f4f8ff40}}.tide-level{margin-top:7px}.tide-level[hidden]{display:none}.tide-level meter{width:100%;height:12px;accent-color:var(--brand-blue);display:block}.tide-level meter::-webkit-meter-bar{background:#7896aa2e;border:0;border-radius:10px}.tide-level meter::-webkit-meter-optimum-value{background:var(--brand-blue);border-radius:10px}.tide-level meter::-moz-meter-bar{background:var(--brand-blue)}.tide-level-labels{justify-content:space-between;gap:6px;margin-top:4px;font-size:.75rem;display:flex}@media (width>=1640px){body[data-time=night] .tide-level meter{accent-color:var(--brand-green)}body[data-time=night] .tide-level meter::-webkit-meter-optimum-value{background:var(--brand-green)}body[data-time=night] .tide-level meter::-moz-meter-bar{background:var(--brand-green)}}.rain-control{border-top:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding-top:13px;font-size:.9rem;font-weight:600;display:flex}.rain-control input{width:22px;height:22px;accent-color:var(--brand-blue);cursor:pointer}.rain-control input:focus-visible{outline:2px solid var(--brand-blue);outline-offset:4px}.rain-test-hint{color:var(--text);margin:7px 0 0;font-size:.78rem;line-height:1.45}.hero-rain{z-index:7;pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 85%,#0000 100%);mask-image:linear-gradient(#000 0 85%,#0000 100%)}.rain-atmosphere{z-index:2;pointer-events:none;opacity:0;background:linear-gradient(110deg,#58778f08,#33567438);transition:opacity .8s;position:absolute;inset:0}.hero.is-raining .hero-rain,.hero.is-raining .rain-atmosphere{opacity:1}body .hero.is-raining .sky-light{opacity:.2}body .hero.is-raining .stars{opacity:.12}body .hero.is-raining .cloud-field{opacity:.42}body[data-time=night] .hero.is-raining .cloud-field{opacity:.2;filter:brightness(.6)saturate(.6)}body[data-time=night] .hero.is-raining .rain-atmosphere{background:linear-gradient(110deg,#0000,#08182e33)}@media (prefers-reduced-motion:reduce){.hero-rain,.rain-atmosphere{transition:none}}.wind-control{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.wind-control label{justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.9rem;font-weight:600;display:flex}.wind-control output{color:var(--green-dark);font-weight:500}.wind-control input{width:100%;accent-color:var(--brand-blue)}.mascot-wind-body{position:relative}.hero-mascot .mascot-coat-flap{object-fit:fill;visibility:hidden;transform-origin:68.33% 59.85%;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero.is-raining[data-wind="2"] .mascot-coat-flap{visibility:visible;animation:.7s ease-in-out infinite coat-flutter-strong}.hero.is-raining[data-wind="3"] .mascot-coat-flap{visibility:visible;transform-origin:62.73% 55.45%;animation:.42s ease-in-out infinite coat-flutter-storm}.hero.has-wind .hero-rain{opacity:1}.hero.weather-paused .mascot-wind-body,.hero.weather-paused .mascot-coat-flap{animation-play-state:paused}@keyframes coat-flutter-strong{0%,to{transform:skewY(0)}35%{transform:skewY(-1.4deg)}65%{transform:skewY(-.3deg)}82%{transform:skewY(-1deg)}}@keyframes coat-flutter-storm{0%,to{transform:skewY(-.3deg)}30%{transform:skewY(-3deg)}58%{transform:skewY(-.6deg)}78%{transform:skewY(-2.2deg)}}@media (prefers-reduced-motion:reduce){.hero .mascot-wind-body,.hero .mascot-coat-flap{animation:none!important}}.weather-raw-trigger{text-underline-offset:3px;margin-left:18px;text-decoration:underline}.weather-raw-dialog{color:#0a2f70;background:#f7fbfd;border:1px solid #cfdeeb;border-radius:14px;width:min(850px,100vw - 32px);max-height:85dvh;margin:auto;padding:24px;box-shadow:0 24px 80px #0014324d}.weather-raw-dialog[open]{flex-direction:column;gap:12px;display:flex}.weather-raw-dialog::backdrop{background:#02142ba6}.weather-raw-head{justify-content:space-between;align-items:center;gap:20px;display:flex}.weather-raw-head h2{margin:0;font-size:1.35rem}.weather-raw-close{color:#005b8a;cursor:pointer;background:#fff;border:1px solid #cfdeeb;border-radius:8px;flex-shrink:0;width:44px;height:44px;font-size:1.8rem}.weather-raw-dialog p{margin:0;font-size:.9rem;line-height:1.5}.weather-raw-json{overscroll-behavior:contain;color:#e5f3ff;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;background:#082640;border-radius:8px;min-height:100px;margin:0;padding:16px;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.weather-raw-close:focus-visible,.weather-raw-trigger:focus-visible,.weather-raw-json:focus-visible{outline-offset:3px;outline:3px solid #35834a}@media (width<=560px){.weather-raw-dialog{max-height:88dvh;padding:16px}.weather-raw-json{padding:12px}}@media (width<=800px){.hero-mascot{z-index:3;bottom:0}}.hero.is-gripping .mascot-wind-body{aspect-ratio:1}.hero.is-gripping .mascot-wind-body>img:first-child{object-fit:contain;width:100%;height:100%;display:block}@media (width<=800px){.hero.is-gripping .hero-mascot{transform:none}}@media (width>=801px){.hero.is-gripping .hero-mascot{bottom:calc(36px - clamp(17.7px,1.5552vw,23.85px))}}@media (width<=800px){.hero.is-gripping .hero-mascot{bottom:22px}}.hero-mascot .mascot-fur-flutter{object-fit:fill;visibility:hidden;pointer-events:none;transform-origin:62% 63%;clip-path:polygon(60% 49%,96% 49%,96% 75%,74% 79%,66% 70%);width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 59%,#000 73%);mask-image:linear-gradient(90deg,#0000 59%,#000 73%)}.hero:not(.is-raining)[data-wind="2"] .mascot-fur-flutter{visibility:visible;animation:.85s ease-in-out infinite fleece-breeze}.hero:not(.is-raining)[data-wind="3"] .mascot-fur-flutter{visibility:visible;clip-path:polygon(59% 49%,96% 49%,96% 72%,76% 77%,68% 67%);animation:.5s ease-in-out infinite fleece-gust}.hero.weather-paused .mascot-fur-flutter{animation-play-state:paused}@keyframes fleece-breeze{0%,to{transform:none}37%{transform:scaleX(1.012)skewY(-.4deg)}68%{transform:scaleX(1.004)skewY(.2deg)}}@keyframes fleece-gust{0%,to{transform:scaleX(1.004)}28%{transform:scaleX(1.035)skewY(-1.1deg)}54%{transform:scaleX(1.01)skewY(.25deg)}78%{transform:scaleX(1.025)skewY(-.7deg)}}@media (prefers-reduced-motion:reduce){.hero .mascot-fur-flutter{animation:none!important}}.time-panel{overscroll-behavior:contain;max-height:calc(100dvh - 155px);overflow-y:auto}.hero.atmosphere-ready .cloud-field{display:none}.live-cloud-field{z-index:4;pointer-events:none;background:rgba(70,96,119,var(--cloud-shade,0));position:absolute;inset:0;overflow:hidden}.live-weather-cloud{opacity:.55;filter:saturate(.45);height:auto;animation:240s linear infinite weather-cloud-drift;position:absolute}.live-weather-cloud[hidden]{display:none}body[data-time=night] .live-weather-cloud{filter:brightness(.5)saturate(.5);opacity:.45}body[data-time=sunset] .live-weather-cloud{filter:sepia(.2)saturate(.65)}@keyframes weather-cloud-drift{0%{transform:translateX(0) scaleX(var(--cloud-mirror,1))}to{transform:translateX(var(--cloud-travel,115vw)) scaleX(var(--cloud-mirror,1))}}.weather-atmosphere{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero.atmosphere-paused .live-weather-cloud{animation-play-state:paused}.mascot-wind-body{z-index:1}.hero-mascot .sheep-sunglasses,.hero-mascot .sheep-beanie{pointer-events:none;height:auto;display:none;position:absolute}.hero-mascot .sheep-sunglasses{z-index:4;width:31%;top:15%;left:26%}.hero.is-hot .sheep-sunglasses,.hero.has-snow .sheep-beanie{display:block}.hero.is-gripping .hero-mascot{z-index:3}.hero.is-gripping:after{bottom:-52px}.grip-front-hooves{z-index:6;pointer-events:none;object-fit:fill;clip-path:polygon(7% 80%,26% 80%,26% 100%,51% 100%,51% 79%,70% 79%,70% 100%,7% 100%);display:none;position:absolute}.hero.is-gripping .grip-front-hooves{display:block}.hero[data-wind="3"] .grip-front-hooves{clip-path:polygon(3% 80%,21% 80%,21% 100%,64% 100%,64% 79%,72% 79%,77% 86%,79% 94%,76% 97%,64% 97%,64% 100%,3% 100%)}body[data-time=night] .grip-front-hooves{filter:brightness(.58)saturate(.74)}body[data-time=sunset] .grip-front-hooves{filter:sepia(.18)brightness(.88)}body[data-time=dawn] .grip-front-hooves{filter:sepia(.08)saturate(.9)}@media (prefers-reduced-motion:reduce){.live-weather-cloud{animation:none!important}}.hero.has-snow .hero-scene{background-image:url(/assets/island-snow-ChWydhyl.webp)}.hero.has-snow .hero-beach{background-image:url(/assets/beach-snow-desktop-Bc0lJa9h.webp)}@media (width<=800px){.hero.has-snow .hero-beach{background-image:url(/assets/beach-snow-mobile-COVZq7l_.webp)}}.island-window-lights{z-index:4;pointer-events:none;opacity:0;object-fit:fill;transition:opacity 1s;position:absolute}body[data-time=night] .island-window-lights{opacity:.8}@media (prefers-reduced-motion:reduce){.island-window-lights{transition:none}}.island-window-lights img{object-fit:fill;width:100%;max-width:none;height:100%;transition:opacity 4s ease-in-out;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.island-window-lights img{transition:none}}body:not([data-time=night]) .hero.has-thunder .live-cloud-field{background:#1c2d4252}body:not([data-time=night]) .hero.has-thunder .live-weather-cloud{filter:brightness(.65)saturate(.4)}.live-cloud-field{transition:background-color 1.2s}@media (prefers-reduced-motion:reduce){.live-cloud-field{transition:none}}.hero-mascot .sheep-sunglasses{transform-origin:top;width:36%;top:14%;left:24%;transform:scaleY(1.4)}.hero.is-raining:not(.is-gripping) .sheep-sunglasses{top:21%;left:24%}.hero[data-wind="2"] .sheep-sunglasses{width:36%;top:24%;left:22%}.live-cloud-field{z-index:2}.hero[data-wind="3"] .sheep-sunglasses{width:36%;top:40%;left:15%}.hero-mascot .sheep-beanie{z-index:3;width:41%;top:16%;left:22%;transform:translateY(-100%)}.hero.is-raining:not(.is-gripping) .sheep-beanie{top:25%}.hero[data-wind="2"] .sheep-beanie{width:43%;top:27%;left:21%}.hero[data-wind="3"] .sheep-beanie{width:43%;top:42%;left:15%}.grip-front-hooves-wide{z-index:2;display:none}.grip-front-hooves-wide[data-wind="3"]{clip-path:polygon(3% 80%,21% 80%,21% 100%,64% 100%,64% 79%,72% 79%,77% 86%,79% 94%,76% 97%,64% 97%,64% 100%,3% 100%)}@media (width>=1200px){.grip-front-hooves-wide[data-active=true]{display:block}}.hero.is-raining .sheep-beanie{display:none}body:not([data-time=night]) .hero.has-thunder .hero-scene,body:not([data-time=night]) .hero.has-thunder .hero-beach{filter:brightness(.68)saturate(.75)}.coast-card{border-color:#7896b1}@media (width>=1640px){body[data-time=night] .coast-card{border-color:#9db6cf}}.time-tester[hidden]{display:none!important}.grip-front-hooves-wide{z-index:21}@media (width<=800px){.live-cloud-field{--cloud-travel:142vw}}@media (width>=801px) and (width<=1639px){.coastal-weather{max-width:1180px;margin:18px auto 78px}.coast-inner{grid-template-columns:minmax(140px,.65fr) minmax(0,2fr);align-items:center;gap:20px;padding:12px 0;display:grid}.coastal-weather h2{margin:0;font-size:.9rem}.coastal-weather h2 span{display:block}.coast-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:20px}.coast-card{border:0;border-left:1px solid #7896b1;border-radius:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;padding:0 0 0 20px;display:grid}.coast-card>.coast-label{grid-column:1/-1}.coast-card:first-child{grid-template-columns:32px auto minmax(0,1fr)}.coast-card:first-child>.coast-label{display:none}.coast-weather-icon{width:30px;height:30px}.coast-card [data-coast=weather-age]{grid-column:2/-1}.coast-card [data-coast=tide-age]{grid-column:1/-1}.coast-card [data-coast=rain]{overflow-wrap:anywhere}.tide-level{min-width:0;margin:0}.tide-level-labels{margin-top:0}}.metric .metric-herd-icon,.metric .metric-region-icon{width:46px;max-width:100%;height:40px}.metric .metric-region-icon{stroke-width:1.35px}.map-card{position:relative}.map-card [hidden]{display:none!important}.map-consent{min-height:inherit;isolation:isolate;background:#e1f0ef;align-items:flex-end;height:100%;display:flex;position:relative}.map-preview-image{z-index:-1;object-fit:fill;width:100%;height:100%;display:block;position:absolute;inset:0}.map-preview-consent{text-align:center;color:#10366c;background:#fffffff7;border:1px solid #b5cfdb;border-radius:12px;flex-direction:column;align-items:center;gap:8px;margin:170px 12px 24px;padding:12px 16px;display:flex;position:relative;box-shadow:0 4px 18px #031f321f}.map-preview-consent .btn{min-height:44px}.map-preview-consent p{margin:0;font-size:.8125rem;line-height:1.45}.map-preview-consent a{color:#005b8a;text-underline-offset:.15em;text-decoration:underline}#map-frame{position:absolute;inset:0}.map-revoke{z-index:1;border:1px solid var(--brand-blue);color:var(--brand-blue);font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:10px;position:absolute;bottom:12px;left:12px;right:12px}.hero-mascot .sheep-blink{z-index:2;pointer-events:none;opacity:0;width:100%;height:auto;transition:opacity 45ms ease-out;position:absolute;inset:0;-webkit-mask-image:radial-gradient(4.5% 6.4% at 35.4% 22%,#000 88%,#0000 100%),radial-gradient(4.5% 6.4% at 46.5% 22.5%,#000 88%,#0000 100%);mask-image:radial-gradient(4.5% 6.4% at 35.4% 22%,#000 88%,#0000 100%),radial-gradient(4.5% 6.4% at 46.5% 22.5%,#000 88%,#0000 100%)}.hero:not(.is-raining):not(.is-gripping):not(.is-hot) .sheep-blink.is-blinking{opacity:1}@media (prefers-reduced-motion:reduce){.hero-mascot .sheep-blink{display:none}}.hero-mascot .sheep-smile{z-index:2;pointer-events:none;opacity:0;width:100%;height:auto;transition:opacity .18s ease-in-out;position:absolute;inset:0;-webkit-mask-image:radial-gradient(9% 4% at 40% 47%,#000 85%,#0000 100%);mask-image:radial-gradient(9% 4% at 40% 47%,#000 85%,#0000 100%)}.hero:not(.is-raining):not(.is-gripping):not(.is-hot) .sheep-smile.is-smiling{opacity:1}@media (prefers-reduced-motion:reduce){.hero-mascot .sheep-smile{display:none}}.faq{background:var(--soft-bg);color:var(--text)}.faq-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(28px,5vw,76px);display:grid}.faq-intro>p:not(.eyebrow){max-width:38ch;margin:22px 0}.faq-mascot-note{align-items:center;gap:12px;margin:20px 0 12px;display:flex}.faq-mascot-note p{color:var(--ink);max-width:10ch;font-family:Caveat,cursive;font-size:1.6rem;line-height:1.25;transform:rotate(-4deg)}.faq-mascot-note img{object-fit:contain;width:112px;height:112px}.faq-contact,.faq-answer a{text-underline-offset:4px;color:var(--ink);font-weight:700}.faq-items{gap:12px;min-width:0;display:grid}.faq-items details{background:var(--card-bg);border:1px solid var(--line);border-radius:18px 18px 18px 5px;overflow:hidden;box-shadow:0 4px 14px #0d35690a}.faq-items details[open]{border-color:var(--brand-blue)}.faq-items summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;font-family:"Exo 2",Arial,sans-serif;font-size:1.0625rem;font-weight:700;line-height:1.4;list-style:none;display:flex}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary:after{content:"+";text-align:center;background:var(--brand-green);color:var(--brand-blue);border-radius:50%;flex:0 0 28px;font:700 24px/28px Arial,sans-serif}.faq-items details[open]>summary:after{content:"−"}.faq-items summary:focus-visible{outline:3px solid var(--brand-blue);outline-offset:-5px}.faq-answer{overflow-wrap:anywhere;padding:0 24px 24px;line-height:1.75}.faq-answer p{margin:0 0 12px}.faq-answer p:last-child{margin-bottom:0}@media (width<=800px){.faq-layout{grid-template-columns:1fr;gap:28px}.faq-mascot-note{margin:0}.faq-mascot-note img{width:84px;height:84px}.faq-items summary{gap:12px;padding:18px}.faq-answer{padding:0 18px 20px}}.hero-gulls{z-index:2;pointer-events:none;height:42%;position:absolute;inset:0 0 auto;overflow:hidden}.hero-gull{aspect-ratio:1;will-change:transform;pointer-events:none;position:absolute;top:0;left:0}.hero-gull-sprite{background-repeat:no-repeat;background-size:300% 100%;width:100%;height:100%;animation:3.5s step-end infinite gull-wingbeat}@keyframes gull-wingbeat{0%,40%{background-position:0 0}10%,30%,50%,to{background-position:50% 0}20%{background-position:100% 0}}body[data-time=night] .hero-gulls{display:none}body[data-time=sunset] .hero-gulls{filter:sepia(.16)brightness(.85)}@media (prefers-reduced-motion:reduce){.hero-gulls{display:none}}
