/*
Theme Name: Ntaco
Theme URI: https://ntaco.aliansoftware.net/
Author: Alian Software
Author URI: https://aliansoftware.net/
Description: Ntaco is a clean, typography-focused WordPress block theme built for writers and developer blogs. Full Site Editing, fluid type, a calm reading-first layout, and zero external dependencies.
Requires at least: 6.6
Tested up to: 6.7
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ntaco
Tags: blog, one-column, block-patterns, full-site-editing, custom-colors, custom-menu, editor-style, featured-images, threaded-comments, translation-ready
*/

/* Most styling lives in theme.json. The rules below are small front-end enhancements. */

.site-header .wp-block-site-title a {
	text-decoration: none;
}

/* Make featured images and content images sit nicely. */
.wp-block-post-featured-image img {
	border-radius: 8px;
}

/* Constrain reading measure for long-form content a touch tighter on big screens. */
.entry-content p,
.wp-block-post-content p {
	max-width: 68ch;
}

/* Subtle hover lift on the post list links. */
.wp-block-post-title a {
	transition: color 0.15s ease;
}

/* Smooth focus visibility for keyboard users. */
:where(a:focus-visible, button:focus-visible, input:focus-visible) {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 2px;
}

/* Tidy code blocks. */
.wp-block-code {
	background: var(--wp--preset--color--base-2);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: 8px;
	padding: 1rem 1.25rem;
	overflow: auto;
}

/* =========================================================
   Ntaco Footer — pixel-matched to Figma (node 33:1536 / 15:923)
   ========================================================= */
.ntaco-footer {
	font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.ntaco-footer__main {
	max-width: 1240px;
	margin: 0 auto;
	padding: 72px 40px 40px;
}
.ntaco-footer .ntaco-footer__cols {
	display: grid;
	grid-template-columns: 1.6fr 1fr 1.3fr;
	gap: 48px;
	align-items: start;
	margin: 0;
}
.ntaco-footer .ntaco-footer__cols > .wp-block-column {
	flex-basis: auto;
	margin: 0;
}

/* --- Brand column --- */
.ntaco-col-brand {
	display: flex;
	flex-direction: column;
	gap: 21px;
}
.footer-logo,
.footer-logo img {
	margin: 0;
}
.footer-logo img {
	width: 136px;
	height: auto;
	display: block;
}
.footer-brand-text {
	margin: 0;
	max-width: 360px;
	font-size: 14.5px;
	line-height: 25.38px;
	color: rgba(255, 255, 255, 0.6);
}

/* --- Social icons (restyled core social-links) --- */
.footer-socials {
	gap: 11px;
	margin: 0;
}
.footer-socials .wp-social-link {
	width: 40px !important;
	height: 40px !important;
	border-radius: 10px !important;
	background-color: rgba(255, 255, 255, 0.07) !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: background-color 0.15s ease;
}
.footer-socials .wp-social-link:hover {
	background-color: rgba(255, 255, 255, 0.14) !important;
}
/* Make anchor fill the box and center the glyph */
.footer-socials .wp-block-social-link-anchor {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	line-height: 0;
}
.footer-socials .wp-social-link svg {
	width: 18px !important;
	height: 18px !important;
	fill: rgba(255, 255, 255, 0.75) !important;
	flex-shrink: 0;
}

/* --- Section headings --- */
.ntaco-footer .footer-heading {
	margin: 0 0 22px;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	line-height: 15.85px;
	font-weight: 700;
	letter-spacing: 1.3px;
	text-transform: uppercase;
	color: #ffffff;
}

/* --- Quick Links nav --- */
.ntaco-footer .footer-nav .wp-block-navigation__container,
.ntaco-footer .footer-nav ul {
	gap: 13px;
}
/* Override WordPress core navigation block color (higher specificity) */
.ntaco-footer .footer-nav .wp-block-navigation-item .wp-block-navigation-item__content,
.ntaco-footer .footer-nav .wp-block-navigation-item .wp-block-navigation-item__content:visited {
	font-size: 14.5px;
	line-height: 17.68px;
	color: rgba(255, 255, 255, 0.65) !important;
	text-decoration: none !important;
}
.ntaco-footer .footer-nav .wp-block-navigation-item .wp-block-navigation-item__content:hover {
	color: #ffffff !important;
}

/* --- Contact column --- */
.footer-contact-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
	/* Override WordPress is-layout-flow blockGap (1.5rem by default) */
	--wp--style--block-gap: 16px !important;
}
.footer-contact-list.is-layout-flow > * {
	margin-block-start: 0 !important;
}
.footer-contact-row {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	flex-wrap: nowrap;
}
.footer-icon {
	margin: 0;
	flex: 0 0 auto;
}
.footer-icon img {
	width: 17px;
	height: 17px;
	display: block;
	margin-top: 2px;
}
.footer-contact-row p {
	margin: 0;
	font-size: 14.5px;
	line-height: 23.2px;
	color: rgba(255, 255, 255, 0.65);
}
.footer-contact-row a {
	color: rgba(255, 255, 255, 0.65);
	text-decoration: none;
}
.footer-contact-row a:hover {
	color: #ffffff;
}

/* --- Divider + bottom bar --- */
.ntaco-footer__divider {
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.09);
	margin: 0;
	width: 100%;
}
.ntaco-footer__bottom {
	max-width: 1240px;
	margin: 0 auto;
	padding: 22px 40px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.ntaco-footer__bottom .footer-copy {
	margin: 0;
	font-size: 13.5px;
	line-height: 16.46px;
	color: rgba(255, 255, 255, 0.5);
}
.ntaco-footer__bottom .footer-tagline {
	margin: 0;
	font-size: 13px;
	line-height: 15.85px;
	color: rgba(255, 255, 255, 0.4);
}

/* ---------- iPad / tablet (768–1023px) ---------- */
@media (max-width: 1023px) {
	.ntaco-footer__main {
		padding: 35px 16px;
	}
	.ntaco-footer .ntaco-footer__cols {
		grid-template-columns: 1fr 1fr;
		gap: 40px;
	}
	.ntaco-col-brand {
		grid-column: 1 / -1;
	}
	.ntaco-footer__bottom {
		padding: 22px 16px;
	}
}

/* ---------- Mobile (≤767px) ---------- */
@media (max-width: 767px) {
	.ntaco-footer__main {
		padding: 35px 16px;
	}
	.ntaco-footer .ntaco-footer__cols {
		grid-template-columns: 1fr;
		gap: 36px;
	}
	.ntaco-col-brand {
		grid-column: auto;
	}
	.ntaco-footer__bottom {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 22px 16px;
	}
}

/* =========================================================
   Ntaco Header — pixel-matched to Figma (node 65:692)
   ========================================================= */
.ntaco-header {
	width: 100%;
	--wp--style--block-gap: 0 !important;
}
.ntaco-header.is-layout-flow > * {
	margin-block-start: 0 !important;
}
.ntaco-header.is-layout-flow > * + * {
	margin-block-start: 0 !important;
}

/* ---- Top bar ---- */
.ntaco-topbar {
	background-color: #14202f;
	width: 100%;
}
.ntaco-topbar__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 40px;
	min-height: 42px;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: nowrap !important;
	--wp--style--block-gap: 0 !important;
}
.ntaco-topbar__left {
	display: flex !important;
	align-items: center !important;
	gap: 9px;
	flex-wrap: nowrap;
	--wp--style--block-gap: 0 !important;
}
.header-diamond {
	display: inline-block;
	width: 8px;
	height: 8px;
	min-width: 8px;
	background: #b14a38;
	border-radius: 2px;
	transform: rotate(45deg);
	flex-shrink: 0;
}
.topbar-tagline {
	margin: 0 !important;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.26px;
	color: rgba(255, 255, 255, 0.78) !important;
	white-space: nowrap;
}
.ntaco-topbar__right {
	display: flex !important;
	align-items: center !important;
	gap: 22px;
	flex-shrink: 0;
	flex-wrap: nowrap;
	--wp--style--block-gap: 0 !important;
}
.topbar-contact-item {
	display: flex !important;
	align-items: center !important;
	gap: 7px;
	flex-wrap: nowrap;
	--wp--style--block-gap: 0 !important;
}
.topbar-icon {
	margin: 0 !important;
	flex-shrink: 0;
}
.topbar-icon img {
	width: 14px !important;
	height: 14px;
	display: block;
	margin: 0;
}
.topbar-contact-text,
.topbar-contact-text a {
	margin: 0 !important;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.85) !important;
	text-decoration: none !important;
	white-space: nowrap;
}
.topbar-contact-text a:hover {
	color: #ffffff !important;
}
.topbar-vdivider {
	display: block;
	width: 1px;
	height: 16px;
	background-color: rgba(255, 255, 255, 0.18);
	flex-shrink: 0;
}

