/*
  Akademi Stigen — grafisk omarbetning
  Samma innehåll och informationsstruktur, men ett tydligare eget visuellt språk:
  kalksten, cypress, oliv, sol och en stig som återkommande form.
*/

html{overflow-x:hidden}

:root{
  --lin:#eee7d6;
  --pergament:#fbf7ec;
  --trakol:#20231d;
  --sten:#706b5e;
  --oliv:#687254;
  --cypress:#18382c;
  --cypress-ljus:#285141;
  --guld:#b78d45;
  --sol:#d4af68;
  --salvia:#aeb7a0;
  --dimma:#d9ddcf;
  --linje:rgba(32,35,29,.14);
  --linje-mork:rgba(251,247,236,.2);
  --display:'Cormorant Garamond',Palatino,Georgia,serif;
  --body:'Newsreader',Georgia,serif;
  --utility:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --maxw:1180px;
  --textw:690px;
  --skugga-liten:0 12px 32px rgba(30,35,28,.08);
  --skugga:0 28px 70px rgba(30,35,28,.14);
  --radie:3px 30px 3px 3px;
}

/* ---------- grund ---------- */
.site-page{
  background:
    linear-gradient(rgba(238,231,214,.965),rgba(238,231,214,.965)),
    url('bilder/topografi.svg') center top/900px auto repeat;
  color:var(--trakol);
  font-size:1.105rem;
  line-height:1.72;
  letter-spacing:.002em;
  overflow-x:hidden;
}
.site-page::before{
  content:"";
  position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(circle at 50% -20%,rgba(255,255,255,.65),transparent 45%);
}
.site-page h1,.site-page h2,.site-page h3{
  text-wrap:balance;
  letter-spacing:-.018em;
}
.site-page h2{
  font-size:clamp(2.35rem,4.5vw,3.65rem);
  line-height:1.02;
  max-width:860px;
  margin-bottom:1.55rem;
}
.site-page h3{font-size:1.55rem;line-height:1.14}
.site-page p{max-width:76ch}
.site-page .smal{max-width:var(--textw)}
.site-page .inre{
  max-width:var(--maxw);
  padding:clamp(5rem,9vw,8.5rem) 2rem;
  position:relative;
}
.site-page main[style*="padding-top"]{padding-top:0!important}
.site-page main>section{
  position:relative;
  isolation:isolate;
}
.site-page main>section:not(.hero):not(.arbetet):not(.kontakt)::after{
  content:"";
  position:absolute;
  width:min(600px,55vw);height:min(600px,55vw);
  right:-270px;top:-220px;z-index:-1;pointer-events:none;
  background:url('bilder/topografi.svg') center/cover no-repeat;
  color:var(--oliv);opacity:.075;
  transform:rotate(19deg);
}
.site-page main>section:nth-child(even):not(.hero):not(.arbetet):not(.kontakt)::after{
  right:auto;left:-300px;transform:rotate(-17deg);
}
.site-page section[style*="background:var(--pergament)"]{
  background:rgba(251,247,236,.78)!important;
  border-color:rgba(32,35,29,.11)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.66);
}
.site-page .eyebrow{
  display:flex;align-items:center;gap:.75rem;
  font-size:.69rem;font-weight:650;letter-spacing:.22em;
  color:var(--oliv);margin-bottom:1.2rem;
}
.site-page .eyebrow::before{
  content:"";width:1.55rem;height:1px;flex:0 0 auto;
  background:var(--guld);
  box-shadow:.4rem 0 0 -0.25px var(--guld);
}
.site-page ::selection{background:var(--cypress);color:var(--pergament)}
.site-page a{text-underline-offset:.18em;text-decoration-thickness:.08em}
.site-page a:focus-visible,.site-page button:focus-visible,.site-page summary:focus-visible,
.site-page input:focus-visible,.site-page textarea:focus-visible{
  outline:2px solid var(--guld);outline-offset:4px;border-radius:3px;
}

