/* AlbIT AB — delad chrome (tokens, nav, footer, knappar, ambient, bastypografi).
   Källa: index.html <style>. Länkas av /kunskap/-sidorna.
   OBS: håll i synk med index.html tills ev. de-dup (plan Task 12). */

:root{
  --bg:#FAF8F4;--bg2:#F3EFE8;--paper:#FFFFFF;--ink:#1A1F1C;--muted:#5C6159;
  --line:rgba(26,31,28,.10);--accent:#2F6B3D;--accent-deep:#1F4A2A;--accent-soft:#E4EDE6;--accent2:#A8552D;--word:#A8552D;
  --birdy-bg:#F0E7D0;--birdy-ink:#3A2618;--birdy-accent:#9A5A34;--birdy-copper:#A8552D;
  --loop-bg:#faf8f4;--loop-ink:#0f1419;--loop-accent:#2f6b3d;--loop-soft:#d6e6da;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{font-family:'Schibsted Grotesk',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:17px;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
.wrap{max-width:1140px;margin:0 auto;padding:0 26px}
h1,h2,h3,h4{font-family:'Gloock',serif;font-weight:600;line-height:1.04;letter-spacing:-.025em;font-optical-sizing:auto}
.serif{font:inherit;color:var(--word)}
.edito{font-family:'Schibsted Grotesk',Georgia,sans-serif;font-style:italic;font-weight:400;letter-spacing:0}
.mono{font-family:'Fragment Mono',monospace;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}

/* page-wide depth field */
.ambient{position:fixed;inset:0;z-index:-1;overflow:hidden}
.ambient .pgrid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:54px 54px;opacity:.4;mask-image:linear-gradient(180deg,#000,transparent 18%,transparent 82%,#000)}
.blob{position:absolute;border-radius:50%;filter:blur(120px);opacity:.14;mix-blend-mode:multiply}
.b1{width:520px;height:520px;background:var(--accent);top:-180px;left:-140px;animation:drift1 26s ease-in-out infinite}
.b2{width:460px;height:460px;background:#C9A24A;top:30%;right:-160px;animation:drift2 30s ease-in-out infinite}
.b3{width:440px;height:440px;background:var(--accent);top:60%;left:-120px;animation:drift3 34s ease-in-out infinite}
.b4{width:400px;height:400px;background:#C9A24A;bottom:-160px;right:20%;animation:drift1 38s ease-in-out infinite}
@keyframes drift1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(80px,60px) scale(1.15)}}
@keyframes drift2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-70px,90px) scale(.9)}}
@keyframes drift3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(60px,-70px) scale(1.1)}}

/* section layering for depth */
section{position:relative}
section.band{background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.2));border-top:1px solid var(--line);border-bottom:1px solid var(--line);backdrop-filter:blur(2px)}
.sec-glow{position:absolute;width:60%;height:70%;top:10%;border-radius:50%;filter:blur(100px);opacity:.5;pointer-events:none;z-index:0}
.sec-glow.left{left:-10%;background:radial-gradient(circle,var(--accent-soft),transparent 70%)}
.sec-glow.right{right:-10%;background:radial-gradient(circle,rgba(201,162,74,.14),transparent 70%)}
section .wrap{position:relative;z-index:1}
.grain{position:fixed;inset:0;z-index:-1;opacity:.025;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* nav */
nav{position:sticky;top:0;z-index:60;backdrop-filter:blur(14px);background:rgba(250,248,244,.82);border-bottom:1px solid var(--line)}
nav .wrap{display:flex;justify-content:space-between;align-items:center;height:72px}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none}
.logo .mark{width:34px;height:34px;border-radius:9px;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 2px 6px rgba(47,107,61,.25)}
.logo .mark svg{width:20px;height:20px}
.logo .word{font-family:'Gloock',serif;font-size:1.5rem;font-weight:600;letter-spacing:-.02em;color:var(--ink);line-height:1}
.logo .word b{font-weight:600;color:var(--ink)}
.logo .word .ab{font-family:'Fragment Mono',monospace;font-size:.62rem;font-weight:400;letter-spacing:.18em;color:var(--muted);display:block;margin-top:1px}
.navlinks{display:flex;gap:28px;align-items:center}
.navlinks a{color:var(--muted);text-decoration:none;font-size:.92rem;font-weight:500;transition:color .2s}
.navlinks a:hover{color:var(--ink)}
.navbtn{background:var(--accent);color:#fff!important;padding:10px 20px;border-radius:8px;font-weight:600}
.navbtn:hover{background:var(--accent-deep);box-shadow:0 8px 20px rgba(47,107,61,.25)}
.navlinks a:not(.navbtn){position:relative}
.navlinks a:not(.navbtn)::after{content:"";position:absolute;left:0;bottom:-4px;height:2px;width:0;background:var(--accent);border-radius:2px;transition:width .25s ease}
.navlinks a:not(.navbtn):hover::after{width:100%}
@media(max-width:720px){.navlinks a:not(.navbtn){display:none}}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--accent);color:#fff;text-decoration:none;padding:16px 30px;border-radius:10px;font-family:'Schibsted Grotesk',sans-serif;font-weight:600;font-size:1rem;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-3px);background:var(--accent-deep);box-shadow:0 14px 34px rgba(47,107,61,.28)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid rgba(26,31,28,.18)}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent);background:transparent;box-shadow:none}
.btn .arrow{transition:transform .2s}
.btn:hover .arrow{transform:translateX(4px)}

