/* Editorial pages: About, Contacts, Key-Secrets In Short, SGL Files, Partners, Blog + posts.
   One shared stylesheet ($pageCss = 'editorial') so the ten pages cannot drift apart. */

html{scroll-behavior:smooth;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
section[id]{scroll-margin-top:110px;}
@media(max-width:767px){section[id]{scroll-margin-top:80px;}}

/* ── type ── */
.ed-label{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;}
.ed-label-green{color:var(--site-green);}
.ed-h1{font-family:var(--serif);font-size:clamp(2.4rem,4.8vw,3.6rem);font-weight:600;color:var(--site-green);letter-spacing:-.015em;line-height:1.06;margin-bottom:20px;text-wrap:balance;max-width:22ch;}
.ed-h2{font-family:var(--serif);font-size:clamp(1.9rem,3.4vw,2.7rem);font-weight:600;color:var(--site-green);letter-spacing:-.015em;line-height:1.12;margin-bottom:22px;text-wrap:balance;max-width:26ch;}
.ed-h3{font-family:var(--serif);font-size:clamp(1.45rem,2.4vw,1.85rem);font-weight:600;color:var(--site-green);letter-spacing:-.015em;line-height:1.18;margin:38px 0 14px;text-wrap:balance;}
.ed-lead{font-size:clamp(1.05rem,1.6vw,1.25rem);color:var(--text-primary);line-height:1.6;max-width:56ch;text-wrap:pretty;}
.ed-p{font-size:1.0625rem;color:var(--text-secondary);line-height:1.8;max-width:68ch;text-wrap:pretty;}
.ed-p+.ed-p{margin-top:16px;}
.ed-p a,.ed-list a,.ed-ol a,.ed-inline-link{color:var(--site-green);font-weight:700;text-decoration:underline;text-underline-offset:3px;}
.ed-p em,.ed-list em{font-style:italic;}
.ed-p strong,.ed-list strong,.ed-ol strong{color:var(--text-primary);font-weight:800;}
.ed-small{font-size:.875rem;color:var(--text-muted);line-height:1.6;}

.ed-list{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:10px;max-width:68ch;}
.ed-list li{position:relative;padding-left:22px;font-size:1.0625rem;color:var(--text-secondary);line-height:1.7;text-wrap:pretty;}
.ed-list li::before{content:"";position:absolute;left:2px;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--c,var(--site-green));}
.ed-ol{margin:14px 0 0;padding-left:1.4em;display:flex;flex-direction:column;gap:10px;max-width:68ch;}
.ed-ol li{font-size:1.0625rem;color:var(--text-secondary);line-height:1.7;padding-left:4px;text-wrap:pretty;}
.ed-ol li::marker{font-weight:800;color:var(--site-green);}

/* ── layout ── */
.ed-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:52px;align-items:center;padding-top:70px;padding-bottom:58px;}
.ed-hero--text{grid-template-columns:minmax(0,1fr);}
.ed-hero figure{display:flex;flex-direction:column;gap:12px;margin:0;}
.ed-hero .ed-fig-narrow{max-width:360px;justify-self:center;width:100%;}
.ed-sec{padding-top:24px;padding-bottom:24px;}
.ed-text{max-width:780px;}
.ed-2col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:start;}
.ed-roots{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px;align-items:center;}
.ed-roots figure{max-width:460px;}

/* ── image frame (uniform rule) ── */
.ed-frame{border:1px solid var(--border-default);border-top:3px solid var(--site-green);border-radius:12px;overflow:hidden;line-height:0;}
.ed-frame img{display:block;width:100%;height:auto;object-fit:cover;}
.ed-cap{font-size:.8125rem;color:var(--text-muted);line-height:1.5;}
.ed-fig{display:flex;flex-direction:column;gap:12px;margin:30px 0;}

/* ── pull quote ── */
.ed-quote{margin:28px 0;padding:4px 0 4px 22px;border-left:3px solid var(--site-green);}
.ed-quote p{font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.5rem);font-weight:600;color:var(--text-primary);line-height:1.4;letter-spacing:-.01em;text-wrap:pretty;}
.ed-quote cite{display:block;margin-top:10px;font-style:normal;font-size:.8125rem;font-weight:700;color:var(--text-muted);letter-spacing:.02em;}

