@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/cormorant-garamond-latin-wght-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:300 700;font-display:swap;src:url(/assets/fonts/cormorant-garamond-latin-wght-italic.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/jost-latin-wght-normal.woff2) format("woff2")}
/* Layout: Saras Rum som et roligt rum. Salvie fra skiltet, buede "døråbninger" til billeder, salvie-bakker nederst som på skiltet; én mørk salvie-sektion til Sara selv. Bevidst ét lyst tema, som skilt og visitkort. */
:root{
  --bg:#F4F5EF;
  --paper:#FBFBF7;
  --ink:#263226;
  --text:#4C584A;
  --sage:#7D8C6E;
  --sage-dk:#56664A;
  --line:#D6DCCB;
  --h1:#E8ECDF; --h2:#DEE4D2; --h3:#D2DAC3; --h4:#C5CFB3; --h5:#B7C3A3;
  --night:#263226; --night-text:#EAEEE6; --night-body:#D3DACB; --night-accent:#B8C79A; --night-line:#435342; --night-card:#2F3D2F;
  --gold:#9E7C4E; --lyng:#A57D93;
  --mark:#F3EAC4; --mark-line:#B9A55E;
  --display:"Cormorant Garamond","Cormorant",Georgia,"Times New Roman",serif;
  --body:"Jost","Avenir Next","Segoe UI",system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-weight:400;font-size:17px;line-height:1.68;-webkit-text-size-adjust:100%}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:20;background:var(--bg)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1080px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);font-weight:500;color:var(--ink);line-height:1.08;margin:0;text-wrap:balance;font-variant-numeric:lining-nums}
h1{font-size:clamp(2.6rem,6.4vw,4.5rem);font-weight:500}
h1 em,h2 em{font-style:italic;color:var(--sage-dk)}
h2{font-size:clamp(1.95rem,4.3vw,2.9rem)}
h3{font-size:1.6rem}
p{margin:0;text-wrap:pretty}
a{color:inherit}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--sage);outline-offset:3px;border-radius:4px}
.eyebrow{font-size:.76rem;font-weight:500;letter-spacing:.17em;text-transform:uppercase;color:var(--sage-dk)}
.bar{width:48px;height:5px;border-radius:3px;background:var(--sage)}
.nw{white-space:nowrap}
.sub{font-family:var(--display);font-style:italic;font-weight:500;font-size:clamp(1.4rem,2.7vw,1.85rem);color:var(--sage-dk);line-height:1.25}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--bg);padding:10px 16px;z-index:50}
.skip:focus{left:16px;top:16px}
mark.ph{background:var(--mark);color:var(--ink);border-bottom:1px dashed var(--mark-line);padding:0 .25em;border-radius:3px;font-style:normal}

.note-bar{background:var(--ink);color:var(--night-text);font-size:.84rem;text-align:center;padding-block:8px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.note-bar mark.ph{font-size:.8rem}

/* top */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:10px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}
.brand svg{width:50px;height:auto;color:var(--sage);flex:none}
.brand b{font-family:var(--display);font-weight:500;font-size:1.7rem;color:var(--ink);letter-spacing:.01em;white-space:nowrap}
.links{display:flex;align-items:center;gap:22px;font-size:.95rem}
.links a{text-decoration:none;color:var(--text)}
.links a:hover,.links a[aria-current="page"]{color:var(--ink)}
.links a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:6px}
.links .btn{white-space:nowrap}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;border:1px solid var(--ink);border-radius:999px;width:46px;height:40px;display:grid;place-items:center}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--h1)}
.burger,.burger::before,.burger::after{display:block;width:18px;height:2px;border-radius:2px;background:var(--ink);position:relative}
.burger::before,.burger::after{content:"";position:absolute;left:0}
.burger::before{top:-6px}.burger::after{top:6px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.menu .menu-list{position:absolute;right:0;top:calc(100% + 10px);background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:10px;display:grid;min-width:240px;box-shadow:0 18px 40px -20px rgba(38,50,38,.35)}
.menu .menu-list a{text-decoration:none;color:var(--ink);padding:10px 14px;border-radius:10px}
.menu .menu-list a:hover{background:var(--h1)}
.menu .menu-list .sep{height:1px;background:var(--line);margin:6px 10px}
@media (max-width:860px){.links .tl{display:none}.menu{display:block}.links{gap:10px}}
@media (max-width:520px){.lg{display:none}}
@media (max-width:420px){.brand{gap:8px}.brand b{font-size:1.4rem}.brand svg{width:40px}.links .btn{padding:9px 15px}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--bg)!important;text-decoration:none;padding:12px 22px;border-radius:999px;font-weight:500;font-size:.96rem;border:1px solid var(--ink);line-height:1.3;text-align:center;font-family:var(--body)}
.btn:hover{background:#344334}
.btn.line{background:transparent;color:var(--ink)!important}
.btn.line:hover{background:var(--h1)}
.btn.sm{padding:9px 18px;font-size:.9rem}
.ctas{display:flex;flex-wrap:wrap;gap:12px}

/* arches: "døråbninger" til billeder */
.arch{margin:0;max-width:100%;border-radius:999px 999px 20px 20px;overflow:hidden;position:relative}
.arch img{width:100%;height:100%;object-fit:cover}
.arch.empty{background:linear-gradient(170deg,var(--h1),var(--h3));border:1.5px dashed var(--sage);display:grid;place-items:center;text-align:center;padding:28px;color:var(--text);font-size:.9rem}
.arch.empty strong{display:block;font-family:var(--display);font-size:1.35rem;font-weight:500;color:var(--ink);margin-bottom:4px;line-height:1.2}
.r34{aspect-ratio:3/4}.r45{aspect-ratio:4/5}.r1{aspect-ratio:1/1}

/* hero */
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;padding-block:60px 40px}
.hero>*{min-width:0}
.hero .txt{display:grid;gap:18px}
.hero .lead{max-width:33em}
.who{font-family:var(--display);font-size:1.35rem;color:var(--text)}
.under{font-size:.92rem}
.hero .arch{width:100%;max-width:400px;justify-self:end}
@media (max-width:780px){.hero{grid-template-columns:1fr;padding-block:36px 24px;gap:32px}.hero .arch{max-width:320px;justify-self:center}}

