/* Content pages (2026-11-07): articles and the article list, Om oss, Kundeservice, legal pages, 404, empty cart.
   Templates and helpers: content-pages.php. Text follows type.css; the one exception is long reading text
   (articles, legal pages), set at 17px with a taller line height because it is read in full. */

/* ---------- Page header ---------- */
.rt-page-head {max-width:760px;margin:8px 0 36px;}
.rt-page-head h1 {margin:0;font-size:var(--rt-page-size);line-height:var(--rt-title-leading);letter-spacing:var(--rt-title-tracking);}
.rt-lead {margin:14px 0 0;font-size:clamp(18px,1rem + .35vw,21px);line-height:1.5;}
.rt-page-meta {margin:12px 0 0;font-size:14px;color:#6a7a8c;}
body a.rt-back-link {display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;font-size:16px;font-weight:650;color:var(--ink);text-decoration:none;}
.rt-back-link::before {content:"";width:7px;height:7px;margin-left:2px;border:solid currentColor;border-width:0 0 1.6px 1.6px;transform:rotate(45deg);}
body a.rt-back-link:hover {text-decoration:underline;text-underline-offset:3px;}

/* ---------- Reading text ---------- */
.rt-prose {max-width:680px;font-size:17px;line-height:1.7;color:var(--ink);}
.rt-prose > :first-child {margin-top:0;}
.rt-prose p {margin:0 0 1.1em;}
.rt-prose h2 {margin:1.9em 0 .5em;font-size:var(--rt-section-sm-size);line-height:1.25;letter-spacing:-.01em;scroll-margin-top:24px;}
.rt-prose h3 {margin:1.6em 0 .4em;font-size:19px;line-height:1.3;}
.rt-prose h4 {margin:1.4em 0 .3em;font-size:17px;}
.rt-prose ul, .rt-prose ol {margin:0 0 1.2em;padding-left:1.3em;}
.rt-prose li {margin:.35em 0;padding-left:.2em;}
.rt-prose strong {font-weight:650;}
.rt-prose a {color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
.rt-prose a:hover {text-decoration-thickness:2px;}

/* ---------- Article ---------- */
.rt-article {max-width:760px;margin:0 auto;}
.rt-article .rt-page-head {margin-bottom:28px;}
.rt-article-figure {margin:0 0 40px;}
.rt-article-figure img, .rt-article-image {display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:16px;background:var(--surface-muted);}
.rt-article-body {max-width:none;}
.rt-article-body > p:first-child {font-size:19px;line-height:1.6;}
.rt-article-products, .rt-article-more {margin-top:72px;padding-top:40px;border-top:1px solid var(--line);}
.rt-article-products h2, .rt-article-more h2, .rt-notfound-popular h2, .rt-empty-cart-popular h2 {margin:0 0 24px;font-size:var(--rt-section-size);line-height:var(--rt-section-leading);}

/* ---------- Article cards (list and "Flere artikler") ---------- */
.rt-article-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px;}
@media (min-width:1000px) {.rt-article-grid--list {grid-template-columns:repeat(3,minmax(0,1fr));}}
body a.rt-article-card {display:flex;flex-direction:column;color:var(--ink);text-decoration:none;}
.rt-article-card-image {display:block;overflow:hidden;border-radius:14px;background:var(--surface-muted);}
.rt-article-card-image img {display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1);}
@media (hover:hover) {a.rt-article-card:hover .rt-article-card-image img {transform:scale(1.03);} a.rt-article-card:hover .rt-article-card-title {text-decoration:underline;text-underline-offset:4px;}}
.rt-article-card-title {margin:16px 0 6px;font-size:var(--rt-minor-size);font-weight:650;line-height:1.3;}
.rt-article-card-intro {font-size:16px;line-height:1.55;}
.rt-article-card-meta {margin-top:8px;font-size:14px;color:#6a7a8c;}
.rt-articles-page .navigation.pagination {margin-top:40px;}

/* ---------- Legal pages ---------- */
.rt-legal.has-toc {display:grid;grid-template-columns:240px minmax(0,680px);gap:64px;align-items:start;}
.rt-toc {position:sticky;top:24px;}
.rt-toc summary {display:none;}
.rt-toc ol {margin:0;padding:0;list-style:none;border-left:1px solid var(--line);}
.rt-toc li {margin:0;}
body .rt-toc a {display:block;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:15px;line-height:1.35;color:var(--ink);text-decoration:none;}
body .rt-toc a:hover, body .rt-toc a.is-current {border-left-color:var(--ink);}
body .rt-toc a.is-current {font-weight:650;}
.rt-legal-help {max-width:680px;margin:48px 0 0;padding-top:24px;border-top:1px solid var(--line);font-size:16px;}
.rt-legal.has-toc + .rt-legal-help {margin-left:304px;}
.rt-legal-help a {text-decoration:underline;text-underline-offset:3px;}

/* ---------- Om oss ---------- */
.rt-about-figure {margin:0 0 32px;}
.rt-about-image {display:block;width:100%;height:auto;aspect-ratio:21 / 9;object-fit:cover;border-radius:18px;background:var(--surface-muted);}
.rt-facts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 56px;padding:0;list-style:none;}
.rt-facts li {display:flex;flex-direction:column;gap:6px;padding:22px 24px;border-radius:14px;background:var(--surface-muted);font-size:16px;line-height:1.5;}
.rt-facts strong {font-size:var(--rt-minor-size);font-weight:650;line-height:1.3;}
.rt-facts a {text-decoration:underline;text-underline-offset:3px;white-space:nowrap;}
.rt-about-story section {display:grid;grid-template-columns:minmax(0,320px) minmax(0,680px);gap:24px 64px;padding:36px 0;border-top:1px solid var(--line);}
.rt-about-story h2 {margin:0;font-size:var(--rt-section-sm-size);line-height:1.25;}
.rt-about-story .rt-prose p:last-child {margin-bottom:0;}
.rt-about-story .rt-chips {grid-column:2;margin-top:0;}
.rt-about-cta {display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 0;padding-top:36px;border-top:1px solid var(--line);}
.rt-company-line {margin:28px 0 0;font-size:14px;color:#6a7a8c;}

/* ---------- Buttons and chips used on these pages ---------- */
body a.rt-btn-primary, body a.rt-btn-secondary {display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:99px;font-size:16px;font-weight:650;text-decoration:none;transition:background-color .15s,border-color .15s;}
body a.rt-btn-primary {background:var(--green);color:var(--ink);}
body a.rt-btn-primary:hover {background:#8ade91;}
body a.rt-btn-secondary {border:1px solid var(--ink);color:var(--ink);}
body a.rt-btn-secondary:hover {background:var(--ink);color:#fff;}
.rt-chips {display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none;}
body .rt-chips a {display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border:1px solid #cfd8e0;border-radius:99px;background:#fff;color:var(--ink);font-size:16px;font-weight:650;text-decoration:none;transition:border-color .15s;}
body .rt-chips a:hover {border-color:var(--ink);}

/* ---------- Kundeservice ---------- */
.rt-contact-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 56px;padding:0;list-style:none;}
body .rt-contact-cards a {display:flex;align-items:center;gap:16px;height:100%;padding:18px 20px;border:1px solid #cfd8e0;border-radius:14px;background:#fff;color:var(--ink);text-decoration:none;transition:border-color .15s;}
body .rt-contact-cards a:hover {border-color:var(--ink);}
.rt-contact-icon {display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--surface-muted);}
.rt-contact-icon svg {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.rt-contact-text {display:flex;flex-direction:column;gap:2px;min-width:0;font-size:16px;}
.rt-contact-text strong {font-weight:650;}
.rt-contact-text span {overflow-wrap:anywhere;}
.rt-faq {max-width:760px;}
.rt-faq-group + .rt-faq-group {margin-top:44px;}
.rt-faq-group h2 {margin:0 0 8px;font-size:var(--rt-section-sm-size);line-height:1.25;}
.rt-faq-item {border-bottom:1px solid var(--line);}
.rt-faq-item summary {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;font-size:17px;font-weight:650;line-height:1.4;cursor:pointer;list-style:none;}
.rt-faq-item summary::-webkit-details-marker {display:none;}
.rt-faq-item summary::after {content:"";flex:none;width:9px;height:9px;margin-right:4px;border:solid currentColor;border-width:0 1.8px 1.8px 0;transform:translateY(-3px) rotate(45deg);transition:transform .2s;}
.rt-faq-item[open] summary::after {transform:translateY(2px) rotate(225deg);}
.rt-faq-item summary:focus-visible {outline:2px solid var(--ink);outline-offset:4px;border-radius:4px;}
.rt-faq-item .rt-prose {padding:0 0 18px;font-size:16px;}
.rt-faq-item .rt-prose p:last-child {margin-bottom:0;}
.rt-support-more {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;max-width:760px;margin-top:56px;padding-top:36px;border-top:1px solid var(--line);}
.rt-support-more h2 {margin:0 0 12px;font-size:var(--rt-minor-size);line-height:1.3;}
.rt-link-list {margin:0;padding:0;list-style:none;}
.rt-link-list li {margin:0 0 8px;}
.rt-link-list a, .rt-address a {text-decoration:underline;text-underline-offset:3px;}
.rt-address {margin:0;font-size:16px;line-height:1.6;}

/* ---------- 404 ---------- */
.rt-notfound-search {display:flex;gap:8px;max-width:620px;margin:0;}
body .rt-notfound-search input[type=search] {flex:1;min-width:0;height:56px;padding:0 22px;border:1px solid #cfd8e0;border-radius:99px;background:#fff;font:inherit;font-size:16px;color:var(--ink);}
body .rt-notfound-search input[type=search]:focus {outline:0;border-color:var(--ink);box-shadow:0 0 0 3px #e2e6ea;}
body .rt-notfound-search button {height:56px;padding:0 26px;border:0;border-radius:99px;background:var(--ink);color:#fff;font:inherit;font-size:16px;font-weight:650;cursor:pointer;}
.rt-notfound-popular, .rt-empty-cart-popular {margin-top:56px;}
.rt-notfound-help {margin:40px 0 0;font-size:16px;}
.rt-notfound-help a {text-decoration:underline;text-underline-offset:3px;}

/* ---------- Empty cart ---------- */
.rt-empty-cart {display:flex;flex-direction:column;align-items:center;max-width:560px;margin:8px auto 0;padding:48px 24px;border-radius:18px;background:var(--surface-muted);text-align:center;}
.rt-empty-cart-icon {display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#fff;}
.rt-empty-cart-icon svg {width:28px;height:28px;}
.rt-empty-cart-title {margin:18px 0 6px;font-size:var(--rt-section-sm-size);font-weight:650;line-height:1.25;}
.rt-empty-cart-text {margin:0;font-size:16px;line-height:1.55;}
.rt-empty-cart .rt-chips {justify-content:center;margin-top:24px;}
body.woocommerce-cart:has(.rt-empty-cart) .content-main h1 {display:none;}

/* ---------- Phones and small tablets ---------- */
@media (max-width:900px) {
 .rt-legal.has-toc {display:block;}
 .rt-toc {position:static;margin:0 0 28px;}
 .rt-toc details {border:1px solid #cfd8e0;border-radius:14px;}
 .rt-toc summary {display:flex;align-items:center;justify-content:space-between;padding:14px 18px;font-size:16px;font-weight:650;cursor:pointer;list-style:none;}
 .rt-toc summary::-webkit-details-marker {display:none;}
 .rt-toc summary::after {content:"";width:8px;height:8px;border:solid currentColor;border-width:0 1.6px 1.6px 0;transform:translateY(-2px) rotate(45deg);}
 .rt-toc details[open] summary::after {transform:translateY(2px) rotate(225deg);}
 .rt-toc ol {margin:0 18px 14px;}
 .rt-legal.has-toc + .rt-legal-help {margin-left:0;}
 .rt-about-story section {grid-template-columns:1fr;gap:12px;padding:28px 0;}
 .rt-about-story .rt-chips {grid-column:auto;}
 .rt-facts, .rt-contact-cards {grid-template-columns:1fr;}
 .rt-facts {margin-bottom:40px;}
}
@media (max-width:700px) {
 .rt-article-grid {grid-template-columns:1fr;gap:32px;}
 .rt-about-image {aspect-ratio:3 / 2;border-radius:14px;}
 .rt-article-figure img, .rt-article-image {border-radius:12px;}
 .rt-prose {font-size:16px;}
 .rt-article-body > p:first-child {font-size:18px;}
 .rt-support-more {grid-template-columns:1fr;}
 .rt-notfound-search button {padding:0 20px;}
 .rt-empty-cart {padding:40px 20px;}
}
@media (prefers-reduced-motion:reduce) {.rt-article-card-image img, .rt-faq-item summary::after {transition:none;}}

/* ---------- Return from Vipps (page-vipps-payment.php) ---------- */
.rt-vipps-return-box {display:flex;flex-direction:column;align-items:center;gap:16px;max-width:520px;margin:24px auto 48px;padding:40px 28px;border-radius:18px;background:var(--surface-muted);text-align:center;font-size:16px;}
.rt-vipps-return-box h1, .rt-vipps-return-box h2 {font-size:var(--rt-minor-size);line-height:1.3;margin:0;}
.rt-vipps-return-box p {margin:0;}

/* Old articles write sub-headings as h3 directly followed by text; give them less space above than a section. */
.rt-article-body h3 + p {margin-top:0;}
.rt-article-body h2 + h3 {margin-top:.8em;}
.rt-article-card-intro {display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

/* Two-column list (Om oss: industries). */
.rt-prose ul.rt-columns {columns:2;column-gap:32px;padding-left:1.2em;}
.rt-prose ul.rt-columns li {break-inside:avoid;}

/* ---------- Referanser (page-referanser.php) and the customer logos (also on the front page) ---------- */
.sk-quotes {columns:3 300px;column-gap:20px;}
.sk-quote {break-inside:avoid;margin:0 0 20px;padding:26px 26px 22px;border-radius:16px;background:var(--surface-muted);}
.sk-quote blockquote {margin:0;}
.sk-quote blockquote p {margin:0;font-size:17px;line-height:1.6;}
.sk-quote blockquote p::before {content:"«";} .sk-quote blockquote p::after {content:"»";}
.sk-quote figcaption {display:flex;flex-direction:column;gap:2px;margin-top:16px;font-size:16px;}
.sk-quote figcaption strong {font-weight:650;}
.sk-logos-section {margin-top:48px;padding-top:36px;border-top:1px solid var(--line);}
.sk-logos-section h2 {margin:0 0 24px;font-size:var(--rt-section-sm-size);}
.sk-logos {display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0;padding:0;list-style:none;}
.sk-logos li {display:grid;place-items:center;height:96px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff;}
.sk-logos img {display:block;max-width:100%;max-height:56px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.8;}

/* ---------- Brukerveiledning (page-brukerveiledning.php) ---------- */
.sk-downloads {display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:0;padding:0;list-style:none;}
body .sk-downloads a {display:flex;align-items:center;gap:16px;height:100%;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-decoration:none;transition:border-color .15s;}
body .sk-downloads a:hover {border-color:var(--ink);}
.sk-download-icon {display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--surface-muted);}
.sk-download-icon svg {width:22px;height:22px;}
.sk-download-text {display:flex;flex-direction:column;gap:2px;font-size:16px;}
.sk-download-text strong {font-weight:650;}
.sk-download-text span {font-size:14px;color:#6a7a8c;}

/* Referanser (concept A, 2026-11-08): logo wall, featured quote on a full-width light band, white quote cards. */
body:has(.sk-refs-page) {overflow-x:clip;} /* The band reaches the window edges without a side scrollbar. */
.sk-refs-logos {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:44px 64px;margin:48px 0 0;padding:0;list-style:none;}
.sk-refs-logos li {display:grid;place-items:center;}
.sk-refs-logos img {display:block;max-width:100%;height:auto;opacity:.85;}
.sk-refs-featured {position:relative;isolation:isolate;margin:clamp(64px,7vw,96px) 0 0;padding:clamp(56px,6vw,80px) 0;}
.sk-refs-featured::before {content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:#f4f6f8;}
.sk-refs-featured .sk-quote-mark {width:40px;height:30px;margin-bottom:22px;}
.sk-refs-featured blockquote {max-width:960px;margin:0 0 24px;}
.sk-refs-featured blockquote p {margin:0;font-size:clamp(22px,2.4vw,32px);line-height:1.35;letter-spacing:-.01em;}
.sk-refs-featured figcaption, .sk-refs-card figcaption {display:flex;flex-direction:column;gap:2px;font-size:15px;color:#4a5866;}
.sk-refs-featured figcaption strong, .sk-refs-card figcaption strong {font-size:17px;font-weight:650;color:var(--ink);}
.sk-quote-mark {display:block;width:30px;height:23px;margin-bottom:18px;color:var(--green);}
.sk-refs-quotes {margin-top:clamp(64px,7vw,96px);}
.sk-refs-quotes h2 {margin:0 0 28px;font-size:var(--rt-section-size);line-height:var(--rt-section-leading);letter-spacing:var(--rt-section-tracking);}
.sk-refs-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.sk-refs-card {display:flex;flex-direction:column;margin:0;padding:28px 28px 26px;border:1px solid var(--line);border-radius:16px;background:#fff;}
.sk-refs-card blockquote {margin:0 0 24px;}
.sk-refs-card blockquote p {margin:0;font-size:17px;line-height:1.55;}
.sk-refs-card figcaption {margin-top:auto;}
.sk-refs-page .rt-about-cta {margin-top:clamp(56px,6vw,80px);}
@media (max-width:1000px) {.sk-refs-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:700px) {
 /* Same relative sizes as on desktop, just smaller (zoom keeps the equal-area sizing); rows centred. */
 .sk-refs-logos {gap:26px 30px;margin-top:32px;}
 .sk-refs-logos img {zoom:.58;}
 .sk-refs-grid {grid-template-columns:1fr;gap:14px;}
 .sk-refs-card {padding:24px 22px 22px;}
}
