:root{
  --bone:#F7F4ED;
  --bone-2:#EFEBE1;
  --ink:#1A1815;
  --ink-70:#4A453D;
  --ink-45:#6B6459;
  --rule:#DED8C9;
  --brass:#8A6E3F;
  --white:#FCFBF7;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
section,[id]{scroll-margin-top:88px}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bone);color:var(--ink);
  font-weight:300;line-height:1.62;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,.ser{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.005em}
a{color:inherit;text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
@media(min-width:768px){.wrap{padding:0 44px}}

/* eyebrow */
.eye{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);font-weight:400;
  display:flex;align-items:center;gap:12px;margin-bottom:22px}
.eye:before{content:"";width:26px;height:1px;background:var(--brass);display:block;flex:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--bone);
  border:1px solid var(--ink);padding:15px 30px;border-radius:2px;font-family:'Inter';font-size:13px;
  font-weight:400;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;
  transition:background .35s ease,color .35s ease;-webkit-tap-highlight-color:transparent}
@media(hover:hover){.btn:hover{background:transparent;color:var(--ink)}}
.btn.line{background:transparent;color:var(--ink);border-color:var(--rule)}
@media(hover:hover){.btn.line:hover{border-color:var(--ink);background:transparent;color:var(--ink)}}
.btn.pale{background:var(--bone);color:var(--ink);border-color:var(--bone)}
@media(hover:hover){.btn.pale:hover{background:transparent;color:var(--bone);border-color:var(--bone)}}
.btn.sm{padding:11px 22px;font-size:11.5px}
@media(max-width:420px){.hero-cta .btn{flex:1 1 100%}}

/* nav */
.nav{position:sticky;top:0;z-index:60;background:rgba(247,244,237,.9);backdrop-filter:blur(12px);
  border-bottom:1px solid transparent;transition:border-color .3s}
.nav.stuck{border-bottom-color:var(--rule)}
.nav .in{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{font-family:'Cormorant Garamond';font-size:23px;font-weight:500;letter-spacing:.01em}
.logo em{font-style:normal;color:var(--ink-45)}
.nlinks{display:none;gap:34px;font-size:13.5px;font-weight:300;color:var(--ink-45)}
@media(hover:hover){.nlinks a{transition:color .25s}.nlinks a:hover{color:var(--ink)}}
@media(min-width:920px){.nlinks{display:flex}}

/* hero */
.hero{padding:72px 0 0}
@media(min-width:768px){.hero{padding:104px 0 0}}
h1.disp{font-size:clamp(34px,6.4vw,60px);max-width:15ch;font-weight:300}
h1.disp em{font-style:italic;color:var(--brass)}
.lead{font-size:clamp(15.5px,2.4vw,18px);color:var(--ink-70);margin:26px 0 34px;max-width:46ch;font-weight:300}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap}

