@font-face{font-family:"Open Sans";src:url(/assets/fonts/open-sans.woff2) format("woff2");font-weight:300 800;font-display:swap}
@font-face{font-family:"Cabin";src:url(/assets/fonts/cabin.woff2) format("woff2");font-weight:400 700;font-display:swap}

:root{--text:#444;--muted:#888;--line:#f2f2f2;--field:#f8f8f8;--max:1310px;--gutter:clamp(16px,8.5vw,115px)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--text);font:16px/1.65 "Open Sans",Helvetica,Arial,sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:Cabin,"Open Sans",Helvetica,Arial,sans-serif;color:#000;font-weight:400;margin:0}
p{margin:0 0 .85em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.center{text-align:center}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.text a{color:#000}
.text a:hover{color:var(--muted)}

/* Sidhuvud */
.site-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:116px}
.logo img{width:auto;height:100px}
.nav{display:flex}
.nav a{font-weight:600;font-size:14px;color:var(--muted);text-decoration:none;padding:0 13px;border-left:1px solid #e1e1e1;line-height:1}
.nav a:first-child{border-left:0}
.nav a:last-child{padding-right:0}
.nav a:hover,.nav a[aria-current]{color:#000}
.menu-toggle{display:none}

/* Bildspel */
.slider{position:relative;max-width:var(--max);margin:0 auto;aspect-ratio:1500/630;overflow:hidden;background:#eee}
.slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s}
.slides img.active{opacity:1}
.slider button{position:absolute;top:50%;width:60px;height:60px;margin-top:-30px;border:1px solid rgba(255,255,255,.7);background:rgba(0,0,0,.15);cursor:pointer;opacity:.85}
.slider button:hover{opacity:1;background:rgba(0,0,0,.35)}
.slider button::after{content:"";position:absolute;top:50%;left:50%;width:11px;height:11px;border:solid #fff;border-width:0 2px 2px 0}
.slider .prev{left:22px}
.slider .next{right:22px}
.slider .prev::after{transform:translate(-30%,-50%) rotate(135deg)}
.slider .next::after{transform:translate(-70%,-50%) rotate(-45deg)}
.dots{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:4px}
.slider .dots button{position:static;margin:0;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.25);background:rgba(255,255,255,.6);opacity:1}
.slider .dots button[aria-current]{background:#fff}

/* Startsidans text */
.intro{padding-top:70px;padding-bottom:70px}
.intro h1{font-size:40px;line-height:1.1;letter-spacing:1px;text-transform:uppercase;text-align:center;max-width:900px;margin:0 auto 64px}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:6%}
.fb-card{display:inline-flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid #e5e5e5;text-decoration:none;font-size:14px;line-height:1.4;color:var(--muted)}
.fb-card strong{color:#000;font-weight:600}
.fb-card:hover{border-color:#bbb}

/* Om oss och Kontakt: två halvor */
.split{display:grid;grid-template-columns:1fr 1fr;max-width:var(--max);margin:0 auto;min-height:430px}
.split-img{background:center left/contain no-repeat;min-height:430px}
.split-text{padding:50px 100px;align-self:center}
.split-form{padding:30px 0;align-self:center}
.split h2{font-size:20px;line-height:1.1;color:#222;margin-bottom:20px}

/* Formulär */
.contact{display:grid;gap:12px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px}
.contact input,.contact textarea,.search input{width:100%;font:inherit;color:var(--text);background:var(--field);border:1px solid #e1e1e1;padding:12px 13px;border-radius:0}
.row3 input{text-align:center}
.contact textarea{resize:vertical;display:block}
.contact input:focus,.contact textarea:focus,.search input:focus{outline:2px solid #000;outline-offset:-2px;background:#fff}
.contact ::placeholder,.search ::placeholder{color:#777}
.contact .hp{position:absolute;left:-9999px}
button[type=submit]{font:600 14px "Open Sans",Arial,sans-serif;color:#fff;background:#000;border:0;padding:16px 36px;cursor:pointer}
button[type=submit]:hover{background:#333}
.status{background:var(--field);border-left:3px solid #000;padding:12px 16px;margin-bottom:12px}

/* 404 */
.page{padding-top:70px;padding-bottom:70px;min-height:50vh}
.page h1{font-size:32px;text-transform:uppercase;letter-spacing:1px;margin-bottom:24px}
.search{display:flex;gap:8px;max-width:480px}
.search label{flex:1}

/* Sidfot */
.site-footer{border-top:1px solid var(--line);margin-top:30px;color:var(--muted)}
.site-footer .cols{padding-top:45px;padding-bottom:30px}
.site-footer h3{font-size:17.6px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-bottom:10px}
.site-footer a{text-decoration:none}
.site-footer a:hover{color:#000}
.socket{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding-top:15px;padding-bottom:15px}
.fb-icon{color:#777;display:block;padding:8px}

/* Fade in när sidan laddas */
@media (prefers-reduced-motion:no-preference){
  main>*{animation:upp .7s ease-out both}
  @keyframes upp{from{opacity:0;transform:translateY(20px)}}
}

/* Surfplatta */
@media (max-width:989px){
  .split-text{padding:40px var(--gutter)}
  .intro h1{font-size:32px}
}

/* Mobil */
@media (max-width:767px){
  .header-inner{height:80px}
  .logo img{height:64px}
  .menu-toggle{display:block;position:relative;width:44px;height:44px;border:0;background:none;cursor:pointer;margin-right:-10px}
  .menu-toggle span:first-child,.menu-toggle span:first-child::before,.menu-toggle span:first-child::after{position:absolute;left:11px;width:22px;height:2px;background:#000;transition:transform .2s}
  .menu-toggle span:first-child{top:21px}
  .menu-toggle span:first-child::before,.menu-toggle span:first-child::after{content:"";left:0}
  .menu-toggle span:first-child::before{top:-7px}
  .menu-toggle span:first-child::after{top:7px}
  .menu-toggle[aria-expanded=true] span:first-child{background:transparent}
  .menu-toggle[aria-expanded=true] span:first-child::before{transform:translateY(7px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:first-child::after{transform:translateY(-7px) rotate(-45deg)}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 8px 16px rgba(0,0,0,.06)}
  .nav.open{display:flex}
  .nav a,.nav a:last-child{border:0;border-top:1px solid var(--line);padding:18px var(--gutter);font-size:16px}
  .slider button.prev,.slider button.next{display:none}
  .intro{padding-top:40px;padding-bottom:40px}
  .intro h1{font-size:26px;margin-bottom:32px}
  .cols,.split{grid-template-columns:1fr}
  .cols{gap:24px}
  .split-img{min-height:0;aspect-ratio:3/2;background-position:center;background-size:cover}
  .split-form{padding:10px var(--gutter) 40px}
  .row3{grid-template-columns:1fr;gap:12px}
  .row3 input{text-align:left}
  .site-footer .cols{gap:10px;padding-top:30px}
  .socket{gap:12px}
}