/* ---------- navigation ---------- */
.site-page header{
  position:sticky;top:0;z-index:100;
  background:linear-gradient(to bottom,rgba(238,231,214,.96),rgba(238,231,214,.78));
  backdrop-filter:blur(18px) saturate(125%);
  border:0;
  padding:.65rem 1rem .5rem;
  box-shadow:0 10px 30px rgba(24,56,44,.045);
}
.site-page .nav{
  max-width:1240px;
  padding:.48rem .65rem .48rem .55rem;
  border:1px solid rgba(32,35,29,.12);
  border-radius:2px 22px 2px 2px;
  background:rgba(251,247,236,.72);
  box-shadow:0 9px 24px rgba(32,35,29,.055),inset 0 1px rgba(255,255,255,.7);
}
.site-page .marke{gap:.85rem}
.site-page .marke img{
  width:50px;height:50px;border-radius:50%;
  border:1px solid rgba(183,141,69,.35);
  box-shadow:0 5px 16px rgba(32,35,29,.12);
}
.site-page .marke span{
  font-size:1.05rem;letter-spacing:.18em;color:var(--cypress);
}
.site-page .navlinks{gap:.25rem}
.site-page .navlinks a{
  position:relative;
  padding:.68rem .86rem;
  border:0;border-radius:2px 13px 2px 2px;
  color:#34392f;font-size:.7rem;letter-spacing:.115em;font-weight:650;
  transition:color .2s ease,background .2s ease,transform .2s ease;
}
.site-page .navlinks a::after{
  content:"";position:absolute;left:.86rem;right:.86rem;bottom:.38rem;height:1px;
  background:var(--guld);transform:scaleX(0);transform-origin:left;transition:transform .2s ease;
}
.site-page .navlinks a:hover,.site-page .navlinks a[aria-current="page"]{
  color:var(--cypress);background:rgba(104,114,84,.095);transform:translateY(-1px);
}
.site-page .navlinks a:hover::after,.site-page .navlinks a[aria-current="page"]::after{transform:scaleX(1)}
.site-page .menytoggle{
  border:1px solid rgba(24,56,44,.28);border-radius:2px 12px 2px 2px;
  padding:.62rem .85rem;background:rgba(255,255,255,.28);font-weight:650;
}

/* ---------- hero ---------- */
.site-page .band{overflow:hidden}
.site-page .band img.fond{filter:saturate(.86) contrast(.97)}
.site-page .hero{
  min-height:calc(100svh - 78px);
  align-items:center;
  border-bottom:1px solid rgba(32,35,29,.13);
}
.site-page .hero::after{
  background:
    linear-gradient(92deg,rgba(235,226,205,.94) 0%,rgba(235,226,205,.82) 31%,rgba(235,226,205,.25) 64%,rgba(24,56,44,.10) 100%),
    linear-gradient(to top,rgba(24,56,44,.14),transparent 35%);
}
.site-page .hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:url('bilder/topografi.svg') left -160px top -120px/720px 720px no-repeat;
  color:var(--cypress);opacity:.095;
}
.site-page .hero .inre{width:100%;padding-top:clamp(4.5rem,9vw,8rem);padding-bottom:clamp(4.5rem,9vw,8rem)}
.site-page .plakett{
  position:relative;
  max-width:700px;
  padding:clamp(2rem,4.5vw,3.6rem) clamp(1.45rem,4.6vw,3.8rem) clamp(2rem,4vw,3.25rem);
  background:rgba(251,247,236,.81);
  border:1px solid rgba(24,56,44,.18);
  border-left:4px solid var(--guld);
  border-radius:2px 64px 2px 2px;
  box-shadow:var(--skugga),inset 0 1px rgba(255,255,255,.72);
  backdrop-filter:blur(8px) saturate(110%);
  overflow:hidden;
}
.site-page .plakett::after{
  content:"";position:absolute;right:-150px;bottom:-180px;width:430px;height:430px;
  background:url('bilder/topografi.svg') center/contain no-repeat;color:var(--oliv);opacity:.11;z-index:-1;
}
.site-page .hero h1{
  font-size:clamp(3.25rem,7.2vw,6.1rem);
  line-height:.9;letter-spacing:-.045em;color:var(--cypress);
  max-width:10ch;
}
.site-page .hero .ingress{
  margin-top:1.7rem;font-size:clamp(1.12rem,1.7vw,1.32rem);line-height:1.58;
  color:#363b31;max-width:58ch;
}
.site-page .hero .arlig{
  margin-top:1.8rem;padding-top:1.35rem;border-top:1px solid rgba(32,35,29,.13);
  font-size:.97rem;line-height:1.55;color:var(--sten);
}

