:root{
  --ink:#16210c;
  --ink-soft:#3c4630;
  --paper:#f7f4ea;
  --panel:#ffffff;
  --green:#7aa404;
  --green-deep:#3f5504;
  --rust:#c1502c;
  --stone:#8a8570;
  --line:rgba(22,33,12,.16);
  --shadow:0 1px 2px rgba(22,33,12,.08), 0 14px 30px -16px rgba(22,33,12,.28);
  --font-display:'Bricolage Grotesque',system-ui,sans-serif;
  --font-body:'Newsreader',Georgia,serif;
  --font-mono:'IBM Plex Mono',ui-monospace,monospace;
  color-scheme:light dark;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ink:#f3f1e4; --ink-soft:#cdc9b6;
    --paper:#11170a; --panel:#1a2110;
    --green:#b7e63a; --green-deep:#d8f98c;
    --rust:#e2794a; --stone:#9a957e;
    --line:rgba(243,241,228,.16);
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 14px 30px -16px rgba(0,0,0,.6);
  }
}
:root[data-theme="dark"]{
  --ink:#f3f1e4; --ink-soft:#cdc9b6;
  --paper:#11170a; --panel:#1a2110;
  --green:#b7e63a; --green-deep:#d8f98c;
  --rust:#e2794a; --stone:#9a957e;
  --line:rgba(243,241,228,.16);
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 14px 30px -16px rgba(0,0,0,.6);
}

*{box-sizing:border-box;}
@media (prefers-reduced-motion: reduce){ *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;} }
[hidden]{display:none!important;}

html{scroll-padding-top:72px;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.55;
}
h1,h2,h3,.display{
  font-family:var(--font-display);
  font-weight:700;
  letter-spacing:-0.015em;
  text-wrap:balance;
  margin:0;
  color:var(--ink);
}
p{margin:0;}
a{color:inherit;}
img,svg{display:block;max-width:100%;}
.container{max-width:1180px;margin:0 auto;padding-inline:24px;}
.wrap{max-width:1180px;margin:0 auto;padding-inline:24px;position:relative;}

.mono{font-family:var(--font-mono);}
.label{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--green-deep);
}
.fig{font-variant-numeric:tabular-nums;}

/* control-flag marker */
.flag{
  display:inline-flex;align-items:flex-end;gap:0;
  width:14px;height:18px;position:relative;flex:none;
}
.flag::before{
  content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:var(--ink-soft);
}
.flag::after{
  content:"";position:absolute;left:8px;top:0;width:11px;height:8px;
  background:linear-gradient(90deg,var(--flag,var(--rust)) 50%, var(--paper) 50%);
  clip-path:polygon(0 0,100% 15%,0 100%);
}

/* NAV */
.nav{
  position:sticky;top:env(safe-area-inset-top,0px);z-index:60;
  background:color-mix(in srgb, var(--paper) 86%, transparent);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:16px;flex-wrap:wrap;}
.wordmark{
  font-family:var(--font-display);font-weight:800;font-size:21px;letter-spacing:-.02em;
  display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);
}
.wordmark .dot{width:9px;height:9px;border-radius:50%;background:var(--green);}
.navlinks{display:flex;gap:0;flex-wrap:wrap;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;}
.navlinks a{
  text-decoration:none;color:var(--ink-soft);padding:8px 14px;border-radius:999px;
  transition:background .15s, color .15s;
}
.navlinks a:hover,.navlinks a.active{background:var(--green);color:var(--ink);}
.navlinks{margin-left:auto;}

