/* ==========================================================================
   Golf Club de Niort — facelift over OceanWP
   Keeps the OceanWP structure; shifts the accent to a sober golf green and
   tightens typography. No layout restructure (footprint-preserving).
   ========================================================================== */

:root {
	--gcn-green: #1b5e3f;
	--gcn-green-dark: #14492f;
	--gcn-green-accent: #2e7d4f;
	--gcn-sand: #f4f1e8;
	--gcn-ink: #20302a;
}

/* Links + accent recolor (OceanWP default is blue) */
a,
.theme-heading .text,
#searchform .fa,
.oceanwp-default-style #searchform button:hover {
	color: var(--gcn-green-accent);
}
a:hover { color: var(--gcn-green-dark); }

/* Primary buttons / read-more */
.button,
button,
input[type="submit"],
.theme-button,
.blog-entry .blog-entry-readmore a,
.wpforms-submit {
	background-color: var(--gcn-green) !important;
	border-color: var(--gcn-green) !important;
	color: #fff !important;
	border-radius: 3px;
}
.button:hover,
button:hover,
input[type="submit"]:hover,
.theme-button:hover,
.wpforms-submit:hover {
	background-color: var(--gcn-green-dark) !important;
	border-color: var(--gcn-green-dark) !important;
}

/* Site title (text logo) — keep clean, golf-green */
#site-logo .site-logo-text,
.site-title a { color: var(--gcn-green-dark); font-weight: 700; letter-spacing: .2px; }

/* Page/post titles + widget headings: green underline accent, single line on desktop */
.page-header .page-title,
.single .entry-title,
.widget-title {
	color: var(--gcn-ink);
}
.widget-title { border-bottom: 2px solid var(--gcn-green); padding-bottom: 6px; }

/* Headings on one line on desktop (no cramped 2-line wraps); wrap normally on mobile */
@media (min-width: 960px) {
	.page-header .page-title,
	.single .entry-title h1,
	.entry-title { white-space: nowrap; }
}
@media (max-width: 959px) {
	.page-header .page-title,
	.single .entry-title h1,
	.entry-title { white-space: normal; }
}

/* Page header band: soft sand tint instead of flat grey */
.page-header {
	background-color: var(--gcn-sand);
	border-bottom: 1px solid #e6e1d4;
}

/* In-content section headings */
.entry-content h2 {
	color: var(--gcn-green-dark);
	border-left: 4px solid var(--gcn-green);
	padding-left: 12px;
	margin-top: 1.8em;
}
.entry-content h3 { color: var(--gcn-ink); margin-top: 1.4em; }

/* Latest-posts / category widget links */
.sidebar-box li a:hover,
.posts-thumbnails-widget li a:hover { color: var(--gcn-green); }

/* Blog cards on the homepage: subtle card treatment, keep grid */
.blog-entry.post {
	border: 1px solid #ece8dd;
	border-radius: 6px;
	padding: 0 0 14px;
	overflow: hidden;
	background: #fff;
	transition: box-shadow .2s ease;
}
.blog-entry.post:hover { box-shadow: 0 6px 18px rgba(27,94,63,.10); }
.blog-entry .blog-entry-inner { padding: 0 18px; }