/* ---------- knappar ---------- */
.site-page .knappar{gap:.8rem;margin-top:2.05rem}
.site-page .knapp{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  min-height:48px;
  padding:.84rem 1.25rem;
  border:1px solid rgba(24,56,44,.76);
  border-radius:2px 16px 2px 2px;
  font-size:.72rem;font-weight:700;letter-spacing:.12em;
  color:var(--cypress);
  box-shadow:inset 0 0 0 0 var(--cypress);
  transition:transform .2s ease,box-shadow .25s ease,color .25s ease,background .25s ease;
}
.site-page .knapp::after{content:"↗";font-size:.95rem;line-height:1;letter-spacing:0;transform:translateY(-1px)}
.site-page .knapp:hover{
  color:var(--pergament);background:transparent;
  box-shadow:inset 22rem 0 0 0 var(--cypress);
  transform:translateY(-2px);
}
.site-page .knapp.fylld{
  background:var(--cypress);border-color:var(--cypress);color:var(--pergament);
  box-shadow:0 9px 22px rgba(24,56,44,.16);
}
.site-page .knapp.fylld:hover{
  background:var(--cypress-ljus);border-color:var(--cypress-ljus);
  box-shadow:0 13px 28px rgba(24,56,44,.22);transform:translateY(-2px);
}

/* ---------- introduktion på undersidor ---------- */
.site-page main>section:first-child:not(.hero){
  background:
    linear-gradient(110deg,rgba(251,247,236,.88),rgba(251,247,236,.48)),
    url('bilder/topografi.svg') right -120px top -170px/680px 680px no-repeat!important;
  border-bottom:1px solid rgba(32,35,29,.12)!important;
}
.site-page main>section:first-child:not(.hero)>.inre{padding-top:clamp(5.5rem,9vw,8rem);padding-bottom:clamp(4.5rem,7vw,6.5rem)}
.site-page main>section:first-child:not(.hero) h2{font-size:clamp(3rem,6vw,5.3rem);max-width:960px;letter-spacing:-.035em}

