/* elementor-post-166501 */
.elementor-166501 .elementor-element.elementor-element-f297893{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}
/* ght-font */
/* GHH Toolkit fonts, served from the plugin: latin variable Schibsted Grotesk (home hero), Onest
   (appeal pages — GoFundMe-style type, the user's choice) and Amiri for Arabic. */
@font-face {
	font-family: "Onest";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("https://ghh.org.uk/wp-content/plugins/ghh-toolkit/assets/fonts/onest-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Schibsted Grotesk";
	font-style: normal;
	font-weight: 400 900;
	font-display: swap;
	src: url("https://ghh.org.uk/wp-content/plugins/ghh-toolkit/assets/fonts/schibsted-grotesk-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Schibsted Grotesk";
	font-style: italic;
	font-weight: 400 900;
	font-display: swap;
	src: url("https://ghh.org.uk/wp-content/plugins/ghh-toolkit/assets/fonts/schibsted-grotesk-italic-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: "Amiri";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("https://ghh.org.uk/wp-content/plugins/ghh-toolkit/assets/fonts/amiri-arabic.woff2") format("woff2");
	unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC;
}

/* ght-base */
/* ==========================================================================
 * GHH Toolkit — base: tokens, reset, type, buttons.
 *
 * "Cinematic story" (approved mockup, ~/Sites/ghh-home-mockup): GHH's own
 * footage carries the page; dark and quiet around the pictures, the brand
 * blue for every action, the logo's gold for hope. One family, Schibsted
 * Grotesk; Amiri for Arabic.
 *
 * Tokens are prefixed --ght- (Elementor containers define --display, --gap,
 * --width… and a token with one of those names would be overwritten).
 * Every widget root carries `ght`; rules are written `.ght .x` (0,2,0) so they
 * beat Hello's resets — including its magenta button hover (0,1,1) — while
 * Elementor's own control CSS (0,3,0+) still wins.
 * ======================================================================== */

:root {
	--ght-blue: #1B9DD9;
	--ght-blue-d: #137CB0;
	--ght-night: #06141E;
	--ght-ink: #0B2638;
	--ght-ink-2: #24435A;
	--ght-gold: #F4A51E;
	--ght-mist: #EEF4F7;
	--ght-line: #D6E2E9;
	--ght-mute: #5B7182;
	--ght-r: 14px;
	--ght-pad: clamp(16px, 4vw, 64px);
	--ght-max: 1360px;
	--ght-f: "Schibsted Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
	--ght-ease: cubic-bezier(.2, .7, .2, 1);
	--ght-hdr: 72px;
	--ght-tuck: 20px; /* how far the page runs up under the header's rounded bottom (header.css) */
	/* the design system (DESIGN-SYSTEM.md): the calm look's extra colours, and the four corner sizes */
	--ght-soft: #E9F6FD;
	--ght-page: #F6F8FA;
	--ght-gold-soft: #FDF1DA;
	--ght-ok: #1E874B;
	--ght-ok-soft: #EEF8F2;
	--ght-err: #C5281C;
	--ght-err-soft: #FDF1F0;
	--ght-r-s: 8px;
	--ght-r-m: 12px;
	--ght-r-l: 16px;
	--ght-r-xl: 20px;
	--ght-ui: "Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--ght-float: 0 24px 60px -20px rgba(6, 20, 30, .35);
}

body.ght-site { margin: 0; background: #fff; color: var(--ght-ink); font: 400 17px/1.6 var(--ght-f); -webkit-font-smoothing: antialiased; overflow-x: clip; }
html:has(body.ght-site) { scroll-padding-top: calc(var(--ght-hdr) + 16px); overflow-x: hidden; }
body.ght-site .site-main, body.ght-site .page-content, body.ght-site .page-header { margin: 0; padding: 0; max-width: none; }
body.ght-site .page-header .entry-title { display: none; }
html.ght-lock, html.ght-lock body { overflow: hidden; overscroll-behavior: none; }
html.ght-lock .sky-whatsapp-widget { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }

.ght { position: relative; font-family: var(--ght-f); color: var(--ght-ink); line-height: 1.6; -webkit-font-smoothing: antialiased; }
.ght *, .ght *::before, .ght *::after { box-sizing: border-box; }
.ght img, .ght video { display: block; max-width: 100%; }
.ght img { height: auto; }
.ght a { color: inherit; }
.ght h1, .ght h2, .ght h3, .ght h4, .ght p, .ght ul, .ght ol, .ght dl, .ght dd, .ght figure, .ght blockquote, .ght address { margin: 0; }
.ght ul, .ght ol { padding: 0; list-style: none; }
.ght address { font-style: normal; }
.ght button, .ght input, .ght select { font: inherit; color: inherit; }
/* a site-wide rule capitalises every button's words; GHH writes in sentence case */
.ght button, .ght .btn { text-transform: none; }
.ght svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ght :focus-visible { outline: 2px solid var(--ght-blue); outline-offset: 3px; }

.ght .wrap { width: 100%; max-width: var(--ght-max); margin: 0 auto; padding: 0 var(--ght-pad); }
/* an empty widget's note in the Elementor editor (GHT_Widget_Base::editor_hint) */
.ght.ght-hint { margin: 0; padding: 24px; border: 1px dashed var(--ght-line); border-radius: var(--ght-r-m); color: var(--ght-mute); font-size: 15px; }
.ght .sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ── type ── */
.ght h1, .ght h2, .ght h3 { font-family: var(--ght-f); color: inherit; }
.ght .h2 { font-size: clamp(34px, 4.4vw, 64px); font-weight: 800; line-height: 1; letter-spacing: -.03em; text-wrap: balance; }
.ght .h2--light { color: #fff; }
.ght .lead { max-width: 46ch; font-size: 18px; color: var(--ght-mute); text-wrap: pretty; }
.ght .lead--light { color: rgba(255, 255, 255, .7); }
.ght .more { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; text-decoration: none; color: var(--ght-gold); }
.ght .more svg { transition: transform .2s var(--ght-ease); }
.ght .more:hover svg { transform: translateX(4px); }
.ght .rec { display: inline-block; flex: none; width: 8px; height: 8px; border-radius: 50%; background: #FF4D3D; animation: ght-pulse 1.8s infinite; }
@keyframes ght-pulse { 0% { box-shadow: 0 0 0 0 rgba(255, 77, 61, .6); } 70% { box-shadow: 0 0 0 8px rgba(255, 77, 61, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 77, 61, 0); } }

/* ── buttons (states restate background-color: Hello paints buttons magenta) ── */
.ght .btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; max-width: 100%; margin: 0; padding: 0 24px; border: 0; border-radius: 999px; background-color: transparent; font-family: var(--ght-f); font-size: 16px; font-weight: 700; line-height: 1.2; letter-spacing: 0; text-transform: none; text-decoration: none; text-align: center; white-space: nowrap; cursor: pointer; transition: background-color .2s, transform .15s, box-shadow .2s; }
.ght .btn:active { transform: translateY(1px); }
.ght .btn--blue, .ght .btn--blue:focus { background-color: var(--ght-blue); color: #fff; }
.ght .btn--blue:hover, .ght .btn--blue:focus-visible { background-color: var(--ght-blue-d); color: #fff; box-shadow: 0 10px 30px -10px rgba(27, 157, 217, .8); }
.ght .btn--gold, .ght .btn--gold:focus { background-color: var(--ght-gold); color: var(--ght-ink); }
.ght .btn--gold:hover, .ght .btn--gold:focus-visible { background-color: #ffb73b; color: var(--ght-ink); }
.ght .btn--ink, .ght .btn--ink:focus { background-color: var(--ght-ink); color: #fff; }
.ght .btn--ink:hover, .ght .btn--ink:focus-visible { background-color: var(--ght-ink-2); color: #fff; }
.ght .btn--white, .ght .btn--white:focus { background-color: #fff; color: var(--ght-ink); }
.ght .btn--white:hover, .ght .btn--white:focus-visible { background-color: var(--ght-mist); color: var(--ght-ink); }
.ght .btn--line, .ght .btn--line:focus { box-shadow: inset 0 0 0 1.5px currentColor; background-color: transparent; color: var(--ght-ink); }
.ght .btn--line:hover, .ght .btn--line:focus-visible { background-color: var(--ght-ink); color: #fff; box-shadow: inset 0 0 0 1.5px var(--ght-ink); }
.ght .btn--s { min-height: 40px; padding: 0 18px; font-size: 15px; }
.ght .btn--l { min-height: 56px; padding: 0 30px; font-size: 17px; }
.ght .btn svg { width: 20px; height: 20px; }
.ght .btns { display: flex; flex-wrap: wrap; gap: 12px; }

/* ── cards: the photo and the title open what the card is about (user: "make the image and title
   clickable"). The photo's link covers it (inside a position: relative box) and is skipped by
   keyboard and screen readers, which reach the same page through the title. ── */
.ght .ght-cover { position: absolute; inset: 0; z-index: 2; }
.ght .ght-tlink { color: inherit; text-decoration: none; }
.ght .ght-tlink:hover { color: var(--ght-blue-d); }

/* ── shared by the page sections (1.4.0) ── */
/* tones: white (default), mist, night */
.ght.t-mist { background-color: var(--ght-mist); }
.ght.t-night { background-color: var(--ght-night); color: #fff; }
.ght.t-night .lead, .ght.t-night .rich { color: rgba(255, 255, 255, .74); }
.ght.t-night .btn--line, .ght.t-night .btn--line:focus { color: #fff; }
.ght.t-night .btn--line:hover { background-color: #fff; color: var(--ght-ink); box-shadow: inset 0 0 0 1.5px #fff; }
.ght .kick { margin-bottom: 14px; font-size: 15px; font-weight: 700; color: var(--ght-blue-d); }
.ght.t-night .kick { color: var(--ght-gold); }
/* breadcrumb inside a section */
.ght .crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 14px; font-weight: 600; color: var(--ght-mute); }
.ght .crumbs a { text-decoration: none; }
.ght .crumbs a:hover { color: var(--ght-blue-d); }
.ght .crumbs span[aria-hidden] { opacity: .5; }
.ght .crumbs [aria-current] { color: var(--ght-ink); }
/* long text written in the editor */
.ght .rich { font-size: 17px; line-height: 1.7; color: var(--ght-ink-2); text-wrap: pretty; }
.ght .rich > * + * { margin-top: 1em; }
.ght .rich h2, .ght .rich h3, .ght .rich h4 { margin-top: 1.6em; font-weight: 800; line-height: 1.2; letter-spacing: -.015em; color: var(--ght-ink); }
.ght .rich h2 { font-size: clamp(24px, 2.2vw, 30px); }
.ght .rich h3 { font-size: 21px; }
.ght .rich h4 { font-size: 18px; }
.ght .rich > :first-child { margin-top: 0; }
.ght .rich ul, .ght .rich ol { padding-left: 1.3em; }
.ght .rich ul { list-style: disc; }
.ght .rich ol { list-style: decimal; }
.ght .rich li + li { margin-top: .4em; }
.ght .rich li::marker { color: var(--ght-blue); }
.ght .rich a { color: var(--ght-blue-d); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.ght .rich strong, .ght .rich b { font-weight: 700; color: var(--ght-ink); }
.ght.t-night .rich strong, .ght.t-night .rich b, .ght.t-night .rich h2, .ght.t-night .rich h3 { color: #fff; }
.ght.t-night .rich a { color: var(--ght-gold); }
.ght .rich table { width: 100%; border-collapse: collapse; font-size: 15px; }
/* wide tables (policies) scroll on their own on phones instead of widening the page */
@media (max-width: 760px) { .ght .rich table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; } }
.ght .rich th, .ght .rich td { padding: 10px 12px; border-bottom: 1px solid var(--ght-line); text-align: left; vertical-align: top; }
.ght .rich img { border-radius: 12px; }
/* every page section: vertical rhythm */
.ght.sec { padding: clamp(64px, 8vw, 120px) 0; }
/* two sections of the same light tone in a row: a line between them, less space */
.e-con:has(> .elementor-widget > .elementor-widget-container > .ght.t-white) + .e-con:has(> .elementor-widget > .elementor-widget-container > .ght.t-white) .ght.sec,
.e-con:has(> .elementor-widget > .ght.t-white) + .e-con:has(> .elementor-widget > .ght.t-white) .ght.sec { border-top: 1px solid var(--ght-line); }

/* another plugin's widget (SkyDonate cards, reviews, calculators) in a page: a container with
   the class ght-sec (+ ght-sec--mist / ght-sec--night) gives it the GHH width and spacing */
.e-con.ght-sec { --padding-top: clamp(56px, 7vw, 104px); --padding-bottom: clamp(56px, 7vw, 104px); --padding-left: var(--ght-pad); --padding-right: var(--ght-pad); --content-width: var(--ght-max); --gap: 24px; --row-gap: 24px; }
.e-con.ght-sec--mist { background-color: var(--ght-mist); }
.e-con.ght-sec--night { background-color: var(--ght-night); color: #fff; }
.e-con.ght-sec > .e-con-inner { max-width: calc(var(--ght-max) - 2 * var(--ght-pad)); }
.e-con.ght-sec .ght.gtt { margin-bottom: 8px; }

/* lists (templates/archive.php): edge to edge like the Elementor pages (Hello narrows non-Elementor pages) */
body.ght-site main.site-main.ght-list-page { width: 100%; max-width: none; margin: 0; padding: 0; }
/* search box and page numbers */
.ght .ght-search { display: flex; gap: 10px; max-width: 560px; margin-top: 28px; }
.ght .ght-search input { flex: 1; min-width: 0; min-height: 52px; padding: 0 20px; border: 1px solid var(--ght-line); border-radius: 999px; background: #fff; font: 500 16px var(--ght-f); color: var(--ght-ink); }
.ght .ght-search input:focus { border-color: var(--ght-blue); outline: 2px solid rgba(27, 157, 217, .25); }
.ght .ght-search .btn { min-height: 52px; }
.ght .ght-pages { margin-top: 40px; }
.ght .ght-pages ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.ght .ght-pages a, .ght .ght-pages span { display: grid; place-items: center; min-width: 44px; height: 44px; padding: 0 14px; border-radius: 999px; background: #fff; font-weight: 700; text-decoration: none; color: var(--ght-ink); }
.ght .ght-pages .current { background: var(--ght-ink); color: #fff; }
.ght .ght-pages a:hover { background: var(--ght-blue); color: #fff; }

/* the SEO "ways to give" link boxes (mu-plugins ghh-*-hub*, inline styles: Zakat, Sadaqah Jariyah, water, masjids,
   Fidyah/Kaffarah) in the GHH look */
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) { max-width: calc(var(--ght-max) - 2 * var(--ght-pad)) !important; margin: 0 auto clamp(56px, 7vw, 104px) !important; padding: clamp(24px, 3vw, 40px) !important; border: 0 !important; border-radius: 26px !important; background: var(--ght-night) !important; color: #fff; font-family: var(--ght-f) !important; }
@media (max-width: 1440px) { body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) { margin-left: var(--ght-pad) !important; margin-right: var(--ght-pad) !important; } }
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) h2 { font-size: clamp(26px, 2.6vw, 38px) !important; font-weight: 800; letter-spacing: -.02em; color: #fff !important; }
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) p { color: rgba(255, 255, 255, .7) !important; }
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) ul { gap: 10px 28px !important; }
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) ul a { color: var(--ght-gold) !important; }
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) ul a:hover { text-decoration: underline !important; }
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) div a { padding: 0 24px !important; min-height: 48px; display: inline-flex !important; align-items: center; border-radius: 999px !important; background: #fff !important; color: var(--ght-ink) !important; }
/* the main action blue: the second of two, or a lone button */
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) div a:only-child,
body.ght-site :is(.ghh-zakat-hub, .ghh-sadaqah-hub, .ghh-water-hub, .ghh-masjid-hub, .ghh-fk-hub) div a + a { background: var(--ght-blue) !important; color: #fff !important; }

/* the GHH Reels block when a page shows it on its own (SkyDonate app widget, via shortcode): on the page's
   content column, section spacing, a sentence-case label. The homepage films section styles its own copy. */
body.ght-site .ghhr { padding: clamp(56px, 7vw, 104px) 0; }
body.ght-site .e-con:has(.ghhr) { padding-left: 0 !important; padding-right: 0 !important; } /* its template's container adds 16px more */
body.ght-site .ghhr-inner { max-width: calc(var(--ght-max) - 2 * var(--ght-pad)); margin: 0 auto; }
@media (max-width: 1440px) { body.ght-site .ghhr-inner { margin: 0; padding-left: var(--ght-pad); padding-right: var(--ght-pad); } }
body.ght-site .ghhr-eyebrow { font-family: var(--ght-ui) !important; font-size: 14px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important; }
/* the Reels section, its pop-up and phone feed in the site's UI font (the app plugin forces Manrope,
   which GHT_Speed no longer loads); icons keep their own font */
body.ght-site :is(.ghhr, .ghhr-lb, .ghhr-feed), body.ght-site :is(.ghhr, .ghhr-lb, .ghhr-feed) *:not(i):not([class*="fa-"]) { font-family: var(--ght-ui) !important; }

/* round icon button */
.ght .ico, .ght .ico:hover, .ght .ico:focus { position: relative; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 50%; background-color: transparent; color: inherit; cursor: pointer; text-decoration: none; }
.ght .ico:hover { background-color: var(--ght-mist); }
.ght .ico svg { width: 22px; height: 22px; }

/* the box fixed overlays move into (GHT.portal): takes no room, sets no type */
.ght.ght-portal { position: static; height: 0; line-height: inherit; }

/* reveal on scroll (added by scripts; never hides content without JS) */
.ght .rv { opacity: 0; transform: translateY(28px); transition: opacity .9s var(--ght-ease), transform .9s var(--ght-ease); }
.ght .rv.is-in { opacity: 1; transform: none; }

/* Elementor: sections sit edge to edge */
.elementor-widget[class*="elementor-widget-ght_"] > .elementor-widget-container { margin: 0; padding: 0; }
/* a section holding a film, alone in its container: a definite width. On phones Chrome sized the
   container from the film at zero width (its 16:9 box has only absolute content), so the container
   came out ~130px short and the next section ran over the film (/insights/aqiqah-uk-2026/) */
:is(.e-con, .e-con > .e-con-inner) > .elementor-widget[class*="elementor-widget-ght_"]:only-child:has(.ght.gtv) { width: 100%; }
.e-con:has(> .elementor-widget[class*="elementor-widget-ght_"]) { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }

/* ── Alerts (user: every alert in the site's style). WooCommerce's success / info / error messages and
   SkyDonate's own, everywhere: a calm tinted box with a hairline, a drawn icon (WooCommerce's icon font
   showed as an empty square), the text, and any button on the right (under the text when there's no room). ── */
body.ght-site :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .skydonate-gift-aid-enabled-notice) {
	--al-bg: var(--ght-mist); --al-line: var(--ght-line); --al-ink: var(--ght-ink); --al-ico: var(--ght-blue-d);
	--al-mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm-1 5h2v2h-2V7Zm0 4h2v6h-2v-6Z'/%3E%3C/svg%3E");
	position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px;
	width: auto; margin: 0 0 18px; padding: 14px 16px 14px 48px;
	border: 1px solid var(--al-line) !important; border-radius: 10px; background: var(--al-bg) !important; box-shadow: none;
	color: var(--al-ink) !important; font: 400 15px/1.5 var(--ght-f); list-style: none; text-align: left;
}
body.ght-site :is(.woocommerce-message, .skydonate-gift-aid-enabled-notice) {
	--al-bg: #EEF8F2; --al-line: #C4E5D0; --al-ink: #14532D; --al-ico: #1E874B;
	--al-mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm-1.2 14.2-4-4 1.4-1.4 2.6 2.6 5.6-5.6 1.4 1.4-7 7Z'/%3E%3C/svg%3E");
}
body.ght-site .woocommerce-error {
	--al-bg: #FDF1F0; --al-line: #F2CBC7; --al-ink: #8F1D14; --al-ico: #C5281C;
	--al-mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20Zm-1 5h2v7h-2V7Zm0 9h2v2h-2v-2Z'/%3E%3C/svg%3E");
	display: block;
}
body.ght-site :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .skydonate-gift-aid-enabled-notice)::before {
	content: "" !important; position: absolute; left: 16px; top: 15px; width: 20px; height: 20px; margin: 0; font-family: inherit !important;
	background: var(--al-ico); -webkit-mask: var(--al-mark) center / contain no-repeat; mask: var(--al-mark) center / contain no-repeat;
}
/* WooCommerce focuses a new alert (for screen readers): no heavy outline for that, keyboard focus still shows */
body.ght-site :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notices-wrapper):focus:not(:focus-visible) { outline: none; }
body.ght-site .woocommerce-error li { margin: 0; padding: 0; list-style: none; }
body.ght-site .woocommerce-error li + li { margin-top: 4px; }
body.ght-site :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a:not(.button) { color: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
/* the button: the site's quiet outline pill, on the right */
body.ght-site :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) .button {
	order: 2; float: none !important; display: inline-flex; align-items: center; justify-content: center; min-height: 38px; margin: 0 0 0 auto !important; padding: 0 16px !important;
	border: 1px solid currentColor !important; border-radius: 999px !important; background: #fff !important; box-shadow: none !important;
	color: var(--al-ink) !important; font: 600 14px/1 var(--ght-f) !important; text-transform: none; letter-spacing: 0; white-space: nowrap; text-decoration: none;
}
body.ght-site :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) .button:hover { background: var(--al-ink) !important; color: #fff !important; }
@media (max-width: 600px) {
	body.ght-site :is(.woocommerce-message, .woocommerce-info) .button { margin: 2px 0 0 !important; }
}

@media (max-width: 760px) {
	:root { --ght-hdr: 64px; }
	body.ght-site { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
	/* no transitions at all: a .01ms duration would make every property transition, and scripts that measure right after a change would read stale values */
	.ght *, .ght *::before, .ght *::after { animation: none !important; transition: none !important; }
	.ght .rv { opacity: 1; transform: none; }
}

/* ght-header */
/* GHH Header — always white, sticky, above the film. */
/* the page runs 20px up under the header, so its rounded bottom shows against the content even at the top
   of the page (with nothing under the corners they blended into the plain page background) */
.ght-site-header { position: sticky; z-index: 100; top: var(--wp-admin--admin-bar--height, 0px); margin-bottom: calc(-1 * var(--ght-tuck, 20px)); transition: transform .3s var(--ght-ease); }
/* …so a page that starts with no top padding of its own got its first 20px hidden under the header.
   Every page now starts at least the tuck + 16px below it, by itself (user: no per-page padding).
   Raised to that minimum, never added on top of a page's own padding. Not when the page opens with a
   toolkit section (hero, page header…): those keep their background running up under the curve and
   already sit their content clear of it. */
body.ght-site .ght-site-header ~ .elementor > .e-con:first-child:not(:has(> [data-widget_type^="ght_"]:first-child, > .e-con:first-child > [data-widget_type^="ght_"]:first-child, > .e-con:first-child > .e-con:first-child > [data-widget_type^="ght_"]:first-child)),
body.ght-site .ght-site-header ~ main.ght-main > .elementor:first-child > .e-con:first-child:not(:has(> [data-widget_type^="ght_"]:first-child, > .e-con:first-child > [data-widget_type^="ght_"]:first-child, > .e-con:first-child > .e-con:first-child > [data-widget_type^="ght_"]:first-child)) {
	padding-top: max(var(--padding-top, 0px), calc(var(--ght-tuck, 20px) + 16px));
	padding-block-start: max(var(--padding-top, 0px), calc(var(--ght-tuck, 20px) + 16px));
}
/* (a list page — appeal categories, blog — opening with a toolkit widget printed in Elementor's wrapper
   counts as a toolkit section too: /donate-category/… had a 36px strip above its photo hero) */
body.ght-site .ght-site-header ~ main.site-main:not(:has(> .ght:first-child, > [data-widget_type^="ght_"]:first-child)) { padding-top: max(var(--ght-pt, 0px), calc(var(--ght-tuck, 20px) + 16px)); }
/* the Sky Prayer pages pull their breadcrumb bar up 40px (inline style) to cancel the old theme's top
   padding: here the spacing above does that job, so the bar stays where it is (it sat under the header) */
body.ght-site .ght-site-header ~ main:not(.ght-main) .sptg > .spt-ds-crumbs.spt-ds-bleed:first-child { margin-top: 0 !important; }
/* slid away while scrolling down (header.js), back on the way up */
.ght-site-header.is-tucked { transform: translateY(calc(-100% - var(--wp-admin--admin-bar--height, 0px))); }
/* phones (600px and under): WordPress's admin bar scrolls away with the page instead of staying fixed,
   so a signed-in visitor's header must not keep its 46px gap below where the bar was (user) */
@media screen and (max-width: 600px) {
	.ght-site-header { top: 0; }
	.ght-site-header.is-tucked { transform: translateY(-100%); }
}
@media (prefers-reduced-motion: reduce) { .ght-site-header { transition: none; } }
/* bottom corners rounded at every size, on every page (user) */
.ght.hdr { border-radius: 0 0 20px 20px; background-color: rgba(255, 255, 255, .97); -webkit-backdrop-filter: saturate(1.4) blur(14px); backdrop-filter: saturate(1.4) blur(14px); box-shadow: 0 1px 0 #D5DCE4, 0 10px 24px -14px rgba(11, 38, 56, .28); color: var(--ght-ink); }
.ght .hdr__in { display: flex; align-items: center; gap: 24px; height: var(--ght-hdr); max-width: 1600px; margin: 0 auto; padding: 0 var(--ght-pad); }
.ght .hdr__logo { display: block; flex: none; }
.ght .hdr__logo img { width: 236px; height: auto; }

/* desktop: logo | menu in the true centre | tools (user). Below 1280px there isn't room
   for equal side columns, so the menu follows the logo as before. */
.ght .hdr__nav { margin-right: auto; }
@media (min-width: 1280px) {
	.ght .hdr__in { display: grid; grid-template-columns: 1fr auto 1fr; }
	.ght .hdr__logo { justify-self: start; }
	.ght .hdr__nav { margin: 0; }
	.ght .hdr__tools, .ght .hdr__nav + .hdr__tools { justify-self: end; margin-left: 0; }
	.ght .hdr__logo + .hdr__tools { grid-column: 3; }
}

/* menu: top level in a row, sub-items in a dropdown */
.ght .hdr__list { display: flex; align-items: center; margin: 0; padding: 0; list-style: none; }
.ght .hdr__list > li { position: relative; }
.ght .hdr__list > li > a { display: block; padding: 8px 11px; border-radius: 999px; font-size: 14px; font-weight: 600; white-space: nowrap; text-decoration: none; opacity: .92; transition: background-color .2s; }
.ght .hdr__list > li > a:hover, .ght .hdr__list > li:focus-within > a { background-color: var(--ght-mist); opacity: 1; }
.ght .hdr__list > li.menu-item-has-children > a::after { content: ""; display: inline-block; width: 6px; height: 6px; margin: 0 0 3px 8px; border: solid currentColor; border-width: 0 1.6px 1.6px 0; transform: rotate(45deg); opacity: .6; }
.ght .hdr__list .sub-menu { position: absolute; z-index: 5; left: 0; top: 100%; min-width: 240px; margin: 8px 0 0; padding: 8px; list-style: none; border-radius: 16px; background: #fff; box-shadow: 0 24px 50px -20px rgba(11, 38, 56, .35), 0 0 0 1px var(--ght-line); opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .2s, transform .2s, visibility .2s; }
.ght .hdr__list .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 10px; }
.ght .hdr__list > li:hover > .sub-menu, .ght .hdr__list > li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.ght .hdr__list .sub-menu a { display: block; padding: 9px 12px; border-radius: 10px; font-size: 15px; font-weight: 600; text-decoration: none; }
.ght .hdr__list .sub-menu a:hover { background-color: var(--ght-mist); color: var(--ght-blue-d); }

/* mega menus (a top item with the class "mega"): a panel under the whole header bar, its sub-items
   as icon cards in three columns, filled down each column (the order GHH set them in) */
.ght .hdr__in { position: relative; }
.ght .hdr__list > li.mega { position: static; }
.ght .hdr__list > li.mega > .sub-menu { left: 50%; top: calc(100% - 6px); display: grid; grid-auto-flow: column; grid-template-rows: repeat(var(--mega-rows, 4), auto); grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 12px; width: min(1080px, calc(100vw - 2 * var(--ght-pad))); min-width: 0; margin: 0; padding: 20px; border-radius: var(--ght-r-xl); transform: translate(-50%, 6px); }
.ght .hdr__list > li.mega > .sub-menu::before { top: -24px; height: 24px; }
.ght .hdr__list > li.mega:hover > .sub-menu, .ght .hdr__list > li.mega:focus-within > .sub-menu, .ght .hdr__list > li.mega.is-open > .sub-menu { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.ght .hdr__list > li.mega > .sub-menu > li { margin: 0; }
.ght .hdr__list .sub-menu .mega__a { display: flex; align-items: center; gap: 14px; padding: 12px 14px; border-radius: var(--ght-r-m); color: var(--ght-ink); text-decoration: none; transition: background-color .2s; }
.ght .hdr__list .sub-menu .mega__a:hover, .ght .hdr__list .sub-menu .mega__a:focus-visible { background-color: var(--ght-mist); color: var(--ght-ink); }
.ght .mega__ic { display: grid; flex: none; place-items: center; width: 44px; height: 44px; border-radius: 12px; background: var(--ght-soft); color: var(--ght-blue-d); transition: background-color .2s, color .2s; }
.ght .mega__ic svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ght .mega__a:hover .mega__ic, .ght .mega__a:focus-visible .mega__ic { background: var(--ght-blue); color: #fff; }
.ght .mega__tx { display: grid; gap: 2px; min-width: 0; }
.ght .mega__t { font-size: 15px; font-weight: 700; line-height: 1.25; }
.ght .mega__d { font-size: 13.5px; font-weight: 400; line-height: 1.35; color: var(--ght-mute); }
.ght .hdr__list .current-menu-item > .mega__a .mega__ic { background: var(--ght-blue); color: #fff; }

.ght .hdr__tools { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.ght .hdr__nav + .hdr__tools { margin-left: 0; }
.ght .hdr__basket .ght-basket-n { position: absolute; top: 4px; right: 3px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 999px; background: var(--ght-gold); color: var(--ght-ink); font-size: 11px; font-weight: 800; line-height: 17px; text-align: center; }
.ght .hdr__basket .ght-basket-n[hidden] { display: none; }
/* Donate: lighter and slimmer than the page's buttons (user) */
.ght .btn.hdr__give { min-height: 44px; margin-left: 8px; padding: 0 22px; font-size: 15px; font-weight: 600; }
.ght .hdr__burger { display: none; }
/* appeal pages: while the appeal's pop-up is fetched the first time (header.js) */
.ght .btn.is-busy { opacity: .7; cursor: progress; }

/* search bar under the header */
.ght .hdr__search { padding: 14px 0 18px; border-top: 1px solid var(--ght-line); border-radius: 0 0 20px 20px; background: #fff; }
.ght .hdr__search[hidden] { display: none; }
.ght .hdr__search form { display: flex; gap: 8px; max-width: 900px; }
.ght .hdr__search input { flex: 1; min-width: 0; min-height: 52px; padding: 0 22px; border: 1.5px solid var(--ght-line); border-radius: 999px; background: var(--ght-mist); font-size: 17px; outline: none; }
.ght .hdr__search input:focus { border-color: var(--ght-blue); background: #fff; }

/* menu drawer (tablets and phones). It lives in <body> (header.js moves it there), so every rule is
   rooted on .ght.mnav itself. Phones: the whole screen; tablets: a 420px panel over a dimmed page. */
.ght.mnav { position: fixed; z-index: 1000000; inset: 0; line-height: 1.4; }
.ght.mnav[hidden] { display: none; }
.mnav__scrim { position: absolute; inset: 0; background: rgba(6, 20, 30, .45); opacity: 0; transition: opacity .32s var(--ght-ease); }
.mnav__panel { position: absolute; top: 0; right: 0; bottom: 0; display: flex; flex-direction: column; width: min(420px, 100%); background: #fff; box-shadow: -1px 0 0 var(--ght-line); transform: translateX(100%); transition: transform .32s var(--ght-ease); }
.ght.mnav.is-open .mnav__scrim { opacity: 1; }
.ght.mnav.is-open .mnav__panel { transform: none; }
@media (prefers-reduced-motion: reduce) { .mnav__scrim, .mnav__panel { transition: none; } }

.mnav__panel:focus { outline: 0; }
/* the × lands where the ☰ was */
.mnav__top { display: flex; flex: none; align-items: center; justify-content: space-between; gap: 12px; height: var(--ght-hdr); padding: 0 calc(var(--ght-pad) - 6px) 0 var(--ght-pad); border-bottom: 1px solid var(--ght-line); }
.mnav__top .hdr__logo { min-width: 0; }
.mnav__top .hdr__logo img { width: 172px; max-width: 100%; height: auto; }
.ght .mnav__x { flex: none; width: 44px; height: 44px; }
/* only the middle scrolls: the top and the Donate footer stay put */
.mnav__body { flex: 1; min-height: 0; padding: 16px var(--ght-pad) 8px; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }

/* the mega menus in the drawer: the same icon cards, smaller, in one column */
.mnav__list li.mega > .sub-menu { padding-left: 0; border-left: 0; }
.mnav__list .sub-menu .mega__a { display: flex; align-items: center; gap: 12px; padding: 8px 0; color: var(--ght-ink); }
.mnav__list .mega__ic { width: 38px; height: 38px; border-radius: 10px; }
.mnav__list .mega__ic svg { width: 19px; height: 19px; }
.mnav__list .mega__t { font-size: 15.5px; font-weight: 600; }
.mnav__list .mega__d { font-size: 13px; }

/* search */
.mnav__search { position: relative; margin: 0 0 8px; }
.mnav__search svg { position: absolute; left: 16px; top: 50%; width: 20px; height: 20px; margin-top: -10px; fill: none; stroke: var(--ght-ink-2); stroke-width: 1.8; stroke-linecap: round; pointer-events: none; }
.ght .mnav__search input { width: 100%; min-height: 50px; margin: 0; padding: 0 16px 0 46px; border: 1px solid var(--ght-line); border-radius: 999px; background: #fff; box-shadow: none; color: var(--ght-ink); font-family: var(--ght-f); font-size: 16px; outline: 0; -webkit-appearance: none; appearance: none; }
.ght .mnav__search input:focus { border-color: var(--ght-blue); }
.ght .mnav__search input::-webkit-search-cancel-button { -webkit-appearance: none; }

/* the menu: a row per item, hairlines between; a parent's chevron folds its sub-links out */
.mnav__list, .mnav__list .sub-menu { margin: 0; padding: 0; list-style: none; }
.mnav__list > li { position: relative; display: flex; flex-wrap: wrap; align-items: center; border-bottom: 1px solid var(--ght-line); }
.mnav__list > li > a { flex: 1; min-width: 0; display: block; padding: 16px 0; color: var(--ght-ink); font-size: 18px; font-weight: 600; text-decoration: none; }
.mnav__list > li.current-menu-item > a, .mnav__list > li.current-menu-ancestor > a, .mnav__list > li.current-menu-parent > a { color: var(--ght-blue-d); }
.ght .mnav__more, .ght .mnav__more:hover, .ght .mnav__more:focus { display: grid; flex: none; place-items: center; width: 44px; height: 44px; margin: 0 -10px 0 8px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ght-ink-2); cursor: pointer; }
.ght .mnav__more:hover { background: var(--ght-mist); }
.mnav__more svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .25s var(--ght-ease); }
.mnav__list > li.is-open > .mnav__more svg { transform: rotate(180deg); }
.mnav__list .sub-menu { display: none; flex-basis: 100%; margin: -4px 0 12px; padding-left: 14px; border-left: 1px solid var(--ght-line); }
.mnav__list > li.is-open > .sub-menu { display: block; animation: ght-mnav-sub .25s var(--ght-ease); }
@keyframes ght-mnav-sub { from { opacity: 0; transform: translateY(-4px); } }
.mnav__list .sub-menu a { display: block; padding: 10px 0; color: var(--ght-ink-2); font-size: 16px; font-weight: 500; text-decoration: none; }
.mnav__list .sub-menu .current-menu-item > a { color: var(--ght-blue-d); font-weight: 600; }
.mnav__list a:hover { color: var(--ght-blue-d); }

/* footer: Donate, then account and basket */
.mnav__foot { flex: none; display: grid; gap: 4px; padding: 14px var(--ght-pad) calc(14px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--ght-line); background: #fff; }
.ght .btn.mnav__give { width: 100%; min-height: 52px; font-size: 17px; font-weight: 600; }
.mnav__links { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; }
.ght .mnav__link { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; color: var(--ght-ink); font-size: 15px; font-weight: 600; text-decoration: none; }
.ght .mnav__link + .mnav__link { border-left: 1px solid var(--ght-line); }
.mnav__link svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.mnav__link .ght-basket-n { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--ght-gold); color: var(--ght-ink); font-size: 12px; font-weight: 800; line-height: 20px; text-align: center; }
.mnav__link .ght-basket-n[hidden] { display: none; }

@media (max-width: 1180px) {
	.ght .hdr__nav { display: none; }
	.ght .hdr__burger { display: grid; }
	/* the tools go to the right edge: with the menu hidden, the desktop "nav + tools" rule (more specific) must not hold them left */
	.ght .hdr__tools, .ght .hdr__nav + .hdr__tools { margin-left: auto; }
}
@media (max-width: 760px) {
	.ght .hdr__in { gap: 4px; }
	.ght .hdr__logo img { width: 196px; }
	/* phones: account, basket, Donate, menu (search is in the menu) */
	.ght .hdr__tools .hdr__find { display: none; }
	/* tight together on every phone (user): 36px icons, no gap, Donate 4px off the basket */
	.ght .hdr__tools { gap: 0; }
	.ght .hdr__tools .ico { width: 36px; height: 36px; }
	.ght .hdr__basket .ght-basket-n { top: 0; right: -2px; }
	/* phones (user): a little smaller (34px tall, 12px sides), and 10px clear of the basket icon */
	.ght .btn.hdr__give { min-height: 34px; margin: 0 2px 0 10px; padding: 0 12px; font-size: 14px; }
}
@media (max-width: 420px) {
	/* logo, account, basket, Donate and menu on one line at 390px. The logo gives way first, so the
	   menu button can never be pushed off a narrow screen (it was, at 360px and below). */
	.ght .hdr__logo { flex: 0 1 auto; min-width: 0; }
	.ght .hdr__logo img { width: 172px; max-width: 100%; }
	.ght .hdr__tools { flex: none; }
	/* small screens (user): a smaller word too */
	.ght .btn.hdr__give { padding: 0 10px; font-size: 13px; }
}
@media (max-width: 374px) {
	/* small phones: the account link moves into the menu (it's in the menu's footer) */
	.ght .hdr__tools .hdr__acct { display: none; }
}

/* ---------- The app invite (header.js, from SkyDonate App "In the site header") ----------
   The invite slides in from the left and pushes the bar's own contents out to the right; when its
   seconds are up it all slides back. Same white bar, same height. */
.ght.hdr.is-app-on .hdr__in { overflow: hidden; }
.ght.hdr.is-app-on .hdr__in > :not(.hdr__app) { transition: transform .5s var(--ght-ease), opacity .35s var(--ght-ease); }
.ght.hdr.is-app .hdr__in > :not(.hdr__app) { transform: translateX(110%); opacity: 0; pointer-events: none; }
.ght .hdr__app { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; gap: 6px; padding: 0 calc(var(--ght-pad) - 6px) 0 var(--ght-pad); transform: translateX(-110%); opacity: 0; transition: transform .5s var(--ght-ease), opacity .35s var(--ght-ease); }
.ght.hdr.is-app .hdr__app { transform: none; opacity: 1; }
.ght .hdr__app-go { display: flex; flex: 1 1 auto; align-items: center; gap: 12px; min-width: 0; color: var(--ght-ink); text-decoration: none; }
.ght .hdr__app-mark { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: #000; color: #fff; }
.ght .hdr__app-mark svg { width: 22px; height: 22px; fill: currentColor; }
/* "open in the app": the app's icon on a white tile with a hairline, like a home-screen icon */
.ght .hdr__app-mark.is-icon { overflow: hidden; border: 1px solid var(--ght-line); background: #fff; }
.ght .hdr__app-mark.is-icon img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ght .hdr__app-t { display: grid; flex: 1 1 auto; min-width: 0; line-height: 1.25; }
.ght .hdr__app-t small { overflow: hidden; font-size: 12px; color: var(--ght-mute); white-space: nowrap; text-overflow: ellipsis; }
.ght .hdr__app.is-appeal .hdr__app-t small { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.25; white-space: normal; }
.ght .hdr__app-t b { overflow: hidden; font-size: 17px; font-weight: 700; line-height: 1.15; letter-spacing: -.01em; white-space: nowrap; text-overflow: ellipsis; }
.ght .hdr__app-cta { flex: none; display: inline-flex; align-items: center; min-height: 34px; padding: 0 16px; border-radius: 999px; background: var(--ght-blue); color: #fff; font-size: 14px; font-weight: 700; }
.ght .hdr__app-go:hover .hdr__app-cta, .ght .hdr__app-go:focus-visible .hdr__app-cta { background: var(--ght-blue-d); }
.ght .hdr__app-x, .ght .hdr__app-x:hover, .ght .hdr__app-x:focus { flex: none; display: grid; place-items: center; width: 36px; height: 36px; min-height: 0; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--ght-mute); cursor: pointer; }
.ght .hdr__app-x:hover { background: var(--ght-mist); color: var(--ght-ink); }
.ght .hdr__app-x svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
@media (prefers-reduced-motion: reduce) {
	/* no slide: a quick fade */
	.ght.hdr.is-app-on .hdr__in > :not(.hdr__app), .ght .hdr__app { transition: opacity .2s linear; }
	.ght.hdr.is-app .hdr__in > :not(.hdr__app), .ght .hdr__app { transform: none; }
}

/* elementor-post-166502 */
.elementor-166502 .elementor-element.elementor-element-593b8ec{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}
/* ght-footer */
/* GHH Footer — dark: the big line beside the sign-up (a bordered panel), five columns, then the
   bottom line: legal, social, links and the Sky Web Design credit (a pill that stands out).
   Root is .ght.ftr, so footer rules are written .ght .ftr__x (never .ght .ftr .x). */
.ght.ftr { padding: clamp(64px, 8vw, 104px) 0 32px; background: var(--ght-night); color: rgba(255, 255, 255, .68); }
.ght .ftr__top { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: center; gap: 48px; padding-bottom: 56px; }
/* always the setting's lines (two), never wrapped further */
.ght .ftr__big { font-size: clamp(42px, 5.6vw, 88px); font-weight: 900; line-height: .92; letter-spacing: -.045em; white-space: nowrap; color: #fff; }
/* *words in stars* in GHH gold (user: "make 'changing lives.' in the footer yellow") */
.ght .ftr__big em { position: relative; z-index: 0; display: inline-block; font-style: normal; color: var(--ght-gold); }
/* a soft brush stroke under the gold words, a little off level like a hand drew it; behind the letters, so
   the g's descenders cross over it instead of being cut through */
.ght .ftr__big em::after { content: ""; position: absolute; z-index: -1; left: .02em; right: .12em; bottom: -.07em; height: .08em; border-radius: .1em; background: currentColor; opacity: .45; transform: rotate(-1.2deg); transform-origin: left center; }
/* the moment (footer.js arms it, then adds .is-in once the line is in view): the line rises in, the gold
   words are wiped in left to right as if written, then the stroke draws under them */
.ght .ftr__big.is-armed { opacity: 0; transform: translateY(28px); transition: opacity .7s var(--ght-ease), transform .9s var(--ght-ease); }
.ght .ftr__big.is-armed em { clip-path: inset(-.25em 100% -.3em 0); transition: clip-path 1.1s cubic-bezier(.65, 0, .35, 1) .45s; }
.ght .ftr__big.is-armed em::after { transform: rotate(-1.2deg) scaleX(0); transition: transform .8s cubic-bezier(.2, .8, .2, 1) 1.35s; }
.ght .ftr__big.is-armed.is-in { opacity: 1; transform: none; }
.ght .ftr__big.is-armed.is-in em { clip-path: inset(-.25em 0 -.3em 0); }
.ght .ftr__big.is-armed.is-in em::after { transform: rotate(-1.2deg) scaleX(1); }

/* the sign-up: a bordered panel, no shadow */
.ght .ftr__news { display: grid; gap: 14px; min-width: 0; padding: 28px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 20px; background: rgba(255, 255, 255, .03); }
.ght .ftr__news-l { font-size: 18px; font-weight: 600; line-height: 1.35; color: #fff; }

/* columns */
.ght .ftr__cols { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 32px; padding: 48px 0; border-top: 1px solid rgba(255, 255, 255, .12); }
.ght .ftr__h { margin-bottom: 14px; font-size: 15px; font-weight: 700; color: #fff; }
.ght .ftr__cols a, .ght .ftr__cols address { display: block; width: fit-content; padding: 6px 0; font-size: 15px; font-style: normal; line-height: 1.5; text-decoration: none; transition: color .15s; }
.ght .ftr__cols address { padding-top: 6px; }
.ght .ftr__cols a:hover { color: #fff; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(255, 255, 255, .4); }

/* "Get the app", under the address: a QR code on a white tile (computers) and the two stores as outlined
   buttons with their marks. Phones and tablets get only the buttons: they can't scan their own screen. */
.ght .ftr__app { margin-top: 28px; }
.ght .ftr__app:first-child { margin-top: 0; }
/* five columns: the app one a little wider, so its two store buttons fit side by side */
@media (min-width: 1181px) {
	.ght .ftr__cols:has(.ftr__app) { grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 1.35fr); }
}
.ght .ftr__qr { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.ght .ftr__qr img { flex: none; width: 96px; height: 96px; padding: 8px; border-radius: 14px; background: #fff; }
.ght .ftr__qr span { font-size: 14px; line-height: 1.45; }
/* the two stores side by side, equal widths (user: "can't they be next to each other") */
.ght .ftr__stores { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-width: 340px; }
.ght .ftr__cols .ftr__store { display: flex; align-items: center; justify-content: center; gap: 7px; width: auto; min-width: 0; padding: 9px 8px; white-space: nowrap; border: 1px solid rgba(255, 255, 255, .22); border-radius: 12px; color: #fff; font-size: 14px; font-weight: 600; line-height: 1.2; text-decoration: none; transition: border-color .2s, background-color .2s; }
.ght .ftr__cols .ftr__store:hover { border-color: rgba(255, 255, 255, .5); background: rgba(255, 255, 255, .08); text-decoration: none; }
.ght .ftr__store svg { flex: none; width: 16px; height: 16px; fill: currentColor; }
@media (pointer: coarse) {
	.ght .ftr__qr { display: none; }
}

/* bottom line: legal and social on the left, links and the credit on the right */
.ght .ftr__legal { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; padding-top: 28px; border-top: 1px solid rgba(255, 255, 255, .12); font-size: 14px; }
.ght .ftr__copy span + span::before { content: "· "; }
.ght .ftr__social { display: flex; gap: 8px; }
.ght .ftr__social a { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 50%; color: rgba(255, 255, 255, .8); transition: background-color .2s, border-color .2s, color .2s; }
.ght .ftr__social a:hover { border-color: var(--ght-blue); background: var(--ght-blue); color: #fff; }
/* real brand marks are solid; LinkedIn / unknown fall back to outlines */
.ght .ftr__social svg { width: 17px; height: 17px; fill: currentColor; stroke: none; }
.ght .ftr__social svg.is-line { fill: none; stroke: currentColor; stroke-width: 1.8; }
.ght .ftr__links { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin-left: auto; }
.ght .ftr__links a { text-decoration: none; transition: color .15s; }
.ght .ftr__links a:hover { color: #fff; }

/* the Sky Web Design credit: a pill, the name in white bold, a gold ring on hover */
.ght .ftr__credit { display: inline-flex; align-items: center; gap: 6px; padding: 9px 14px 9px 16px; border: 1px solid rgba(255, 255, 255, .28); border-radius: 999px; background: rgba(255, 255, 255, .06); color: rgba(255, 255, 255, .72); font-size: 14px; text-decoration: none; white-space: nowrap; transition: border-color .2s, background-color .2s, color .2s; }
.ght .ftr__credit b { font-weight: 700; color: #fff; }
/* the studio's "S" mark before its name (the arrow keeps the last-svg rules below) */
.ght .ftr__credit svg.ftr__credit-mark, .ght .ftr__credit:hover svg.ftr__credit-mark { width: 13px; height: 16px; margin: 0 1px 0 4px; fill: #fff; stroke: none; transform: none; }
.ght .ftr__credit svg { width: 15px; height: 15px; fill: none; stroke: var(--ght-gold); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .2s; }
.ght .ftr__credit:hover { border-color: var(--ght-gold); background: rgba(255, 255, 255, .1); color: #fff; }
.ght .ftr__credit:hover svg { transform: translate(2px, -2px); }

/* Sky360's newsletter form: one pill row */
.ght .ftr__news form, .ght .ftr__news .sky360-newsletter-form { display: flex; gap: 8px; margin: 0; }
.ght .ftr__news input[type="email"] { flex: 1; min-width: 0; min-height: 52px; padding: 0 18px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 999px; background: rgba(255, 255, 255, .06); color: #fff; font-family: var(--ght-f); font-size: 16px; box-shadow: none; outline: none; }
.ght .ftr__news input[type="email"]::placeholder { color: rgba(255, 255, 255, .55); }
.ght .ftr__news input[type="email"]:focus { border-color: var(--ght-blue); }
.ght .ftr__news button, .ght .ftr__news button:focus, .ght .ftr__news input[type="submit"] { flex: none; width: auto; min-height: 52px; padding: 0 24px; border: 0; border-radius: 999px; background-color: var(--ght-blue); color: #fff; font-family: var(--ght-f); font-size: 16px; font-weight: 700; cursor: pointer; }
.ght .ftr__news button:hover { background-color: var(--ght-blue-d); color: #fff; }

/* phones: quick donate, once the page's donation form is off screen */
.ght .qbar { display: none; }

@media (max-width: 1180px) {
	.ght .ftr__cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	.ght .ftr__top { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-bottom: 40px; }
	/* sized to the screen so "Delivering hope," fits on one line down to 320px */
	.ght .ftr__big { font-size: min(44px, calc((100vw - 2 * var(--ght-pad)) / 7.9)); }
	.ght .ftr__news { padding: 20px; }
	.ght .ftr__cols { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px 20px; padding: 40px 0; }
	/* the app column alone on its row: full width, so the two store buttons sit side by side */
	.ght .ftr__cols > div:has(> .ftr__app:first-child) { grid-column: 1 / -1; }
	/* phone widths: no QR, whatever the pointer (user: "I don't like this on mobile") */
	.ght .ftr__qr { display: none; }
	/* phones: the app in a GHH-blue panel with white store buttons, so it doesn't read as the grey credit
	   pill below (user: "bordered on mobile to highlight it", then "looks like the Sky Web Design one") */
	.ght .ftr__app { padding: 20px; border: 1px solid rgba(27, 157, 217, .45); border-radius: 20px; background: rgba(27, 157, 217, .14); }
	.ght .ftr__stores { max-width: none; }
	.ght .ftr__cols .ftr__store { border-color: #fff; background: #fff; color: var(--ght-ink); }
	.ght .ftr__cols .ftr__store:hover { border-color: #fff; background: rgba(255, 255, 255, .88); }
	.ght .ftr__cols .ftr__store { padding: 12px 8px; font-size: 15px; }
	/* bottom line, left-aligned (user): social and links on one row, the credit as a full-width row, then the
	   charity line under it in two parts, "© 2026 Global Helping Hands" over "Registered charity in …" */
	.ght .ftr__legal { display: grid; grid-template-columns: auto auto; grid-template-areas: "social links" "credit credit" "legal legal"; align-items: center; gap: 20px 12px; padding-bottom: 88px; }
	.ght .ftr__copy { grid-area: legal; display: grid; gap: 4px; margin-top: 4px; font-size: 13px; line-height: 1.5; color: rgba(255, 255, 255, .55); }
	.ght .ftr__copy span:first-child { font-size: 14px; font-weight: 600; color: rgba(255, 255, 255, .85); }
	.ght .ftr__copy span + span::before { content: none; }
	.ght .ftr__social { grid-area: social; gap: 6px; }
	.ght .ftr__social a { width: 36px; height: 36px; }
	.ght .ftr__links { grid-area: links; justify-content: flex-end; gap: 16px; margin-left: 0; }
	.ght .ftr__credit { grid-area: credit; justify-content: flex-start; padding: 14px 16px; border-radius: 14px; }
	.ght .ftr__credit svg { margin-left: auto; }
	.ght .qbar { position: fixed; z-index: 60; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px var(--ght-pad) calc(10px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--ght-line); background: #fff; box-shadow: 0 -10px 30px -12px rgba(11, 38, 56, .25); color: var(--ght-ink); transform: translateY(110%); transition: transform .3s var(--ght-ease); }
	.ght .qbar.is-on { transform: none; }
	.ght .qbar span { display: grid; font-size: 12px; color: var(--ght-mute); }
	.ght .qbar b { font-size: 15px; color: var(--ght-ink); }
	/* slim, like the header's Donate (user: "too fat") */
	.ght .qbar .btn { min-height: 38px; padding: 0 20px; font-size: 15px; font-weight: 600; }
	body:has(.qbar.is-on) .sky-whatsapp-widget { bottom: 84px !important; }
}

/* elementor-icons */
/*! elementor-icons - v5.54.0 - 27-07-2026 */
@font-face{font-family:eicons;src:url("https://ghh.org.uk/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.eot?5.54.0");src:url("https://ghh.org.uk/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.eot?5.54.0#iefix") format("embedded-opentype"),url("https://ghh.org.uk/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.woff2?5.54.0") format("woff2"),url("https://ghh.org.uk/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.woff?5.54.0") format("woff"),url("https://ghh.org.uk/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.ttf?5.54.0") format("truetype"),url("https://ghh.org.uk/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.svg?5.54.0#eicon") format("svg");font-weight:400;font-style:normal}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes a{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.eicon-animation-spin{animation:a 2s infinite linear}.eicon-editor-link:before{content:"\e800"}.eicon-editor-unlink:before{content:"\e801"}.eicon-editor-external-link:before{content:"\e802"}.eicon-editor-close:before{content:"\e803"}.eicon-editor-list-ol:before{content:"\e804"}.eicon-editor-list-ul:before{content:"\e805"}.eicon-editor-bold:before{content:"\e806"}.eicon-editor-italic:before{content:"\e807"}.eicon-editor-underline:before{content:"\e808"}.eicon-editor-paragraph:before{content:"\e809"}.eicon-editor-h1:before{content:"\e80a"}.eicon-editor-h2:before{content:"\e80b"}.eicon-editor-h3:before{content:"\e80c"}.eicon-editor-h4:before{content:"\e80d"}.eicon-editor-h5:before{content:"\e80e"}.eicon-editor-h6:before{content:"\e80f"}.eicon-editor-quote:before{content:"\e810"}.eicon-editor-code:before{content:"\e811"}.eicon-elementor:before{content:"\e812"}.eicon-elementor-circle:before{content:"\e813"}.eicon-pojome:before{content:"\e814"}.eicon-plus:before{content:"\e815"}.eicon-menu-bar:before{content:"\e816"}.eicon-apps:before{content:"\e817"}.eicon-accordion:before{content:"\e818"}.eicon-alert:before{content:"\e819"}.eicon-animation-text:before{content:"\e81a"}.eicon-animation:before{content:"\e81b"}.eicon-banner:before{content:"\e81c"}.eicon-blockquote:before{content:"\e81d"}.eicon-button:before{content:"\e81e"}.eicon-call-to-action:before{content:"\e81f"}.eicon-captcha:before{content:"\e820"}.eicon-carousel:before{content:"\e821"}.eicon-checkbox:before{content:"\e822"}.eicon-columns:before{content:"\e823"}.eicon-countdown:before{content:"\e824"}.eicon-counter:before{content:"\e825"}.eicon-date:before{content:"\e826"}.eicon-divider-shape:before{content:"\e827"}.eicon-divider:before{content:"\e828"}.eicon-download-button:before{content:"\e829"}.eicon-dual-button:before{content:"\e82a"}.eicon-email-field:before{content:"\e82b"}.eicon-facebook-comments:before{content:"\e82c"}.eicon-facebook-like-box:before{content:"\e82d"}.eicon-form-horizontal:before{content:"\e82e"}.eicon-form-vertical:before{content:"\e82f"}.eicon-gallery-grid:before{content:"\e830"}.eicon-gallery-group:before{content:"\e831"}.eicon-gallery-justified:before{content:"\e832"}.eicon-gallery-masonry:before{content:"\e833"}.eicon-icon-box:before{content:"\e834"}.eicon-image-before-after:before{content:"\e835"}.eicon-image-box:before{content:"\e836"}.eicon-image-hotspot:before{content:"\e837"}.eicon-image-rollover:before{content:"\e838"}.eicon-info-box:before{content:"\e839"}.eicon-inner-section:before{content:"\e83a"}.eicon-mailchimp:before{content:"\e83b"}.eicon-menu-card:before{content:"\e83c"}.eicon-navigation-horizontal:before{content:"\e83d"}.eicon-nav-menu:before{content:"\e83e"}.eicon-navigation-vertical:before{content:"\e83f"}.eicon-number-field:before{content:"\e840"}.eicon-parallax:before{content:"\e841"}.eicon-php7:before{content:"\e842"}.eicon-post-list:before{content:"\e843"}.eicon-post-slider:before{content:"\e844"}.eicon-post:before{content:"\e845"}.eicon-posts-carousel:before{content:"\e846"}.eicon-posts-grid:before{content:"\e847"}.eicon-posts-group:before{content:"\e848"}.eicon-posts-justified:before{content:"\e849"}.eicon-posts-masonry:before{content:"\e84a"}.eicon-posts-ticker:before{content:"\e84b"}.eicon-price-list:before{content:"\e84c"}.eicon-price-table:before{content:"\e84d"}.eicon-radio:before{content:"\e84e"}.eicon-rtl:before{content:"\e84f"}.eicon-scroll:before{content:"\e850"}.eicon-search:before{content:"\e851"}.eicon-select:before{content:"\e852"}.eicon-share:before{content:"\e853"}.eicon-sidebar:before{content:"\e854"}.eicon-skill-bar:before{content:"\e855"}.eicon-slider-3d:before{content:"\e856"}.eicon-slider-album:before{content:"\e857"}.eicon-slider-device:before{content:"\e858"}.eicon-slider-full-screen:before{content:"\e859"}.eicon-slider-push:before{content:"\e85a"}.eicon-slider-vertical:before{content:"\e85b"}.eicon-slider-video:before{content:"\e85c"}.eicon-slides:before{content:"\e85d"}.eicon-social-icons:before{content:"\e85e"}.eicon-spacer:before{content:"\e85f"}.eicon-table:before{content:"\e860"}.eicon-tabs:before{content:"\e861"}.eicon-tel-field:before{content:"\e862"}.eicon-text-area:before{content:"\e863"}.eicon-text-field:before{content:"\e864"}.eicon-thumbnails-down:before{content:"\e865"}.eicon-thumbnails-half:before{content:"\e866"}.eicon-thumbnails-right:before{content:"\e867"}.eicon-time-line:before{content:"\e868"}.eicon-toggle:before{content:"\e869"}.eicon-url:before{content:"\e86a"}.eicon-t-letter:before{content:"\e86b"}.eicon-wordpress:before{content:"\e86c"}.eicon-text:before{content:"\e86d"}.eicon-anchor:before{content:"\e86e"}.eicon-bullet-list:before{content:"\e86f"}.eicon-code:before{content:"\e870"}.eicon-favorite:before{content:"\e871"}.eicon-google-maps:before{content:"\e872"}.eicon-image:before{content:"\e873"}.eicon-photo-library:before{content:"\e874"}.eicon-woocommerce:before{content:"\e875"}.eicon-youtube:before{content:"\e876"}.eicon-flip-box:before{content:"\e877"}.eicon-settings:before{content:"\e878"}.eicon-headphones:before{content:"\e879"}.eicon-testimonial:before{content:"\e87a"}.eicon-counter-circle:before{content:"\e87b"}.eicon-person:before{content:"\e87c"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-file-download:before{content:"\e880"}.eicon-save:before{content:"\e881"}.eicon-zoom-in:before{content:"\e882"}.eicon-shortcode:before{content:"\e883"}.eicon-nerd:before{content:"\e884"}.eicon-device-desktop:before{content:"\e885"}.eicon-device-tablet:before{content:"\e886"}.eicon-device-mobile:before{content:"\e887"}.eicon-document-file:before{content:"\e888"}.eicon-folder-o:before{content:"\e889"}.eicon-hypster:before{content:"\e88a"}.eicon-h-align-left:before{content:"\e88b"}.eicon-h-align-right:before{content:"\e88c"}.eicon-h-align-center:before{content:"\e88d"}.eicon-h-align-stretch:before{content:"\e88e"}.eicon-v-align-top:before{content:"\e88f"}.eicon-v-align-bottom:before{content:"\e890"}.eicon-v-align-middle:before{content:"\e891"}.eicon-v-align-stretch:before{content:"\e892"}.eicon-pro-icon:before{content:"\e893"}.eicon-mail:before{content:"\e894"}.eicon-lock-user:before{content:"\e895"}.eicon-testimonial-carousel:before{content:"\e896"}.eicon-media-carousel:before{content:"\e897"}.eicon-section:before{content:"\e898"}.eicon-column:before{content:"\e899"}.eicon-edit:before{content:"\e89a"}.eicon-clone:before{content:"\e89b"}.eicon-trash:before{content:"\e89c"}.eicon-play:before{content:"\e89d"}.eicon-angle-right:before{content:"\e89e"}.eicon-angle-left:before{content:"\e89f"}.eicon-animated-headline:before{content:"\e8a0"}.eicon-menu-toggle:before{content:"\e8a1"}.eicon-fb-embed:before{content:"\e8a2"}.eicon-fb-feed:before{content:"\e8a3"}.eicon-twitter-embed:before{content:"\e8a4"}.eicon-twitter-feed:before{content:"\e8a5"}.eicon-sync:before{content:"\e8a6"}.eicon-import-export:before{content:"\e8a7"}.eicon-check-circle:before{content:"\e8a8"}.eicon-library-save:before{content:"\e8a9"}.eicon-library-download:before{content:"\e9dd"}.eicon-insert:before{content:"\e8ab"}.eicon-preview-medium:before{content:"\e8ac"}.eicon-sort-down:before{content:"\e8ad"}.eicon-sort-up:before{content:"\e8ae"}.eicon-heading:before{content:"\e8af"}.eicon-logo:before{content:"\e8b0"}.eicon-meta-data:before{content:"\e8b1"}.eicon-post-content:before{content:"\e8b2"}.eicon-post-excerpt:before{content:"\e8b3"}.eicon-post-navigation:before{content:"\e8b4"}.eicon-yoast:before{content:"\e8b5"}.eicon-nerd-chuckle:before{content:"\e8b6"}.eicon-nerd-wink:before{content:"\e8b7"}.eicon-comments:before{content:"\e8b8"}.eicon-download-circle-o:before{content:"\e8b9"}.eicon-library-upload:before{content:"\e8ba"}.eicon-save-o:before{content:"\e8bb"}.eicon-upload-circle-o:before{content:"\e8bc"}.eicon-ellipsis-h:before{content:"\e8bd"}.eicon-ellipsis-v:before{content:"\e8be"}.eicon-arrow-left:before{content:"\e8bf"}.eicon-arrow-right:before{content:"\e8c0"}.eicon-arrow-up:before{content:"\e8c1"}.eicon-arrow-down:before{content:"\e8c2"}.eicon-play-o:before{content:"\e8c3"}.eicon-archive-posts:before{content:"\e8c4"}.eicon-archive-title:before{content:"\e8c5"}.eicon-featured-image:before{content:"\e8c6"}.eicon-post-info:before{content:"\e8c7"}.eicon-post-title:before{content:"\e8c8"}.eicon-site-logo:before{content:"\e8c9"}.eicon-site-search:before{content:"\e8ca"}.eicon-site-title:before{content:"\e8cb"}.eicon-plus-square:before{content:"\e8cc"}.eicon-minus-square:before{content:"\e8cd"}.eicon-cloud-check:before{content:"\e8ce"}.eicon-drag-n-drop:before{content:"\e8cf"}.eicon-welcome:before{content:"\e8d0"}.eicon-handle:before{content:"\e8d1"}.eicon-cart:before{content:"\e8d2"}.eicon-product-add-to-cart:before{content:"\e8d3"}.eicon-product-breadcrumbs:before{content:"\e8d4"}.eicon-product-categories:before{content:"\e8d5"}.eicon-product-description:before{content:"\e8d6"}.eicon-product-images:before{content:"\e8d7"}.eicon-product-info:before{content:"\e8d8"}.eicon-product-meta:before{content:"\e8d9"}.eicon-product-pages:before{content:"\e8da"}.eicon-product-price:before{content:"\e8db"}.eicon-product-rating:before{content:"\e8dc"}.eicon-product-related:before{content:"\e8dd"}.eicon-product-stock:before{content:"\e8de"}.eicon-product-tabs:before{content:"\e8df"}.eicon-product-title:before{content:"\e8e0"}.eicon-product-upsell:before{content:"\e8e1"}.eicon-products:before{content:"\e8e2"}.eicon-bag-light:before{content:"\e8e3"}.eicon-bag-medium:before{content:"\e8e4"}.eicon-bag-solid:before{content:"\e8e5"}.eicon-basket-light:before{content:"\e8e6"}.eicon-basket-medium:before{content:"\e8e7"}.eicon-basket-solid:before{content:"\e8e8"}.eicon-cart-light:before{content:"\e8e9"}.eicon-cart-medium:before{content:"\e8ea"}.eicon-cart-solid:before{content:"\e8eb"}.eicon-exchange:before{content:"\e8ec"}.eicon-preview-thin:before{content:"\e8ed"}.eicon-device-laptop:before{content:"\e8ee"}.eicon-collapse:before{content:"\e8ef"}.eicon-expand:before{content:"\e8f0"}.eicon-navigator:before{content:"\e8f1"}.eicon-plug:before{content:"\e8f2"}.eicon-dashboard:before{content:"\e8f3"}.eicon-typography:before{content:"\e8f4"}.eicon-info-circle-o:before{content:"\e8f5"}.eicon-integration:before{content:"\e8f6"}.eicon-plus-circle-o:before{content:"\e8f7"}.eicon-rating:before{content:"\e8f8"}.eicon-review:before{content:"\e8f9"}.eicon-tools:before{content:"\e8fa"}.eicon-loading:before{content:"\e8fb"}.eicon-sitemap:before{content:"\e8fc"}.eicon-click:before{content:"\e8fd"}.eicon-clock:before{content:"\e8fe"}.eicon-library-open:before{content:"\e8ff"}.eicon-warning:before{content:"\e900"}.eicon-flow:before{content:"\e901"}.eicon-cursor-move:before{content:"\e902"}.eicon-arrow-circle-left:before{content:"\e903"}.eicon-flash:before{content:"\e904"}.eicon-redo:before{content:"\e905"}.eicon-ban:before{content:"\e906"}.eicon-barcode:before{content:"\e907"}.eicon-calendar:before{content:"\e908"}.eicon-caret-left:before{content:"\e909"}.eicon-caret-right:before{content:"\e90a"}.eicon-caret-up:before{content:"\e90b"}.eicon-chain-broken:before{content:"\e90c"}.eicon-check-circle-o:before{content:"\e90d"}.eicon-check:before{content:"\e90e"}.eicon-chevron-double-left:before{content:"\e90f"}.eicon-chevron-double-right:before{content:"\e910"}.eicon-undo:before{content:"\e911"}.eicon-filter:before{content:"\e912"}.eicon-circle-o:before{content:"\e913"}.eicon-circle:before{content:"\e914"}.eicon-clock-o:before{content:"\e915"}.eicon-cog:before{content:"\e916"}.eicon-cogs:before{content:"\e917"}.eicon-commenting-o:before{content:"\e918"}.eicon-copy:before{content:"\e919"}.eicon-database:before{content:"\e91a"}.eicon-dot-circle-o:before{content:"\e91b"}.eicon-envelope:before{content:"\e91c"}.eicon-external-link-square:before{content:"\e91d"}.eicon-eyedropper:before{content:"\e91e"}.eicon-folder:before{content:"\e91f"}.eicon-font:before{content:"\e920"}.eicon-adjust:before{content:"\e921"}.eicon-lightbox:before{content:"\e922"}.eicon-heart-o:before{content:"\e923"}.eicon-history:before{content:"\e924"}.eicon-image-bold:before{content:"\e925"}.eicon-info-circle:before{content:"\e926"}.eicon-link:before{content:"\e927"}.eicon-long-arrow-left:before{content:"\e928"}.eicon-long-arrow-right:before{content:"\e929"}.eicon-caret-down:before{content:"\e92a"}.eicon-paint-brush:before{content:"\e92b"}.eicon-pencil:before{content:"\e92c"}.eicon-plus-circle:before{content:"\e92d"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-sort-amount-desc:before{content:"\e92f"}.eicon-sign-out:before{content:"\e930"}.eicon-spinner:before{content:"\e931"}.eicon-square:before{content:"\e932"}.eicon-star-o:before{content:"\e933"}.eicon-star:before{content:"\e934"}.eicon-text-align-justify:before{content:"\e935"}.eicon-text-align-center:before{content:"\e936"}.eicon-tags:before{content:"\e937"}.eicon-text-align-left:before{content:"\e938"}.eicon-text-align-right:before{content:"\e939"}.eicon-close-circle:before{content:"\e93a"}.eicon-trash-o:before{content:"\e93b"}.eicon-font-awesome:before{content:"\e93c"}.eicon-user-circle-o:before{content:"\e93d"}.eicon-video-camera:before{content:"\e93e"}.eicon-heart:before{content:"\e93f"}.eicon-wrench:before{content:"\e940"}.eicon-help:before{content:"\e941"}.eicon-help-o:before{content:"\e942"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-plus-square-o:before{content:"\e944"}.eicon-minus-square-o:before{content:"\e945"}.eicon-minus-circle:before{content:"\e946"}.eicon-minus-circle-o:before{content:"\e947"}.eicon-code-bold:before{content:"\e948"}.eicon-cloud-upload:before{content:"\e949"}.eicon-search-bold:before{content:"\e94a"}.eicon-map-pin:before{content:"\e94b"}.eicon-meetup:before{content:"\e94c"}.eicon-slideshow:before{content:"\e94d"}.eicon-t-letter-bold:before{content:"\e94e"}.eicon-preferences:before{content:"\e94f"}.eicon-table-of-contents:before{content:"\e950"}.eicon-tv:before{content:"\e951"}.eicon-upload:before{content:"\e952"}.eicon-instagram-comments:before{content:"\e953"}.eicon-instagram-nested-gallery:before{content:"\e954"}.eicon-instagram-post:before{content:"\e955"}.eicon-instagram-video:before{content:"\e956"}.eicon-instagram-gallery:before{content:"\e957"}.eicon-instagram-likes:before{content:"\e958"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-archive:before{content:"\e95e"}.eicon-colors-typography:before{content:"\e95f"}.eicon-custom:before{content:"\e960"}.eicon-footer:before{content:"\e961"}.eicon-header:before{content:"\e962"}.eicon-layout-settings:before{content:"\e963"}.eicon-lightbox-expand:before{content:"\e964"}.eicon-error-404:before{content:"\e965"}.eicon-theme-style:before{content:"\e966"}.eicon-search-results:before{content:"\e967"}.eicon-single-post:before{content:"\e968"}.eicon-site-identity:before{content:"\e969"}.eicon-theme-builder:before{content:"\e96a"}.eicon-download-bold:before{content:"\e96b"}.eicon-share-arrow:before{content:"\e96c"}.eicon-global-settings:before{content:"\e96d"}.eicon-user-preferences:before{content:"\e96e"}.eicon-lock:before{content:"\e96f"}.eicon-export-kit:before{content:"\e970"}.eicon-import-kit:before{content:"\e971"}.eicon-lottie:before{content:"\e972"}.eicon-products-archive:before{content:"\e973"}.eicon-single-product:before{content:"\e974"}.eicon-disable-trash-o:before{content:"\e975"}.eicon-single-page:before{content:"\e976"}.eicon-wordpress-light:before{content:"\e977"}.eicon-cogs-check:before{content:"\e978"}.eicon-custom-css:before{content:"\e979"}.eicon-global-colors:before{content:"\e97a"}.eicon-globe:before{content:"\e97b"}.eicon-typography-1:before{content:"\e97c"}.eicon-background:before{content:"\e97d"}.eicon-device-responsive:before{content:"\e97e"}.eicon-device-wide:before{content:"\e97f"}.eicon-code-highlight:before{content:"\e980"}.eicon-video-playlist:before{content:"\e981"}.eicon-download-kit:before{content:"\e982"}.eicon-kit-details:before{content:"\e983"}.eicon-kit-parts:before{content:"\e984"}.eicon-kit-upload:before{content:"\e985"}.eicon-kit-plugins:before{content:"\e986"}.eicon-kit-upload-alt:before{content:"\e987"}.eicon-hotspot:before{content:"\e988"}.eicon-paypal-button:before{content:"\e989"}.eicon-shape:before{content:"\e98a"}.eicon-wordart:before{content:"\e98b"}.eicon-checkout:before{content:"\e98c"}.eicon-container:before{content:"\e98d"}.eicon-flip:before{content:"\e98e"}.eicon-info:before{content:"\e98f"}.eicon-my-account:before{content:"\e990"}.eicon-purchase-summary:before{content:"\e991"}.eicon-page-transition:before{content:"\e992"}.eicon-spotify:before{content:"\e993"}.eicon-stripe-button:before{content:"\e994"}.eicon-woo-settings:before{content:"\e995"}.eicon-woo-cart:before{content:"\e996"}.eicon-grow:before{content:"\e997"}.eicon-order-end:before{content:"\e998"}.eicon-nowrap:before{content:"\e999"}.eicon-order-start:before{content:"\e99a"}.eicon-progress-tracker:before{content:"\e99b"}.eicon-shrink:before{content:"\e99c"}.eicon-wrap:before{content:"\e99d"}.eicon-align-center-h:before{content:"\e99e"}.eicon-align-center-v:before{content:"\e99f"}.eicon-align-end-h:before{content:"\e9a0"}.eicon-align-end-v:before{content:"\e9a1"}.eicon-align-start-h:before{content:"\e9a2"}.eicon-align-start-v:before{content:"\e9a3"}.eicon-align-stretch-h:before{content:"\e9a4"}.eicon-align-stretch-v:before{content:"\e9a5"}.eicon-justify-center-h:before{content:"\e9a6"}.eicon-justify-center-v:before{content:"\e9a7"}.eicon-justify-end-h:before{content:"\e9a8"}.eicon-justify-end-v:before{content:"\e9a9"}.eicon-justify-space-around-h:before{content:"\e9aa"}.eicon-justify-space-around-v:before{content:"\e9ab"}.eicon-justify-space-between-h:before{content:"\e9ac"}.eicon-justify-space-between-v:before{content:"\e9ad"}.eicon-justify-space-evenly-h:before{content:"\e9ae"}.eicon-justify-space-evenly-v:before{content:"\e9af"}.eicon-justify-start-h:before{content:"\e9b0"}.eicon-justify-start-v:before{content:"\e9b1"}.eicon-woocommerce-cross-sells:before{content:"\e9b2"}.eicon-woocommerce-notices:before{content:"\e9b3"}.eicon-inner-container:before{content:"\e9b4"}.eicon-warning-full:before{content:"\e9b5"}.eicon-exit:before{content:"\e9b6"}.eicon-loop-builder:before{content:"\e9b7"}.eicon-notes:before{content:"\e9b8"}.eicon-read:before{content:"\e9b9"}.eicon-unread:before{content:"\e9ba"}.eicon-carousel-loop:before{content:"\e9bb"}.eicon-mega-menu:before{content:"\eb78"}.eicon-nested-carousel:before{content:"\e9bd"}.eicon-ai:before{content:"\e9be"}.eicon-taxonomy-filter:before{content:"\eb7d"}.eicon-container-grid:before{content:"\ef02"}.eicon-upgrade:before{content:"\e9c1"}.eicon-advanced:before{content:"\eb84"}.eicon-div-block:before{content:"\eb9b"}.eicon-notification:before{content:"\e9c3"}.eicon-light-mode:before{content:"\e9c4"}.eicon-dark-mode:before{content:"\e9c5"}.eicon-upgrade-crown:before{content:"\e9c6"}.eicon-off-canvas:before{content:"\e9c7"}.eicon-speakerphone:before{content:"\e9c9"}.eicon-ehp-cta:before{content:"\e9cb"}.eicon-ehp-forms:before{content:"\e9bc"}.eicon-ehp-hero:before{content:"\e9ca"}.eicon-ehp-zigzag:before{content:"\e9cc"}.eicon-e-button:before{content:"\e9ce"}.eicon-flexbox:before{content:"\e9d0"}.eicon-paragraph:before{content:"\e9d1"}.eicon-icon:before{content:"\e9d2"}.eicon-e-image:before{content:"\e9d3"}.eicon-video:before{content:"\e9d4"}.eicon-svg:before{content:"\e9d5"}.eicon-e-divider:before{content:"\e9d6"}.eicon-e-heading:before{content:"\e9d7"}.eicon-atomic:before{content:"\ebae"}.eicon-library-delete:before{content:"\e9d8"}.eicon-library-copy:before{content:"\e9d9"}.eicon-library-folder-empty:before{content:"\e9da"}.eicon-library-move:before{content:"\e9db"}.eicon-library-edit:before{content:"\e9dc"}.eicon-library-subscription-upgrade:before{content:"\e9de"}.eicon-library-folder-view:before{content:"\e9df"}.eicon-library-grid:before{content:"\e9e1"}.eicon-library-cloud-connect:before{content:"\e9e2"}.eicon-library-import:before{content:"\e9e3"}.eicon-library-list:before{content:"\e9e4"}.eicon-library-cloud-empty:before{content:"\e9e5"}.eicon-folder-plus:before{content:"\e8aa"}.eicon-library-folder:before{content:"\e9e6"}.eicon-accessibility:before{content:"\e9bf"}.eicon-lock-outline:before{content:"\e9e7"}.eicon-e-youtube:before{content:"\e9e8"}.eicon-contact:before{content:"\ebd2"}.eicon-layout:before{content:"\ebd8"}.eicon-components:before{content:"\ebd9"}.eicon-tab-content:before{content:"\ebda"}.eicon-tab-menu:before{content:"\ebdb"}.eicon-atomic-label:before{content:"\e9ee"}.eicon-atomic-form:before{content:"\e9ef"}.eicon-atomic-submit-button:before{content:"\e9f0"}.eicon-atomic-input:before{content:"\e9f1"}.eicon-atomic-text-area:before{content:"\e9f2"}.eicon-atomic-select:before{content:"\e9f3"}.eicon-atomic-checkbox:before{content:"\e9f4"}.eicon-atomic-radiobutton:before{content:"\e9f5"}.eicon-atomic-file-upload:before{content:"\ebe9"}.eicon-atomic-time-picker:before{content:"\ebea"}.eicon-atomic-date-picker:before{content:"\ebeb"}.eicon-upgrade-crown-full:before{content:"\ef03"}.eicon-after:before{content:"\ebfa"}.eicon-pagination-item:before{content:"\ebfb"}.eicon-before:before{content:"\ebfc"}.eicon-pagination:before{content:"\ebfd"}.eicon-loop-item:before{content:"\ec00"}.eicon-loop-widget:before{content:"\ec01"}.eicon-x-twitter:before{content:"\ef04"}.eicon-background-video:before{content:"\ea01"}.eicon-eye:before{content:"\e8ac"}.eicon-elementor-square:before{content:"\e813"}
/* elementor-post-3289 */
.elementor-kit-3289{--e-global-color-primary:#3442AD;--e-global-color-secondary:#6EC1E4;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-3289 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* 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-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-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-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{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{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;}
/* 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; }

/* ght-reviews */
/* ==========================================================================
 * GHH Toolkit — Sky360's Google reviews (Elementor "SEO Reviews" widget,
 * .sky360-reviews-slider) in the GHH design system. Sky360 draws it; this
 * only restyles it. `body …` (and !important where Elementor's widget
 * settings print their own colours) so it wins whichever file loads last.
 * ======================================================================== */

/* cards: white, hairline, 16px corners, no shadow, no lift */
body .sky360-reviews-slider .sky-review-item,
body .sky360-reviews-grid .sky-review-item {
	padding: 22px 22px 18px !important;
	border: 1px solid var(--ght-line) !important;
	border-radius: var(--ght-r-l) !important;
	background: #fff !important;
	box-shadow: none !important;
	transform: none !important;
	color: var(--ght-ink);
	font-family: var(--ght-f);
}
body .sky360-reviews-slider .sky-review-item:hover { border-color: #c4d4de !important; box-shadow: none !important; transform: none !important; }

/* who and when */
body .sky360-reviews-slider .sky-author-photo,
body .sky360-reviews-slider .sky-author-photo-placeholder { width: 44px !important; height: 44px !important; }
body .sky360-reviews-slider .sky-review-author-name { color: var(--ght-ink) !important; font: 600 15px/1.3 var(--ght-f) !important; }
body .sky360-reviews-slider .sky-review-time { color: var(--ght-mute) !important; font: 400 13px/1.35 var(--ght-f) !important; }
body .sky360-reviews-slider .sky-google-icon { width: 18px; height: 18px; }

/* stars in the hope gold, the verified tick in GHH blue */
body .sky360-reviews-slider .sky-review-rating { color: var(--ght-gold) !important; font-size: 17px !important; letter-spacing: 2px; }
body .sky360-reviews-slider .sky-verified-review svg path { fill: var(--ght-blue) !important; }

/* the review */
body .sky360-reviews-slider .sky-review-text { color: var(--ght-ink-2) !important; font: 400 15px/1.6 var(--ght-f) !important; }
/* a shortened review ends after 4 whole lines with "…" (the plugin's pixel max-height cut a line in half) */
body .sky360-reviews-slider .sky-review-text.sky-truncated { display: -webkit-box !important; max-height: none !important; overflow: hidden !important; -webkit-line-clamp: 4; -webkit-box-orient: vertical; }

/* Read more: a quiet blue link in sentence case (the plugin prints "READ MORE") */
body .sky360-reviews-slider .sky-read-more-toggle {
	padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important;
	color: var(--ght-blue-d) !important; font: 600 14px/1.4 var(--ght-f) !important;
	letter-spacing: 0 !important; text-transform: lowercase !important;
}
body .sky360-reviews-slider .sky-read-more-toggle::first-letter { text-transform: uppercase; }
body .sky360-reviews-slider .sky-read-more-toggle:hover, body .sky360-reviews-slider .sky-read-more-toggle:focus { background: none !important; color: var(--ght-ink) !important; }

/* the like: a small outlined pill */
body .sky360-reviews-slider .sky-review-like-button {
	min-height: 34px; padding: 0 12px !important; border: 1px solid var(--ght-line) !important; border-radius: 999px !important;
	background: #fff !important; box-shadow: none !important; color: var(--ght-mute) !important; font: 600 13px var(--ght-f) !important;
}
body .sky360-reviews-slider .sky-review-like-button:hover, body .sky360-reviews-slider .sky-review-like-button:focus { background: var(--ght-mist) !important; color: var(--ght-ink) !important; }

/* Review Us: the outlined pill (one blue button per view), with Google's G drawn —
   the plugin's Font Awesome brand icon has no font since WoodMart was turned off */
body .sky-review-us-button {
	display: inline-flex !important; align-items: center; gap: 10px;
	min-height: 48px; padding: 0 22px !important; border: 1px solid var(--ght-line) !important; border-radius: 999px !important;
	background: #fff !important; box-shadow: none !important; color: var(--ght-ink) !important;
	font: 600 16px/1 var(--ght-f) !important; text-transform: none !important; letter-spacing: 0 !important; text-decoration: none !important;
}
body .sky-review-us-button:hover, body .sky-review-us-button:focus { background: var(--ght-mist) !important; color: var(--ght-ink) !important; }
body .sky-review-us-button .sky-button-icon { width: 20px; height: 20px; margin: 0 !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M17.64 9.2c0-.64-.06-1.25-.16-1.84H9v3.48h4.84a4.14 4.14 0 0 1-1.8 2.72v2.26h2.91c1.7-1.57 2.69-3.88 2.69-6.62z' fill='%234285F4'/%3E%3Cpath d='M9 18c2.43 0 4.47-.8 5.96-2.18l-2.91-2.26c-.81.54-1.84.86-3.05.86-2.34 0-4.33-1.58-5.04-3.71H.96v2.33A9 9 0 0 0 9 18z' fill='%2334A853'/%3E%3Cpath d='M3.96 10.71a5.4 5.4 0 0 1 0-3.42V4.96H.96a9 9 0 0 0 0 8.08l3-2.33z' fill='%23FBBC05'/%3E%3Cpath d='M9 3.58c1.32 0 2.51.45 3.44 1.35l2.58-2.58A8.64 8.64 0 0 0 9 0 9 9 0 0 0 .96 4.96l3 2.33C4.67 5.16 6.66 3.58 9 3.58z' fill='%23EA4335'/%3E%3C/svg%3E") center / 18px no-repeat !important; }
body .sky-review-us-button .sky-button-icon > * { display: none !important; }
body .sky-review-us-button .sky-button-text, body .sky-review-us-button:hover .sky-button-text { color: var(--ght-ink) !important; font: inherit !important; }

/* previous / next: 40px circles with a line border */
body .sky360-reviews-slider .sky-navigation-arrows .swiper-button-prev,
body .sky360-reviews-slider .sky-navigation-arrows .swiper-button-next {
	width: 44px !important; height: 44px !important; border: 1px solid var(--ght-line) !important; border-radius: 50% !important;
	background: #fff !important; box-shadow: none !important; color: var(--ght-ink) !important;
}
body .sky360-reviews-slider .sky-navigation-arrows .swiper-button-prev:hover,
body .sky360-reviews-slider .sky-navigation-arrows .swiper-button-next:hover { background: var(--ght-mist) !important; }
body .sky360-reviews-slider .sky-navigation-arrows .swiper-button-prev::after,
body .sky360-reviews-slider .sky-navigation-arrows .swiper-button-next::after { color: var(--ght-ink) !important; font-size: 16px !important; font-weight: 700; }

/* ght-minicart */
/* ==========================================================================
 * GHH Toolkit — the donation basket (SkyDonate Mini Cart) in the GHH design system
 * (DESIGN-SYSTEM.md → Basket). SkyDonate draws it (#skd-minicart-root, mini-cart.css);
 * this only restyles it. Rules are `body #skd-minicart-root …` so they win over
 * SkyDonate's `#skd-minicart-root …` whichever file loads last.
 * ======================================================================== */

/* (the basket's scroll lock on <html> is in ght-compat.css: it is a fix, not styling, and stays when
   "Style SkyDonate widgets" is off) */

/* SkyDonate's script sets the accent (its navy) on the root inline: the GHH blue wins */
body #skd-minicart-root { --mc-accent: var(--ght-blue) !important; --mc-radius: var(--ght-r-l) !important; --mc-sp: 1 !important; }

/* ── panel ── */
body #skd-minicart-root .skd-mc-backdrop { background: rgba(6, 20, 30, .45); -webkit-backdrop-filter: none; backdrop-filter: none; }
body #skd-minicart-root .skd-mc-panel { width: 420px; color: var(--ght-ink); font-family: var(--ght-ui); box-shadow: var(--ght-float); }
body #skd-minicart-root .skd-mc-header { gap: 10px; padding: 16px 16px 16px 24px; border-bottom: 1px solid var(--ght-line); }
body #skd-minicart-root .skd-mc-title { font-size: 18px; font-weight: 700; letter-spacing: -.01em; }
body #skd-minicart-root .skd-mc-count { min-width: 22px; padding: 2px 8px; border-radius: 999px; background: var(--ght-blue); color: #fff; font-size: 13px; font-weight: 600; line-height: 18px; text-align: center; }
/* the round close, like every GHH pop-up; its ring only for the keyboard (the basket focuses it on open) */
body #skd-minicart-root .skd-mc-close { width: 40px; height: 40px; border: 1px solid var(--ght-line); border-radius: 50%; background: #fff; color: var(--ght-ink); transition: background-color .2s; }
body #skd-minicart-root .skd-mc-close:hover { background: var(--ght-mist); }
body #skd-minicart-root :is(button, a):focus { outline: none; }
body #skd-minicart-root :is(button, a):focus-visible { outline: 2px solid var(--ght-blue); outline-offset: 2px; }

/* ── lines ── */
body #skd-minicart-root .skd-mc-body { padding: 0 24px 16px; }
body #skd-minicart-root .skd-mc-line { gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--ght-line); }
body #skd-minicart-root .skd-mc-thumb { width: 56px; height: 56px; border-radius: var(--ght-r-m); }
/* no photo: a calm tile with the initials, not SkyDonate's navy block. (A photo is the tile's inline
   background-image; an initials tile's inline background is a gradient — only that one is replaced.) */
body #skd-minicart-root .skd-mc-thumb[style*="gradient"] { background: var(--ght-soft) !important; color: var(--ght-blue-d); font-size: 15px; font-weight: 700; letter-spacing: 0; }
body #skd-minicart-root .skd-mc-line-main { gap: 10px; }
body #skd-minicart-root .skd-mc-line-title { font-size: 15px; font-weight: 600; line-height: 1.35; color: var(--ght-ink); }
body #skd-minicart-root .skd-mc-remove { width: 32px; height: 32px; border-radius: 50%; color: var(--ght-mute); transition: background-color .2s, color .2s; }
body #skd-minicart-root .skd-mc-remove:not(.is-disabled):hover { background: var(--ght-err-soft); color: var(--ght-err); }
/* a line still being added (SkyDonate waits for its server key) */
body #skd-minicart-root .skd-mc-remove.is-disabled { opacity: .4; cursor: default; }
body #skd-minicart-root .skd-mc-price-amt { font-size: 16px; font-weight: 700; font-variant-numeric: normal; color: var(--ght-ink); }
body #skd-minicart-root :is(.skd-mc-line-per, .skd-mc-price-sub) { font-size: 13px; font-weight: 400; color: var(--ght-mute); }
/* stepper: a quiet bordered pill */
body #skd-minicart-root .skd-mc-stepper { border: 1px solid var(--ght-line); border-radius: var(--ght-r-s); }
body #skd-minicart-root .skd-mc-step { width: 32px; height: 32px; border-radius: var(--ght-r-s); color: var(--ght-ink); font-size: 17px; font-weight: 500; }
body #skd-minicart-root .skd-mc-step:not(.is-disabled):hover { background: var(--ght-mist); }
body #skd-minicart-root .skd-mc-step.is-disabled { color: #B8C6D0; }
body #skd-minicart-root .skd-mc-qty { min-width: 24px; font-size: 15px; font-weight: 600; font-variant-numeric: normal; }

/* ── extras and monthly ── */
body #skd-minicart-root .skd-mc-pinned { padding: 0 24px 14px; border-top: 1px solid var(--ght-line); }
body #skd-minicart-root .skd-mc-addons { padding-top: 16px; }
/* sentence case, not tracked capitals */
body #skd-minicart-root .skd-mc-addons-label { margin-bottom: 10px; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--ght-ink); }
body #skd-minicart-root .skd-mc-addons-row { gap: 8px; }
body #skd-minicart-root .skd-mc-addon { min-height: 52px; gap: 2px; padding: 10px 12px; border: 1px solid var(--ght-line); border-radius: var(--ght-r-m); background: #fff; transition: border-color .2s, background-color .2s; }
body #skd-minicart-root .skd-mc-addon:hover { border-color: var(--ght-blue); background: var(--ght-soft); }
body #skd-minicart-root .skd-mc-addon-title { font-size: 14px; font-weight: 600; line-height: 1.25; color: var(--ght-ink); }
body #skd-minicart-root .skd-mc-addon-amt { font-size: 13px; font-weight: 600; color: var(--ght-blue-d); }
body #skd-minicart-root .skd-mc-monthly { margin-top: 12px; padding: 4px 0; }
body #skd-minicart-root .skd-mc-monthly-title { font-size: 15px; font-weight: 600; }
body #skd-minicart-root .skd-mc-monthly-sub { font-size: 13px; color: var(--ght-mute); }
/* the site's switch (account pages, Gift Aid): light track, grey knob turning blue */
body #skd-minicart-root .skd-mc-switch { width: 40px; height: 22px; border-radius: 999px; background: #E8E8E8; }
body #skd-minicart-root .skd-mc-switch.on { background: #BFE3F5; }
body #skd-minicart-root .skd-mc-switch-knob { top: 3px; left: 3px; width: 16px; height: 16px; background: #929292; box-shadow: none; transition: left .2s var(--ght-ease), background-color .2s; }
body #skd-minicart-root .skd-mc-switch.on .skd-mc-switch-knob { left: 21px; background: var(--ght-blue); }

/* ── footer ── */
body #skd-minicart-root .skd-mc-footer { padding: 14px 24px calc(16px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--ght-line); }
body #skd-minicart-root .skd-mc-pinned + .skd-mc-footer { border-top: 0; padding-top: 4px; }
body #skd-minicart-root .skd-mc-total { align-items: baseline; padding-bottom: 14px; }
body #skd-minicart-root .skd-mc-total-label { font-size: 15px; font-weight: 600; }
body #skd-minicart-root .skd-mc-total-amt { font-size: 22px; font-weight: 700; letter-spacing: -.01em; font-variant-numeric: normal; }
body #skd-minicart-root .skd-mc-total-mo { font-size: 14px; font-weight: 500; color: var(--ght-mute); }
body #skd-minicart-root .skd-mc-donate { height: 52px; gap: 8px; border-radius: 999px; background: var(--ght-blue); box-shadow: none; font-size: 16px; font-weight: 600; transition: background-color .2s; }
body #skd-minicart-root .skd-mc-donate:not(:disabled):hover { background: var(--ght-blue-d); }
/* an empty basket has nothing to check out: no dead grey button (the suggestions carry the action) */
body #skd-minicart-root .skd-mc-footer.is-empty .skd-mc-donate:disabled { display: none; }
body #skd-minicart-root .skd-mc-addmore { margin-top: 12px; font-size: 15px; font-weight: 600; color: var(--ght-blue-d); }
body #skd-minicart-root .skd-mc-addmore:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ── empty ── */
body #skd-minicart-root .skd-mc-empty { gap: 20px; padding: 28px 0 8px; }
body #skd-minicart-root .skd-mc-empty-icon { width: 64px; height: 64px; background: var(--ght-mist); color: var(--ght-blue-d); }
body #skd-minicart-root .skd-mc-empty-title { font-size: 18px; font-weight: 700; color: var(--ght-ink); }
body #skd-minicart-root .skd-mc-empty-sub { max-width: 280px; font-size: 15px; color: var(--ght-mute); }
body #skd-minicart-root .skd-mc-empty-list { gap: 0; border: 1px solid var(--ght-line); border-radius: var(--ght-r-l); }
body #skd-minicart-root .skd-mc-empty-item { gap: 12px; padding: 12px 14px; border: 0; border-radius: 0; }
body #skd-minicart-root .skd-mc-empty-item + .skd-mc-empty-item { border-top: 1px solid var(--ght-line); }
body #skd-minicart-root .skd-mc-empty-item .skd-mc-thumb { width: 44px; height: 44px; border-radius: var(--ght-r-s); font-size: 13px; }
body #skd-minicart-root .skd-mc-empty-item-title { font-size: 15px; font-weight: 600; }
body #skd-minicart-root .skd-mc-empty-item-sub { font-size: 13px; color: var(--ght-mute); }
body #skd-minicart-root .skd-mc-empty-add { height: 36px; padding: 0 16px; border: 1px solid var(--ght-line); border-radius: 999px; background: #fff; color: var(--ght-ink); font-size: 14px; font-weight: 600; transition: background-color .2s, border-color .2s; }
body #skd-minicart-root .skd-mc-empty-add:hover { border-color: var(--ght-blue); background: var(--ght-soft); color: var(--ght-blue-d); }

/* ── loading and the failure note ── */
body #skd-minicart-root :is(.skd-mc-skel-box, .skd-mc-skel-bar) { background: linear-gradient(90deg, var(--ght-mist) 25%, #E2EBF0 37%, var(--ght-mist) 63%); background-size: 400% 100%; }
body #skd-minicart-root .skd-mc-toast { border-radius: var(--ght-r-m); background: var(--ght-ink); font-family: var(--ght-ui); font-size: 14px; font-weight: 500; }

/* ── phones: the whole screen, like the menu (user: "full width" — the bottom sheet left the page
   showing above it); the footer stays at the bottom and the list scrolls between ── */
@media (max-width: 640px) {
	/* exactly the menu's panel (header.css .mnav__panel): anchored right, min(420px, 100%) wide — the
	   whole screen on phones up to 420px. SkyDonate's own phone rule set left:0, which pinned the panel to
	   the left with the page showing on its right (user) */
	body #skd-minicart-root .skd-mc-panel { top: 0; right: 0; bottom: 0; left: auto; width: min(420px, 100%); max-width: none; height: 100%; max-height: none; border-radius: 0; padding-bottom: 0; box-shadow: -1px 0 0 var(--ght-line); transform: translateX(100%); }
	body #skd-minicart-root .skd-mc-panel.open { transform: none; }
	body #skd-minicart-root .skd-mc-grab { display: none; }
	body #skd-minicart-root .skd-mc-header { min-height: var(--ght-hdr); padding: calc(10px + env(safe-area-inset-top, 0px)) 12px 10px 18px; }
	body #skd-minicart-root .skd-mc-title { font-size: 18px; }
	body #skd-minicart-root .skd-mc-close { width: 40px; height: 40px; }
	body #skd-minicart-root .skd-mc-body { padding: 0 18px 16px; }
	body #skd-minicart-root .skd-mc-pinned { padding: 0 18px 12px; }
	body #skd-minicart-root .skd-mc-footer { padding: 12px 18px calc(16px + env(safe-area-inset-bottom, 0px)); }
	body #skd-minicart-root .skd-mc-thumb { width: 56px; height: 56px; font-size: 15px; }
	body #skd-minicart-root .skd-mc-line-title { font-size: 15px; }
	body #skd-minicart-root .skd-mc-remove { width: 36px; height: 36px; }
	body #skd-minicart-root .skd-mc-step { width: 36px; height: 36px; font-size: 18px; }
	/* the site's switch, same size on phones */
	body #skd-minicart-root .skd-mc-switch { width: 40px; height: 22px; border-radius: 999px; }
	body #skd-minicart-root .skd-mc-switch-knob { width: 16px; height: 16px; }
	body #skd-minicart-root .skd-mc-switch.on .skd-mc-switch-knob { left: 21px; }
	body #skd-minicart-root .skd-mc-donate { height: 52px; }
	body #skd-minicart-root .skd-mc-empty-add { height: 40px; }
}

/* ght-zakatcalc */
/* ==========================================================================
 * GHH Toolkit — SkyDonate's Advanced Zakat Calculator (.skd-zakat-adv) in the GHH design system
 * (DESIGN-SYSTEM.md), on every page that shows it (/zakat/, /zakat/zakat-calculator/).
 *
 * A fixed height on phones and desktop (user): the card never grows or shrinks between steps (the
 * first step alone jumped 514 → 867px), so the page doesn't move under the donor and Back / Next are
 * always in the same place. The title and progress stay at the top, the step's own content scrolls
 * inside the card when it's long (nine asset types on a phone), and the buttons are pinned at the
 * bottom of it.
 *
 * SkyDonate's sheet colours everything through --skd-* variables and guards its controls with
 * `.skd-zakat-adv .x { … !important }`; GHH's values are its variables, and the few direct rules are
 * written `body .skd-zakat-adv …` with !important to win.
 * ======================================================================== */

/* !important: the widget's Elementor style settings set these same variables (post-<id>.css,
   `.elementor-<id> .elementor-element-<x> .skd-zakat-adv`, SkyDonate's teal) more specifically */
body .skd-zakat-adv {
	--skd-accent: var(--ght-blue) !important;
	--skd-accent-dark: var(--ght-blue-d) !important;
	--skd-accent-text: #fff !important;
	--skd-text: var(--ght-ink) !important;
	--skd-muted: var(--ght-mute) !important;
	--skd-card-bg: #fff !important;
	--skd-soft-bg: var(--ght-soft) !important;
	--skd-soft-bg-2: var(--ght-mist) !important;
	--skd-border: var(--ght-line) !important;
	--skd-border-soft: var(--ght-line) !important;
	--skd-cta-bg: var(--ght-blue) !important;
	--skd-cta-bg-hover: var(--ght-blue-d) !important;
	--skd-cta-text: #fff !important;
	--skd-radius: var(--ght-r-l) !important;
	/* the fixed size, like an app (user: as calculate-ga3.nzf.org.uk): 440px wide, tall enough for
	   most steps, never taller than the screen under the header */
	/* 600px (was 720): the first step left ~300px of white under its choices (user: "massive spacing") */
	--zc-h: min(600px, calc(100svh - var(--ght-hdr) - 48px));

	display: flex;
	flex-direction: column;
	width: 100%;
	height: var(--zc-h);
	min-height: 500px;
	max-width: 440px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--ght-line);
	border-radius: var(--ght-r-l);
	background: #fff;
	font-family: var(--ght-ui);
}
/* top: the progress, a thin line along the card's top edge; the widget's own title is left to the
   section around it (the step's title heads the card, as in an app) */
body .skd-zakat-adv .skd-zakat-adv__hero, body .skd-zakat-adv .skd-zakat-adv__head { display: none; }
body .skd-zakat-adv .skd-zakat-adv__progress { flex: none; width: auto; height: 4px; margin: 0; border-radius: 0; background: var(--ght-mist); }
body .skd-zakat-adv .skd-zakat-adv__progress-bar { border-radius: 0 999px 999px 0; }
/* middle: the step, scrolling inside the card when it's long */
body .skd-zakat-adv .skd-zakat-adv__stage { display: flex; flex-direction: column; flex: 1; min-height: 0; padding: 22px 24px 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
body .skd-zakat-adv .skd-zakat-adv__stage > * { flex-shrink: 0; }
/* the step's name heads the card, centred */
body .skd-zakat-adv .skd-zakat-adv__step-title { margin: 0 0 16px !important; padding-bottom: 16px; border-bottom: 1px solid var(--ght-line); font: 700 22px/1.3 var(--ght-ui) !important; letter-spacing: -.01em; text-align: center; color: var(--ght-ink) !important; }
body .skd-zakat-adv .skd-zakat-adv__step-body { margin: 0 0 18px !important; font: 400 15px/1.55 var(--ght-ui) !important; color: var(--ght-ink-2) !important; }
/* bottom: Back / Next pinned to the card's foot while the step scrolls above it */
/* (margin-top: auto puts them at the foot of a short step too) */
body .skd-zakat-adv .skd-zakat-adv__nav { position: sticky; bottom: 0; z-index: 2; gap: 10px; margin: auto -24px 0; padding: 14px 24px calc(16px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--ght-line); background: #fff; }
/* the way forward is the wide button (Next / Start / See my Zakat); Back is a compact outline beside it */
body .skd-zakat-adv .skd-zakat-adv__nav .skd-zakat-adv__nav-spacer { display: none; }
body .skd-zakat-adv .skd-zakat-adv__nav .skd-zakat-adv__btn:not(.skd-zakat-adv__btn--ghost) { flex: 1; }

/* buttons: the site's pills */
body .skd-zakat-adv .skd-zakat-adv__btn { min-height: 52px; padding: 0 24px !important; font: 600 16px/1 var(--ght-ui) !important; }
body .skd-zakat-adv .skd-zakat-adv__btn--ghost { border-color: var(--ght-line) !important; }
body .skd-zakat-adv .skd-zakat-adv__btn--ghost:hover, body .skd-zakat-adv .skd-zakat-adv__btn--ghost:focus { border-color: var(--ght-line) !important; background: var(--ght-mist) !important; }
body .skd-zakat-adv .skd-zakat-adv__btn:focus:not(:focus-visible) { outline: none; }
body .skd-zakat-adv .skd-zakat-adv__btn:focus-visible, body .skd-zakat-adv .skd-zakat-adv__cta:focus-visible { outline: 2px solid var(--ght-blue) !important; outline-offset: 2px; }

/* choices: bordered rows, the chosen one light blue with a blue ring */
body .skd-zakat-adv .skd-zakat-adv__checklist { gap: 8px; }
body .skd-zakat-adv .skd-zakat-adv__check, body .skd-zakat-adv .skd-zakat-adv__toggle, body .skd-zakat-adv .skd-zakat-adv__roundup { min-height: 52px; padding: 12px 16px !important; border-radius: var(--ght-r-m) !important; }
body .skd-zakat-adv :is(.skd-zakat-adv__check--selected, .skd-zakat-adv__radio--selected, .skd-zakat-adv__roundup--selected) { box-shadow: inset 0 0 0 .5px var(--ght-blue) !important; }
body .skd-zakat-adv .skd-zakat-adv__check-label, body .skd-zakat-adv .skd-zakat-adv__toggle-label { font: 500 15px/1.4 var(--ght-ui) !important; }
body .skd-zakat-adv .skd-zakat-adv__radio { min-height: 48px; padding: 0 18px !important; font: 500 15px var(--ght-ui) !important; }
body .skd-zakat-adv :is(.skd-zakat-adv__check-input, .skd-zakat-adv__toggle-input, .skd-zakat-adv__roundup-input) { accent-color: var(--ght-blue) !important; }

/* amounts */
body .skd-zakat-adv .skd-zakat-adv__field-label, body .skd-zakat-adv .skd-zakat-adv__row-static-label { font: 600 14px/1.4 var(--ght-ui) !important; color: var(--ght-ink) !important; }
body .skd-zakat-adv .skd-zakat-adv__amount { min-height: 48px; border-radius: var(--ght-r-s); }
body .skd-zakat-adv .skd-zakat-adv__amount:focus-within { border-color: var(--ght-blue); box-shadow: none; }
body .skd-zakat-adv .skd-zakat-adv__amount-prefix { background: var(--ght-page) !important; font: 600 16px var(--ght-ui) !important; }
body .skd-zakat-adv .skd-zakat-adv__amount-input { font: 400 16px var(--ght-ui) !important; }
body .skd-zakat-adv .skd-zakat-adv__row-remove { border-radius: var(--ght-r-s) !important; }
/* a row with no remove button: the field takes the whole width (it stopped 8px short) */
body .skd-zakat-adv .skd-zakat-adv__row:not(:has(.skd-zakat-adv__row-remove)) { grid-template-columns: minmax(0, 1fr); }
/* "+ add another": a quiet bordered row, not dashed */
body .skd-zakat-adv .skd-zakat-adv__add-row { min-height: 48px; border: 1px solid var(--ght-line) !important; border-radius: var(--ght-r-s) !important; color: var(--ght-blue-d) !important; font: 600 15px var(--ght-ui) !important; }

/* today's nisab: calm cards, no tracked capitals */
body .skd-zakat-adv .skd-zakat-adv__nisab-card { padding: 14px 16px; border-radius: var(--ght-r-m); background: #fff; text-align: left; }
body .skd-zakat-adv .skd-zakat-adv__nisab-card-title { margin-bottom: 4px; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--ght-ink); }
body .skd-zakat-adv .skd-zakat-adv__nisab-card-amount { font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: var(--ght-ink); }
body .skd-zakat-adv .skd-zakat-adv__nisab-card-weight { font-size: 13px; }

/* running total, summary and result */
body .skd-zakat-adv .skd-zakat-adv__tally { padding: 14px 16px; border: 1px solid var(--ght-line); border-radius: var(--ght-r-m); background: var(--ght-page); font-weight: 600; }
body .skd-zakat-adv .skd-zakat-adv__tally-amount { font-weight: 700; color: var(--ght-ink); }
body .skd-zakat-adv .skd-zakat-adv__summary { padding: 6px 18px; border-radius: var(--ght-r-m); }
body .skd-zakat-adv .skd-zakat-adv__summary-row { padding: 12px 0; font-size: 15px; }
body .skd-zakat-adv .skd-zakat-adv__summary-row--total { font-size: 18px; }
body .skd-zakat-adv .skd-zakat-adv__summary-row--total .skd-zakat-adv__summary-amount { color: var(--ght-ink); font-size: 22px; letter-spacing: -.01em; }
body .skd-zakat-adv .skd-zakat-adv__not-eligible { border-radius: var(--ght-r-m); font-size: 15px; }
body .skd-zakat-adv .skd-zakat-adv__roundup-amount { color: var(--ght-ink) !important; font-size: 16px !important; }
/* the gift button: the site's one blue action, full width */
body .skd-zakat-adv .skd-zakat-adv__give { padding-top: 4px; }
body .skd-zakat-adv .skd-zakat-adv__cta { width: 100% !important; min-height: 52px; padding: 0 28px !important; font: 600 17px/1 var(--ght-ui) !important; }

/* ── the calculator page (/zakat/zakat-calculator/, its band is .ght-zc-band): a working page, so
   tighter than the site's 120px sections (user: "massive spacing, I don't like it") ── */
.e-con.ght-zc-band { --padding-top: clamp(32px, 4vw, 56px); --padding-bottom: clamp(40px, 4.5vw, 64px); }
body:has(.ght-zc-band) .ght.phero--plain { padding-bottom: clamp(32px, 4vw, 56px); }
body:has(.ght-zc-band) .ght.sec { padding: clamp(48px, 5.5vw, 80px) 0; }

/* ── the Zakat page's calculator section (.ght-zc-split, build/ght-build-zakat.php): heading and
   today's nisab beside the card on desktop, instead of a lone 440px card in a wide empty section ── */
.e-con.ght-zc-split .ght.gtt { margin-bottom: 20px; }
/* today's nisab ([ghh_nisab], mu-plugin with its own inline styles): two calm figures */
.e-con.ght-zc-split .ghh-nisab { max-width: 520px; margin: 0; padding: 0; border: 0; background: none; text-align: left; font-family: var(--ght-ui); }
.e-con.ght-zc-split .ghh-nisab__label { margin: 0 0 10px; font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--ght-ink); }
.e-con.ght-zc-split .ghh-nisab__row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; justify-content: stretch; }
.e-con.ght-zc-split .ghh-nisab__item { gap: 2px; padding: 16px 18px; border: 1px solid var(--ght-line); border-radius: var(--ght-r-l); background: #fff; }
.e-con.ght-zc-split .ghh-nisab__val { font-size: 28px; font-weight: 700; letter-spacing: -.02em; color: var(--ght-ink); }
.e-con.ght-zc-split .ghh-nisab__sub { font-size: 14px; color: var(--ght-mute); }
.e-con.ght-zc-split .ghh-nisab__note { margin: 12px 0 0; font-size: 14px; line-height: 1.55; color: var(--ght-mute); }
.e-con.ght-zc-split .elementor-widget-shortcode { margin-bottom: 24px; }
/* stacked (tablets, phones): the card uses the section's width rather than a narrow column in the middle */
@media (max-width: 959px) {
	.e-con.ght-zc-split .skd-zakat-adv { max-width: none; }
}
@media (min-width: 960px) {
	.e-con.ght-zc-split > .e-con-inner { display: grid; grid-template-columns: minmax(0, 1fr) 440px; grid-template-rows: 1fr auto auto 1fr; column-gap: clamp(40px, 6vw, 104px); align-items: start; }
	.e-con.ght-zc-split > .e-con-inner > .elementor-widget-ght_title { grid-column: 1; grid-row: 2; }
	.e-con.ght-zc-split > .e-con-inner > .elementor-widget-shortcode { grid-column: 1; grid-row: 3; margin-bottom: 0; }
	.e-con.ght-zc-split > .e-con-inner > .elementor-widget-skyweb_donation_zakat_advanced { grid-column: 2; grid-row: 1 / -1; }
	/* the heading's own wrap is the column here, not a second page width */
	.e-con.ght-zc-split .ght.gtt .wrap { padding: 0; }
}

@media (max-width: 760px) {
	/* phones: the card fills the screen under the header (an app screen), inside the page margins */
	body .skd-zakat-adv { --zc-h: calc(100svh - var(--ght-hdr) - 24px); min-height: 480px; max-width: none; border-left: 1px solid var(--ght-line); border-right: 1px solid var(--ght-line); }
	body .skd-zakat-adv .skd-zakat-adv__stage { padding: 18px 18px 0; }
	body .skd-zakat-adv .skd-zakat-adv__step-title { padding-bottom: 14px; font-size: 20px !important; }
	body .skd-zakat-adv .skd-zakat-adv__nav { margin: auto -18px 0; padding: 12px 18px calc(14px + env(safe-area-inset-bottom, 0px)); }
	body .skd-zakat-adv .skd-zakat-adv__nisab-panel { grid-template-columns: 1fr 1fr; gap: 8px; }
}

/* ght-cart */
/* GHH basket page (templates/woocommerce/cart/*), in the checkout's style: "Your basket" with each gift
   (photo, name, amount, Change amount · Remove), a summary card with the total and "Go to checkout";
   on phones the card follows the list. Fonts and colours from the site (--ght-*). */
.woocommerce:has(> .ght-cart) { padding: clamp(56px, 7vw, 96px) var(--ght-pad, 16px) clamp(64px, 8vw, 112px); }
.ght-cart { --c-ink: var(--ght-ink, #0B2638); --c-mute: var(--ght-mute, #5C6B78); --c-line: #DEDEDE; display: grid; grid-template-columns: minmax(0, 1fr) 360px; align-items: start; gap: 40px; max-width: 1080px; margin: 0 auto; font-family: var(--ght-f, system-ui); color: var(--c-ink); }
.ght-cart__h { margin: 0 0 20px; font-size: clamp(28px, 3vw, 36px); font-weight: 800; line-height: 1.15; letter-spacing: -.02em; color: var(--c-ink); }

/* the gifts */
.ght-cart__list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--c-line); }
.ght-cart__item { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-items: start; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--c-line); }
.ght-cart__thumb { position: relative; display: block; width: 72px; height: 72px; border: 1px solid var(--c-line); border-radius: 10px; background: #fff; }
.ght-cart__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 9px; }
.ght-cart__qty { position: absolute; top: -8px; right: -8px; display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: #5C6B78; color: #fff; font-size: 12px; font-weight: 700; }
.ght-cart__body { display: block; min-width: 0; }
.ght-cart__name, .ght-cart__name a { font-size: 16px; font-weight: 600; line-height: 1.35; color: var(--c-ink); text-decoration: none; }
.ght-cart__name a:hover { text-decoration: underline; text-underline-offset: 3px; }
/* the name for the gift's plaque, under it */
.ght-cart__body .ght-sum__plaque { display: block; margin-top: 3px; font-size: 14px; font-weight: 400; line-height: 1.4; color: var(--c-mute, #5b6b77); overflow-wrap: anywhere; }
.ght-cart__body .ght-sum__plaque > span { font-weight: 600; color: var(--c-ink); }
.ght-cart__body dl.variation { margin: 4px 0 0; font-size: 13.5px; color: var(--c-mute); }
.ght-cart__body dl.variation dt, .ght-cart__body dl.variation dd, .ght-cart__body dl.variation p { display: inline; float: none; margin: 0; padding: 0; }
/* "Gift for: Yasmin …": a space after the label, each detail on its own line */
.ght-cart__body dl.variation dt { font-weight: 500; }
.ght-cart__body dl.variation dd { margin-left: .3em; }
.ght-cart__body dl.variation dd + dt::before { content: "\A"; white-space: pre; }
/* a gift with no photo of its own (GHT_Checkout::cart_thumb) */
.ght-cart .ght-thumb-none { display: grid; place-items: center; width: 100%; height: 100%; border-radius: 9px; background: var(--ght-mist, #EEF4F7); color: var(--c-mute); }
.ght-cart .ght-thumb-none svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linejoin: round; }
.ght-cart__amt { font-size: 16px; font-weight: 600; white-space: nowrap; }

/* change amount / remove: as the checkout summary */
.ght-cart .ght-sum__acts { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; margin-top: 6px; }
.ght-cart .ght-sum__acts[hidden], .ght-cart .ght-sum__edit[hidden] { display: none; }
.ght-cart .ght-sum__act, .ght-cart .ght-sum__act:hover, .ght-cart .ght-sum__act:focus { display: inline-flex; align-items: center; min-height: 32px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; color: var(--c-ink); font: 500 14px/1.2 var(--ght-f, system-ui); text-transform: none; letter-spacing: 0; text-decoration: underline; text-decoration-color: rgba(11, 38, 56, .35); text-underline-offset: 3px; cursor: pointer; }
.ght-cart .ght-sum__act:hover { text-decoration-color: currentColor; }
.ght-cart .ght-sum__act[data-ght-remove]:hover { color: #c5281c; }
.ght-cart .ght-sum__dot { color: var(--c-mute); }
.ght-cart .ght-sum__edit { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-top: 8px; }
.ght-cart .ght-sum__field { display: flex; align-items: center; height: 42px; padding: 0 10px; border: 1px solid var(--c-line); border-radius: 8px; background: #fff; }
.ght-cart .ght-sum__field:focus-within { border-color: var(--c-ink); box-shadow: 0 0 0 1px var(--c-ink); }
.ght-cart .ght-sum__sym { margin-right: 4px; font-weight: 600; color: var(--c-mute); }
.ght-cart .ght-sum__field input { width: 90px; height: 40px; margin: 0; padding: 0; border: 0; outline: 0; background: none; box-shadow: none; font: 600 15px var(--ght-f, system-ui); color: var(--c-ink); -moz-appearance: textfield; appearance: textfield; }
.ght-cart .ght-sum__field input::-webkit-outer-spin-button, .ght-cart .ght-sum__field input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
.ght-cart .ght-sum__save, .ght-cart .ght-sum__save:hover, .ght-cart .ght-sum__save:focus { height: 42px; min-height: 0; margin: 0; padding: 0 16px; border: 0; border-radius: 8px; background: var(--c-ink); color: #fff; font: 600 14px var(--ght-f, system-ui); box-shadow: none; cursor: pointer; }
.ght-cart .ght-sum.is-busy { opacity: .55; pointer-events: none; }

/* the summary card */
.ght-cart__side { position: sticky; top: calc(var(--ght-hdr, 72px) + 24px); }
.ght-cart__card { display: grid; gap: 10px; padding: 22px; border: 1px solid var(--c-line); border-radius: 12px; background: #F5F5F5; }
.ght-cart__row { display: flex; justify-content: space-between; gap: 12px; margin: 0; font-size: 15px; color: var(--c-ink); }
.ght-cart__total { margin-top: 6px; padding-top: 14px; border-top: 1px solid var(--c-line); font-size: 18px; font-weight: 800; }
.ght-cart__total small { margin-right: 4px; font-size: 12px; font-weight: 400; color: var(--c-mute); }
.ght-cart__go, .ght-cart__go:hover, .ght-cart__go:focus { display: flex; align-items: center; justify-content: center; min-height: 54px; margin-top: 8px; padding: 0 20px; border-radius: 10px; background: var(--ght-blue, #1B9AD6); color: #fff; font: 700 17px var(--ght-f, system-ui); text-decoration: none; transition: background-color .2s; }
.ght-cart__go:hover { background: var(--ght-blue-d, #0B6FA4); color: #fff; }
.ght-cart__more { justify-self: center; margin-top: 2px; font-size: 14px; color: var(--c-ink); text-decoration: underline; text-underline-offset: 3px; }

/* empty */
.ght-cart--empty { display: block; }
.ght-cart__empty { display: grid; justify-items: center; gap: 6px; max-width: 460px; margin: 0 auto; text-align: center; }
.ght-cart__empty .ght-cart__h { margin: 8px 0 0; }
.ght-cart__empty p { margin: 0 0 14px; color: var(--c-mute); }
.ght-cart__empty-ico { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: #F1F4F6; }
.ght-cart__empty-ico svg { width: 28px; height: 28px; fill: none; stroke: var(--c-ink); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.ght-cart__empty .ght-cart__go { min-width: 220px; }

@media (max-width: 860px) {
	.ght-cart { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.ght-cart__side { position: static; }
}
@media (max-width: 520px) {
	.ght-cart__item { grid-template-columns: 60px minmax(0, 1fr); }
	.ght-cart__thumb { width: 60px; height: 60px; }
	.ght-cart__amt { grid-column: 2; grid-row: 1; justify-self: end; }
	.ght-cart__body { grid-column: 2; grid-row: 1; padding-right: 76px; }
}

/* ght-auth */
/* GHH — donor sign-in card (GHT_Auth) and its pop-up.
 *
 * The Shopify-style card built for DÉCAAR, in the GHH look: logo, one step at a
 * time, floating labels, 5px buttons in the GHH blue, Schibsted Grotesk.
 * Self-contained (it also appears on the checkout page, outside the toolkit's
 * widgets); every control rule is written `.ght-auth <el>.class` so theme
 * button/input resets never win. */

.ght-auth, .ght-auth-modal { --ga-ink: #0B2638; --ga-blue: #1B9DD9; --ga-blue-d: #137CB0; --ga-mute: #5B7182; --ga-line: #D3DDE3; --ga-mist: #EEF4F7; --ga-err: #b3261e; --ga-ok: #1d6b3a; --ga-r: 5px; --ga-font: "Schibsted Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif; }
.ght-auth, .ght-auth *, .ght-auth *::before, .ght-auth *::after { box-sizing: border-box; }
/* a site-wide rule capitalises button words ("Forgot Password?"): sentence case here */
.ght-auth button, .ght-auth a, .ght-auth label { text-transform: none; }
.ght-auth { position: relative; width: 100%; max-width: 440px; margin: 0 auto; padding: 38px 36px 30px; border-radius: 14px; background: #fff; color: var(--ga-ink); font: 400 16px/1.5 var(--ga-font); -webkit-font-smoothing: antialiased; text-align: left; }
.ght-auth--page { box-shadow: 0 30px 60px -40px rgba(11, 38, 56, .4), 0 0 0 1px var(--ga-line); }
.ght-auth .ght-auth__sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; padding: 0; border: 0; }

.ght-auth .ght-auth__view[hidden] { display: none; }
.ght-auth .ght-auth__view { animation: ght-auth-in .28s cubic-bezier(.16, 1, .3, 1); }
@keyframes ght-auth-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.ght-auth .ght-auth__h { margin: 0 0 6px; padding: 0; font: 800 28px/1.15 var(--ga-font); letter-spacing: -.025em; color: var(--ga-ink); text-transform: none; }
.ght-auth .ght-auth__h:focus { outline: none; }
.ght-auth .ght-auth__sub, .ght-auth .ght-auth__who { margin: 0 0 20px; font-size: 15px; line-height: 1.5; color: var(--ga-mute); overflow-wrap: anywhere; }
.ght-auth .ght-auth__sub strong, .ght-auth .ght-auth__who span { color: var(--ga-ink); font-weight: 600; }
.ght-auth .ght-auth__form { display: grid; gap: 12px; margin: 0; }

/* fields with floating labels */
.ght-auth .ght-auth__f { position: relative; margin: 0; }
.ght-auth .ght-auth__two { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ght-auth input.ght-auth__in { display: block; width: 100%; height: 52px; margin: 0; padding: 15px 13px; border: 1px solid var(--ga-line); border-radius: var(--ga-r); background: #fff; color: var(--ga-ink); font: 400 16px/1.3 var(--ga-font); box-shadow: none; outline: none; transition: padding .15s, border-color .15s, box-shadow .15s; -webkit-appearance: none; appearance: none; }
.ght-auth input.ght-auth__in::placeholder { color: #7d8a93; opacity: 1; }
.ght-auth input.ght-auth__in:not(:placeholder-shown) { padding: 23px 13px 7px; }
.ght-auth input.ght-auth__in:focus { border-color: var(--ga-ink); box-shadow: 0 0 0 1px var(--ga-ink); }
.ght-auth input.ght-auth__in[aria-invalid="true"] { border-color: var(--ga-err); box-shadow: 0 0 0 1px var(--ga-err); }
.ght-auth .ght-auth__f > label { position: absolute; top: 7px; left: 14px; right: 44px; margin: 0; overflow: hidden; font: 400 12px/1.3 var(--ga-font); color: var(--ga-mute); white-space: nowrap; text-overflow: ellipsis; pointer-events: none; opacity: 0; transform: translateY(4px); transition: opacity .15s, transform .15s; }
.ght-auth .ght-auth__f:has(input:not(:placeholder-shown)) > label { opacity: 1; transform: none; }
.ght-auth .ght-auth__f--pass input.ght-auth__in { padding-right: 50px; }
.ght-auth button.ght-auth__eye { position: absolute; top: 6px; right: 6px; display: grid; place-items: center; width: 40px; height: 40px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ga-mute); box-shadow: none; cursor: pointer; }
.ght-auth button.ght-auth__eye:hover, .ght-auth button.ght-auth__eye:focus { background: var(--ga-mist); color: var(--ga-ink); border: 0; }
.ght-auth button.ght-auth__eye[aria-pressed="true"] { color: var(--ga-ink); }
.ght-auth svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

/* buttons */
.ght-auth button.ght-auth__btn { position: relative; display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; height: 52px; min-height: 52px; margin: 4px 0 0; padding: 0 20px; border: 1px solid var(--ga-blue); border-radius: var(--ga-r); background: var(--ga-blue); color: #fff; font: 700 16px/1 var(--ga-font); letter-spacing: 0; text-transform: none; text-decoration: none; box-shadow: none; cursor: pointer; white-space: normal; transition: background-color .2s, border-color .2s, color .2s; }
.ght-auth button.ght-auth__btn:hover, .ght-auth button.ght-auth__btn:focus { border-color: var(--ga-blue-d); background: var(--ga-blue-d); color: #fff; }
.ght-auth button.ght-auth__btn:focus-visible, .ght-auth button.ght-auth__link:focus-visible, .ght-auth button.ght-auth__eye:focus-visible { outline: 2px solid var(--ga-ink); outline-offset: 2px; }
.ght-auth button.ght-auth__btn--line { border-color: var(--ga-line); background: #fff; color: var(--ga-ink); font-weight: 600; }
.ght-auth button.ght-auth__btn--line:hover, .ght-auth button.ght-auth__btn--line:focus { border-color: var(--ga-ink); background: #fff; color: var(--ga-ink); }
.ght-auth button.ght-auth__btn[disabled], .ght-auth button.ght-auth__btn.is-busy { opacity: .7; cursor: default; }
.ght-auth .ght-auth__spin { display: none; width: 16px; height: 16px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: ght-auth-spin .7s linear infinite; }
.ght-auth .is-busy .ght-auth__spin { display: inline-block; }
@keyframes ght-auth-spin { to { transform: rotate(360deg); } }

.ght-auth button.ght-auth__link { display: inline; min-height: 0; margin: 0; padding: 0; border: 0; background: none; color: var(--ga-ink); font-family: var(--ga-font); font-size: inherit; font-weight: 600; line-height: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; box-shadow: none; cursor: pointer; }
.ght-auth button.ght-auth__link:hover, .ght-auth button.ght-auth__link:focus { border: 0; background: none; color: var(--ga-blue-d); text-decoration-thickness: 2px; }
.ght-auth button.ght-auth__link[disabled] { color: var(--ga-mute); text-decoration: none; cursor: default; }
.ght-auth .ght-auth__alt { margin: 18px 0 0; font-size: 14.5px; color: var(--ga-mute); text-align: center; }
.ght-auth .ght-auth__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 14.5px; }
.ght-auth .ght-auth__check { display: inline-flex; align-items: center; gap: 9px; margin: 0; font-size: 14.5px; font-weight: 400; color: var(--ga-ink); cursor: pointer; }
.ght-auth .ght-auth__check input { width: 18px; height: 18px; margin: 0; accent-color: var(--ga-ink); }
.ght-auth .ght-auth__or { display: flex; align-items: center; gap: 12px; margin: 18px 0 14px; font-size: 13px; color: var(--ga-mute); }
.ght-auth .ght-auth__or::before, .ght-auth .ght-auth__or::after { content: ""; flex: 1; height: 1px; background: var(--ga-line); }
.ght-auth .ght-auth__small { margin: 2px 0 0; font-size: 13px; line-height: 1.5; color: var(--ga-mute); }
.ght-auth .ght-auth__small a { color: var(--ga-ink); }
.ght-auth .ght-auth__err { margin: 0; padding: 10px 12px; border-radius: var(--ga-r); background: #fbeceb; color: var(--ga-err); font-size: 14px; line-height: 1.45; }
.ght-auth .ght-auth__err[hidden] { display: none; }
.ght-auth .ght-auth__ok { margin: 14px 0 0; padding: 12px 14px; border-radius: var(--ga-r); background: var(--ga-mist); color: var(--ga-ok); font-size: 14.5px; line-height: 1.5; }
.ght-auth .ght-auth__ok[hidden] { display: none; }
/* staging only (email is blocked there): the two-step code shown in the pop-up */
.ght-auth .ght-auth__stg { margin: 0 0 14px; padding: 10px 14px; border: 1px dashed #C9C9C9; border-radius: var(--ga-r); font-size: 14px; line-height: 1.5; color: var(--ga-ink); }
.ght-auth .ght-auth__stg strong { font-size: 17px; letter-spacing: .18em; font-variant-numeric: tabular-nums; }
.ght-auth .ght-auth__stg[hidden] { display: none; }
.ght-auth [data-ght-auth-form="twostep"] .ght-auth__check { margin-top: 2px; }
.ght-auth .ght-auth__ghost { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.ght-auth .ght-auth__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* password strength */
.ght-auth .ght-auth__meter { display: grid; gap: 6px; margin-top: -4px; font-size: 13px; color: var(--ga-mute); }
.ght-auth .ght-auth__bar { display: block; height: 4px; overflow: hidden; border-radius: 2px; background: var(--ga-mist); }
.ght-auth .ght-auth__bar i { display: block; width: 0; height: 100%; border-radius: 2px; background: var(--ga-err); transition: width .25s, background-color .25s; }
.ght-auth .ght-auth__meter[data-level="1"] i { width: 25%; }
.ght-auth .ght-auth__meter[data-level="2"] i { width: 55%; background: #b7791f; }
.ght-auth .ght-auth__meter[data-level="3"] i { width: 80%; background: var(--ga-blue); }
.ght-auth .ght-auth__meter[data-level="4"] i { width: 100%; background: var(--ga-ok); }

/* 6-digit code */
.ght-auth .ght-auth__code { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; border: 0; min-width: 0; }
.ght-auth input.ght-auth__digit { width: 100%; height: 56px; margin: 0; padding: 0; border: 1px solid var(--ga-line); border-radius: var(--ga-r); background: #fff; color: var(--ga-ink); font: 700 22px/1 var(--ga-font); text-align: center; box-shadow: none; outline: none; -webkit-appearance: none; appearance: none; }
.ght-auth input.ght-auth__digit:focus { border-color: var(--ga-ink); box-shadow: 0 0 0 1px var(--ga-ink); }
.ght-auth .ght-auth__code[aria-invalid="true"] input.ght-auth__digit { border-color: var(--ga-err); }

/* done */
.ght-auth .ght-auth__view--done { padding: 12px 0 6px; text-align: center; }
.ght-auth .ght-auth__tick { display: inline-grid; place-items: center; width: 56px; height: 56px; margin-bottom: 14px; border-radius: 50%; background: var(--ga-mist); color: var(--ga-ok); }
.ght-auth .ght-auth__tick svg { width: 26px; height: 26px; stroke-width: 2; }

/* the account page when signed out: the card centred on the mist ground */
.ght-auth-page { display: flex; justify-content: center; padding: clamp(32px, 6vw, 72px) 16px; background: var(--ga-mist, #EEF4F7); }
.woocommerce:has(> .ght-auth-page) { max-width: none; }

/* ---------------------------------------------------------------- pop-up */
.ght-auth-modal { position: fixed; inset: 0; z-index: 1000002; display: flex; align-items: center; justify-content: center; padding: 24px; }
.ght-auth-modal[hidden] { display: none; }
.ght-auth-modal__scrim { position: absolute; inset: 0; background: rgba(6, 20, 30, .55); animation: ght-auth-fade .2s ease; }
.ght-auth-modal__card { position: relative; width: 100%; max-width: 440px; max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); overflow: auto; overscroll-behavior: contain; border-radius: 14px; background: #fff; box-shadow: 0 40px 80px -30px rgba(6, 20, 30, .6); animation: ght-auth-pop .28s cubic-bezier(.16, 1, .3, 1); }
.ght-auth-modal .ght-auth { box-shadow: none; }
.ght-auth-modal button.ght-auth-modal__x { position: absolute; top: 12px; right: 12px; z-index: 2; display: grid; place-items: center; width: 40px; height: 40px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ga-ink); box-shadow: none; cursor: pointer; }
.ght-auth-modal button.ght-auth-modal__x:hover, .ght-auth-modal button.ght-auth-modal__x:focus { border: 0; background: var(--ga-mist); color: var(--ga-ink); }
.ght-auth-modal button.ght-auth-modal__x:focus-visible { outline: 2px solid var(--ga-ink); outline-offset: 2px; }
.ght-auth-modal svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
@keyframes ght-auth-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes ght-auth-pop { from { opacity: 0; transform: translateY(14px) scale(.98); } to { opacity: 1; transform: none; } }
@keyframes ght-auth-up { from { transform: translateY(100%); } to { transform: none; } }
html.ght-auth-lock, html.ght-auth-lock body { overflow: hidden; }
html.ght-auth-lock .sky-whatsapp-widget { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }

/* phones: a bottom sheet that can grow to full height */
@media (max-width: 600px) {
	.ght-auth { padding: 32px 22px 24px; }
	.ght-auth .ght-auth__h { font-size: 25px; }
	.ght-auth .ght-auth__code { gap: 6px; }
	.ght-auth input.ght-auth__digit { height: 52px; font-size: 20px; }
	.ght-auth-modal { align-items: flex-end; padding: 0; }
	.ght-auth-modal__card { max-width: none; max-height: 94vh; max-height: 94dvh; border-radius: 16px 16px 0 0; padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)); animation: ght-auth-up .32s cubic-bezier(.16, 1, .3, 1); }
	.ght-auth-modal__card::before { content: ""; position: absolute; top: 8px; left: 50%; width: 38px; height: 4px; margin-left: -19px; border-radius: 2px; background: var(--ga-line); }
}
@media (max-width: 360px) {
	.ght-auth .ght-auth__two { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
	.ght-auth .ght-auth__view, .ght-auth-modal__scrim, .ght-auth-modal__card { animation: none; }
}

