/* ==========================================================================
   Sugar — theme overrides on top of the template stylesheet (devon.min.css).
   Only WordPress-specific markup and small fixes live here.
   ========================================================================== */

/* Accessibility --------------------------------------------------------- */
.screen-reader-text {
	border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
	height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important;
	width: 1px; word-wrap: normal !important;
}
.skip-link:focus {
	clip: auto; clip-path: none; height: auto; width: auto; left: 16px; top: 16px;
	z-index: 100000; padding: 12px 20px; background: #ea1d5e; color: #fff;
}

/* Header ------------------------------------------------------------------ */
.custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo-link img { max-height: 60px; width: auto; }
.admin-bar .header.fixed { top: 32px; }

/* Footer menu (Appearance → Menus → "Footer menu") */
.footer-menu ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 30px; margin: 30px 0 0; padding: 0; list-style: none; }
.footer-menu a { font-size: 12px; color: #999; text-transform: uppercase; letter-spacing: 1.32px; text-decoration: none; transition: color .3s; }
.footer-menu a:hover, .footer-menu .current-menu-item > a { color: #ea1d5e; }

/* Model filters --------------------------------------------------------- */
#filter-models.is-open { display: block; }
#filter-models .sugar-reset { margin: 10px 0 0; font-size: 12px; text-transform: uppercase; letter-spacing: .6px; }
#filter-models .sugar-reset a { color: #ea1d5e; }
.sort-models-header .filter-item.active { color: #fff; }

.sugar-empty { color: #999; font-family: 'Open Sans', sans-serif; padding: 40px 0; text-align: center; }

/* Load more ------------------------------------------------------------- */
[data-load-more] { display: inline-block; }
[data-load-more].is-loading { opacity: .6; pointer-events: none; }

/* Models archive: the map sits at the top right and stays in view while the grid scrolls,
   but stops at the end of the grid so the full-width footer is never covered. */
@media screen and (min-width: 992px) {
	.sort-models-wrapper.columns .map-wrapper #map { position: sticky !important; top: 125px; bottom: auto; width: auto; height: calc(100vh - 125px); max-height: 760px; }
	.admin-bar .sort-models-wrapper.columns .map-wrapper #map { top: 157px; height: calc(100vh - 157px); }
}

/* Models archive: Cameroon regions map in the fixed map panel (no Google Maps key) */
.sort-models-wrapper #map.sugar-region-map { display: flex; align-items: center; justify-content: center; margin: 0; padding: 30px; background-color: #111; }
.sort-models-wrapper #map.sugar-region-map > svg { width: 100%; height: 100%; }
.sort-models-wrapper #map.sugar-region-map svg a { cursor: pointer; }
.sort-models-wrapper #map.sugar-region-map .tooltip { z-index: 60; }
@media screen and (max-width: 991px) {
	.sort-models-wrapper #map.sugar-region-map { height: auto; }
	.sort-models-wrapper #map.sugar-region-map > svg { height: auto; max-height: 70vh; }
}

/* Map info window: the card inside */
.sugar-map-card .item-wr { margin-bottom: 0; }
.sugar-map-card .model-item { height: 280px; background-size: cover; background-position: center; }
.sugar-map-card .title { color: #111 !important; font-size: 16px; margin: 10px 0 0; }

/* Model profile ----------------------------------------------------------- */
.profile-title { margin: 0; }
.model-categories { margin-top: 20px; font-size: 12px; text-transform: uppercase; letter-spacing: .6px; }
.model-categories a { color: #ea1d5e; }

/* Blog content ------------------------------------------------------------ */
.post-content img { max-width: 100%; height: auto; }
.post-content .alignleft { float: left; margin: 0 40px 35px 0; }
.post-content .alignright { float: right; margin: 0 0 35px 40px; }
.post-content .aligncenter { display: block; margin: 0 auto 35px; }
.post-content .wp-caption, .post-content figure { max-width: 100%; }
.post-content .wp-caption-text, .post-content figcaption { font-size: 13px; color: #999; margin-top: 8px; }
.post-content::after { content: ""; display: table; clear: both; }
.single-post-content .post-category a { color: inherit; }
.sticky .post-title::before { content: "\f08d"; font-family: FontAwesome; margin-right: 8px; font-size: .8em; }
.bypostauthor > .author-content .author-name::after { content: " ★"; color: #ea1d5e; }

/* Comments / reviews ------------------------------------------------------ */
.all-review .children { list-style: none; padding-left: 60px; }
.blog-comment .comment-reply-link { font-size: 12px; text-transform: uppercase; letter-spacing: .6px; color: #ea1d5e; }
.comment-respond { margin-top: 40px; }
.comment-respond #cancel-comment-reply-link { margin-left: 12px; font-size: 12px; color: #999; }
.comment-form .logged-in-as { color: #999; font-size: 13px; }
.comment-form .logged-in-as a { color: #ea1d5e; }
.comment-form .form-submit { margin: 0; }
.comment-form-cookies-consent { color: #999; font-size: 13px; }

/* Pagination -------------------------------------------------------------- */
.pagination { width: 100%; }
.nav-links { display: flex; justify-content: center; gap: 10px; margin: 30px 0; }
.nav-links a, .nav-links span { color: #999; }

/* Geo map page ------------------------------------------------------------ */
.sugar-geo-intro { padding: 40px 0 0; color: #999; }
.active-geo-map-wr svg a, .geo-hero-img-wr svg a { cursor: pointer; }

/* 404 --------------------------------------------------------------------- */
.sugar-404 { padding: 120px 15px; text-align: center; }
.sugar-404 .post-title { font-size: 96px; color: #fff; }
.sugar-404 p { color: #999; }
.sugar-404 .btn-classic { margin: 10px 5px; }

/* Partners ---------------------------------------------------------------- */
.agancy-logo img { max-width: 100%; max-height: 80px; width: auto; margin: 0 auto; filter: grayscale(1); opacity: .7; transition: opacity .3s, filter .3s; }
.agancy-logo:hover img { filter: none; opacity: 1; }

/* Slick: the template references slick's icon font/loader, which it never shipped.
   The glyphs (← → •) render fine with the system font. */
.slick-prev:before, .slick-next:before, .slick-dots li button:before { font-family: inherit; }
.slick-loading .slick-list { background-image: none; }

/* Gallery thumbnails keep a stable grid even before images load. */
.profile-entry .thumbnail-photo img { width: 100%; height: auto; aspect-ratio: 700 / 640; object-fit: cover; }

/* Comment cookie consent (GDPR) — template styles all inputs as text boxes. */
.form .comment-form-cookies-consent { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; }
.form .comment-form-cookies-consent input { width: 16px; height: 16px; min-height: 0; margin: 0; padding: 0; flex: 0 0 16px; }
.form .comment-form-cookies-consent label { margin: 0; }
