@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Montserrat:wght@600;700;800&display=swap');
:root{--bg:#041017;--panel:#081b24;--panel2:#0b222b;--text:#edf7f7;--muted:#a6babf;--mint:#91e8df;--line:#ffffff18;--dark:#06141b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.header{height:82px;position:fixed;z-index:50;top:0;left:0;right:0;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:#041017d9;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff0d}.brand{display:flex;flex-direction:column;font-family:Montserrat;letter-spacing:.15em}.brand span{font-weight:800;font-size:20px}.brand small{font:700 8px Inter;letter-spacing:.27em;color:var(--mint)}nav{display:flex;gap:25px;text-transform:uppercase;letter-spacing:.12em;font-size:10px}nav a:hover{color:var(--mint)}.header-tools{display:flex;gap:16px}.langs{display:flex;align-items:center;gap:4px;max-width:430px;flex-wrap:wrap}.langs button,.nav-toggle{background:none;border:0;color:#8ca0a4;cursor:pointer;font-size:10px}.langs button.active{color:var(--mint);font-weight:800}.langs button{padding:2px 3px}.nav-toggle{display:none;font-size:23px}.hero{height:92vh;min-height:650px;position:relative;display:flex;align-items:center;padding:120px 9vw;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,#041017 0%,#041017e3 40%,#04101755),url("images/nordlicht.jpg") center/cover}.glow{position:absolute;right:-10%;top:8%;width:65vw;height:45vw;border-radius:50%;background:radial-gradient(ellipse,#83f4e244,transparent 67%);filter:blur(35px)}.hero-copy{position:relative;z-index:2;max-width:820px}.eyebrow{color:var(--mint);font-size:10px;font-weight:800;letter-spacing:.28em}.hero h1,h2{font:800 clamp(44px,6.5vw,86px)/.98 Montserrat;letter-spacing:-.055em;margin:0}.hero h1 em,h2 em{color:var(--mint);font-style:normal}.hero-copy>p:not(.eyebrow){max-width:620px;color:#d2dfdf;font-size:18px;margin:26px 0}.buttons{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid transparent;padding:13px 20px;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}.btn.primary{background:var(--mint);color:#031117}.btn.glass{background:#ffffff09;border-color:#ffffff30}.full{width:100%}.hero-meta{position:absolute;left:9vw;bottom:28px;color:#8ba0a5;font-size:9px;letter-spacing:.22em}.searchbar{position:relative;z-index:10;max-width:1050px;margin:-42px auto 0;padding:16px;display:grid;grid-template-columns:1fr 1fr .9fr auto;gap:10px;background:#071820f2;border:1px solid #ffffff20;box-shadow:0 25px 70px #0007;backdrop-filter:blur(15px)}.searchbar div{padding:3px 10px;border-right:1px solid var(--line)}label{display:flex;flex-direction:column;gap:6px;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:#9eb2b5}input,select,textarea{background:#071b24;color:#fff;border:1px solid #ffffff18;padding:12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#91e8df80}.searchbar input,.searchbar select{border:0;padding:4px 0;background:transparent}.section{max-width:1250px;margin:auto;padding:115px 5vw}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:45px}.section-head>p{max-width:510px;color:var(--muted)}.section-head h2{font-size:clamp(39px,5vw,65px)}.stay-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.gallery{min-height:560px;display:grid;grid-template-columns:2fr 1fr;gap:12px}.gallery>img{width:100%;height:100%;object-fit:cover}.mini{display:grid;grid-template-rows:1fr 1fr;gap:12px}.mini img{width:100%;height:100%;object-fit:cover}.mini-placeholder{background:linear-gradient(145deg,#34575b,#071820);display:flex;align-items:center;justify-content:center;text-align:center;color:#91e8df;font:800 17px Montserrat;letter-spacing:.12em}.stay-info{background:#081d26;padding:42px;display:flex;flex-direction:column;justify-content:center}.rating{font-size:9px;letter-spacing:.18em;color:#8ea3a7}.rating span{color:var(--mint);font-size:14px}.stay-info h3{font:700 30px Montserrat;margin:15px 0}.stay-info>p{color:var(--muted)}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0;color:#bdd0d2;font-size:12px}.stay-price{display:flex;align-items:baseline;gap:7px;border-top:1px solid var(--line);padding-top:22px;margin-top:5px;margin-bottom:20px}.stay-price small{color:var(--muted)}.stay-price strong{font:800 38px Montserrat;color:var(--mint)}.stay-price span{color:var(--muted)}.feature-band{display:grid;grid-template-columns:repeat(4,1fr);background:#e8f0ef;color:#07151b}.feature-band div{padding:34px 4vw;border-right:1px solid #07151b22}.feature-band strong{display:block;font:700 16px Montserrat}.feature-band span{font-size:10px;color:#607276;text-transform:uppercase;letter-spacing:.12em}.tour-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.tour-grid article{background:#081c25;border:1px solid var(--line);overflow:hidden}.tour-grid article>img,.tour-art{width:100%;height:260px;object-fit:cover}.tour-art{background:radial-gradient(circle at 70% 30%,#8ef1e855,transparent 17%),linear-gradient(140deg,#3e5b60,#0c252d)}.tour-grid article>div{padding:25px}.tour-grid span{font-size:9px;color:var(--mint);letter-spacing:.2em}.tour-grid h3{font:700 25px Montserrat;margin:8px 0}.tour-grid p{color:var(--muted);min-height:52px}.tour-grid b{display:block;margin:15px 0;color:#dce9e9}.link{border:0;background:none;color:var(--mint);padding:0;font-weight:800;cursor:pointer}.booking-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;padding:115px max(5vw,calc((100vw - 1250px)/2));background:#071820}.booking-intro h2{font-size:clamp(42px,5vw,67px)}.booking-intro>p:not(.eyebrow){color:var(--muted);max-width:500px}.steps{display:flex;gap:25px;margin:35px 0}.steps span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8da1a5}.steps b{display:block;color:var(--mint);font:700 18px Montserrat}.secure{padding:15px;border:1px solid #91e8df2b;color:#b5c9cb;font-size:12px}.booking-wrap form{background:#06141b;padding:35px;display:grid;gap:15px;border:1px solid var(--line)}.form-title{font:700 25px Montserrat}.choice-tabs{display:flex;gap:7px}.choice{flex:1;background:#0b222b;color:#9eb2b5;border:1px solid var(--line);padding:11px;cursor:pointer}.choice.active{border-color:#91e8df77;color:var(--mint)}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.estimate{padding:17px;background:#0a222b;border:1px solid #91e8df30}.estimate span,.estimate small{display:block;color:#8ea4a8;font-size:10px}.estimate strong{display:block;color:var(--mint);font:800 32px Montserrat}.check{flex-direction:row;align-items:center;text-transform:none;letter-spacing:0}.check input{width:auto}.check a{color:var(--mint)}#formStatus{color:var(--mint);font-size:12px}.about{display:grid;grid-template-columns:1fr 1fr;background:#e8f0ef;color:#07151b}.about-photo{min-height:610px;background:linear-gradient(90deg,#0000,#0003),url("images/fjord.jpg") center/cover}.about-copy{padding:8vw;align-self:center}.about-copy .eyebrow{color:#237d77}.about-copy>p:not(.eyebrow){color:#566a6e;font-size:17px;max-width:550px}.about-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.about-points span{padding:7px 11px;border:1px solid #0b2b2f33;font-size:9px;text-transform:uppercase;letter-spacing:.15em}.contact{display:grid;grid-template-columns:.85fr 1.15fr;background:#071820}.contact>div{padding:85px 8vw}.contact h2{font-size:clamp(40px,5vw,60px)}.contact>div>a{display:block;color:#cde0e1;font:600 18px Montserrat;margin:7px 0}.contact p{color:var(--muted)}.contact .map{color:var(--mint);font:800 10px Inter;text-transform:uppercase;letter-spacing:.15em;margin-top:25px}.contact iframe{border:0;width:100%;min-height:480px;filter:saturate(.65) contrast(1.05)}footer{padding:30px 5vw;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;color:#809499;font-size:10px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a:hover{color:var(--mint)}.cookie{position:fixed;z-index:100;left:15px;right:15px;bottom:15px;max-width:900px;margin:auto;padding:18px;background:#06151ef7;border:1px solid #ffffff20;box-shadow:0 20px 70px #0009;backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:space-between;gap:20px}.cookie p{margin:4px 0 0;color:#a8babf;font-size:12px}.cookie button{padding:10px 14px;background:transparent;color:#fff;border:1px solid #ffffff25;cursor:pointer}.cookie .primary{background:var(--mint);color:#031117;border-color:transparent}@media(max-width:950px){nav{display:none;position:absolute;top:82px;left:0;right:0;background:#041017f7;padding:20px 7vw;flex-direction:column}.nav-toggle{display:block}.searchbar,.stay-grid,.booking-wrap,.contact{grid-template-columns:1fr}.searchbar{margin:-20px 7vw 0}.searchbar div{border-right:0;border-bottom:1px solid var(--line);padding:8px}.section{padding:85px 7vw}.section-head{display:block}.tour-grid{grid-template-columns:1fr}.gallery{min-height:500px}.about{grid-template-columns:1fr}.about-photo{min-height:400px}.feature-band{grid-template-columns:1fr 1fr}.contact iframe{min-height:400px}footer{flex-wrap:wrap}.cookie{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.hero{padding:110px 7vw}.hero h1{font-size:50px}.gallery{grid-template-columns:1fr;min-height:auto}.gallery>img{height:360px}.mini{grid-template-columns:1fr 1fr;grid-template-rows:180px}.stay-info{padding:28px}.amenities{grid-template-columns:1fr}.two{grid-template-columns:1fr}.feature-band{grid-template-columns:1fr}.booking-wrap form{padding:23px}.footer-links{width:100%}}

.langs{max-width:520px}.langs button{cursor:pointer;white-space:nowrap}

.cookie-banner[hidden],#cookie-banner[hidden]{display:none!important}
.cookie-settings{position:fixed;bottom:16px;left:16px;z-index:1000;background:rgba(4,16,23,.9);color:#fff;border:1px solid rgba(255,255,255,.25);padding:9px 12px;border-radius:999px;cursor:pointer}
#cookie{z-index:9999;pointer-events:auto}#cookie button{position:relative;z-index:10000;pointer-events:auto;cursor:pointer}.cookie-settings{z-index:10001;pointer-events:auto}

#availabilityBtn:disabled{opacity:.55;cursor:wait}#availabilityResult{min-height:1.4em;margin-top:10px;font-weight:700}.available{color:#78dcbf}.unavailable{color:#f57d7d}.error{color:#f5be64}