/* FAQ-style details accordions (used on info pages) */
.entry-content details {
	border: 1px solid #e6e1d4;
	border-radius: 6px;
	padding: 0 16px;
	margin: 10px 0;
	background: #fff;
}
.entry-content details > summary {
	cursor: pointer;
	font-weight: 600;
	color: var(--gcn-green-dark);
	padding: 14px 0;
	list-style: none;
}
.entry-content details[open] > summary { border-bottom: 1px solid #efece2; margin-bottom: 12px; }

/* Quick links / on-topic info boxes */
.gcn-infobox {
	background: var(--gcn-sand);
	border: 1px solid #e6e1d4;
	border-radius: 8px;
	padding: 20px 22px;
	margin: 22px 0;
}
.gcn-infobox h3 { margin-top: 0; color: var(--gcn-green-dark); }

/* Footer tidy */
#footer-bottom { background: var(--gcn-green-dark); }
#footer-bottom, #footer-bottom a { color: #e8f0ea; }


/* ============================================================
   Enhancement pass — hero, cards, back-to-top (footprint-safe)
   ============================================================ */

/* Homepage hero: course photo behind the page-header title */
.home .page-header {
	background: linear-gradient(rgba(18,45,30,.5), rgba(18,45,30,.72)), url(/wp-content/uploads/2026/06/golf-niort-hero.jpg) center/cover no-repeat;
	border-bottom: none;
	padding: 92px 20px;
	text-align: center;
}
.home .page-header .page-title {
	color: #fff;
	font-size: 42px;
	margin: 0;
	text-shadow: 0 2px 10px rgba(0,0,0,.35);
	white-space: normal;
}
@media (max-width: 768px){
	.home .page-header { padding: 56px 18px; }
	.home .page-header .page-title { font-size: 28px; }
}

/* Lead paragraph */
.gcn-lead { font-size: 1.13em; color: #3a463f; margin-top: 1.2em; }

/* "Explorer le site" cards */
.gcn-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin: 10px 0 1.8em; }
.gcn-card {
	display: block; background: #fff; border: 1px solid #e6e1d4; border-top: 3px solid var(--gcn-green);
	border-radius: 10px; padding: 18px 20px; text-decoration: none;
	transition: box-shadow .2s ease, transform .2s ease;
}
.gcn-card:hover { box-shadow: 0 8px 22px rgba(27,94,63,.12); transform: translateY(-2px); }
.gcn-card strong { display: block; color: var(--gcn-green-dark); font-size: 1.08em; margin-bottom: 4px; }
.gcn-card span { display: block; color: #6b716c; font-size: .95em; line-height: 1.5; }
@media (max-width: 640px){ .gcn-cards { grid-template-columns: 1fr; } }

/* Section rhythm */
.single .entry-content > h2,
.page .entry-content > h2 { margin-top: 2em; }

/* Back-to-top button */
#gcn-top {
	position: fixed; right: 22px; bottom: 22px; width: 46px; height: 46px;
	background: var(--gcn-green); color: #fff; border: none; border-radius: 50%;
	cursor: pointer; opacity: 0; visibility: hidden; z-index: 60;
	transition: opacity .25s ease, background .2s ease;
	box-shadow: 0 4px 14px rgba(20,40,30,.25);
	display: flex; align-items: center; justify-content: center;
}
#gcn-top.show { opacity: 1; visibility: visible; }
#gcn-top:hover { background: var(--gcn-green-dark); }

.home .page-header .page-title { color:#fff !important; font-weight:800; text-shadow:0 2px 14px rgba(0,0,0,.55); }

/* Hero title — correct OceanWP class (.page-header-title): white + golf-ball "o" */
.home .page-header .page-header-title {
	color: #ffffff !important;
	font-size: 46px;
	font-weight: 800;
	text-shadow: 0 2px 16px rgba(0,0,0,.6);
	white-space: normal;
}
@media (max-width: 768px){ .home .page-header .page-header-title { font-size: 28px; } }
.gcn-ball {
	display: inline-block; width: .82em; height: .82em; line-height: 0;
	color: transparent !important; vertical-align: -0.07em; border-radius: 50%; overflow: hidden;
	background: radial-gradient(circle at 36% 32%, #ffffff 0%, #f2f4f3 55%, #d9dedb 100%);
	box-shadow: inset -2px -2px 4px rgba(0,0,0,.12), 0 1px 3px rgba(0,0,0,.4);
}

/* improved golf ball (dimples) — overrides earlier .gcn-ball */
.gcn-ball{display:inline-block;width:.86em;height:.86em;line-height:0;color:transparent !important;vertical-align:-0.1em;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2040%2040%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2219%22%20fill%3D%22%23ffffff%22/%3E%3Cg%20fill%3D%22%23d7ded9%22%3E%3Ccircle%20cx%3D%2210.9%22%20cy%3D%228.0%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2215.5%22%20cy%3D%228.0%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2220.1%22%20cy%3D%228.0%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2224.7%22%20cy%3D%228.0%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2229.3%22%20cy%3D%228.0%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%228.6%22%20cy%3D%2212.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2213.2%22%20cy%3D%2212.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2217.8%22%20cy%3D%2212.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2222.4%22%20cy%3D%2212.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2227.0%22%20cy%3D%2212.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2231.6%22%20cy%3D%2212.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%226.3%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2210.9%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2215.5%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2220.1%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2224.7%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2229.3%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2233.9%22%20cy%3D%2216.1%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%228.6%22%20cy%3D%2220.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2213.2%22%20cy%3D%2220.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2217.8%22%20cy%3D%2220.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2222.4%22%20cy%3D%2220.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2227.0%22%20cy%3D%2220.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2231.6%22%20cy%3D%2220.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%226.3%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2210.9%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2215.5%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2220.1%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2224.7%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2229.3%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2233.9%22%20cy%3D%2224.2%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%228.6%22%20cy%3D%2228.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2213.2%22%20cy%3D%2228.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2217.8%22%20cy%3D%2228.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2222.4%22%20cy%3D%2228.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2227.0%22%20cy%3D%2228.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2231.6%22%20cy%3D%2228.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2210.9%22%20cy%3D%2232.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2215.5%22%20cy%3D%2232.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2220.1%22%20cy%3D%2232.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2224.7%22%20cy%3D%2232.3%22%20r%3D%221.7%22/%3E%3Ccircle%20cx%3D%2229.3%22%20cy%3D%2232.3%22%20r%3D%221.7%22/%3E%3C/g%3E%3Cellipse%20cx%3D%2213%22%20cy%3D%2212%22%20rx%3D%228%22%20ry%3D%225.5%22%20fill%3D%22%23ffffff%22%20opacity%3D%220.55%22/%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2219%22%20fill%3D%22none%22%20stroke%3D%22%23c6cec9%22%20stroke-width%3D%220.8%22/%3E%3C/svg%3E") center/contain no-repeat;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45));overflow:hidden;border-radius:0;box-shadow:none;}

/* Immersive hero: image full-bleed from top, header as a white field over it (homepage) */
.home #site-header.is-transparent,
.home #site-header { background-color: #ffffff !important; }
.home #site-header.is-transparent #site-logo .site-logo-text,
.home #site-header.is-transparent .site-title a { color: var(--gcn-green-dark) !important; }
.home #site-header.is-transparent #site-navigation-wrap .dropdown-menu > li > a { color: #2a3a31 !important; }
.home .page-header { padding-top: 150px; }
@media (max-width: 768px){ .home .page-header { padding-top: 110px; } }

/* Override: image from the very top — TRANSPARENT header over the hero, white logo+nav */
.home #site-header,
.home #site-header.is-transparent { background-color: transparent !important; box-shadow: none !important; border: 0 !important; }
.home #site-header a,
.home #site-header .site-logo-text,
.home #site-header .site-title a,
.home #site-navigation-wrap .dropdown-menu > li > a,
.home #site-header .search-toggle a,
.home #site-header .oceanwp-mobile-menu-icon a { color: #ffffff !important; }
.home #site-header { text-shadow: 0 1px 6px rgba(0,0,0,.45); }
/* readability gradient at the very top for the nav */
.home .page-header::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 150px;
	background: linear-gradient(rgba(0,0,0,.4), rgba(0,0,0,0)); pointer-events: none; z-index: 0; }
.home .page-header-inner { position: relative; z-index: 1; }

/* keep only our branded back-to-top; hide OceanWP built-in */
#scroll-top { display: none !important; }

/* Readability: dark-to-transparent gradient behind the transparent header (homepage) */
.home #site-header,
.home #site-header.is-transparent {
	background: linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.22) 55%, rgba(0,0,0,0) 100%) !important;
}
.home #site-header a,
.home #site-header .site-logo-text,
.home #site-header .site-title a,
.home #site-navigation-wrap .dropdown-menu > li > a,
.home #site-header .search-toggle a { color:#fff !important; text-shadow: 0 1px 8px rgba(0,0,0,.75); }