/* LANGUAGE SWITCHER — a compass button that opens a small list */
.lang{position:relative;flex:none;}
.lang-btn{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--font-mono);font-size:11.5px;font-weight:600;letter-spacing:.09em;
  color:var(--ink);background:var(--panel);
  border:1px solid var(--line);border-radius:999px;padding:7px 11px 7px 9px;cursor:pointer;
  transition:border-color .15s, background .15s;
}
.lang-btn:hover,.lang-btn[aria-expanded="true"]{border-color:var(--green);}
.lang-btn:focus-visible,.lang-menu button:focus-visible{outline:2px solid var(--green);outline-offset:2px;}
.lang-icon{width:16px;height:16px;fill:none;stroke:var(--ink-soft);stroke-width:1.4;transition:transform .3s;}
.lang-icon .needle{fill:var(--rust);stroke:none;}
.lang-btn:hover .lang-icon,.lang-btn[aria-expanded="true"] .lang-icon{transform:rotate(45deg);}
.lang-caret{width:9px;height:6px;fill:none;stroke:var(--stone);stroke-width:1.5;transition:transform .15s;}
.lang-btn[aria-expanded="true"] .lang-caret{transform:rotate(180deg);}
.lang-menu{
  position:absolute;right:0;top:calc(100% + 8px);z-index:70;
  list-style:none;margin:0;padding:6px;min-width:178px;
  background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);
}
.lang-menu button{
  display:flex;align-items:center;gap:12px;width:100%;
  font-family:var(--font-body);font-size:16px;color:var(--ink);text-align:left;
  background:none;border:0;border-radius:9px;padding:8px 10px;cursor:pointer;
}
.lang-menu .code{
  font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:.08em;color:var(--stone);
  width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line);
  display:inline-flex;align-items:center;justify-content:center;flex:none;
}
.lang-menu button:hover{background:color-mix(in srgb, var(--green) 14%, transparent);}
.lang-menu button[aria-current="true"]{font-weight:500;}
.lang-menu button[aria-current="true"] .code{border-color:var(--green);color:var(--green-deep);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--green) 30%, transparent);}
@media (max-width:920px){
  .lang{order:2;margin-left:auto;}
  .navlinks{order:3;flex-basis:100%;margin-left:0;}
}

/* SECTION SCAFFOLD */
main section{position:relative;padding-block:100px;}
.seam{
  position:relative;height:5px;
  background:linear-gradient(90deg,var(--rust),var(--green) 55%,var(--rust));
  transform:rotate(-.6deg);
  margin-block:-2px;
  opacity:.9;
}
.seam.alt{transform:rotate(.6deg);}
section.tint{background:var(--panel);}

.wp{
  display:flex;align-items:center;gap:12px;margin-bottom:22px;
}
.wp .n{
  font-family:var(--font-mono);font-size:12px;color:var(--paper);
  background:var(--ink);width:30px;height:30px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;flex:none;
}
section.tint .wp .n{background:var(--ink);color:var(--panel);}
.wp .t{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--stone);}

.section-head h2{font-size:clamp(30px,4.2vw,46px);margin-top:10px;max-width:14ch;}
.section-head{margin-bottom:52px;}

/* HERO */
.hero{padding-top:56px;padding-bottom:110px;overflow:clip;}
.hero-topo{position:absolute;inset:0;z-index:0;opacity:.55;pointer-events:none;}
.hero-topo path{fill:none;stroke:var(--ink);stroke-opacity:.09;stroke-width:1.4;}
:root[data-theme="dark"] .hero-topo path{stroke-opacity:.14;}
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]) .hero-topo path{stroke-opacity:.14;} }
.hero-inner{position:relative;z-index:1;}
.coords{font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;color:var(--stone);display:flex;gap:18px;flex-wrap:wrap;margin-bottom:26px;}
.hero h1{
  font-size:clamp(46px,8.4vw,104px);
  line-height:.98;
  max-width:15ch;
}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(180deg,transparent 62%, var(--green) 62%);
}
.hero .lede{
  font-family:var(--font-body);
  font-style:italic;
  font-size:22px;
  color:var(--ink-soft);
  max-width:38ch;
  margin-top:26px;
}
.hero-actions{display:flex;gap:14px;margin-top:36px;flex-wrap:wrap;align-items:center;}
.btn{
  font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  text-decoration:none;padding:15px 26px;border-radius:2px;display:inline-flex;align-items:center;gap:10px;
  transition:transform .15s, box-shadow .15s;
}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--ink);color:var(--paper);box-shadow:var(--shadow);}
.btn-ghost{border:1px solid var(--ink);color:var(--ink);}
button.btn{cursor:pointer;}
button.btn-primary{border:none;}
.hero-trail{margin-top:64px;}
.hero-trail svg{width:100%;height:auto;display:block;}
.hero-trail path.route{
  fill:none;stroke:var(--green-deep);stroke-width:2;stroke-dasharray:6 7;stroke-linecap:round;
}
@media (prefers-reduced-motion: no-preference){
  .hero-trail path.route{
    stroke-dasharray:1600;stroke-dashoffset:1600;
    animation:draw 1.6s .2s ease-out forwards;
  }
  @keyframes draw{to{stroke-dashoffset:0;}}
}
.hero-trail circle,.hero-trail polygon{fill:var(--paper);stroke:var(--ink);stroke-width:2;}
.hero-trail circle + circle[r="6"]{fill:none;}
.hero-trail .stop-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;fill:var(--stone);}

