@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/latin-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/latin-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/latin-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/latin-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--paper:#f8f4ee;--ink:#382e2b;--wine:#692f43;--muted:#6b615c;--line:#d9cdc3;--rose:#eee0dc;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #a65f22;outline-offset:5px}.skip{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}header{max-width:1360px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font:30px var(--serif);text-decoration:none;white-space:nowrap}.wordmark span{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:3px;margin-top:9px}nav{display:flex;align-items:center;gap:32px;font-size:13px}nav a{text-decoration:none;padding:10px 0}nav .nav-contact{border:1px solid var(--wine);padding:9px 20px}.hero{max-width:1360px;margin:auto;display:grid;grid-template-columns:1.08fr 1fr;padding:42px 5% 66px;gap:55px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;margin:0 0 24px;color:var(--wine)}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:clamp(46px,4.7vw,72px);line-height:1.12;letter-spacing:-2px;margin-bottom:27px}em{color:var(--wine);font-weight:400}h2{font-size:clamp(36px,3.6vw,53px);line-height:1.18;letter-spacing:-1px;margin-bottom:24px}h3{font-size:29px;line-height:1.3}.hero-copy>p:not(.eyebrow):not(.hero-note){max-width:440px}.lead{font-size:19px;line-height:1.55;margin-bottom:18px}.hero-copy>p{color:var(--muted)}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin:30px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--wine);color:#fff;border:1px solid var(--wine);text-decoration:none;padding:14px 23px;font-size:13px;cursor:pointer;min-height:48px}.button:hover{background:#4e2031}.text-link{font-size:13px}.hero-note{font-size:11px;letter-spacing:.6px;margin:32px 0 0}.hero-image{margin:0;position:relative;padding:0 0 22px 20px}.hero-image:before{content:'';position:absolute;inset:20px 20px 0 0;border:1px solid #bfa698;border-radius:48% 48% 0 0}.hero-image img{position:relative;display:block;width:100%;height:560px;object-fit:cover;object-position:52% center;border-radius:48% 48% 0 0}.hero-image figcaption{position:absolute;bottom:42px;right:20px;background:var(--paper);padding:14px 22px;font:24px var(--serif)}.hero-image figcaption span{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:1.4px;margin-top:8px}.ribbon{border-block:1px solid var(--line);display:flex;justify-content:center;gap:65px;padding:23px 20px;font:18px var(--serif);color:var(--wine)}.ribbon i{font-style:normal}.section{padding:85px max(6%,calc((100vw - 1190px)/2));scroll-margin-top:10px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:42px}.section-heading h2{margin:0}.section-heading>p{max-width:345px;color:var(--muted);font-size:14px}.occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:27px}.occasion-grid article{border-top:1px solid var(--line);padding-top:25px;display:flex;flex-direction:column}.number{font-size:9px;letter-spacing:1.6px;color:var(--wine);margin-bottom:28px}.occasion-grid h3{font-size:28px;margin-bottom:20px}.occasion-grid p{font-size:14px;color:var(--muted);margin-bottom:30px}.occasion-grid a{margin-top:auto;font-size:12px;text-decoration:none;border-bottom:1px solid var(--line);padding:10px 0;display:flex;justify-content:space-between;gap:6px}.about{background:#eee8df;display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.about>div:last-child{max-width:590px}.large-copy{font:26px/1.55 var(--serif)}.signature{font:italic 49px var(--serif);color:var(--wine)}.editor-note{font-size:12px;color:var(--muted);border-left:2px solid #bfa698;padding-left:15px;margin-top:30px}.listen{background:#382d2b;color:var(--paper)}.listen .eyebrow,.listen em{color:#e7bcb2}.listen .section-heading>p{color:#d4c7c0}.player-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.player-card{border:1px solid #695550;padding:25px}.player-title{display:flex;justify-content:space-between}.player-title h3{font-size:23px;margin-bottom:20px}.player-title span{color:#c9aaa0;font-size:12px}.embed-placeholder{min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#453733;padding:15px;text-align:center}.embed-placeholder p{font:20px var(--serif)}button[data-player],#copy{background:transparent;color:inherit;border:1px solid currentColor;padding:12px 18px;cursor:pointer;font-size:13px;min-height:44px}.player-card>a{display:inline-block;font-size:12px;margin-top:18px}.player-card iframe{border:0;width:100%;height:352px}.youtube{display:flex;gap:22px;align-items:center;padding:28px 0;text-decoration:none;border-bottom:1px solid #695550}.youtube>span:last-child{margin-left:auto;font-size:26px}.play-icon{border:1px solid #8e736b;border-radius:50%;width:52px;height:52px;display:grid;place-items:center;font-size:26px}.youtube small{font-size:9px;letter-spacing:2px;display:block;color:#d5b9ae}.youtube strong{font:24px var(--serif);display:block;margin-top:6px}.privacy-note{color:#d4c7c0;font-size:11px;max-width:730px;margin:24px 0 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:40px}.steps span{font:italic 25px var(--serif);color:var(--wine)}.steps h3{font-size:22px;margin:16px 0}.steps p{font-size:14px;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1.15fr;gap:90px;background:var(--rose)}.contact-details{margin:35px 0}.contact-details strong,.contact-details span{display:block;font-size:13px}.contact-details strong{margin-bottom:5px}.contact-details span{color:var(--muted)}.contact-notice{max-width:360px;font-size:12px;color:var(--muted)}label{display:block;font-size:12px;margin-bottom:18px}input,textarea,select{display:block;width:100%;background:#f9f5f0;border:1px solid #b7a59c;border-radius:0;padding:12px;margin-top:6px;color:var(--ink);font-size:15px;min-width:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-note{font-size:11px;margin-top:12px}#draft-box{margin-top:25px}#copy-status{font-size:13px}footer{padding:35px 6%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer .wordmark{font-size:23px}footer div{display:flex;gap:20px;font-size:12px}footer p{font-size:11px;margin:0}a:hover{text-decoration:underline} .button:hover{text-decoration:none}
@media(min-width:1500px){.hero-image img{height:610px}}@media(max-width:950px){.hero{gap:30px}.hero-image img{height:490px}.hero h1{font-size:50px}.occasion-grid{grid-template-columns:1fr 1fr;gap:35px}.about,.contact{gap:40px}.section{padding:65px 6%}.steps{gap:25px}footer{flex-wrap:wrap}}@media(max-width:650px){header{padding:22px 6%;display:block}.wordmark{font-size:27px}nav{justify-content:space-between;gap:14px;margin-top:20px;font-size:12px}nav .nav-contact{padding:7px 12px}.hero{padding:28px 6% 45px;grid-template-columns:1fr;gap:35px}.hero h1{font-size:48px;letter-spacing:-1.8px}.hero-image{max-width:460px;width:100%;justify-self:center}.hero-image img{height:auto;aspect-ratio:1/1.08}.hero-note{margin-top:20px}.ribbon{gap:17px;font-size:15px}.ribbon i{font-size:12px}.section{padding:55px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:24px}.occasion-grid{gap:28px 20px}.occasion-grid h3{font-size:24px}.occasion-grid p{font-size:13px}.occasion-grid a{font-size:11px}.number{letter-spacing:.6px;font-size:8px}.about,.contact{grid-template-columns:1fr;gap:30px}.large-copy{font-size:24px}.player-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr;gap:18px}.steps>div{border-top:1px solid var(--line);padding-top:20px}.form-row{grid-template-columns:1fr;gap:0}footer{display:block}footer div{margin:25px 0}.youtube strong{font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Kompletteringar i samma visuella system */
[hidden]{display:none!important}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset:disabled{opacity:.55}button:disabled{cursor:not-allowed;opacity:.55}.small{font-size:12px}.muted{color:var(--muted)}.business-note{font-size:13px;color:var(--wine)}.hero-image picture{display:block}.concerts{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;border-bottom:1px solid var(--line)}.video-card .player-title{min-height:80px;gap:15px}.video-card h3{font-size:24px}.video-shell{aspect-ratio:16/9;min-height:200px;position:relative;background:#453733}.video-shell iframe{width:100%;height:100%;position:absolute;inset:0;border:0}.video-load{width:100%;height:100%;min-height:200px;color:var(--paper);background:radial-gradient(ellipse at center,#68444b 0,#453733 75%);border:1px solid #8e736b;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:15px}.video-symbol{font-size:45px;line-height:1}.video-load small{font-size:11px;color:#e4c8c0}.music-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:28px;font-size:14px}.social-pending{font-size:12px}.testimonials{background:#eee8df}.quotes{display:grid;grid-template-columns:1fr 1fr;gap:35px}.quotes figure{margin:0;border-top:1px solid #c9b7ac;padding:25px 0}.quotes blockquote{font:italic 28px/1.6 var(--serif);margin:0 0 20px;color:var(--wine);overflow-wrap:anywhere}.quotes figcaption{font-size:12px}.review-details{margin-top:30px;border-block:1px solid #c9b7ac;padding:22px 0}.review-details summary{font:23px var(--serif);cursor:pointer;padding:8px 0}.review-details>p{max-width:760px}.review-details form{max-width:760px;margin-top:25px}.checkbox{display:flex;align-items:start;gap:12px;font-size:12px}.checkbox input{width:19px;height:19px;flex:none;margin:4px 0;accent-color:var(--wine)}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.admin-main{max-width:1150px;margin:auto}.admin-main h1{font-size:42px;line-height:1.25}.login-form{max-width:430px}.admin-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.admin-toolbar button,.admin-card>button{font:13px 'DM Sans',Arial,sans-serif;background:var(--paper);border:1px solid var(--wine);color:var(--wine);padding:11px 15px;cursor:pointer;min-height:44px}.admin-card{padding:25px;border:1px solid var(--line);margin:20px 0}.admin-card h3{font-size:24px}.submitted-text{white-space:pre-wrap;overflow-wrap:anywhere}.admin-inquiries-heading{margin-top:60px}.privacy-page{max-width:1000px;margin:auto}.privacy-page h1{font-size:50px}.privacy-page h2{font-size:30px;margin-top:38px}footer div{flex-wrap:wrap}.occasion-grid h3{font-size:25px}.video-load:hover{background:#68444b}#review-status,#inquiry-status{overflow-wrap:anywhere}#review-challenge,#inquiry-challenge{margin:16px 0}.contact a{overflow-wrap:anywhere}
@media(max-width:950px){.concerts{gap:40px}.nav-contact{max-width:175px;text-align:center;line-height:1.4}}@media(max-width:650px){.concerts{grid-template-columns:1fr;gap:25px}.quotes{grid-template-columns:1fr;gap:10px}.quotes blockquote{font-size:25px}.video-card .player-title{min-height:auto}.video-card h3{font-size:23px}.occasion-grid{grid-template-columns:1fr}.occasion-grid h3{font-size:27px}.number{font-size:10px;letter-spacing:1px}.occasion-grid p{font-size:15px}.occasion-grid a{font-size:13px;min-height:44px;align-items:center}.admin-main h1{font-size:35px}.privacy-page h1{font-size:40px}nav{gap:10px;font-size:11px}nav .nav-contact{padding:7px;max-width:120px}.eyebrow{letter-spacing:1.5px}}
.qa-panel{position:fixed;bottom:0;left:0;right:0;background:#fff;color:#222;padding:10px;font:12px Arial,sans-serif;z-index:1000;border-top:2px solid #692f43}

.player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-card{min-width:0}.video-shell{width:100%}nav a{min-height:44px;display:inline-flex;align-items:center}footer div a{min-height:44px;display:inline-flex;align-items:center}@media(max-width:650px){.player-grid{grid-template-columns:minmax(0,1fr)}input,textarea,select{font-size:16px}.hero h1{font-size:clamp(40px,12vw,48px)}}
dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:28px;width:min(680px,calc(100% - 30px));max-height:calc(100% - 30px);overflow:auto}dialog::backdrop{background:rgb(35 24 27 / .65)}.dialog-close{float:right;border:1px solid var(--wine);background:transparent;color:var(--wine);padding:8px 14px;min-height:44px;cursor:pointer;margin:0 0 20px 20px}dialog h3{clear:both;font-size:30px}#draft-box{margin:auto}#draft-box textarea{max-height:40vh}.review-details>button{border:0;background:transparent;color:var(--wine);font:23px var(--serif);padding:10px 0;cursor:pointer;min-height:44px}
.concert-image{grid-column:1/-1;margin:18px 0 0}.concert-image img{display:block;width:100%;height:auto;aspect-ratio:1280/877;object-fit:cover}.concert-image figcaption{font-size:12px;color:var(--muted);margin-top:10px}

.instagram-section{display:grid;grid-template-columns:1.1fr 1fr;gap:32px 80px;align-items:center;background:var(--paper)}.instagram-intro>p:last-child{max-width:460px;color:var(--muted)}.instagram-panel{border:1px solid #c9b7ac;background:#eee0dc;text-align:center;padding:36px 25px}.instagram-symbol{display:block;font:48px/1 var(--serif);color:var(--wine);margin-bottom:18px}.instagram-handle{font:28px var(--serif);margin-bottom:15px;color:var(--wine)}.instagram-panel>p:not(.instagram-handle){font-size:14px}.instagram-link-note{margin:15px 0 0;font-size:11px!important;color:var(--muted)}.instagram-booking{grid-column:1/-1;border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.instagram-booking p{margin:0;font:23px var(--serif)}@media(max-width:650px){.instagram-section{grid-template-columns:minmax(0,1fr);gap:25px}.instagram-booking{display:block}.instagram-booking p{margin-bottom:12px}.instagram-panel{padding:30px 20px}.instagram-panel .button{max-width:100%}}

.concert-youtube{grid-column:1/-1;display:flex;gap:30px;align-items:center;padding:40px;background:var(--rose);border:1px solid #c9b7ac;text-decoration:none}.concert-youtube .eyebrow{display:block;margin:0 0 12px}.concert-youtube strong{display:block;font:38px/1.3 var(--serif);color:var(--wine);margin-bottom:12px}.concert-youtube>span:nth-child(2)>span:last-child{font-size:13px;color:var(--muted)}.concert-play{flex:none;width:80px;height:80px;border:1px solid var(--wine);border-radius:50%;display:grid;place-items:center;color:var(--wine);font-size:40px}.concert-arrow{font-size:30px;margin-left:auto;color:var(--wine)}.concert-youtube:hover{background:#e8d6d0;text-decoration:none}@media(max-width:650px){.concert-youtube{padding:25px 20px;gap:18px}.concert-play{width:50px;height:50px;font-size:30px}.concert-youtube strong{font-size:27px}.concert-arrow{font-size:23px}.concert-youtube>span:nth-child(2)>span:last-child{font-size:12px}}
.concert-youtube>span:nth-child(2){min-width:0}.concert-youtube strong{overflow-wrap:anywhere}@media(max-width:650px){.concert-youtube .concert-arrow{display:none}}

.video-load{position:relative;overflow:hidden;isolation:isolate}.video-load img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.video-load::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(25,15,20,.7));z-index:-1}.video-load .video-symbol{background:rgba(35,20,26,.75);border:1px solid rgba(255,255,255,.8);border-radius:50%;width:60px;height:60px;display:grid;place-items:center;font-size:38px}.video-load>span:not(.video-symbol),.video-load small{background:rgba(35,20,26,.8);padding:2px 8px;color:white}.video-load:hover .video-symbol{background:var(--wine)}