/* Themed golf header: green band with subtle balls/flag/club pattern, white nav */
.home #site-header, .home #site-header.is-transparent {
  position: static !important;
  background: #14492f url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22220%22%20height%3D%22150%22%20viewBox%3D%220%200%20220%20150%22%3E%3Cg%20fill%3D%22%23ffffff%22%20opacity%3D%220.08%22%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2240%22%20r%3D%229%22/%3E%3Ccircle%20cx%3D%2230.9%22%20cy%3D%2238.2%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2236.7%22%20cy%3D%2239.5%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2234.0%22%20cy%3D%2243.1%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2233.1%22%20cy%3D%2240.5%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Crect%20x%3D%22150%22%20y%3D%2218%22%20width%3D%222.4%22%20height%3D%2234%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M152.4%2020%20L172%2026%20L152.4%2033%20Z%22/%3E%3Ccircle%20cx%3D%22151.2%22%20cy%3D%2218%22%20r%3D%222.2%22/%3E%3Ccircle%20cx%3D%22180%22%20cy%3D%22110%22%20r%3D%228%22/%3E%3Ccircle%20cx%3D%22177.2%22%20cy%3D%22108.4%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22182.4%22%20cy%3D%22109.6%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22180.0%22%20cy%3D%22112.8%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22179.2%22%20cy%3D%22110.4%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Cg%20transform%3D%22translate%2870%2095%29%20rotate%2835%29%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%222.2%22%20height%3D%2230%22%20rx%3D%221.1%22/%3E%3Cpath%20d%3D%22M-1%2030%20q-4%206%202%208%20l3%200%20q3%20-1%201%20-5%20Z%22/%3E%3C/g%3E%3Ccircle%20cx%3D%22110%22%20cy%3D%22128%22%20r%3D%226%22/%3E%3Ccircle%20cx%3D%22107.9%22%20cy%3D%22126.8%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22111.8%22%20cy%3D%22127.7%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22110.0%22%20cy%3D%22130.1%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22109.4%22%20cy%3D%22128.3%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3C/g%3E%3C/svg%3E") repeat !important;
}
.home #site-header a, .home #site-header .site-logo-text, .home #site-header .site-title a,
.home #site-navigation-wrap .dropdown-menu > li > a, .home #site-header .search-toggle a { color:#fff !important; text-shadow:none; }
.home .page-header::before { display:none; }
.home .page-header { padding-top: 92px; }
@media (max-width:768px){ .home .page-header { padding-top: 56px; } }

/* Header search dropdown — refined card + green focus */
#searchform-dropdown.header-searchform-wrap {
	background: #fff; border-radius: 10px; border-top: 3px solid var(--gcn-green);
	box-shadow: 0 12px 32px rgba(20,40,30,.20); padding: 16px;
}
#searchform-dropdown .field {
	width: 100%; box-sizing: border-box; border: 1px solid #d6ddd7; border-radius: 8px;
	padding: 12px 14px; font-size: 15px; color: #2a3a31; background: #fff;
	transition: border-color .2s ease, box-shadow .2s ease;
}
#searchform-dropdown .field:focus {
	border-color: var(--gcn-green); box-shadow: 0 0 0 3px rgba(27,94,63,.15); outline: none;
}
#searchform-dropdown .field::placeholder { color: #8a908b; }

/* Fix: anchor the search dropdown as a card below the icon (header must be positioned) */
.home #site-header,
.home #site-header.is-transparent { position: relative !important; }
#site-navigation .search-toggle-li { position: relative; }
#searchform-dropdown.header-searchform-wrap {
	position: absolute; top: calc(100% + 10px); right: 0; width: 300px; max-width: 90vw; z-index: 200;
}

/* Blend the seam: header-green fades into the hero image (no hard cut) */
.home .page-header::before {
	content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; height: 80px;
	background: linear-gradient(#14492f 0%, rgba(20,73,47,0) 100%);
	pointer-events: none; z-index: 1;
}
.home .page-header-inner { position: relative; z-index: 2; }

/* More natural seam: drop the green tint, use a soft shadow + tiny dark feather */
.home .page-header::before {
	height: 26px !important;
	background: linear-gradient(rgba(0,0,0,.16), rgba(0,0,0,0)) !important;
}
.home #site-header,
.home #site-header.is-transparent { box-shadow: 0 7px 18px rgba(0,0,0,.22) !important; }

/* Force the search dropdown to be the solid white card (override OceanWP translucent bg) */
#searchform-dropdown.header-searchform-wrap,
.home #searchform-dropdown.header-searchform-wrap {
	background: #ffffff !important;
	opacity: 1 !important;
	-webkit-backdrop-filter: none !important; backdrop-filter: none !important;
	border: 1px solid #e6e1d4 !important; border-top: 3px solid var(--gcn-green) !important;
}
#searchform-dropdown.header-searchform-wrap .field { background: #fff !important; color: #2a3a31 !important; }
#searchform-dropdown.header-searchform-wrap .field::placeholder { color: #8a908b !important; }