/* SERVICES - three courses side by side, each with its own colour like
   the colour-coded courses at an orienteering event */
.bana-1{--bana:var(--green);}
.bana-2{--bana:var(--green-deep);}
.bana-3{--bana:var(--rust);}
.etapper{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.etapp{
  background:var(--panel);
  border:1px solid var(--line);
  border-top:5px solid var(--bana);
  padding:30px 26px;
  box-shadow:var(--shadow);
}
.etapp .flag{--flag:var(--bana);}
.etapp .stage{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.etapp .stage b{font-family:var(--font-mono);font-size:12px;color:var(--ink);letter-spacing:.08em;}
.etapp h3{font-size:21px;margin-bottom:12px;}
.etapp p.lead{font-size:16px;font-weight:500;margin-bottom:12px;}
.etapp p.body{font-size:14.5px;color:var(--ink-soft);}

/* stamps / tags */
.stamps{display:flex;flex-wrap:wrap;gap:12px 14px;margin-top:36px;}
.stamp{
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;
  padding:7px 13px;border:1.5px solid var(--green-deep);color:var(--green-deep);
  border-radius:3px;
}
.stamp:nth-child(3n+1){transform:rotate(-1.4deg);}
.stamp:nth-child(3n+2){transform:rotate(1deg);}
.stamp:nth-child(3n){transform:rotate(-.4deg);}

/* control card / cases */
.card-control{
  margin-top:20px;
  border:1.5px solid var(--ink);
  background:var(--panel);
}
.kase{display:grid;grid-template-columns:90px 1fr;border-top:1.5px dashed var(--line);}
.kase:first-child{border-top:none;}
.kase .punch{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  padding:22px 10px;border-right:1.5px dashed var(--line);
  font-family:var(--font-mono);font-size:11px;color:var(--stone);text-align:center;
}
.kase .punch .ring{width:26px;height:26px;border-radius:50%;border:2px solid var(--green);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--green-deep);font-weight:600;}
.kase .body{padding:24px 26px;}
.kase h3{font-size:18px;margin-bottom:8px;}
.leg-tag{
  display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--rust);
}
.leg-tag .flag{--flag:var(--rust);transform:scale(.8);}

/* how we work: the method as a course, and the AI agents */
.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.course{background:var(--panel);border:1.5px solid var(--ink);box-shadow:var(--shadow);padding:28px 28px 24px;}
.course-list{list-style:none;margin:18px 0 0;padding:0;}
.course-list li{display:grid;grid-template-columns:28px 1fr;gap:16px;position:relative;padding-bottom:18px;}
.course-list li:not(:last-child)::before{
  content:"";position:absolute;left:13px;top:26px;bottom:2px;border-left:2px dashed var(--green-deep);opacity:.7;
}
.course-list .sym{width:24px;height:24px;margin:2px;border-radius:50%;border:2px solid var(--ink);background:var(--panel);}
.course-list .sym.start{border:none;border-radius:0;background:none;position:relative;}
.course-list .sym.start::before{content:"";position:absolute;inset:0;background:var(--ink);clip-path:polygon(50% 4%,100% 92%,0 92%);}
.course-list .sym.start::after{content:"";position:absolute;inset:0;background:var(--panel);clip-path:polygon(50% 26%,82% 82%,18% 82%);}
.course-list .sym.finish{box-shadow:inset 0 0 0 3px var(--panel),inset 0 0 0 5px var(--ink);}
.course-list h3{font-size:17px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.course-list p{color:var(--ink-soft);font-size:15px;margin-top:3px;}
.course-list .loop{font-family:var(--font-mono);color:var(--green-deep);font-weight:600;}
.ai-chip{
  display:inline-block;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.08em;
  padding:2px 7px;border-radius:999px;background:var(--green-deep);color:var(--paper);line-height:1.5;
}
.course-ai{display:flex;gap:12px;align-items:flex-start;margin-top:6px;padding-top:16px;border-top:1.5px dashed var(--line);color:var(--ink-soft);font-size:15px;}
.course-ai .ai-chip{flex:none;margin-top:2px;}
.agents{display:flex;flex-direction:column;gap:22px;align-items:flex-start;}
.agent{border-left:3px solid var(--green);padding-left:20px;}
.agent h3{font-size:21px;margin:6px 0 10px;}
.agent p:not(.label){color:var(--ink-soft);font-size:16px;}
.method-close{font-style:italic;font-size:18px;color:var(--ink);}
.docs-note{border:1.5px dashed var(--ink-soft);padding:18px 20px;}
.docs-note h3{font-size:16px;margin-bottom:6px;}
.docs-note p{color:var(--ink-soft);font-size:14.5px;}
.kase p{color:var(--ink-soft);font-size:15px;max-width:66ch;}
.kase p + p{margin-top:10px;}

/* about */
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start;}
.about-grid .dropline{font-family:var(--font-body);font-style:italic;font-size:25px;line-height:1.4;color:var(--ink);}
.about-body p{color:var(--ink-soft);font-size:16px;margin-bottom:17px;}
.about-body p:last-child{color:var(--ink);font-weight:500;font-style:italic;font-family:var(--font-body);font-size:18px;}