/* footer (dark) */
footer{position:relative;padding:96px 0 48px;text-align:center;color:rgba(244,242,236,.7);background:linear-gradient(180deg,#16201A,#0C100D);overflow:hidden}
footer .wrap{position:relative;z-index:1;max-width:760px}
.foot-say{font-family:'Schibsted Grotesk',Georgia,sans-serif;font-style:italic;font-weight:400;font-size:clamp(1.5rem,3.6vw,2.3rem);line-height:1.25;color:#F4F2EC;letter-spacing:-.005em;max-width:20ch;margin:0 auto 14px}
.foot-say em{font-style:italic;color:#E0A47C}
.foot-orn{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 auto 52px;color:rgba(224,164,124,.8)}
.foot-orn::before,.foot-orn::after{content:"";height:1px;width:60px;background:linear-gradient(90deg,transparent,rgba(244,242,236,.35))}
.foot-orn::after{background:linear-gradient(270deg,transparent,rgba(244,242,236,.35))}
.foot-orn span{font-size:.95rem}
footer .logo{flex-direction:column;align-items:center;gap:10px}
footer .logo .word{color:#F4F2EC;font-family:'Gloock',serif;font-size:1.55rem;letter-spacing:-.02em}
footer .logo .mark{background:var(--accent);box-shadow:0 4px 16px rgba(47,107,61,.4)}
footer .logo{justify-content:center;align-items:center;flex-direction:row;gap:11px;margin-bottom:14px}
.foot-tag{font-family:'Schibsted Grotesk',Georgia,sans-serif;font-style:italic;font-size:1.08rem;color:rgba(244,242,236,.82);margin-bottom:30px}
.foot-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 26px;margin-bottom:40px;position:static;background:none;backdrop-filter:none;border:none;height:auto}
.foot-nav a{color:#D8DCCF!important;background:none!important;text-decoration:none;font-size:.95rem;font-weight:500;letter-spacing:-.005em;position:relative;transition:color .2s}
.foot-nav a:hover{color:#fff!important}
.foot-nav a::after{content:"";position:absolute;left:0;bottom:-3px;height:1px;width:0;background:#E0A47C;transition:width .25s ease}
.foot-nav a:hover::after{width:100%}
.foot-base{padding-top:30px;border-top:1px solid rgba(244,242,236,.14);display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
footer .small{font-size:.74rem;font-family:'Fragment Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,242,236,.55)}
.foot-dot{width:5px;height:5px;border-radius:50%;background:rgba(224,164,124,.7)}
@media(max-width:560px){.foot-orn::before,.foot-orn::after{width:36px}}

/* Gloock finns bara i 400 */
h1,h2,h3,h4,.logo .word,.logo .word b{font-weight:400}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* mobilmeny */
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:10px;margin-left:6px;background:none;border:0;cursor:pointer}
.nav-burger span{display:block;width:22px;height:2px;border-radius:2px;background:var(--ink);transition:transform .3s,opacity .3s}
nav.menu-open .nav-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
nav.menu-open .nav-burger span:nth-child(2){opacity:0}
nav.menu-open .nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:720px){
  .nav-burger{display:flex}
  .navlinks{margin-left:auto}
  nav.menu-open .navlinks{position:absolute;top:72px;left:0;right:0;max-height:calc(100vh - 72px);overflow:auto;display:flex;flex-direction:column;align-items:stretch;gap:0;background:rgba(250,248,244,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:8px 26px 20px;box-shadow:0 24px 48px rgba(26,31,28,.12)}
  nav.menu-open .navlinks a:not(.navbtn){display:block;padding:13px 2px;font-size:1.05rem;border-bottom:1px solid var(--line)}
  nav.menu-open .navlinks a:not(.navbtn)::after{display:none}
  nav.menu-open .navlinks .navbtn{margin-top:14px;text-align:center}
}