/* Remove the two light vertical lines (borders) around the search toggle */
#site-header.top-header #search-toggle,
.home #search-toggle,
.home #site-header .search-toggle-li,
.home #site-header .search-toggle-li > a,
.home #site-header .site-search-toggle { border-left: 0 !important; border-right: 0 !important; }


/* FINAL: balls-only header pattern (no flag poles) + kill any search-toggle lines */
.home #site-header, .home #site-header.is-transparent {
  background: #14492f url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22220%22%20height%3D%22150%22%20viewBox%3D%220%200%20220%20150%22%3E%3Cg%20fill%3D%22%23ffffff%22%20opacity%3D%220.07%22%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2240%22%20r%3D%229%22/%3E%3Ccircle%20cx%3D%2230.9%22%20cy%3D%2238.2%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2236.7%22%20cy%3D%2239.5%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2234.0%22%20cy%3D%2243.1%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2233.1%22%20cy%3D%2240.5%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22150%22%20cy%3D%2230%22%20r%3D%227%22/%3E%3Ccircle%20cx%3D%22147.6%22%20cy%3D%2228.6%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22152.1%22%20cy%3D%2229.6%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22150.0%22%20cy%3D%2232.5%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22149.3%22%20cy%3D%2230.4%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22180%22%20cy%3D%22110%22%20r%3D%228%22/%3E%3Ccircle%20cx%3D%22177.2%22%20cy%3D%22108.4%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22182.4%22%20cy%3D%22109.6%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22180.0%22%20cy%3D%22112.8%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22179.2%22%20cy%3D%22110.4%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2295%22%20cy%3D%2295%22%20r%3D%226%22/%3E%3Ccircle%20cx%3D%2292.9%22%20cy%3D%2293.8%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2296.8%22%20cy%3D%2294.7%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2295.0%22%20cy%3D%2297.1%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2294.4%22%20cy%3D%2295.3%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22115%22%20cy%3D%22130%22%20r%3D%227%22/%3E%3Ccircle%20cx%3D%22112.5%22%20cy%3D%22128.6%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22117.1%22%20cy%3D%22129.7%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22115.0%22%20cy%3D%22132.4%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22114.3%22%20cy%3D%22130.3%22%20r%3D%220.9%22%20fill%3D%22%2314492f%22/%3E%3C/g%3E%3C/svg%3E") repeat !important;
}
.home #site-header .search-toggle-li, .home #site-header .search-toggle-li > a,
.home #site-header .site-search-toggle, .home #site-header .search-dropdown-toggle,
.home #site-header #search-toggle, #site-header.top-header #search-toggle,
.home #site-header .search-toggle-li::before, .home #site-header .search-toggle-li::after {
  border: 0 !important; border-left: 0 !important; border-right: 0 !important;
  box-shadow: none !important; background: transparent !important; content: none !important;
}

/* GLOBAL: kill borders + focus outline + box-shadow on the search toggle (all states/pages) */
#search-toggle, .search-toggle-li, .search-toggle-li > a, .site-search-toggle, .search-dropdown-toggle,
.search-toggle-li > a:focus, .site-search-toggle:focus, .search-dropdown-toggle:focus,
.search-toggle-li > a:active, .site-search-toggle:active, .search-dropdown-toggle:active,
.search-toggle-li > a:hover, .site-search-toggle:hover {
	border: 0 !important; border-left: 0 !important; border-right: 0 !important;
	box-shadow: none !important; outline: none !important; outline-offset: 0 !important;
	background: transparent !important; background-color: transparent !important;
}

/* Explorer cards — compact 2-col grid with a golf-ball badge per card */
.gcn-cards { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; margin: 10px 0 1.8em; }
@media (max-width: 760px){ .gcn-cards { grid-template-columns: 1fr !important; } }
.gcn-card { position: relative; display: block; background: #fff; border: 1px solid #e6e1d4;
  border-top: 3px solid var(--gcn-green); border-radius: 10px; padding: 16px 18px 16px 70px;
  text-decoration: none; transition: box-shadow .2s ease, transform .2s ease; min-height: 0; }