/* Language switcher */
.header-lang-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
}
.header-lang-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	padding: 6px 12px;
	margin: 0;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.26px;
	cursor: pointer;
	white-space: nowrap;
	line-height: 1;
}
.header-lang-toggle:hover {
	background: rgba(255, 255, 255, 0.08);
}
.header-lang-toggle img {
	display: block;
	flex-shrink: 0;
}
.header-lang-code {
	line-height: 1;
	display: inline-flex;
	align-items: center;
}
.header-lang-dropdown {
	display: none;
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	min-width: 100%;
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 8px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
	list-style: none;
	margin: 0;
	padding: 4px;
	z-index: 9999;
}
/* Click-only: opens on tap/click (JS toggles .is-open), stays open until you
   click a language or click outside. No hover trigger, so moving the mouse
   away does NOT close it. */
.header-lang-btn.is-open .header-lang-dropdown {
	display: block;
}
.header-lang-dropdown li {
	margin: 0;
	padding: 0;
}
.header-lang-dropdown li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 7px 10px;
	border-radius: 6px;
	color: #2a2e36;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.1;
	text-decoration: none;
	white-space: nowrap;
}
.header-lang-dropdown li a:hover {
	color: #b14a38;
	background: rgba(177, 74, 56, 0.06);
}
.header-lang-dropdown li.current-lang a {
	color: #b14a38;
	font-weight: 600;
	background: rgba(177, 74, 56, 0.06);
}

/* ---- Main nav bar ---- */
.ntaco-navbar {
	background-color: #ffffff;
	border-bottom: 1px solid #ece7e2;
	width: 100%;
}
.ntaco-navbar__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 40px;
	min-height: 80px;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: nowrap !important;
	gap: 24px;
	--wp--style--block-gap: 0 !important;
}
.header-logo {
	margin: 0 !important;
	flex-shrink: 0;
}
.header-logo a {
	display: block;
	line-height: 0;
}
.header-logo img {
	width: 143px;
	height: auto;
	display: block;
}

/* Navigation */
.header-nav {
	flex: 1 1 auto !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
}
.header-nav .wp-block-navigation__container {
	gap: 33.7px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: center !important;
}
.header-nav .wp-block-navigation-item .wp-block-navigation-item__content {
	font-family: "Montserrat", sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #2a2e36 !important;
	text-decoration: none !important;
	padding: 0 !important;
	white-space: nowrap;
}
.header-nav .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content,
.header-nav .wp-block-navigation-item.is-active .wp-block-navigation-item__content {
	color: #b14a38 !important;
	font-weight: 700 !important;
}
.header-nav .wp-block-navigation-item .wp-block-navigation-item__content:hover {
	color: #b14a38 !important;
}

/* CTA button */
.header-cta-btn {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background-color: #b14a38;
	color: #ffffff !important;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	padding: 13px 24px;
	border-radius: 10px;
	box-shadow: 0 8px 10px rgba(177, 74, 56, 0.28);
	white-space: nowrap;
	flex-shrink: 0;
	transition: background-color 0.15s ease, box-shadow 0.15s ease;
}
.header-cta-btn:hover {
	background-color: #9a3d2c;
	box-shadow: 0 8px 16px rgba(177, 74, 56, 0.36);
	color: #ffffff !important;
}
.header-cta-btn img {
	display: block;
	width: 15px;
	height: 15px;
	flex-shrink: 0;
}

/* ---------- Header tablet (768–1023px) ---------- */
@media (max-width: 1023px) {
	.ntaco-topbar__inner,
	.ntaco-navbar__inner {
		padding: 0 16px;
	}
	/* Hide email contact on tablet to save space */
	.ntaco-topbar__right > .topbar-contact-item:last-child,
	.ntaco-topbar__right > .topbar-vdivider {
		display: none;
	}
	/* Compress nav so all 6 items + logo + CTA fit without overflow */
	.ntaco-navbar__inner {
		gap: 14px;
	}
	.header-nav .wp-block-navigation__container {
		gap: 20px !important;
	}
	.header-nav .wp-block-navigation-item .wp-block-navigation-item__content {
		font-size: 14px !important;
	}
	.header-cta-btn {
		padding: 11px 18px;
		font-size: 13px;
	}
	.header-logo img {
		width: 128px;
	}
}

/* Mobile language switcher hidden on desktop/tablet (Figma has NO switcher in the navbar) */
.header-lang-mobile {
	display: none !important;
}

/* ---------- Header mobile (≤767px) ---------- */
@media (max-width: 767px) {
	.ntaco-topbar {
		display: none;
	}
	.ntaco-navbar__inner {
		padding: 0 16px;
		min-height: 64px;
		justify-content: flex-start !important;
		gap: 14px;
	}
	.header-logo img {
		width: 110px;
	}
	/* Hide CTA button on mobile */
	.header-cta-btn {
		display: none !important;
	}

	/* Collapse the inline nav menu — WP only collapses at 600px by default,
	   so force it at 767px: hide the inline menu, show the hamburger. */
	.header-nav {
		flex: 0 0 auto !important;
		margin-left: auto;   /* push toggle group to the right edge */
	}
	.header-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none !important;
	}
	.header-nav .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		background: transparent;
		border: none;
		cursor: pointer;
		padding: 0;
	}
	.header-nav .wp-block-navigation__responsive-container-open svg {
		width: 26px;
		height: 26px;
		fill: #2a2e36;
	}

	/* Mobile language switcher — to the RIGHT of the toggle */
	.header-lang-mobile {
		display: flex !important;
		align-items: center;
		order: 99;
	}
	.header-lang-mobile .header-lang-toggle {
		background: #f6f2ee;
		border: 1px solid #e4ddd5;
		color: #2a2e36;
		padding: 7px 10px;
	}
	.header-lang-mobile .header-lang-toggle:hover {
		background: #efe9e2;
	}
	/* Globe + chevron icons are white strokes; tint them dark on light bg */
	.header-lang-mobile .header-lang-toggle img {
		filter: brightness(0) saturate(100%) invert(15%) sepia(8%) saturate(800%) hue-rotate(180deg);
	}
	.header-lang-mobile .header-lang-dropdown {
		right: 0;
		left: auto;
	}

	/* Full-screen mobile overlay (when menu opens) */
	.header-nav .wp-block-navigation__responsive-container.is-menu-open {
		background: #ffffff;
		padding: 24px 20px;
	}
	.header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		gap: 0 !important;
	}
	.header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation-item__content {
		font-size: 16px !important;
		color: #2a2e36 !important;
		padding: 14px 0 !important;
		border-bottom: 1px solid #f0ebe6;
		display: block;
	}
	.header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child .wp-block-navigation-item__content {
		border-bottom: none;
	}
	.header-nav .wp-block-navigation__responsive-container-close {
		color: #2a2e36;
	}
}

/* =========================================================
   Home "Built on Trust" section — responsive overrides
   (base styles live in Customizer Additional CSS; these use
   higher-specificity selectors so they win on tablet/mobile)
   ========================================================= */
@media (max-width: 1024px) {
	.ntaco-trust .ntaco-trust__inner {
		gap: 30px !important;
	}
	.ntaco-trust__grid .ntaco-trust__card {
		padding: 20px !important;
	}
}
@media (max-width: 767px) {
	.ntaco-trust .ntaco-trust__inner {
		gap: 20px !important;
	}
	.ntaco-trust__grid .ntaco-trust__card {
		padding: 15px !important;
	}
	.ntaco-trust__card .ntaco-trust__ct {
		font-size: 18px !important;
	}
}

/* =========================================================
   Home "Latest News" section — dynamic Query Loop (posts)
   ========================================================= */
.ntaco-news {
	max-width: 1240px;
	/* !important needed to beat the theme's root-padding-aware .alignfull
	   negative-margin rule, which otherwise pins the section to the left. */
	margin-left: auto !important;
	margin-right: auto !important;
	margin-top: 0;
	margin-bottom: 0;
	padding: 100px 40px;
	font-family: "Montserrat", sans-serif;
	display: flex;
	flex-direction: column;
	gap: 48px;
}
/* Kill WordPress is-layout-flow's default 1.5rem block margins inside the
   section (including on .ntaco-news's own direct children) — spacing is
   controlled by flex gap / grid gap instead, so it matches Figma exactly. */
