/* Foreldrahús: everything theme.json can't express. Design "6" from the options sheet (6 Nov 2026): the first design
   draft's structure, the client's content, their social media look (soft light blue, orchid, steel blue; handwritten
   words in white clouds), Faustina headings, Figtree text, Lucide icons. */
:root {
  --fh-blek: #13304a; --fh-grar: #4a5d70; --fh-lin: #dde6ea; --fh-fol: #f1f6f8; --fh-bleik-l: #f6e7ee;
  --fh-blar: #00709b; --fh-blar-d: #00506f; --fh-himinn: #a9cbe6; --fh-orkidea: #dc92c8; --fh-stal: #5287b2;
}
body { -webkit-font-smoothing: antialiased; }
a { text-underline-offset: 3px; }
.fh-icon { flex: none; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
.fh-main { padding-bottom: 72px; }
.fh-forsida { padding-bottom: 0; }
.fh-forsida > .wp-block-post-content > * { margin-block-start: 0; }

/* Handwritten word in a white cloud */
.fh-sky { display: inline-block; background: #fff; color: #2f5f8a; font: 400 clamp(17px, 1.7vw, 26px)/1.05 'Gochi Hand', Figtree, sans-serif;
  text-transform: uppercase; padding: .7em 1em; border-radius: 48% 52% 46% 54% / 58% 50% 50% 42%; margin: 0; }
.fh-yfir { font-weight: 700; letter-spacing: .14em; text-transform: uppercase; font-size: 13.5px; color: var(--fh-orkidea); margin: 0; }
.fh-yfir a { color: inherit; text-decoration: none; }

/* Buttons from the plugin (email, call) and core buttons share one look */
.fh-postur { margin: 0; }
.fh-takki, .wp-block-button__link { display: inline-flex; align-items: center; gap: 10px; padding: 14px 22px; border-radius: 999px; font-weight: 600;
  font-size: 17px; line-height: 1.2; text-decoration: none; border: 2px solid transparent; }
.fh-takki--fyllt { background: var(--fh-blar); color: #fff; }
.fh-takki--fyllt:hover { background: var(--fh-blar-d); }
.fh-takki--bleikur { background: #c06aa6; color: #fff; }
.fh-takki--hvitt { background: #fff; color: var(--fh-blar); }
.fh-takki--lina { border-color: currentColor; color: var(--fh-blar); padding: 12px 20px; }
.is-style-outline > .wp-block-button__link { border-color: currentColor; background: transparent; }
.fh-takkar { gap: 12px; }

/* Closing notice and the top phone bar */
.fh-tilk { background: #fff4d6; color: #4a3b00; border-bottom: 1px solid #f0dfa8; }
.fh-tilk__inn { max-width: 1200px; margin: 0 auto; display: flex; gap: 10px; align-items: center; justify-content: center; padding: 10px clamp(20px, 4vw, 32px); }
.fh-tilk p { margin: 0; font-size: 15px; line-height: 1.35; }
.fh-tilk .fh-icon { color: #b07d00; }
.fh-simalina { background: var(--fh-blek); color: #fff; font-size: 15px; }
.fh-simalina__inn { max-width: 1200px; margin: 0 auto; display: flex; gap: 10px; align-items: center; justify-content: center; padding: 8px clamp(20px, 4vw, 32px); }
.fh-simalina a { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; color: #fff; text-decoration: none; padding: 2px 10px; border-radius: 999px; background: rgba(255, 255, 255, .12); }
.fh-simalina a .fh-icon { color: var(--fh-orkidea); }
.fh-styttra { display: none; }

/* Header */
.fh-haus { background: #fff; border-bottom: 1px solid var(--fh-lin); padding-block: 14px; }
.fh-haus__haegri { gap: 28px; }
.fh-menu { font-weight: 600; font-size: 16px; gap: 26px; }
.fh-menu a { text-decoration: none; color: var(--fh-blek); }
.fh-menu .current-menu-item > a, .fh-menu a[aria-current="page"] { color: var(--fh-blar); }
.fh-haus__panta .fh-takki { padding: 11px 20px; font-size: 16px; }
.fh-merki img, .wp-block-site-logo img { height: auto; }
.fh-simi { display: none; background: none; border: 0; width: 48px; height: 48px; padding: 0; color: var(--fh-blar); cursor: pointer; }

/* Phone menu: full-screen dialog */
.fh-vm { margin: 0; padding: 0; border: 0; width: 100%; max-width: 100%; height: 100%; max-height: 100%; overflow-y: auto;
  background: linear-gradient(160deg, #3f78a8 0%, var(--fh-stal) 55%, #8f88c0 100%); color: #fff; }
.fh-vm::backdrop { background: rgba(20, 30, 40, .4); }
.fh-vm[open] { animation: fh-vm-inn .22s ease-out; }
@keyframes fh-vm-inn { from { opacity: 0; transform: translateY(-12px); } to { opacity: 1; transform: none; } }
.fh-vm__inn { max-width: 560px; margin: 0 auto; padding: 16px 20px 32px; display: flex; flex-direction: column; gap: 14px; min-height: 100%; box-sizing: border-box; }
.fh-vm__haus { display: flex; justify-content: space-between; align-items: center; padding-bottom: 6px; }
.fh-vm__merki { height: 46px; width: auto; filter: brightness(0) invert(1); }
.fh-vm__loka { width: 48px; height: 48px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .18); color: #fff; display: grid; place-items: center; cursor: pointer; }
.fh-vm__loka:focus { outline: none; } .fh-vm__loka:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.fh-vm__neyd { display: flex; align-items: center; gap: 14px; background: #fff; color: var(--fh-blek); border-radius: 20px; padding: 14px 14px 14px 16px; text-decoration: none; box-shadow: 0 10px 30px rgba(0, 30, 60, .2); }
.fh-vm__neyd-tak { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; background: var(--fh-bleik-l); color: #8a3f62; flex: none; }
.fh-vm__neyd small { display: block; font-size: 13px; color: var(--fh-grar); }
.fh-vm__neyd strong { display: block; font: 700 28px/1.1 Figtree, sans-serif; }
.fh-vm__hringja { margin-left: auto; background: var(--fh-blar); color: #fff; font-weight: 700; font-size: 15px; padding: 10px 16px; border-radius: 999px; }
.fh-vm__panta { display: flex; align-items: center; justify-content: center; gap: 10px; background: #c06aa6; color: #fff; font-weight: 700; font-size: 18px; padding: 15px; border-radius: 999px; text-decoration: none; }
.fh-vm__tenglar { display: flex; flex-direction: column; margin-top: 6px; }
.fh-vm__tengill { display: flex; justify-content: space-between; align-items: center; padding: 14px 2px; border-bottom: 1px solid rgba(255, 255, 255, .22); color: #fff; text-decoration: none; font: 600 30px/1.15 Faustina, serif; }
.fh-vm__tengill .fh-icon { opacity: .7; }
.fh-vm__hopur .fh-vm__tengill { border-bottom: 0; padding-bottom: 4px; }
.fh-vm__pillur { display: flex; flex-wrap: wrap; gap: 8px; padding: 12px 0 16px; border-bottom: 1px solid rgba(255, 255, 255, .22); }
.fh-vm__pilla { font-size: 14.5px; font-weight: 600; color: #fff; text-decoration: none; padding: 7px 13px; border-radius: 999px; background: rgba(255, 255, 255, .16); }
.fh-vm__fotur { margin-top: auto; padding-top: 18px; font-size: 15px; color: #e8f0f7; }
.fh-vm__fotur p { display: flex; gap: 10px; align-items: center; margin: 0 0 8px; }
.fh-vm__sky { margin-top: 14px; font-size: 17px; transform: rotate(-3deg); }

/* Page title box (inner pages) */
.fh-sidutitill { background: linear-gradient(120deg, #3f78a8 0%, var(--fh-stal) 40%, #c98bbd 100%); color: #fff; padding-block: clamp(40px, 6vw, 72px); margin-bottom: clamp(32px, 5vw, 56px); }
.fh-sidutitill h1 { color: #fff; font-size: clamp(38px, 5.2vw, 64px); max-width: 18ch; margin-block: 10px 0; }
.fh-sidutitill .fh-yfir { color: #ffd9e8; }
.fh-sidutitill .fh-inngangur, .fh-sidutitill .fh-inngangur p { font-size: clamp(18px, 1.6vw, 21px); color: #e6f2f7; max-width: 52ch; margin: 16px 0 0; }
.fh-sidutitill .fh-dags { color: #e6f2f7; margin-top: 12px; }
.fh-sidutitill .fh-postur { margin-top: 24px; }
.fh-sidutitill .wp-block-query-title { color: #fff; font-size: clamp(38px, 5.2vw, 64px); margin: 0; }
.fh-onnur { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; }
.fh-onnur span:not(.screen-reader-text) { font-size: 14px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: 4px 10px; border-radius: 6px; background: rgba(255, 255, 255, .18); }
.fh-efni > * + * { margin-block-start: 1.1em; }
.fh-efni h2 { font-size: clamp(28px, 3vw, 36px); margin-top: 1.6em; }
.fh-adalmynd img { border-radius: 20px; }
.fh-spurning { margin-top: 56px; padding-top: 40px; border-top: 1px solid var(--fh-lin); }
.fh-spurning h2 { font-size: 32px; color: var(--fh-blek); }
.fh-spurning .fh-samband { margin-top: 28px; }
.fh-til-baka a { font-weight: 700; text-decoration: none; }

/* ---------------- Front page sections ---------------- */
.fh-kafli { padding-block: clamp(52px, 7vw, 84px); }
.fh-kafli--fol { background: var(--fh-fol); }
.fh-kafli h2 { font-size: clamp(32px, 3.6vw, 46px); color: var(--fh-blek); }
.fh-kafli .fh-midja { text-align: center; margin-left: auto; margin-right: auto; }
.fh-kafli > .fh-yfir + h2, .fh-kafli h2 { margin-top: 12px; }

/* Hero */
.fh-hetja { background: linear-gradient(120deg, #3f78a8 0%, var(--fh-stal) 40%, #c98bbd 100%); color: #fff; padding-block: clamp(44px, 7vw, 84px) clamp(40px, 6vw, 72px); }
.fh-hetja .fh-yfir { color: #ffd9e8; }
.fh-hetja h1 { color: #fff; font-size: clamp(42px, 5.6vw, 72px); line-height: 1.04; max-width: 15ch; margin-top: 14px; }
.fh-hetja .fh-inn { font-size: clamp(18px, 1.6vw, 21px); color: #e6f2f7; max-width: 46ch; }
.fh-hetja .fh-takki--lina, .fh-hetja .is-style-outline .wp-block-button__link { color: #fff; border-color: rgba(255, 255, 255, .8); }
.fh-hratt { display: flex; gap: 18px 40px; flex-wrap: wrap; margin: 36px 0 0; padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, .3); }
.fh-hratt dt { font-size: 13.5px; color: #d0e6ef; }
.fh-hratt dd { margin: 2px 0 0; font-weight: 700; font-size: 17px; }
.fh-hratt a { color: #fff; text-decoration: none; }

/* Message tiles (their own lines from social media) */
.fh-flisar { display: grid !important; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 0 !important; }
.fh-flisar > * { margin: 0 !important; aspect-ratio: 1; display: grid; place-items: center; text-align: center; padding: 16px; color: #fff; }
.fh-flisar > *:nth-child(3n+1) { background: var(--fh-himinn); }
.fh-flisar > *:nth-child(3n+2) { background: var(--fh-stal); }
.fh-flisar > *:nth-child(3n) { background: var(--fh-orkidea); }
.fh-flisar p { margin: 0; font: 700 clamp(13px, 1.35vw, 20px)/1.2 Figtree, sans-serif; overflow-wrap: anywhere; }
.fh-flisar .fh-sky { font: 400 clamp(13px, 1.4vw, 21px)/1.05 'Gochi Hand', Figtree, sans-serif; max-width: 90%; }

/* Situation cards */
.fh-leidir { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px !important; margin-top: 36px; }
.fh-leid { position: relative; display: flex !important; flex-direction: column; gap: 10px; padding: 30px; border: 1px solid var(--fh-lin); border-radius: 22px; background: #fff; }
.fh-leid > * { margin: 0 !important; }
.fh-leid h3 { font-size: 25px; color: var(--fh-blek); }
.fh-leid p { color: var(--fh-grar); font-size: 16px; }
.fh-leid .fh-postur { margin-top: auto !important; padding-top: 10px; }
.fh-leid .fh-takki--lina { padding: 0; border: 0; font-weight: 700; }
.fh-takn { width: 52px; height: 52px; border-radius: 14px; display: grid; place-items: center; background: #e3f0f5; color: var(--fh-blar); }
.fh-takn--bleikur { background: var(--fh-bleik-l); color: #8a3f62; }

/* Services */
.fh-thjonusta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 32px; }
.fh-thj { background: #fff; border-radius: 20px; padding: 24px; text-decoration: none; display: grid; grid-template-columns: 46px 1fr; gap: 16px; align-items: start; color: var(--fh-blek); transition: transform .15s, box-shadow .15s; }
.fh-thj:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(0, 40, 60, .08); }
.fh-thj__tak { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: var(--fh-bleik-l); color: #8a3f62; }
.fh-thj__texti { display: flex; flex-direction: column; gap: 6px; }
.fh-thj__titill { font: 600 22px/1.15 Faustina, serif; }
.fh-thj__lysing { font-size: 15.5px; color: var(--fh-grar); }
.fh-thj__merki { align-self: flex-start; margin-top: 4px; font-size: 13px; font-weight: 700; color: var(--fh-blar); background: #e3f0f5; border-radius: 999px; padding: 3px 10px; }
.fh-kafli--fol .fh-thj { background: #fff; }
:not(.fh-kafli--fol) > .fh-thjonusta .fh-thj { box-shadow: inset 0 0 0 1px var(--fh-lin); }

/* Warning signs: clouds on steel blue */
.fh-einkenni { background: var(--fh-stal); color: #fff; }
.fh-einkenni h2 { color: #fff; }
.fh-einkenni .fh-yfir { color: #ffd9e8; }
.fh-einkenni p { color: #e3eef6; }
/* Þekkir þú einkennin? (the user, 9 Nov 2026, option 1 of ~/scratch-foreldrahus/sheet/einkenni): text left with the
   signs as a plain two-column list, the picture right, level with the text. CSS only, so the front page content (in
   the database) stays as it is: the text group is flattened into the grid (display: contents) and its parts get rows;
   the empty 1fr rows above and below centre them against the picture. */
.fh-einkenni .fh-tvennt { grid-template-columns: minmax(0, 1fr) min(440px, 40%); grid-template-rows: 1fr repeat(5, auto) 1fr;
  column-gap: clamp(36px, 5vw, 72px) !important; row-gap: 0 !important; align-items: start; }
.fh-einkenni .fh-tvennt > :first-child { display: contents; }
.fh-einkenni .fh-tvennt > :first-child > * { grid-column: 1; }
.fh-einkenni .fh-tvennt > :first-child > .fh-yfir { grid-row: 2; }
.fh-einkenni .fh-tvennt > :first-child > h2 { grid-row: 3; margin-top: 14px !important; }
.fh-einkenni .fh-tvennt > :first-child > p:not(.fh-yfir) { grid-row: 4; margin-top: 18px !important; }
.fh-einkenni .fh-tvennt > :first-child > .wp-block-buttons { grid-row: 6; margin-top: 34px !important; }
.fh-einkenni .fh-tvennt::after { content: ""; grid-area: 1 / 2 / 8 / 3; align-self: center; width: 100%; aspect-ratio: 1;
  border-radius: 24px; background: #0f2a3d url(../img/einkenni.jpg) center / cover; }
.fh-einkenni .fh-skyin { grid-area: 5 / 1; display: grid !important; grid-template-columns: 1fr 1fr; gap: 12px 28px !important;
  margin-top: 30px !important; padding-top: 26px; border-top: 1px solid rgba(255, 255, 255, .3); }
.fh-einkenni .fh-skyin .fh-sky { position: relative; padding: 0 0 0 22px; border-radius: 0; background: none; transform: none;
  margin: 0 !important; color: #fff; font: 600 17px/1.35 Figtree, sans-serif; text-transform: none; }
.fh-einkenni .fh-skyin .fh-sky::before { content: ""; position: absolute; left: 0; top: .5em; width: 9px; height: 9px;
  border-radius: 50%; background: var(--fh-orkidea); }
@media (max-width: 781px) {
  .fh-einkenni .fh-tvennt { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
  .fh-einkenni .fh-tvennt::after { grid-area: 7 / 1; margin-top: 36px; }
  .fh-einkenni .fh-skyin { grid-template-columns: minmax(0, 1fr); }
}

/* Foreldrasíminn band with chat bubbles */
.fh-siminn { background: linear-gradient(120deg, var(--fh-blar-d), var(--fh-blar)); color: #fff; }
.fh-siminn h2 { color: #fff; }
.fh-siminn .fh-yfir { color: #ffd9e8; }
.fh-siminn p { color: #d9eef6; }
.fh-bolur { display: flex !important; flex-direction: column; gap: 14px !important; }
.fh-bola { margin: 0 !important; max-width: 34ch; padding: 16px 20px; border-radius: 22px; font-size: 16px; line-height: 1.45; color: var(--fh-blek) !important; background: #fff; border-bottom-left-radius: 6px; }
.fh-bola--svar { align-self: flex-end; background: var(--fh-bleik-l); border-radius: 22px; border-bottom-right-radius: 6px; }

/* 1986 + goals */
.fh-ar { background: #e3f0f5; border-radius: 26px; padding: 48px 40px !important; }
.fh-ar .fh-artal { font: 600 clamp(70px, 9vw, 120px)/1 Faustina, serif; color: var(--fh-blar); margin: 0; }
.fh-ar p { color: #3c5064; }
.fh-hak { list-style: none; padding: 0; }
.fh-hak li { position: relative; padding: 6px 0 6px 28px; }
.fh-hak li::before { content: ""; position: absolute; left: 0; top: 13px; width: 16px; height: 9px; border: solid var(--fh-orkidea); border-width: 0 0 2.5px 2.5px; transform: rotate(-45deg); }

/* Support + guardian angel cards */
.fh-spjold { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px !important; }
.fh-spjald { background: #fff; border-radius: 24px; padding: 36px !important; }
.fh-spjald--bleikt { background: #fbeaf5; }
.fh-spjald h2 { font-size: 34px; }
.fh-samstarf { text-align: center; }
.fh-samstarf .wp-block-gallery { justify-content: center; align-items: center; gap: 48px; }
.fh-samstarf img { height: 64px !important; width: auto !important; mix-blend-mode: multiply; }

/* Contact list */
.fh-samband { margin: 0; border: 1px solid var(--fh-lin); border-radius: 22px; overflow: hidden; background: #fff; }
.fh-samband div { display: grid; grid-template-columns: 28px 1fr; column-gap: 12px; padding: 18px 22px; border-bottom: 1px solid var(--fh-lin); }
.fh-samband div:last-child { border: 0; }
.fh-samband .fh-icon { grid-row: span 2; color: var(--fh-blar); margin-top: 2px; }
.fh-samband dt { font-size: 14px; color: #66788a; }
.fh-samband dd { margin: 0; font-weight: 700; font-size: 17px; overflow-wrap: anywhere; }
.fh-samband a { color: var(--fh-blek); text-decoration: none; }

/* Two-column sections */
.fh-tvennt { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px !important; align-items: center; }
.fh-tvennt > * { margin: 0 !important; }

/* News */
.fh-frettir { gap: 28px !important; }
.fh-frett img { border-radius: 18px; }
.fh-frett .wp-block-post-title { font-size: 23px; margin-top: 6px; }
.fh-frett .wp-block-post-title a { text-decoration: none; color: var(--fh-blek); }
.fh-dags { font-size: 14px; color: #66788a; margin-top: 12px; }

/* Footer */
.fh-fotur { background: var(--fh-blek); color: #e9eef0; padding-block: 56px; }
.fh-fotur__inn { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; }
.fh-fotur__merki img { filter: brightness(0) invert(1); }
.fh-fotur p { color: #cfd6d9; max-width: 40ch; }
.fh-fotur__titill { font-size: 22px; color: #fff; margin: 0 0 12px; }
.fh-fotur .fh-samband { background: transparent; border-color: #3a3b40; }
.fh-fotur .fh-samband div { border-color: #3a3b40; }
.fh-fotur .fh-samband a { color: #fff; }
.fh-fotur .fh-samband dt { color: #aab3b7; }
.fh-fotur .fh-samband .fh-icon { color: var(--fh-orkidea); }

/* Orðasafn (glossary) */
.fh-ordasafn__leit { position: relative; max-width: 560px; }
.fh-ordasafn__leit .fh-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--fh-grar); }
.fh-ordasafn__leit input { width: 100%; box-sizing: border-box; padding: 14px 16px 14px 48px; font: inherit; font-size: 17px; border: 2px solid var(--fh-lin); border-radius: 999px; }
.fh-ordasafn__leit input:focus { outline: none; border-color: var(--fh-blar); }
.fh-ordasafn__grind { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--fh-lin); border-left: 1px solid var(--fh-lin); }
.fh-ordasafn__fjoldi, .fh-ord { border-right: 1px solid var(--fh-lin); border-bottom: 1px solid var(--fh-lin); }
.fh-ordasafn__fjoldi { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 20px; }
.fh-ordasafn__fjoldi b { font: 600 56px/1 Faustina, serif; color: var(--fh-blar); }
.fh-ordasafn__fjoldi span { font-weight: 700; letter-spacing: .1em; text-transform: uppercase; font-size: 13px; color: var(--fh-grar); margin-top: 4px; }
.fh-ord { display: flex; flex-direction: column; text-decoration: none; color: var(--fh-blek); scroll-margin-top: 24px; transition: background .15s; }
.fh-ord:hover { background: var(--fh-fol); }
.fh-ord[hidden] { display: none; }
.fh-ord__heiti { font: 600 21px/1.2 Faustina, serif; text-align: center; padding: 14px 10px; border-bottom: 1px solid var(--fh-lin); }
.fh-ord__mynd, .fh-ord__reitur { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: grid; place-items: center; }
.fh-ord__reitur--ljos { background: var(--fh-himinn); } .fh-ord__reitur--bleik { background: var(--fh-orkidea); } .fh-ord__reitur--stal { background: var(--fh-stal); }
.fh-ord__reitur .fh-sky { font-size: 18px; }
.fh-ord__skyring { padding: 12px 14px 4px; font-size: 14.5px; color: var(--fh-grar); line-height: 1.45; }
.fh-ord__merki { display: flex; flex-wrap: wrap; gap: 5px; padding: 8px 14px 14px; }
.fh-ord__merki span { font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; padding: 2px 7px; border: 1px solid var(--fh-blek); border-radius: 3px; }
.fh-ordasafn__ekkert { margin-top: 20px; color: var(--fh-grar); }

/* ---------------- Phones ---------------- */
@media (max-width: 900px) {
  .fh-menu, .fh-haus__panta { display: none !important; }
  .fh-simi { display: grid; place-items: center; }
  .fh-thjonusta, .fh-leidir { grid-template-columns: minmax(0, 1fr); }
  .fh-ordasafn__grind { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 781px) {
  .fh-tilk__inn { justify-content: flex-start; align-items: flex-start; padding-top: 9px; padding-bottom: 9px; }
  .fh-tilk p { font-size: 14px; }
  .fh-simalina { font-size: 13.5px; }
  .fh-simalina__inn { justify-content: space-between; }
  .fh-lengra { display: none; } .fh-styttra { display: inline; }
  .fh-flisar { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .fh-flisar > * { padding: 6px; }
  .fh-flisar p { font-size: clamp(10.5px, 3vw, 13px); }
  .fh-flisar .fh-sky { font-size: 13px; padding: .6em .7em; }
  .fh-tvennt, .fh-spjold { grid-template-columns: minmax(0, 1fr); gap: 28px !important; }
  .fh-spjald { padding: 26px !important; }
  .fh-ar { padding: 32px 26px !important; }
  .fh-fotur__inn { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .fh-samstarf .wp-block-gallery { gap: 24px; } .fh-samstarf img { height: 44px !important; }
}

/* Stjórn (board) */
.fh-stjorn { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.fh-stjorn__madur { display: flex; gap: 14px; align-items: flex-start; background: var(--fh-fol); border-radius: 18px; padding: 18px; }
.fh-stjorn__mynd { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex: none; }
.fh-stjorn__mynd--tom { display: grid; place-items: center; background: #e3f0f5; color: var(--fh-blar); }
.fh-stjorn p { margin: 0; }
.fh-stjorn__nafn { font: 600 20px/1.2 Faustina, serif; }
.fh-stjorn__hlutverk { font-size: 14px; color: var(--fh-grar); }
.fh-stjorn__kynning { font-size: 14.5px; margin-top: 6px !important; color: var(--fh-grar); }
.fh-stjorn__netfang { display: inline-block; margin-top: 6px; font-size: 14.5px; overflow-wrap: anywhere; }
@media (max-width: 900px) { .fh-stjorn { grid-template-columns: minmax(0, 1fr); } }

/* Fixes after the first WordPress render (6 Nov) */
.fh-einkenni .fh-sky { color: #2f5f8a; }
.fh-tvennt h2, .fh-spjald h2 { max-width: 20ch; }
.fh-samstarf .wp-block-gallery { display: flex; flex-wrap: wrap; }
.fh-samstarf .wp-block-gallery figure.wp-block-image, .wp-block-gallery.columns-3 figure.wp-block-image:has(img[alt*="landlæknis"]),
.fh-efni .wp-block-gallery:has(img[alt="Reykjavíkurborg"]) figure.wp-block-image { flex: 0 0 auto !important; width: auto !important; }
.fh-samstarf .wp-block-gallery img, .fh-efni .wp-block-gallery:has(img[alt="Reykjavíkurborg"]) img { height: 64px !important; width: auto !important; object-fit: contain !important; mix-blend-mode: multiply; }
.fh-efni .wp-block-gallery:has(img[alt="Reykjavíkurborg"]) { gap: 40px; align-items: center; }
.fh-fotur .wp-block-site-logo img { filter: brightness(0) invert(1); }
.fh-spurning { max-width: 760px; margin-left: auto !important; margin-right: auto !important; padding-inline: clamp(20px, 4vw, 32px); box-sizing: content-box; }
/* Title box: narrower text lines start at the left edge of the 1200 px column, not centred */
.fh-sidutitill > * { margin-left: max(0px, calc((100% - 1200px) / 2)) !important; margin-right: auto !important; }
.fh-stjorn { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
/* Buttons after text get room above them (the plugin's buttons have no margin of their own) */
.wp-block-group > .fh-postur:not(:first-child), .fh-efni > .fh-postur, .wp-block-group > .wp-block-buttons:not(:first-child) { margin-top: 28px !important; }
.fh-takkar > .fh-postur, .fh-takkar > .wp-block-buttons, .fh-leid .fh-postur { margin-top: 0 !important; }
.fh-leid .fh-postur { margin-top: auto !important; }
/* Front page sections: text with a limited line length starts at the left edge of the 1200 px column (as the logo),
   instead of being centred by the layout. Centred headings keep their centring. */
.fh-hetja > *, .fh-kafli > *:not(.fh-midja) { margin-left: max(0px, calc((100% - 1200px) / 2)) !important; margin-right: auto !important; }
.fh-kafli > .fh-midja { margin-left: auto !important; margin-right: auto !important; }
.fh-hetja > .fh-hratt, .fh-hetja > .fh-takkar, .fh-kafli > .fh-tvennt, .fh-kafli > .fh-spjold, .fh-kafli > .fh-leidir,
.fh-kafli > .wp-block-fh-thjonusta, .fh-kafli > .fh-thjonusta { width: min(1200px, 100%); max-width: 1200px; }
.fh-takkar.wp-block-group > * { margin-top: 0 !important; }
.fh-takkar.wp-block-group > .wp-block-buttons:not(:first-child), .fh-takkar.wp-block-group > .fh-postur:not(:first-child) { margin-top: 0 !important; }
.fh-haus__haegri.wp-block-group > .fh-postur:not(:first-child), .fh-haus .fh-postur { margin-top: 0 !important; }

/* Glossary photos (duotone series) and their credits */
.fh-ord__myndrammi { position: relative; display: block; }
.fh-myndkredit { font-size: 11px; line-height: 1.3; color: #fff; }
.fh-ord__myndrammi .fh-myndkredit { position: absolute; right: 6px; bottom: 6px; background: rgba(19, 48, 74, .55); padding: 2px 6px; border-radius: 4px; }
.fh-ordhaus { display: grid !important; grid-template-columns: minmax(0, 1fr) 280px; gap: 40px; align-items: center; }
.fh-ordhaus > * { margin: 0 !important; }
.fh-ordmynd { margin: 0; }
.fh-ordmynd img { width: 100%; height: auto; border-radius: 20px; display: block; }
.fh-ordmynd .fh-myndkredit { display: block; margin-top: 6px; color: #e6f2f7; }
.fh-ordmynd .fh-myndkredit a { color: #fff; }
@media (max-width: 781px) { .fh-ordhaus { grid-template-columns: minmax(0, 1fr); } .fh-ordmynd { max-width: 240px; } }

/* Menu button on phones: a soft pill with two staggered lines and the word, clearer than three bare lines */
.fh-simi { width: auto; height: 46px; padding: 0 16px 0 14px; gap: 10px; border-radius: 999px; background: #e3f0f5; color: var(--fh-blar);
  font: 700 15px/1 Figtree, sans-serif; align-items: center; grid-auto-flow: column; transition: background .15s; }
.fh-simi:hover, .fh-simi:focus-visible { background: #d3e7f0; }
.fh-simi__linur { display: grid; gap: 5px; width: 22px; }
.fh-simi__linur span { display: block; height: 2.5px; border-radius: 2px; background: currentColor; transition: width .2s; }
.fh-simi__linur span:first-child { width: 22px; }
.fh-simi__linur span:last-child { width: 14px; }
.fh-simi:hover .fh-simi__linur span:last-child { width: 22px; }

/* Glossary letters: filters (own name or other names), one even row on desktop, a swipe row on phones */
.fh-ordasafn__stafir { display: flex; flex-wrap: nowrap; gap: 4px; margin: 20px 0 28px; }
.fh-stafur { flex: 1 1 0; min-width: 0; height: 38px; display: grid; place-items: center; border-radius: 9px; font: 700 15px/1 Figtree, sans-serif; border: 0; padding: 0; }
button.fh-stafur { background: #e3f0f5; color: var(--fh-blar); cursor: pointer; }
button.fh-stafur:hover { background: #d3e7f0; }
button.fh-stafur[aria-pressed="true"] { background: var(--fh-blar); color: #fff; }
.fh-stafur--allt { flex: 0 0 auto; padding: 0 14px; }
.fh-stafur--tomur { color: #c4ccd0; background: transparent; }
@media (max-width: 900px) {
  .fh-ordasafn__stafir { overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * clamp(20px, 4vw, 32px)); padding-inline: clamp(20px, 4vw, 32px); }
  .fh-ordasafn__stafir::-webkit-scrollbar { display: none; }
  .fh-stafur { flex: 0 0 40px; height: 42px; }
  .fh-stafur--allt { flex: 0 0 auto; }
  .fh-stafur--tomur { display: none; }
}
.fh-ord__merki span.er-valid { background: var(--fh-blar); color: #fff; }

/* Spurt og svarað: send box, topic chips, question cards, the question page */
.fh-sendu { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); border-radius: 24px; overflow: hidden; margin-bottom: 48px; }
.fh-sendu__texti { background: var(--fh-bleik-l); padding: clamp(24px, 4vw, 40px); }
.fh-sendu__texti h2 { font-size: clamp(28px, 3vw, 36px); margin: 8px 0 10px; color: var(--fh-blek); }
.fh-sendu__texti p:not(.fh-yfir) { color: var(--fh-grar); max-width: 54ch; margin: 0 0 22px; }
.fh-sendu__texti .fh-yfir { color: #b0569a; }
.fh-sendu__simi { background: var(--fh-blar); color: #fff; padding: clamp(24px, 4vw, 40px); display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.fh-sendu__simi p { margin: 0; color: #e6f2f7; }
.fh-sendu__simi strong { color: #fff; }
.fh-sendu__simi a { font: 600 clamp(30px, 3.2vw, 40px)/1.1 Faustina, serif; color: #fff; text-decoration: none; }
.fh-sendu__simi .fh-icon { color: var(--fh-orkidea); }
.fh-spurt__haus { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.fh-spurt__haus .fh-ordasafn__leit { flex: 1 1 340px; max-width: 480px; }
.fh-spurt__fjoldi { color: var(--fh-grar); font-weight: 600; }
.fh-spurt__fjoldi b { font: 600 34px/1 Faustina, serif; color: var(--fh-blar); margin-right: 6px; }
.fh-spurt__flokkar { display: flex; flex-wrap: wrap; gap: 6px; margin: 20px 0 28px; }
.fh-spurt__flokkar .fh-stafur { flex: 0 0 auto; padding: 0 16px; border-radius: 999px; }
.fh-spurt__listi { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.fh-sos { display: flex; flex-direction: column; gap: 8px; padding: 26px 28px; border: 1px solid var(--fh-lin); border-radius: 20px; background: #fff; color: var(--fh-blek); text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.fh-sos:hover { border-color: var(--fh-himinn); box-shadow: 0 8px 24px rgba(27, 60, 90, .08); }
.fh-sos[hidden] { display: none; }
.fh-sos__um { font-size: 13.5px; color: var(--fh-grar); }
.fh-sos__titill { font: 600 23px/1.2 Faustina, serif; color: var(--fh-blar); }
.fh-sos__texti { color: var(--fh-grar); font-size: 15.5px; line-height: 1.55; }
.fh-sos__nedst { margin-top: auto; padding-top: 10px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.fh-sos__flokkar { display: flex; flex-wrap: wrap; gap: 5px; }
.fh-sos__flokkar span { font-size: 12.5px; font-weight: 700; padding: 3px 10px; border-radius: 999px; background: var(--fh-fol); color: var(--fh-blar); }
.fh-sos__lesa { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--fh-blar); }
.fh-sos:hover .fh-sos__lesa .fh-icon { transform: translateX(3px); }
.fh-sos__lesa .fh-icon { transition: transform .15s; }
.fh-sos-um { color: #e6f2f7; margin: 14px 0 0; font-size: 17px; }
.fh-spurningin { margin: 0 0 36px; }
.fh-spurningin figcaption { font-weight: 700; letter-spacing: .14em; text-transform: uppercase; font-size: 13px; color: var(--fh-grar); margin-bottom: 10px; }
.fh-spurningin blockquote { position: relative; margin: 0; padding: 24px 28px; background: var(--fh-fol); border-radius: 22px 22px 22px 6px; font-size: 18px; line-height: 1.6; }
.fh-spurningin blockquote p { margin: 0 0 12px; } .fh-spurningin blockquote p:last-child { margin: 0; }
.fh-svarid { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.fh-svarid .fh-icon { width: 44px; height: 44px; padding: 11px; box-sizing: border-box; border-radius: 50%; background: var(--fh-blar); color: #fff; flex: none; }
.fh-svarid b { display: block; font: 600 26px/1.1 Faustina, serif; color: var(--fh-blek); }
.fh-svarid span { color: var(--fh-grar); font-size: 15px; }
.fh-spurning .fh-sendu { grid-template-columns: 1fr; margin-bottom: 40px; }
.fh-tengdar h2 { font-size: 28px; margin-bottom: 18px; }
.fh-tengdar .fh-spurt__listi { margin-bottom: 32px; }
@media (max-width: 760px) {
  .fh-sendu, .fh-spurt__listi { grid-template-columns: 1fr; }
  .fh-spurt__flokkar { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: calc(-1 * clamp(20px, 4vw, 32px)); padding-inline: clamp(20px, 4vw, 32px); }
  .fh-spurt__flokkar::-webkit-scrollbar { display: none; }
  .fh-spurt__flokkar .fh-stafur { height: 42px; }
  .fh-sos { padding: 22px; }
}

/* ---------------- Design review fixes (6 Nov) ---------------- */
/* Inner pages: the text column starts at the same left edge as the title and the logo (not centred under them) */
.fh-main .fh-efni, .fh-main .fh-spurning { box-sizing: border-box; max-width: none; padding-inline: max(clamp(20px, 4vw, 32px), calc((100% - 1200px) / 2)); }
.fh-main .fh-efni > :not(.alignwide):not(.alignfull), .fh-main .fh-spurning > * { margin-left: 0 !important; margin-right: auto !important; max-width: 760px; }
.fh-main .fh-efni > .alignwide { margin-left: 0 !important; max-width: 1200px; }
.fh-efni h2, .fh-efni h3 { color: var(--fh-blek); }
.fh-efni h3 { font-size: 24px; }
.fh-efni ul:not(.fh-hak):not(.fh-404__tenglar) { padding-left: 1.2em; }

/* Front page: cards in a row start at the same height (core's block gap added a top margin to all but the first) */
.fh-leidir > *, .fh-spjold > * { margin: 0 !important; }
/* Situation cards: numbered, one link style pinned to the foot */
.fh-leidir { counter-reset: leid; }
.fh-leid { counter-increment: leid; }
.fh-leid::after { content: "0" counter(leid); position: absolute; top: 26px; right: 30px; font: 600 22px/1 Faustina, serif; color: #c9d7de; }
.fh-tengill a { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; text-decoration: none; color: var(--fh-blar); }
.fh-tengill a::after, .fh-sos__lesa::after { content: ""; width: 18px; height: 18px; background: currentColor; transition: transform .15s;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat; }
.fh-sos__lesa::after { display: none; }
.fh-tengill a:hover::after { transform: translateX(3px); }
.fh-leid .fh-tengill--leid { margin-top: auto !important; padding-top: 10px; }
.fh-leid .fh-postur .fh-takki { font-size: 17px; }
.fh-kafli h2.fh-midja { max-width: 22ch; }
/* Heart on the support button */
.fh-hjarta .wp-block-button__link::before { content: ""; width: 20px; height: 20px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center / contain no-repeat; }
/* About: the 1986 box aligns to the top; the goals heading is a small dark label */
.fh-tvennt:has(.fh-ar) { align-items: start; }
.fh-tvennt h3 { font-size: 22px; color: var(--fh-blek); margin-top: 28px; }
.fh-bola { max-width: 42ch; }

/* Contrast: dark text on the light tiles, a deeper orchid for labels on light backgrounds */
.fh-flisar > *:nth-child(3n+1), .fh-flisar > *:nth-child(3n) { color: #17324d; }
.fh-yfir { color: #b0569a; }
.fh-flisar p { overflow-wrap: break-word; hyphens: manual; }

/* Service cards: icon + title on top, text, then label and "Nánar" pinned to the foot so a row lines up */
.fh-thj { display: flex; flex-direction: column; align-items: stretch; gap: 12px; padding: 26px; }
.fh-thj__haus { display: flex; align-items: center; gap: 14px; }
.fh-thj__titill { font-size: 21px; }
.fh-thj__fotur { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--fh-lin); display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.fh-thj__merki { margin: 0; }
.fh-thj__nanar { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: 15px; color: var(--fh-blar); }
.fh-thj__nanar .fh-icon { transition: transform .15s; }
.fh-thj:hover .fh-thj__nanar .fh-icon { transform: translateX(3px); }

/* Partners: a small label and a short grey line above the logos */
.fh-samstarf { padding-block: clamp(44px, 6vw, 64px); }
.fh-samstarf .fh-yfir { margin-bottom: 10px !important; }
.fh-samstarf .fh-samstarf__texti { max-width: 52ch; margin: 0 auto 32px !important; font-size: 16px; line-height: 1.6; color: #66788a; text-wrap: balance; }

/* Footer: compact (the contact card is often just above it) */
.fh-fotur { padding-block: 56px 0; }
.fh-fotur__inn { grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr); gap: 32px 56px; }
.fh-fotur__samband { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.fh-fotur__titill { font-size: 19px; margin-bottom: 14px; }
.fh-fotur__listi { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.fh-fotur__listi li { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; color: #aab3b7; font-size: 15px; }
.fh-fotur__listi .fh-icon { color: var(--fh-orkidea); }
.fh-fotur__listi a, .fh-fotur__nedst a { color: #fff; text-decoration: none; display: inline-block; padding-block: 10px; }
.fh-fotur__listi a:hover, .fh-fotur__nedst a:hover { text-decoration: underline; }
.fh-fotur__stort { display: inline-block; font: 600 40px/1.1 Faustina, serif; color: #fff; text-decoration: none; padding-block: 4px; }
.fh-fotur__dalkur p { margin: 6px 0 0; font-size: 15px; }
.fh-fotur__nedst { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 24px; border-top: 1px solid #3a3b40; padding-block: 8px; font-size: 14px; color: #aab3b7; }
.fh-fotur__nedst span { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
@media (max-width: 781px) { .fh-fotur__inn, .fh-fotur__samband { grid-template-columns: minmax(0, 1fr); } }

/* News and search: posts without a photo get a tile; pagination as pills */
.fh-reitur { display: grid; place-items: center; aspect-ratio: 16/10; border-radius: 18px; text-decoration: none; }
.fh-reitur--ljos { background: var(--fh-himinn); } .fh-reitur--bleik { background: var(--fh-orkidea); } .fh-reitur--stal { background: var(--fh-stal); }
.fh-reitur img { width: 42%; height: auto; filter: brightness(0) invert(1); opacity: .9; }
.wp-block-query-pagination { gap: 8px; margin-top: 48px; align-items: center; }
.wp-block-query-pagination-numbers { display: flex; gap: 8px; }
.wp-block-query-pagination a, .wp-block-query-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding: 0 16px; box-sizing: border-box;
  border-radius: 999px; background: #e3f0f5; color: var(--fh-blar); font-weight: 700; text-decoration: none; margin: 0 !important; }
.wp-block-query-pagination .page-numbers.current { background: var(--fh-blar); color: #fff; }
.wp-block-query-pagination .page-numbers.dots { background: none; }

/* Search form (search page, 404): the rounded field of the glossary */
.fh-leit { max-width: 560px; margin-top: 24px !important; }
.fh-leit .wp-block-search__inside-wrapper { gap: 8px; border: 0; padding: 0; }
.fh-leit .wp-block-search__input { padding: 14px 20px; font: inherit; font-size: 17px; border: 2px solid rgba(255, 255, 255, .6); border-radius: 999px; }
.fh-leit .wp-block-search__button { margin: 0; padding: 14px 24px; border: 0; border-radius: 999px; background: #fff; color: var(--fh-blar); font-weight: 700; }
.fh-404__tenglar { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.fh-404__tenglar a { display: inline-block; padding: 12px 20px; border-radius: 999px; background: #e3f0f5; color: var(--fh-blar); font-weight: 700; text-decoration: none; }

/* Phone: tap targets of at least 44 px */
.fh-simalina a { position: relative; }
.fh-simalina a::after { content: ""; position: absolute; inset: -10px -6px; }
.fh-vm__pilla { padding: 11px 15px; }
.fh-leid.wp-block-group > .fh-postur, .fh-leid.wp-block-group > .fh-tengill--leid { margin-top: auto !important; padding-top: 14px; }
.fh-tengill--leid a { font-size: 17px; }
/* The divider above the closing box spans the text column only */
.fh-main .fh-spurning { border-top: 0; padding-top: 0; }
.fh-main .fh-spurning > :first-child { border-top: 1px solid var(--fh-lin); padding-top: 40px; }
.fh-main .fh-spurning > .fh-sendu:first-child { border-top: 0; padding-top: clamp(26px, 4vw, 40px); }

/* Send-a-question box: one soft pink card; the phone as a small white inset (beside the text when wide, a strip below) */
.fh-sendu { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 28px 40px; align-items: center; background: var(--fh-bleik-l); border-radius: 24px; padding: clamp(26px, 4vw, 40px); overflow: visible; }
.fh-sendu__texti { background: none; padding: 0; }
.fh-sendu__texti h2 { margin: 6px 0 8px; }
.fh-sendu__texti p:not(.fh-yfir) { margin-bottom: 20px; }
.fh-sendu__simi { display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: 4px 14px; background: #fff; border-radius: 18px; padding: 18px 20px; color: var(--fh-grar); text-decoration: none; font-size: 15px; line-height: 1.4; box-shadow: 0 6px 20px rgba(138, 63, 98, .08); }
.fh-sendu__simi strong { color: var(--fh-blek); }
.fh-sendu__simi b { grid-column: 2; font: 600 30px/1.1 Faustina, serif; color: var(--fh-blar); }
.fh-sendu__tak { grid-row: span 2; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--fh-blar); color: #fff; }
.fh-sendu__simi .fh-icon { color: #fff; }
.fh-sendu__simi:hover b { text-decoration: underline; text-underline-offset: 4px; }
.fh-spurning .fh-sendu, .fh-spurt .fh-sendu { margin-bottom: 40px; }
.fh-spurning .fh-sendu { grid-template-columns: minmax(0, 1fr); }
.fh-spurning .fh-sendu__simi, .fh-sendu__simi { justify-self: stretch; }
.fh-spurning .fh-sendu__simi { grid-template-columns: 44px minmax(0, 1fr) auto; }
.fh-spurning .fh-sendu__simi b { grid-column: 3; grid-row: 1 / span 2; }
@media (max-width: 760px) {
  .fh-sendu { grid-template-columns: minmax(0, 1fr); }
  .fh-spurning .fh-sendu__simi { grid-template-columns: 44px minmax(0, 1fr); }
  .fh-spurning .fh-sendu__simi b { grid-column: 2; grid-row: auto; }
}

/* Partners: one compact row, label and sentence on the left, logos on the right (stacked and centred on phones) */
.fh-kafli.fh-samstarf { display: grid; grid-template-columns: minmax(0, 400px) minmax(0, 1fr); column-gap: 56px; align-items: center; text-align: left;
  padding-block: 36px; padding-inline: max(clamp(20px, 4vw, 32px), calc((100% - 1200px) / 2)); border-top: 1px solid var(--fh-lin); }
.fh-kafli.fh-samstarf > * { margin: 0 !important; max-width: none !important; grid-column: 1; text-align: left; }
.fh-kafli.fh-samstarf > .fh-yfir { margin-bottom: 6px !important; align-self: end; }
.fh-kafli.fh-samstarf > .fh-samstarf__texti { font-size: 14.5px; line-height: 1.55; align-self: start; text-wrap: pretty; }
.fh-kafli.fh-samstarf > .wp-block-gallery { grid-column: 2; grid-row: 1 / span 2; justify-content: flex-end; gap: 44px; }
.fh-kafli.fh-samstarf img { height: 52px !important; }
@media (max-width: 900px) {
  .fh-kafli.fh-samstarf { grid-template-columns: minmax(0, 1fr); row-gap: 6px; }
  .fh-kafli.fh-samstarf > * { text-align: center; }
  .fh-kafli.fh-samstarf > .wp-block-gallery { grid-column: 1; grid-row: auto; justify-content: center; gap: 24px 32px; margin-top: 18px !important; }
  .fh-kafli.fh-samstarf img { height: 40px !important; }
}
.fh-sendu { box-sizing: border-box; }
.fh-spurning .fh-sendu__tak { grid-row: auto; }
@media (max-width: 760px) { .fh-spurning .fh-sendu__tak { grid-row: span 2; } }

/* Contact details: four tiles (2 × 2), each one a link; Foreldrasíminn first and blue. Compact rows on phones. */
.fh-samband { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; border: 0; border-radius: 0; overflow: visible; background: none; }
.fh-samband div { position: relative; display: flex; flex-direction: column; gap: 2px; padding: 20px 20px 18px; border: 1px solid var(--fh-lin); border-radius: 20px; background: #fff; transition: border-color .15s, box-shadow .15s; }
.fh-samband div:last-child { border: 1px solid var(--fh-lin); }
.fh-samband div:hover { border-color: var(--fh-himinn); box-shadow: 0 8px 22px rgba(27, 60, 90, .08); }
.fh-samband__tak { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: #e3f0f5; color: var(--fh-blar); margin-bottom: 12px; }
.fh-samband .fh-icon { grid-row: auto; margin: 0; color: inherit; }
.fh-samband dt { font-size: 14px; color: #66788a; }
.fh-samband dd { font-size: 18px; }
.fh-samband a { color: var(--fh-blek); }
.fh-samband a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; } /* the whole tile is the link */
.fh-samband div:first-child { background: var(--fh-blar); border-color: var(--fh-blar); }
.fh-samband div:first-child .fh-samband__tak { background: rgba(255, 255, 255, .16); color: #fff; }
.fh-samband div:first-child dt { color: #cfe6f0; }
.fh-samband div:first-child a { color: #fff; font: 600 26px/1.15 Faustina, serif; }
@media (max-width: 560px) {
  .fh-samband { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .fh-samband div { display: grid; grid-template-columns: 42px minmax(0, 1fr); column-gap: 14px; align-items: center; padding: 14px 16px; }
  .fh-samband__tak { grid-row: span 2; margin: 0; }
}

/* Footer in the brand gradient (as the phone menu): lighter and more hopeful than near-black */
.fh-fotur { background: linear-gradient(160deg, #0f4f73 0%, #3f78a8 55%, #8f88c0 100%); color: #fff; }
.fh-fotur p, .fh-fotur__dalkur p { color: #e3eef6; }
.fh-fotur__listi li, .fh-fotur__nedst { color: #d3e3ee; }
.fh-fotur__listi .fh-icon { color: #ffd9e8; }
.fh-fotur__nedst { border-top-color: rgba(255, 255, 255, .25); }
.fh-fotur__sky { margin-top: 18px; font-size: 18px; transform: rotate(-3deg); }

/* Top bars, retouched: the notice in soft pink (no yellow/beige), the phone bar in the footer's deep blue gradient */
.fh-tilk { background: var(--fh-bleik-l); color: #6e2f57; border-bottom: 1px solid #ecd3e0; }
.fh-tilk .fh-icon { color: #b0569a; }
.fh-simalina { background: linear-gradient(90deg, #0f4f73 0%, #2f6a99 60%, #6f78b0 100%); color: #e3eef6; }
.fh-simalina a { background: #fff; color: var(--fh-blar); padding: 3px 12px; }
.fh-simalina a .fh-icon { color: #b0569a; }
.fh-simalina a:hover { background: #ffe9f3; }

/* Phone inset in the send box, restructured: label, then the number with its icon, then one quiet line */
.fh-sendu .fh-sendu__simi { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "yfir" "nr" "skyring"; gap: 6px; padding: 22px 24px; }
.fh-sendu__yfir { grid-area: yfir; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; font-size: 12.5px; color: #b0569a; }
.fh-sendu__nr { grid-area: nr; display: flex; align-items: center; gap: 12px; }
.fh-sendu .fh-sendu__tak { grid-row: auto; width: 38px; height: 38px; flex: none; }
.fh-sendu .fh-sendu__nr b { font: 600 32px/1 Faustina, serif; color: var(--fh-blar); grid-column: auto; grid-row: auto; }
.fh-sendu__skyring { grid-area: skyring; font-size: 14.5px; color: var(--fh-grar); }
/* On a question page: a strip, text on the left and the number on the right */
.fh-spurning .fh-sendu .fh-sendu__simi { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "yfir nr" "skyring nr"; column-gap: 20px; row-gap: 2px; align-items: center; }
@media (max-width: 560px) {
  .fh-spurning .fh-sendu .fh-sendu__simi { grid-template-columns: minmax(0, 1fr); grid-template-areas: "yfir" "nr" "skyring"; row-gap: 6px; }
}

/* ---------------- Detail pass (6 Nov): one set of shared pieces ---------------- */
/* Icon badges: circles everywhere */
.fh-takn { border-radius: 50%; width: 50px; height: 50px; }
/* Chips: soft pills everywhere (glossary cards and the word page included) */
.fh-ord__merki span { border: 0; border-radius: 999px; background: var(--fh-fol); color: var(--fh-blar); text-transform: none; letter-spacing: 0; font-size: 12.5px; padding: 3px 10px; }
.fh-ord__merki span.er-valid { background: var(--fh-blar); color: #fff; }
.fh-onnur span:not(.screen-reader-text) { border-radius: 999px; text-transform: none; letter-spacing: 0; font-size: 14.5px; padding: 4px 12px; }
/* Buttons: outline and filled the same height; arrows drawn, not typed */
.fh-takki--lina, .is-style-outline > .wp-block-button__link { padding: 14px 22px; }
.fh-leid .fh-takki--lina { padding: 0; }
.fh-orvar .wp-block-button__link { display: inline-flex; align-items: center; gap: 10px; }
.fh-orvar .wp-block-button__link::after { content: ""; width: 18px; height: 18px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .15s; }
.fh-orvar .wp-block-button__link:hover::after { transform: translateX(3px); }

/* Partners row: the same left edge as every other section (the root padding counted) */
.fh-kafli.fh-samstarf { padding-inline: max(clamp(20px, 4vw, 32px), calc((100% - 1200px) / 2 + clamp(20px, 4vw, 32px))); }

/* A word or page without text yet: no stray divider under the title */
.fh-efni:not(:has(*)) { display: none; }
.fh-efni:not(:has(*)) + .fh-spurning > :first-child { border-top: 0; padding-top: 0; }

/* Cards in page content: courses, support, warning signs */
.fh-kort { border: 1px solid var(--fh-lin); border-radius: 22px; padding: clamp(24px, 3vw, 32px) !important; background: #fff; }
.fh-kort > * { margin-block: 0 !important; }
.fh-kort > * + * { margin-top: 10px !important; }
.fh-kort h2 { margin-top: 6px !important; font-size: clamp(26px, 2.6vw, 32px); }
.fh-kort > .fh-postur { margin-top: 22px !important; }
.fh-kort--bleikt { background: var(--fh-bleik-l); border-color: transparent; }
.fh-efni > .fh-kort + .fh-kort { margin-top: 16px !important; }
.fh-merkin { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; max-width: 1000px !important; }
.fh-merkin > * { margin: 0 !important; }
.fh-merki-kort { background: var(--fh-fol); border-radius: 20px; padding: 24px !important; }
.fh-merki-kort > * { margin: 0 !important; }
.fh-merki-kort h3 { font-size: 22px; margin-bottom: 8px !important; }
.fh-merki-kort p { font-size: 15.5px; color: var(--fh-grar); }

/* Phones */
@media (max-width: 781px) {
  .fh-haus .wp-block-site-logo img, .fh-haus .fh-merki img { width: 150px !important; height: auto; }
  .fh-haus { padding-block: 10px; }
  .fh-hetja .fh-takkar { flex-direction: column; align-items: stretch; }
  .fh-hetja .fh-takkar > *, .fh-hetja .fh-takkar .wp-block-button, .fh-hetja .fh-takkar .fh-takki, .fh-hetja .fh-takkar .wp-block-button__link { width: 100%; justify-content: center; box-sizing: border-box; }
  .fh-hratt { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fh-hratt > div:last-child { grid-column: 1 / -1; }
  .fh-leid { padding: 24px; }
  .fh-leid::after { top: 22px; right: 24px; }
  .fh-ord__myndrammi .fh-myndkredit { font-size: 9.5px; max-width: calc(100% - 12px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; box-sizing: border-box; }
  .fh-merkin { grid-template-columns: minmax(0, 1fr); }
}

/* 1986 box: fills the column's height, in the brand gradient, with a small timeline at its foot */
.fh-tvennt:has(.fh-ar) { align-items: stretch; }
.fh-ar { display: flex !important; flex-direction: column; background: linear-gradient(150deg, #3f78a8 0%, var(--fh-stal) 50%, #b98bc0 100%); color: #fff; padding: clamp(32px, 4vw, 48px) !important; }
.fh-ar > * { margin: 0 !important; }
.fh-ar .fh-yfir { color: #ffd9e8; }
.fh-ar .fh-artal { color: #fff; margin-top: 6px !important; }
.fh-ar p:not(.fh-yfir):not(.fh-artal) { color: #e6f0f7; max-width: 40ch; margin-top: 14px !important; }
.fh-timi { list-style: none; padding: 0; margin-top: auto !important; padding-top: 32px !important; display: grid; gap: 0; }
.fh-timi li { display: grid; grid-template-columns: 64px 1fr; gap: 12px; align-items: baseline; padding: 12px 0; border-top: 1px solid rgba(255, 255, 255, .28); color: #eef4f9; font-size: 15.5px; }
.fh-timi strong { font: 600 21px/1 Faustina, serif; color: #fff; }
.fh-timi li:last-child strong { color: #ffd9e8; }

/* Glossary on phones: photos keep the 4:3 frame; the count is a slim row above the cards */
.fh-ord__myndrammi img, .fh-ord__mynd { aspect-ratio: 4 / 3; width: 100%; height: auto; object-fit: cover; display: block; }
@media (max-width: 900px) {
  .fh-ordasafn__fjoldi { grid-column: 1 / -1; flex-direction: row; justify-content: flex-start; align-items: baseline; gap: 8px; padding: 12px 16px; }
  .fh-ordasafn__fjoldi b { font-size: 30px; }
}

/* Bank details for donations (Styrkja): a white inset in the pink card */
.fh-banki { display: flex; flex-wrap: wrap; gap: 10px 40px; background: #fff; border-radius: 16px; padding: 18px 22px; margin: 22px 0 0 !important; }
.fh-banki dt { font-size: 13.5px; color: var(--fh-grar); }
.fh-banki dd { margin: 2px 0 0; font: 600 24px/1.15 Faustina, serif; color: var(--fh-blek); letter-spacing: .01em; }

/* Board cards: the email as a quiet link, the role a little clearer */
.fh-stjorn__hlutverk { font-weight: 600; color: #8a3f62; }
.fh-stjorn__netfang { text-decoration: none; color: var(--fh-blar); font-weight: 600; }
.fh-stjorn__netfang:hover { text-decoration: underline; }

/* ---------------- Orðasafn, redesigned (6 Nov): colour photos on rounded cards ---------------- */
.fh-ordasafn__haus { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; }
.fh-ordasafn__haus .fh-ordasafn__leit { flex: 1 1 340px; }
.fh-ordasafn .fh-ordasafn__fjoldi { display: block; border: 0; padding: 0; margin: 0; color: var(--fh-grar); font-weight: 600; }
.fh-ordasafn .fh-ordasafn__fjoldi b { font: 600 30px/1 Faustina, serif; color: var(--fh-blar); margin-right: 4px; }
.fh-ordasafn__grind { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; border: 0; }
.fh-ord { border: 1px solid var(--fh-lin) !important; border-radius: 20px; overflow: hidden; background: #fff; transition: transform .15s, box-shadow .15s, border-color .15s; }
.fh-ord:hover { background: #fff; transform: translateY(-3px); box-shadow: 0 14px 32px rgba(27, 60, 90, .1); border-color: var(--fh-himinn) !important; }
.fh-ord__myndrammi { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--fh-fol); }
.fh-ord__myndrammi img, .fh-ord__myndrammi .fh-ord__reitur { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; display: block; }
.fh-ord__myndrammi .fh-ord__reitur { display: grid; }
.fh-ord__myndrammi .fh-myndkredit { left: 8px; right: auto; bottom: 8px; max-width: calc(100% - 16px); font-size: 10.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; box-sizing: border-box; background: rgba(19, 48, 74, .5); }
.fh-ord__texti { display: flex; flex-direction: column; flex: 1; padding: 18px 20px 20px; }
.fh-ord .fh-ord__heiti { font: 600 24px/1.15 Faustina, serif; text-align: left; padding: 0; border: 0; color: var(--fh-blek); }
.fh-ord .fh-ord__skyring { padding: 8px 0 0; font-size: 15px; line-height: 1.5; }
.fh-ord .fh-ord__merki { margin-top: auto; padding: 16px 0 0; gap: 6px; }
.fh-ord .fh-ord__merki span { background: #e3f0f5; }
@media (max-width: 1000px) { .fh-ordasafn__grind { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Phones: compact rows, photo on the left */
@media (max-width: 640px) {
  .fh-ordasafn__grind { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .fh-ord { flex-direction: row; border-radius: 18px; }
  .fh-ord .fh-ord__myndrammi { flex: 0 0 34%; aspect-ratio: auto; min-height: 100%; }
  .fh-ord .fh-ord__myndrammi .fh-myndkredit { display: none; }
  .fh-ord__texti { padding: 14px 16px 16px; }
  .fh-ord .fh-ord__heiti { font-size: 21px; }
  .fh-ord .fh-ord__skyring { font-size: 14px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .fh-ord .fh-ord__merki { padding-top: 10px; }
  .fh-ord .fh-ord__merki span { font-size: 12px; padding: 2px 9px; }
  .fh-ord .fh-ord__reitur .fh-sky { font-size: 13px; padding: .5em .7em; }
}
@media (max-width: 640px) {
  .fh-ord .fh-ord__myndrammi { position: relative; flex: 0 0 34%; min-height: 0; align-self: stretch; }
  .fh-ord .fh-ord__myndrammi img, .fh-ord .fh-ord__myndrammi .fh-ord__reitur { position: absolute; inset: 0; width: 100%; height: 100%; }
}

/* Message tiles, calmer (6 Nov): one continuous gradient band that carries on from the hero, fine white lines between
   the tiles, all text white, the clouds as large as the text and slightly tilted */
.fh-flisar { background: linear-gradient(90deg, #22597f 0%, #3f78a8 35%, #7d78b4 70%, #a8689e 100%); }
.fh-flisar > *, .fh-flisar > *:nth-child(3n+1), .fh-flisar > *:nth-child(3n+2), .fh-flisar > *:nth-child(3n) { background: none; color: #fff; }
.fh-flisar > * + * { box-shadow: inset 1px 0 0 rgba(255, 255, 255, .22); }
.fh-flisar > * { padding: clamp(14px, 1.6vw, 26px); }
.fh-flisar p { font: 700 clamp(14px, 1.2vw, 19px)/1.25 Figtree, sans-serif; text-wrap: balance; letter-spacing: .005em; }
.fh-flisar .fh-sky { font-size: clamp(15px, 1.45vw, 23px); padding: .65em .9em; max-width: 92%; transform: rotate(-4deg); box-shadow: 0 6px 18px rgba(20, 40, 70, .18); }
.fh-flisar > *:nth-child(6) .fh-sky { transform: rotate(3deg); }
@media (max-width: 781px) {
  .fh-flisar > *:nth-child(n+5) { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), inset 1px 0 0 rgba(255, 255, 255, .22); }
  .fh-flisar > *:nth-child(5) { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22); }
  .fh-flisar p { font-size: clamp(11.5px, 3.2vw, 14px); }
  .fh-flisar .fh-sky { font-size: 13px; padding: .55em .7em; }
}

/* Situation cards, softer (6 Nov): no numbers; each card its own pale tint, icon in a white circle, the action in a
   foot row behind a fine line; the whole card is the link and lifts a little on hover */
.fh-leid::after { content: none; }
.fh-leidir > .fh-leid { border: 0; padding: clamp(26px, 2.6vw, 34px); transition: transform .15s, box-shadow .15s; }
.fh-leidir > .fh-leid:nth-child(1) { background: #e3f0f5; }
.fh-leidir > .fh-leid:nth-child(2) { background: var(--fh-bleik-l); }
.fh-leidir > .fh-leid:nth-child(3) { background: #ece9f6; }
.fh-leidir > .fh-leid:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(19, 48, 74, .1); }
.fh-leid .fh-takn { background: #fff; width: 54px; height: 54px; margin-bottom: 6px !important; }
.fh-leidir > .fh-leid:nth-child(2) .fh-takn { color: #8a3f62; }
.fh-leidir > .fh-leid:nth-child(3) .fh-takn { color: #5b4f9a; }
.fh-leid h3 { font-size: clamp(23px, 2vw, 26px); }
.fh-leid p { color: var(--fh-grar); }
.fh-leid.wp-block-group > .fh-postur, .fh-leid.wp-block-group > .fh-tengill--leid { margin-top: auto !important; padding-top: 18px; border-top: 1px solid rgba(19, 48, 74, .12); }
.fh-leid > :last-child { margin-top: auto !important; }
.fh-leid > .fh-postur ~ *, .fh-leid p:has(+ .fh-postur), .fh-leid p:has(+ .fh-tengill--leid) { margin-bottom: 14px !important; }
.fh-leid a::before { content: ""; position: absolute; inset: 0; border-radius: inherit; } /* the whole card is the link */
.fh-leidir > .fh-leid:nth-child(2) a { color: #8a3f62; }
.fh-leidir > .fh-leid:nth-child(3) a { color: #5b4f9a; }

/* Counts as a quiet pill ("5 spurningar og svör", "10 orð") instead of a big number */
.fh-spurt__fjoldi, .fh-ordasafn .fh-ordasafn__fjoldi { display: inline-flex; align-items: baseline; gap: 6px; background: var(--fh-fol); border-radius: 999px; padding: 8px 16px; font-size: 14.5px; font-weight: 600; color: var(--fh-grar); }
.fh-spurt__fjoldi b, .fh-ordasafn .fh-ordasafn__fjoldi b { font: 700 15px/1 Figtree, sans-serif; color: var(--fh-blar); margin: 0; }
.fh-leid.wp-block-group > .fh-postur, .fh-leid.wp-block-group > .fh-tengill--leid { display: flex; align-items: center; min-height: 58px; box-sizing: border-box; line-height: 1.2; }
.fh-leid .fh-postur .fh-takki, .fh-leid .fh-tengill--leid a { line-height: 1.2; font-size: 17px; }

/* Contact tiles, tidier (6 Nov): icon beside its label, the value across the tile below, one typeface for all values;
   Foreldrasíminn in the brand gradient (as the footer) instead of flat blue */
.fh-samband div { display: grid; grid-template-columns: 38px minmax(0, 1fr); align-items: center; column-gap: 12px; row-gap: 10px; padding: 18px 20px 20px; }
.fh-samband__tak { width: 38px; height: 38px; margin: 0; grid-row: auto; }
.fh-samband__tak .fh-icon { width: 18px; height: 18px; }
.fh-samband dt { font-size: 14px; line-height: 1.3; }
.fh-samband dd { grid-column: 1 / -1; font: 700 18px/1.25 Figtree, sans-serif; }
.fh-samband div:first-child { background: linear-gradient(140deg, #0f4f73 0%, #2f6a99 55%, #7d78b4 100%); border-color: transparent; }
.fh-samband div:first-child a { font: 700 24px/1.15 Figtree, sans-serif; letter-spacing: .01em; }
@media (max-width: 560px) {
  .fh-samband div { grid-template-columns: 38px minmax(0, 1fr); padding: 14px 16px 16px; }
  .fh-samband__tak { grid-row: auto; }
}
.fh-samband dd small { display: block; margin-top: 4px; font: 500 14px/1.3 Figtree, sans-serif; color: #66788a; }
.fh-samband div:first-child dd small { color: #d6e6f1; }
.fh-samband dt { font-weight: 600; }
.fh-tilk[hidden] { display: none; }
/* Menu button lines: whole pixels, so both render the same thickness (2.5 px rounded differently per line) */
.fh-simi__linur { gap: 5px; }
.fh-simi__linur span { height: 3px; border-radius: 3px; }

/* ---------------- Ordinary pages (6 Nov): lead paragraph, side column, text elements ---------------- */
/* Two columns when there's a side column: text 760 px at the title's left edge, the side column on the right */
.fh-main .fh-sida:has(> .fh-hlid) { display: grid; grid-template-columns: minmax(0, 760px) minmax(0, 300px); justify-content: space-between; gap: 56px;
  box-sizing: border-box; padding-inline: max(clamp(20px, 4vw, 32px), calc((100% - 1200px) / 2)); }
.fh-main .fh-sida:has(> .fh-hlid) > .fh-efni { padding-inline: 0; }
.fh-sida > * { margin-block-start: 0 !important; }
.fh-hlid { display: flex; flex-direction: column; gap: 20px; }
.fh-hlid > * { position: sticky; }
.fh-efnisyfirlit { top: 24px; }
.fh-efnisyfirlit .fh-yfir { margin-bottom: 10px; }
.fh-efnisyfirlit ul { list-style: none; margin: 0; padding: 0; border-left: 2px solid var(--fh-lin); }
.fh-efnisyfirlit a { display: block; padding: 7px 0 7px 16px; margin-left: -2px; border-left: 2px solid transparent; color: var(--fh-grar); text-decoration: none; font-size: 15px; line-height: 1.35; }
.fh-efnisyfirlit a:hover { color: var(--fh-blar); }
.fh-efnisyfirlit a.er-virkur { color: var(--fh-blar); border-left-color: var(--fh-blar); font-weight: 600; }
.fh-hjalp { top: 24px; background: var(--fh-bleik-l); border-radius: 22px; padding: 24px; }
.fh-efnisyfirlit:not([hidden]) + .fh-hjalp { position: static; }
.fh-hjalp p { margin: 0 0 6px; color: var(--fh-grar); font-size: 15px; line-height: 1.5; }
.fh-hjalp .fh-hjalp__titill { font: 600 22px/1.2 Faustina, serif; color: var(--fh-blek); margin-bottom: 8px; }
.fh-hjalp__simi { display: flex; align-items: center; gap: 10px; margin: 16px 0 14px; color: var(--fh-blar); text-decoration: none; font: 700 26px/1 Figtree, sans-serif; }
.fh-hjalp__simi .fh-icon { width: 40px; height: 40px; padding: 10px; box-sizing: border-box; border-radius: 50%; background: #fff; color: #b0569a; }
.fh-hjalp .fh-takki { width: 100%; justify-content: center; box-sizing: border-box; }
.fh-efni [id] { scroll-margin-top: 24px; }
@media (max-width: 1000px) {
  .fh-main .fh-sida:has(> .fh-hlid) { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .fh-efnisyfirlit { display: none; }
  .fh-hlid > * { position: static; }
  .fh-hjalp { max-width: 560px; }
}

/* Lead paragraph: a page opens with its point (the first paragraph, bigger and in navy) */
.fh-sida .fh-efni > p:first-child { font-size: clamp(19px, 1.55vw, 22px); line-height: 1.55; color: var(--fh-blek); }

/* Text elements in page content */
.fh-efni h2 { margin-top: 1.8em !important; }
.fh-efni h3 { margin-top: 1.5em !important; }
.fh-efni > :first-child { margin-top: 0 !important; }
.fh-efni p a, .fh-efni li a { color: var(--fh-blar); text-decoration-color: rgba(0, 112, 155, .35); text-decoration-thickness: 1.5px; }
.fh-efni p a:hover, .fh-efni li a:hover { text-decoration-color: currentColor; }
.fh-efni ul:not(.fh-hak):not(.fh-404__tenglar):not(.fh-timi):not(.fh-styrktaradilar) { list-style: none; padding-left: 0; }
.fh-efni ul:not(.fh-hak):not(.fh-404__tenglar):not(.fh-timi):not(.fh-styrktaradilar) > li { position: relative; padding: 3px 0 3px 22px; }
.fh-efni ul:not(.fh-hak):not(.fh-404__tenglar):not(.fh-timi):not(.fh-styrktaradilar) > li::before { content: ""; position: absolute; left: 4px; top: .78em; width: 7px; height: 7px; border-radius: 50%; background: var(--fh-orkidea); }
.fh-efni ol { padding-left: 1.4em; } .fh-efni ol li::marker { color: #b0569a; font-weight: 700; }
.fh-efni blockquote, .fh-efni .wp-block-quote { margin-inline: 0; padding: 22px 26px; border: 0; border-radius: 20px; background: var(--fh-fol); font-size: 19px; line-height: 1.55; color: var(--fh-blek); }
.fh-efni .wp-block-quote cite { display: block; margin-top: 10px; font-size: 14.5px; font-style: normal; color: var(--fh-grar); }
.fh-efni .wp-block-image img { border-radius: 18px; }
.fh-efni .wp-element-caption, .fh-efni figcaption { font-size: 14px; color: var(--fh-grar); margin-top: 8px; text-align: left; }
.fh-efni hr, .fh-efni .wp-block-separator { border: 0; border-top: 1px solid var(--fh-lin); margin-block: 40px; }
/* the whole side column stays in view together; headings inside cards keep their own spacing */
.fh-hlid { position: sticky; top: 24px; align-self: start; }
.fh-hlid > *, .fh-efnisyfirlit:not([hidden]) + .fh-hjalp { position: static; }
.fh-efni .fh-kort h2 { margin-top: 6px !important; }
.fh-efni .fh-merki-kort h3 { margin-top: 0 !important; }
.fh-efni .fh-kort > :first-child, .fh-efni .fh-merki-kort > :first-child { margin-top: 0 !important; }
@media (max-width: 1000px) { .fh-hlid { position: static; } }
/* Count beside the search box, on one line (it wrapped into a circle at the far right) */
.fh-ordasafn__haus, .fh-spurt__haus { justify-content: flex-start; }
.fh-ordasafn .fh-ordasafn__fjoldi, .fh-spurt__fjoldi { flex: none; white-space: nowrap; align-items: center; height: 48px; box-sizing: border-box; padding: 0 18px; }
.fh-spurt__haus .fh-ordasafn__leit { order: -1; }
.fh-ordasafn .fh-ordasafn__fjoldi { flex-direction: row; gap: 6px; }

/* Sponsors: a calm logo wall of white tiles (logos are 16:9 on white) */
.fh-styrktaradilar { list-style: none; margin: 24px 0 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.fh-efni ul.fh-styrktaradilar > li { padding: 0; }
.fh-efni ul.fh-styrktaradilar > li::before { content: none; }
.fh-styrktaradilar li { background: #fff; border: 1px solid var(--fh-lin); border-radius: 14px; overflow: hidden; }
.fh-styrktaradilar img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; padding: 6px 10px; box-sizing: border-box; border-radius: 0 !important; }
.fh-styrktaradilar a { display: block; transition: transform .15s; }
.fh-styrktaradilar a:hover { transform: scale(1.03); }
@media (max-width: 560px) { .fh-styrktaradilar { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } }

/* ---------------- Keyboard focus (6 Nov): one clear ring everywhere, white on the coloured bands ---------------- */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--fh-blar); outline-offset: 3px; border-radius: 6px; }
:where(.fh-hetja, .fh-sidutitill, .fh-siminn, .fh-einkenni, .fh-flisar, .fh-fotur, .fh-simalina, .fh-vm, .fh-samband div:first-child, .fh-ar) :where(a, button, input):focus-visible { outline-color: #fff; }
.fh-takki:focus-visible, .wp-block-button__link:focus-visible, .fh-stafur:focus-visible, .fh-simi:focus-visible { border-radius: 999px; }
.fh-ord:focus-visible, .fh-sos:focus-visible, .fh-thj:focus-visible, .fh-leid a:focus-visible::before, .fh-flytileid:focus-visible, .fh-nidurstada:focus-visible { outline-offset: 2px; border-radius: 20px; }
.skip-link:focus { background: #fff; color: var(--fh-blar); padding: 12px 18px; border-radius: 10px; z-index: 100000; }

/* Email fallback card: slides up when no mail app opened */
.fh-postspjald { position: fixed; left: 50%; bottom: 20px; z-index: 9999; width: min(440px, calc(100% - 32px)); box-sizing: border-box; transform: translate(-50%, 140%);
  background: #fff; border-radius: 20px; padding: 20px 22px; box-shadow: 0 18px 50px rgba(19, 48, 74, .25); transition: transform .25s ease-out; }
.fh-postspjald.er-opid { transform: translate(-50%, 0); }
.fh-postspjald p { margin: 0 0 8px; color: var(--fh-grar); font-size: 15.5px; line-height: 1.5; overflow-wrap: anywhere; }
.fh-postspjald b { color: var(--fh-blek); }
.fh-postspjald__titill { font: 600 21px/1.2 Faustina, serif !important; color: var(--fh-blek) !important; padding-right: 30px; }
.fh-postspjald__takkar { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.fh-postspjald__takkar button { border: 0; border-radius: 999px; padding: 11px 16px; font: 700 14.5px Figtree, sans-serif; cursor: pointer; background: #e3f0f5; color: var(--fh-blar); }
.fh-postspjald__takkar button:first-child { background: var(--fh-blar); color: #fff; }
.fh-postspjald__loka { position: absolute; top: 10px; right: 10px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--fh-fol); color: var(--fh-blek); font-size: 22px; line-height: 1; cursor: pointer; }

/* Search results and the 404 page */
.fh-leitarsvaedi { box-sizing: border-box; padding-inline: max(clamp(20px, 4vw, 32px), calc((100% - 1200px) / 2)); }
.fh-leitarsvaedi > * { max-width: 860px; }
.fh-leitarsvaedi h2 { font-size: clamp(26px, 2.6vw, 32px); color: var(--fh-blek); margin: 0 0 18px; }
.fh-leit-fjoldi { color: var(--fh-grar); margin: 0 0 14px; } .fh-leit-fjoldi b { color: var(--fh-blar); }
.fh-nidurstodur { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--fh-lin); }
.fh-nidurstodur li { border-bottom: 1px solid var(--fh-lin); }
.fh-nidurstada { display: flex; gap: 20px; align-items: center; padding: 18px 4px; text-decoration: none; color: var(--fh-blek); }
.fh-nidurstada:hover .fh-nidurstada__titill { color: var(--fh-blar); text-decoration: underline; text-underline-offset: 4px; }
.fh-nidurstada__texti { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; }
.fh-nidurstada__tegund { align-self: flex-start; font-size: 12.5px; font-weight: 700; color: var(--fh-blar); background: #e3f0f5; border-radius: 999px; padding: 2px 10px; }
.fh-nidurstada__titill { font: 600 22px/1.25 Faustina, serif; }
.fh-nidurstada__lysing { color: var(--fh-grar); font-size: 15px; line-height: 1.5; }
.fh-nidurstada__mynd { flex: none; width: 104px; height: 78px; object-fit: cover; border-radius: 12px; }
.fh-leit-ekkert__titill { font: 600 26px/1.2 Faustina, serif; color: var(--fh-blek); margin: 0 0 8px; }
.fh-leit-ekkert > p { color: var(--fh-grar); }
.fh-leit-ekkert__simi a { font-weight: 700; color: var(--fh-blar); }
.fh-flytileidir { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 20px 0 32px; }
.fh-flytileid { display: flex; align-items: center; gap: 14px; padding: 18px 20px; border: 1px solid var(--fh-lin); border-radius: 18px; text-decoration: none; color: var(--fh-blek); background: #fff; transition: border-color .15s, transform .15s; }
.fh-flytileid:hover { border-color: var(--fh-himinn); transform: translateY(-2px); }
.fh-flytileid b { display: block; font: 600 20px/1.2 Faustina, serif; }
.fh-flytileid small { display: block; color: var(--fh-grar); font-size: 14px; margin-top: 2px; }
.fh-flytileid__tak { flex: none; width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: #e3f0f5; color: var(--fh-blar); }
.fh-villa__sky { font-size: clamp(22px, 2.4vw, 30px) !important; transform: rotate(-4deg); margin-bottom: 10px !important; display: inline-block; }
.fh-leitarsvaedi .fh-sendu { margin-top: 8px; }
@media (max-width: 640px) {
  .fh-flytileidir { grid-template-columns: minmax(0, 1fr); }
  .fh-nidurstada__mynd { width: 72px; height: 72px; }
  .fh-nidurstada__titill { font-size: 20px; }
}

/* Language links: top bar (desktop, right), footer bottom row, phone menu */
.fh-simalina__inn { position: relative; }
.fh-tungumal { position: absolute; right: clamp(20px, 4vw, 32px); top: 50%; transform: translateY(-50%); display: flex; gap: 14px; }
.fh-tungumal a { color: #e3eef6 !important; background: none !important; padding: 0 !important; font-size: 14px; text-decoration: none; }
.fh-tungumal a:hover { color: #fff !important; text-decoration: underline; }
.fh-tungumal a::after { content: none !important; }
@media (max-width: 1100px) { .fh-tungumal { display: none; } }
.fh-tungumal-fotur { display: contents; }
.fh-tungumal-vm { display: flex; gap: 18px; margin: 4px 0 8px; }
.fh-tungumal-vm a { color: #fff; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

/* ---------------- Polish round (6 Nov) ---------------- */
/* 1b. Hero: the right half, a conversation with a cloud and Foreldrasíminn (desktop) */
.fh-hetja { position: relative; overflow: hidden; }
.fh-hetjumynd { display: none; }
@media (min-width: 1100px) {
  .fh-hetja > .fh-hetjumynd { display: block; position: absolute; top: clamp(56px, 6vw, 84px); right: max(clamp(20px, 4vw, 32px), calc((100% - 1200px) / 2 + 32px));
    width: 430px; height: 330px; margin: 0 !important; }
}
.fh-hetjumynd > * { position: absolute; margin: 0; }
.fh-hetjumynd__bola { max-width: 300px; padding: 16px 20px; border-radius: 22px; font-size: 16px; line-height: 1.45; color: var(--fh-blek);
  background: #fff; box-shadow: 0 16px 40px rgba(19, 48, 74, .2); }
.fh-hetjumynd__bola:first-child { left: 0; top: 0; border-bottom-left-radius: 6px; transform: rotate(-2deg); }
.fh-hetjumynd__bola--svar { right: 0; top: 112px; background: var(--fh-bleik-l); border-bottom-right-radius: 6px; transform: rotate(1.5deg); }
.fh-hetjumynd__simi { right: 6px; bottom: 0; display: flex; align-items: center; gap: 12px; padding: 12px 18px 12px 12px; border-radius: 18px;
  background: rgba(255, 255, 255, .16); border: 1px solid rgba(255, 255, 255, .35); color: #fff; backdrop-filter: blur(6px); }
.fh-hetjumynd__simi .fh-icon { width: 42px; height: 42px; padding: 10px; box-sizing: border-box; border-radius: 50%; background: #fff; color: #b0569a; }
.fh-hetjumynd__simi small { display: block; font-size: 13px; color: #e6f0f7; }
.fh-hetjumynd__simi b { font: 700 24px/1.1 Figtree, sans-serif; }
@media (prefers-reduced-motion: no-preference) {
  .fh-hetjumynd__bola, .fh-hetjumynd__simi { animation: fh-svif 7s ease-in-out infinite; }
  .fh-hetjumynd__bola--svar { animation-delay: -2s; } .fh-hetjumynd__simi { animation-delay: -5.5s; }
  @keyframes fh-svif { 50% { translate: 0 -6px; } }
}
/* the hero's text column leaves room for it */
@media (min-width: 1100px) { .fh-hetja > .fh-inn { max-width: 40ch; } .fh-hetja h1 { max-width: 13ch; } }

/* 5. Foreldrasíminn band: bigger bubbles with who's speaking, and the counsellor typing */
.fh-bolur { gap: 16px !important; }
.fh-bola { position: relative; max-width: 46ch; font-size: 17px; padding: 30px 22px 18px; box-shadow: 0 12px 30px rgba(0, 30, 60, .18); }
.fh-bola::before { content: "Foreldri"; position: absolute; top: 11px; left: 22px; font: 700 11.5px/1 Figtree, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--fh-grar); }
.fh-bola--svar::before { content: "Ráðgjafi"; color: #8a3f62; }
.fh-bolur::after { content: ""; align-self: flex-end; width: 64px; height: 34px; border-radius: 18px 18px 6px 18px;
  background: radial-gradient(circle, #b0569a 3.5px, transparent 4.5px) 14px 50% / 18px 100% repeat-x, var(--fh-bleik-l); opacity: .95; }
@media (prefers-reduced-motion: no-preference) { .fh-bolur::after { animation: fh-skrifar 1.4s ease-in-out infinite; } @keyframes fh-skrifar { 50% { opacity: .55; } } }

/* 6. Closing band: three ways to reach us */
.fh-lok .fh-lok__inn { max-width: 52ch; color: var(--fh-grar); margin-top: 10px !important; }
.fh-kafli > .fh-lokleidir { width: min(1200px, 100%); max-width: 1200px; }
.fh-lokleidir { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 32px !important; }
.fh-lokleid { display: flex; flex-direction: column; gap: 6px; padding: 26px; border-radius: 22px; background: #fff; border: 1px solid var(--fh-lin); text-decoration: none; color: var(--fh-blek); transition: transform .15s, box-shadow .15s; }
.fh-lokleid:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(19, 48, 74, .1); }
.fh-lokleid__tak { width: 48px; height: 48px; border-radius: 50%; display: grid; place-items: center; background: #e3f0f5; color: var(--fh-blar); margin-bottom: 8px; }
.fh-lokleid__merki { font-weight: 700; letter-spacing: .12em; text-transform: uppercase; font-size: 12.5px; color: #b0569a; }
.fh-lokleid b { font: 600 26px/1.15 Faustina, serif; }
.fh-lokleid__texti { color: var(--fh-grar); font-size: 15px; line-height: 1.5; }
.fh-lokleid--simi { background: linear-gradient(140deg, #0f4f73 0%, #2f6a99 55%, #7d78b4 100%); border-color: transparent; color: #fff; }
.fh-lokleid--simi .fh-lokleid__tak { background: rgba(255, 255, 255, .16); color: #fff; }
.fh-lokleid--simi .fh-lokleid__merki { color: #ffd9e8; } .fh-lokleid--simi .fh-lokleid__texti { color: #d6e6f1; }
.fh-lokleid--simi b { font: 700 32px/1.1 Figtree, sans-serif; }
@media (max-width: 900px) { .fh-lokleidir { grid-template-columns: minmax(0, 1fr); } }

/* 3. Service pages: the "at a glance" box above the help card */
.fh-yfirlit { background: #fff; border: 1px solid var(--fh-lin); border-radius: 22px; padding: 22px 24px 24px; }
.fh-yfirlit dl { margin: 10px 0 18px; }
.fh-yfirlit dl div { display: flex; justify-content: space-between; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--fh-lin); font-size: 15px; }
.fh-yfirlit dt { color: var(--fh-grar); } .fh-yfirlit dd { margin: 0; font-weight: 700; color: var(--fh-blek); text-align: right; }
.fh-yfirlit .fh-takki { width: 100%; justify-content: center; box-sizing: border-box; }

/* 7. Sticky header that slims down on scroll */
.fh-haus-wrap { display: contents; }
.fh-haus { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 50; transition: padding .2s, box-shadow .2s; }
.fh-haus.er-skrunad { padding-block: 6px; box-shadow: 0 6px 24px rgba(19, 48, 74, .1); }
.fh-haus .wp-block-site-logo img, .fh-haus .fh-merki img { transition: width .2s; }
@media (min-width: 782px) { .fh-haus.er-skrunad .wp-block-site-logo img, .fh-haus.er-skrunad .fh-merki img { width: 150px !important; } }
@media (max-width: 781px) { .fh-haus.er-skrunad .wp-block-site-logo img, .fh-haus.er-skrunad .fh-merki img { width: 120px !important; } }

/* 8. Gentle fade-up as sections come into view (only when the script runs; none with reduced motion) */
.fh-hreyfing .fh-birtist { opacity: 0; transform: translateY(18px); transition: opacity .6s ease-out var(--fh-seinkun, 0ms), transform .6s ease-out var(--fh-seinkun, 0ms); }
.fh-hreyfing .fh-birtist.er-synilegt { opacity: 1; transform: none; }
/* hero: the cloud sits clear of the phone card; typing indicator as three real dots */
.fh-hetjumynd__sky { left: -12px; top: 192px; }
.fh-hetjumynd__simi { bottom: -6px; }
.fh-bolur::after { content: "• • •"; width: auto; height: auto; padding: 4px 16px 6px; background: var(--fh-bleik-l); color: #b0569a; font: 700 18px/1.2 Figtree, sans-serif; letter-spacing: 1px; }
/* On phones WordPress's admin bar scrolls away (it's only fixed above 600 px), so the header sticks to the very top */
@media (max-width: 600px) { .fh-haus { top: 0; } }
