*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}

/* HS Verk merki */
.hsv{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:999;display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px;border-radius:999px;background:rgba(8,14,40,.92);color:#F2F5FF;font:500 13px/1 "Inter",system-ui,sans-serif;box-shadow:0 14px 40px -12px rgba(0,0,0,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap}
.hsv svg{width:22px;height:14px;fill:#6E8BFF}
.hsv span{opacity:.75}
.hsv a{color:#fff;background:#1442F0;text-decoration:none;padding:9px 14px;border-radius:999px;font-weight:500}
@media (max-width:560px){.hsv span{display:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* ---------- animatiónir ---------- */
:root{--ease:cubic-bezier(.16,1,.3,1)}
.prog{position:fixed;left:0;top:0;right:0;height:3px;z-index:998;transform-origin:0 50%;transform:scaleX(0);background:var(--acc,#F0B46A)}
/* fortjald */
.curtain{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--curtain,#111);color:var(--curtain-ink,#fff);transition:transform 1.1s var(--ease) .1s;pointer-events:none}
.curtain b{font:600 clamp(34px,6vw,72px)/1 "Poppins",sans-serif;letter-spacing:-.05em;overflow:hidden;display:block}
.curtain b span{display:block;animation:cIn .8s var(--ease) both}
@keyframes cIn{from{transform:translateY(105%)}}
.in .curtain{transform:translateY(-101%)}
/* linjur í maskum */
.ml{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.mi{display:inline-block}
.js .mi{transform:translateY(108%) rotate(4deg);transform-origin:0 0;transition:transform 1.25s var(--ease);transition-delay:calc(.55s + var(--i)*.11s)}
.js.in .mi{transform:none}
/* bókstavir */
.lt{display:inline-block}
.js [data-letters] .lt{transform:translateY(110%);opacity:0;transition:transform 1s var(--ease),opacity .6s;transition-delay:calc(var(--i)*.045s)}
.js [data-letters].on .lt,.js.in .hero [data-letters] .lt{transform:none;opacity:1}
/* sjónligt við skrolling */
.js [data-r]{opacity:0;transform:translateY(46px);transition:opacity 1s var(--ease),transform 1.2s var(--ease)}
.js [data-r="l"]{transform:translateX(-60px)}.js [data-r="rr"]{transform:translateX(60px)}
.js [data-r="z"]{transform:scale(.92)}
.js [data-r].on{opacity:1;transform:none}
.js [data-stagger]>*{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease),transform 1.1s var(--ease),box-shadow .3s;transition-delay:var(--d,0s)}
.js [data-stagger].on>*{opacity:1;transform:none}
.js .fade-in{opacity:0;transform:translateY(20px);transition:opacity 1s var(--ease),transform 1.2s var(--ease);transition-delay:var(--fd,1s)}
.js.in .fade-in{opacity:1;transform:none}
[data-par]{transform:var(--p,none);will-change:transform}
[data-mouse]{translate:0;transform:var(--m,none);transition:transform .9s var(--ease)}
[data-tilt]{transform:perspective(900px) rotateX(var(--rx,0)) rotateY(var(--ry,0));transition:transform .5s var(--ease);transform-style:preserve-3d}
/* magnetiskir knøttar */
.btn,.mag{transition:transform .45s var(--ease),background .3s,color .3s,box-shadow .3s}
/* kursari */
.cur{position:fixed;left:0;top:0;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:1.5px solid currentColor;color:var(--ink,#111);pointer-events:none;z-index:997;opacity:0;transition:opacity .3s,width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),background .3s;mix-blend-mode:difference;border-color:#fff}
.cur.vis{opacity:1}
.cur.big{width:70px;height:70px;margin:-35px 0 0 -35px;background:#fff}
/* rennandi band */
.marq{overflow:hidden;white-space:nowrap;display:flex;user-select:none}
.marq>div{display:flex;flex:none;animation:marq var(--mt,32s) linear infinite}
.marq span{padding:0 .5em}
@keyframes marq{to{transform:translateX(-100%)}}
.marq:hover>div{animation-play-state:paused}
/* header */
[data-hide]{transition:transform .5s var(--ease),background .3s,box-shadow .3s}
[data-hide].up{transform:translateY(-100%)}
.still *{animation:none!important}
.still .curtain{display:none}
.js [data-stagger].on>[data-tilt]{transform:perspective(900px) rotateX(var(--rx,0)) rotateY(var(--ry,0))}