.ntaco-news.is-layout-flow > *,
.ntaco-news .is-layout-flow > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}
.ntaco-news__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: 24px;
}
.ntaco-news__headtext {
	display: flex;
	flex-direction: column;
	gap: 12.94px;
	max-width: 640px;
}
.ntaco-news__eyebrow {
	margin: 0 0 12.94px;
	color: #b14a38;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.82px;
	text-transform: uppercase;
	line-height: 1.2;
}
.ntaco-news__title {
	margin: 0;
	color: #1c1f26;
	font-family: "Montserrat", sans-serif;
	font-size: 42px;
	font-weight: 800;
	line-height: 1.16;
	letter-spacing: -0.84px;
}
.ntaco-news__actions {
	flex-shrink: 0;
	margin: 0;
}
.ntaco-news__viewall .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: transparent;
	color: #b14a38;
	border: 1px solid #ecd6ce;
	border-radius: 10px;
	padding: 12px 23px;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	font-weight: 700;
	transition: background-color 0.18s ease, border-color 0.18s ease;
}
.ntaco-news__viewall .wp-block-button__link:hover {
	background: rgba(177, 74, 56, 0.06);
	border-color: #b14a38;
	color: #b14a38;
}

/* Cards grid (Post Template renders the <ul>) */
.ntaco-news__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}
.ntaco-news__grid > li {
	margin: 0;
}
.ntaco-news-card {
	height: 100%;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	border: 1px solid #ece7e2;
	border-radius: 20px;
	overflow: hidden;
}
.ntaco-news-card__media {
	position: relative;
}
.ntaco-news-card__img {
	margin: 0;
}
.ntaco-news-card__img img {
	display: block;
	width: 100%;
	height: 210px;
	object-fit: cover;
}
.ntaco-news-card__cat {
	position: absolute;
	top: 14px;
	left: 14px;
	background: rgba(20, 32, 47, 0.88);
	border-radius: 7px;
	padding: 6px 12px;
}
.ntaco-news-card__cat,
.ntaco-news-card__cat a {
	color: #ffffff !important;
	font-family: "Montserrat", sans-serif;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.46px;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 1.2;
}
.ntaco-news-card__body {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 22px 24px 26px;
}
.ntaco-news-card__body > * {
	margin: 0 !important;
}
.ntaco-news-card__date {
	color: #9aa0a8;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
}
.ntaco-news-card__title {
	font-family: "Montserrat", sans-serif;
	font-size: 19px;
	font-weight: 700;
	line-height: 25.46px;
}
.ntaco-news-card__title a {
	color: #1c1f26;
	text-decoration: none;
}
.ntaco-news-card__title a:hover {
	color: #b14a38;
}
.ntaco-news-card__excerpt {
	color: #6b7079;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 22.4px;
}
.ntaco-news-card__excerpt p {
	margin: 0;
}
.ntaco-news-card__more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding-top: 8px;
	color: #b14a38 !important;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
}
.ntaco-news-card__more:hover {
	color: #9a3d2c !important;
}

/* ---- Latest News tablet ---- */
@media (max-width: 1024px) {
	.ntaco-news {
		padding: 64px 0;
	}
	.ntaco-news__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
	.ntaco-news__title {
		font-size: 32px;
	}
}
/* ---- Latest News mobile ---- */
@media (max-width: 767px) {
	.ntaco-news {
		padding: 48px 0;
		gap: 32px;
	}
	.ntaco-news__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 18px;
	}
	.ntaco-news__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.ntaco-news__title {
		font-size: 28px;
	}
}
/* ---- Latest News small mobile: full-width button ---- */
@media (max-width: 479px) {
	.ntaco-news__actions,
	.ntaco-news__actions .wp-block-button {
		width: 100%;
	}
	.ntaco-news__viewall .wp-block-button__link {
		width: 100%;
		justify-content: center;
	}
}

/* =========================================================
   Home "Get in Touch" contact section (Contact Form 7)
   ========================================================= */
