/* ==========================================================================
   KropsRespons — stilark
   Farvetema: Hav   ·   Skrift: Cormorant Garamond + Mulish (ligger i /fonts)
   Alle farver står i :root. Vil du justere en farve, gør det dér — så
   ændrer den sig overalt på siden.
   ========================================================================== */

@font-face{
  font-family:"Cormorant Garamond";
  src:url("fonts/cormorant-garamond-latin-wght-normal.woff2") format("woff2");
  font-weight:300 700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"Cormorant Garamond";
  src:url("fonts/cormorant-garamond-latin-wght-italic.woff2") format("woff2");
  font-weight:300 700;font-style:italic;font-display:swap;
}
@font-face{
  font-family:"Mulish";
  src:url("fonts/mulish-latin-wght-normal.woff2") format("woff2");
  font-weight:200 1000;font-style:normal;font-display:swap;
}

:root{
  /* valgt farvetema — Hav: skum, havgrøn, dyb hav og messing fra klangskålen */
  --bg:        #F3F1EB;   /* baggrund, skum/sand */
  --ink:       #1C2B2E;   /* tekst */
  --primaer:   #1E5B60;   /* havgrøn — knapper, overskrifter, links */
  --accent:    #B9853F;   /* messing — linjer og detaljer */

  /* afledte toner */
  --bg-dyb:    #BED2CB;   /* lagune */
  --bg-kort:   #FAFAF7;
  --daempet:   #52656A;
  --linje:     #CBD7D3;
  --primaer-m: #134145;
  --felt:      #FFFFFD;
  --moerk:     #133235;   /* dyb hav */
  --moerk-2:   #0D2426;
  --guld-lys:  #DDB676;

  --maks:      1160px;
  --maks-tekst: 64ch;

  --overskrift: "Cormorant Garamond", Garamond, Georgia, serif;
  --broed: "Mulish", -apple-system, "Segoe UI", sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--broed);
  font-size:17px;
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;height:auto;display:block}

.ramme{max-width:var(--maks);margin:0 auto;padding:0 28px}
.smal{max-width:var(--maks-tekst)}

.spring{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:100}
.spring:focus{left:12px;top:12px}

/* ---------- skrift ---------- */

h1,h2,h3,h4{
  font-family:var(--overskrift);
  font-weight:500;
  letter-spacing:-.005em;
  line-height:1.1;
  margin:0 0 .55em;
  color:var(--ink);
}
h1{font-size:clamp(2.6rem,5.4vw,4.3rem)}
h2{font-size:clamp(2.05rem,3.6vw,2.9rem)}
h3{font-size:1.55rem;font-weight:600;letter-spacing:0}
.h3-stor{font-size:clamp(1.7rem,2.6vw,2.1rem)}

p{margin:0 0 1.1em;max-width:var(--maks-tekst)}
p:last-child{margin-bottom:0}
ul{max-width:var(--maks-tekst)}

a{color:var(--primaer);text-underline-offset:3px}
a:hover{color:var(--primaer-m)}
:focus-visible{outline:2px solid var(--primaer);outline-offset:3px}

.kicker{
  font-family:var(--broed);
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--primaer);
  margin:0 0 16px;
}

.manchet{
  font-size:1.2rem;
  line-height:1.6;
  color:var(--daempet);
  max-width:54ch;
}

.mere{margin-top:28px}
.mere a{
  font-weight:700;text-decoration:none;
  border-bottom:1.5px solid var(--accent);padding-bottom:2px;
}
.mere a::after{content:" →"}

.broed{margin-top:28px}

/* ---------- messingringen: klangskålen set fra oven — sidens gennemgående motiv ---------- */

.ring{color:var(--accent)}
.ring-lille{display:block;width:44px;height:44px;margin-bottom:22px}

/* ---------- navigation ---------- */

.top{
  position:sticky;top:0;z-index:50;
  background:rgba(243,241,235,.94);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--linje);
}
.top-in{
  max-width:var(--maks);margin:0 auto;padding:12px 28px;
  display:flex;align-items:center;gap:24px;
}
.logo{
  text-decoration:none;color:var(--ink);
  display:flex;align-items:center;gap:12px;margin-right:auto;
}
.logo img{width:42px;height:42px;border-radius:50%}
.logo span{display:flex;flex-direction:column;line-height:1.15}
.logo strong{font-family:var(--overskrift);font-size:1.5rem;font-weight:600;letter-spacing:0}
.logo small{font-family:var(--overskrift);font-style:italic;font-size:.98rem;color:var(--daempet)}