/* people */
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.badge{
  background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);
  padding:20px 18px;display:flex;flex-direction:column;gap:12px;
}
.badge:nth-child(4n+1){transform:rotate(-.6deg);}
.badge:nth-child(4n+2){transform:rotate(.5deg);}
.badge:nth-child(4n+3){transform:rotate(-.3deg);}
.badge:nth-child(4n){transform:rotate(.7deg);}
.badge-top{display:flex;justify-content:space-between;align-items:flex-start;}
.badge-id{
  font-family:var(--font-display);font-weight:700;font-size:15px;
  width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:var(--paper);
}
.badge-id.c-green{background:#7aa404;}
.badge-id.c-deep{background:#3f5504;}
.badge-id.c-rust{background:#c1502c;}
.badge .role{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--stone);}
.badge h3{font-size:16px;}
.badge p.bio{font-size:13.5px;color:var(--ink-soft);}
.badge a.mail{font-family:var(--font-mono);font-size:11px;color:var(--green-deep);text-decoration:none;border-bottom:1px solid transparent;}
.badge a.mail:hover{border-color:var(--green-deep);}

/* contact / mal */
.finish{
  height:16px;margin-bottom:44px;
  background-color:var(--paper);
  background-image:
    linear-gradient(45deg, var(--ink) 25%, transparent 25%, transparent 75%, var(--ink) 75%, var(--ink)),
    linear-gradient(45deg, var(--ink) 25%, transparent 25%, transparent 75%, var(--ink) 75%, var(--ink));
  background-size:16px 16px;
  background-position:0 0, 8px 8px;
}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;}
.contact-grid h2{margin-top:8px;margin-bottom:26px;font-size:clamp(26px,3.6vw,38px);}
form{display:flex;flex-direction:column;gap:20px;}
label{font-family:var(--font-mono);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);display:block;margin-bottom:8px;}
input,textarea{
  width:100%;font-family:var(--font-body);font-size:16px;color:var(--ink);background:var(--panel);
  border:1.5px solid var(--ink);border-radius:0;padding:13px 14px;
}
textarea{min-height:120px;resize:vertical;}
input:focus,textarea:focus{outline:2px solid var(--green);outline-offset:1px;}
.toast{margin-top:14px;font-family:var(--font-mono);font-size:12px;color:var(--green-deep);}
.toast-error{color:var(--rust);}
.toast a{color:inherit;}
/* Decoy field for spam bots (contact form): off-screen, not display:none, so bots still fill it in. */
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.book{
  background:var(--panel);border:1.5px solid var(--ink);box-shadow:var(--shadow);
  padding:26px 24px;margin-bottom:32px;
}
.book h3{font-size:22px;margin:8px 0 10px;}
.book p:not(.label){color:var(--ink-soft);font-size:15.5px;margin-bottom:20px;}
.contact-direct .row{display:flex;justify-content:space-between;gap:12px;padding-block:13px;border-bottom:1px dashed var(--line);font-size:14.5px;}
.contact-direct .row:first-child{border-top:1px dashed var(--line);}
.contact-direct .row span:first-child{color:var(--ink-soft);}
.contact-direct .row a{color:var(--green-deep);text-decoration:none;font-family:var(--font-mono);font-size:13px;}

