/* The interactive service cards are scoped to the homepage service section. */
#tjenester.service-categories{--service-panel:#1c1e1b;--service-line:#373b33;--service-text:#eeeae4;--service-warm:#c2b396;--service-muted:#b1b3a8;display:block;padding:48px 6.8%;background:#151615;color:var(--service-text)}
#tjenester>.service-intro{padding:0 0 32px;margin:0;border:0;max-width:800px}
#tjenester>.service-intro h2{font-size:clamp(2rem,3.2vw,3rem);font-weight:300;letter-spacing:.045em;line-height:1.18}
#tjenester>.service-intro .short-line{margin:22px 0;background:var(--service-warm)}
#tjenester>.service-intro p{max-width:none;margin:0;font-size:1rem;line-height:1.7}
#tjenester>.service-intro .service-prompt{margin-top:12px;color:var(--service-warm)}
#tjenester .service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#tjenester .service-card{position:relative;isolation:isolate;min-width:0;padding:30px;margin:0;border:1px solid var(--service-line);display:flex;flex-direction:column;align-items:stretch;background:var(--service-panel);color:var(--service-text);transition:transform .28s ease,border-color .28s ease,background-color .28s ease,box-shadow .28s ease}
#tjenester .service-card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(300px circle at var(--service-x,50%) var(--service-y,30%),#c2b39620,transparent 80%);opacity:0;transition:opacity .3s ease;pointer-events:none}
#tjenester .service-card::after{content:"";position:absolute;bottom:0;left:30px;height:2px;width:0;background:var(--service-warm);transition:width .35s ease;pointer-events:none}
#tjenester .service-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px;color:var(--service-warm)}
#tjenester .service-number{order:1;font-size:.875rem;line-height:1.5;letter-spacing:.08em;color:#a9afa1;font-variant-numeric:tabular-nums}
#tjenester .service-card-top svg{width:42px;height:42px;flex-shrink:0;transition:transform .35s ease}
#tjenester .service-card h3{max-width:100%;font-size:clamp(1.5rem,2.1vw,1.875rem);font-weight:300;letter-spacing:.005em;line-height:1.25;overflow-wrap:anywhere;text-wrap:balance}
#tjenester .service-card p{max-width:550px;margin:12px 0 24px;font-size:1rem;line-height:1.65;color:var(--service-muted)}
#tjenester .service-card>.service-card-link{margin-top:auto;max-width:210px;min-height:44px;font-size:.875rem;color:var(--service-warm)}
#tjenester .service-card-teaser,#tjenester .service-card-action{display:none}
#tjenester.is-interactive .service-card-copy,#tjenester.is-interactive .service-card-link{display:none}
#tjenester.is-interactive .service-card-teaser{display:block}
#tjenester.is-interactive .service-card-action{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto;font-size:.875rem;line-height:1.5;color:var(--service-warm)}
#tjenester .service-card-arrow{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:1px solid #505548;font-size:1.5rem;line-height:1;transition:background-color .25s ease,color .25s ease,transform .25s ease,border-color .25s ease}
#tjenester .service-card-trigger{position:absolute;inset:0;width:100%;height:100%;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:inherit;cursor:pointer;z-index:1;-webkit-tap-highlight-color:transparent}
#tjenester .service-card-trigger:focus-visible{outline:2px solid var(--service-warm);outline-offset:5px}
#tjenester .service-card.is-open{border-color:#aa997b;background:#242720}
#tjenester .service-card.is-open::before{opacity:1}
#tjenester .service-card.is-open::after{width:calc(100% - 60px)}
#tjenester .service-card.is-open .service-card-arrow{background:var(--service-warm);color:#151615;border-color:var(--service-warm);transform:rotate(90deg)}
#tjenester.is-interactive .service-card:focus-within .service-card-top svg path{animation:service-ink .8s ease both}
#tjenester .service-card:focus-within::before{opacity:1}
@media(hover:hover) and (pointer:fine){
  #tjenester .service-card:hover{transform:translateY(-3px);border-color:#7c806c;box-shadow:0 10px 24px #00000025}
  #tjenester .service-card:hover::before{opacity:1}
  #tjenester .service-card:not(.is-open):hover::after{width:40px}
  #tjenester .service-card:hover .service-card-top svg{transform:translateY(-2px)}
  #tjenester.is-interactive .service-card:hover .service-card-top svg path{animation:service-ink .8s ease both}
  #tjenester .service-card:hover .service-card-arrow{background:var(--service-warm);color:#151615;border-color:var(--service-warm)}
}
#tjenester .service-detail-panel{grid-column:1/-1;background:#262921;border:1px solid #676d58;padding:26px 30px 30px;animation:service-reveal .25s ease;scroll-margin:25px}
#tjenester [hidden]{display:none!important}
#tjenester .service-detail-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
#tjenester .service-detail-top p{font-size:.875rem;line-height:1.5;letter-spacing:.1em;color:var(--service-warm);max-width:none;margin:0}
#tjenester .service-detail-close{display:flex;align-items:center;justify-content:center;background:transparent;color:var(--service-text);border:1px solid #636a59;width:44px;height:44px;flex-shrink:0;font:inherit;font-size:1.75rem;border-radius:0;cursor:pointer}
#tjenester .service-detail-close:hover{background:#373d30}
#tjenester .service-detail-panel h3{font-size:clamp(1.5rem,2.2vw,2rem);font-weight:300;line-height:1.35;letter-spacing:.005em;margin:0 0 14px;color:var(--service-text)}
#tjenester .service-detail-copy{max-width:850px;font-size:1.0625rem;line-height:1.75;color:#d0d3c7;margin:0}
#tjenester .service-detail-tags{display:flex;flex-wrap:wrap;gap:12px 24px;padding:20px 0 0;margin:20px 0 18px;list-style:none;border-top:1px solid #474d3e;font-size:.9375rem;line-height:1.6;color:var(--service-warm)}
#tjenester .service-detail-tags li::before{content:"+";margin-right:10px;color:#a2ae92}
#tjenester .service-detail-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:11px 0;color:var(--service-text);border-bottom:1px solid #9eab8a;font-size:.9375rem;line-height:1.5;min-height:44px;width:auto;max-width:100%;letter-spacing:.04em;text-transform:none;margin:0}
#tjenester .service-detail-link:hover{color:var(--service-warm)}
@keyframes service-ink{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}
@keyframes service-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
#kompetanse .service-content p+p{margin-top:16px}
.service-content .service-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0 24px}
.service-content .service-actions a{max-width:100%;line-height:1.7}
.service-anchor{display:block;scroll-margin-top:24px}
@media(max-width:1200px){#tjenester.service-categories{padding:40px 6%}}
@media(max-width:760px){
  #tjenester.service-categories{padding:34px 6%}
  #tjenester>.service-intro{padding-bottom:28px}
  #tjenester .service-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  #tjenester .service-card{padding:24px}
  #tjenester .service-card::after{left:24px}
  #tjenester .service-card.is-open::after{width:calc(100% - 48px)}
  #tjenester .service-card-top{margin-bottom:18px}
  #tjenester .service-card h3{font-size:1.5rem}
  #tjenester .service-card p{margin-bottom:18px}
  #tjenester .service-detail-panel{padding:20px 24px 24px}
}
@media(prefers-reduced-motion:reduce){
  #tjenester .service-card,#tjenester .service-card::before,#tjenester .service-card::after,#tjenester .service-card-arrow,#tjenester .service-card-top svg,#tjenester .service-card-top svg path,#tjenester .service-detail-panel{animation:none!important;transition:none!important;transform:none!important}
}

/* The whole card is now a native link: one tap to the full service. */
#tjenester .direct-card{text-transform:none;letter-spacing:normal;text-decoration:none;max-width:none;width:100%;gap:0;justify-content:flex-start}
#tjenester .direct-card .service-card-teaser{display:block}
#tjenester .direct-card .service-card-copy{display:none}
#tjenester .direct-card .service-card-action{display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-size:14px;line-height:1.5;min-height:44px;color:var(--service-warm)}
#tjenester .direct-card:focus-visible{outline:2px solid var(--service-warm);outline-offset:4px}
#tjenester .direct-card:focus-visible::before{opacity:1}
#tjenester .service-anchor{position:absolute;pointer-events:none}
@media(hover:hover){#tjenester .direct-card:hover{border-color:#aa997b;background:#242720;transform:translateY(-3px)}#tjenester .direct-card:hover::before{opacity:1}}
@media(prefers-reduced-motion:reduce){#tjenester .direct-card:hover{transform:none}}