.menu{display:flex;gap:22px;align-items:center}
.menu a{
  font-size:.95rem;text-decoration:none;color:var(--daempet);
  padding:4px 0;border-bottom:1.5px solid transparent;
}
.menu a:hover{color:var(--ink)}
.menu a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--accent)}
.menu a.menu-book{
  background:var(--primaer);color:#fff;border:0;border-radius:999px;
  padding:9px 18px;font-weight:700;font-size:.9rem;
}
.menu a.menu-book:hover{background:var(--primaer-m);color:#fff}

.menu-knap{
  display:none;background:none;border:1px solid var(--linje);border-radius:999px;
  padding:7px 16px;font:inherit;font-size:.9rem;cursor:pointer;color:var(--ink);
}

/* ---------- knapper ---------- */

.knap{
  display:inline-block;background:var(--primaer);color:#fff;
  font-family:var(--broed);font-size:1rem;font-weight:700;
  text-decoration:none;padding:14px 28px;border-radius:999px;
  border:1.5px solid var(--primaer);transition:background .18s,color .18s;
}
.knap:hover{background:var(--primaer-m);border-color:var(--primaer-m);color:#fff}
.knap-let{background:transparent;color:var(--primaer)}
.knap-let:hover{background:var(--primaer);border-color:var(--primaer);color:#fff}
.knap-guld{background:var(--accent);border-color:var(--accent);color:var(--moerk-2)}
.knap-guld:hover{background:var(--guld-lys);border-color:var(--guld-lys);color:var(--moerk-2)}

/* ---------- hero ---------- */

.hero-in{display:grid;gap:56px;align-items:center}
.hero h1{max-width:16ch}
.hero .manchet{margin-top:6px}
.hero-cta{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}


/* ---------- sektioner ---------- */

section{padding:92px 0}
section.tone{background:var(--bg-dyb)}
section.moerk{background:var(--moerk);color:#e3ecea}
section.moerk h2{color:#f7f5ef}
section.moerk .kicker{color:var(--guld-lys)}
section.moerk .manchet{color:rgba(227,236,234,.84)}

.hoved{margin-bottom:46px}
.cta-knap{margin-top:30px}

/* ---------- citat over bredt billede ---------- */

.citat-baand{
  position:relative;padding:150px 0;text-align:center;
  background-color:var(--moerk);background-size:cover;background-position:center;
}
.citat-baand::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(13,36,38,.55),rgba(13,36,38,.68));
}
.citat-baand .ramme{position:relative}
.citat-baand p{
  font-family:var(--overskrift);font-weight:500;font-style:italic;
  font-size:clamp(2rem,4.2vw,3.1rem);
  line-height:1.28;letter-spacing:-.01em;
  max-width:24ch;margin:0 auto;color:#f7f5ef;
}
.citat-baand p::before,.citat-baand p::after{color:var(--guld-lys)}
.citat-baand p::before{content:"“"}
.citat-baand p::after{content:"”"}

/* ---------- kort ---------- */

.kort-raekke{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}
.kort{
  background:var(--bg-kort);padding:36px 32px 38px;border-radius:14px;
  border-top:3px solid var(--accent);
}
.kort h3{margin-bottom:12px}
.kort ul{margin:0;padding:0;list-style:none}
.kort li{position:relative;padding-left:22px;margin-bottom:9px;color:var(--daempet)}
.kort li::before{
  content:"";position:absolute;left:0;top:.68em;
  width:7px;height:7px;border-radius:50%;background:var(--accent);
}
.kort p{color:var(--daempet)}
.kort-knap{margin-top:22px}
.kort-knap .knap{padding:10px 22px;font-size:.92rem}

/* ---------- to spalter ---------- */

.split{display:grid;gap:56px;align-items:center}
.foto{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:16px}
.split-om{align-items:start}
.split-om .foto{aspect-ratio:4/5;object-position:52% 30%;border-radius:999px 999px 16px 16px}
.split-emner{align-items:start}
.split-kontakt{align-items:start}

.to-spalter{display:grid;gap:48px}

/* ---------- emneliste ---------- */

.emner ul{
  list-style:none;margin:0;padding:0;max-width:none;
  columns:2 240px;column-gap:36px;
}
.emner li{
  break-inside:avoid;position:relative;padding:11px 0 11px 26px;
  border-bottom:1px solid var(--linje);
}
.emner li::before{
  content:"";position:absolute;left:2px;top:1.15em;
  width:9px;height:9px;border:1.5px solid var(--accent);border-radius:50%;
}

/* ---------- liste med linjer ---------- */

.fakta{border-top:1px solid var(--linje);margin:0;padding:0}
.fakta div{
  display:flex;gap:24px;padding:16px 0;border-bottom:1px solid var(--linje);
  flex-wrap:wrap;
}
.fakta dt{
  font-size:.78rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--daempet);
  flex:0 0 210px;padding-top:4px;margin:0;
}
.fakta dd{margin:0;flex:1 1 280px;max-width:var(--maks-tekst)}
.fakta-links dt{font-family:var(--overskrift);font-size:1.35rem;text-transform:none;
  letter-spacing:0;font-weight:600;color:var(--ink)}
.fakta-links dt a{text-decoration:none}
.fakta-links dt a:hover{text-decoration:underline}

/* ---------- pris ---------- */

.pris-tal{
  font-family:var(--overskrift);font-weight:500;
  font-size:clamp(3.2rem,8vw,5.6rem);line-height:1;
  letter-spacing:-.03em;color:var(--primaer);margin:34px 0 10px;
}
.pris-note{font-size:1rem;color:var(--daempet)}

/* ---------- spørgsmål ---------- */

.faq{border-top:1px solid var(--linje)}
.faq details{border-bottom:1px solid var(--linje)}
.faq summary{
  font-family:var(--overskrift);font-size:1.42rem;font-weight:600;
  padding:20px 40px 20px 0;cursor:pointer;position:relative;list-style:none;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";position:absolute;right:8px;top:30px;
  width:9px;height:9px;border-right:1.5px solid var(--accent);
  border-bottom:1.5px solid var(--accent);transform:rotate(45deg);
  transition:transform .2s;
}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq .svar{padding:0 0 26px;color:var(--daempet)}
.faq .svar p{margin-bottom:.9em}

/* ---------- akut-boks ---------- */

.akut{
  margin-top:56px;padding:24px 28px;border-radius:12px;
  background:var(--bg-kort);border:1px solid var(--linje);border-left:4px solid var(--primaer);
}
.akut p{margin:0;max-width:none}

/* ---------- udtalelser ---------- */

.udtalelser{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.udtalelse{margin:0;background:var(--bg-kort);border-radius:14px;padding:34px 32px}
.udtalelse blockquote{margin:0;font-family:var(--overskrift);font-style:italic;font-size:1.3rem;line-height:1.5;font-weight:500}
.udtalelse figcaption{margin-top:16px;font-size:.92rem;font-weight:700;color:var(--primaer)}
.udtalelse figcaption::before{content:"— "}

/* ---------- personligt ---------- */

.personligt p{font-family:var(--overskrift);font-size:1.4rem;line-height:1.55;font-weight:500}

/* ---------- formular ---------- */

.form{background:var(--bg-kort);padding:40px 36px;border-radius:16px}
.felt{margin-bottom:20px}
.felt label{
  display:block;font-size:.8rem;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--daempet);margin-bottom:7px;
}
.felt input,.felt textarea{
  width:100%;font:inherit;font-size:1rem;color:var(--ink);
  background:var(--felt);border:1px solid var(--linje);border-radius:10px;
  padding:12px 14px;
}
.felt textarea{min-height:150px;resize:vertical}
.felt input:focus,.felt textarea:focus{
  outline:2px solid var(--primaer);outline-offset:1px;background:#fff;
}
.felt-note{font-size:.9rem;color:var(--daempet);margin-top:8px}
.samtykke{display:flex;gap:11px;align-items:flex-start;margin-bottom:24px}
.samtykke input{width:17px;height:17px;margin-top:4px;accent-color:var(--primaer);flex:0 0 auto}
.samtykke span{font-size:.93rem;color:var(--daempet)}
.form button{
  font:inherit;font-weight:700;font-size:1rem;
  background:var(--primaer);color:#fff;border:0;border-radius:999px;
  padding:14px 32px;cursor:pointer;
}
.form button:hover{background:var(--primaer-m)}
.form button:disabled{opacity:.6;cursor:wait}

.botfaelde{position:absolute!important;left:-9999px!important;opacity:0}

.formsvar{margin:16px 0 0;font-size:.95rem;color:var(--daempet)}
.formsvar.fejl{color:#9a3a2e}

.kvittering{background:var(--moerk);color:#e3ecea;padding:40px 36px;border-radius:16px}
.kvittering h3{color:#f7f5ef;font-size:1.6rem;margin-bottom:12px}
.kvittering p{color:rgba(227,236,234,.9);margin:0}

.bookboks{margin-top:40px;padding:30px 30px 32px;border-radius:16px;background:var(--bg-dyb)}
.bookboks h3{margin-bottom:10px}

/* ---------- privatliv ---------- */

.juridisk h3{margin-top:40px}
.juridisk h1 + h3{margin-top:44px}
.opdateret{margin-top:44px;color:var(--daempet);font-size:.92rem;border-top:1px solid var(--linje);padding-top:22px}

/* ---------- 404 ---------- */

.fejlside{padding:96px 0 84px}
.fejlside h1{max-width:18ch}

/* ---------- footer ---------- */

footer{
  background:var(--moerk-2);color:#b9cbc8;padding:64px 0 28px;
  font-size:.95rem;
}
.footer-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:36px;align-items:start}
.fod-logo img{width:220px;max-width:100%;height:auto;border-radius:8px}
footer h4{
  font-family:var(--broed);font-size:.76rem;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 14px;
}
footer a{color:#eef3f1;text-decoration:none}
footer a:hover{text-decoration:underline;color:#fff}
footer p{margin:0 0 7px;max-width:34ch}
.footer-bund{
  margin-top:48px;padding-top:20px;border-top:1px solid #234245;
  display:flex;justify-content:space-between;gap:10px 18px;flex-wrap:wrap;
  font-size:.85rem;color:#8faaa6;
}
.footer-bund a{color:#b9cbc8}
.kredit{font-size:.8rem}

/* ---------- KropsRespons: hav-temaets egne dele ---------- */

/* Sider uden stort billede i toppen får en blød havdis bag overskriften */
.side-top{padding:84px 0 120px;background:var(--bg-dyb);position:relative}

.hero-sms{margin-top:22px;font-size:.98rem;color:var(--daempet)}
.hero-sms a{font-weight:700;white-space:nowrap}
section.moerk .hero-sms{color:rgba(227,236,234,.8);margin-top:18px}
section.moerk .hero-sms a{color:var(--guld-lys)}

/* varighed og pris på kortene, fx "60 min. · 800 kr." */
.kort-meta{display:block;margin-top:8px;font-family:var(--broed);font-size:.82rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.kort-tre{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}

/* behandlingerne — bred række pr. behandling */
.ydelser{display:grid;gap:18px}
.ydelser .kort{display:grid;gap:0 56px;padding:40px 40px 42px}
.ydelser .kort h3{font-size:1.85rem;margin:0 0 14px}
@media (min-width:860px){
  .ydelser .kort{grid-template-columns:.75fr 1.25fr}
  .ydelser .kort > h3{grid-column:1;grid-row:1 / span 30;margin:0}
  .ydelser .kort > *:not(h3){grid-column:2}
}
.ydelser .kort p:first-of-type{color:var(--ink)}

/* trin 1-2-3-4 */
.trin{counter-reset:trin;display:grid;gap:4px;margin-top:8px}
.trin .kort{background:none;border:0;border-radius:0;padding:16px 0 16px 64px;position:relative;
  border-bottom:1px solid var(--linje)}
.trin .kort:last-child{border-bottom:0}
.trin .kort::before{counter-increment:trin;content:counter(trin);
  position:absolute;left:0;top:14px;width:42px;height:42px;border-radius:50%;
  border:1.5px solid var(--accent);display:grid;place-items:center;
  font-family:var(--overskrift);font-size:1.35rem;font-weight:600;color:var(--primaer)}
.trin .kort h3{font-size:1.4rem;margin-bottom:4px}
.split-trin{align-items:start}
.antal{margin-top:72px}

/* fremhævet udtalelse på forsiden */
.udtalelse-stor{margin-top:44px;background:transparent;padding:44px 0 0;border-top:1px solid var(--linje);
  max-width:820px;border-radius:0}
.udtalelse-stor blockquote{font-size:clamp(1.45rem,2.6vw,1.9rem);line-height:1.4}
.udtalelse-stor blockquote p{max-width:none}
/* centreret på forsiden */
.udtalelse-stor{margin-left:auto;margin-right:auto;text-align:center}
.udtalelse-stor + .mere{text-align:center;margin-left:auto;margin-right:auto}

.foto-link{display:block;border-radius:16px;overflow:hidden}
.foto-link img{transition:transform .5s}
.foto-link:hover img{transform:scale(1.03)}

.fakta + .fakta{border-top:0}
.broed-top > :first-child{margin-top:0}

/* priser */
.prisliste .fakta dt{flex:1 1 300px;font-family:var(--overskrift);font-size:1.32rem;font-weight:600;
  letter-spacing:0;text-transform:none;color:var(--ink);padding-top:0}
.prisliste .fakta dd{flex:0 1 auto;max-width:none;font-weight:700;color:var(--primaer);text-align:right}
@media (max-width:640px){.prisliste .fakta dd{text-align:left}}

/* video */
.video-sektion{padding:64px 0}
.videoer{display:grid;gap:36px}
.videoer:empty{display:none}
.video{margin:0;max-width:960px;width:100%;justify-self:center}
.video video{width:100%;height:auto;aspect-ratio:16/9;display:block;border-radius:14px;background:#000}
.video figcaption{margin-top:14px;display:flex;flex-direction:column;gap:2px}
.video figcaption strong{font-family:var(--overskrift);font-size:1.5rem;font-weight:600;color:#f7f5ef}
.video figcaption span{color:rgba(227,236,234,.8)}

/* events */
.events{display:grid;gap:18px}
.events:empty{display:none}
.event{background:var(--bg-kort);border-radius:14px;padding:34px 34px 36px;border-left:4px solid var(--accent)}
.event-dato{font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--primaer);margin-bottom:8px}
.event h3{font-size:1.75rem;margin-bottom:10px}
.event-fakta{display:flex;flex-wrap:wrap;gap:6px 26px;margin:0 0 16px;padding:0}
.event-fakta div{display:flex;gap:7px}
.event-fakta dt{font-weight:700;color:var(--daempet)}
.event-fakta dt::after{content:":"}
.event-fakta dd{margin:0}
.tom-besked{font-family:var(--overskrift);font-style:italic;font-size:1.45rem;line-height:1.45;
  color:var(--daempet);max-width:var(--maks-tekst);padding:36px 0;border-top:1px solid var(--linje);border-bottom:1px solid var(--linje)}

.fb-boks{margin-top:44px;padding:30px 32px;border-radius:16px;background:var(--moerk);color:#e3ecea;
  display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center;justify-content:space-between}
.fb-boks p{margin:0;font-family:var(--overskrift);font-size:1.45rem;line-height:1.35;max-width:36ch;color:#f7f5ef}
.fb-boks .knap-let{color:#f7f5ef;border-color:var(--guld-lys)}
.fb-boks .knap-let:hover{background:var(--guld-lys);color:var(--moerk-2);border-color:var(--guld-lys)}

/* kontakt */
.valgfri{font-weight:400;text-transform:none;letter-spacing:0}
.steder-overskrift{margin-top:48px}

/* bølgen i bunden af hero */



/* ---------- toppen på forsiden: billede til kanten med bølgekant ---------- */
.hero{position:relative;padding:0;overflow:hidden;background:var(--bg)}
/* ekstra luft (ca. to linjer) mellem toppen og første sektion */
.hero + section{padding-top:150px}
.hero-in{display:block;min-height:min(78vh,720px);padding-top:96px;padding-bottom:110px}
.hero-tekst{max-width:min(520px,44vw);position:relative;z-index:2}
.hero-billede{position:absolute;top:0;right:0;bottom:0;width:52%;color:var(--accent)}
.hero-billede img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 50%;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M20 0 C 6 18, 30 36, 15 56 S 7 86, 18 100 L100 100 L100 0 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M20 0 C 6 18, 30 36, 15 56 S 7 86, 18 100 L100 100 L100 0 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.hero-linje{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}

@media (max-width:859px){
  .hero-in{min-height:0;padding-top:34px;padding-bottom:64px}
  .hero-tekst{max-width:none}
  .hero-billede{position:relative;width:100%;height:58vw;max-height:420px}
  .hero-billede img{
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 82 C 80 96, 60 74, 40 88 S 12 98, 0 86 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
            mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 82 C 80 96, 60 74, 40 88 S 12 98, 0 86 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
  .hero-linje{display:none}
  .hero{display:flex;flex-direction:column}
  .hero-billede{order:-1}
}

/* ---------- stille video i loop (Behandlinger) ---------- */
.split-video{align-items:center}
.loop{margin:0;position:relative}
.loop video{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;
  border-radius:200px 16px 16px 16px;background:var(--moerk)}
.loop-knap{position:absolute;right:14px;bottom:14px;font:inherit;font-size:.8rem;font-weight:700;
  background:rgba(13,36,38,.72);color:#f7f5ef;border:0;border-radius:999px;padding:7px 14px;cursor:pointer}
.loop-knap:hover{background:rgba(13,36,38,.9)}
.split-video h1{font-size:clamp(2.4rem,4.2vw,3.5rem)}
/* Om mig: portræt med bølget bund — ikke buen fra UniqueMindset */
.split-om .foto{border-radius:16px;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 90 C 80 98, 62 86, 42 93 S 12 100, 0 92 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 90 C 80 98, 62 86, 42 93 S 12 100, 0 92 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}

/* =====================================================================
   Undersiderne — hav-temaets egne former (ikke UniqueMindsets)
   ===================================================================== */

/* bølgen i bunden af sidetoppen */
.boelge{position:absolute;left:0;right:0;bottom:-1px;display:block;width:100%;height:60px;color:var(--bg)}
.side-top + section{position:relative}

/* mørk top på Dans & bevægelse, som flyder over i videoen */
.side-moerk{background:var(--moerk);color:#e3ecea;padding-bottom:40px}
.side-moerk .boelge{display:none}
.side-moerk h1{color:#f7f5ef}
.side-moerk .kicker{color:var(--guld-lys)}
.side-moerk .manchet{color:rgba(227,236,234,.84)}
.video-sektion{position:relative;padding:12px 0 130px}

/* den mørke boks nederst: to spalter og bølgelinjer */
.cta-hav{position:relative;overflow:hidden;padding:100px 0 170px}
.boelge-linjer{position:absolute;left:0;right:0;bottom:0;width:100%;height:150px;color:var(--accent);opacity:.55;pointer-events:none}
.cta-in{display:grid;gap:30px;position:relative}
.cta-in h2{max-width:20ch}
.cta-handling{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.cta-handling .hero-sms{margin-top:14px}
@media (min-width:860px){
  .cta-in{grid-template-columns:1.3fr .7fr;align-items:end}
}

/* udtalelser: murværk i spalter med stort citattegn, hver tredje mørk */
.udtalelser{display:block;columns:3 300px;column-gap:20px}
.udtalelser .udtalelse{break-inside:avoid;margin:0 0 20px;position:relative;padding:58px 32px 32px;
  border-radius:16px;background:var(--bg-kort);border:1px solid var(--linje)}
.udtalelser .udtalelse::before{content:"“";position:absolute;top:6px;left:26px;
  font-family:var(--overskrift);font-size:5rem;line-height:1;color:var(--accent)}
.udtalelser .udtalelse:nth-child(3n+2){background:var(--moerk);border-color:var(--moerk)}
.udtalelser .udtalelse:nth-child(3n+2) blockquote{color:#f7f5ef}
.udtalelser .udtalelse:nth-child(3n+2) figcaption{color:var(--guld-lys)}
.udtalelser .udtalelse:nth-child(3n){background:var(--bg-dyb);border-color:var(--bg-dyb)}

/* priser: menukort med prikker mellem behandling og pris */
.prisliste .fakta{border-top:0}
.prisliste .fakta div{align-items:baseline;flex-wrap:nowrap;border-bottom:0;padding:13px 0;gap:0}
.prisliste .fakta dt{display:flex;align-items:baseline;flex:1 1 auto;min-width:0}
.prisliste .fakta dt::after{content:"";flex:1;min-width:24px;margin:0 14px;border-bottom:2px dotted var(--linje);transform:translateY(-5px)}
.prisliste .fakta dd{flex:0 0 auto;white-space:nowrap;font-family:var(--overskrift);font-size:1.4rem;font-weight:600}
@media (max-width:640px){
  .prisliste .fakta div{flex-wrap:wrap}
  .prisliste .fakta dt::after{display:none}
  .prisliste .fakta dd{white-space:normal;flex-basis:100%}
}

/* priser: flere behandlinger som tre fliser */
.pakker .fakta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border:0;margin-top:22px}
.pakker .fakta div{flex-direction:column;align-items:center;gap:6px;text-align:center;padding:26px 14px 24px;
  background:var(--bg-kort);border-radius:16px;border:0}
.pakker .fakta dt{flex:none;padding:0;font-size:.74rem}
.pakker .fakta dd{flex:none;font-family:var(--overskrift);font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:600;color:var(--primaer);line-height:1.1}
@media (max-width:480px){.pakker .fakta{grid-template-columns:1fr}}

/* steder: fliser med dag og sted */
.steder .fakta{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;border:0;margin-bottom:26px}
.steder .fakta div{display:block;padding:24px 24px 26px;background:var(--bg-kort);border-radius:16px;border:0;
  border-top:3px solid var(--primaer)}
.steder .fakta div:nth-child(2){border-top-color:var(--accent)}
.steder .fakta dt{color:var(--primaer);margin-bottom:8px}
.steder .fakta dd{font-size:.98rem}
.steder-smal .fakta{grid-template-columns:1fr}
.steder-smal .fakta div{background:var(--bg-dyb)}

/* events: datoen som stor kolonne til venstre */
.event{display:grid;column-gap:40px;padding:36px 38px 38px;border-left:0;border-radius:120px 16px 16px 16px}
.event > *{grid-column:1}
.event-dato{font-family:var(--overskrift);font-size:1.7rem;font-weight:600;letter-spacing:0;text-transform:none;
  color:var(--primaer);line-height:1.15;margin:0 0 10px}
@media (min-width:760px){
  .event{grid-template-columns:220px 1fr;padding-left:60px}
  .event > *{grid-column:2}
  .event > .event-dato{grid-column:1;grid-row:1 / span 20;margin:0;padding-right:28px;border-right:1px solid var(--linje)}
}
.tom-besked{border:0;max-width:none;padding:56px 0 56px 150px;
  background:repeating-radial-gradient(circle at 60px 50%,transparent 0 16px,rgba(185,133,63,.35) 16px 17px,transparent 17px 30px);
  background-size:130px 100%;background-repeat:no-repeat}
@media (max-width:640px){.tom-besked{padding:120px 0 24px;background-position:center top;background-size:130px 120px;
  background-image:repeating-radial-gradient(circle at 50% 50%,transparent 0 16px,rgba(185,133,63,.35) 16px 17px,transparent 17px 30px)}}

/* kontakt: formular med den store organiske runding fra videoen */
.split-kontakt .form{border-radius:120px 16px 16px 16px;padding-top:64px;box-shadow:0 1px 0 var(--linje),0 18px 40px -24px rgba(19,50,53,.25)}
@media (max-width:859px){.split-kontakt .form{border-radius:60px 16px 16px 16px;padding-top:44px}}

/* kort: den organiske runding i stedet for UniqueMindsets guldkant */
.kort{border-top:0;border-radius:56px 16px 16px 16px;padding-top:44px}
.ydelser .kort{border-radius:90px 16px 16px 16px;padding-top:48px}
.trin .kort{border-radius:0;padding-top:16px}

/* video øverst på forsiden — samme bølgekant som billedet */
.hero-loop{position:absolute;inset:0;margin:0}
.hero-billede .hero-loop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 50%;border-radius:0;background:var(--bg-dyb);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M20 0 C 6 18, 30 36, 15 56 S 7 86, 18 100 L100 100 L100 0 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M20 0 C 6 18, 30 36, 15 56 S 7 86, 18 100 L100 100 L100 0 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.hero-loop .loop-knap{z-index:3;right:20px;bottom:20px}
@media (max-width:859px){
  .hero-billede .hero-loop video{
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 82 C 80 96, 60 74, 40 88 S 12 98, 0 86 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;
            mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 82 C 80 96, 60 74, 40 88 S 12 98, 0 86 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
  .hero-loop .loop-knap{bottom:16%;right:14px}
}

/* logoet i toppen og bunden */
.logo img{width:auto;border-radius:0}
.fod-logo img{width:260px;height:auto;border-radius:0}

/* =====================================================================
   Sarte bølger mellem sektionerne (desktop og mobil)
   Hver tonet sektion får en bølge op og en bølge ned med en tynd
   messinglinje. Formen skifter fra sektion til sektion.
   ===================================================================== */
section.tone{position:relative;--linje:#A1BAB2}
section.tone::before,section.tone::after{content:"";position:absolute;left:0;right:0;height:60px;pointer-events:none;z-index:2;
  background-repeat:no-repeat;background-size:100% 100%}
section.tone::before{top:-59px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 26 C 240 0 480 0 720 22 S 1200 48 1440 14' fill='none' stroke='%23B9853F' stroke-width='1' vector-effect='non-scaling-stroke' opacity='0.55'/%3E%3Cpath d='M0 60 L0 34 C 240 8 480 8 720 30 S 1200 56 1440 22 L1440 60 Z' fill='%23BED2CB'/%3E%3C/svg%3E")}
section.tone::after{bottom:-59px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L1440 0 L1440 24 C 1200 54 960 50 720 30 S 240 6 0 32 Z' fill='%23BED2CB'/%3E%3Cpath d='M0 40 C 240 14 480 18 720 38 S 1200 62 1440 32' fill='none' stroke='%23B9853F' stroke-width='1' vector-effect='non-scaling-stroke' opacity='0.4'/%3E%3C/svg%3E")}
section.tone:nth-of-type(even)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 12 C 300 42 560 38 820 18 S 1260 -4 1440 22' fill='none' stroke='%23B9853F' stroke-width='1' vector-effect='non-scaling-stroke' opacity='0.55'/%3E%3Cpath d='M0 60 L0 20 C 300 50 560 46 820 26 S 1260 4 1440 30 L1440 60 Z' fill='%23BED2CB'/%3E%3C/svg%3E")}
section.tone:nth-of-type(even)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L1440 0 L1440 34 C 1160 10 900 14 640 32 S 200 52 0 22 Z' fill='%23BED2CB'/%3E%3Cpath d='M0 30 C 200 60 420 52 640 40 S 1160 18 1440 42' fill='none' stroke='%23B9853F' stroke-width='1' vector-effect='non-scaling-stroke' opacity='0.4'/%3E%3C/svg%3E")}
/* ingen bølge op, når sektionen ligger lige under en sidetop med egen bølge */
.side-top + section.tone::before{display:none}
/* ingen bølge ned ind i en mørk sektion — den har sin egen */
section.tone:has(+ section.moerk)::after{display:none}

/* mørk boks nederst: bølge op med messinglinje */
section.cta-hav::before{content:"";position:absolute;left:0;right:0;top:-59px;height:60px;z-index:2;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 26 C 240 0 480 0 720 22 S 1200 48 1440 14' fill='none' stroke='%23B9853F' stroke-width='1' vector-effect='non-scaling-stroke' opacity='0.7'/%3E%3Cpath d='M0 60 L0 34 C 240 8 480 8 720 30 S 1200 56 1440 22 L1440 60 Z' fill='%23133235'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
section.cta-hav{overflow:visible}
.cta-hav .boelge-linjer{overflow:hidden}
footer{position:relative}
footer::before{content:"";position:absolute;left:0;right:0;top:-39px;height:40px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60 L0 20 C 300 50 560 46 820 26 S 1260 4 1440 30 L1440 60 Z' fill='%230D2426'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}

/* citatbåndet på forsiden får en blød bølge fra toppen */
.citat-baand::after{content:"";position:absolute;left:0;right:0;top:-1px;height:50px;z-index:1;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60 L0 20 C 300 50 560 46 820 26 S 1260 4 1440 30 L1440 60 Z' fill='%23F3F1EB'/%3E%3Cpath d='M0 12 C 300 42 560 38 820 18 S 1260 -4 1440 22' fill='none' stroke='%23B9853F' stroke-width='1.2' vector-effect='non-scaling-stroke' opacity='0.8'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;transform:scaleY(-1)}

/* ---------- toppen af Behandlinger: video med bølgekant ---------- */
.loop-boelge{color:var(--accent)}
.loop-boelge video{border-radius:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M20 0 C 6 18, 30 36, 15 56 S 7 86, 18 100 L100 100 L100 0 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M20 0 C 6 18, 30 36, 15 56 S 7 86, 18 100 L100 100 L100 0 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.loop-boelge .hero-linje{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-linje-mobil{display:none}

@media (max-width:859px){
  section.tone::before,section.tone::after{height:34px}
  section.tone::before{top:-33px}
  section.tone::after{bottom:-33px}
  section.cta-hav::before{height:34px;top:-33px}
  footer::before{height:26px;top:-25px}
  .citat-baand::after{height:30px}

  /* bølgelinjerne følger med ned på mobil */
  .hero-billede .hero-linje-mobil,.loop-boelge .hero-linje-mobil{display:block;position:absolute;inset:0;width:100%;height:100%;
    overflow:visible;pointer-events:none;color:var(--accent);z-index:3}
  .loop-boelge .hero-linje{display:none}
  .loop-boelge video{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 82 C 80 96, 60 74, 40 88 S 12 98, 0 86 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L100 0 L100 82 C 80 96, 60 74, 40 88 S 12 98, 0 86 Z'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
  .loop-boelge{margin-bottom:18px}
  .loop-boelge .loop-knap{bottom:20%}
}

/* ---------- logoet: større, især på mobil ---------- */
.logo img{height:68px}
.top-in{padding-top:10px;padding-bottom:10px}
@media (max-width:959px){.logo img{height:58px}}
@media (max-width:420px){.logo img{height:54px}}

/* ---------- events: mindre skrift, én oplysning pr. linje ---------- */
.event{padding:30px 32px 32px 32px}
.event h3{font-size:1.45rem;margin-bottom:8px}
.event-dato{font-size:1.35rem}
.event-fakta{flex-direction:column;flex-wrap:nowrap;gap:2px;font-size:.92rem;margin-bottom:12px}
.event p{font-size:.95rem}
.event .kort-knap{margin-top:14px}
@media (min-width:760px){
  .event{grid-template-columns:180px 1fr;padding-left:48px}
}
@media (max-width:759px){
  .event{border-radius:56px 14px 14px 14px;padding:28px 22px 26px}
  .event-dato{font-size:1.2rem}
  .event h3{font-size:1.3rem}
}

/* =====================================================================
   Mobilrettelser
   ===================================================================== */
@media (max-width:959px){
  /* logoet fylder bredden ved siden af Menu-knappen */
  .logo img{height:auto;width:min(185px,48vw)}
  .top-in{padding-top:8px;padding-bottom:8px;gap:12px}
  .menu-knap{padding:7px 14px;flex:0 0 auto}
}
@media (max-width:859px){
  /* pause-knappen op i hjørnet, så den ikke ligger på bølgestregerne */
  .hero-loop .loop-knap,.loop-boelge .loop-knap{top:12px;bottom:auto;right:12px;font-size:.74rem;padding:6px 12px}
  /* bølgestregerne holdes under billedet og væk fra teksten */
  .hero-billede .hero-linje-mobil,.loop-boelge .hero-linje-mobil{z-index:1}
  .hero-in{padding-top:44px}
  .loop-boelge{margin-bottom:34px}
  .side-top{padding-bottom:84px}
}
@media (max-width:759px){
  /* events: mindre skrift */
  .event{padding:24px 20px 24px}
  .event-dato{font-size:1.05rem;margin-bottom:4px}
  .event h3{font-size:1.18rem;margin-bottom:6px}
  .event-fakta{font-size:.82rem;gap:1px;margin-bottom:10px}
  .event p{font-size:.86rem;line-height:1.6}
  .event .kort-knap .knap{font-size:.84rem;padding:9px 18px}
}

@media (max-width:859px){
  /* sektionernes bølger og messingstreger har samme form som på desktop */
  section.tone::before,section.tone::after{height:48px}
  section.tone::before{top:-47px}
  section.tone::after{bottom:-47px}
  section.cta-hav::before{height:48px;top:-47px}
  .citat-baand::after{height:40px}
}

/* ---------- Events: ekstra sektion under kalenderen ---------- */
.ev-ekstra{padding-top:20px}
.ev-ekstra-in{display:grid;gap:36px;align-items:center}
.ev-ekstra .foto{aspect-ratio:auto;max-height:620px;object-fit:cover;border-radius:56px 16px 16px 16px}
.ev-ekstra-tekst h2{margin-bottom:.5em}
@media (min-width:860px){
  .ev-ekstra-venstre .ev-ekstra-in{grid-template-columns:var(--billede-bredde,45%) 1fr;gap:56px}
  .ev-ekstra-hoejre .ev-ekstra-in{grid-template-columns:1fr var(--billede-bredde,45%);gap:56px}
  .ev-ekstra-hoejre .foto{order:2;border-radius:16px 56px 16px 16px}
}

/* ---------- Billede i tekstsektion (valgfrit, styres i admin) ----------
   Uden billede (sb-ingen) påvirker indpakningen intet. */
.sb-fig{margin:0}
.sb-fig img{width:100%;height:auto;display:block;border-radius:56px 16px 16px 16px}
.sb-har{display:grid;gap:32px}
.sb-har .split,.sb-har .to-spalter{grid-template-columns:1fr;gap:32px}
.bookboks .sb-har{gap:18px}
.bookboks .sb-fig img{border-radius:28px 10px 10px 10px}
@media (min-width:860px){
  .sb-har{grid-template-columns:minmax(0,1fr) var(--sb,45%);gap:56px;align-items:center}
  .sb-har.sb-venstre{grid-template-columns:var(--sb,45%) minmax(0,1fr)}
  .sb-har.sb-hoejre .sb-fig{order:2}
  .sb-har.sb-hoejre .sb-fig img{border-radius:16px 56px 16px 16px}
  .sb-har .smal{max-width:none}
  .bookboks .sb-har{grid-template-columns:minmax(0,1fr) var(--sb,45%);gap:22px}
  .bookboks .sb-har.sb-venstre{grid-template-columns:var(--sb,45%) minmax(0,1fr)}
  .bookboks .sb-har.sb-hoejre .sb-fig img{border-radius:10px 28px 10px 10px}
}

/* Uden billede — tekst i hele bredden (sb-fuld) */
.sb-fuld .sb-tekst :is(.smal,.hoved,p,ul,ol,dd,.manchet),
.ev-ekstra-fuld .ev-ekstra-tekst :is(p,ul,ol){max-width:none}

/* ---------- responsivt ---------- */

@media (min-width:860px){
  .split{grid-template-columns:1fr 1fr}
  .split-tekst-foerst .foto{order:2}
  .split-om{grid-template-columns:.8fr 1.2fr}
  .om-foto{position:sticky;top:110px}
  .split-emner{grid-template-columns:.8fr 1.2fr}
  .split-kontakt{grid-template-columns:1.1fr .9fr}
  .to-spalter{grid-template-columns:1fr 1fr;gap:64px}
  .footer-in{grid-template-columns:1.25fr repeat(4,1fr)}
}

@media (max-width:1060px){
  .menu{gap:16px}
  .menu a{font-size:.9rem}
}

@media (max-width:959px){
  section{padding:64px 0}
  .hero + section{padding-top:110px}
  .citat-baand{padding:100px 0}
  .menu{
    display:none;position:absolute;top:100%;left:0;right:0;
    background:var(--bg);border-bottom:1px solid var(--linje);
    flex-direction:column;align-items:stretch;gap:0;padding:8px 28px 20px;
  }
  .menu.aaben{display:flex}
  .menu a{padding:12px 0;border-bottom:1px solid var(--linje);font-size:1rem}
  .menu a[aria-current="page"]{border-bottom-color:var(--linje);font-weight:700}
  .menu a.menu-book{margin-top:14px;text-align:center;padding:13px 18px}
  .menu-knap{display:block}
  .top-in{position:relative}
}

@media (max-width:859px){
  .fakta dt{flex:0 0 100%}
  .form{padding:30px 22px}
}

@media (max-width:420px){
  .ramme,.top-in{padding-left:18px;padding-right:18px}
  .logo small{display:none}
  .hero-cta .knap{width:100%;text-align:center}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
}