/* mock */
.mock{margin-top:60px;border:1px solid var(--rule);background:var(--white);border-radius:3px;overflow:hidden}
@media(min-width:768px){.mock{margin-top:84px}}
.mbar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--rule);background:var(--bone-2)}
.mdots{display:flex;gap:6px;flex:none}
.mdots i{width:8px;height:8px;border-radius:50%;background:#CFC8B7;display:block}
.murl{flex:1;display:flex;justify-content:center;min-width:0}
.murl span{font-size:12px;color:var(--ink-45);letter-spacing:.06em;display:flex;align-items:center;gap:8px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.murl svg{width:10px;height:10px;opacity:.4;flex:none}
.mbody{background:var(--ink);padding:38px 26px 0;overflow:hidden}
@media(min-width:880px){.mbody{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;padding:60px 52px 0;min-height:350px}}
.mbody .eye{color:#BFA576}.mbody .eye:before{background:#BFA576}
.mbody h2{color:var(--bone);font-size:clamp(24px,4.4vw,34px);max-width:14ch;font-weight:300}
.mbody p{color:#9A9285;font-size:14.5px;margin-top:16px;max-width:36ch;font-weight:300}
.stage{position:relative;height:220px;margin-top:34px}
@media(min-width:880px){.stage{height:300px;margin-top:0}}
.sp img{width:100%;height:auto;display:block}
.sp{position:absolute;border-radius:2px;overflow:hidden;box-shadow:0 22px 46px rgba(0,0,0,.42);
  will-change:transform;transition:transform .7s cubic-bezier(.22,.8,.2,1)}
.sp1{width:37%;left:32%;top:2%;z-index:3;transform:rotate(-3deg)}
.sp2{width:34%;left:3%;top:16%;z-index:2;transform:rotate(4deg)}
.sp3{width:36%;right:1%;top:24%;z-index:1;transform:rotate(-1deg)}

/* sections */
section{padding:78px 0}
@media(min-width:768px){section{padding:120px 0}}
.shead{max-width:58ch;margin-bottom:48px}
@media(min-width:768px){.shead{margin-bottom:68px}}
.shead h2{font-size:clamp(26px,4.6vw,42px);font-weight:300}
.shead p{font-size:16.5px;color:var(--ink-70);margin-top:18px;font-weight:300;max-width:52ch}

/* sequence */
.seq{position:relative;height:320vh;background:var(--ink)}
@media(max-width:767px){.seq{height:280vh}}
.seq-st{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.seq-h{text-align:center;padding:0 24px;margin-bottom:26px;position:relative;z-index:5}
.seq-h .eye{justify-content:center;color:#BFA576}.seq-h .eye:before{background:#BFA576}
.seq-h h2{color:var(--bone);font-size:clamp(25px,5vw,42px);max-width:17ch;margin:0 auto;font-weight:300}
.seq-cap{color:#9A9285;font-size:14.5px;margin-top:14px;min-height:3em;font-weight:300;max-width:46ch;margin-left:auto;margin-right:auto}
.canvas{position:relative;height:min(44vh,320px);max-width:760px;width:100%;margin:0 auto}
.chip{position:absolute;background:transparent;border:1px solid #3A352C;border-radius:2px;padding:9px 14px;
  font-size:12px;font-weight:300;color:#BDB5A6;white-space:nowrap;letter-spacing:.04em;
  will-change:transform,opacity}
@media(max-width:520px){.chip{padding:7px 10px;font-size:10.5px}}
.sheet{position:absolute;left:50%;top:50%;width:min(58%,272px);aspect-ratio:210/297;background:var(--white);
  border-radius:2px;transform:translate(-50%,-50%) scale(.9);opacity:0;
  box-shadow:0 34px 70px rgba(0,0,0,.5);overflow:hidden;will-change:transform,opacity}
.sheet img{width:100%;height:100%;object-fit:cover;object-position:top}
.seq-bar{position:absolute;left:50%;transform:translateX(-50%);bottom:max(26px,env(safe-area-inset-bottom));
  width:min(180px,50%);height:1px;background:#3A352C;z-index:6}
.seq-bar i{display:block;height:100%;width:0;background:#BFA576}

/* types — hairline rows, no cards */
.rows{border-top:1px solid var(--rule)}
.row{border-bottom:1px solid var(--rule);padding:34px 0;display:grid;grid-template-columns:1fr;gap:14px}
@media(min-width:860px){.row{grid-template-columns:.9fr 1.3fr .9fr;gap:40px;align-items:start;padding:44px 0}}
.row .rt{font-family:'Cormorant Garamond';font-size:26px;font-weight:400}
.row .rn{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);margin-bottom:8px}
.row p{color:var(--ink-70);font-size:15.5px;font-weight:300}
.row ul{list-style:none;font-size:13.5px;color:var(--ink-45)}
.row li{padding:5px 0;font-weight:300}
.row li:before{content:"—";color:var(--brass);margin-right:9px}

/* deliverables */
.deliv{display:grid;grid-template-columns:1fr;gap:34px}
@media(min-width:920px){.deliv{grid-template-columns:1.2fr .8fr;gap:60px;align-items:start}}
.dl{display:grid;grid-template-columns:1fr;border-top:1px solid var(--rule)}
@media(min-width:600px){.dl{grid-template-columns:1fr 1fr;column-gap:40px}}
.di{padding:17px 0;border-bottom:1px solid var(--rule)}
.di h4{font-size:14.5px;font-weight:500;margin-bottom:3px;letter-spacing:.01em}
.di p{font-size:13.5px;color:var(--ink-45);font-weight:300;line-height:1.5}
.panel{background:var(--ink);color:var(--bone);padding:38px 32px}
@media(min-width:768px){.panel{padding:46px 40px}}
.panel h3{color:var(--bone);font-size:25px;margin-bottom:16px;font-weight:300}
.panel p{color:#9A9285;font-size:14.5px;margin-bottom:14px;font-weight:300}
.panel .note{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#BFA576;
  border-top:1px solid #3A352C;padding-top:18px;margin-top:20px}

/* form */
.formsec{background:var(--bone-2)}
.fcard{background:var(--white);border:1px solid var(--rule);padding:28px;max-width:760px}
@media(min-width:768px){.fcard{padding:46px}}
.prog{display:flex;gap:0;margin-bottom:30px;border-bottom:1px solid var(--rule)}
.prog i{flex:1;height:1px;background:transparent;transition:background .4s;position:relative;top:1px}
.prog i.on{background:var(--brass)}
.fstep{display:none}
.fstep.active{display:block;animation:fin .5s cubic-bezier(.22,.8,.2,1)}
@keyframes fin{from{opacity:0}to{opacity:1}}
.fstep h3{font-size:25px;margin-bottom:8px;font-weight:300}
.fstep .sub{color:var(--ink-45);font-size:14.5px;margin-bottom:26px;font-weight:300}
.f{margin-bottom:20px}
.f label{display:block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-70);margin-bottom:9px}
.f .hint{letter-spacing:0;text-transform:none;color:var(--ink-45);font-size:12.5px}
.f input[type=text],.f input[type=email],.f input[type=url],.f textarea,.f select{
  width:100%;padding:13px 0;border:none;border-bottom:1px solid var(--rule);border-radius:0;
  font-family:'Inter';font-size:16px;font-weight:300;background:transparent;color:var(--ink);transition:border-color .3s}
.f input:focus,.f textarea:focus,.f select:focus{outline:none;border-bottom-color:var(--brass)}
.f textarea{min-height:80px;resize:vertical}
.f select{padding:13px 0}
.opts{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rule);border:1px solid var(--rule)}
@media(min-width:620px){.opts{grid-template-columns:repeat(3,1fr)}.opts.two{grid-template-columns:repeat(2,1fr)}}
.opt{padding:17px;cursor:pointer;background:var(--white);transition:background .25s;-webkit-tap-highlight-color:transparent}
@media(hover:hover){.opt:hover{background:var(--bone)}}
.opt.sel{background:var(--ink);color:var(--bone)}
.opt.sel p{color:#9A9285}
.opt h4{font-size:14px;font-weight:500;margin-bottom:3px}
.opt p{font-size:12.5px;color:var(--ink-45);font-weight:300}
.drop{border:1px dashed var(--rule);padding:22px;text-align:center;color:var(--ink-45);font-size:13.5px;
  background:transparent;transition:.25s;cursor:pointer;font-weight:300;display:block}
.drop input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0)}
.drop.har{border-style:solid;border-color:var(--brass);color:var(--ink)}
.drop .sub{display:block;font-size:11.5px;color:var(--ink-45);margin-top:5px}
@media(hover:hover){.drop:hover{border-color:var(--brass);color:var(--ink)}}
.drop b{color:var(--ink);font-weight:500}
.fnav{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:30px;padding-top:24px;border-top:1px solid var(--rule)}
.fnav .sl{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-45)}
@media(max-width:480px){.fnav .sl{display:none}}
.done{text-align:center;padding:24px 6px}
.done .ok{width:46px;height:46px;border:1px solid var(--brass);border-radius:50%;margin:0 auto 22px;
  display:flex;align-items:center;justify-content:center}
.done h3{font-size:27px;margin-bottom:12px;font-weight:300}
.done p{color:var(--ink-45);max-width:40ch;margin:0 auto 6px;font-size:14.5px;font-weight:300}

/* faq */
.faq-i{border-top:1px solid var(--rule)}
.faq-i:last-child{border-bottom:1px solid var(--rule)}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:24px 0;font-family:'Cormorant Garamond';
  font-size:clamp(18px,3.4vw,22px);font-weight:400;color:var(--ink);cursor:pointer;display:flex;
  justify-content:space-between;align-items:center;gap:20px;-webkit-tap-highlight-color:transparent}
.faq-q .pl{color:var(--brass);font-size:17px;flex:none;transition:transform .35s;font-family:'Inter';font-weight:300;line-height:1}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.22,.8,.2,1)}
.faq-a p{padding:0 0 24px;color:var(--ink-70);font-size:15px;max-width:64ch;font-weight:300}
.faq-i.open .pl{transform:rotate(45deg)}

/* final */
.final{background:var(--ink);color:var(--bone);padding:64px 26px;text-align:center}
@media(min-width:768px){.final{padding:96px 40px}}
.final .eye{justify-content:center;color:#BFA576}.final .eye:before{background:#BFA576}
.final h2{color:var(--bone);font-size:clamp(27px,4.8vw,42px);max-width:19ch;margin:0 auto 18px;font-weight:300}
.final p{color:#9A9285;font-size:16px;margin-bottom:32px;font-weight:300}

footer{padding:56px 0 46px;border-top:1px solid var(--rule)}
footer .in{display:grid;grid-template-columns:1fr;gap:30px;font-size:14px}
@media(min-width:700px){footer .in{grid-template-columns:2fr 1fr 1fr}}
footer a{color:var(--ink-45);transition:color .25s}
@media(hover:hover){footer a:hover{color:var(--ink)}}
footer .fb{font-family:'Cormorant Garamond';font-size:21px;font-weight:500;margin-bottom:12px}
footer h5{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);margin-bottom:12px;font-weight:400}
footer p{margin-bottom:6px;color:var(--ink-45);font-weight:300}


/* formatvelger */
.pick-lbl{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-45);margin-bottom:14px}
.tabs{display:grid;grid-template-columns:1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);margin-bottom:16px}
@media(min-width:720px){.tabs{grid-template-columns:repeat(3,1fr)}}
.tab{background:var(--white);border:none;padding:20px 22px;text-align:left;cursor:pointer;
  transition:background .25s,color .25s;-webkit-tap-highlight-color:transparent;font-family:'Inter'}
@media(hover:hover){.tab:hover{background:var(--bone)}}
.tab .tn{font-size:15px;font-weight:500;color:var(--ink);display:flex;align-items:center;gap:9px;margin-bottom:4px}
.tab .tn i{width:7px;height:7px;border:1px solid var(--ink-45);border-radius:50%;display:block;flex:none;transition:.25s}
.tab .td{font-size:12.5px;color:var(--ink-45);font-weight:300}
.tab.on{background:var(--ink)}
.tab.on .tn{color:var(--bone)}
.tab.on .tn i{background:var(--brass);border-color:var(--brass)}
.tab.on .td{color:#9A9285}
.pick-note{font-size:13px;color:var(--ink-45);font-weight:300;margin-bottom:30px;display:flex;gap:9px;align-items:flex-start}
.pick-note:before{content:"";width:14px;height:1px;background:var(--brass);margin-top:10px;flex:none}
.tpanel{display:none}
.tpanel.on{display:block;animation:tin .45s cubic-bezier(.22,.8,.2,1)}
@keyframes tin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.tpanel.on{animation:none}}
.tlede{font-size:15.5px;color:var(--ink-70);font-weight:300;max-width:56ch;margin:0 0 4px}
.tfoot{border-top:1px solid var(--rule);padding-top:22px;margin-top:4px;display:flex;
  justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.tfoot p{font-size:13.5px;color:var(--ink-45);font-weight:300;max-width:52ch}
.rv{opacity:0;transform:translateY(14px);transition:opacity .9s cubic-bezier(.22,.8,.2,1),transform .9s cubic-bezier(.22,.8,.2,1)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.sp{transition:none}}
/* arbeid / visning */
.work{display:grid;grid-template-columns:1fr;gap:26px}
@media(min-width:760px){.work{grid-template-columns:repeat(3,1fr);gap:28px}}
.wcard{display:block}
.wshot{background:var(--bone-2);border:1px solid var(--rule);padding:22px;display:flex;align-items:flex-end;
  justify-content:center;min-height:300px;overflow:hidden}
.wshot img{max-height:300px;width:auto;box-shadow:0 18px 40px -16px rgba(26,24,21,.42);border:1px solid rgba(0,0,0,.06)}
.wcard h3{font-size:20px;font-weight:400;margin:18px 0 6px}
.wcard .wl{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass)}
.wcard p{font-size:13.5px;color:var(--ink-45);font-weight:300;line-height:1.55}
.wnote{font-size:12.5px;color:var(--ink-45);font-weight:300;margin-top:26px;display:flex;gap:9px;align-items:flex-start}
.wnote:before{content:"";width:14px;height:1px;background:var(--brass);margin-top:9px;flex:none}
.duo{display:grid;grid-template-columns:1fr;gap:20px;align-items:center}
@media(min-width:760px){.duo{grid-template-columns:1fr 1fr;gap:34px}}
.duo .shot{background:var(--bone-2);border:1px solid var(--rule);padding:26px;display:flex;justify-content:center}
.duo .shot img{max-height:420px;width:auto;box-shadow:0 20px 44px -18px rgba(26,24,21,.45)}

/* stor-fil-opplasting */
.bigup{border:1px solid var(--rule);background:var(--bone);padding:20px;margin-top:4px}
.bigup h5{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:8px;font-weight:400}
.bigup p{font-size:13px;color:var(--ink-45);font-weight:300;margin-bottom:14px;line-height:1.55}
.bigup .row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.bigup .or{font-size:12px;color:var(--ink-45);font-weight:300}

/* ---- FOKUSMARKERING (tastatur) ---- */
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:2px}
.btn:focus-visible{outline-offset:4px}
.opt:focus-visible,.tab:focus-visible,.drop:focus-visible{outline:2px solid var(--brass);outline-offset:2px}
.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--ink);color:var(--bone);
  padding:12px 20px;font-size:14px;text-decoration:none}