.ntaco-contact {
	background-color: #b14a38;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.ntaco-contact .is-layout-flow > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}
.ntaco-contact__inner {
	max-width: 1240px;
	margin-left: auto;
	margin-right: auto;
	padding: 72px 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 48px;
}
.ntaco-contact__text {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.ntaco-contact__title {
	margin: 0;
	max-width: 460px;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 36px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.36px;
}
.ntaco-contact__sub {
	margin: 0;
	max-width: 430px;
	color: rgba(255, 255, 255, 0.85);
	font-family: "Montserrat", sans-serif;
	font-size: 16.5px;
	font-weight: 400;
	line-height: 1.7;
}
.ntaco-contact__card {
	flex: 1 1 0;
	min-width: 0;
	background: #ffffff;
	border-radius: 20px;
	padding: 30px;
	box-shadow: 0 24px 25px rgba(0, 0, 0, 0.18);
}

/* ---- Contact Form 7 field styling ---- */
.ntaco-contact__card .wpcf7 .ntaco-cf {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.ntaco-contact__card .ntaco-cf__row {
	display: flex;
	gap: 14px;
}
.ntaco-contact__card .ntaco-cf__row .wpcf7-form-control-wrap {
	flex: 1 1 0;
	min-width: 0;
}
.ntaco-contact__card .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}
.ntaco-contact__card input.wpcf7-text,
.ntaco-contact__card input.wpcf7-email,
.ntaco-contact__card input.wpcf7-tel {
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	border: 1px solid #e6e1dc;
	border-radius: 10px;
	padding: 15px 17px;
	background: #ffffff;
	color: #1c1f26;
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	line-height: 1.2;
}
.ntaco-contact__card input.wpcf7-text::placeholder,
.ntaco-contact__card input.wpcf7-email::placeholder,
.ntaco-contact__card input.wpcf7-tel::placeholder {
	color: #757575;
	opacity: 1;
}
.ntaco-contact__card input.wpcf7-text:focus,
.ntaco-contact__card input.wpcf7-email:focus,
.ntaco-contact__card input.wpcf7-tel:focus {
	outline: none;
	border-color: #b14a38;
}
/* Acceptance checkbox */
.ntaco-contact__card .wpcf7-acceptance .wpcf7-list-item {
	margin: 0;
}
.ntaco-contact__card .wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
}
.ntaco-contact__card .wpcf7-acceptance input[type="checkbox"] {
	width: 17px;
	height: 17px;
	margin: 1px 0 0;
	flex-shrink: 0;
	accent-color: #b14a38;
}
.ntaco-contact__card .wpcf7-list-item-label {
	color: #7a808b;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	line-height: 19.5px;
}
/* Submit */
.ntaco-contact__card input.wpcf7-submit {
	width: 100%;
	margin: 0;
	border: none;
	border-radius: 11px;
	padding: 17px 16px;
	background: #14202f;
	color: #ffffff;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	transition: background-color 0.18s ease;
}
.ntaco-contact__card input.wpcf7-submit:hover {
	background: #0f1824;
}
.ntaco-contact__card .wpcf7-spinner {
	margin: 0 0 0 10px;
}
.ntaco-contact__card .wpcf7-response-output {
	margin: 14px 0 0 !important;
	padding: 10px 14px !important;
	border-radius: 8px;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
}

/* ---- Contact tablet ---- */
@media (max-width: 1024px) {
	.ntaco-contact__inner {
		padding: 56px 24px;
		gap: 32px;
	}
	.ntaco-contact__title {
		font-size: 30px;
	}
}
/* ---- Contact mobile ---- */
@media (max-width: 767px) {
	.ntaco-contact__inner {
		flex-direction: column;
		align-items: stretch;
		gap: 28px;
		padding: 48px 16px;
	}
	.ntaco-contact__title {
		font-size: 26px;
		max-width: none;
	}
	.ntaco-contact__sub {
		max-width: none;
	}
	.ntaco-contact__card {
		padding: 22px;
	}
	.ntaco-contact__card .ntaco-cf__row {
		flex-direction: column;
		gap: 16px;
	}
}

/* =========================================================
   Home "Testimonials" section (carousel + trust badges)
   ========================================================= */
.ntaco-tst {
	background-color: #faf8f6;
	border-top: 1px solid #ece7e2;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.ntaco-tst.is-layout-flow > *,
.ntaco-tst .is-layout-flow > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}
.ntaco-tst__inner {
	max-width: 1240px;
	margin-left: auto;
	margin-right: auto;
	padding: 100px 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 52px;
	font-family: "Montserrat", sans-serif;
}
.ntaco-tst__head {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 13px;
	max-width: 680px;
	text-align: center;
}
.ntaco-tst__eyebrow {
	margin: 0;
	color: #b14a38;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.82px;
	text-transform: uppercase;
}
.ntaco-tst__title {
	margin: 0;
	color: #1c1f26;
	font-family: "Montserrat", sans-serif;
	font-size: 40px;
	font-weight: 800;
	line-height: 1.16;
	letter-spacing: -0.8px;
}
/* Slider */
.ntaco-tst__slider {
	width: 100%;
	max-width: 900px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.ntaco-tst__track {
	display: flex;
	gap: 0;
	/* Vertical padding so the card's soft downward shadow is not clipped by the
	   scroll container (overflow-x:auto also clips overflow-y). No horizontal
	   padding — cards must equal the scrollport width for clean scroll-snap. */
	padding: 6px 0 28px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.ntaco-tst__track::-webkit-scrollbar {
	display: none;
}
.ntaco-tst__card {
	flex: 0 0 100%;
	width: 100%;
	box-sizing: border-box;
	scroll-snap-align: center;
	display: flex;
	flex-direction: column;
	gap: 18px;
	background: #ffffff;
	border: 1px solid #ece7e2;
	border-radius: 20px;
	padding: 33px 31px;
	box-shadow: 0 12px 16px rgba(28, 31, 38, 0.04);
}
.ntaco-tst__stars {
	margin: 0;
}
.ntaco-tst__stars img {
	width: 102px;
	height: 18px;
	display: block;
	max-width: none;
}
.ntaco-tst__quote {
	margin: 0;
	color: #3a3f47;
	font-size: 16px;
	font-weight: 500;
	line-height: 27.2px;
}
.ntaco-tst__author {
	display: flex;
	align-items: center;
	gap: 13px;
	padding-top: 6px;
}
.ntaco-tst__avatar {
	margin: 0;
	flex-shrink: 0;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: #14202f;
	color: #e08a72;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ntaco-tst__person {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.ntaco-tst__name {
	margin: 0;
	color: #1c1f26;
	font-size: 15px;
	font-weight: 700;
}
.ntaco-tst__role {
	margin: 0;
	color: #8a8f98;
	font-size: 13px;
	font-weight: 500;
}
/* Dots (generated by JS) */
.ntaco-tst__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
}
.ntaco-tst__dot {
	width: 9px;
	height: 9px;
	padding: 0;
	border: none;
	border-radius: 999px;
	background: #d8cfc8;
	cursor: pointer;
	transition: width 0.2s ease, background-color 0.2s ease;
}
.ntaco-tst__dot.is-active {
	width: 26px;
	background: #b14a38;
}
/* Trust badges */
.ntaco-tst__badges {
	width: 100%;
	border-top: 1px solid #e6e1dc;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 18px;
	padding-top: 53px;
}
.ntaco-tst__badge {
	display: flex;
	align-items: center;
	gap: 9px;
	border: 1px solid #e2ddd8;
	border-radius: 10px;
	padding: 14px 21px;
}
.ntaco-tst__bico {
	margin: 0;
	flex-shrink: 0;
	line-height: 0;
}
.ntaco-tst__bico img {
	width: 16px;
	height: 16px;
	display: block;
	max-width: none;
}
.ntaco-tst__btxt {
	margin: 0;
	color: #7a808b;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}
/* ---- Testimonials tablet ---- */
@media (max-width: 1024px) {
	.ntaco-tst__inner {
		padding: 64px 16px;
		gap: 40px;
	}
	.ntaco-tst__title {
		font-size: 32px;
	}
}
/* ---- Testimonials mobile ---- */
@media (max-width: 767px) {
	.ntaco-tst__inner {
		padding: 48px 16px;
		gap: 32px;
	}
	.ntaco-tst__title {
		font-size: 26px;
	}
	.ntaco-tst__card {
		padding: 24px 20px;
	}
	.ntaco-tst__quote {
		font-size: 15px;
		line-height: 25px;
	}
	.ntaco-tst__badges {
		gap: 10px;
		padding-top: 36px;
	}
	.ntaco-tst__badge {
		padding: 11px 14px;
	}
	.ntaco-tst__btxt {
		font-size: 13px;
	}
}

/* =========================================================
   About Us page (ntaco-ab-*)
   ========================================================= */
.ntaco-ab-hero, .ntaco-ab-story, .ntaco-ab-mvv, .ntaco-ab-stats,
.ntaco-ab-team, .ntaco-ab-awards, .ntaco-ab-cta {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/* Reset WP's 1.5rem flow block-gap ONLY on the direct children of the
   grid/flex containers (not deep text), so the explicit element margins
   below control the exact Figma spacing. */
.ntaco-ab-story__inner > *,
.ntaco-ab-mvv__inner > *,
.ntaco-ab-stats__inner > *,
.ntaco-ab-team__inner > *,
.ntaco-ab-team__grid > *,
.ntaco-ab-awards__inner > *,
.ntaco-ab-awards__row > *,
.ntaco-ab-vals > * {
	margin-block-start: 0 !important;
}
.ntaco-ab-eyebrow {
	margin: 0 0 14px !important;
	color: #b14a38;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.ntaco-ab-h2 {
	margin: 0 !important;
	color: #1c1f26;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 800;
	line-height: 1.16;
	letter-spacing: -0.02em;
}

/* ---- Hero ---- */
.ntaco-ab-hero {
	min-height: 360px;
}
.ntaco-ab-hero .wp-block-cover__inner-container {
	width: 100%;
}
.ntaco-ab-hero__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 64px 40px;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-hero__crumb {
	margin: 0 0 18px !important;
	font-size: 13.5px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.6);
}
.ntaco-ab-hero__crumb a {
	color: rgba(255, 255, 255, 0.6);
	text-decoration: none;
}
.ntaco-ab-hero__sep {
	color: #b14a38;
	margin: 0 8px;
}
.ntaco-ab-hero__title {
	margin: 0 !important;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1.05;
	font-weight: 800;
	letter-spacing: -0.02em;
}
.ntaco-ab-hero__sub {
	margin: 16px 0 0 !important;
	max-width: 560px;
	font-size: 19px;
	line-height: 1.6;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.82);
}

/* ---- Company story ---- */
.ntaco-ab-story {
	background: #fff;
}
.ntaco-ab-story__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 90px 40px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
	gap: 60px;
	align-items: center;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-story__p {
	margin: 16px 0 0 !important;
	font-size: 16.5px;
	line-height: 1.8;
	color: #5c636e;
}
.ntaco-ab-story__text .ntaco-ab-story__p:first-of-type {
	margin-top: 22px !important;
}
.ntaco-ab-story__media {
	position: relative;
}
.ntaco-ab-story__img {
	margin: 0 !important;
}
.ntaco-ab-story__img img {
	width: 100%;
	height: 480px;
	object-fit: cover;
	border-radius: 22px;
	box-shadow: 0 18px 44px rgba(28, 31, 38, 0.12);
	display: block;
}
.ntaco-ab-story__badge {
	position: absolute;
	left: -18px;
	bottom: -18px;
	background: #14202f;
	border-radius: 18px;
	padding: 22px 26px;
	box-shadow: 0 18px 40px rgba(28, 31, 38, 0.25);
}
.ntaco-ab-story__year {
	margin: 0 !important;
	font-size: 38px;
	font-weight: 800;
	line-height: 1;
	color: #e08a72;
}
.ntaco-ab-story__yeartxt {
	margin: 6px 0 0 !important;
	font-size: 13.5px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.7);
}

/* ---- Mission / Vision / Values ---- */
.ntaco-ab-mvv {
	background: #faf8f6;
	border-top: 1px solid #ece7e2;
	border-bottom: 1px solid #ece7e2;
}
.ntaco-ab-mvv__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 80px 40px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 24px;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-card {
	background: #fff;
	border: 1px solid #ece7e2;
	border-radius: 18px;
	padding: 35px 31px;
	box-shadow: 0 12px 32px rgba(28, 31, 38, 0.04);
	margin: 0;
}
.ntaco-ab-card__ico {
	margin: 0 0 22px !important;
	width: 54px;
	height: 54px;
	border-radius: 13px;
	background: #fbf1ed;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.ntaco-ab-card__ico img {
	width: 26px;
	height: 26px;
	display: block;
	max-width: none;
}
.ntaco-ab-card__t {
	margin: 0 !important;
	font-family: "Montserrat", sans-serif;
	font-size: 21px;
	font-weight: 700;
	color: #1c1f26;
}
.ntaco-ab-card__p {
	margin: 12px 0 0 !important;
	font-size: 15px;
	line-height: 1.7;
	color: #6b7079;
}
.ntaco-ab-vals {
	display: flex;
	flex-direction: column;
	gap: 9px;
	margin-top: 14px !important;
}
.ntaco-ab-val {
	margin: 0 !important;
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 14.5px;
	font-weight: 600;
	color: #3a3f47;
}
.ntaco-ab-val__ico {
	width: 15px;
	height: 15px;
	flex-shrink: 0;
}

/* ---- Key stats ---- */
.ntaco-ab-stats {
	background: #fff;
}
.ntaco-ab-stats__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 80px 40px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 28px;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-stat {
	text-align: center;
}
.ntaco-ab-stat__num {
	margin: 0 !important;
	font-size: 48px;
	font-weight: 800;
	color: #b14a38;
	line-height: 1;
}
.ntaco-ab-stat__label {
	margin: 8px 0 0 !important;
	font-size: 15px;
	font-weight: 600;
	color: #7a808b;
}

/* ---- Leadership ---- */
.ntaco-ab-team {
	background: #faf8f6;
	border-top: 1px solid #ece7e2;
	border-bottom: 1px solid #ece7e2;
}
.ntaco-ab-team__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 80px 40px;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-team__head {
	text-align: center;
	max-width: 640px;
	margin: 0 auto 48px !important;
}
.ntaco-ab-team__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.ntaco-ab-member {
	background: #fff;
	border: 1px solid #ece7e2;
	border-radius: 18px;
	box-shadow: 0 12px 32px rgba(28, 31, 38, 0.04);
}
.ntaco-ab-member__ico {
	margin: 0 0 18px !important;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #fbf1ed;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ntaco-ab-member__ico img {
	width: 30px;
	height: 30px;
}
.ntaco-ab-member__body {
	padding: 30px 28px;
}
.ntaco-ab-member__name {
	margin: 0 !important;
	font-family: "Montserrat", sans-serif;
	font-size: 19px;
	font-weight: 700;
	color: #1c1f26;
}
.ntaco-ab-member__role {
	margin: 4px 0 0 !important;
	font-size: 14px;
	font-weight: 600;
	color: #b14a38;
}
.ntaco-ab-member__bio {
	margin: 12px 0 0 !important;
	font-size: 14px;
	line-height: 1.65;
	color: #6b7079;
}

/* ---- Awards / certs ---- */
.ntaco-ab-awards {
	background: #fff;
}
.ntaco-ab-awards__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 72px 40px;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-awards__t {
	margin: 0 0 40px !important;
	font-family: "Montserrat", sans-serif;
	text-align: center;
	font-size: clamp(24px, 2.6vw, 32px);
	font-weight: 800;
	color: #1c1f26;
	letter-spacing: -0.01em;
}
.ntaco-ab-awards__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 18px;
}
.ntaco-ab-badge {
	display: flex;
	align-items: center;
	gap: 9px;
	border: 1px solid #e2ddd8;
	border-radius: 10px;
	padding: 15px 22px;
}
.ntaco-ab-badge__ico {
	margin: 0 !important;
	line-height: 0;
	flex-shrink: 0;
}
.ntaco-ab-badge__ico img {
	width: 17px;
	height: 17px;
	display: block;
}
.ntaco-ab-badge__t {
	margin: 0 !important;
	color: #7a808b;
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

/* ---- CTA banner ---- */
.ntaco-ab-cta {
	background: #14202f;
	position: relative;
	overflow: hidden;
}
.ntaco-ab-cta__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 72px 40px;
	text-align: center;
	font-family: "Montserrat", sans-serif;
}
.ntaco-ab-cta__t {
	margin: 0 auto !important;
	max-width: 640px;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(26px, 2.8vw, 36px);
	line-height: 1.2;
	font-weight: 800;
	color: #fff;
}
.ntaco-ab-cta__btns {
	justify-content: center;
	gap: 14px;
	margin-top: 32px;
}
.ntaco-ab-cta__primary .wp-block-button__link {
	background: #b14a38;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	padding: 16px 30px;
	border-radius: 11px;
	box-shadow: 0 14px 34px rgba(177, 74, 56, 0.4);
}
.ntaco-ab-cta__primary .wp-block-button__link:hover {
	background: #c25845;
}
.ntaco-ab-cta__ghost .wp-block-button__link {
	background: transparent;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	padding: 16px 29px;
	border-radius: 11px;
	border: 1px solid rgba(255, 255, 255, 0.5);
}
.ntaco-ab-cta__ghost .wp-block-button__link:hover {
	background: #fff;
	color: #14202f;
	border-color: #fff;
}