footer{padding-block:40px;background:var(--ink);color:var(--paper);}
.foot-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;color:var(--paper);opacity:.75;}
.foot-inner a{color:inherit;text-decoration:underline;text-underline-offset:3px;}
.foot-inner a:hover{color:var(--green);}
/* Privacy page (integritet/). */
.pv-hero{padding-bottom:64px;}
.pv-updated{margin-top:18px;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--stone);}
.pv{max-width:760px;}
.pv h2{font-size:clamp(22px,2.6vw,28px);margin:44px 0 12px;}
.pv h2:first-child{margin-top:0;}
.pv p,.pv li{color:var(--ink-soft);font-size:17px;max-width:68ch;}
.pv p+p{margin-top:12px;}
.pv ul{margin:0 0 12px;padding-left:22px;}
.pv li+li{margin-top:6px;}
.pv a{color:var(--green-deep);}
.form-privacy{font-size:13.5px;color:var(--stone);margin:0;}
.form-privacy a{color:var(--green-deep);}

/* HR MOGNADSINDEX QUIZ */
.lede-sm{font-family:var(--font-body);font-style:italic;font-size:16.5px;color:var(--ink-soft);max-width:56ch;margin-top:14px;}
.quiz-panel{background:var(--panel);border:1.5px solid var(--ink);box-shadow:var(--shadow);padding:36px 32px;}
.quiz-progress{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap;}
.quiz-progress-track{flex:1;min-width:120px;height:6px;background:var(--line);border-radius:3px;overflow:hidden;}
.quiz-progress-bar{height:100%;background:var(--green);width:0%;transition:width .25s ease;}
.quiz-dim{color:var(--green-deep);margin-bottom:10px;font-size:11.5px;letter-spacing:.1em;}
.quiz-q{font-size:23px;margin-bottom:24px;max-width:34ch;}
.quiz-opt{display:block;width:100%;text-align:left;font-family:var(--font-body);font-size:16px;color:var(--ink);
  background:var(--panel);border:1.5px solid var(--ink);padding:14px 16px;margin-bottom:10px;cursor:pointer;
  transition:background .15s,color .15s;}
/* Hover only with a real mouse, and not until it moves after a new statement
   appears, so the answer just picked doesn't look picked on the next one. */
@media (hover:hover){ .quiz-options:not(.fresh) .quiz-opt:hover{background:var(--green);color:var(--ink);} }
.quiz-opt:focus-visible{outline:2px solid var(--green-deep);outline-offset:2px;}
.result-top{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:center;margin-bottom:40px;}
.radar-wrap svg{width:100%;height:auto;}
.radar-grid{fill:none;stroke:var(--line);stroke-width:1;}
.radar-axis{stroke:var(--line);stroke-width:1;}
.radar-label{font-family:var(--font-mono);font-size:10.5px;fill:var(--stone);}
.radar-shape{fill:var(--green);fill-opacity:.28;stroke:var(--green-deep);stroke-width:2;}
.radar-dot{fill:var(--paper);stroke:var(--green-deep);stroke-width:2;}
.result-desc{color:var(--ink-soft);font-size:15px;margin-top:10px;max-width:42ch;}
.result-scores{margin-top:22px;display:flex;flex-direction:column;}
.score-row{display:flex;justify-content:space-between;padding-block:9px;border-top:1px dashed var(--line);font-size:13.5px;}
.score-row:first-child{border-top:none;}
.reco{margin-top:8px;}
.reco-list{margin-top:18px;}
.reco-item{display:flex;gap:16px;align-items:flex-start;padding-block:16px;border-top:1.5px dashed var(--line);}
.reco-item:first-child{border-top:none;}
.reco-item .ring{width:28px;height:28px;border-radius:50%;border:2px solid var(--green);display:flex;
  align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;color:var(--green-deep);flex:none;}