.gcn-card::before { content: ""; position: absolute; left: 16px; top: 16px; width: 40px; height: 40px;
  border-radius: 50%; background: var(--gcn-green) url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2040%2040%22%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%2215%22%20fill%3D%22%23fff%22/%3E%3Cg%20fill%3D%22%23cfe0d6%22%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2215%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2213%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2215%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2213%22%20cy%3D%2220%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2220%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2227%22%20cy%3D%2220%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2226%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2227%22%20r%3D%221.5%22/%3E%3Ccircle%20cx%3D%2225%22%20cy%3D%2226%22%20r%3D%221.5%22/%3E%3C/g%3E%3C/svg%3E") center/22px no-repeat; }
.gcn-card:hover { box-shadow: 0 8px 22px rgba(27,94,63,.12); transform: translateY(-2px); }
.gcn-card strong { display: block; color: var(--gcn-green-dark); font-size: 1.06em; margin: 0 0 3px; }
.gcn-card span { display: block; color: #6b716c; font-size: .94em; line-height: 1.45; }
.gcn-card::after { content: "→"; position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  color: var(--gcn-green); opacity: 0; transition: opacity .2s, right .2s; }
.gcn-card:hover::after { opacity: 1; right: 12px; }

/* DECISIVE: higher specificity (double class) beats all earlier .gcn-cards rules */
.gcn-cards.gcn-cards { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; }
@media (max-width: 760px){ .gcn-cards.gcn-cards { grid-template-columns: 1fr !important; } }


/* DECISIVE flexbox 2-col (overrides all grid attempts) */
.entry-content .gcn-cards { display: flex !important; flex-wrap: wrap !important; gap: 16px !important; }
.entry-content .gcn-cards .gcn-card { flex: 0 1 calc(50% - 8px) !important; max-width: calc(50% - 8px) !important; width: auto !important; box-sizing: border-box !important; }
@media (max-width: 760px){ .entry-content .gcn-cards .gcn-card { flex-basis: 100% !important; max-width: 100% !important; } }

/* ============================================================
   "Explorer le site" — two-column: card list (left) + image (right)
   ============================================================ */
.gcn-explore {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	gap: 26px;
	align-items: stretch;
	margin: 10px 0 2em;
}
.gcn-explore .gcn-cards {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	margin: 0 !important;
	grid-template-columns: none !important;
}
.gcn-explore .gcn-cards .gcn-card {
	flex: 1 1 auto !important;
	max-width: none !important;
	display: flex !important;
	flex-direction: column;
	justify-content: center;
}
.gcn-explore-img {
	margin: 0;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 8px 24px rgba(20,40,30,.14);
	min-height: 100%;
}
.gcn-explore-img img {
	width: 100%;
	height: 100%;
	min-height: 320px;
	object-fit: cover;
	display: block;
	border-radius: 12px;
}
@media (max-width: 782px){
	.gcn-explore { grid-template-columns: 1fr; gap: 18px; }
	.gcn-explore-img img { min-height: 240px; max-height: 340px; }
}

/* Explore refinement — compact cards (no inner void) + image cropped to match height */
.gcn-explore { align-items: stretch; }
.gcn-explore .gcn-cards { justify-content: space-between !important; }
.gcn-explore .gcn-cards .gcn-card {
	flex: 0 0 auto !important;
	justify-content: flex-start !important;
	padding: 16px 20px !important;
}
.gcn-explore-img { position: relative; min-height: 100%; }
.gcn-explore-img img {
	position: absolute; inset: 0;
	width: 100%; height: 100%;
	min-height: 0;
	object-fit: cover; object-position: center 62%;
}
@media (max-width: 782px){
	.gcn-explore-img { min-height: 240px; }
	.gcn-explore-img img { position: absolute; }
}

/* fix: restore left clearance for the badge in compact explore cards */
.gcn-explore .gcn-cards .gcn-card { padding: 15px 18px 15px 70px !important; }

/* ============================================================
   "À lire aussi" — recent-articles block at foot of homepage
   ============================================================ */
.gcn-recent { margin: 2.6em 0 1em; }
.gcn-recent > h2 { margin-bottom: .8em; }
.gcn-recent-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.gcn-recent-card {
	display: flex; flex-direction: column;
	background: #fff; border: 1px solid #e6e1d4; border-radius: 12px;
	overflow: hidden; text-decoration: none;
	transition: box-shadow .2s ease, transform .2s ease;
}
.gcn-recent-card:hover { box-shadow: 0 10px 26px rgba(20,40,30,.14); transform: translateY(-3px); }
.gcn-recent-thumb { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #eef1ee; }
.gcn-recent-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gcn-recent-body { display: flex; flex-direction: column; padding: 16px 18px 18px; flex: 1 1 auto; }
.gcn-recent-date { color: #8a8f88; font-size: .82em; text-transform: uppercase; letter-spacing: .04em; margin-bottom: 6px; }
.gcn-recent-title { display: block; color: var(--gcn-green-dark); font-size: 1.08em; line-height: 1.3; margin-bottom: 8px; }
.gcn-recent-exc { color: #6b716c; font-size: .94em; line-height: 1.5; flex: 1 1 auto; }
.gcn-recent-more { margin-top: 12px; color: var(--gcn-green); font-weight: 600; font-size: .9em; }
.gcn-recent-card:hover .gcn-recent-more { text-decoration: underline; }
@media (max-width: 880px){ .gcn-recent-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px){ .gcn-recent-grid { grid-template-columns: 1fr; } }

/* ============================================================
   Inner-page lead image (.gcn-hero) — rounded, full-width, soft shadow
   ============================================================ */
.gcn-hero { margin: 0 0 1.6em; }
.gcn-hero img {
	width: 100%; height: auto; display: block;
	border-radius: 12px;
	box-shadow: 0 10px 28px rgba(20,40,30,.14);
	aspect-ratio: 16 / 9; object-fit: cover;
}
@media (max-width: 600px){ .gcn-hero img { aspect-ratio: 4 / 3; } }

/* ============================================================
   Kill the white focus/border box around the text logo
   (same root cause as the search-toggle: outline uses currentColor=white)
   ============================================================ */
#site-logo a, #site-logo a:focus, #site-logo a:hover, #site-logo a:active, #site-logo a:focus-visible,
a.site-logo-text, a.site-logo-text:focus, a.site-logo-text:hover, a.site-logo-text:active, a.site-logo-text:focus-visible,
.site-title a, .site-title a:focus, .site-title a:active, .site-title a:focus-visible,
.home #site-header #site-logo a, .home #site-header #site-logo a:focus, .home #site-header #site-logo a:focus-visible,
.home #site-header a.site-logo-text, .home #site-header a.site-logo-text:focus, .home #site-header a.site-logo-text:focus-visible {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
}

/* ============================================================
   Kill white focus/active box on nav menu links (same currentColor=white cause)
   ============================================================ */
#site-navigation-wrap .dropdown-menu > li > a,
#site-navigation-wrap .dropdown-menu > li > a:focus,
#site-navigation-wrap .dropdown-menu > li > a:hover,
#site-navigation-wrap .dropdown-menu > li > a:active,
#site-navigation-wrap .dropdown-menu > li > a:focus-visible,
#site-navigation-wrap .dropdown-menu > li.current-menu-item > a,
#site-navigation-wrap .dropdown-menu > li.current_page_item > a,
.home #site-header .dropdown-menu > li > a,
.home #site-header .dropdown-menu > li > a:focus,
.home #site-header .dropdown-menu > li > a:focus-visible,
.home #site-header .dropdown-menu > li.current-menu-item > a,
#site-header .search-toggle a,
#site-header .search-toggle a:focus,
#site-header .search-toggle a:focus-visible {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background-image: none !important;
}
/* OceanWP sometimes draws the active/hover marker via a pseudo-element border */
#site-navigation-wrap .dropdown-menu > li > a::before,
#site-navigation-wrap .dropdown-menu > li > a::after {
	border: 0 !important; box-shadow: none !important;
}

/* ============================================================
   DECISIVE header focus reset — beats OceanWP's
   `a:focus{outline:solid 1px !important}` + `a:focus{background:rgba(255,255,255,.9)}`
   (id-specificity #site-header wins). Kills white outline + white bg + dotted underline.
   ============================================================ */
#site-header a:focus,
#site-header a:focus-visible,
#site-header a:active,
#site-header .site-logo-text:focus,
#site-header .search-toggle a:focus,
#site-header .dropdown-menu > li > a:focus,
#site-header .dropdown-menu > li > a:focus-visible {
	outline: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
	text-decoration: none !important;
	border: 0 !important;
}


/* ============================================================
   Green header band on INNER pages too (match homepage tone)
   ============================================================ */
body:not(.home) #site-header,
body:not(.home) #site-header.is-transparent {
	background: #14492f url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22220%22%20height%3D%22150%22%20viewBox%3D%220%200%20220%20150%22%3E%3Cg%20fill%3D%22%23ffffff%22%20opacity%3D%220.08%22%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2240%22%20r%3D%229%22/%3E%3Ccircle%20cx%3D%2230.9%22%20cy%3D%2238.2%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2236.7%22%20cy%3D%2239.5%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2234.0%22%20cy%3D%2243.1%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%2233.1%22%20cy%3D%2240.5%22%20r%3D%221.2%22%20fill%3D%22%2314492f%22/%3E%3Crect%20x%3D%22150%22%20y%3D%2218%22%20width%3D%222.4%22%20height%3D%2234%22%20rx%3D%221%22/%3E%3Cpath%20d%3D%22M152.4%2020%20L172%2026%20L152.4%2033%20Z%22/%3E%3Ccircle%20cx%3D%22151.2%22%20cy%3D%2218%22%20r%3D%222.2%22/%3E%3Ccircle%20cx%3D%22180%22%20cy%3D%22110%22%20r%3D%228%22/%3E%3Ccircle%20cx%3D%22177.2%22%20cy%3D%22108.4%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22182.4%22%20cy%3D%22109.6%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22180.0%22%20cy%3D%22112.8%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22179.2%22%20cy%3D%22110.4%22%20r%3D%221.0%22%20fill%3D%22%2314492f%22/%3E%3Cg%20transform%3D%22translate%2870%2095%29%20rotate%2835%29%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%222.2%22%20height%3D%2230%22%20rx%3D%221.1%22/%3E%3Cpath%20d%3D%22M-1%2030%20q-4%206%202%208%20l3%200%20q3%20-1%201%20-5%20Z%22/%3E%3C/g%3E%3Ccircle%20cx%3D%22110%22%20cy%3D%22128%22%20r%3D%226%22/%3E%3Ccircle%20cx%3D%22107.9%22%20cy%3D%22126.8%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22111.8%22%20cy%3D%22127.7%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22110.0%22%20cy%3D%22130.1%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3Ccircle%20cx%3D%22109.4%22%20cy%3D%22128.3%22%20r%3D%220.8%22%20fill%3D%22%2314492f%22/%3E%3C/g%3E%3C/svg%3E") repeat !important;
	box-shadow: 0 2px 14px rgba(20,40,30,.18) !important;
	border-bottom: 0 !important;
}
body:not(.home) #site-header .site-logo-text,
body:not(.home) #site-header .site-title a,
body:not(.home) #site-header #site-logo a,
body:not(.home) #site-header .dropdown-menu > li > a,
body:not(.home) #site-header .search-toggle a,
body:not(.home) #site-header .oceanwp-mobile-menu-icon a {
	color: #ffffff !important;
}
/* active/hover nav on inner pages: subtle light underline instead of color shift */
body:not(.home) #site-header .dropdown-menu > li.current-menu-item > a,
body:not(.home) #site-header .dropdown-menu > li > a:hover {
	color: #ffffff !important;
	opacity: .85;
}