/* ---- About responsive ---- */
@media (max-width: 1023px) {
	/* Hero: 0 side padding on tablet/mobile */
	.ntaco-ab-hero__inner {
		padding-left: 0;
		padding-right: 0;
	}
	/* All other sections: 16px side padding */
	.ntaco-ab-story__inner,
	.ntaco-ab-mvv__inner,
	.ntaco-ab-stats__inner,
	.ntaco-ab-team__inner,
	.ntaco-ab-awards__inner,
	.ntaco-ab-cta__inner {
		padding-left: 16px;
		padding-right: 16px;
	}
	/* All sections: unified 48px vertical padding */
	.ntaco-ab-hero__inner,
	.ntaco-ab-story__inner,
	.ntaco-ab-mvv__inner,
	.ntaco-ab-stats__inner,
	.ntaco-ab-team__inner,
	.ntaco-ab-awards__inner,
	.ntaco-ab-cta__inner {
		padding-top: 48px;
		padding-bottom: 48px;
	}
	.ntaco-ab-story__inner {
		gap: 30px;
	}
	.ntaco-ab-story__year {
		font-size: 30px;
		line-height: 38px;
	}
	.ntaco-ab-card {
		padding: 25px;
	}
	.ntaco-ab-stat__num {
		font-size: 40px;
		line-height: 1;
	}
	.ntaco-ab-team__grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.ntaco-ab-team__head,
	.ntaco-ab-awards__t {
		margin-bottom: 30px !important;
	}
	.ntaco-ab-member__body {
		padding: 25px;
	}
}
@media (max-width: 767px) {
	.ntaco-ab-story__inner {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	/* Fix badge: align with section padding, smaller padding on mobile */
	.ntaco-ab-story__badge {
		left: 0;
		bottom: -12px;
		padding: 16px;
	}
	.ntaco-ab-story__media {
		padding-bottom: 26px;
	}
	.ntaco-ab-story__p {
		font-size: 14px !important;
		line-height: 20px !important;
	}
	.ntaco-ab-story__year {
		font-size: 26px;
		line-height: 34px;
	}
	.ntaco-ab-story__img img {
		height: 320px;
	}
	.ntaco-ab-mvv__inner {
		grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
	}
	.ntaco-ab-card {
		padding: 16px;
	}
	.ntaco-ab-card__t {
		font-size: 20px;
	}
	.ntaco-ab-stats__inner {
		grid-template-columns: repeat(2, 1fr);
		gap: 32px 16px;
	}
	.ntaco-ab-stat__num {
		font-size: 30px;
		line-height: 1;
	}
	.ntaco-ab-team__grid {
		grid-template-columns: 1fr;
	}
	.ntaco-ab-team__head,
	.ntaco-ab-awards__t {
		margin-bottom: 20px !important;
	}
	.ntaco-ab-member__body {
		padding: 20px;
	}
	.ntaco-ab-cta__btns .wp-block-button {
		width: 100%;
	}
	.ntaco-ab-cta__btns .wp-block-button__link {
		display: block;
		text-align: center;
	}
	/* Primary CTA button: 48px height on mobile */
	.ntaco-ab-cta__primary .wp-block-button__link {
		height: 48px;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
	}
}
/* Stats: single column on small phones (390px) */
@media (max-width: 390px) {
	.ntaco-ab-stats__inner {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}
@media (max-width: 479px) {
	.ntaco-ab-awards__row {
		gap: 10px;
	}
	.ntaco-ab-badge {
		padding: 12px 16px;
	}
	.ntaco-ab-badge__t {
		font-size: 13px;
		white-space: normal;
	}
}

/* About page: flush full-bleed main — no vertical margin (removed in template)
   and no global side padding. Zeroing the root-padding vars also zeroes the
   alignfull negative-margin breakout, so sections stay full width (no overflow). */
.ntaco-flush-main {
	--wp--style--root--padding-left: 0px;
	--wp--style--root--padding-right: 0px;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/* The post-content block inside ntaco-flush-main uses is-layout-constrained which
   caps child width to --wp--style--global--content-size. Override to full width. */
.ntaco-flush-main .wp-block-post-content {
	max-width: 100% !important;
}
.ntaco-flush-main .wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: 100% !important;
}
/* Remove the 1.5rem WP global layout margin above the footer */
footer.wp-block-template-part {
	margin-block-start: 0 !important;
}

/* ============================================================
   Contact Page  (ntaco-ct-*)
   ============================================================ */

/* --- Hero --- */
.ntaco-ct-hero .wp-block-cover__background {
    background: linear-gradient(100deg,rgba(13,20,30,.92) 0%,rgba(13,20,30,.74) 55%,rgba(13,20,30,.50) 100%) !important;
    opacity: 1 !important;
}
.ntaco-ct-hero__inner {
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding: 64px 40px;
    width: 100%;
}
.ntaco-ct-hero__breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px !important;
}
.ntaco-ct-hero__breadcrumb a {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 13.5px;
    color: rgba(255,255,255,.6);
    text-decoration: none;
}
.ntaco-ct-sep { color: #b14a38; font-weight: 600; font-size: 13.5px; }
.ntaco-ct-current {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 13.5px;
    color: #fff;
}
.ntaco-ct-hero__title.wp-block-heading {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    font-size: 52px !important;
    line-height: 1.05 !important;
    letter-spacing: -1.04px;
    color: #fff !important;
    margin-top: 0 !important;
    margin-bottom: 12px !important;
}
.ntaco-ct-hero__sub {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 19px;
    line-height: 1.6;
    color: rgba(255,255,255,.82);
    margin: 0 !important;
}

/* --- Contact section --- */
.ntaco-ct-contact { background: #fff; }
.ntaco-ct-contact__inner {
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding: 80px 40px;
}
.ntaco-ct-cols {
    display: grid !important;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
    gap: 56px;
    align-items: start;
}
.ntaco-ct-sec-label {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 1.82px;
    text-transform: uppercase;
    color: #b14a38;
    margin-top: 0 !important;
    margin-bottom: 13px !important;
}
.ntaco-ct-info__title.wp-block-heading {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    font-size: 34px !important;
    line-height: 1.15 !important;
    letter-spacing: -.68px;
    color: #1c1f26 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.ntaco-ct-info__items {
    display: flex !important;
    flex-direction: column;
    gap: 22px;
    padding-top: 13px;
    margin-top: 0 !important;
}
.ntaco-ct-info > *,
.ntaco-ct-info__items > * { margin-block-start: 0 !important; }
.ntaco-ct-info__item {
    display: flex !important;
    align-items: flex-start;
    gap: 15px;
    margin: 0 !important;
}
.ntaco-ct-info__ico {
    flex-shrink: 0;
    width: 46px !important;
    height: 46px !important;
    border-radius: 12px;
    background-color: #fbf1ed;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 20px;
}
.ntaco-ct-info__ico--addr {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
}
.ntaco-ct-info__ico--phone {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07A19.5 19.5 0 013.07 9.81 19.79 19.79 0 01.22 1.18 2 2 0 012.18.13h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L6.91 7.91a16 16 0 006.41 6.41l1.14-1.14a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 16.92z'/%3E%3C/svg%3E");
}
.ntaco-ct-info__ico--email {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E");
}
.ntaco-ct-info__ico--hours {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolyline points='12 6 12 12 16 14'/%3E%3C/svg%3E");
}
.ntaco-ct-info__item > * { margin-block-start: 0 !important; }
.ntaco-ct-info__detail {
    display: flex !important;
    flex-direction: column;
    gap: 2px;
    margin: 0 !important;
    padding: 0 !important;
}
.ntaco-ct-info__name {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #1c1f26;
    margin: 0 !important;
    line-height: 1.4;
}
.ntaco-ct-info__val {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 14.5px;
    color: #6b7079;
    margin: 0 !important;
    line-height: 1.6;
}
.ntaco-ct-info__val a { color: #6b7079; text-decoration: none; }
.ntaco-ct-info__val a:hover { color: #b14a38; }
.ntaco-ct-maps-link { padding-top: 16px; margin: 0 !important; }
.ntaco-ct-maps-link a {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 15px;
    color: #b14a38;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.ntaco-ct-maps-link a::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

/* --- Form Card --- */
.ntaco-ct-form-card {
    background: #fff;
    border: 1px solid #ece7e2;
    border-radius: 20px;
    box-shadow: 0 16px 20px rgba(28,31,38,.08);
    padding: 35px !important;
}
.ntaco-ct-form-card__title.wp-block-heading {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    font-size: 21px !important;
    color: #1c1f26 !important;
    margin: 0 0 20px !important;
    text-align: center;
}

/* --- CF7 Form Styling --- */
.ntaco-ct-form-card .wpcf7-form { margin: 0; }
.ntaco-cf7-row { margin-bottom: 14px; }
.ntaco-cf7-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 14px;
}
.ntaco-cf7-col { display: flex; flex-direction: column; }
.ntaco-ct-form-card .wpcf7-text,
.ntaco-ct-form-card .wpcf7-email,
.ntaco-ct-form-card .wpcf7-tel,
.ntaco-ct-form-card .wpcf7-number,
.ntaco-ct-form-card .wpcf7-select,
.ntaco-ct-form-card .wpcf7-textarea {
    font-family: "Montserrat", sans-serif;
    font-size: 14.5px;
    color: #1c1f26;
    background: #fff;
    border: 1px solid #e6e1dc;
    border-radius: 10px;
    padding: 14px 16px;
    width: 100%;
    box-sizing: border-box;
    outline: none;
    transition: border-color .2s;
    -webkit-appearance: none;
    appearance: none;
}
.ntaco-ct-form-card .wpcf7-text::placeholder,
.ntaco-ct-form-card .wpcf7-email::placeholder,
.ntaco-ct-form-card .wpcf7-tel::placeholder,
.ntaco-ct-form-card .wpcf7-textarea::placeholder { color: #757575; }
.ntaco-ct-form-card .wpcf7-text:focus,
.ntaco-ct-form-card .wpcf7-email:focus,
.ntaco-ct-form-card .wpcf7-tel:focus,
.ntaco-ct-form-card .wpcf7-select:focus,
.ntaco-ct-form-card .wpcf7-textarea:focus { border-color: #b14a38; }
.ntaco-ct-form-card .wpcf7-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231c1f26' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 40px;
    cursor: pointer;
}
.ntaco-ct-form-card .wpcf7-textarea { height: 130px; resize: none; }
.ntaco-cf7-acceptance {
    display: flex;
    gap: 10px;
    font-size: 13px;
    font-family: 'Montserrat';
    color: #7A808B;
    line-height: 19.5px;
    margin-bottom: 16px;
}
.ntaco-ct-form-card .wpcf7-acceptance {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.ntaco-ct-form-card .wpcf7-acceptance input[type="checkbox"] {
    width: 17px;
    height: 17px;
    flex-shrink: 0;
    margin-top: 3px;
    accent-color: #b14a38;
    cursor: pointer;
}
.ntaco-ct-form-card .wpcf7-acceptance .wpcf7-list-item-label,
.ntaco-cf7-acceptance span {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 13px;
    color: #7a808b;
    line-height: 1.5;
}
.ntaco-cf7-submit { margin-top: 4px; }
.ntaco-ct-form-card input[type="submit"],
.ntaco-ct-form-card .wpcf7-submit {
    width: 100%;
    background: #b14a38;
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.25;
    padding: 16px 24px;
    border: none;
    border-radius: 11px;
    cursor: pointer;
    transition: background .2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.ntaco-ct-form-card input[type="submit"]:hover,
.ntaco-ct-form-card .wpcf7-submit:hover { background: #9a3e2f; }
.ntaco-ct-form-card .wpcf7-response-output {
    font-family: "Montserrat", sans-serif;
    font-size: 13.5px;
    border-radius: 8px;
    margin-top: 12px;
    padding: 10px 14px;
}
.wpcf7-spinner { display: none; }

/* --- Map Section --- */
.ntaco-ct-map-sec {
    background: #faf8f6;
    border-top: 1px solid #ece7e2;
}
.ntaco-ct-map-sec__inner {
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding: 72px 40px;
}
.ntaco-ct-map-sec__head { text-align: center; margin-bottom: 18px !important; }
.ntaco-ct-map-sec__label {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 1.82px;
    text-transform: uppercase;
    color: #b14a38;
    margin: 0 0 12px !important;
    max-width: 100% !important;
}
.ntaco-ct-map-sec__title.wp-block-heading {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    font-size: 32px !important;
    letter-spacing: -.32px;
    color: #1c1f26 !important;
    margin: 0 !important;
}
.ntaco-ct-map-embed {
    border: 1px solid #ece7e2;
    border-radius: 20px;
    box-shadow: 0 12px 32px rgba(28,31,38,.06);
    overflow: hidden;
    height: 454px;
    margin-bottom: 18px !important;
}
.ntaco-ct-map-embed iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}
.ntaco-ct-map-address {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 15px;
    color: #5c636e;
    margin: 0 !important;
    max-width: 100% !important;
}
.ntaco-ct-map-address::before {
    content: "";
    display: inline-block;
    width: 17px;
    height: 17px;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

/* --- Contact Cards Section --- */
.ntaco-ct-cards-sec { background: #fff; }
.ntaco-ct-cards-sec__inner {
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding: 72px 40px;
}
.ntaco-ct-cards-grid {
    display: grid !important;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
    align-items: stretch !important;
}
.ntaco-ct-cards-grid > * { margin-block-start: 0 !important; }
.ntaco-ct-card {
    background: #faf8f6;
    border: 1px solid #ece7e2;
    border-radius: 18px;
    padding: 37px 29px !important;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    transition: box-shadow .2s, transform .2s;
    height: 100%;
    box-sizing: border-box;
}
.ntaco-ct-card > * { margin-block-start: 0 !important; }
.ntaco-ct-card:hover {
    box-shadow: 0 8px 24px rgba(28,31,38,.10);
    transform: translateY(-2px);
}
.ntaco-ct-card__ico {
    width: 58px !important;
    height: 58px !important;
    border-radius: 14px;
    background-color: #fbf1ed;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 26px 26px;
    margin-bottom: 18px !important;
}
.ntaco-ct-card__ico--phone {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07A19.5 19.5 0 013.07 9.81 19.79 19.79 0 01.22 1.18 2 2 0 012.18.13h3a2 2 0 012 1.72c.127.96.361 1.903.7 2.81a2 2 0 01-.45 2.11L6.91 7.91a16 16 0 006.41 6.41l1.14-1.14a2 2 0 012.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0122 16.92z'/%3E%3C/svg%3E");
}
.ntaco-ct-card__ico--email {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 24 24' fill='none' stroke='%23b14a38' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z'/%3E%3Cpolyline points='22,6 12,13 2,6'/%3E%3C/svg%3E");
}
.ntaco-ct-card__ico--whatsapp {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 24 24' fill='%23b14a38'%3E%3Cpath d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z'/%3E%3C/svg%3E");
}
.ntaco-ct-card__title.wp-block-heading {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    color: #1c1f26 !important;
    margin: 0 0 9px !important;
}
.ntaco-ct-card__value {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #6b7079;
    margin: 0 !important;
}
.ntaco-ct-card__value a { color: #6b7079; text-decoration: none; }
.ntaco-ct-card__value a:hover { color: #b14a38; }

.ntaco-ct-contact,
.ntaco-ct-form-card,
.ntaco-ct-map-sec,
.ntaco-ct-cards-sec { margin-top: 0 !important; }

/* --- Contact Responsive --- */
@media (max-width: 1024px) {
    .ntaco-ct-hero__inner,
    .ntaco-ct-contact__inner,
    .ntaco-ct-map-sec__inner,
    .ntaco-ct-cards-sec__inner { padding-left: 16px !important; padding-right: 16px !important; }
    .ntaco-ct-hero__inner { padding-top: 64px !important; padding-bottom: 64px !important; }
    .ntaco-ct-contact__inner { padding-top: 64px !important; padding-bottom: 64px !important; }
    .ntaco-ct-map-sec__inner { padding-top: 64px !important; padding-bottom: 64px !important; }
    .ntaco-ct-cards-sec__inner { padding-top: 64px !important; padding-bottom: 64px !important; }
    .ntaco-ct-cols { grid-template-columns: 1fr !important; gap: 40px; }
    .ntaco-ct-hero__title.wp-block-heading { font-size: 40px !important; }
    .ntaco-ct-cards-grid { grid-template-columns: 1fr 1fr !important; }
    .ntaco-ct-map-sec__title.wp-block-heading { font-size: 26px !important; }
    .ntaco-ct-contact,
    .ntaco-ct-form-card,
    .ntaco-ct-map-sec,
    .ntaco-ct-cards-sec { margin-top: 0 !important; }
    .ntaco-ct-card { padding: 25px !important; }
}
@media (max-width: 767px) {
    .ntaco-ct-hero__inner { padding-top: 48px !important; padding-bottom: 48px !important; }
    .ntaco-ct-contact__inner { padding-top: 48px !important; padding-bottom: 48px !important; }
    .ntaco-ct-map-sec__inner { padding-top: 48px !important; padding-bottom: 48px !important; }
    .ntaco-ct-cards-sec__inner { padding-top: 48px !important; padding-bottom: 48px !important; }
    .ntaco-ct-hero__title.wp-block-heading { font-size: 32px !important; }
    .ntaco-ct-hero__sub { font-size: 16px; }
    .ntaco-ct-info__title.wp-block-heading { font-size: 26px !important; }
    .ntaco-ct-map-embed { height: 320px; }
    .ntaco-ct-map-sec__title.wp-block-heading { font-size: 24px !important; }
    .ntaco-ct-cards-grid { grid-template-columns: 1fr !important; }
    .ntaco-cf7-cols { grid-template-columns: 1fr !important; }
    .ntaco-ct-contact,
    .ntaco-ct-form-card,
    .ntaco-ct-map-sec,
    .ntaco-ct-cards-sec { margin-top: 0 !important; }
    .ntaco-ct-form-card { padding: 16px !important; }
    .ntaco-ct-card { padding: 16px !important; }
}


/* ==========================================
   News Page (ntaco-nw-*)
   ========================================== */

/* --- News Hero --- */
.ntaco-nw-hero {
    background: #14202f;
    margin-top: 0 !important;
}
.ntaco-nw-hero > * { margin-block-start: 0 !important; }
.ntaco-nw-hero__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 40px;
}
.ntaco-nw-hero__inner > * { margin-block-start: 0 !important; }
.ntaco-nw-breadcrumb {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: rgba(255,255,255,0.6);
    margin: 0 0 16px !important;
}
.ntaco-nw-breadcrumb a { color: rgba(255,255,255,0.6); text-decoration: none; }
.ntaco-nw-breadcrumb a:hover { color: #fff; }
.ntaco-nw-hero__title.wp-block-heading {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    font-size: 52px !important;
    color: #fff !important;
    letter-spacing: -1.04px;
    margin: 0 0 16px !important;
    line-height: 1.1;
}
.ntaco-nw-hero__sub {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 18px;
    color: rgba(255,255,255,0.8);
    margin: 0 !important;
}

/* --- Featured Section --- */
.ntaco-nw-featured-sec {
    background: #fff;
    margin-top: 0 !important;
}
.ntaco-nw-featured-sec > * { margin-block-start: 0 !important; }
.ntaco-nw-featured-sec__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 64px 40px;
}
.ntaco-nw-featured-sec__inner > * { margin-block-start: 0 !important; }
.ntaco-nw-featured-label {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 13px;
    letter-spacing: 1.82px;
    text-transform: uppercase;
    color: #b14a38;
    margin: 0 0 24px !important;
}
.ntaco-nw-featured-card {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    border: 1px solid #ece7e2;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0px 16px 40px rgba(28,31,38,0.07);
    min-height: 350px;
}
.ntaco-nw-featured-card > * { margin-block-start: 0 !important; }
.ntaco-nw-featured-query .wp-block-post-template {
    display: block !important;
    list-style: none;
    padding: 0;
    margin: 0;
}
.ntaco-nw-featured-query .wp-block-post {
    display: block !important;
    margin: 0;
}
.wp-block-post-featured-image.ntaco-nw-featured-img {
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
}
.wp-block-post-featured-image.ntaco-nw-featured-img a {
    display: block;
    height: 100%;
    min-height: 350px;
}
.wp-block-post-featured-image.ntaco-nw-featured-img img {
    width: 100%;
    height: 100%;
    min-height: 350px;
    display: block;
    object-fit: cover;
}
.ntaco-nw-featured-content {
    padding: 40px;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
}
.ntaco-nw-featured-content > * { margin-block-start: 0 !important; }
.ntaco-nw-cat-badge {
    display: inline-block;
    background: #fbf1ed;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.48px;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 4px;
    margin: 0 0 12px !important;
    width: fit-content;
}
.ntaco-nw-cat-badge a { color: #973c2c !important; text-decoration: none; }
.ntaco-nw-featured-date {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 13px;
    color: #9aa0a8;
    margin: 0 0 12px !important;
}
.ntaco-nw-featured-title.wp-block-post-title {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 800 !important;
    font-size: 32px !important;
    letter-spacing: -0.32px;
    color: #1c1f26 !important;
    margin: 0 0 14px !important;
    line-height: 1.2;
}
.ntaco-nw-featured-title.wp-block-post-title a { color: #1c1f26 !important; text-decoration: none; }
.ntaco-nw-featured-title.wp-block-post-title a:hover { color: #b14a38 !important; }
.ntaco-nw-featured-excerpt {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #5c636e;
    margin: 0 0 20px !important;
    line-height: 1.6;
}
.ntaco-nw-featured-excerpt p { margin: 0 !important; }
.wp-block-read-more.ntaco-nw-read-more {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 15px;
    color: #b14a38 !important;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 !important;
}
.wp-block-read-more.ntaco-nw-read-more:hover { text-decoration: underline; }

/* --- Filter + Grid Section --- */
.ntaco-nw-grid-sec {
    background: #f9f7f5;
    margin-top: 0 !important;
}
.ntaco-nw-grid-sec > * { margin-block-start: 0 !important; }
.ntaco-nw-grid-sec__inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 64px 40px;
}
.ntaco-nw-grid-sec__inner > * { margin-block-start: 0 !important; }
.ntaco-nw-filter-bar {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    list-style: none;
    padding: 0;
}
.ntaco-nw-filter-bar > * { margin-block-start: 0 !important; }
.ntaco-nw-filter-pill {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 14px;
    padding: 8px 18px;
    border-radius: 999px;
    border: 1.5px solid #e2ddd8;
    background: #fff;
    color: #6b7079 !important;
    text-decoration: none !important;
    display: inline-block;
    transition: all .2s;
    margin: 0 !important;
    line-height: 1.5;
    cursor: pointer;
}
.ntaco-nw-filter-pill:hover {
    background: #b14a38;
    border-color: #b14a38;
    color: #fff !important;
}
.ntaco-nw-filter-pill--active {
    background: #b14a38 !important;
    border-color: #b14a38 !important;
    color: #fff !important;
}
.ntaco-nw-filter-pill a { color: inherit !important; text-decoration: none !important; }
.ntaco-nw-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: stretch !important;
    list-style: none;
    padding: 0;
    margin: 0;
}
.ntaco-nw-grid > li {
    margin-block-start: 0 !important;
    display: flex;
    flex-direction: column;
}
.ntaco-nw-card {
    background: #fff;
    border: 1px solid #ece7e2;
    border-radius: 20px;
    overflow: hidden;
    display: flex !important;
    flex-direction: column;
    flex: 1;
    transition: box-shadow .2s, transform .2s;
}
.ntaco-nw-card > * { margin-block-start: 0 !important; }
.ntaco-nw-card:hover {
    box-shadow: 0 8px 24px rgba(28,31,38,.10);
    transform: translateY(-2px);
}
.wp-block-post-featured-image.ntaco-nw-card__img {
    height: 200px !important;
    margin: 0 !important;
    overflow: hidden;
    flex-shrink: 0;
}
.wp-block-post-featured-image.ntaco-nw-card__img a {
    display: block;
    height: 200px;
    overflow: hidden;
}
.wp-block-post-featured-image.ntaco-nw-card__img img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
}
.ntaco-nw-card__body {
    padding: 20px;
    display: flex !important;
    flex-direction: column;
    flex: 1;
}
.ntaco-nw-card__body > * { margin-block-start: 0 !important; }
.ntaco-nw-card__cat {
    display: inline-block;
    background: rgba(20,32,47,0.88);
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 11.5px;
    letter-spacing: 0.46px;
    text-transform: uppercase;
    padding: 4px 8px;
    border-radius: 4px;
    margin: 0 0 8px !important;
    width: fit-content;
}
.ntaco-nw-card__cat a { color: #fff !important; text-decoration: none; }
.ntaco-nw-card__date {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 13px;
    color: #9aa0a8;
    margin: 0 0 8px !important;
}
.ntaco-nw-card__title.wp-block-post-title {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 700 !important;
    font-size: 18.5px !important;
    color: #1c1f26 !important;
    margin: 0 0 10px !important;
    line-height: 1.3;
}
.ntaco-nw-card__title.wp-block-post-title a { color: #1c1f26 !important; text-decoration: none; }
.ntaco-nw-card__title.wp-block-post-title a:hover { color: #b14a38 !important; }
.ntaco-nw-card__excerpt {
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 14px;
    color: #6b7079;
    margin: 0 0 16px !important;
    line-height: 1.6;
    flex: 1;
}
.ntaco-nw-card__excerpt p { margin: 0 !important; }
.wp-block-read-more.ntaco-nw-card__link {
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #b14a38 !important;
    text-decoration: none;
    margin: 0 !important;
    display: inline-block;
}
.wp-block-read-more.ntaco-nw-card__link:hover { text-decoration: underline; }
.wp-block-query-pagination.ntaco-nw-pagination {
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 48px !important;
    flex-wrap: wrap;
}
.wp-block-query-pagination.ntaco-nw-pagination > * { margin-block-start: 0 !important; }
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-numbers a,
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-numbers span.page-numbers,
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-next a,
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-previous a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    border-radius: 9px;
    border: 1.5px solid #e2ddd8;
    background: #fff;
    color: #6b7079 !important;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all .2s;
    padding: 0 12px;
}
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-numbers .current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    border-radius: 9px;
    background: #b14a38;
    border: 1.5px solid #b14a38;
    color: #fff !important;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 14px;
    padding: 0 12px;
}
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-numbers a:hover,
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-next a:hover,
.wp-block-query-pagination.ntaco-nw-pagination .wp-block-query-pagination-previous a:hover {
    background: #f9f7f5;
    border-color: #b14a38;
    color: #b14a38 !important;
}

/* --- News Responsive --- */
@media (max-width: 1024px) {
    .ntaco-nw-hero__inner { padding: 64px 16px; }
    .ntaco-nw-featured-sec__inner { padding: 64px 16px; }
    .ntaco-nw-grid-sec__inner { padding: 64px 16px; }
    .ntaco-nw-hero__title.wp-block-heading { font-size: 40px !important; }
    .ntaco-nw-featured-card { grid-template-columns: 1fr; }
    .wp-block-post-featured-image.ntaco-nw-featured-img a,
    .wp-block-post-featured-image.ntaco-nw-featured-img img { min-height: 260px; }
    .ntaco-nw-featured-content { padding: 28px; }
    .ntaco-nw-featured-title.wp-block-post-title { font-size: 26px !important; }
    .ntaco-nw-grid { grid-template-columns: 1fr 1fr !important; }
    .ntaco-nw-hero,
    .ntaco-nw-featured-sec,
    .ntaco-nw-grid-sec { margin-top: 0 !important; }
}
@media (max-width: 767px) {
    .ntaco-nw-hero__inner { padding: 48px 16px; }
    .ntaco-nw-featured-sec__inner { padding: 48px 16px; }
    .ntaco-nw-grid-sec__inner { padding: 48px 16px; }
    .ntaco-nw-hero__title.wp-block-heading { font-size: 32px !important; }
    .ntaco-nw-hero__sub { font-size: 16px; }
    .ntaco-nw-featured-title.wp-block-post-title { font-size: 22px !important; }
    .ntaco-nw-featured-content { padding: 20px; }
    .ntaco-nw-grid { grid-template-columns: 1fr !important; }
    .ntaco-nw-hero,
    .ntaco-nw-featured-sec,
    .ntaco-nw-grid-sec { margin-top: 0 !important; }
}


/* --- News Hero (wp:cover) additions --- */
.ntaco-nw-hero.wp-block-cover {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.ntaco-nw-hero .wp-block-cover__inner-container {
    width: 100%;
    max-width: 100%;
    padding: 0;
}
/* --- Filter row (pills + search side by side) --- */
.ntaco-nw-filter-row {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 40px !important;
}
.ntaco-nw-filter-row > * { margin-block-start: 0 !important; }
/* --- Search block --- */
.wp-block-search.ntaco-nw-search {
    flex-shrink: 0;
    margin: 0 !important;
}
.ntaco-nw-search .wp-block-search__inside-wrapper {
    display: flex !important;
    align-items: center;
    border: 1.5px solid #e2ddd8 !important;
    border-radius: 10px !important;
    background: #fff;
    overflow: hidden;
    box-shadow: none !important;
    gap: 0;
}
.ntaco-nw-search .wp-block-search__input {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    padding: 9px 14px !important;
    font-family: "Montserrat", sans-serif;
    font-size: 14px !important;
    color: #1c1f26;
    background: transparent;
    min-width: 200px;
    line-height: 1.5;
    margin: 0 !important;
    border-radius: 0 !important;
}
.ntaco-nw-search .wp-block-search__input::placeholder { color: #9aa0a8; }
.ntaco-nw-search .wp-block-search__button {
    border: none !important;
    border-left: 1px solid #e2ddd8 !important;
    background: transparent !important;
    padding: 9px 13px !important;
    cursor: pointer;
    color: #9aa0a8;
    display: flex !important;
    align-items: center;
    box-shadow: none !important;
    border-radius: 0 !important;
    transition: color .2s;
}
.ntaco-nw-search .wp-block-search__button:hover { color: #b14a38; }
@media (max-width: 767px) {
    .ntaco-nw-filter-row { flex-direction: column; align-items: stretch; }
    .ntaco-nw-search .wp-block-search__input { min-width: 0; width: 100%; }
}