.skip:focus{left:8px;top:8px}

/* ---- MOBILMENY ---- */
.burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;
  background:none;border:none;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}
@media(min-width:920px){.burger{display:none}}
.burger span{display:block;height:1px;background:var(--ink);transition:transform .3s,opacity .2s}
.burger span:nth-child(1){width:22px}.burger span:nth-child(2){width:22px}.burger span:nth-child(3){width:14px}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){width:22px;transform:translateY(-6px) rotate(-45deg)}
.mmeny{display:none;border-top:1px solid var(--rule);background:var(--bone)}
.mmeny.open{display:block}
@media(min-width:920px){.mmeny{display:none!important}}
.mmeny a{display:block;padding:16px 0;border-bottom:1px solid var(--rule);font-size:16px;color:var(--ink);font-weight:300}
.mmeny a:last-child{border-bottom:none}
.mmeny .wrap{padding-top:6px;padding-bottom:14px}

/* ---- PRIS ---- */
.pris{display:flex;align-items:baseline;gap:10px;margin:22px 0 0;flex-wrap:wrap}
.pris .fra{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-45)}
.pris .tall{font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;font-weight:400;color:var(--ink)}
.pris .mva{font-size:12.5px;color:var(--ink-45);font-weight:300}
.prisrad{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:26px 0;margin:34px 0}
.prisrad .grid3{display:grid;grid-template-columns:1fr;gap:22px}
@media(min-width:760px){.prisrad .grid3{grid-template-columns:repeat(3,1fr);gap:30px}}
.prisrad .p{border-left:1px solid var(--rule);padding-left:20px}
.prisrad .p:first-child{border-left:none;padding-left:0}
@media(max-width:759px){.prisrad .p{border-left:none;padding-left:0;border-top:1px solid var(--rule);padding-top:18px}
  .prisrad .p:first-child{border-top:none;padding-top:0}}
.prisrad .n{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass);margin-bottom:8px}
.prisrad .t{font-family:'Cormorant Garamond',Georgia,serif;font-size:29px;color:var(--ink);margin-bottom:5px}
.prisrad .d{font-size:13px;color:var(--ink-45);font-weight:300;line-height:1.5}

/* ---- SKJEMAFEIL ---- */
.f.feil input,.f.feil select,.f.feil textarea{border-bottom-color:#A8422F}
.feilmld{display:none;font-size:12.5px;color:#A8422F;margin-top:7px}
.f.feil .feilmld{display:block}
.pakrevd{color:var(--brass)}

/* ---- SVARTID ---- */
.svartid{font-size:12.5px;color:var(--ink-45);font-weight:300;margin-top:16px;display:flex;gap:9px;align-items:flex-start}
.svartid:before{content:"";width:14px;height:1px;background:var(--brass);margin-top:9px;flex:none}
