/* Hjelseth Core – blokker på nettsiden. Farger og fonter arves fra temaet. */
.hc-info { margin: 0; }
.hc-info__etikett { display: block; font-size: 0.8125em; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; opacity: 0.7; margin-bottom: 0.15em; }
.hc-info--knapp .wp-block-button__link { display: inline-flex; align-items: center; gap: 0.5em; }
.hc-info--knapp svg { flex: none; }
.hc-juridisk { display: flex; flex-wrap: wrap; gap: 0.35em 0.75em; align-items: center; }
.hc-juridisk span { opacity: 0.5; }
.hc-juridisk__knapp { padding: 0; border: 0; background: none; font: inherit; color: inherit; text-decoration: inherit; cursor: pointer; }
.hc-juridisk__knapp:hover, .hc-juridisk__knapp:focus-visible { text-decoration: underline; }

/* Kontaktskjema */
.hc-skjema { display: grid; gap: 1rem; }
.hc-skjema__tittel { margin: 0 0 0.25rem; font-size: var(--wp--preset--font-size--large, 1.375rem); }
.hc-skjema__rad { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.hc-skjema__felt { display: grid; gap: 0.4rem; }
.hc-skjema label { font-weight: 600; font-size: 0.9375em; }
.hc-skjema input[type="text"], .hc-skjema input[type="email"], .hc-skjema input[type="tel"], .hc-skjema textarea {
	width: 100%; box-sizing: border-box;
	font: inherit; color: inherit;
	background: var(--wp--preset--color--base, #fff);
	border: 1px solid var(--wp--preset--color--border, #d8d8d8);
	border-radius: var(--wp--custom--radius--md, 10px);
	padding: 0.8rem 0.95rem;
	transition: border-color 150ms ease, box-shadow 150ms ease;
}
.hc-skjema textarea { resize: vertical; min-height: 8rem; }
.hc-skjema input:focus, .hc-skjema textarea:focus {
	outline: none;
	border-color: var(--wp--preset--color--accent, #1F5EFF);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--wp--preset--color--accent, #1F5EFF) 22%, transparent);
}
.hc-skjema [aria-invalid="true"] { border-color: #C62828 !important; }
.hc-skjema__feil { color: #C62828; font-size: 0.875em; font-weight: 500; }
.hc-skjema__samtykke { display: grid; grid-template-columns: auto 1fr; gap: 0.6rem; align-items: start; }
.hc-skjema__samtykke input { width: 1.15rem; height: 1.15rem; margin-top: 0.2rem; accent-color: var(--wp--preset--color--accent, #1F5EFF); }
.hc-skjema__samtykke label { font-weight: 400; font-size: 0.9375em; }
.hc-skjema__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.hc-skjema__melding:empty { display: none; }
.hc-skjema__melding { padding: 0.85rem 1rem; border-radius: var(--wp--custom--radius--md, 10px); font-weight: 500; }
.hc-skjema__melding.is-feil { background: #FDECEC; color: #8E1C1C; }
.hc-skjema__melding.is-ok { background: #E8F7EE; color: #145C32; }
.hc-skjema__send { justify-self: start; }
.hc-skjema__send button { cursor: pointer; }
.hc-skjema.sender .hc-skjema__send button { opacity: 0.65; pointer-events: none; }

/* Ikon (hjelseth/ikon). Farger fra profilen. Stil: boks/sirkel = tonet bakgrunn, fylt = profilfarge, ren = bare streken. */
.hc-ikon { --hc-ikon: 28px; display: inline-grid; place-items: center; flex: none; width: calc(var(--hc-ikon) * 2); height: calc(var(--hc-ikon) * 2); color: var(--wp--preset--color--accent, #1F5EFF); transition: background-color 180ms ease, color 180ms ease; }
.hc-ikon svg { width: var(--hc-ikon); height: var(--hc-ikon); display: block; }
.hc-ikon--s { --hc-ikon: 20px; }
.hc-ikon--l { --hc-ikon: 40px; }
.hc-ikon--boks { border-radius: var(--wp--custom--radius--md, 12px); background: color-mix(in srgb, currentColor 11%, transparent); }
.hc-ikon--sirkel { border-radius: 50%; background: color-mix(in srgb, currentColor 11%, transparent); }
.hc-ikon--fylt { border-radius: 50%; background: var(--wp--preset--color--accent, #1F5EFF); color: var(--wp--preset--color--accent-contrast, #fff); }
.hc-ikon--ren { width: auto; height: auto; }
/* På mørk eller farget seksjon: ikonet følger tekstfargen. */
:is(.is-style-seksjon-mork, .is-style-seksjon-aksent) .hc-ikon:not(.hc-ikon--fylt) { color: inherit; }
