:root{--ink:#253d34;--green:#254b40;--paper:#faf9f6;--muted:#626963;--line:#dcded5;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-underline-offset:4px}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b58340;outline-offset:5px}.skip-link{position:fixed;left:16px;top:-100px;padding:12px;background:white;z-index:10}.skip-link:focus{top:10px}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{max-width:1280px;margin:auto;min-height:100px;padding:16px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px}.logo{font-family:var(--serif);font-size:32px;font-weight:bold;letter-spacing:-1.5px;text-decoration:none;white-space:nowrap}.logo span{font-weight:normal;font-style:italic}nav{display:flex;align-items:center;gap:30px}nav a{font-size:14px;text-decoration:none;white-space:nowrap}nav a:hover,nav a[aria-current]{text-decoration:underline}.booking-link{font-weight:bold}.menu-toggle{display:none;font:inherit;background:none;color:var(--ink);border:1px solid var(--line);padding:7px 12px}.menu-toggle span{margin-left:12px}.hero{position:relative;background:#e9ece3;overflow:hidden;border-bottom:1px solid #d7ddcf}.hero:after{content:'';position:absolute;width:560px;height:560px;border:1px solid #cbd2c3;border-radius:50%;right:-210px;top:30px;box-shadow:0 0 0 65px #e3e7dc,0 0 0 66px #d0d7c8,0 0 0 130px #e6e9df,0 0 0 131px #d5dbcd;pointer-events:none}.hero-inner{position:relative;z-index:1;max-width:1184px;margin:auto;padding:72px 0 80px}.eyebrow{font-size:11px;letter-spacing:2.2px;text-transform:uppercase;font-weight:bold;margin:0 0 22px}.eyebrow span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:10px;vertical-align:1px}h1,h2{font-family:var(--serif);font-weight:normal;letter-spacing:-1.5px;line-height:1.12}h1{font-size:clamp(46px,5.3vw,74px);margin:0 0 24px}h1 em{font-weight:normal}.hero-description{color:#526054;font-size:17px;line-height:1.7;margin:0 0 30px}.button{display:inline-flex;gap:36px;align-items:center;background:var(--green);color:white;padding:13px 22px;text-decoration:none;font-size:13px;border-radius:2px}.button:hover{background:#17392f}.button span{font-size:20px}.hero-note{position:absolute;right:max(48px,calc((100vw - 1184px)/2));bottom:48px;font-size:11px;text-transform:uppercase;letter-spacing:1.5px;line-height:1.8;z-index:1;display:flex;align-items:center;gap:16px}.note-line{width:40px;height:1px;background:#8c9b85}.content-layout{max-width:1184px;margin:0 auto;padding:80px 0 90px;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.introduction{padding-top:12px}.introduction h2{font-size:42px;margin:0 0 30px}.introduction>p:not(.eyebrow){color:#586059;margin:0 0 22px}.association{display:flex;gap:18px;margin-top:38px;border-top:1px solid var(--line);padding-top:24px;font-size:14px;color:#59665b}.association>span{font-size:28px}.association p{margin:0}.information{background:#f0f0e9;border:1px solid #e2e3d9;border-radius:3px;padding:34px 36px}.information>.eyebrow{margin-bottom:10px;color:#66745d}.information h2{font-size:30px;letter-spacing:-.7px;margin:0 0 28px}.information section+section{border-top:1px solid #d9ddcf;margin-top:23px;padding-top:22px}h3{font-size:15px;line-height:1.5;margin:0 0 9px}.information p,.information address{font-size:14px;line-height:1.8;margin:0 0 12px;font-style:normal;color:#525c51}.information p:last-child{margin-bottom:0}.information .contact{margin-top:13px}.information a{overflow-wrap:anywhere}.site-footer{border-top:1px solid var(--line)}.site-footer>div{max-width:1184px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0}.site-footer .logo{font-size:25px}.site-footer p,.site-footer>div>a:last-child{font-size:12px;color:var(--muted)}.site-footer>div>a:last-child{text-decoration:none}.subpage{max-width:900px;min-height:60vh;margin:auto;padding:90px 32px}.subpage h1{font-size:54px}.text-link{display:inline-block;margin-top:24px}@media(min-width:1400px){.hero-inner{padding-top:86px;padding-bottom:92px}}@media(max-width:1280px){.hero-inner,.content-layout{margin-left:48px;margin-right:48px}.content-layout{gap:64px}.site-footer>div{padding-left:48px;padding-right:48px}}@media(max-width:1000px){.header-inner{padding:18px 28px;gap:20px}nav{gap:20px}nav a{font-size:13px}.logo{font-size:28px}.hero-inner,.content-layout{margin-left:32px;margin-right:32px}.content-layout{gap:36px}.information{padding:28px}.hero-note{right:32px}.hero:after{right:-330px}.introduction h2{font-size:36px}}@media(max-width:760px){.header-inner{flex-wrap:wrap;min-height:80px;padding:18px 24px}.menu-toggle:not([hidden]){display:block}nav{flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:4px 0 8px}nav a{font-size:15px;padding:10px 0;border-top:1px solid var(--line)}.js nav:not(.is-open){display:none}.hero-inner{margin:0;padding:52px 24px 60px}.hero:after{right:-470px;top:80px}.hero .eyebrow{font-size:10px;letter-spacing:1.6px}h1{font-size:50px}.hero-description{font-size:16px}.hero-note{display:none}.content-layout{display:block;margin:0;padding:48px 24px}.introduction{padding:0}.introduction h2{font-size:36px}.information{margin-top:40px;padding:28px 24px}.site-footer>div{padding:26px 24px;align-items:flex-start;flex-direction:column;gap:8px}.site-footer p{margin:0}.subpage{padding:56px 24px}.subpage h1{font-size:40px}}@media(prefers-reduced-motion:no-preference){.button{transition:background .2s ease}}

/* Hero med foto af Jonstruphus. */
.hero::after{display:none}
.hero-image{position:absolute;right:0;top:0;width:48%;height:100%;object-fit:cover;object-position:center}
.hero-inner{pointer-events:none}
.hero-inner>*{max-width:49%;pointer-events:auto}
.hero-note{display:none}
@media(min-width:761px) and (max-width:1000px){.hero h1{font-size:48px}.hero-description .desktop-break{display:none}}
@media(max-width:760px){
    .hero{display:flex;flex-direction:column}
    .hero-inner{order:0;width:100%}
    .hero-inner>*{max-width:100%}
    .hero-image{position:static;order:1;display:block;width:100%;height:auto;aspect-ratio:529/369;object-fit:cover}
}
/* Kalender under introduktionen. */
.introduction{min-width:0}
.calendar-section{margin-top:44px;padding-top:32px;border-top:1px solid var(--line)}
.calendar-section .eyebrow{margin-bottom:12px}
.calendar-section h2{font-size:34px;margin-bottom:24px}
.calendar-frame{overflow:hidden;border:1px solid var(--line);border-radius:3px;background:#fff}
.calendar-frame iframe{display:block;width:100%;height:600px;border:0}
.calendar-link{display:inline-block;margin-top:14px;font-size:13px}
@media(max-width:760px){.calendar-frame iframe{height:520px}}
/* Halver sideafstandene på computer og tablet. Mobil beholder sit layout. */
@media(min-width:761px){
    :root{--page-gutter:max(24px,calc((100vw - 1184px)/4))}
    .header-inner,.hero-inner,.content-layout,.site-footer>div,.subpage{
        max-width:none;
        margin-left:var(--page-gutter);
        margin-right:var(--page-gutter);
        padding-left:0;
        padding-right:0;
    }
}
@media(min-width:761px) and (max-width:1000px){
    :root{--page-gutter:16px}
}
/* Kortere tekstlinjer i introduktionen uden at indsnævre kalenderen. */
@media(min-width:761px){
    .introduction>p,.introduction>.association{max-width:52ch}
}
/* Kalender og bookingforespørgsel. */
.content-layout{padding-bottom:40px}
.booking-layout{margin:0 24px 80px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.booking-layout .calendar-section,.booking-section{margin:0;padding-top:32px;border-top:1px solid var(--line);min-width:0}
.booking-section{scroll-margin-top:24px}
.booking-section h2{font-size:34px;margin:0 0 24px}
.booking-section .eyebrow{margin-bottom:12px}
.booking-section>p:not(.eyebrow){margin:0 0 16px}
.form-help{font-size:13px;color:var(--muted);max-width:60ch}
.booking-form{display:grid;gap:14px;margin-top:24px;position:relative}
.form-field{display:grid;gap:5px}
.form-field label{font-size:14px;font-weight:bold}
.form-field label span{font-weight:normal;color:var(--muted)}
.form-field input,.form-field textarea{width:100%;min-width:0;border:1px solid #bac3b7;border-radius:3px;background:#fff;padding:10px 12px;font:inherit;line-height:1.4;color:var(--ink)}
.form-field textarea{resize:vertical}
.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--green);outline-offset:2px}
.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:8px}
.form-actions .button{border:0;cursor:pointer;font-family:inherit;line-height:1.75}
.reset-button{border:0;background:none;color:var(--muted);font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.form-trap{position:absolute;left:-10000px;top:0;width:1px;height:1px;overflow:hidden}
.form-message{padding:16px 20px;margin:20px 0;background:#fff0e7;border:1px solid #d7a78a;border-radius:3px;font-size:14px}
.form-message ul{margin:8px 0 0;padding-left:20px}
.form-message.success{background:#e9efe5;border-color:#9fb596}
@media(min-width:761px){.booking-layout{margin-left:var(--page-gutter);margin-right:var(--page-gutter);gap:64px}}
@media(max-width:1000px){.booking-layout{gap:32px}}
@media(max-width:760px){.booking-layout{grid-template-columns:minmax(0,1fr);gap:40px;margin-bottom:48px}.content-layout{padding-bottom:40px}}
.date-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}

/* Regler: samme ydre bredde som forsiden, med korte læselinjer. */
.rules-page{margin:0 24px;padding:64px 0 88px}
.rules-heading{padding-bottom:40px;border-bottom:1px solid var(--line)}
.rules-heading h1{font-size:clamp(40px,4.2vw,64px);max-width:20ch;margin:0}
.rules-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding-top:44px;align-items:start}
.rules-index{display:flex;flex-direction:column;align-items:stretch;gap:0;position:sticky;top:32px;padding:26px;background:#f0f0e9;border:1px solid #e2e3d9;border-radius:3px}
.rules-index .eyebrow{margin-bottom:16px}
.rules-index a{padding:9px 0;font-size:14px;white-space:normal;line-height:1.5}
.rules-index a+a{border-top:1px solid var(--line)}
.rule-section{display:grid;grid-template-columns:38px minmax(0,1fr);gap:20px;padding:32px 0;border-bottom:1px solid var(--line);scroll-margin-top:28px}
.rule-section:first-child{padding-top:0}
.rule-number{font-size:12px;letter-spacing:1px;color:#788773;padding-top:7px}
.rule-section h2{font-size:32px;margin:0 0 18px;letter-spacing:-.7px}
.rule-section p,.rule-section ul{max-width:74ch;color:#586059;margin:0 0 18px}
.rule-section p:last-child,.rule-section ul:last-child{margin-bottom:0}
.rule-section ul{padding-left:21px}
.rule-section li{padding-left:5px;margin-bottom:12px}
.rule-section li:last-child{margin-bottom:0}
.rule-section li::marker{color:var(--green)}
.rule-section strong{color:var(--ink)}
.rule-section .cleaning-note{padding:18px 22px;border-left:3px solid var(--green);background:#e9ece3;color:var(--ink)}
@media(min-width:761px){.rules-page{margin-left:var(--page-gutter);margin-right:var(--page-gutter)}}
@media(max-width:1000px){.rules-layout{grid-template-columns:210px minmax(0,1fr);gap:32px}.rules-index{padding:20px}.rule-section{gap:12px;grid-template-columns:28px minmax(0,1fr)}}
@media(max-width:760px){.rules-page{padding-top:44px;padding-bottom:48px}.rules-heading{padding-bottom:28px}.rules-layout{grid-template-columns:minmax(0,1fr);padding-top:28px;gap:32px}.rules-index{position:static;flex-basis:auto}.rules-index a{font-size:14px}.rule-section{padding:28px 0}.rule-section h2{font-size:28px}.rule-number{padding-top:4px}}
/* Grundplan. */
.floorplan-page{margin:0 24px;padding:64px 0 88px}
.floorplan-heading{padding-bottom:36px;border-bottom:1px solid var(--line)}
.floorplan-heading h1{font-size:clamp(40px,4.2vw,64px);max-width:24ch;margin:0}
.floorplan-intro{display:flex;align-items:center;justify-content:space-between;gap:48px;padding:32px 0}
.floorplan-intro>p:first-child{max-width:70ch;color:#586059;margin:0}
.hall-dimensions{display:flex;flex-direction:column;flex-shrink:0;padding:16px 28px;border-left:1px solid var(--line);margin:0}
.hall-dimensions span{font-size:12px;color:var(--muted)}
.hall-dimensions strong{font-family:var(--serif);font-size:28px;font-weight:normal}
.floorplan-figure{margin:0}
.floorplan-placeholder{min-height:460px;padding:48px 24px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;border:1px dashed #a8b6a0;border-radius:3px;background:#eef0e8;color:#65775f}
.floorplan-placeholder h2{font-size:32px;letter-spacing:-.7px;margin:22px 0 12px;color:var(--ink)}
.floorplan-placeholder p{margin:0;max-width:38ch;font-size:15px}
.floorplan-figure figcaption{margin-top:12px;font-size:12px;color:var(--muted)}
@media(min-width:761px){.floorplan-page{margin-left:var(--page-gutter);margin-right:var(--page-gutter)}}
@media(max-width:760px){.floorplan-page{padding-top:44px;padding-bottom:48px}.floorplan-intro{flex-direction:column;align-items:flex-start;gap:24px}.hall-dimensions{padding:0 0 0 18px}.floorplan-placeholder{min-height:300px}.floorplan-heading{padding-bottom:28px}}
/* Den store sal. */
.hall-page{margin:0 24px;padding:64px 0 88px}
.hall-heading{padding-bottom:36px;border-bottom:1px solid var(--line)}
.hall-heading h1{font-size:clamp(40px,4.2vw,64px);margin:0}
.hall-intro{display:flex;align-items:center;justify-content:space-between;gap:48px;padding:32px 0}
.hall-intro>p:first-child{max-width:70ch;color:#586059;margin:0}
.hall-figure{margin:0}
.hall-placeholder{min-height:460px;padding:48px 24px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;border:1px dashed #a8b6a0;border-radius:3px;background:#eef0e8;color:#65775f}
.hall-placeholder h2{font-size:32px;letter-spacing:-.7px;margin:22px 0 12px;color:var(--ink)}
.hall-placeholder p{margin:0;max-width:38ch;font-size:15px}
.hall-figure figcaption{margin-top:12px;font-size:12px;color:var(--muted)}
@media(min-width:761px){.hall-page{margin-left:var(--page-gutter);margin-right:var(--page-gutter)}}
@media(max-width:760px){.hall-page{padding-top:44px;padding-bottom:48px}.hall-heading{padding-bottom:28px}.hall-intro{flex-direction:column;align-items:flex-start;gap:24px}.hall-placeholder{min-height:300px}}
/* Serviceoversigt med kolonneoverskrifter, der følger med under rulning. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.service-page{margin:0 24px;padding:64px 0 88px}
.service-heading{padding-bottom:36px;border-bottom:1px solid var(--line)}
.service-heading h1{font-size:clamp(40px,4.2vw,64px);margin:0}
.inventory-help{font-size:13px;color:var(--muted);margin:24px 0}
.inventory-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:15px}
.inventory-count{width:15%}.inventory-item{width:43%}.inventory-size{width:20%}.inventory-material{width:22%}
.inventory-table th,.inventory-table td{text-align:left;padding:16px 22px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;vertical-align:top}
.inventory-table thead th{position:sticky;top:0;z-index:2;background:var(--green);color:#fff;font-size:13px;font-weight:bold;border-bottom:0;box-shadow:0 1px 0 var(--green)}
.inventory-table thead th span{font-weight:normal;white-space:nowrap}
.inventory-table tbody th[scope=row]{font-weight:normal}
.inventory-table td{color:#586059}
.inventory-table .item-count{font-weight:bold;color:var(--ink);font-variant-numeric:tabular-nums}
.inventory-category th{padding-top:24px;padding-bottom:18px;background:#e9ece3;font-size:16px;font-weight:bold;color:var(--green)}
.inventory-table tbody tr:not(.inventory-category):nth-child(odd){background:#f3f3ed}
.inventory-notes{margin-top:32px;padding:28px 32px;background:#f0f0e9;border:1px solid #e2e3d9;border-radius:3px;display:flex;justify-content:space-between;align-items:center;gap:40px}
.inventory-notes section{max-width:72ch}
.inventory-notes h2{font-size:28px;margin:0 0 16px;letter-spacing:-.5px}
.inventory-notes section p{font-size:14px;color:#586059;margin:0 0 12px}
.inventory-notes section p:last-child{margin-bottom:0}
@media(min-width:761px){.service-page{margin-left:var(--page-gutter);margin-right:var(--page-gutter)}}
@media(max-width:760px){.service-page{padding-top:44px;padding-bottom:48px}.service-heading{padding-bottom:28px}.inventory-table{font-size:12px}.inventory-table th,.inventory-table td{padding:12px 8px}.inventory-table thead th{font-size:11px}.inventory-count{width:16%}.inventory-item{width:35%}.inventory-size{width:23%}.inventory-material{width:26%}.inventory-category th{font-size:14px;padding-top:18px}.inventory-notes{padding:24px;flex-direction:column;align-items:flex-start;gap:24px}}
/* Aktiv kategori bliver under kolonneoverskrifterne. */
.inventory-table thead th{z-index:3}
.inventory-category th{position:sticky;top:var(--inventory-header-height,55px);z-index:2;box-shadow:0 1px 0 var(--line)}
@media(max-width:760px){.inventory-category th{top:var(--inventory-header-height,63px)}}