.reco-item p{color:var(--ink-soft);font-size:15.5px;margin:0;padding-top:3px;}
.quiz-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px;align-items:center;}
.quiz-actions button.btn{background:none;}
/* "Skicka mig resultatet" under the quiz result. */
.quiz-send{margin-top:36px;padding-top:28px;border-top:1.5px dashed var(--line);display:flex;flex-direction:column;gap:14px;max-width:560px;}
.quiz-send .label{margin:0;}
.quiz-send-lede{color:var(--ink-soft);font-size:15.5px;margin:0;}
.quiz-send .field label{margin-bottom:8px;}
.quiz-send .check{display:flex;gap:10px;align-items:flex-start;font-family:var(--font-body);font-size:15px;letter-spacing:0;text-transform:none;color:var(--ink);margin:0;cursor:pointer;}
.quiz-send .check input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:var(--green-deep);}
.quiz-send-privacy{font-size:13.5px;color:var(--stone);margin:0;}
.quiz-send-privacy a{color:var(--green-deep);}
.quiz-send .btn{align-self:flex-start;}
.further{margin-top:56px;max-width:72ch;}
.further summary{list-style:none;cursor:pointer;}
.further summary::-webkit-details-marker{display:none;}
.further summary .label{display:block;}
.further summary:focus-visible{outline:2px solid var(--green-deep);outline-offset:4px;}
.further h3{font-size:22px;margin:8px 0 4px;}
.further summary:hover h3{color:var(--green-deep);}
.further-toggle{display:inline-block;width:28px;height:28px;margin-left:12px;vertical-align:-5px;border-radius:50%;border:2px solid var(--green);position:relative;}
.further-toggle::before,.further-toggle::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:var(--green-deep);}
.further-toggle::after{transform:rotate(90deg);transition:transform .2s ease;}
.further[open] .further-toggle::after{transform:rotate(0);}
.further-list{list-style:none;padding:0;margin:14px 0 0;}
.further-list li{padding-block:14px;border-top:1.5px dashed var(--line);color:var(--ink-soft);font-size:15.5px;}
.further-list li:first-child{border-top:none;}
.further-list b{color:var(--ink);font-weight:600;}
.further-list a{color:var(--green-deep);}

/* Vanliga frågor: same plus/minus toggle as .further */
.faq{max-width:72ch;border-bottom:1.5px dashed var(--line);}
.faq details{border-top:1.5px dashed var(--line);}
.faq summary{list-style:none;cursor:pointer;padding-block:18px;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary:focus-visible{outline:2px solid var(--green-deep);outline-offset:4px;}
.faq h3{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:20px;margin:0;}
.faq summary:hover h3{color:var(--green-deep);}
.faq .further-toggle{flex-shrink:0;margin-left:0;}
.faq details[open] .further-toggle::after{transform:rotate(0);}
.faq p{color:var(--ink-soft);font-size:15.5px;margin:0;padding-bottom:20px;}
.faq a{color:var(--green-deep);}

/* Lönetransparens page (lonetransparens/index.html) */
.hero h1.lt-title{font-size:clamp(36px,6.4vw,84px);max-width:16ch;hyphens:auto;overflow-wrap:break-word;}
.krav{row-gap:22px;}
.krav .etapp h3{font-size:19px;}
.lt-source{margin-top:28px;font-size:14px;color:var(--ink-soft);}
.lt-source a,.more-link{color:var(--green-deep);}
.lt-course{max-width:640px;}
.lt-end{max-width:60ch;}
.lt-end h2{font-size:clamp(30px,4.2vw,46px);margin-top:10px;}
.more-link{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;}
.more-link:hover{text-decoration:underline;}

/* Cards on the start page that lead to the coaching and pay transparency pages */
.spotlights{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px;}
.spotlight{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1.5px solid var(--ink);box-shadow:var(--shadow);padding:26px 26px 22px;color:var(--ink);text-decoration:none;transition:transform .15s;}
.spotlight:hover{transform:translateY(-2px);}
.spotlight:hover .more-link{text-decoration:underline;}
.spotlight h3{font-size:22px;}
.spotlight p:not(.label){color:var(--ink-soft);font-size:15.5px;}
.spotlight .more-link{margin-top:auto;}
.coaches{grid-template-columns:repeat(3,1fr);}
@media (max-width:920px){ .spotlights{grid-template-columns:1fr;} .coaches{grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .coaches{grid-template-columns:1fr;} }

@media (max-width:920px){
  .result-top{grid-template-columns:1fr;}
  .etapper{grid-template-columns:1fr;}
  .method-grid{grid-template-columns:1fr;gap:44px;}
  .about-grid{grid-template-columns:1fr;gap:32px;}
  .people{grid-template-columns:repeat(2,1fr);}
  .contact-grid{grid-template-columns:1fr;gap:40px;}
  .kase{grid-template-columns:64px 1fr;}
}
@media (max-width:560px){
  .container,.wrap{padding-inline:16px;}
  .people{grid-template-columns:1fr;}
  main section{padding-block:72px;}
  .badge:nth-child(n){transform:none!important;}
  .hero-trail .stop-label{display:none;}
  .kase{grid-template-columns:76px 1fr;}
  .kase .punch{padding-inline:6px;font-size:10px;}
  .course{padding:22px 18px 18px;}
}