/* ============================================================
   FAQ accordion (.gcn-faq) — expandable, green accent
   ============================================================ */
.gcn-faq { margin: 2.4em 0 1.4em; }
.gcn-faq > h2 { margin-bottom: .7em; }
.gcn-faq details {
	background: #fff; border: 1px solid #e6e1d4; border-left: 3px solid var(--gcn-green);
	border-radius: 10px; margin-bottom: 12px; overflow: hidden;
	transition: box-shadow .2s ease;
}
.gcn-faq details[open] { box-shadow: 0 6px 18px rgba(20,40,30,.10); }
.gcn-faq summary {
	cursor: pointer; list-style: none; padding: 15px 48px 15px 18px; position: relative;
	font-weight: 600; color: var(--gcn-green-dark); font-size: 1.04em; line-height: 1.4;
}
.gcn-faq summary::-webkit-details-marker { display: none; }
.gcn-faq summary::after {
	content: ""; position: absolute; right: 18px; top: 50%; width: 11px; height: 11px;
	margin-top: -7px; border-right: 2px solid var(--gcn-green); border-bottom: 2px solid var(--gcn-green);
	transform: rotate(45deg); transition: transform .2s ease;
}
.gcn-faq details[open] summary::after { transform: rotate(-135deg); }
.gcn-faq summary:focus { outline: none; }
.gcn-faq summary:focus-visible { outline: 2px solid rgba(27,94,63,.4); outline-offset: 2px; }
.gcn-faq details > p { margin: 0; padding: 0 18px 16px; color: #54605a; line-height: 1.6; }

/* ============================================================
   Sidebar polish — green-accent titles, clean lists, styled search
   ============================================================ */
#sidebar .widget { margin-bottom: 30px; }
/* widget titles: green with a short accent underline */
#sidebar .widget-title,
#sidebar .wp-block-group h2,
#sidebar .widget h2:first-child {
	color: var(--gcn-green-dark) !important;
	font-size: 1.12em; font-weight: 700; margin: 0 0 14px; padding-bottom: 8px;
	position: relative; border-bottom: 1px solid #e6e1d4;
}
#sidebar .widget-title::after,
#sidebar .wp-block-group h2::after {
	content: ""; position: absolute; left: 0; bottom: -1px; width: 42px; height: 3px;
	background: var(--gcn-green); border-radius: 2px;
}
/* recent posts list */
#sidebar .wp-block-latest-posts__list { list-style: none; margin: 0; padding: 0; }
#sidebar .wp-block-latest-posts__list li { padding: 10px 0; border-bottom: 1px dashed #e6e1d4; }
#sidebar .wp-block-latest-posts__list li:last-child { border-bottom: 0; }
#sidebar .wp-block-latest-posts__post-title {
	display: block; color: var(--gcn-green-dark); font-weight: 600; line-height: 1.4;
	text-decoration: none; transition: color .15s ease;
}
#sidebar .wp-block-latest-posts__post-title:hover { color: var(--gcn-green); text-decoration: underline; }
#sidebar .wp-block-latest-posts__post-date { display: block; color: #9aa09a; font-size: .8em; margin-top: 3px; }
/* categories list */
#sidebar .wp-block-categories,
#sidebar .widget_categories ul { list-style: none; margin: 0; padding: 0; }
#sidebar .wp-block-categories li,
#sidebar .widget_categories li { margin: 0 0 8px; }
#sidebar .wp-block-categories li a,
#sidebar .widget_categories li a {
	display: inline-block; color: var(--gcn-green-dark); text-decoration: none;
	padding: 5px 14px; border: 1px solid #e6e1d4; border-radius: 20px;
	font-size: .92em; transition: background .15s ease, color .15s ease, border-color .15s ease;
}
#sidebar .wp-block-categories li a:hover,
#sidebar .widget_categories li a:hover {
	background: var(--gcn-green); color: #fff; border-color: var(--gcn-green);
}
/* search */
#sidebar .wp-block-search__input {
	border: 1px solid #d6ddd7; border-radius: 8px; padding: 11px 13px;
	font-size: 15px; color: #2a3a31;
}
#sidebar .wp-block-search__input:focus { border-color: var(--gcn-green); outline: none; box-shadow: 0 0 0 3px rgba(27,94,63,.12); }
#sidebar .wp-block-search__button {
	background: var(--gcn-green); color: #fff; border: 0; border-radius: 8px;
	padding: 11px 18px; font-weight: 600; cursor: pointer; transition: background .15s ease;
}
#sidebar .wp-block-search__button:hover { background: var(--gcn-green-dark); }

