/* Oj Choklad - komplett webbdesign */
:root{--cream:#f6f1e7;--cocoa:#2a150d;--caramel:#b8723a;--ink:#2a2016;--muted:#6b5c4c;--white:#fff}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{min-width:320px;font-family:"Work Sans",sans-serif;color:var(--ink);line-height:1.7;background:var(--cream)}img{max-width:100%;display:block}a{color:inherit}h1,h2{font-family:"Fraunces",serif;font-weight:600;line-height:1.12}.wrap{width:min(1120px,calc(100% - 48px));margin-inline:auto}
/* Navigation */
header{position:sticky;top:0;z-index:100;width:100%;background:rgba(246,241,231,.92);border-bottom:1px solid rgba(42,21,13,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background-color .3s ease,box-shadow .3s ease}header.scrolled{background:rgba(246,241,231,.97);box-shadow:0 4px 20px rgba(42,21,13,.10)}nav.wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:min-height .3s ease,padding .3s ease}header.scrolled nav.wrap{min-height:58px}.brand{font-family:"Fraunces",serif;font-size:1.25rem;font-weight:600;color:var(--cocoa);text-decoration:none;white-space:nowrap;transition:font-size .3s ease}header.scrolled .brand{font-size:1.08rem}.navlinks{display:flex;align-items:center;gap:28px;list-style:none;transition:gap .3s ease}header.scrolled .navlinks{gap:22px}.navlinks a{display:flex;align-items:center;min-height:44px;color:var(--muted);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s ease,font-size .3s ease,min-height .3s ease}header.scrolled .navlinks a{min-height:36px;font-size:.88rem}.navlinks a:hover,.navlinks a:focus-visible{color:var(--cocoa)}
/* Hero */
.hero{position:relative;min-height:calc(100svh - 82px);display:flex;align-items:center;overflow:hidden;isolation:isolate;border:0}.hero-slider,.hero-slide,.hero-overlay{position:absolute;inset:0}.hero-slider{z-index:-3;background:var(--cocoa)}.hero-slide{opacity:0;background-position:center;background-size:cover;background-repeat:no-repeat;transform:scale(1.04);transition:opacity 1.4s ease,transform 7s ease}.hero-slide.active{opacity:1;transform:scale(1.1)}.hero-slide:nth-child(1){background-image:url("ai.jpeg")}.hero-slide:nth-child(2){background-image:url("ai2.jpeg")}.hero-slide:nth-child(3){background-image:url("ai3.jpeg")}.hero-slide:nth-child(4){background-image:url("image11.jpeg")}.hero-overlay{z-index:-2;background:linear-gradient(90deg,rgba(17,8,4,.92) 0%,rgba(17,8,4,.82) 20%,rgba(17,8,4,.58) 45%,rgba(17,8,4,.22) 75%,rgba(17,8,4,.04) 100%)}.hero-content{max-width:800px;padding-block:clamp(72px,9vh,110px);padding-left:20px;color:var(--white);display:flex;flex-direction:column;justify-content:center}.eyebrow{margin-bottom:14px;color:#f2c894;font-size:.95rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.hero h1{max-width:10.5ch;margin-bottom:28px;color:var(--white);font-size:clamp(3.2rem,4.4vw,5.35rem);line-height:.98;letter-spacing:-.035em;text-wrap:balance}.hero .lead{max-width:38ch;color:rgba(255,255,255,.9);font-size:clamp(1rem,1.25vw,1.2rem)}.quick-facts{display:flex;flex-wrap:wrap;gap:48px;margin-top:38px}.quick-fact{min-width:130px}.quick-facts .num{font-family:"Fraunces",serif;color:var(--white);font-size:2rem;line-height:1.1}.quick-facts .label{margin-top:5px;color:rgba(255,255,255,.72);font-size:.9rem}.slider-dots{position:absolute;right:max(24px,calc((100% - 1120px)/2));bottom:32px;z-index:3;display:flex;gap:10px}.slider-dot{width:10px;height:10px;padding:0;border:1px solid rgba(255,255,255,.85);border-radius:50%;background:transparent;cursor:pointer}.slider-dot.active{background:var(--white)}
/* Innehall */
section:not(.hero){padding:90px 0;border-top:1px solid rgba(42,21,13,.08);background:rgba(246,241,231,.98)}section h2{margin-bottom:24px;color:var(--cocoa);font-size:clamp(2rem,4vw,2.8rem)}section:not(.hero) p{max-width:68ch}section:not(.hero) p+p{margin-top:16px}
/* Galleri */
.gallery-note{margin-bottom:32px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-item{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:14px;background:#e9dec8;box-shadow:0 10px 28px rgba(42,21,13,.1)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.gallery-item:hover img{transform:scale(1.055)}
.site-footer{width:100%;padding:40px 20px;display:flex;justify-content:center;align-items:center;text-align:center;color:var(--muted);background:var(--cream);font-size:.9rem}
/* Kontakt */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.external-link{display:inline-flex!important;align-items:center;gap:9px}.external-link i{color:var(--caramel);font-size:.88em;transition:transform .2s ease}.external-link:hover i{transform:translate(2px,-2px)}.contact-heading{max-width:760px;margin-bottom:38px}.contact-heading>p:last-child{color:var(--muted)}.section-kicker{margin-bottom:6px;color:var(--caramel);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.business-contact-layout{display:grid;grid-template-columns:minmax(270px,.78fr) minmax(520px,1.55fr);gap:28px;align-items:stretch}.contact-people-card,.callback-card,.contact-map-card{border:1px solid rgba(42,21,13,.08);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 16px 45px rgba(42,21,13,.09)}.contact-people-card{display:flex;flex-direction:column;justify-content:flex-start;padding:38px 34px}.contact-person{min-width:0}.contact-role{margin-bottom:7px!important;color:var(--caramel);font-size:.78rem;font-weight:600;letter-spacing:.08em;line-height:1.45;text-transform:uppercase;overflow-wrap:anywhere}.contact-person h3,.callback-card h3{margin-bottom:14px;color:var(--cocoa);font-family:"Fraunces",serif;font-size:clamp(1.38rem,2vw,1.75rem);line-height:1.16}.contact-person a{display:block;width:fit-content;margin-top:7px;color:var(--muted);text-decoration:none;overflow-wrap:anywhere}.contact-person a:hover{color:var(--caramel)}.contact-divider{height:1px;margin:30px 0;background:rgba(42,21,13,.1)}.callback-card{padding:38px}.callback-card-heading{margin-bottom:26px}.callback-card-heading>p:last-child{color:var(--muted);font-size:.94rem}.callback-form{display:grid;gap:18px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-field{display:grid;gap:7px}.form-field label{color:var(--cocoa);font-size:.86rem;font-weight:600}.form-field label span{color:var(--caramel)}.form-field input,.form-field select,.form-field textarea{width:100%;min-width:0;border:1px solid rgba(42,21,13,.16);border-radius:11px;outline:none;background:#fbf8f2;color:var(--ink);font:inherit;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.form-field input,.form-field select{min-height:50px;padding:0 14px}.form-field textarea{padding:13px 14px;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--caramel);background:#fff;box-shadow:0 0 0 4px rgba(184,114,58,.12)}.consent-field{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;color:var(--muted);font-size:.8rem;line-height:1.5;cursor:pointer}.consent-field input{width:17px;height:17px;margin-top:2px;accent-color:var(--caramel)}.form-submit{width:fit-content;min-height:50px;padding:0 22px;border:0;border-radius:999px;display:inline-flex;align-items:center;gap:10px;background:var(--cocoa);color:#fff;font:inherit;font-weight:600;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.form-submit:hover{transform:translateY(-2px);background:var(--caramel);box-shadow:0 10px 24px rgba(42,21,13,.18)}.contact-map-card{position:relative;margin-top:28px;overflow:hidden}.contact-map-card iframe{width:100%;height:390px;border:0;display:block}.map-address{position:absolute;left:22px;bottom:22px;max-width:calc(100% - 44px);padding:13px 17px;border:1px solid rgba(42,21,13,.08);border-radius:12px;display:flex;flex-direction:column;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(42,21,13,.14);backdrop-filter:blur(8px)}.map-address strong{color:var(--cocoa)}.map-address span{color:var(--muted);font-size:.85rem}.contact-logo{margin-top:30px}
/* Turnstile + honeypot */
.turnstile-field{margin-top:2px;min-height:65px;display:flex;align-items:center}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;pointer-events:none!important}
/* Responsivt */
@media(min-width:1440px){.wrap{width:min(1200px,calc(100% - 80px))}.hero-content{padding-left:0}.slider-dots{right:max(40px,calc((100% - 1200px)/2))}}
@media(min-width:2560px){.wrap{width:min(1320px,calc(100% - 120px))}.hero-content{max-width:860px}.hero h1{font-size:clamp(4.4rem,3.5vw,6.2rem)}.hero .lead{font-size:1.25rem}section:not(.hero){padding:110px 0}}
@media(max-width:1199px){.wrap{width:min(100% - 48px,1120px)}.hero h1{font-size:clamp(2.7rem,5.5vw,4.6rem)}}
@media(max-width:920px){html{scroll-padding-top:120px}nav.wrap{min-height:auto;padding:14px 0;flex-direction:column;gap:8px}header.scrolled nav.wrap{min-height:auto;padding:8px 0}.navlinks,header.scrolled .navlinks{width:100%;justify-content:center;flex-wrap:wrap;gap:2px 18px}.navlinks a,header.scrolled .navlinks a{min-height:36px;font-size:.9rem}.hero{min-height:72svh}.hero-content{max-width:650px;padding:80px 0}.hero h1{max-width:12ch;font-size:clamp(2.7rem,8vw,4.3rem)}.hero-overlay{background:linear-gradient(90deg,rgba(17,8,4,.9) 0%,rgba(17,8,4,.72) 48%,rgba(17,8,4,.2) 100%)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}section:not(.hero){padding:72px 0}.business-contact-layout{grid-template-columns:1fr}.contact-people-card{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);gap:28px}.contact-divider{width:1px;height:auto;margin:0}}
@media(max-width:620px){html{scroll-padding-top:145px}.wrap{width:min(100% - 32px,1120px)}.brand,header.scrolled .brand{font-size:1.08rem}.navlinks,header.scrolled .navlinks{column-gap:14px;row-gap:0}.navlinks a,header.scrolled .navlinks a{min-height:34px;font-size:.82rem}.external-link{gap:6px!important}.hero{min-height:68svh}.hero-slide{background-position:58% center}.hero-content{padding:64px 0 88px}.eyebrow{font-size:.78rem}.hero h1{max-width:11ch;margin-bottom:20px;font-size:clamp(2.15rem,11vw,3.15rem);line-height:1}.hero .lead{max-width:31ch;font-size:.95rem}.quick-facts{gap:22px;margin-top:28px}.quick-facts .num{font-size:1.6rem}.slider-dots{right:16px;bottom:20px}section:not(.hero){padding:58px 0}section h2{font-size:2rem}.gallery-grid{grid-template-columns:1fr;gap:15px}.site-footer{padding:30px 18px;font-size:.82rem}.contact-heading{margin-bottom:28px}.contact-people-card,.callback-card{padding:26px 22px}.contact-people-card{display:block}.contact-divider{width:100%;height:1px;margin:26px 0}.form-row{grid-template-columns:1fr}.form-submit{width:100%;justify-content:center}.contact-map-card iframe{height:330px}.map-address{position:static;max-width:none;border:0;border-top:1px solid rgba(42,21,13,.08);border-radius:0;box-shadow:none}.turnstile-field{overflow:hidden}}
@media(max-width:380px){.wrap{width:min(100% - 24px,1120px)}.navlinks,header.scrolled .navlinks{column-gap:10px}.navlinks a,header.scrolled .navlinks a{font-size:.76rem}.hero h1{font-size:2rem}.cf-turnstile{transform:scale(.92);transform-origin:left center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.form-success {
  margin-bottom: 24px;
  padding: 16px 18px;
  border: 1px solid rgba(46, 125, 72, 0.22);
  border-radius: 12px;
  background: rgba(46, 125, 72, 0.08);
  color: #285c39;
}

.form-success strong,
.form-success span {
  display: block;
}

.form-success strong {
  margin-bottom: 3px;
  font-weight: 600;
}

.form-success span {
  font-size: 0.9rem;
  color: var(--muted);
}
