/* ── Eiker Golfsimulator ────────────────────────────────────────── */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  --ink:#0E1216;
  --ink-2:#161C22;
  --deep:#123647;
  --blue:#2C9CDA;
  --blue-2:#54B4E6;
  --blue-ink:#0F5F8C;
  --sand:#C98A3E;
  --forest:#123529;
  --sand-soft:#E9B979;
  --paper:#F5F3EF;
  --white:#fff;
  --text:#141A20;
  --muted:#5C6773;
  --muted-dark:#9BA9B6;
  --line:#E2DED7;
  --line-dark:rgba(255,255,255,.12);
  --radius:18px;
  --radius-lg:28px;
  --shadow:0 18px 50px -22px rgba(14,18,22,.35);
  --wrap:1180px;
  --display:"Outfit","Poppins","Helvetica Neue",Arial,sans-serif;
  --body:"Figtree","Helvetica Neue",Arial,sans-serif;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--body);
  color:var(--text);
  background:var(--paper);
  line-height:1.68;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}

h1,h2,h3,h4{font-family:var(--display);line-height:1.1;letter-spacing:-.022em;font-weight:700}
h1{font-size:clamp(2.4rem,5.6vw,3.9rem)}
h2{font-size:clamp(1.75rem,3.3vw,2.5rem)}
h3{font-size:clamp(1.08rem,1.6vw,1.22rem);line-height:1.3}
p{text-wrap:pretty}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px}
.narrow{max-width:720px}
.lead{font-size:1.06rem;color:var(--muted)}
.dark .lead{color:#B0BECA}

/* Markert ord, som med tusj */
/* tusjmarkering */
.marker{
  background-image:linear-gradient(180deg,rgba(201,138,62,.26) 0,rgba(201,138,62,.26) 100%);
  padding:.12em .22em;margin:0 -.06em;border-radius:2px;
}
.dark .marker{background-image:linear-gradient(180deg,rgba(233,185,121,.22) 0,rgba(233,185,121,.22) 100%)}

/* Håndtegnet strek under en overskrift */
.sketch{width:min(260px,58%);height:10px;margin-top:14px;color:var(--sand);overflow:visible}
.dark .sketch{color:var(--sand-soft)}

.label{
  font-family:var(--display);font-size:.78rem;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;color:var(--blue-ink);
  margin-bottom:14px;
}
.dark .label{color:var(--blue-2)}

/* ── Knapper ── */
.btn{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--display);font-weight:600;font-size:1rem;
  padding:14px 26px;border-radius:10px;
  transition:background .18s,box-shadow .18s,border-color .18s,color .18s;
  white-space:nowrap;
}
.btn-primary{background:var(--blue);color:#06202E}
.btn-primary:hover{background:var(--blue-2)}
.btn-ghost{border:1.5px solid var(--line-dark);color:#fff}
.btn-ghost:hover{border-color:var(--blue);background:rgba(44,156,218,.1)}
.btn-outline{border:1.5px solid #C9C3B8;color:var(--text)}
.btn-outline:hover{border-color:var(--ink);background:rgba(14,18,22,.04)}
.btn-sm{padding:10px 18px;font-size:.92rem;border-radius:8px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* Tekstlenke */
.tlink{color:var(--blue-ink);font-weight:600;border-bottom:1.5px solid rgba(15,95,140,.3)}
.tlink:hover{border-bottom-color:var(--blue-ink)}
.dark .tlink{color:var(--blue-2);border-bottom-color:rgba(84,180,230,.35)}

/* ── Header ── */
.site-header{
  position:sticky;top:0;z-index:60;
  background:rgba(14,18,22,.9);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-dark);
}
.site-header .bar{display:flex;align-items:center;gap:20px;height:72px}
.brand{display:flex;align-items:center;gap:11px;margin-right:auto}
.brand-mark{height:36px;display:grid;place-items:center;flex:none}
.brand-mark img{height:36px;width:auto;object-fit:contain}
.brand-text{font-family:var(--display);line-height:1;color:#fff}
.brand-text b{display:block;font-weight:800;font-size:1.02rem;letter-spacing:-.02em}
.brand-text span{display:block;font-size:.58rem;letter-spacing:.22em;color:var(--blue);font-weight:600;margin-top:3px}

.nav{display:flex;align-items:center;gap:2px}
.nav a{
  font-family:var(--display);font-weight:500;font-size:.95rem;color:#CBD5DD;
  padding:8px 14px;border-radius:8px;transition:color .18s,background .18s;
}
.nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.nav a.active{color:#fff;background:rgba(255,255,255,.07)}
.header-cta{margin-left:10px}
.burger{display:none;width:44px;height:44px;border-radius:10px;color:#fff;-webkit-tap-highlight-color:transparent}
.burger span{display:block;width:20px;height:2px;background:currentColor;margin:5px auto;border-radius:2px;transition:.22s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:900px){
  .burger{display:block}
  .header-cta{display:none}
  .nav{
    position:absolute;top:72px;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--ink);border-bottom:1px solid var(--line-dark);
    padding:10px 16px 22px;display:none;
  }
  .nav.open{display:flex}
  .nav.open .header-cta{display:inline-flex}
  .nav a{padding:13px 12px;font-size:1.05rem}
  .nav .btn{margin-top:12px;justify-content:center}
}

/* ── Mørke flater ── */
.dark{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.dark p{color:#B0BECA}
.wedge::before{
  content:"";position:absolute;inset:auto -10% -30% -10%;height:78%;
  background:var(--deep);clip-path:polygon(0 66%,100% 0,100% 100%,0 100%);opacity:.85;
}
.dark .wrap{position:relative;z-index:2}
.bg-white{background:var(--white)}
.green{background:var(--forest)}
.green p{color:#BFD2C6}
.green .checks li{border-bottom-color:rgba(255,255,255,.14)}
.green .checks li::before{background:var(--sand-soft)}
.green .panel{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14)}
.green .tlink{color:#CFE3D6;border-bottom-color:rgba(207,227,214,.4)}
.green .tlink:hover{color:#fff;border-bottom-color:#fff}

/* Pris i bedriftsseksjonen */
.amount-big{
  font-family:var(--display);font-weight:800;line-height:1;letter-spacing:-.03em;
  font-size:clamp(2.2rem,4.2vw,3.1rem);color:#fff;margin-top:20px;
}
.amount-big span{display:block;font-size:.96rem;font-weight:500;letter-spacing:0;margin-top:11px;color:#A6BCAF}
.fine{margin-top:26px;font-size:.92rem;line-height:1.62;color:#9DB5A7;max-width:58ch}
.stress{
  font-family:var(--display);font-weight:700;line-height:1.3;color:#fff;
  font-size:clamp(1.14rem,1.9vw,1.38rem);
}

/* ── Hero ── */
.hero{padding:clamp(58px,8vw,96px) 0 clamp(62px,8vw,100px)}
.hero-grid{display:grid;grid-template-columns:auto 1fr;gap:clamp(26px,4.5vw,56px);align-items:center}
.hero-logo{
  width:clamp(160px,20vw,240px);border-radius:clamp(18px,2.2vw,26px);
  background:#fff;flex:none;padding:clamp(14px,1.8vw,22px);
  box-shadow:0 26px 70px -32px rgba(0,0,0,.8);
}
.hero-logo img{width:100%;height:auto}
.hero h1{color:#fff;margin-bottom:18px}
.hero .lead{font-size:clamp(1.02rem,1.55vw,1.16rem);color:#BECAD6;max-width:50ch}
.hero-note{
  margin-top:34px;padding-top:20px;border-top:1px solid var(--line-dark);
  font-family:var(--display);font-size:.93rem;color:#8FA1AF;
}
@media(max-width:760px){
  .hero-grid{grid-template-columns:1fr}
  .hero-logo{width:124px;border-radius:20px}
}

/* ── Sidetopp ── */
.page-head{padding:clamp(50px,7vw,80px) 0 clamp(48px,7vw,74px)}
.page-head h1{color:#fff;max-width:18ch}
.page-head .lead{margin-top:16px;color:#BECAD6;max-width:56ch}

/* ── Seksjoner ── */
section{position:relative}
.pad{padding:clamp(58px,7.5vw,94px) 0}
.pad-sm{padding:clamp(44px,5.5vw,66px) 0}
.sec-head{max-width:62ch;margin-bottom:clamp(30px,4vw,46px)}
.sec-head .lead{margin-top:14px;max-width:58ch}

/* ── Nummerert framgangsmåte ── */
.how{margin-top:8px;max-width:900px}
.how li{
  display:grid;grid-template-columns:auto 1fr;gap:0 22px;
  padding:22px 0;border-top:1px solid var(--line);align-items:baseline;
}
.how li:last-child{border-bottom:1px solid var(--line)}
.how .n{font-family:var(--display);font-weight:700;font-size:1rem;color:var(--sand)}
.how h3{margin-bottom:5px}
.how p{color:var(--muted);max-width:62ch}
.dark .how li{border-color:var(--line-dark)}
.dark .how p{color:#A9B7C4}
@media(max-width:560px){.how li{grid-template-columns:1fr;gap:6px}}

/* ── Enkel liste i to spalter ── */
.plain-list{display:grid;grid-template-columns:1.12fr .88fr;gap:0 clamp(28px,5vw,64px);align-items:start}
.plain-list div{padding:17px 0;border-bottom:1px solid var(--line)}
.plain-list h3{margin-bottom:4px}
.plain-list p{color:var(--muted);font-size:.99rem}
.dark .plain-list div{border-color:var(--line-dark)}
.dark .plain-list p{color:#A9B7C4}
@media(max-width:740px){.plain-list{grid-template-columns:1fr}}

/* ── Kort (brukes sparsomt) ── */
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px}
.card h3{margin-bottom:8px}
.card p{color:var(--muted);font-size:.99rem}
.dark .card{background:var(--ink-2);border-color:var(--line-dark)}
.dark .card p{color:#A9B7C4}
@media(max-width:620px){.cards{grid-template-columns:1fr}}

/* ── Split ── */
.split{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,66px);align-items:start}
.split.center{align-items:center}
.split.rev .split-media{order:-1}
@media(max-width:880px){.split{grid-template-columns:1fr}.split.rev .split-media{order:0}}

.checks li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:1.01rem}
.checks li:last-child{border-bottom:0}
.checks li::before{content:"";flex:none;width:7px;height:7px;border-radius:2px;background:var(--sand);margin-top:11px}
.dark .checks li{border-color:var(--line-dark)}

.panel{background:var(--ink);color:#fff;border-radius:var(--radius);padding:clamp(26px,3.4vw,36px)}
.panel h3{color:#fff;margin-bottom:12px}
.panel p{color:#B0BECA}
.panel-light{background:var(--white);border:1px solid var(--line);color:var(--text)}
.panel-light h3{color:var(--text)}
.panel-light p{color:var(--muted)}

/* ── Fakta-liste ── */
.info-list div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.info-list div:last-child{border-bottom:0}
.info-list .k{font-family:var(--display);font-weight:600;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.info-list .v{font-size:1.03rem}
.dark .info-list div{border-color:var(--line-dark)}
.dark .info-list .k{color:var(--muted-dark)}
@media(max-width:560px){.info-list div{grid-template-columns:1fr;gap:3px}}

/* ── Tekst med bilde ut til kanten ── */
.feature{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding:0;--gutter:clamp(30px,4vw,56px)}
.feature-text{
  display:flex;align-items:center;justify-content:flex-end;
  padding:clamp(50px,6vw,84px) var(--gutter) clamp(50px,6vw,84px) 24px;
}
.feature-inner{width:100%;max-width:calc(var(--wrap) / 2 - 24px - var(--gutter))}
.feature-photo{position:relative;margin:0;min-height:clamp(300px,42vw,520px)}
.feature-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.feature-photo.soft{min-height:clamp(340px,46vw,560px)}
.feature-photo.soft img{
  -webkit-mask-image:
    linear-gradient(to right,rgba(0,0,0,0) 0%,rgba(0,0,0,.28) 14%,#000 48%),
    linear-gradient(to bottom,rgba(0,0,0,0) 0%,#000 17%,#000 83%,rgba(0,0,0,0) 100%);
  -webkit-mask-composite:source-in;
  mask-image:
    linear-gradient(to right,rgba(0,0,0,0) 0%,rgba(0,0,0,.28) 14%,#000 48%),
    linear-gradient(to bottom,rgba(0,0,0,0) 0%,#000 17%,#000 83%,rgba(0,0,0,0) 100%);
  mask-composite:intersect;
}
.feature.rev .feature-photo.soft img{
  -webkit-mask-image:
    linear-gradient(to left,rgba(0,0,0,0) 0%,rgba(0,0,0,.28) 14%,#000 48%),
    linear-gradient(to bottom,rgba(0,0,0,0) 0%,#000 17%,#000 83%,rgba(0,0,0,0) 100%);
  mask-image:
    linear-gradient(to left,rgba(0,0,0,0) 0%,rgba(0,0,0,.28) 14%,#000 48%),
    linear-gradient(to bottom,rgba(0,0,0,0) 0%,#000 17%,#000 83%,rgba(0,0,0,0) 100%);
}

.feature-photo figcaption{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:44px 22px 18px;color:#fff;font-size:.93rem;line-height:1.5;
  background:linear-gradient(to top,rgba(8,11,14,.88) 0%,rgba(8,11,14,.6) 45%,transparent 100%);
}
.feature.rev .feature-text{justify-content:flex-start;padding:clamp(50px,6vw,84px) 24px clamp(50px,6vw,84px) var(--gutter)}
.feature.rev .feature-photo{order:-1}
@media(max-width:820px){
  .feature{grid-template-columns:1fr}
  .feature-text{justify-content:flex-start;padding:clamp(44px,7vw,60px) 24px}
  .feature.rev .feature-text{justify-content:flex-start;padding:clamp(44px,7vw,60px) 24px}
  .feature.rev .feature-photo{order:0}
  .feature-photo{min-height:clamp(260px,58vw,380px)}
  .feature-photo.soft{min-height:clamp(280px,64vw,420px)}
  .feature-photo.soft img,.feature.rev .feature-photo.soft img{
    -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,#000 15%,#000 85%,rgba(0,0,0,0) 100%);
    mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,#000 15%,#000 85%,rgba(0,0,0,0) 100%);
  }
}

/* ── Bilde med bildetekst ── */
.figure{margin:0}
.figure img{width:100%;height:auto;display:block;border-radius:6px}
.figure figcaption{margin-top:12px;font-size:.94rem;color:var(--muted);line-height:1.55}
.dark .figure figcaption{color:#A9B7C4}
.dark .figure img{border-color:var(--line-dark)}

/* ── Kart ── */
.map{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#e8e5df;min-height:320px}
.map iframe{width:100%;height:100%;min-height:320px;border:0;display:block}

/* ── Gavekort ── */
.gift{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.gift span{font-family:var(--display);font-weight:600;padding:9px 17px;border-radius:8px;border:1.5px solid var(--line);background:var(--white)}

/* ── FAQ ── */
.faq{max-width:800px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{font-family:var(--display);font-weight:600;font-size:1.06rem;padding:18px 42px 18px 0;cursor:pointer;position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:400;color:var(--sand);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq p{color:var(--muted);padding:0 38px 20px 0}

/* ── Avsluttende stripe ── */
.cta-strip{padding:clamp(40px,5vw,60px) 0}
.cta-strip .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 32px}
.cta-strip h2{color:#fff;font-size:clamp(1.4rem,2.4vw,1.9rem);max-width:24ch}
.cta-strip p{margin-top:8px;max-width:44ch}

/* ── Medlemskort ── */
.plans{display:grid;grid-template-columns:1.22fr 1fr;gap:20px;align-items:stretch}
.plan{
  background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  padding:36px 34px;display:flex;flex-direction:column;
}
.plan.featured{background:var(--ink);border-color:var(--ink);color:#fff}
.plan .kicker{
  font-family:var(--display);font-size:.8rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--blue-ink);margin-bottom:18px;
}
.plan.featured .kicker{color:var(--blue-2)}
.plan .amount{
  font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:1;
  font-size:clamp(2.3rem,4.2vw,3.1rem);
}
.plan .period{margin-top:9px;font-size:1rem;color:var(--muted)}
.plan.featured .period{color:var(--muted-dark)}
.plan ul{margin-top:26px;padding-top:22px;border-top:1px solid var(--line);flex:1}
.plan.featured ul{border-top-color:var(--line-dark)}
.plan ul li{display:flex;gap:12px;padding:10px 0;font-size:1.01rem;line-height:1.5}
.plan ul li::before{content:"";flex:none;width:8px;height:8px;border-radius:2px;background:var(--sand);margin-top:9px}
.plan .fine-print{margin-top:22px;font-size:.88rem;line-height:1.55;color:var(--muted)}
.plan.featured .fine-print{color:var(--muted-dark)}
.plan .btn{margin-top:22px;justify-content:center;width:100%}
.plans-note{margin-top:20px;font-size:.95rem;color:var(--muted)}
@media(max-width:760px){.plans{grid-template-columns:1fr}}

.plain-list.one{grid-template-columns:1fr}
.plain-list.three{grid-template-columns:repeat(3,1fr);gap:0 clamp(24px,4vw,48px)}
@media(max-width:860px){.plain-list.three{grid-template-columns:1fr}}

/* ── Skjema ── */
.form{display:grid;gap:15px;max-width:540px}
.field{display:grid;gap:6px}
.field label{font-family:var(--display);font-weight:600;font-size:.9rem}
.field input,.field textarea,.field select{
  font:inherit;font-size:1rem;padding:12px 14px;border-radius:9px;
  border:1.5px solid var(--line);background:#fff;color:var(--text);
  transition:border-color .18s,box-shadow .18s;
}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(44,156,218,.16)}
.field textarea{min-height:104px;resize:vertical}
.form .btn{justify-self:start;margin-top:4px}

/* ── Footer ── */
.site-footer{background:var(--ink);color:#fff;padding:56px 0 30px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:36px}
.site-footer h4{font-family:var(--display);font-size:.76rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-dark);margin-bottom:14px}
.site-footer p,.site-footer li{color:#A9B7C4;font-size:.96rem}
.site-footer li{padding:4px 0}
.site-footer a:hover{color:#fff}
.foot-bottom{margin-top:42px;padding-top:20px;border-top:1px solid var(--line-dark);display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:.87rem;color:#7F8F9D}
@media(max-width:800px){.foot-grid{grid-template-columns:1fr;gap:28px}}

/* ── Innfading ── */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:12px;z-index:100;background:#fff;color:#000;padding:10px 16px;border-radius:8px}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}
