/* FIDA Theme. Tokens come from theme.json; component styles live in the FIDA Core plugin. */
:root {
	--fida-indigo: var(--wp--preset--color--indigo, #3d3d94);
	--fida-indigo-dark: var(--wp--preset--color--indigo-dark, #26265f);
	--fida-tint: var(--wp--preset--color--tint, #eeeef8);
	--fida-accent: var(--wp--preset--color--harvest, #e3a72f);
	--fida-heading: var(--wp--preset--font-family--heading, "Literata", Georgia, serif);
	--fida-body: var(--wp--preset--font-family--body, "Public Sans", system-ui, sans-serif);
}
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.wp-site-blocks > * { margin-block: 0; }
.wp-site-blocks { padding-inline: 0; }
.fida-main { margin-block-start: 0; }
.wp-block-post-content > .alignfull, .fida-content > .alignfull { max-width: none; }
.fida-content > :first-child { margin-block-start: 2rem; }
.fida-content { padding-block-end: 3rem; }
a { text-underline-offset: .18em; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid var(--fida-accent); outline-offset: 2px; }

/* Header */
.fida-header { border-bottom: 1px solid rgba(61, 61, 148, .18); background: #fff; }
.fida-utility { background: var(--fida-indigo-dark); color: #fff; padding: .35rem 1.25rem; font-size: .85rem; gap: 1rem; }
.fida-utility p, .fida-utility a, .fida-utility .fida-lang { color: #fff; margin: 0; }
.fida-utility .fida-lang a { text-decoration: none; }
.fida-utility .fida-search .wp-block-search__inside-wrapper { border: 1px solid rgba(255, 255, 255, .65) !important; padding: 0 !important; background: transparent; }
.fida-utility .fida-search .wp-block-search__input { padding: .25rem .5rem; font-size: .85rem; border: 0 !important; background: transparent !important; color: #fff !important; }
.fida-utility .fida-search .wp-block-search__input::placeholder { color: rgba(255, 255, 255, .8); }
.fida-utility .fida-search .wp-block-search__button { background: transparent !important; color: #fff !important; border: 0; padding: .25rem .5rem; }
.fida-utility .fida-search .wp-block-search__button svg { fill: #fff; }
.fida-mainbar { padding: .75rem 1.25rem; gap: 1.25rem; max-width: 84rem; margin-inline: auto; }
.fida-logo { display: inline-flex; align-items: center; gap: .7rem; text-decoration: none; color: var(--fida-indigo-dark); }
.fida-logo img { height: 3rem; width: auto; display: block; }
.fida-logo__white { display: none !important; }
.fida-logo__white--always, .fida-header--dark .fida-logo__white { display: block !important; }
.fida-header--dark .fida-logo__colour { display: none !important; }
.fida-logo__word { font: 600 .95rem/1.15 var(--fida-heading); }
@media (max-width: 40rem) { .fida-logo__word { display: none; } }
.fida-nav-primary { flex: 1; }
.fida-nav-primary .wp-block-navigation-item__content { padding: .5rem .45rem; color: var(--fida-indigo-dark); text-decoration: none; }
.fida-nav-primary .wp-block-navigation-item__content:hover { text-decoration: underline; text-underline-offset: .3em; }
.fida-nav-primary .wp-block-navigation__submenu-container { min-width: 19rem; padding: .5rem; border: 1px solid rgba(61, 61, 148, .25); border-top: 4px solid var(--fida-indigo); box-shadow: 0 10px 30px rgba(38, 38, 95, .12); }
.fida-nav-primary .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: .45rem .6rem; font-weight: 500; }
@media (min-width: 960px) {
	.fida-nav-primary .wp-block-navigation__container > .wp-block-navigation-item:nth-child(2) > .wp-block-navigation__submenu-container { columns: 2; column-gap: 1rem; min-width: 38rem; }
	.fida-nav-primary .wp-block-navigation__container > .wp-block-navigation-item:nth-child(2) .wp-block-navigation-item { break-inside: avoid; }
}
.fida-donate { white-space: nowrap; }
.fida-button--accent { background: var(--fida-accent); color: #2b2100; }

/* Page heads */
.fida-pagehead { background: var(--fida-tint); padding: clamp(1.75rem, 4vw, 3rem) 1.25rem; border-bottom: 1px solid rgba(61, 61, 148, .15); }
.fida-pagehead .wp-block-post-title { margin: 0; }
.fida-crumb { margin: 0 0 .5rem; font-size: .9rem; }
.fida-pagehead--theme { border-bottom: 6px solid var(--t, var(--fida-indigo)); }
.fida-t-livelihood-sustainability { --t: #8a4b0f; }
.fida-t-nutritional-assurance { --t: #2f6b2f; }
.fida-t-climate-resilience { --t: #0b6b67; }
.fida-t-market-empowerment { --t: #a1340a; }
.fida-t-wash { --t: #14609e; }
.fida-pagehead--theme .wp-block-post-title { color: var(--t, var(--fida-indigo-dark)); }

/* Bands on pages */
.fida-band { padding: clamp(2.5rem, 6vw, 4.5rem) 1.25rem; margin-block: 0 !important; }
.fida-band--tint { background: var(--fida-tint); }
.fida-band--indigo { background: var(--fida-indigo); color: #fff; }
.fida-band--indigo :where(h1, h2, h3, p, li, a:not(.wp-block-button__link):not(.fida-button)) { color: #fff; }
.fida-band--indigo .wp-block-button__link { background: var(--fida-accent); color: #2b2100; }
.fida-band .fida-image { margin-block: 1rem; }
.fida-band > h2:first-child { margin-top: 0; }

/* Home hero */
.fida-hero { display: grid; grid-template-columns: minmax(0, 1fr); background: var(--fida-indigo); color: #fff; margin: 0 !important; }
.fida-hero__text { padding: clamp(2rem, 6vw, 4.5rem) clamp(1.25rem, 5vw, 4rem); align-self: center; max-width: 42rem; margin-inline: auto; }
.fida-hero__text :where(h1, p) { color: #fff; }
.fida-hero__text h1 { font-size: clamp(2.3rem, 5.2vw, 4rem); margin-top: 0; }
.fida-hero__text p { font-size: 1.15rem; max-width: 36rem; }
.fida-hero .wp-block-button__link { background: transparent; color: #fff; border: 2px solid #fff; }
.fida-hero .fida-btn-accent .wp-block-button__link { background: var(--fida-accent); color: #2b2100; border-color: var(--fida-accent); }
.fida-hero__slides { min-height: 18rem; }
.fida-hero__slides .fida-carousel__track { padding: 0; height: 100%; gap: 0; }
.fida-hero__slides .fida-carousel__track > li { height: 100%; }
.fida-hero__slides .fida-image { height: 100%; min-height: 18rem; aspect-ratio: auto !important; }
.fida-hero__slides .fida-carousel__controls { position: absolute; right: 1rem; bottom: 1rem; margin: 0; }
@media (min-width: 60rem) {
	.fida-hero { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); min-height: 34rem; }
	.fida-hero__text { margin-inline: 0; }
}

/* Footer */
.fida-footer { background: var(--fida-indigo-dark); color: #e9e9f7; margin: 0 !important; }
.fida-footer a { color: #fff; }
.fida-footer__grid { display: grid; gap: 2rem; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); max-width: 80rem; margin-inline: auto; padding: clamp(2rem, 5vw, 3.5rem) 1.25rem; }
.fida-footer__col > * + * { margin-top: 1rem; }
.fida-footer .fida-logo { color: #fff; }
.fida-footer .fida-logo img { height: 4rem; }
.fida-footer__title { font-size: 1.1rem !important; color: #fff !important; margin: 0 0 .5rem; }
.fida-footer .wp-block-navigation-item__content { padding: .2rem 0; text-decoration: none; }
.fida-footer .wp-block-navigation-item__content:hover { text-decoration: underline; }
.fida-footer__legal { border-top: 1px solid rgba(255, 255, 255, .2); padding: 1rem 1.25rem; max-width: 80rem; margin-inline: auto; font-size: .85rem; }
.fida-footer .fida-copyright { margin: 0; color: #d6d6ee; }

/* Post grid and forms */
.fida-postgrid { gap: 1.25rem; }
.fida-card .wp-block-post-featured-image { margin: -1.25rem -1.25rem .5rem; }
.fida-card .wp-block-post-featured-image img { width: 100%; }
.fida-content .fluentform { max-width: 40rem; }
.fluentform .ff-el-form-control { border: 1px solid #8f8fb6 !important; border-radius: 3px !important; padding: .55rem .7rem !important; }
.fluentform .ff-btn-submit { background: var(--fida-indigo) !important; border-radius: 3px !important; font-weight: 600 !important; }
.fida-band--indigo .fluentform :where(label, .ff-el-form-check-label, p) { color: #fff !important; }
.fida-note { color: #51516b; font-size: .9rem; }
.wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table :where(th, td) { border: 1px solid rgba(61, 61, 148, .25); padding: .6rem .75rem; text-align: start; vertical-align: top; }
.wp-block-table th { background: var(--fida-tint); }
.fida-facts--single { max-width: 36rem; margin-bottom: 1.5rem; }
.fida-facts--single div { grid-template-columns: 9rem 1fr; }
.fida-outputs { padding-inline-start: 1.25rem; }
@media print { .fida-utility, .fida-header, .fida-footer, .fida-carousel__controls { display: none; } }

/* Layout helpers used by the starter pages and patterns */
.fida-split { display: grid; gap: 2rem; grid-template-columns: minmax(0, 1fr); align-items: center; }
@media (min-width: 52rem) { .fida-split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.fida-split > * { margin-block: 0 !important; }
.fida-imagegrid { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr); margin-block: 1.5rem; }
@media (min-width: 40rem) { .fida-imagegrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.fida-imagegrid .fida-image { margin: 0 !important; }
.fida-banner .fida-image { aspect-ratio: 21 / 8 !important; max-height: 22rem; width: 100%; }
.fida-band .fida-counters { margin-top: 1.5rem; }
.fida-band--indigo .fida-image--placeholder { opacity: .92; }

.fida-band > h2 { margin-bottom: 1.5rem; }
.fida-more { align-items: flex-start; }
.fida-more .fida-icon { flex: none; margin-top: .2rem; }

/* Readable line length for running text, aligned with the left edge of the content column */
.fida-content > :is(p, ul, ol, blockquote, .wp-block-list) { width: min(100%, 70ch); max-width: none !important; margin-left: max(0px, calc((100% - var(--wp--style--global--content-size, 70rem)) / 2)) !important; margin-right: auto !important; }
.fida-content > .wp-block-table, .fida-content > .wp-block-buttons { max-width: var(--wp--style--global--content-size, 70rem); }
.fida-band--indigo .fida-note { color: #fff; }
.fida-band--indigo .fida-placeholder { color: #4d3a00; }
