/* ght-fitrana */
/* GHH Fitrana — Zakat ul Fitr: the household's people × the amount for one, in a card beside GHH's words. */
.ght.fitr { padding-top: clamp(28px, 3.5vw, 48px); }
.ght .fitr__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr); align-items: start; gap: clamp(32px, 5vw, 88px); }
.ght.fitr .crumbs { margin-bottom: 22px; }
/* the title as the page heroes set it */
.ght .fitr__h { margin: 0 0 24px; font-size: clamp(40px, 5.4vw, 84px); font-weight: 900; line-height: .95; letter-spacing: -.045em; text-wrap: balance; }
.ght .fitr__body { max-width: 58ch; font-size: 18px; color: var(--ght-ink-2); }
.ght .fitr__pts { display: grid; gap: 12px; margin-top: 24px; }
.ght .fitr__pts li { display: flex; align-items: flex-start; gap: 12px; font-weight: 600; }
.ght .fitr__pts svg { flex: none; width: 22px; height: 22px; margin-top: 2px; padding: 3px; border-radius: 50%; background: var(--ght-blue); fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.ght .fitr__media { margin-top: 32px; }

/* the form: a white card, stays in view beside the words on desktop */
.ght .fitr__side { position: sticky; top: calc(var(--ght-hdr) + var(--wp-admin--admin-bar--height, 0px) + 20px); }
.ght .fitr__card { margin: 0; padding: 24px; border: 1px solid var(--ght-line); border-radius: var(--ght-r-l); background: #fff; color: var(--ght-ink); }
.ght.t-mist .fitr__card { border-color: transparent; }
.ght .fitr__q { display: block; font-size: 20px; font-weight: 700; line-height: 1.25; letter-spacing: -.02em; }
.ght .fitr__hint { margin-top: 6px; font-size: 14px; line-height: 1.4; color: var(--ght-mute); }

/* − 4 people + */
.ght .fitr__step { display: grid; grid-template-columns: 56px minmax(0, 1fr) 56px; align-items: center; gap: 12px; margin-top: 20px; }
.ght .fitr__b { display: grid; place-items: center; width: 56px; height: 56px; padding: 0; border: 1px solid var(--ght-line); border-radius: 50%; background: #fff; color: var(--ght-ink); cursor: pointer; }
.ght .fitr__b:hover, .ght .fitr__b:focus { background: var(--ght-mist); color: var(--ght-ink); }
.ght .fitr__b:focus-visible { outline: 2px solid var(--ght-blue); outline-offset: 2px; }
.ght .fitr__b:disabled { opacity: .4; cursor: default; background: #fff; }
.ght .fitr__b svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.ght .fitr__n { display: flex; flex-direction: column; align-items: center; min-width: 0; }
.ght .fitr__n input { width: 100%; max-width: 160px; height: auto; margin: 0; padding: 0; border: 0; border-radius: var(--ght-r-s); background: none; box-shadow: none; color: var(--ght-ink); font: 800 56px/1 var(--ght-f); letter-spacing: -.03em; text-align: center; -moz-appearance: textfield; appearance: textfield; }
.ght .fitr__n input::-webkit-outer-spin-button, .ght .fitr__n input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
.ght .fitr__n input:focus { outline: 0; box-shadow: inset 0 0 0 1.5px var(--ght-blue); }
.ght .fitr__unit { margin-top: 4px; font-size: 14px; font-weight: 500; color: var(--ght-mute); }

/* quick choices ("Whole Ramadan"): the design system's choice chips */
.ght .fitr__chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.ght .fitr__chip { flex: 1 1 auto; min-height: 40px; padding: 0 12px; white-space: nowrap; border: 1px solid var(--ght-line); border-radius: var(--ght-r-s); background: #fff; color: var(--ght-ink); font: 600 15px/1 var(--ght-f); cursor: pointer; }
.ght .fitr__chip:hover, .ght .fitr__chip:focus { background: var(--ght-mist); color: var(--ght-ink); }
.ght .fitr__chip:focus-visible { outline: 2px solid var(--ght-blue); outline-offset: 2px; }
.ght .fitr__chip[aria-pressed="true"] { border-color: var(--ght-blue); background: var(--ght-soft); box-shadow: inset 0 0 0 1px var(--ght-blue); color: var(--ght-blue-d); }

/* a narrow card (tablets, phones): the chips 2 × 2 */
@media (max-width: 1200px) { .ght .fitr__chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* the card alone on an appeal page (in place of the donation form): the side column is narrow */
.ght.fitr--card { padding: 0; }
/* the appeal page's side column is already the card: no second border inside it */
.ght.fitr--card .fitr__card { padding: 0; border: 0; border-radius: 0; background: none; }
.ght.fitr--card .fitr__chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* the month of Ramadan: a square a day, the fasts paid for in blue */
.ght .fitr__days { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 5px; margin-top: 16px; padding: 12px; border-radius: var(--ght-r-m); background: var(--ght-soft); }
.ght .fitr__days i { display: grid; place-items: center; aspect-ratio: 1; border-radius: 7px; background: #fff; color: var(--ght-mute); font-style: normal; font-size: 12px; font-weight: 600; transition: background .18s, color .18s; }
.ght .fitr__days i.is-on { background: var(--ght-blue); color: #fff; }
.ght .fitr__days b { grid-column: 1 / -1; justify-self: center; margin-top: 4px; font-size: 15px; font-weight: 700; color: var(--ght-blue-d); }

/* one figure per person */
.ght .fitr__figs { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 4px; min-height: 36px; margin-top: 16px; padding: 10px; border-radius: var(--ght-r-m); background: var(--ght-soft); }
.ght .fitr__figs i { display: block; width: 28px; height: 28px; }
.ght .fitr__figs i.is-new { animation: fitr-in .28s cubic-bezier(.2, .9, .3, 1.3); }
.ght .fitr__figs svg { width: 100%; height: 100%; fill: none; stroke: var(--ght-blue-d); stroke-width: 1.8; stroke-linecap: round; }
.ght .fitr__figs b { margin-left: 4px; font-size: 15px; font-weight: 700; color: var(--ght-blue-d); }
@keyframes fitr-in { from { opacity: 0; transform: translateY(6px) scale(.6); } to { opacity: 1; transform: none; } }

/* 4 people × £5 · Total £20 */
.ght .fitr__total { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 12px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--ght-line); }
.ght .fitr__sum { font-size: 15px; font-weight: 500; color: var(--ght-ink-2); }
.ght .fitr__tl { font-size: 15px; font-weight: 600; }
.ght .fitr__tl b { margin-left: 6px; font-size: 28px; font-weight: 800; letter-spacing: -.02em; }
.ght .fitr__go { width: 100%; min-height: 52px; margin-top: 16px; font-size: 17px; }
.ght .fitr__go.is-busy { opacity: .7; cursor: progress; }
.ght .fitr__err { margin-top: 12px; font-size: 14px; color: var(--ght-err); }
.ght .fitr__note { margin-top: 12px; font-size: 13px; line-height: 1.4; color: var(--ght-mute); }

/* the expected Eid: a gold line at the top of the card */
.ght .fitr__eid { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 18px; padding: 10px 14px; border-radius: var(--ght-r-m); background: var(--ght-gold-soft); color: #7A4D04; font-size: 14px; font-weight: 600; line-height: 1.4; }
.ght .fitr__eid svg { flex: none; width: 18px; height: 18px; margin-top: 1px; fill: #A86A06; }

/* photo behind: the picture fills the section, the words sit on its dark left side, the card on the right */
.ght.fitr--photo { position: relative; overflow: hidden; padding: clamp(36px, 4.5vw, 72px) 0 clamp(48px, 6vw, 96px); background: var(--ght-night); color: #fff; }
.ght.fitr--photo.has-bg { min-height: clamp(600px, 82svh, 880px); display: flex; align-items: center; }
.ght .fitr__bg { position: absolute; inset: 0; }
.ght .fitr__bg img { width: 100%; height: 100%; object-fit: cover; }
.ght .fitr__shade { position: absolute; inset: 0; background:
	linear-gradient(90deg, rgba(6, 20, 30, .92) 0%, rgba(6, 20, 30, .7) 42%, rgba(6, 20, 30, .25) 100%),
	linear-gradient(0deg, rgba(6, 20, 30, .6) 0%, rgba(6, 20, 30, 0) 40%); }
.ght.fitr--photo .fitr__grid { position: relative; z-index: 1; width: 100%; align-items: center; }
.ght.fitr--photo .fitr__h { color: #fff; }
.ght.fitr--photo .fitr__body { color: rgba(255, 255, 255, .86); }
.ght.fitr--photo .fitr__pts li { color: #fff; }
.ght.fitr--photo .crumbs, .ght.fitr--photo .crumbs [aria-current], .ght.fitr--photo .crumbs a { color: rgba(255, 255, 255, .78); }
.ght.fitr--photo .crumbs a:hover { color: #fff; }
.ght.fitr--photo .fitr__media { max-width: 440px; }
.ght.fitr--photo .fitr__card { border-color: transparent; }
.ght.fitr--photo .fitr__side { position: static; }

/* phones: "4 people · £20 · Pay" pinned to the bottom once the form has scrolled away */
.ght .fitr__bar { display: none; }

@media (max-width: 960px) {
	.ght .fitr__grid { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
	.ght .fitr__side { position: static; margin-top: 28px; }
	.ght .fitr__media { margin-top: 28px; }
	/* phones: the form straight after the words, the photo or film under it */
	.ght .fitr__story { display: contents; }
	.ght .fitr__media { order: 2; }
}
@media (max-width: 960px) {
	/* the picture across the top, fading into the dark the words and card sit on */
	.ght.fitr--photo.has-bg { display: block; min-height: 0; padding-top: 0; }
	.ght.fitr--photo .fitr__bg { position: relative; inset: auto; height: clamp(260px, 62vw, 460px); margin-bottom: -120px; }
	.ght.fitr--photo .fitr__shade { background: linear-gradient(0deg, rgba(6, 20, 30, 1) 0%, rgba(6, 20, 30, .35) 55%, rgba(6, 20, 30, .1) 100%); }
	.ght.fitr--photo .fitr__media { max-width: none; }
}
@media (max-width: 760px) {
	.ght .fitr__card { padding: 18px; }
	.ght .fitr__bar:not([hidden]) { position: fixed; z-index: 90; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px var(--ght-pad) calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--ght-line); background: #fff; box-shadow: 0 -12px 40px -20px rgba(6, 20, 30, .35); color: var(--ght-ink); }
	.ght .fitr__bar-t { font-size: 15px; font-weight: 500; color: var(--ght-ink-2); }
	.ght .fitr__bar-t b { display: block; font-size: 13px; font-weight: 500; color: var(--ght-mute); }
	.ght .fitr__bar-t span { font-size: 20px; font-weight: 800; color: var(--ght-ink); }
	.ght .fitr__bar .btn { min-height: 48px; padding: 0 28px; }
	.ght .fitr__body { font-size: 17px; }
	.ght .fitr__n input { font-size: 48px; }
}
@media (prefers-reduced-motion: reduce) {
	.ght .fitr__figs i.is-new { animation: none; }
}

/* ght-video */
/* GHH Video. (Root is .ght.gtv.) */
.ght.gtv { position: relative; aspect-ratio: var(--gtv-ratio, 16 / 9); overflow: hidden; border-radius: 22px; background: var(--ght-ink); }
.ght.gtv .gtv__play, .ght.gtv .gtv__play:hover, .ght.gtv .gtv__play:focus { position: absolute; inset: 0; display: grid; place-items: center; width: 100%; height: 100%; padding: 0; border: 0; border-radius: 0; background-color: transparent; color: #fff; cursor: pointer; }
.ght.gtv .gtv__play img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ght-ease); }
.ght.gtv .gtv__play::after { content: ""; position: absolute; inset: 0; background: rgba(6, 20, 30, .25); transition: background-color .3s; }
.ght.gtv .gtv__btn { position: relative; z-index: 1; display: grid; place-items: center; width: 78px; height: 78px; border-radius: 50%; background: rgba(255, 255, 255, .92); color: var(--ght-ink); box-shadow: 0 16px 40px -14px rgba(0, 0, 0, .6); transition: transform .3s var(--ght-ease), background-color .3s, color .3s; }
.ght.gtv .gtv__btn svg { width: 26px; height: 26px; margin-left: 4px; fill: currentColor; stroke: none; }
.ght.gtv .gtv__label { position: absolute; z-index: 1; left: 0; right: 0; bottom: 20px; font-weight: 700; text-align: center; }
.ght.gtv .gtv__play:hover img { transform: scale(1.04); }
.ght.gtv .gtv__play:hover .gtv__btn { transform: scale(1.08); background: var(--ght-blue); color: #fff; }
.ght.gtv .gtv__frame { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* ght-story */
/* GHH Story — words beside a photo or film; without a picture, heading left and text right. */
.ght .story__grid { display: grid; align-items: center; gap: clamp(32px, 5vw, 96px); }
.ght.story--media .story__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ght.story--left .story__media { order: -1; }
.ght.story--text.story--plain .story__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; max-width: calc(68ch + 2 * var(--ght-pad)); }
.ght.story--only .story__grid { grid-template-columns: minmax(0, 1fr); max-width: 1040px; }
.ght.story--only .story__text { display: none; }
.ght.story--text .story__grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; }
.ght .story__text .h2 { margin-bottom: 24px; }
.ght.story--text .story__text .h2 { margin-bottom: 0; }
.ght .story__body { max-width: 64ch; }
.ght .story__btns { margin-top: 30px; }
.ght .story__media .pmedia { border-radius: 22px; }
.ght .story__media .pmedia img { aspect-ratio: 4 / 3.2; object-fit: cover; }
/* folded long text */
.ght .story__body.is-folded { position: relative; max-height: 15em; overflow: hidden; }
.ght .story__body.is-folded::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 6em; background: linear-gradient(rgba(255, 255, 255, 0), #fff); pointer-events: none; }
.ght.t-mist .story__body.is-folded::after { background: linear-gradient(rgba(238, 244, 247, 0), var(--ght-mist)); }
.ght.t-night .story__body.is-folded::after { background: linear-gradient(rgba(6, 20, 30, 0), var(--ght-night)); }
.ght .story__more, .ght .story__more:hover, .ght .story__more:focus { display: inline-flex; margin-top: 14px; padding: 0; border: 0; background: none; color: var(--ght-blue-d); font-size: 16px; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.ght.t-night .story__more { color: var(--ght-gold); }
/* long words beside a picture: the picture starts at the top and stays in view while reading */
.ght.story--long .story__grid { align-items: start; }
.ght.story--long .story__media { position: sticky; top: calc(var(--ght-hdr) + var(--wp-admin--admin-bar--height, 0px) + 28px); }
.ght.story--long .story__media .pmedia img { aspect-ratio: 4 / 5; }

@media (max-width: 960px) {
	.ght.story--media .story__grid, .ght.story--text .story__grid { grid-template-columns: minmax(0, 1fr); }
	.ght.story--text .story__text .h2 { margin-bottom: 0; }
	.ght .story__media { order: -1; }
	.ght.story--long .story__media { position: static; }
	.ght.story--long .story__media .pmedia img { aspect-ratio: 4 / 3.2; }
}

/* ght-tiles */
/* GHH Tiles — photo cards, icon tiles or a simple list; each tile is one link. */
.ght .tiles__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 18px 40px; margin-bottom: clamp(28px, 3.6vw, 52px); }
.ght .tiles__head .lead { margin-top: 16px; }
/* a long intro: heading left, the words right */
.ght .tiles__head--long { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; gap: 24px clamp(32px, 5vw, 96px); }
.ght .tiles__head--long .tiles__all { grid-column: 2; justify-self: start; }
.ght .tiles__long { max-width: 64ch; }
@media (max-width: 960px) {
	.ght .tiles__head--long { grid-template-columns: minmax(0, 1fr); }
	.ght .tiles__head--long .tiles__all { grid-column: 1; }
}
.ght .tiles__all { color: var(--ght-blue-d); }
.ght.t-night .tiles__all { color: var(--ght-gold); }
.ght .tiles__grid { display: grid; gap: clamp(14px, 1.6vw, 24px); }
.ght .tiles__grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ght .tiles__grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ght .tiles__grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ght .tiles__grid > li { display: flex; min-width: 0; }
.ght .tile { display: flex; flex-direction: column; width: 100%; overflow: hidden; border-radius: 20px; background: var(--ght-mist); color: var(--ght-ink); text-decoration: none; transition: transform .35s var(--ght-ease), box-shadow .35s var(--ght-ease), background-color .25s; }
.ght.t-mist .tile { background: #fff; }
.ght.t-night .tile { background: rgba(255, 255, 255, .06); color: #fff; }
.ght .tile__body { display: flex; flex: 1; flex-direction: column; gap: 8px; padding: 22px 22px 24px; }
.ght .tile__h { font-size: 21px; font-weight: 800; line-height: 1.15; letter-spacing: -.015em; }
.ght .tile__t { font-size: 15px; line-height: 1.5; color: var(--ght-mute); }
.ght.t-night .tile__t { color: rgba(255, 255, 255, .66); }
.ght .tile__go { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 10px; font-size: 15px; font-weight: 700; color: var(--ght-blue-d); }
.ght.t-night .tile__go { color: var(--ght-gold); }
.ght .tile__go svg { width: 18px; height: 18px; transition: transform .2s var(--ght-ease); }
.ght a.tile:hover { transform: translateY(-4px); box-shadow: 0 26px 50px -30px rgba(6, 20, 30, .45); }
.ght a.tile:hover .tile__go svg { transform: translateX(4px); }

/* photo cards: picture on top */
.ght.tiles--photo .tile__img { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--ght-line); }
.ght.tiles--photo .tile__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ght-ease); }
.ght.tiles--photo a.tile:hover .tile__img img { transform: scale(1.04); }

/* icon tiles: the icon small, top left; the arrow a round button that fills on hover */
.ght.tiles--icon .tile { position: relative; flex-direction: row; align-items: flex-start; gap: 0; box-shadow: inset 0 0 0 1px transparent; transition: transform .35s var(--ght-ease), box-shadow .35s var(--ght-ease), background-color .25s; }
.ght.tiles--icon .tile__img { display: grid; flex: none; place-items: center; width: 56px; height: 56px; margin: 22px 0 0 22px; border-radius: 16px; background: #fff; transition: transform .45s cubic-bezier(.3, 1.5, .5, 1); }
.ght.t-mist.tiles--icon .tile__img { background: var(--ght-mist); }
.ght.t-night.tiles--icon .tile__img { background: rgba(255, 255, 255, .1); }
.ght.tiles--icon .tile__img img { width: 32px; height: 32px; object-fit: contain; }
.ght.tiles--icon .tile__h { font-size: 19px; }
.ght.tiles--icon .tile__body { padding: 22px 22px 22px 18px; }
.ght.tiles--icon .tile__go svg { box-sizing: content-box; width: 16px; height: 16px; padding: 9px; border-radius: 50%; background: var(--ght-mist); color: var(--ght-blue-d); transition: transform .25s var(--ght-ease), background-color .25s, color .25s; }
.ght.t-mist.tiles--icon .tile__go svg { background: var(--ght-mist); }
.ght.t-night.tiles--icon .tile__go svg { background: rgba(255, 255, 255, .1); color: var(--ght-gold); }
.ght.tiles--icon a.tile:hover { box-shadow: inset 0 0 0 1.5px var(--ght-blue), 0 26px 50px -30px rgba(6, 20, 30, .45); }
.ght.t-night.tiles--icon a.tile:hover { box-shadow: inset 0 0 0 1.5px var(--ght-gold); }
.ght.tiles--icon a.tile:hover .tile__img { transform: translateY(-3px) rotate(-6deg) scale(1.06); }
.ght.tiles--icon a.tile:hover .tile__go svg { background: var(--ght-blue); color: #fff; transform: translateX(4px); }
.ght.t-night.tiles--icon a.tile:hover .tile__go svg { background: var(--ght-gold); color: var(--ght-ink); }

/* …with a field photo: the photo on top, the icon set on its lower edge, the words below */
.ght.tiles--icon .tile--ph { flex-direction: column; }
.ght .tile__ph { position: relative; display: block; width: 100%; aspect-ratio: 16 / 10; overflow: hidden; background: var(--ght-line); }
.ght .tile__ph::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(6, 20, 30, .28)); }
.ght .tile__ph img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s var(--ght-ease); }
.ght.tiles--icon a.tile--ph:hover .tile__ph img { transform: scale(1.07); }
.ght.tiles--icon .tile--ph .tile__img { position: relative; z-index: 1; margin: -30px 0 0 20px; background: #fff; box-shadow: 0 10px 24px -12px rgba(6, 20, 30, .45); }
/* on night the icons are drawn light, so their badge stays dark */
.ght.t-night.tiles--icon .tile--ph .tile__img { background: var(--ght-night); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14), 0 10px 24px -12px rgba(0, 0, 0, .6); }
.ght.tiles--icon .tile--ph .tile__body { width: 100%; padding: 14px 20px 20px; }
@media (prefers-reduced-motion: reduce) {
	.ght.tiles--icon a.tile:hover .tile__img, .ght.tiles--icon a.tile--ph:hover .tile__ph img { transform: none; }
}

/* simple list */
.ght.tiles--list .tile { border-radius: 14px; }
.ght.tiles--list .tile__body { padding: 18px 20px; }
.ght.tiles--list .tile__h { font-size: 17px; }

@media (max-width: 1100px) {
	.ght .tiles__grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ght.tiles--photo .tiles__grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	.ght .tiles__grid--2, .ght .tiles__grid--3, .ght .tiles__grid--4 { grid-template-columns: minmax(0, 1fr); }
	.ght.tiles--photo .tiles__grid--3, .ght.tiles--photo .tiles__grid--4 { grid-template-columns: minmax(0, 1fr); }
	/* the photo fills the top of the card, as on desktop (user: a thumbnail at the side was too small) */
	.ght.tiles--photo .tile__body { padding: 16px; }
	.ght .tile__h { font-size: 18px; }
	.ght.tiles--photo .tile__t { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; }
	.ght .tiles__grid { gap: 12px; }
	/* photo icon tiles stay two to a row: smaller photo, icon and words */
	.ght.tiles--icon .tiles__grid:has(.tile--ph) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.ght.tiles--icon .tile--ph { border-radius: 16px; }
	.ght.tiles--icon .tile--ph .tile__ph { aspect-ratio: 4 / 3; }
	.ght.tiles--icon .tile--ph .tile__img { width: 44px; height: 44px; margin: -22px 0 0 12px; border-radius: 12px; }
	.ght.tiles--icon .tile--ph .tile__img img { width: 26px; height: 26px; }
	.ght.tiles--icon .tile--ph .tile__body { gap: 4px; padding: 8px 12px 14px; }
	.ght.tiles--icon .tile--ph .tile__h { font-size: 15.5px; }
	.ght.tiles--icon .tile--ph .tile__t { font-size: 13px; line-height: 1.4; }
	.ght.tiles--icon .tile--ph .tile__go { display: none; }
}

/* ght-cta */
/* GHH Call to Action — one strong band. */
.ght.cta { position: relative; overflow: hidden; padding: clamp(64px, 8vw, 120px) 0; }
.ght .cta__in { position: relative; z-index: 1; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 28px 56px; }
.ght .cta__text { max-width: 760px; }
.ght .cta__h { font-size: clamp(40px, 5.6vw, 84px); font-weight: 900; line-height: .95; letter-spacing: -.04em; text-wrap: balance; }
.ght .cta__h em { font-style: italic; }
.ght .cta__t { max-width: 52ch; margin-top: 20px; font-size: clamp(17px, 1.3vw, 19px); }
.ght .cta__btns { flex: none; }

.ght.cta--gold { background: var(--ght-gold); color: var(--ght-ink); }
.ght.cta--gold .kick { color: var(--ght-ink); }
.ght.cta--gold .cta__t { color: rgba(11, 38, 56, .78); }
.ght.cta--night { background: var(--ght-night); color: #fff; }
.ght.cta--night .cta__h em { color: var(--ght-gold); }
.ght.cta--night .kick { color: var(--ght-gold); }
.ght.cta--night .cta__t { color: rgba(255, 255, 255, .72); }
.ght.cta--blue { background: var(--ght-blue); color: #fff; }
.ght.cta--blue .kick { color: #fff; }
.ght.cta--blue .cta__t { color: rgba(255, 255, 255, .86); }
.ght.cta--photo { min-height: clamp(420px, 52vw, 640px); display: flex; align-items: flex-end; background: var(--ght-night); color: #fff; }
.ght.cta--photo .kick { color: var(--ght-gold); }
.ght.cta--photo .cta__h em { color: var(--ght-gold); }
.ght.cta--photo .cta__t { color: rgba(255, 255, 255, .84); }
.ght.cta--photo .cta__in { width: 100%; }
.ght.cta--night .btn--line, .ght.cta--blue .btn--line, .ght.cta--photo .btn--line, .ght.cta--night .btn--line:focus, .ght.cta--blue .btn--line:focus, .ght.cta--photo .btn--line:focus { color: #fff; }
.ght.cta--night .btn--line:hover, .ght.cta--blue .btn--line:hover, .ght.cta--photo .btn--line:hover { background-color: #fff; color: var(--ght-ink); box-shadow: inset 0 0 0 1.5px #fff; }
.ght.cta--blue .btn--blue, .ght.cta--blue .btn--blue:focus { background-color: var(--ght-ink); }

/* the photo: behind on "over a photo", a rounded picture to the right on the others */
.ght.cta--photo .cta__img { position: absolute; inset: 0; }
.ght.cta--photo .cta__img img { width: 100%; height: 100%; object-fit: cover; }
.ght.cta--photo .cta__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(6, 20, 30, .92) 0%, rgba(6, 20, 30, .45) 50%, rgba(6, 20, 30, .15) 100%); }
.ght.cta:not(.cta--photo).has-img .cta__in { padding-right: calc(34% + 40px); min-height: 280px; align-items: center; }
.ght.cta:not(.cta--photo).has-img .cta__img { position: absolute; z-index: 1; right: var(--ght-pad); top: 50%; width: min(32%, 420px); aspect-ratio: 4 / 3.4; overflow: hidden; border-radius: 22px; transform: translateY(-50%) rotate(2deg); box-shadow: 0 40px 80px -40px rgba(6, 20, 30, .6); }
.ght.cta:not(.cta--photo).has-img .cta__img img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 1361px) {
	.ght.cta:not(.cta--photo).has-img .cta__img { right: calc((100vw - var(--ght-max)) / 2 + var(--ght-pad)); }
}

@media (max-width: 900px) {
	.ght.cta:not(.cta--photo).has-img { display: flex; flex-direction: column-reverse; gap: 32px; }
	.ght.cta:not(.cta--photo).has-img .cta__img { position: relative; right: auto; top: auto; width: auto; margin: 0 var(--ght-pad); transform: none; }
	.ght.cta:not(.cta--photo).has-img .cta__in { padding-right: var(--ght-pad); min-height: 0; }
}
@media (max-width: 760px) {
	.ght .cta__h { font-size: clamp(36px, 10vw, 48px); }
	.ght .cta__btns { width: 100%; }
}

/* ── Verse or quotation: a framed card inside the page margins — deep GHH ink with a faint
   eight-point star pattern, the Arabic in gold Amiri, the translation in white at a reading size,
   a short gold rule and the reference. (User: the full-width dark band in huge heavy type was too
   loud; plain text on grey was too plain.) ── */
.ght.cta.cta--verse { padding: clamp(40px, 5vw, 72px) 0; background: transparent; color: #fff; font-family: var(--ght-ui); }
.ght.cta--verse .cta__in { flex-direction: column; align-items: center; gap: 28px; padding: clamp(48px, 6vw, 88px) clamp(24px, 6vw, 96px); overflow: hidden; border-radius: var(--ght-r-xl);
	background-color: var(--ght-ink);
	/* eight-point stars (two squares, one turned 45°), 6% white, tiled */
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cg fill='none' stroke='%23fff' stroke-opacity='.07' stroke-width='1'%3E%3Crect x='22' y='22' width='28' height='28'/%3E%3Crect x='22' y='22' width='28' height='28' transform='rotate(45 36 36)'/%3E%3Ccircle cx='36' cy='36' r='6'/%3E%3Cpath d='M0 36h8M64 36h8M36 0v8M36 64v8'/%3E%3C/g%3E%3C/svg%3E"),
		radial-gradient(120% 90% at 50% 0%, rgba(27, 157, 217, .22), transparent 70%);
	background-size: 72px 72px, 100% 100%; }
/* inside the page width, not edge to edge */
.ght.cta--verse > .wrap.cta__in { width: calc(100% - 2 * var(--ght-pad)); max-width: calc(var(--ght-max) - 2 * var(--ght-pad)); }
.ght.cta--verse .cta__verse { max-width: 780px; margin: 0; text-align: center; }
.ght.cta--verse .kick { margin-bottom: 16px; color: var(--ght-gold); }
.ght.cta--verse .cta__ar { margin: 0 0 20px; font: 400 clamp(26px, 3vw, 40px)/1.9 "Amiri", "Noto Naskh Arabic", serif; color: var(--ght-gold); text-wrap: balance; }
.ght.cta--verse blockquote.cta__h { margin: 0; padding: 0; border: 0; font: 500 clamp(21px, 2.2vw, 29px)/1.45 var(--ght-ui); letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.ght.cta--verse blockquote.cta__h p { margin: 0; }
.ght.cta--verse .cta__t { display: inline-flex; flex-direction: column; align-items: center; gap: 14px; max-width: none; margin-top: 26px; font-size: 15px; font-style: normal; font-weight: 500; letter-spacing: .01em; color: rgba(255, 255, 255, .72); }
.ght.cta--verse .cta__t::before { content: ""; width: 40px; height: 2px; border-radius: 2px; background: var(--ght-gold); }
.ght.cta--verse .cta__btns { justify-content: center; }
.ght.cta--verse .btn--line, .ght.cta--verse .btn--line:focus { color: #fff; }
.ght.cta--verse .btn--line:hover { background-color: #fff; color: var(--ght-ink); box-shadow: inset 0 0 0 1.5px #fff; }
@media (max-width: 760px) {
	.ght.cta--verse .cta__in { padding: 44px 22px; border-radius: var(--ght-r-l); }
	.ght.cta--verse .cta__ar { font-size: 26px; }
	.ght.cta--verse blockquote.cta__h { font-size: 19px; }
	.ght.cta--verse .cta__btns { width: auto; }
}

/* ght-steps */
/* GHH Steps (root .ght.stp): a numbered process. Desktop: a row of steps joined by a hairline,
   each number in a ringed circle. Phones: a vertical timeline. DESIGN-SYSTEM.md. */
.ght.stp { font-family: var(--ght-ui); }
.ght .stp__head { max-width: 640px; margin: 0 auto clamp(32px, 4vw, 48px); text-align: center; }
.ght .stp__head .lead { margin: 14px auto 0; }
.ght .stp__list { position: relative; display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; counter-reset: stp; }
/* the line through the numbers */
.ght .stp__list::before { content: ""; position: absolute; top: 22px; left: calc(100% / var(--n, 4) / 2); right: calc(100% / var(--n, 4) / 2); height: 1px; background: var(--ght-line); }
.ght .stp__item { position: relative; margin: 0; text-align: center; counter-increment: stp; }
.ght .stp__dot { position: relative; display: grid; place-items: center; width: 44px; height: 44px; margin: 0 auto 16px; border: 1px solid var(--ght-line); border-radius: 50%; background: #fff; color: var(--ght-blue-d); font-size: 17px; font-weight: 700; }
.ght .stp__dot::before { content: counter(stp); }
.ght.t-mist .stp__dot { background: #fff; }
.ght .stp__t { margin: 0 0 6px; font-size: 17px; font-weight: 600; line-height: 1.3; color: var(--ght-ink); }
.ght .stp__x { max-width: 30ch; margin: 0 auto; font-size: 15px; line-height: 1.55; color: var(--ght-mute); }
.ght .stp__btns { justify-content: center; margin-top: clamp(28px, 3vw, 40px); }

@media (max-width: 760px) {
	/* phones: a vertical timeline, the line down the numbers */
	.ght .stp__head { text-align: left; }
	.ght .stp__head .lead { margin-left: 0; }
	.ght .stp__list { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.ght .stp__list::before { top: 22px; bottom: 22px; left: 21.5px; right: auto; width: 1px; height: auto; }
	.ght .stp__item { display: grid; grid-template-columns: 44px minmax(0, 1fr); column-gap: 16px; padding-bottom: 22px; text-align: left; }
	.ght .stp__item:last-child { padding-bottom: 0; }
	.ght .stp__dot { grid-row: span 2; margin: 0; }
	.ght .stp__t { align-self: center; margin: 10px 0 4px; }
	.ght .stp__x { max-width: none; margin: 0; }
	.ght .stp__btns { justify-content: flex-start; }
}

/* ght-faq */
/* GHH Questions — heading (and topics) left, questions right. */
.ght .faq__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); align-items: start; gap: clamp(32px, 5vw, 96px); }
.ght .faq__side { position: sticky; top: calc(var(--ght-hdr) + var(--wp-admin--admin-bar--height, 0px) + 28px); }
.ght .faq__side .h2 { font-size: clamp(32px, 3.4vw, 52px); }
.ght .faq__side .lead { margin-top: 18px; }
.ght .faq__btns { margin-top: 26px; }
/* the questions: the design system's accordion (DESIGN-SYSTEM.md) — one card, hairline rows, a
   chevron in a ringed circle that turns when open, the open question in blue */
.ght .faq__list { overflow: hidden; border: 1px solid var(--ght-line); border-radius: var(--ght-r-l); background: #fff; }
.ght .faq__item + .faq__item { border-top: 1px solid var(--ght-line); }
.ght .faq__q { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 16px 20px; font-family: var(--ght-ui); font-size: 16px; font-weight: 600; line-height: 1.4; letter-spacing: 0; color: var(--ght-ink); list-style: none; cursor: pointer; transition: background-color .2s, color .2s; }
.ght .faq__q::-webkit-details-marker { display: none; }
.ght .faq__q:hover { background: var(--ght-page); }
.ght .faq__q i { position: relative; flex: none; width: 32px; height: 32px; border: 1px solid var(--ght-line); border-radius: 50%; background: #fff; color: var(--ght-ink); transition: border-color .2s, background-color .2s; }
.ght .faq__q i::before { content: ""; position: absolute; inset: 0; 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='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / 16px no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / 16px no-repeat; transition: transform .25s var(--ght-ease); }
.ght .faq__item[open] .faq__q { color: var(--ght-blue-d); }
.ght .faq__item[open] .faq__q i { border-color: var(--ght-blue); color: var(--ght-blue-d); }
.ght .faq__item[open] .faq__q i::before { transform: rotate(180deg); }
.ght .faq__a { max-width: 68ch; padding: 0 20px 20px; font-size: 16px; line-height: 1.6; color: var(--ght-ink-2); animation: ght-faq-open .25s var(--ght-ease); }
@keyframes ght-faq-open { from { opacity: 0; transform: translateY(-4px); } }
/* dark sections: the same card, on the dark */
.ght.t-night .faq__list { border-color: rgba(255, 255, 255, .14); background: rgba(255, 255, 255, .04); }
.ght.t-night .faq__item + .faq__item { border-color: rgba(255, 255, 255, .14); }
.ght.t-night .faq__q { color: #fff; }
.ght.t-night .faq__q:hover { background: rgba(255, 255, 255, .04); }
.ght.t-night .faq__q i { border-color: rgba(255, 255, 255, .24); background: transparent; color: #fff; }
.ght.t-night .faq__item[open] .faq__q { color: var(--ght-gold); }
.ght.t-night .faq__item[open] .faq__q i { border-color: var(--ght-gold); color: var(--ght-gold); }
@media (min-width: 961px) { .ght .faq__q { font-size: 17px; } }

/* topics list (guide pages) */
.ght .faq__nav { margin-top: 32px; padding-top: 22px; border-top: 1px solid var(--ght-line); }
.ght .faq__navt { margin-bottom: 10px; font-size: 14px; font-weight: 700; color: var(--ght-mute); }
.ght .faq__nav ul { display: grid; gap: 2px; }
.ght .faq__nav a { display: block; padding: 8px 12px; margin-left: -12px; border-radius: 10px; font-size: 15.5px; font-weight: 600; text-decoration: none; color: var(--ght-ink-2); transition: background-color .2s, color .2s; }
.ght .faq__nav a:hover { background: var(--ght-mist); color: var(--ght-ink); }
.ght .faq__nav a[aria-current] { background: var(--ght-ink); color: #fff; }

@media (max-width: 960px) {
	.ght .faq__grid { grid-template-columns: minmax(0, 1fr); }
	.ght .faq__side { position: static; }
	/* topics move under the questions on phones */
	.ght.faq--nav .faq__grid { display: flex; flex-direction: column; }
	.ght.faq--nav .faq__nav { order: 3; }
	.ght.faq--nav .faq__side { display: contents; }
	.ght.faq--nav .faq__list { order: 2; }
}

/* elementor-post-3804 */
.elementor-3804 .elementor-element.elementor-element-c1d0a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-fd01a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-fd02a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-fd03a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-fd04a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-fd05a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-fd06a01{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-rl3804{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3804 .elementor-element.elementor-element-65d58a3{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}
/* base-desktop */
.elementor .e-div-block-base{min-width:30px;padding:10px;display:block;}.elementor .e-flexbox-base{padding:10px;display:flex;flex-direction:row;}.elementor .e-grid-base{column-gap:20px;padding:10px;display:grid;row-gap:20px;grid-template-columns:repeat(3, 1fr);grid-template-rows:repeat(2, 1fr);}.elementor .e-tabs-base{padding-block-start:0px;display:flex;flex-direction:column;gap:30px;}.elementor .e-tabs-menu-base{display:flex;justify-content:center;}.elementor .e-tab-base{width:160px;color:#0C0D0E;cursor:pointer;padding:8px;border-width:2px;border-color:#E0E0E0;border-style:solid;background-color:#FFFFFF;display:block;}.elementor .e-tab-base.e--selected{border-color:#0C0D0E;outline-width:0px;}.elementor .e-tab-base:focus{border-color:#0C0D0E;outline-width:0px;}.elementor .e-tab-base:hover,.elementor .e-tab-base:focus-visible{background-color:#E0E0E0;}.elementor .e-tabs-content-area-base{display:block;}.elementor .e-tab-content-base{min-width:30px;padding:10px;display:block;}.elementor .e-list-base{padding:0px;display:flex;flex-direction:column;}.elementor .e-list-item-base{display:flex;flex-direction:row;gap:8px;}.elementor .e-list-item-marker-base{width:auto;height:1lh;display:flex;align-items:center;}.elementor .e-list-item-content-base{flex:1 1 auto;}.elementor .e-accordion-base{padding:0px;display:flex;flex-direction:column;}.elementor .e-accordion-item-base{padding:0px;display:block;}.elementor .e-accordion-item-header-base{cursor:pointer;padding:10px;display:flex;gap:8px;justify-content:space-between;align-items:center;}.elementor .e-accordion-item-title-base{padding:0px;}.elementor .e-accordion-item-icon-base{width:200px;height:20px;padding:0px;display:inline-flex;flex:0 0 auto;justify-content:flex-end;align-items:center;}.elementor .e-accordion-item-icon-open-base{width:200px;height:20px;padding:0px;display:inline-flex;flex:0 0 auto;justify-content:flex-end;align-items:center;}.elementor .e-accordion-item-content-base{min-width:30px;padding:10px;display:block;}.elementor .e-background-video-base{width:100%;overflow:hidden;position:relative;padding:10px;display:flex;flex-direction:column;}.elementor .e-background-video-content-base{width:100%;position:relative;z-index:1;padding:0px;display:flex;flex-direction:column;flex:1 1 auto;}.elementor .e-background-video-controls-base{width:auto;position:absolute;inset-inline-end:20px;inset-block-end:20px;z-index:2;display:flex;gap:8px;}.elementor .e-background-video-play-base{cursor:pointer;padding:8px;border-style:none;background-color:transparent;display:inline-flex;justify-content:center;align-items:center;}.elementor .e-background-video-pause-base{cursor:pointer;padding:8px;border-style:none;background-color:transparent;display:inline-flex;justify-content:center;align-items:center;}.elementor .e-form-base{padding:20px;display:flex;flex-direction:row;gap:10px;flex-wrap:wrap;align-content:start;align-items:flex-start;}.elementor .e-form-base .e-form-checkbox-row{padding:0px;gap:8px;align-items:center;}.elementor .e-form-success-message-base{font-size:12px;color:#2F532E;text-align:center;padding:12px;background-color:#D4E9D6;display:none;}.elementor .e-form-error-message-base{font-size:12px;color:#870000;text-align:center;padding:12px;background-color:#ffdede;display:none;}.elementor .e-carousel-base{position:relative;padding:0px;display:grid;grid-template-columns:repeat(1, 1fr);}.elementor .e-carousel-viewport-base{overflow:hidden;padding:0px;display:block;grid-column:1;grid-row:1;}.elementor .e-carousel-container-base{padding:0px;display:flex;}.elementor .e-carousel-slide-base{min-width:0px;position:relative;display:block;}.elementor .e-carousel-arrow-prev-base{width:auto;z-index:1;color:rgba(238, 238, 238, 0.9);cursor:pointer;padding-block-start:8px;padding-block-end:8px;padding-inline-start:8px;padding-inline-end:8px;margin-inline-start:0px;margin-inline-end:auto;border-style:none;background-color:transparent;display:flex;grid-column:1 / 2;grid-row:1 / 2;justify-content:center;align-items:center;align-self:center;}.elementor .e-carousel-arrow-prev-base:focus{color:rgba(238, 238, 238, 0.9);background-color:transparent;}.elementor .e-carousel-arrow-prev-base:hover,.elementor .e-carousel-arrow-prev-base:focus-visible{color:rgba(238, 238, 238, 0.9);background-color:transparent;}.elementor .e-carousel-arrow-prev-base:focus-visible{outline-width:2px;outline-color:rgba(238, 238, 238, 0.9);outline-style:solid;outline-offset:2px;}.elementor .e-carousel-arrow-prev-base.e--disabled{cursor:default;opacity:30%;}.elementor .e-carousel-arrow-next-base{width:auto;z-index:1;color:rgba(238, 238, 238, 0.9);cursor:pointer;padding-block-start:8px;padding-block-end:8px;padding-inline-start:8px;padding-inline-end:8px;margin-inline-start:auto;margin-inline-end:0px;border-style:none;background-color:transparent;display:flex;grid-column:1 / 2;grid-row:1 / 2;justify-content:center;align-items:center;align-self:center;}.elementor .e-carousel-arrow-next-base:focus{color:rgba(238, 238, 238, 0.9);background-color:transparent;}.elementor .e-carousel-arrow-next-base:hover,.elementor .e-carousel-arrow-next-base:focus-visible{color:rgba(238, 238, 238, 0.9);background-color:transparent;}.elementor .e-carousel-arrow-next-base:focus-visible{outline-width:2px;outline-color:rgba(238, 238, 238, 0.9);outline-style:solid;outline-offset:2px;}.elementor .e-carousel-arrow-next-base.e--disabled{cursor:default;opacity:30%;}.elementor .e-carousel-pagination-base{padding-block-start:16px;padding-block-end:16px;padding-inline-start:0px;padding-inline-end:0px;display:flex;gap:12px;grid-column:1;grid-row:2;justify-content:center;align-items:center;}.elementor .e-carousel-dot-base{width:6px;height:6px;min-width:6px;min-height:6px;cursor:pointer;padding-block-start:0px;padding-block-end:0px;padding-inline-start:0px;padding-inline-end:0px;border-radius:50%;border-width:0px;border-style:none;background-color:rgba(0, 0, 0, 0.2);display:inline-flex;appearance:none;}.elementor .e-carousel-dot-base:focus{background-color:rgba(0, 0, 0, 0.2);}.elementor .e-carousel-dot-base:hover,.elementor .e-carousel-dot-base:focus-visible{background-color:#000;}.elementor .e-carousel-dot-base.e--selected{background-color:#000;}.elementor .e-carousel-dot-base:focus-visible{outline-width:2px;outline-color:#000;outline-style:solid;outline-offset:2px;}.elementor .e-carousel-autoplay-controls-base{width:auto;margin-inline-start:auto;margin-inline-end:auto;display:flex;grid-column:1;grid-row:3;align-items:center;}.elementor .e-carousel-autoplay-play-base{width:auto;color:#000;cursor:pointer;padding-block-start:8px;padding-block-end:8px;padding-inline-start:8px;padding-inline-end:8px;border-style:none;background-color:transparent;display:flex;justify-content:center;align-items:center;}.elementor .e-carousel-autoplay-play-base:focus{color:#000;background-color:transparent;}.elementor .e-carousel-autoplay-play-base:hover,.elementor .e-carousel-autoplay-play-base:focus-visible{color:#000;background-color:transparent;}.elementor .e-carousel-autoplay-play-base:focus-visible{outline-width:2px;outline-color:#000;outline-style:solid;outline-offset:2px;}.elementor .e-carousel-autoplay-pause-base{width:auto;color:#000;cursor:pointer;padding-block-start:8px;padding-block-end:8px;padding-inline-start:8px;padding-inline-end:8px;border-style:none;background-color:transparent;display:flex;justify-content:center;align-items:center;}.elementor .e-carousel-autoplay-pause-base:focus{color:#000;background-color:transparent;}.elementor .e-carousel-autoplay-pause-base:hover,.elementor .e-carousel-autoplay-pause-base:focus-visible{color:#000;background-color:transparent;}.elementor .e-carousel-autoplay-pause-base:focus-visible{outline-width:2px;outline-color:#000;outline-style:solid;outline-offset:2px;}.elementor .e-collection-loop-base{display:block;}.elementor .e-collection-loop-layout-base{display:grid;gap:20px;grid-template-columns:repeat(3, 1fr);grid-auto-rows:1fr;}.elementor .e-pagination-base{padding-block-start:8px;padding-block-end:8px;padding-inline-start:8px;padding-inline-end:8px;margin-block-start:8px;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start;align-items:center;}.elementor .e-pagination-prev-base{width:auto;font-size:14px;color:#1F2937;text-align:center;text-decoration:none;padding-block-start:8px;padding-block-end:8px;padding-inline-start:12px;padding-inline-end:12px;border-radius:4px;border-width:1px;border-color:#E5E7EB;border-style:solid;display:inline-flex;gap:8px;align-items:center;}.elementor .e-pagination-next-base{width:auto;font-size:14px;color:#1F2937;text-align:center;text-decoration:none;padding-block-start:8px;padding-block-end:8px;padding-inline-start:12px;padding-inline-end:12px;border-radius:4px;border-width:1px;border-color:#E5E7EB;border-style:solid;display:inline-flex;gap:8px;align-items:center;}.elementor .e-collection-loop-empty-state-base{display:flex;justify-content:center;}.elementor .e-google-maps-base{width:100%;border-style:none;display:block;}
/* base-mobile */
@media (max-width:767px) {
@media(max-width:767px){.elementor .e-grid-base{grid-template-columns:repeat(1, 1fr);}}
}
/* ght-compat */
/* ==========================================================================
 * GHH Toolkit — what the old theme (WoodMart) gave the Sky plugins.
 * Loaded on every page. SkyDonate's stylesheets were written on top of
 * WoodMart, so without these its forms and pop-ups fall apart under Hello:
 *
 * 1. WoodMart made every button position:relative, inline-flex and centred.
 *    SkyDonate draws the chosen amount / Once-Monthly with an absolutely
 *    placed ::after/::before; without a positioned button it covers the
 *    whole pop-up.
 * 2. SkyDonate draws its close ✕ and video ▶ as glyphs of WoodMart's icon
 *    font ("woodmart-font", \f112 / \f101). Nothing of WoodMart is used: the
 *    same three marks are drawn here as icons in the text colour, 1em square.
 *
 * :where() keeps the button rule at zero specificity, so any real style wins.
 * ======================================================================== */

.donation-card .donation-image .play-button i:before,
button.lity-close:before,
.quick-modal-close:after {
	content: "" !important;
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: middle;
	font-family: inherit !important;
	background-color: currentColor;
	-webkit-mask: var(--ght-ico) center / contain no-repeat;
	mask: var(--ght-ico) center / contain no-repeat;
}
.donation-card .donation-image .play-button i:before { --ght-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 4.5v15l12.5-7.5z'/%3E%3C/svg%3E"); }
button.lity-close:before { display: block; margin: auto; }
button.lity-close:before, .quick-modal-close:after { --ght-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E"); }

/* 3. WoodMart padded every page section; Elementor's default is 10px, so older sections ran to
      the screen edge. Top-level containers get the GHH side gutter by default (containers that set
      their own padding, like the toolkit's sections, keep theirs). */
body.ght-site .e-con.e-parent { --container-default-padding-left: var(--ght-pad, 16px); --container-default-padding-right: var(--ght-pad, 16px); }

:where(button, [type="submit"], [type="button"], .button) { position: relative; }
:where(.donation-form-wrapper, .quick-modal, .skydonate-quick-donation-widget, [class*="skydonate"], [class*="skd-"], .donation-card) :where(button, [type="submit"], [type="button"], .button) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	vertical-align: middle;
	text-align: center;
	cursor: pointer;
}

/* While the basket is open SkyDonate stops the page scrolling with `body { overflow: hidden }`. That
   makes <body> a scroll box, and the sticky header then measures from it instead of the screen: it
   dropped 32px when signed in (the admin bar's margin counted twice) and left the screen when the page
   was scrolled (user: "header shows big when opening the mini basket"). Lock the page on <html>
   instead, which is the screen itself. (Moved from ght-minicart.css in 1.53.6.) */
body.ght-site.skd-mc-locked { overflow: visible; overflow-x: clip; }
html:has(body.ght-site.skd-mc-locked) { overflow: hidden; }