/* ============================================================
   Sidebar polish — CORRECTED selector (.sidebar-container, not #sidebar)
   ============================================================ */
.sidebar-container .sidebar-box { margin-bottom: 30px; }
.sidebar-container .widget-title,
.sidebar-container .wp-block-group h2,
.sidebar-container .sidebar-box > h2:first-child {
	color: var(--gcn-green-dark) !important;
	font-size: 1.12em; font-weight: 700; margin: 0 0 14px; padding-bottom: 8px;
	position: relative; border-bottom: 1px solid #e6e1d4;
}
.sidebar-container .widget-title::after,
.sidebar-container .wp-block-group h2::after {
	content: ""; position: absolute; left: 0; bottom: -1px; width: 42px; height: 3px;
	background: var(--gcn-green); border-radius: 2px;
}
.sidebar-container .wp-block-latest-posts__list { list-style: none; margin: 0; padding: 0; }
.sidebar-container .wp-block-latest-posts__list li { padding: 10px 0; border-bottom: 1px dashed #e6e1d4; }
.sidebar-container .wp-block-latest-posts__list li:last-child { border-bottom: 0; }
.sidebar-container .wp-block-latest-posts__post-title {
	display: block; color: var(--gcn-green-dark) !important; font-weight: 600; line-height: 1.4;
	text-decoration: none; transition: color .15s ease;
}
.sidebar-container .wp-block-latest-posts__post-title:hover { color: var(--gcn-green) !important; text-decoration: underline; }
.sidebar-container .wp-block-latest-posts__post-date { display: block; color: #9aa09a; font-size: .8em; margin-top: 3px; }
.sidebar-container .wp-block-categories,
.sidebar-container .widget_categories ul { list-style: none; margin: 0; padding: 0; }
.sidebar-container .wp-block-categories li,
.sidebar-container .widget_categories li { margin: 0 0 8px; }
.sidebar-container .wp-block-categories li a,
.sidebar-container .widget_categories li a {
	display: inline-block; color: var(--gcn-green-dark); text-decoration: none;
	padding: 5px 14px; border: 1px solid #e6e1d4; border-radius: 20px;
	font-size: .92em; transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.sidebar-container .wp-block-categories li a:hover,
.sidebar-container .widget_categories li a:hover { background: var(--gcn-green); color: #fff; border-color: var(--gcn-green); }
.sidebar-container .wp-block-search__input {
	border: 1px solid #d6ddd7; border-radius: 8px; padding: 11px 13px; font-size: 15px; color: #2a3a31;
}
.sidebar-container .wp-block-search__input:focus { border-color: var(--gcn-green); outline: none; box-shadow: 0 0 0 3px rgba(27,94,63,.12); }
.sidebar-container .wp-block-search__button {
	background: var(--gcn-green) !important; color: #fff !important; border: 0 !important; border-radius: 8px;
	padding: 11px 18px; font-weight: 600; cursor: pointer; transition: background .15s ease;
}
.sidebar-container .wp-block-search__button:hover { background: var(--gcn-green-dark) !important; }

/* space between search field and button */
.sidebar-container .wp-block-search__inside-wrapper { display: flex; gap: 8px; align-items: stretch; }

/* ============================================================
   Blog listing: make featured image full-bleed to the card edges
   (cancel the .blog-entry-inner 18px padding for the thumbnail only)
   ============================================================ */
.blog-entry.post .blog-entry-inner > .thumbnail {
	margin: 0 -18px 16px !important;
	border-radius: 0;
	overflow: hidden;
}
.blog-entry.post .blog-entry-inner > .thumbnail img {
	width: 100%; height: auto; display: block;
}

/* Blog listing card titles must WRAP (exempt from the one-line headings rule) */
@media (min-width: 960px) {
	.blog-entry-title,
	.blog-entry .entry-title,
	.blog-entry-title.entry-title { white-space: normal !important; }
}

/* ============================================================
   Mobile navigation fixes
   ============================================================ */
@media (max-width: 959px) {
	/* mobile dropdown = white panel, dark-green links (override the white header-nav color) */
	#site-header #mobile-dropdown { background: #ffffff; box-shadow: 0 10px 24px rgba(20,40,30,.16); }
	#site-header #mobile-dropdown #mobile-nav a,
	#site-header #mobile-dropdown a,
	.home #site-header #mobile-dropdown a,
	body:not(.home) #site-header #mobile-dropdown a {
		color: var(--gcn-green-dark) !important;
		text-shadow: none !important;
	}
	#site-header #mobile-dropdown #mobile-nav ul.menu li { border-bottom: 1px solid #ece8dd; }
	#site-header #mobile-dropdown #mobile-nav ul.menu li:last-child { border-bottom: 0; }
	#site-header #mobile-dropdown #mobile-nav ul.menu li a {
		display: block; padding: 13px 18px; font-weight: 600;
	}
	#site-header #mobile-dropdown #mobile-nav ul.menu li a:hover { background: #f2f6f3; color: var(--gcn-green) !important; }
	/* search field inside mobile dropdown */
	#site-header #mobile-dropdown input[type="search"],
	#site-header #mobile-dropdown .searchform input {
		color: #2a3a31; border: 1px solid #d6ddd7; border-radius: 8px;
	}
}
/* Burger icon -> X when the menu is opened (OceanWP only swaps the text, not the glyph) */
.oceanwp-mobile-menu-icon a.mobile-menu.opened i.fa-bars::before,
.oceanwp-mobile-menu-icon a.mobile-menu.opened i.fa-bars:before { content: "\f00d" !important; }

/* back-to-top: subtle white ring for contrast over content; smaller on mobile */
#gcn-top { box-shadow: 0 4px 14px rgba(20,40,30,.25), 0 0 0 2px rgba(255,255,255,.85); }
@media (max-width: 600px){
	#gcn-top { width: 42px; height: 42px; right: 16px; }
	#gcn-top svg { width: 22px; height: 22px; }
}

/* ============================================================
   Single-post polish: wrap long titles, size the featured image
   ============================================================ */
@media (min-width: 960px) {
	.single .entry-title,
	.single .entry-title h1,
	.single-post .entry-title { white-space: normal !important; }
}
.single .thumbnail { margin: 0 0 1.6em; border-radius: 12px; overflow: hidden; }
.single .thumbnail img {
	width: 100%; height: auto; max-height: 440px; object-fit: cover; display: block;
	border-radius: 12px; box-shadow: 0 10px 28px rgba(20,40,30,.14);
}
/* keep related-posts thumbnails compact (not the big-hero treatment) */
.single #related-posts .thumbnail img,
.single .related-post .thumbnail img { max-height: 200px; border-radius: 8px; box-shadow: none; }

/* ============================================================
   Single-post featured image: FULL-BLEED (no grey side margins)
   single posts are full-width (no sidebar) so 100vw is safe here
   ============================================================ */
.single .thumbnail {
	width: 100vw; max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	border-radius: 0 !important;
	overflow: hidden;
	margin-bottom: 1.8em;
	box-shadow: none !important;
}
.single .thumbnail img {
	width: 100%;
	max-height: 520px;
	object-fit: cover;
	border-radius: 0 !important;
	box-shadow: none !important;
}
/* guard: 100vw + scrollbar must not create horizontal scroll */
html, body { overflow-x: hidden; }

/* full-bleed TEST (robust variant) */
body.single div.thumbnail {
	position: relative !important;
	left: 50% !important; right: 50% !important;
	margin-left: -50vw !important; margin-right: -50vw !important;
	width: 100vw !important; max-width: 100vw !important;
}

/* ============================================================
   REVERT full-bleed -> normal contained featured image
   ============================================================ */
body.single div.thumbnail {
	position: static !important;
	left: auto !important; right: auto !important;
	margin: 0 0 1.6em !important;
	width: auto !important; max-width: 100% !important;
	overflow: hidden;
	border-radius: 10px;
}
.single .thumbnail img {
	width: 100% !important; height: auto !important; max-height: 420px !important;
	object-fit: cover; display: block;
	border-radius: 10px !important;
	box-shadow: 0 6px 18px rgba(20,40,30,.10) !important;
}
