@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap');
:root{--ink:#22382f;--cream:#f5f1e7;--paper:#fffdf7;--orange:#d79656;--deep:#253f36}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',sans-serif}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #f08f40;outline-offset:4px}.skip{position:absolute;top:-80px;left:16px;z-index:5;background:white;padding:12px}.skip:focus{top:10px}.header{height:100px;padding:0 6%;display:flex;align-items:center;gap:40px;background:var(--cream)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:12px;letter-spacing:.08em;line-height:1.18;min-width:205px}.brand b{font-weight:700}.mark{font:700 57px Georgia;line-height:1}.header nav{display:flex;gap:32px;margin-left:auto}.header nav a{text-decoration:none;font-size:14px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:40px;text-decoration:none;padding:17px 22px;font-size:14px;font-weight:700;min-height:52px}.button.dark{color:white;background:var(--ink)}.button.cream{color:var(--ink);background:var(--cream)}.button:hover,.card a:hover{filter:brightness(.92)}.hero{min-height:670px;height:min(760px,76vh);position:relative;color:white;display:flex;align-items:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background:#526f6b url('bilder/674c46_c432583660c04649ab4d7ac858065c1d~mv2.png') center 45%/cover no-repeat}.hero-shade{background:linear-gradient(90deg,rgba(17,40,32,.88),rgba(17,40,32,.43) 55%,rgba(17,40,32,.12))}.hero-copy{position:relative;margin-left:8%;max-width:750px}.eyebrow{font-weight:700;font-size:11px;letter-spacing:.16em}.light{color:#eee3c8}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.045em;line-height:1.04;margin:20px 0}.hero h1{font-size:clamp(52px,7.2vw,108px);font-weight:600}.hero h1 em,h2 em{font-weight:600}.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.6;max-width:430px;margin-bottom:30px}.hero-side{position:absolute;right:4%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.2em}.hero-caption{position:absolute;bottom:30px;right:6%;font-size:10px;font-weight:bold;letter-spacing:.13em}.ticker{display:flex;justify-content:space-around;gap:22px;overflow:hidden;white-space:nowrap;padding:19px;background:#d7985d;color:#20372e;font-size:11px;font-weight:700;letter-spacing:.13em}.section{padding:110px 8%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-head h2,.place h2,.membership h2,.visit h2,.about h2,.final-cta h2{font-size:clamp(42px,5.5vw,76px)}.section-head>p{max-width:360px;line-height:1.7}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{background:#e6e3d6;padding:28px 30px 30px;min-height:360px;display:flex;flex-direction:column}.card.amber{background:#dfad77}.card.deep{background:#365448;color:#fffdf7}.card-top{display:flex;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.1em}.card h3{font-family:'Playfair Display',Georgia,serif;font-size:38px;line-height:1.1;margin:44px 0 16px;letter-spacing:-.03em}.card p{line-height:1.6;max-width:320px;margin:0 0 28px}.card a{margin-top:auto;border-top:1px solid currentColor;padding-top:19px;text-decoration:none;font-weight:700;font-size:14px;display:flex;justify-content:space-between}.booking-note{font-size:13px;margin:18px 0 0}.place{display:grid;grid-template-columns:1fr 1fr;min-height:590px;background:#e9e6d9}.place-img{background:#65766c url('bilder/674c46_da7d6108fd9f4d34b62e34372ffa717c~mv2.jpeg') center/cover no-repeat;min-height:480px}.place-copy{padding:80px 13%;align-self:center}.place-copy p:not(.eyebrow){line-height:1.75;max-width:450px}.text-link{display:inline-block;font-weight:700;text-decoration:none;border-bottom:1px solid;padding-bottom:8px;margin-top:20px}.membership{background:#263f35;color:white;display:grid;grid-template-columns:1fr 1fr;gap:70px;position:relative;overflow:hidden}.member-copy{align-self:center;max-width:470px;font-size:18px;line-height:1.7}.member-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.member-link{font-size:14px;font-weight:bold}.seal{position:absolute;right:5%;top:26px;border:1px solid #a4b5a7;border-radius:50%;width:100px;height:100px;display:grid;place-content:center;text-align:center;font-weight:700;font-size:11px;transform:rotate(14deg)}.visit{display:grid;grid-template-columns:1fr 1fr;gap:10%}.visit>div:first-child>p:not(.eyebrow){max-width:380px;line-height:1.7}.faqs{padding-top:30px}.faqs details{border-bottom:1px solid #aeb6a7}.faqs details:first-child{border-top:1px solid #aeb6a7}.faqs summary{cursor:pointer;list-style:none;padding:23px 30px 23px 0;font-weight:700;position:relative}.faqs summary::-webkit-details-marker{display:none}.faqs summary:after{content:'+';position:absolute;right:4px;font-size:23px;top:17px}.faqs details[open] summary:after{content:'−'}.faqs p{line-height:1.6;max-width:520px}.about{min-height:500px;background:linear-gradient(90deg,rgba(24,44,36,.92),rgba(24,44,36,.35)),url('bilder/674c46_365789c8e80d4ea3946a460fa13582c0~mv2.jpg') center/cover;color:white;display:flex;align-items:center}.about-inner{padding:80px 8%;max-width:760px}.about p:not(.eyebrow){line-height:1.7;font-size:17px;max-width:550px}.final-cta{display:flex;align-items:end;justify-content:space-between;gap:30px}.final-cta h2{margin-bottom:0}footer{background:#182d26;color:#f5f1e7;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding:70px 8% 25px;font-size:14px}footer h2{font:700 12px 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;margin:0 0 25px}footer a:not(.brand){display:block;margin:12px 0;text-decoration:none}footer p{line-height:1.7}.copyright{grid-column:1/-1;border-top:1px solid #829388;padding-top:24px;font-size:12px}.footer-brand{color:white}@media(max-width:800px){.header{height:76px;padding:0 5%;gap:12px}.header nav{display:none}.nav-book{margin-left:auto;padding:12px 14px;gap:10px}.brand{min-width:0;font-size:10px}.mark{font-size:46px}.hero{height:670px;min-height:580px}.hero-copy{margin:0 7%}.hero h1{font-size:clamp(52px,10vw,78px)}.hero-side{display:none}.section{padding:75px 6%}.section-head,.final-cta{display:block}.section-head>p{margin-top:25px}.cards{grid-template-columns:1fr}.card{min-height:290px}.card h3{margin-top:30px}.place,.membership,.visit{grid-template-columns:1fr}.place-img{min-height:360px}.place-copy{padding:65px 8%}.membership,.visit{gap:25px}.member-copy{font-size:16px}.seal{width:75px;height:75px;font-size:9px;right:6%}.about{min-height:450px}.final-cta .button{margin-top:25px}footer{grid-template-columns:1fr 1fr;gap:30px;padding:60px 6% 25px}.footer-brand{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mobile-menu{display:none}@media(max-width:800px){.mobile-menu{display:block;margin-left:auto;position:relative}.mobile-menu summary{cursor:pointer;font-size:14px;font-weight:700;list-style:none;padding:14px}.mobile-menu nav{display:flex;position:absolute;z-index:5;right:0;top:100%;min-width:230px;padding:16px;background:#f5f1e7;box-shadow:0 8px 20px #182d2633;flex-direction:column;gap:0}.mobile-menu nav a{padding:12px 8px}.nav-book{margin-left:0}}

/* Farger og logo fra Holmestrand badstuforenings grafiske profil. */
:root{--ink:#3f3f3f;--cream:#f5f6f5;--paper:#fff;--orange:#3dd2cc;--deep:#3f3f3f}
a:focus-visible,summary:focus-visible{outline-color:#087c78}
.header{background:#3f3f3f;color:#fff}
.brand{min-width:0;width:260px;flex-shrink:0}.brand img{display:block;width:100%;height:auto}
.header .button.dark{background:#3dd2cc;color:#202c2c}.header .button.dark:hover{filter:brightness(1.08)}
.hero-shade{background:linear-gradient(90deg,rgba(35,35,35,.88),rgba(35,35,35,.45) 55%,rgba(35,35,35,.13))}
.light{color:#b4f3ef}.ticker{background:#3dd2cc;color:#253737}
.card{background:#e6eceb}.card.amber{background:#bdebe8}.card.deep{background:#3f3f3f;color:#fff}
.place{background:#e8eeee}.membership{background:#3f3f3f}.seal{border-color:#3dd2cc;color:#b4f3ef}
.faqs details,.faqs details:first-child{border-color:#aebdbb}
.about{background-image:linear-gradient(90deg,rgba(40,40,40,.93),rgba(40,40,40,.35)),url('bilder/674c46_365789c8e80d4ea3946a460fa13582c0~mv2.jpg')}
footer{background:#333;color:#f5f6f5}.copyright{border-color:#808b89}.footer-brand{width:290px;max-width:100%}
@media(max-width:800px){.brand{width:min(42vw,205px)}.footer-brand{width:240px;max-width:100%}.mobile-menu nav{background:#3f3f3f;box-shadow:0 8px 20px #0005}.header .nav-book{font-size:12px}}
@media(max-width:380px){.header{gap:3px}.brand{width:38vw}.mobile-menu summary{padding:10px}.header .nav-book{padding:10px}}
.subpage{background:#f5f6f5;min-height:60vh}.page-intro{background:#3f3f3f;color:white;padding:72px 8% 65px}.page-intro .eyebrow{color:#3dd2cc}.page-intro h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(42px,6vw,76px);line-height:1.08;letter-spacing:-.04em;margin:20px 0 0}.page-content{max-width:1000px;margin:auto;padding:65px 8% 90px;line-height:1.75;font-size:17px;overflow-wrap:anywhere}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6{font-family:'DM Sans',sans-serif;line-height:1.25;letter-spacing:-.02em;margin:2em 0 .65em;font-size:clamp(21px,2.5vw,30px)}.page-content h1:first-child,.page-content h2:first-child{margin-top:0}.page-content p{margin:.8em 0}.page-content li{margin:.4em 0}.page-content a{color:#155e5c;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:700}.page-content .page-action{display:inline-block;background:#3f3f3f;color:white;text-decoration:none;padding:13px 18px;margin:4px 0}.page-content .page-action:hover{background:#155e5c}.image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:48px 0}.image-grid img{width:100%;height:230px;object-fit:cover}.image-grid.sponsors{background:#3f3f3f;padding:20px;align-items:center}.image-grid.sponsors img{height:auto;max-height:160px;object-fit:contain}.source-block+ .source-block{margin-top:1.4em}@media(max-width:800px){.page-intro{padding:50px 6%}.page-content{padding:45px 6% 65px;font-size:16px}}
.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px;margin:40px 0 60px}.person-card{background:#e8eeee;padding-bottom:20px}.person-card img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.page-content .person-card h2{font:700 20px 'DM Sans',sans-serif;letter-spacing:0;margin:20px 20px 8px}.person-card p{margin:0 20px;line-height:1.55;font-size:15px}@media(max-width:700px){.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.page-content .person-card h2{font-size:18px;margin:14px 14px 6px}.person-card p{margin:0 14px;font-size:14px}}@media(max-width:400px){.people-grid{grid-template-columns:1fr}}
/* Større og tydeligere logo i toppfeltet. */
.header{gap:24px}.header>.brand{width:clamp(250px,26vw,350px)}.header nav{gap:clamp(14px,2vw,28px)}
@media(max-width:1050px) and (min-width:801px){.header{padding:0 4%;gap:14px}.header>.brand{width:220px}.header nav{gap:14px}.header nav a{font-size:13px}.header .nav-book{padding:15px 14px;gap:12px}}
@media(max-width:800px){.header{gap:8px}.header>.brand{width:min(48vw,240px)}.mobile-menu nav{gap:0}}
@media(max-width:380px){.header{gap:3px}.header>.brand{width:42vw}}
/* La aktivitetenes navn lede, og gjør bestillingslenkene lettere. */
.activities-page .activity-title{border-top:1px solid #c4d2d0;margin-top:36px;padding-top:26px}
.activities-page .page-content .activity-title h2{font-size:clamp(23px,2.6vw,29px);line-height:1.25;margin:0 0 12px;color:#343f3e}
.activities-page .activity-title + .source-block{margin-top:0}
.activities-page .page-content .page-action{background:transparent;color:#155e5c;padding:0 0 3px;margin:0;border-bottom:1px solid currentColor;text-decoration:none}
.activities-page .page-content .page-action:hover{background:transparent;color:#093f3d}
/* Fotografier fra foreningen gir undersidene en tydeligere forbindelse til fjorden. */
.page-intro{background-color:#303636;background-image:linear-gradient(90deg,rgba(22,30,29,.88),rgba(22,30,29,.55)),url('bilder/topp-fjord.jpg');background-size:cover;background-position:center 53%}
.page-intro.topp-badstue{background-image:linear-gradient(90deg,rgba(22,30,29,.88),rgba(22,30,29,.57)),url('bilder/topp-badstue.jpg');background-position:center 50%}
.page-intro.topp-fellesskap{background-image:linear-gradient(90deg,rgba(22,30,29,.88),rgba(22,30,29,.57)),url('bilder/topp-fellesskap.jpg');background-position:center 48%}
/* Felles uttrykk for bestillingslenker på hele nettstedet. */
.header .nav-book,.hero .button[href="#booking"],.final-cta .button[href="#booking"]{min-height:0;padding:0 0 3px;background:transparent;color:inherit;border-bottom:1px solid currentColor;gap:8px}
.header .nav-book:hover,.hero .button[href="#booking"]:hover,.final-cta .button[href="#booking"]:hover{filter:none;opacity:.78}
.cards .card a{border:0;border-bottom:1px solid currentColor;padding:0 0 3px;display:inline-flex;align-self:flex-start;gap:8px;justify-content:flex-start}
.cards .card a:hover{filter:none;opacity:.78}
footer a[href="#booking"],footer a[href$=".html#booking"]{text-decoration:underline;text-underline-offset:4px}
@media(max-width:800px){.header .nav-book{padding:0 0 3px}}
/* Bestilling i toppmenyen følger samme lenkestil som resten av nettstedet. */
.header .button.dark.nav-book{background:transparent;color:#fff;padding:0 0 3px;border-bottom:1px solid currentColor;white-space:nowrap}
.header .button.dark.nav-book:hover{background:transparent;filter:none;opacity:.78}
/* Samme diskrete lenkestil for bestilling, medlemskap og gavekort. */
.page-content .page-action{display:inline-block;background:transparent;color:#155e5c;padding:0 0 3px;margin:0;border-bottom:1px solid currentColor;text-decoration:none}
.page-content .page-action:hover{background:transparent;color:#093f3d}
.project-photo{display:block;width:100%;height:auto;max-height:440px;object-fit:cover;margin:32px 0 46px}
.image-grid.sponsors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 32px;padding:42px;justify-items:center;align-items:center;margin:24px 0 48px}
.image-grid.sponsors img{display:block;width:100%;max-width:175px;height:75px;max-height:none;object-fit:contain}
.image-grid.sponsors img.sponsor-round{max-width:90px;height:90px}
@media(max-width:600px){.image-grid.sponsors{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px;padding:28px 20px}.image-grid.sponsors img{max-width:145px;height:65px}.image-grid.sponsors img.sponsor-round{max-width:75px;height:75px}}