.hills{display:block;width:100%;height:clamp(70px,10vw,140px);margin-top:40px}

section{padding-block:72px}
.head{display:grid;gap:14px;max-width:42em;margin-bottom:36px}

/* offers */
.offers{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}
.offer{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:12px;min-width:0}
.offer.main{background:var(--night);border-color:var(--night);color:var(--night-body)}
.offer.main h3{color:var(--night-text)}
.offer.main .eyebrow{color:var(--night-accent)}
.offer .meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:500}
.offer.main .meta{color:var(--night-text)}
.offer .acts{margin-top:auto;padding-top:8px;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
.offer.main .btn{background:var(--night-text);color:var(--ink)!important;border-color:var(--night-text)}
.offer.main .btn:hover{background:#fff}
.offer.main .more{color:var(--night-accent)}
.soon{display:inline-flex;align-self:flex-start;border:1px solid var(--sage);color:var(--sage-dk);border-radius:999px;padding:3px 12px;font-size:.8rem;font-weight:500;letter-spacing:.04em}
.more{font-size:.93rem;text-underline-offset:4px;color:var(--sage-dk)}
.physio{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:20px}
.physio p{max-width:46em}
.physio b{color:var(--ink);font-weight:500}
@media (max-width:820px){.offers{grid-template-columns:1fr}}

/* topics */
.topics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 48px;list-style:none;margin:0;padding:0;max-width:880px}
.topics li{border-top:1px solid var(--line);padding-block:14px;display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:baseline}
.topics li::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--sage);transform:translateY(-1px)}
@media (max-width:680px){.topics{grid-template-columns:1fr}}

/* steps */
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.split>*{min-width:0}
.steps{list-style:none;margin:0;padding:0;counter-reset:s}
.steps li{counter-increment:s;display:grid;grid-template-columns:46px 1fr;gap:12px;padding-block:18px;border-top:1px solid var(--line)}
.steps li:last-child{border-bottom:1px solid var(--line)}
.steps li::before{content:counter(s);font-family:var(--display);font-weight:500;font-size:1.9rem;color:var(--sage);line-height:1;font-variant-numeric:lining-nums}
.steps b{display:block;color:var(--ink);font-weight:500}
@media (max-width:780px){.split{grid-template-columns:1fr;gap:32px}}

