:root{--gran:#1f3d2b;--gran-dyb:#142a1d;--gran-lys:#2f5a3f;--creme:#f7f1e5;--creme-2:#efe5d2;--guld:#d9a441;--guld-lys:#f3cf7a;--rod:#a8322d;--tekst:#22261f;--daempet:#5d6358;--radius:18px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-inter);background:var(--creme);color:var(--tekst);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}h1,h2,h3{font-family:var(--font-fraunces);letter-spacing:-.01em;line-height:1.1}a{color:inherit}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}header{z-index:50;transition:background .3s,box-shadow .3s;position:fixed;inset:0 0 auto}header.scrolled{backdrop-filter:blur(8px);background:#142a1deb;box-shadow:0 4px 20px #0003}.nav{justify-content:space-between;align-items:center;height:72px;display:flex}.logo{color:var(--creme);font-family:var(--font-fraunces);align-items:center;gap:10px;font-size:1.35rem;font-weight:800;text-decoration:none;display:flex}.logo svg{width:34px;height:34px}.logo span em{color:var(--guld-lys);font-style:normal}nav ul{gap:28px;list-style:none;display:flex}nav a{color:var(--creme);opacity:.85;font-size:.95rem;font-weight:500;text-decoration:none;transition:opacity .2s}nav a:hover{opacity:1}.nav-cta{background:var(--guld);border-radius:999px;padding:9px 18px;font-weight:600;color:var(--gran-dyb)!important;opacity:1!important}@media (width<=760px){nav li:not(:last-child){display:none}}.hero{background:radial-gradient(ellipse at 50% 120%, #d9a44140, transparent 60%), radial-gradient(ellipse at 15% 10%, var(--gran-lys), transparent 55%), var(--gran-dyb);min-height:100svh;color:var(--creme);text-align:center;place-items:center;padding:140px 0 120px;display:grid;position:relative;overflow:hidden}.garland{pointer-events:none;width:100%;height:120px;position:absolute;top:64px;left:0}.bulb{animation:2.4s ease-in-out infinite twinkle}.bulb:nth-of-type(3n){animation-delay:.8s}.bulb:nth-of-type(3n+1){animation-delay:1.6s}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.35}}.snow{pointer-events:none;position:absolute;inset:0}.flake{opacity:.7;background:#fff;border-radius:50%;animation:linear infinite fall;position:absolute;top:-10px}@keyframes fall{to{transform:translate3d(var(--drift), 110vh, 0)}}@media (prefers-reduced-motion:reduce){.flake,.bulb{animation:none}.flake{display:none}}.hero-inner{z-index:2;max-width:820px;position:relative}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--guld-lys);border:1px solid #f3cf7a66;border-radius:999px;margin-bottom:26px;padding:6px 14px;font-size:.8rem;display:inline-block}.hero h1{margin-bottom:22px;font-size:clamp(2.6rem,7vw,5.2rem);font-weight:800}.hero h1 em{color:var(--guld-lys);font-style:italic;font-weight:600}.hero p{opacity:.85;max-width:620px;margin:0 auto 36px;font-size:clamp(1.05rem,2vw,1.25rem)}.btns{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.btn{border-radius:999px;padding:15px 28px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn-guld{background:var(--guld);color:var(--gran-dyb);box-shadow:0 8px 30px #d9a44159}.btn-ghost{color:var(--creme);border:1.5px solid #f7f1e580}.hero-wave{z-index:3;width:100%;height:80px;position:absolute;bottom:-1px;left:0}section{padding:100px 0}.sec-head{text-align:center;max-width:640px;margin:0 auto 56px}.sec-head .tag{color:var(--rod);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:600}.sec-head h2{color:var(--gran);margin:10px 0 14px;font-size:clamp(2rem,4.5vw,3rem)}.sec-head p{color:var(--daempet)}.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;display:grid}.card{border-radius:var(--radius);background:#fff;padding:32px 26px;transition:transform .25s,box-shadow .25s;box-shadow:0 1px #0000000a,0 10px 30px #1f3d2b12}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #1f3d2b21}.icon{background:var(--creme-2);border-radius:14px;place-items:center;width:56px;height:56px;margin-bottom:20px;display:grid}.icon svg{width:30px;height:30px}.card h3{color:var(--gran);margin-bottom:8px;font-size:1.3rem}.card p{color:var(--daempet);font-size:.96rem}.banner{background:var(--gran);color:var(--creme);padding:70px 0;position:relative;overflow:hidden}.banner .wrap{text-align:center;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;display:grid}.banner strong{font-family:var(--font-fraunces);color:var(--guld-lys);font-size:2.6rem;line-height:1.1;display:block}.banner span{opacity:.8;font-size:.95rem}.om{grid-template-columns:1fr 1.1fr;align-items:center;gap:64px;display:grid}@media (width<=860px){.om{grid-template-columns:1fr;gap:40px}}.placeholder{aspect-ratio:4/5;background:repeating-linear-gradient(135deg, #ffffff0a 0 14px, transparent 14px 28px), linear-gradient(160deg, var(--gran-lys), var(--gran-dyb));color:#f7f1e5b3;text-align:center;border-radius:24px;place-items:center;font-size:.9rem;display:grid;position:relative;overflow:hidden}.placeholder:after{content:"";border:1.5px dashed #f3cf7a59;border-radius:16px;position:absolute;inset:14px}.om h2{color:var(--gran);margin:10px 0 20px;font-size:clamp(2rem,4.5vw,2.8rem)}.om p{color:var(--daempet);margin-bottom:16px;font-size:1.05rem}.om .tag{color:var(--rod);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:600}.signatur{font-family:var(--font-fraunces);color:var(--gran);margin-top:10px;font-size:1.5rem;font-style:italic}.proces{background:var(--creme-2)}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px;display:grid}.step{padding-top:64px;position:relative}.step:before{counter-increment:step;content:counter(step);background:var(--gran);width:46px;height:46px;color:var(--guld-lys);font-family:var(--font-fraunces);border-radius:50%;place-items:center;font-size:1.3rem;font-weight:800;display:grid;position:absolute;top:0;left:0}.step h3{color:var(--gran);margin-bottom:6px;font-size:1.25rem}.step p{color:var(--daempet);font-size:.96rem}.galleri{grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:14px;display:grid}.foto{background:var(--gran);cursor:zoom-in;border-radius:16px;display:block;position:relative;overflow:hidden;box-shadow:0 10px 30px #1f3d2b1f}.foto img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.foto:hover img{transform:scale(1.05)}.foto:after{content:"";opacity:0;background:linear-gradient(#0000 60%,#142a1d59);transition:opacity .3s;position:absolute;inset:0}.foto:hover:after{opacity:1}.galleri .tall{grid-row:span 2}.galleri .wide{grid-column:span 2}@media (width<=700px){.galleri{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.galleri .foto:nth-child(5){grid-column:span 2}}.lightbox{background:0 0;border:0;max-width:94vw;max-height:92vh;margin:auto;padding:0}.lightbox::backdrop{background:#0e1e14eb}.lightbox img{border-radius:12px;max-width:94vw;max-height:92vh;display:block}.lightbox button{color:var(--creme);cursor:pointer;background:0 0;border:0;font-size:2.4rem;line-height:1;position:fixed;top:16px;right:20px}.kontakt{background:var(--gran-dyb);color:var(--creme);text-align:center;position:relative;overflow:hidden}.kontakt:before{content:"";background:radial-gradient(circle at 50% 0,#d9a44138,#0000 60%);position:absolute;inset:0}.kontakt .wrap{position:relative}.kontakt h2{margin-bottom:16px;font-size:clamp(2.2rem,5vw,3.4rem)}.kontakt h2 em{color:var(--guld-lys)}.kontakt p{opacity:.8;max-width:560px;margin:0 auto 34px;font-size:1.08rem}.mail{font-family:var(--font-fraunces);color:var(--guld-lys);word-break:break-all;align-items:center;gap:12px;font-size:clamp(1.2rem,3.5vw,1.8rem);text-decoration:none;transition:color .2s;display:inline-flex}.mail:hover{color:var(--creme)}.kontakt-links{flex-direction:column;align-items:center;gap:22px;display:flex}.omraade{opacity:.6;margin-top:30px;font-size:.9rem}footer{color:#f7f1e599;background:#0e1e14;padding:28px 0;font-size:.88rem}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}footer a{text-decoration:none}footer a:hover{color:var(--guld-lys)}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.in{opacity:1;transform:none}
