/* UBRYDELIGT SIND — Shared Styles v1.0 */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#050505;--s1:#0a0a0a;--s2:#0f0f0f;--red:#c8303e;--red2:#a82532;--teal:#1fad9f;--amber:#d4935a;--white:#ede8e0;--cream:#a8a198;--muted:#5a5550;--faint:#1e1c1a;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',system-ui,sans-serif;--mono:'JetBrains Mono',monospace}
html{scroll-behavior:auto}
body{font-family:var(--sans);background:var(--bg);color:var(--cream);overflow-x:hidden;-webkit-font-smoothing:antialiased}
a,button{cursor:pointer}
::selection{background:var(--red);color:var(--white)}
img{display:block;width:100%;height:100%;object-fit:cover}

/* PROGRESS BAR */
#progress{position:fixed;top:0;left:0;height:2px;background:var(--red);z-index:10001;width:0}

/* CURSOR */
#cur{position:fixed;width:18px;height:18px;border:1.5px solid rgba(237,232,224,.4);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .3s,height .3s,border-color .3s,background .3s;mix-blend-mode:difference}
#cur.hover{width:56px;height:56px;background:rgba(237,232,224,.06);border-color:var(--red)}
#dot{position:fixed;width:4px;height:4px;background:var(--red);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}
@media(max-width:768px){#cur,#dot{display:none}}

/* NAV */
nav{position:fixed;top:0;left:0;width:100%;z-index:9998;padding:0 clamp(1.5rem,4vw,3.5rem);height:56px;display:flex;align-items:center;justify-content:space-between;transition:all .5s}
nav.solid{background:rgba(5,5,5,.9);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-bottom:1px solid var(--faint)}
.nav-brand{font-weight:700;font-size:.68rem;letter-spacing:.4em;text-transform:uppercase;color:var(--white);text-decoration:none}
.nav-right{display:flex;align-items:center;gap:clamp(1.2rem,2.5vw,2.8rem)}
.nav-link{font-size:.62rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--cream);opacity:.45;transition:.3s;position:relative;text-decoration:none}
.nav-link::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--red);transition:.3s}
.nav-link:hover{opacity:1;color:var(--white)}
.nav-link:hover::after{width:100%}
.nav-link.active{opacity:1;color:var(--white)}
.nav-link.active::after{width:100%}
.nav-cta{font-size:.6rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--bg);background:var(--white);padding:.55rem 1.6rem;transition:.3s;text-decoration:none}
.nav-cta:hover{background:var(--red);color:var(--white)}
@media(max-width:768px){.nav-link{display:none}}

/* MOBILE MENU */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:9999;padding:4px}
.hamburger span{width:22px;height:1.5px;background:var(--white);transition:.3s}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(4.5px,-4.5px)}
.mobile-menu{position:fixed;top:56px;left:0;width:100%;height:calc(100svh - 56px);background:rgba(5,5,5,.97);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);z-index:9997;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(1.5rem,4vw,2.5rem);transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .4s}
.mobile-menu.open{transform:translateY(0);opacity:1;pointer-events:all}
.mobile-menu a{font-family:var(--serif);font-size:clamp(1.8rem,5vw,2.5rem);font-weight:300;color:var(--cream);text-decoration:none;transition:.3s;opacity:.6}
.mobile-menu a:hover,.mobile-menu a.active{opacity:1;color:var(--white)}
.mobile-menu .mm-cta{font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--bg);background:var(--red);padding:.8rem 2.5rem;margin-top:1rem}
@media(max-width:768px){.hamburger{display:flex}}

/* BUTTONS */
.btn-m{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--sans);font-size:.68rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--bg);background:var(--white);padding:1rem 2.5rem;position:relative;overflow:hidden;transition:.4s;border:none;text-decoration:none}
.btn-m::before{content:'';position:absolute;inset:0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.btn-m:hover{color:var(--white)}.btn-m:hover::before{transform:scaleX(1)}
.btn-m span{position:relative;z-index:1}
.btn-g{font-size:.68rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--cream);border-bottom:1px solid var(--muted);padding-bottom:.25rem;transition:.3s;text-decoration:none;background:none;border-top:none;border-left:none;border-right:none}
.btn-g:hover{color:var(--white);border-color:var(--white)}

/* SHARED TYPOGRAPHY */
.ey{font-family:var(--mono);font-size:.52rem;letter-spacing:.5em;text-transform:uppercase;color:var(--red);margin-bottom:1.8rem}
.sh{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,5.5vw,5rem);line-height:1.02;color:var(--white)}
.sh em{font-weight:700;font-style:italic;color:var(--red)}
.sp{font-weight:300;color:var(--cream);line-height:1.85;font-size:.9rem;margin-top:1.5rem;max-width:480px}

/* SCROLL REVEAL */
[data-r]{opacity:0;transform:translateY(50px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
[data-r].in{opacity:1;transform:none}
[data-r][data-d="1"]{transition-delay:.1s}[data-r][data-d="2"]{transition-delay:.2s}[data-r][data-d="3"]{transition-delay:.3s}[data-r][data-d="4"]{transition-delay:.4s}

/* PARALLAX IMAGE */
.parimg{height:100svh;position:relative;overflow:hidden}
.parimg img{position:absolute;top:-15%;left:0;width:100%;height:130%;will-change:transform}
.parimg::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(5,5,5,.88))}
.parimg-text{position:absolute;bottom:0;left:0;right:0;padding:clamp(3rem,8vw,6rem) clamp(1.5rem,5vw,5rem);z-index:1}
.parimg-text h3{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4.5vw,4rem);color:var(--white);line-height:1.1;margin-bottom:.8rem}
.parimg-text h3 em{font-weight:700;font-style:italic}
.parimg-text p{font-size:.92rem;color:rgba(237,232,224,.5);font-weight:300;max-width:400px;line-height:1.75}

/* FOOTER */
footer{padding:clamp(3rem,6vw,5rem) clamp(1.5rem,5vw,5rem) 1.5rem;border-top:1px solid var(--faint)}
.fg{display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:clamp(2.5rem,5vw,4rem)}
.fb{font-weight:700;font-size:.65rem;letter-spacing:.35em;text-transform:uppercase;color:var(--white);margin-bottom:1rem}
.fd{font-size:.72rem;font-weight:300;color:var(--muted);line-height:1.8;max-width:260px}
footer h5{font-family:var(--mono);font-size:.45rem;letter-spacing:.4em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.fl{list-style:none}.fl li{margin-bottom:.45rem}
.fl a{font-size:.72rem;font-weight:300;color:var(--cream);opacity:.35;transition:.3s;text-decoration:none}
.fl a:hover{opacity:1;color:var(--red)}
.fbot{border-top:1px solid var(--faint);padding-top:1.5rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-size:.55rem;color:var(--muted)}
@media(max-width:768px){.fg{grid-template-columns:1fr}}
