/* Igknight – gemensam stil. Sidornas layout ligger inline i respektive HTML-fil.
   Färger och typsnitt finns som variabler här nedan. Använd dem, hitta inte på nya. */
:root{
  --bla-mork:#1B1F2B;
  --bla-sidfot:#14171F;
  --bla-ruta:#242938;
  --kant-mork:#4A5060;
  --papper:#F6F4EF;
  --papper-mork:#ECE8DF;
  --linje:#E2DED5;
  --kant:#BDB8AD;
  --sten:#A39E92;
  --vit:#FFFFFF;
  --text-dampad:#474C58;
  --gra-ljus:#C9CDD6;
  --gra:#A9AEBA;
  --gra-ljusare:#DADDE3;
  --vit-kall:#F4F5F7;
  --rost:#B8431E;
  --rost-mork:#8E3214;
  --orange:#E8693A;
  --xactos-orange:#F2622E;
  --typsnitt-text:'Source Sans 3', system-ui, sans-serif;
  --typsnitt-rubrik:'Source Serif 4', Georgia, serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papper)}
img{max-width:100%;height:auto}
a{color:var(--rost)}a:hover{color:var(--rost-mork)}
input,select,textarea,button{font:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
[id]{scroll-margin-top:16px}

/* Uppdragskort på startsidan: texten visas vid hover */
.case-grid>article{transition:box-shadow .2s ease}
.case-grid>article:hover{box-shadow:0 10px 28px rgba(27,31,43,0.10)}
.case-text{max-height:0;opacity:0;overflow:hidden;transition:max-height .35s ease,opacity .25s ease}
.case-grid>article:hover .case-text,.case-grid>article:focus-within .case-text{max-height:260px;opacity:1}
.case-more{font-size:15px;font-weight:600;color:var(--rost);transition:opacity .2s ease}
.case-grid>article:hover .case-more{opacity:0;height:0;overflow:hidden}
@media (hover: none){.case-text{max-height:none;opacity:1}.case-more{display:none}}

/* Mobilmeny */
.menu-btn{display:none;background:transparent;color:var(--papper);border:1px solid var(--kant-mork);border-radius:4px;padding:10px 16px;min-height:44px;cursor:pointer;font-weight:600}

@media (max-width: 900px){
  .menu-btn{display:inline-flex;align-items:center}
  #huvudmeny{display:none!important;flex-basis:100%;flex-direction:column;align-items:flex-start!important;gap:4px!important;padding:8px 0 4px}
  #huvudmeny.open{display:flex!important}
  #huvudmeny a{padding:10px 0;min-height:44px;display:inline-flex;align-items:center}
  #huvudmeny a[href*="kontakt"]{margin-top:8px;padding:12px 20px!important}
}

@media (max-width: 640px){
  [style*="max-width: 1240px"]{padding-left:20px!important;padding-right:20px!important}
  [style*="grid-template-columns"]{grid-template-columns:1fr!important}
  form [style*="grid-column"]{grid-column:auto!important}
  form{padding:24px!important}
  section[style*="padding: 112px 0"],section[style*="padding: 96px 0"]{padding-top:64px!important;padding-bottom:64px!important}
  section[style*="padding: 0 0 112px"]{padding-bottom:64px!important}
  h2[style*="font-size: 48px"],h2[style*="font-size: 44px"]{font-size:34px!important}
  h2[style*="font-size: 40px"]{font-size:30px!important}
  p[style*="font-size: 32px"]{font-size:24px!important}
  blockquote{font-size:20px!important}
  /* Långa ord som "Automationsingenjör" får plats i 375 px */
  h1[style*="clamp(40px, 5vw, 64px)"]{font-size:34px!important}
  figure[style*="padding: 48px"]{padding:28px!important}
  article[style*="padding: 40px"]{padding:28px!important}
}

/* Formulär: fält får aldrig bli bredare än skärmen */
form>div{min-width:0}
form input:not([type=hidden]):not([type=file]),form select,form textarea{width:100%;min-width:0;max-width:100%}
form input[type=file]{max-width:100%}