/* ---------- pelarna ---------- */
.site-page .pelare{
  gap:1.2rem;border:0;margin-top:3rem;
}
.site-page .pelare>div{
  position:relative;overflow:hidden;
  min-height:330px;padding:2rem 1.8rem 2.1rem;
  border:1px solid rgba(32,35,29,.13)!important;
  border-radius:2px 30px 2px 2px;
  background:rgba(251,247,236,.66);
  box-shadow:var(--skugga-liten),inset 0 1px rgba(255,255,255,.72);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.site-page .pelare>div+div{padding-left:1.8rem}
.site-page .pelare>div::before{
  position:absolute;right:1.25rem;top:.85rem;
  font-family:var(--display);font-size:4.6rem;line-height:1;color:rgba(104,114,84,.12);
}
.site-page .pelare>div:nth-child(1)::before{content:"01"}
.site-page .pelare>div:nth-child(2)::before{content:"02"}
.site-page .pelare>div:nth-child(3)::before{content:"03"}
.site-page .pelare>div::after{
  content:"";position:absolute;left:0;bottom:0;width:100%;height:5px;
  background:linear-gradient(90deg,var(--guld),var(--oliv),transparent 88%);
}
.site-page .pelare>div:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(30,35,28,.13);border-color:rgba(183,141,69,.32)!important}
.site-page .pelare .eyebrow{margin-bottom:1.35rem}
.site-page .pelare h3{font-size:1.85rem;color:var(--cypress);margin-bottom:.85rem}
.site-page .pelare p{font-size:1.02rem;line-height:1.65;color:#45493f}
.site-page .pelarnot{
  margin-top:2.3rem;padding:1.3rem 1.5rem 1.3rem 1.8rem;
  border-left:3px solid var(--guld);background:rgba(251,247,236,.48);
  border-radius:0 20px 0 0;color:#605e52;
}

/* ---------- arbetet ---------- */
.site-page .arbetet{min-height:650px;display:flex;align-items:center;background:var(--cypress)}
.site-page .arbetet::after{
  background:
    linear-gradient(90deg,rgba(12,29,23,.91),rgba(12,29,23,.74) 46%,rgba(12,29,23,.28)),
    linear-gradient(to top,rgba(12,29,23,.55),transparent 60%);
}
.site-page .arbetet::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:url('bilder/topografi.svg') left -200px bottom -250px/800px 800px no-repeat;
  color:#fff;opacity:.08;
}
.site-page .arbetet .inre{width:100%}
.site-page .arbetet .eyebrow{color:#d8bf8c}
.site-page .arbetet h2{font-size:clamp(3.1rem,6vw,5.5rem);max-width:9ch;letter-spacing:-.045em}
.site-page .arbetet .smal{font-size:1.13rem;max-width:600px}
.site-page .arbetet .fem{gap:.6rem;margin-top:2.15rem}
.site-page .arbetet .fem span{
  padding:.52rem .82rem;border:1px solid rgba(251,247,236,.32);
  background:rgba(251,247,236,.06);border-radius:99px;
  backdrop-filter:blur(3px);
}

/* ---------- tvådel, bilder och citat ---------- */
.site-page .tvadel{grid-template-columns:1fr .9fr;gap:clamp(2.5rem,7vw,6rem)}
.site-page .ram{position:relative;padding:0 0 1.2rem 1.2rem}
.site-page .ram::before{
  content:"";position:absolute;left:0;bottom:0;right:1.2rem;top:1.2rem;
  border:1px solid rgba(183,141,69,.52);border-radius:2px 42px 2px 2px;z-index:-1;
}
.site-page .ram img{
  border:0;border-radius:2px 44px 2px 2px;
  box-shadow:var(--skugga);filter:saturate(.88) contrast(.98);
}
.site-page .ram figcaption{padding-left:.2rem;margin-top:.8rem;font-size:.71rem;letter-spacing:.07em}
.site-page .citat{
  position:relative;
  margin:2rem 0;padding:1.6rem 1.8rem 1.6rem 2rem;
  border:0;border-left:3px solid var(--guld);
  background:rgba(251,247,236,.55);border-radius:0 28px 0 0;
  font-size:clamp(1.5rem,2.7vw,2rem);line-height:1.28;color:var(--cypress);
}
.site-page .citat::before{
  content:"“";position:absolute;right:1rem;top:-.35rem;
  font-family:var(--display);font-size:5.5rem;color:rgba(104,114,84,.11);line-height:1;
}

/* ---------- stigen ---------- */
.site-page .stig{margin-top:2.3rem}
.site-page .stig li{padding:0 0 2rem 4rem}
.site-page .stig li::before{
  width:2.7rem;height:2.45rem;top:-.15rem;
  background:linear-gradient(145deg,var(--pergament),#e7deca);
  border:1px solid rgba(104,114,84,.3);
  color:var(--cypress);font-size:1.15rem;
  box-shadow:0 6px 15px rgba(32,35,29,.11),inset 0 1px rgba(255,255,255,.65);
}
.site-page .stig li:not(:last-child)::after{
  left:1.31rem;top:2.55rem;bottom:.35rem;border-left:2px dashed rgba(104,114,84,.42);
}
.site-page .stig strong{color:var(--cypress);font-size:.72rem}

/* ---------- programkort ---------- */
.site-page .fakta{
  gap:1rem;background:transparent;border:0;margin:3rem 0;
}
.site-page .fakta>div{
  position:relative;overflow:hidden;
  padding:1.75rem 1.55rem 1.8rem;
  border:1px solid rgba(32,35,29,.12);
  border-radius:2px 24px 2px 2px;
  background:rgba(251,247,236,.72);
  box-shadow:var(--skugga-liten);
}
.site-page .fakta>div:first-child{background:var(--cypress);color:var(--pergament);border-color:var(--cypress)}
.site-page .fakta>div:first-child .tal,.site-page .fakta>div:first-child .txt{color:var(--pergament)}
.site-page .fakta>div::after{
  content:"";position:absolute;right:-45px;bottom:-65px;width:150px;height:150px;
  border:1px solid currentColor;border-radius:50%;opacity:.09;
}
.site-page .fakta .tal{font-size:3.25rem;letter-spacing:-.035em;color:var(--cypress)}
.site-page .fakta .txt{font-size:.69rem;line-height:1.55}
.site-page .veckor,.site-page .spar{gap:1rem;margin-top:1.8rem}
.site-page .veckor>div,.site-page .spar>div{
  position:relative;
  padding:1.65rem 1.55rem 1.75rem;
  background:rgba(251,247,236,.65);
  border:1px solid rgba(32,35,29,.12);
  border-radius:2px 24px 2px 2px;
  box-shadow:0 10px 28px rgba(30,35,28,.055);
}
.site-page .spar>div{border-top:1px solid rgba(32,35,29,.12)}
.site-page .spar>div::before{
  content:"";position:absolute;left:0;top:0;width:44%;height:3px;
  background:linear-gradient(90deg,var(--guld),var(--oliv));
}
.site-page .veckor h3,.site-page .spar h3{font-size:1.35rem;color:var(--cypress)}
.site-page .rytm{margin-top:1.5rem}
.site-page .rytm li{padding:1rem 1rem 1rem 2rem;border-top:1px solid rgba(32,35,29,.11)}
.site-page .rytm li::before{left:.3rem;top:1.55rem;background:var(--guld);box-shadow:0 0 0 5px rgba(183,141,69,.1)}

/* ---------- bok ---------- */
.site-page .boken{
  background:
    linear-gradient(rgba(251,247,236,.88),rgba(251,247,236,.88)),
    url('bilder/topografi.svg') center/900px auto repeat!important;
}
.site-page .bokgrid{gap:clamp(3rem,7vw,6rem)}
.site-page .omslag{
  position:relative;
  max-width:350px;
  border:1px solid rgba(32,35,29,.18);
  border-radius:2px 34px 2px 2px;
  background:linear-gradient(145deg,#f5eddc,#e9dfc9);
  box-shadow:30px 35px 0 -23px rgba(104,114,84,.18),0 30px 65px rgba(30,35,28,.18);
  transform:rotate(-1.4deg);
  transition:transform .35s ease,box-shadow .35s ease;
}
.site-page .omslag::before{
  content:"";position:absolute;left:14px;top:0;bottom:0;width:1px;background:rgba(32,35,29,.13);
}
.site-page .omslag:hover{transform:rotate(0) translateY(-6px);box-shadow:24px 42px 0 -23px rgba(104,114,84,.2),0 38px 75px rgba(30,35,28,.2)}
.site-page .omslag img{width:135px;filter:drop-shadow(0 8px 10px rgba(30,35,28,.12))}
.site-page .omslag .boktitel{font-size:2.15rem;color:var(--cypress)}

/* ---------- för vem ---------- */
.site-page .tvakolumn{gap:1.1rem;margin-top:3rem}
.site-page .tvakolumn>div{
  padding:2rem 1.8rem 1.7rem;
  border:1px solid rgba(32,35,29,.12);
  border-radius:2px 30px 2px 2px;
  background:rgba(174,183,160,.13);
  box-shadow:var(--skugga-liten);
}
.site-page .tvakolumn>.nej{background:rgba(112,107,94,.07)}
.site-page .tvakolumn h3{font-size:.77rem;color:var(--cypress);letter-spacing:.15em}
.site-page .tvakolumn li{position:relative;padding:.9rem .3rem .9rem 1.55rem;border-color:rgba(32,35,29,.11)}
.site-page .tvakolumn li::before{
  content:"";position:absolute;left:.15rem;top:1.45rem;width:7px;height:7px;
  border:1px solid var(--guld);border-radius:50%;
}
.site-page .tvakolumn .nej li::before{border-color:var(--sten);transform:rotate(45deg);border-radius:0}

/* ---------- FAQ ---------- */
.site-page details{
  max-width:850px;margin:.7rem 0;
  border:1px solid rgba(32,35,29,.11)!important;
  border-radius:2px 20px 2px 2px;
  background:rgba(251,247,236,.5);
  box-shadow:0 7px 20px rgba(30,35,28,.035);
  overflow:hidden;
}
.site-page summary{
  padding:1.2rem 4rem 1.2rem 1.35rem;
  font-size:1.34rem;color:var(--cypress);
}
.site-page summary::after{
  right:1.25rem;top:1rem;width:1.7rem;height:1.7rem;
  display:grid;place-items:center;
  border:1px solid rgba(104,114,84,.32);border-radius:50%;
  font-size:1.25rem;line-height:1;
}
.site-page details[open]{background:rgba(251,247,236,.85);box-shadow:var(--skugga-liten)}
.site-page details .svar{padding:0 1.35rem 1.4rem;max-width:740px;color:#4a4d43}

/* ---------- kontakt ---------- */
.site-page .kontakt{
  overflow:hidden;
  background:
    linear-gradient(rgba(18,49,38,.95),rgba(18,49,38,.95)),
    url('bilder/topografi.svg') center/860px auto repeat;
  color:var(--pergament);
}
.site-page .kontakt::before{
  content:"";position:absolute;width:460px;height:460px;right:-140px;top:-170px;
  border:1px solid rgba(212,175,104,.2);border-radius:50%;box-shadow:0 0 0 80px rgba(212,175,104,.035),0 0 0 160px rgba(212,175,104,.025);
}
.site-page .kontakt .eyebrow{color:#cfbf9d}
.site-page .kontakt h2{font-size:clamp(3rem,6vw,5.4rem);max-width:11ch;letter-spacing:-.045em}
.site-page .kontakt .smal{font-size:1.1rem;color:#e7e2d4}
.site-page .kontakt .knapp{border-color:rgba(251,247,236,.78);color:var(--pergament)}
.site-page .kontakt .knapp:hover{color:var(--cypress);box-shadow:inset 22rem 0 0 0 var(--pergament)}
.site-page .kontakt .knapp.fylld{background:var(--pergament);color:var(--cypress);border-color:var(--pergament)}

/* ---------- footer ---------- */
.site-page footer{
  background:#e5ddca;border-top:1px solid rgba(32,35,29,.12);
  position:relative;overflow:hidden;
}
.site-page footer::after{
  content:"";position:absolute;right:-180px;bottom:-220px;width:520px;height:520px;
  background:url('bilder/topografi.svg') center/contain no-repeat;color:var(--oliv);opacity:.08;
}
.site-page .fot{max-width:var(--maxw);padding:3.8rem 2rem;position:relative;z-index:1}
.site-page .fot img{width:165px;border-radius:2px 20px 2px 2px;box-shadow:0 10px 26px rgba(30,35,28,.08)}
.site-page .fot small{font-size:.72rem;letter-spacing:.015em}
.site-page .fot .grek{color:var(--oliv);margin-top:.7rem}

/* ---------- princip- och övningssidor ---------- */
.site-page .princip,.site-page .ovning{
  position:relative;
  max-width:820px!important;
  margin:0 auto 1.25rem!important;
  padding:2rem 2rem 2.15rem!important;
  border:1px solid rgba(32,35,29,.12)!important;
  border-radius:2px 30px 2px 2px;
  background:rgba(251,247,236,.64);
  box-shadow:var(--skugga-liten);
}
.site-page .princip:last-child,.site-page .ovning:last-child{border-bottom:1px solid rgba(32,35,29,.12)!important}
.site-page .princip::before,.site-page .ovning::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(var(--guld),var(--oliv),transparent 90%);
}
.site-page .pnr{
  display:inline-flex!important;padding:.36rem .65rem;
  border:1px solid rgba(104,114,84,.25);border-radius:99px;
  background:rgba(104,114,84,.07);font-size:.68rem!important;color:var(--oliv)!important;
}
.site-page .princip h2{font-size:clamp(2rem,4vw,3rem);margin:.85rem 0 1rem!important}
.site-page .princip .tillamp,.site-page .ovning .losning{
  margin-top:1.2rem!important;padding:1.15rem 1.25rem!important;
  background:rgba(174,183,160,.14)!important;
  border:0!important;border-left:3px solid var(--guld)!important;
  border-radius:0 18px 0 0;
}
.site-page .princip details,.site-page .ovning details{
  margin-top:1rem;border-radius:2px 15px 2px 2px;
}
.site-page .princip summary,.site-page .ovning summary{
  padding:.9rem 3.5rem .9rem 1rem!important;
  font-family:var(--utility)!important;font-size:.72rem!important;letter-spacing:.1em!important;
  color:var(--cypress)!important;
}
.site-page .princip .djup{padding:1rem 1.1rem .4rem!important;color:#55584e!important}

/* ---------- formulär ---------- */
.site-page .fsteg{
  max-width:820px!important;margin:0 auto 1.4rem!important;
  padding:2rem 2rem 2.2rem;
  border:1px solid rgba(32,35,29,.12);
  border-radius:2px 30px 2px 2px;
  background:rgba(251,247,236,.66);
  box-shadow:var(--skugga-liten);
}
.site-page .fsteg h2{font-size:clamp(2rem,4vw,3rem)}
.site-page .gfraga{padding:1.25rem 0;border-color:rgba(32,35,29,.11)!important}
.site-page .gfraga label{padding:.45rem .7rem;border:1px solid rgba(32,35,29,.11);border-radius:99px;background:rgba(255,255,255,.28)}
.site-page .tfraga textarea,.site-page .prakt input,.site-page .ovning textarea{
  margin-top:.65rem!important;
  background:rgba(255,255,255,.47)!important;
  border:1px solid rgba(32,35,29,.17)!important;
  border-radius:2px 15px 2px 2px!important;
  padding:.9rem 1rem!important;
  box-shadow:inset 0 1px 5px rgba(30,35,28,.035);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.site-page .tfraga textarea:focus,.site-page .prakt input:focus,.site-page .ovning textarea:focus{
  outline:none;background:var(--pergament)!important;border-color:rgba(183,141,69,.7)!important;
  box-shadow:0 0 0 4px rgba(183,141,69,.1);
}
.site-page .fstopp{
  max-width:820px!important;margin:0 auto!important;
  padding:1.8rem 2rem!important;background:rgba(104,114,84,.1)!important;
  border:1px solid rgba(104,114,84,.2)!important;border-left:4px solid var(--oliv)!important;
  border-radius:0 24px 0 0;
}
.site-page button.knapp{font-family:var(--utility);border:1px solid var(--cypress)!important}

/* ---------- diskreta rörelser ---------- */
@media (prefers-reduced-motion:no-preference){
  .site-page .reveal-ready{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
  .site-page .reveal-ready.is-visible{opacity:1;transform:none}
}

/* ---------- responsivt ---------- */
@media (max-width:900px){
  .site-page header{padding:.45rem .55rem}
  .site-page .nav{border-radius:2px 16px 2px 2px}
  .site-page .navlinks{
    left:.25rem;right:.25rem;top:calc(100% + .55rem);
    padding:.4rem;background:rgba(251,247,236,.98);
    border:1px solid rgba(32,35,29,.14);border-radius:2px 18px 2px 2px;
    box-shadow:var(--skugga);
  }
  .site-page .navlinks li{border:0}
  .site-page .navlinks a{padding:.9rem 1rem}
  .site-page .pelare>div{min-height:0}
  .site-page .tvadel{grid-template-columns:1fr}
  .site-page .ram{max-width:720px}
}
@media (max-width:640px){
  .site-page{font-size:1.03rem}
  .site-page .inre{padding:4.4rem 1.2rem}
  .site-page .marke img{width:43px;height:43px}
  .site-page .marke span{font-size:.88rem;letter-spacing:.14em}
  .site-page .hero{min-height:auto}
  .site-page .hero::after{background:linear-gradient(90deg,rgba(235,226,205,.92),rgba(235,226,205,.65))}
  .site-page .hero .inre{padding:4.8rem 1rem}
  .site-page .plakett{border-radius:2px 34px 2px 2px}
  .site-page .hero h1{font-size:clamp(3.05rem,16vw,4.6rem)}
  .site-page .knappar{flex-direction:column;align-items:stretch}
  .site-page .knapp{width:100%}
  .site-page .pelare>div,.site-page .princip,.site-page .ovning,.site-page .fsteg{padding:1.45rem 1.25rem 1.55rem!important}
  .site-page .tvakolumn>div{padding:1.5rem 1.25rem}
  .site-page .ram{padding:0 0 .7rem .7rem}
  .site-page .fakta{grid-template-columns:1fr}
  .site-page .fot{padding:3rem 1.2rem}
}

/* ======================================================================
   Träningsfysiologi — samma identitet, anpassad för långläsning
   ====================================================================== */
.article-page{
  --ink:#20231d;--ink-soft:#4b5046;--ink-faint:#777b70;
  --paper:#eee7d6;--card:#fbf7ec;--line:rgba(32,35,29,.13);--line-strong:rgba(32,35,29,.22);
  --na:#a8513d;--na-soft:#f3dfd7;--ca:#285141;--ca-soft:#dfe9e2;
  --signal:#52668f;--signal-soft:#e0e4ed;--gold:#b78d45;--gold-soft:#f0e5cf;
  background:
    linear-gradient(rgba(238,231,214,.97),rgba(238,231,214,.97)),
    url('bilder/topografi.svg') center top/900px auto repeat;
  color:var(--ink);
}
.article-page .shell{max-width:1320px;background:rgba(251,247,236,.52);box-shadow:0 0 70px rgba(30,35,28,.08)}
.article-page nav{
  width:280px;padding:38px 24px 40px 30px;
  background:
    linear-gradient(rgba(24,56,44,.96),rgba(24,56,44,.96)),
    url('bilder/topografi.svg') center/650px auto repeat;
  border:0;color:#eef0e7;
  box-shadow:12px 0 35px rgba(24,56,44,.12);
}
.article-page nav .nav-title{color:#d7bd86;font-size:10px;letter-spacing:.18em}
.article-page nav a{color:#cbd2c7;border-left-color:transparent;border-radius:0 9px 9px 0;padding-top:6px;padding-bottom:6px}
.article-page nav a:hover{color:#fff;background:rgba(255,255,255,.055)}
.article-page nav a.part{color:#fff}
.article-page nav a.active{border-left-color:#d4af68;color:#fff;background:rgba(255,255,255,.07)}
.article-page main{background:rgba(251,247,236,.72)}
.article-page .col{max-width:730px;padding-left:38px;padding-right:38px}
.article-page .hero{
  min-height:0;padding:100px 0 68px;margin:0 0 10px;
  background:
    linear-gradient(125deg,rgba(251,247,236,.96),rgba(251,247,236,.7)),
    url('bilder/topografi.svg') right -100px top -160px/650px 650px no-repeat;
  border-bottom:1px solid var(--line);
}
.article-page .hero h1{font-family:'Fraunces',var(--display);font-size:clamp(42px,6vw,66px);line-height:.98;letter-spacing:-.035em;color:#18382c}
.article-page .hero h1 em{color:#a97831}
.article-page .hero .eyebrow{color:#687254}
.article-page .hero .lede{font-size:18px;line-height:1.7}
.article-page .part-head{padding-top:82px}
.article-page .part-head .num{color:#a97831}
.article-page .part-head h2,.article-page h3{font-family:'Fraunces',var(--display);color:#18382c}
.article-page .part-head h2{font-size:40px;letter-spacing:-.025em}
.article-page h3{font-size:28px}
.article-page .key,.article-page .ask,.article-page .trap,.article-page .open-q,.article-page .chain-note{
  border-radius:2px 20px 2px 2px;box-shadow:0 8px 24px rgba(30,35,28,.055);
}
.article-page footer{background:#18382c;color:#e9eadf;border:0}
.article-page footer a{color:#d8bf8c}
@media(max-width:820px){
  .article-page .shell{display:block}
  .article-page nav{width:100%;height:auto;position:relative;padding:22px 22px 18px;border-radius:0}
  .article-page nav a.sub{display:none}
  .article-page main{padding-bottom:70px}
  .article-page .col{padding-left:22px;padding-right:22px}
  .article-page .hero{padding-top:65px}
}