/* ── buttons ── */
.ed-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:26px;}
.ed-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:var(--r-full);background:var(--site-green);color:#F2EAE0;font-size:.9375rem;font-weight:700;transition:background-color .2s ease;}
.ed-btn:hover,.ed-btn:focus-visible{background:#2E5412;}
.ed-link{font-size:.9375rem;font-weight:700;color:var(--site-green);text-decoration:underline;text-underline-offset:3px;}
.ed-mail{font-size:.9375rem;font-weight:700;color:var(--text-secondary);overflow-wrap:anywhere;}

/* ── jump chips ── */
.ed-jumps{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;}
.ed-jumps a{padding:9px 16px;border-radius:var(--r-full);background:var(--site-green-tint);border:1px solid var(--border-subtle);font-size:.875rem;font-weight:700;color:var(--site-green);transition:border-color .15s ease;}
.ed-jumps a:hover{border-color:var(--site-green);}

/* ── books list ── */
.ed-books{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;}
.ed-books li{font-size:1.0625rem;color:var(--text-secondary);line-height:1.75;padding:18px 0;border-top:1px solid var(--border-subtle);text-wrap:pretty;}
.ed-books li:last-child{border-bottom:1px solid var(--border-subtle);}
.ed-books strong{color:var(--text-primary);font-weight:800;}
.ed-books a strong{color:var(--site-green);text-decoration:underline;text-underline-offset:3px;}

/* ── voices (testimonials) ── */
.ed-voices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.ed-voice{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--r-xl);padding:22px;display:flex;flex-direction:column;gap:16px;}
.ed-voice blockquote{margin:0;font-size:1rem;color:var(--text-secondary);line-height:1.7;text-wrap:pretty;}
.ed-who{display:flex;align-items:center;gap:13px;margin-top:auto;}
.ed-who .ed-ph{width:56px;height:56px;border-radius:50%;overflow:hidden;border:1px solid var(--border-default);flex-shrink:0;background:var(--bg-surface);}
.ed-who .ed-ph img{width:100%;height:100%;display:block;object-fit:cover;}
.ed-who .ed-ini{display:flex;align-items:center;justify-content:center;font-size:.9375rem;font-weight:800;color:var(--site-green);background:var(--site-green-tint);}
.ed-who b{display:block;font-size:.9375rem;font-weight:800;color:var(--text-primary);line-height:1.3;}
.ed-who small{display:block;font-size:.8125rem;color:var(--text-muted);line-height:1.4;}

/* ── cards (contacts, support) ── */
.ed-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.ed-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px 22px;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-top:4px solid var(--border-default);border-radius:var(--r-xl);color:var(--text-primary);transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1);}
a.ed-card:hover{transform:translateY(-4px);box-shadow:var(--sh-lg);}
.ed-card h3{font-size:1.125rem;font-weight:800;color:var(--site-green);line-height:1.3;}
.ed-card p{font-size:.9375rem;color:var(--text-secondary);line-height:1.65;text-wrap:pretty;}
.ed-card .ed-go{margin-top:auto;padding-top:10px;font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--site-green);}
.ed-card .ed-price{font-size:.8125rem;font-weight:700;color:var(--text-muted);}

/* ── files panel ── */
.ed-panel{margin-top:26px;padding:28px;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--r-xl);}

/* ── closing band ── */
.ed-close{text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;}
.ed-close .ed-quote{border-left:0;padding:0;margin:0;max-width:760px;}
.ed-close .ed-quote p{font-size:clamp(1.5rem,2.8vw,2.2rem);}

/* ── secrets in short: family blocks ── */
.ed-family{border-left:3px solid var(--site-green);padding-left:24px;margin-top:40px;}
.ed-family .ed-h3{margin-top:0;}

/* ── blog ── */
.ed-blog{border-bottom:1px solid var(--border-subtle);max-width:980px;}
.ed-row{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;align-items:baseline;padding:28px 0;border-top:1px solid var(--border-subtle);}
.ed-row .ed-kind{font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);}
.ed-row .ed-title{display:block;font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:600;color:var(--site-green);line-height:1.2;letter-spacing:-.015em;transition:color .2s ease;}
.ed-row .ed-desc{display:block;margin-top:8px;font-size:.9375rem;color:var(--text-secondary);line-height:1.6;max-width:62ch;}
.ed-row:hover .ed-title{color:var(--text-primary);}
.ed-back{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:700;color:var(--site-green);margin-bottom:22px;}
.ed-back:hover{text-decoration:underline;text-underline-offset:3px;}
.ed-related{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;}
.ed-related a{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--r-md);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-left:3px solid var(--site-green);font-size:.9375rem;font-weight:700;color:var(--text-primary);}
.ed-related a:hover{border-color:var(--border-strong);}

/* ── responsive ── */
@media(max-width:1100px){
  .ed-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:900px){
  .ed-hero{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:52px;padding-bottom:44px;}
  .ed-hero figure{max-width:440px;}
  .ed-hero .ed-fig-narrow{justify-self:start;max-width:300px;}
  .ed-2col,.ed-roots{grid-template-columns:minmax(0,1fr);gap:40px;}
  .ed-voices{grid-template-columns:minmax(0,1fr);}
}
@media(max-width:767px){
  .ed-hero{padding-top:40px!important;padding-bottom:36px!important;}
  .ed-cards{grid-template-columns:minmax(0,1fr);}
  .ed-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:22px 0;}
  .ed-panel{padding:20px;}
  .ed-family{padding-left:16px;}
  .ed-roots figure{max-width:340px;}
}

/* sec-lines' ::before/::after-marger må ikke kollapse ut av seksjonen (ga en mørk stripe mot body-bakgrunnen) */
section.sec-lines{display:flow-root;}

/* Contacts: adressekort i heroen */
.ed-addr{background:var(--bg-surface);border:1px solid var(--border-default);border-top:3px solid var(--site-green);border-radius:var(--r-xl);padding:28px;display:flex;flex-direction:column;gap:12px;max-width:420px;justify-self:end;width:100%;}
.ed-addr p:not(.ed-label){font-size:1rem;color:var(--text-secondary);line-height:1.6;}
.ed-addr .ed-addr-name{font-family:var(--serif);font-size:1.75rem;font-weight:600;color:var(--site-green);line-height:1.15;}
.ed-addr a{font-size:1rem;font-weight:700;color:var(--site-green);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere;}
.ed-addr-codes{display:flex;gap:6px;margin:4px 0;}
.ed-addr-codes span{width:34px;height:4px;border-radius:9999px;}
@media(max-width:900px){.ed-addr{justify-self:stretch;max-width:none;}}