/* points diagram list */
.points{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.points li{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:2px;min-width:0}
.points b{font-family:var(--display);font-size:1.2rem;font-weight:500;color:var(--ink);line-height:1.2}
.points span{font-size:.88rem}
@media (max-width:640px){.points{grid-template-columns:1fr 1fr}}

/* night */
.night{background:var(--night);color:var(--night-text)}
.night h2,.night h3{color:var(--night-text)}
.night .eyebrow{color:var(--night-accent)}
.night .bar{background:var(--night-accent)}
.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.story>*{min-width:0}
.story .arch.empty{background:linear-gradient(170deg,#354435,#4E5F49);border-color:var(--night-accent);color:var(--night-text)}
.story .arch.empty strong{color:var(--night-text)}
.story .arch{max-width:360px}
.story .text{display:grid;gap:18px}
.story .big{font-style:italic;font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1.15}
.story p{color:var(--night-body)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{border:1px solid var(--night-line);border-radius:999px;padding:5px 14px;font-size:.85rem;color:var(--night-text)}
.night a.txt{color:var(--night-accent);text-underline-offset:4px}
@media (max-width:780px){.story{grid-template-columns:1fr;gap:32px}.story .arch{max-width:280px}}

/* price rows */
.prices{border-top:1px solid var(--ink);max-width:760px}
.prow{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:baseline;padding-block:18px;border-bottom:1px solid var(--line)}
.prow h3{font-size:1.45rem}
.prow p{font-size:.95rem;margin-top:2px}
.prow .price{font-family:var(--display);font-size:1.55rem;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}
.small{font-size:.92rem}

/* faq */
.faq{display:grid;max-width:820px;border-top:1px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding-block:18px;font-family:var(--display);font-weight:500;font-size:1.38rem;color:var(--ink);line-height:1.25}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--body);font-weight:300;font-size:1.5rem;color:var(--sage);line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details>div{padding:0 0 20px;max-width:40em;display:grid;gap:10px}

/* neighbours */
.neighbours{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nb{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:28px;display:grid;grid-template-columns:84px 1fr;gap:20px;align-items:start;min-width:0}
.nb>*{min-width:0}
.nb .logo{width:84px;height:84px;display:grid;place-items:center}
.nb .logo img{max-height:84px;width:auto}
.nb .txt{display:grid;gap:8px}
.nb .eyebrow{color:var(--sage-dk)}
.nb a.go{color:var(--ink);font-weight:500;text-underline-offset:4px}
@media (max-width:820px){.neighbours{grid-template-columns:1fr}}
@media (max-width:420px){.nb{grid-template-columns:1fr}.nb .logo{justify-content:start}}

/* close / contact */
.close .inner{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.close .inner>*{min-width:0}
.close .lead{margin-top:14px;max-width:30em}
.close .ctas{margin-top:26px}
.info{display:grid;gap:18px;background:var(--paper);border-radius:22px;padding:28px;border:1px solid var(--h3)}
.info .lbl{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-dk);font-weight:500}
.info .val{font-family:var(--display);font-size:1.55rem;font-weight:500;color:var(--ink);line-height:1.2;overflow-wrap:anywhere;font-variant-numeric:lining-nums}
.info small{display:block;font-size:.9rem;color:var(--text);margin-top:4px}
.info .row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.copy,.mini{background:transparent;border:1px solid var(--sage);border-radius:999px;padding:5px 13px;font:inherit;font-size:.82rem;color:var(--ink);cursor:pointer;text-decoration:none;line-height:1.4}
.mini:hover,.copy:hover{background:var(--h1)}
@media (max-width:780px){.close .inner{grid-template-columns:1fr}}

/* subpages */
.crumbs{font-size:.88rem;padding-top:26px}
.crumbs a{color:var(--sage-dk);text-underline-offset:3px}
.subhero{display:grid;grid-template-columns:1.2fr .8fr;gap:52px;align-items:center;padding-block:28px 12px}
.subhero>*{min-width:0}
.subhero .txt{display:grid;gap:16px}
.subhero .ctas{margin-top:8px}
.subhero .arch{max-width:320px;justify-self:end;width:100%}
.subhero.solo{grid-template-columns:1fr;max-width:46em}
@media (max-width:780px){.subhero{grid-template-columns:1fr;gap:28px}.subhero .arch{justify-self:start;max-width:260px}}
.body2{display:grid;grid-template-columns:1.3fr .7fr;gap:56px;align-items:start}
.body2>*{min-width:0}
.prose{display:grid;gap:18px;max-width:38em}
.prose h2{font-size:clamp(1.75rem,3.4vw,2.2rem);margin-top:14px}
.prose h3{font-size:1.4rem;margin-top:6px}
.prose ul,.prose ol{margin:0;padding-left:1.15em;display:grid;gap:6px}
.prose li::marker{color:var(--sage)}
.prose a{color:var(--sage-dk);text-underline-offset:3px}
.prose .steps,.prose .points{padding-left:0}
.box{background:var(--h1);border:1px solid var(--h3);border-radius:16px;padding:20px 22px;display:grid;gap:8px}
.box b{color:var(--ink);font-weight:500}
.quote{font-family:var(--display);font-style:italic;font-size:1.6rem;line-height:1.3;color:var(--ink);margin:0}
.night .quote{color:var(--night-text)}
.aside{position:sticky;top:96px;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:26px;display:grid;gap:14px}
.aside .row{display:flex;justify-content:space-between;gap:16px;padding-block:10px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.aside .row b{color:var(--ink);font-weight:500;white-space:nowrap}
.aside .note{font-size:.88rem}
@media (max-width:860px){.body2{grid-template-columns:1fr}.aside{position:static}}

/* footer */
footer.foot{background:var(--night);color:var(--night-body);font-size:.92rem}
.fgrid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;padding-block:48px 28px}
.fgrid>*{min-width:0}
.fgrid .fh{font-family:var(--display);font-size:1.3rem;font-weight:500;color:var(--night-text);margin-bottom:12px}
.fgrid ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fgrid a{color:var(--night-text);text-underline-offset:3px;text-decoration-color:var(--night-line)}
.fbrand svg{width:76px;color:var(--night-accent);margin-bottom:12px}
.fbrand p{max-width:22em}
.fbottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-block:18px 26px;border-top:1px solid var(--night-line);font-size:.86rem}
.fbottom nav{display:flex;flex-wrap:wrap;gap:16px}
.fbottom a{color:var(--night-text);text-underline-offset:3px}
@media (max-width:860px){.fgrid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.fgrid{grid-template-columns:1fr}}

.nf{padding-block:80px;display:grid;gap:18px;max-width:40em}
