/* AromaNish Corporate — main stylesheet
   Design system driven by CSS custom properties (see inc/customizer.php
   for the admin-editable color layer). System font stack — no webfont
   request on the critical path. */

:root{
	--anc-green:#14532D;
	--anc-blue:#1D4ED8;
	--anc-charcoal:#111827;
	--anc-slate:#475569;
	--anc-bg:#F8FAFC;
	--anc-white:#FFFFFF;
	--anc-border:#E2E8F0;

	--anc-font: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

	--anc-h1: clamp(2rem, 1.5rem + 2vw, 4rem);
	--anc-h2: clamp(1.75rem, 1.4rem + 1.4vw, 3rem);
	--anc-h3: clamp(1.4rem, 1.2rem + 0.8vw, 2rem);
	--anc-h4: clamp(1.15rem, 1.05rem + 0.4vw, 1.5rem);
	--anc-body: 1.0625rem;

	--anc-content-width: 720px;
	--anc-container-width: 1240px;
	--anc-radius: 6px;
	--anc-space: 1.25rem;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){
	html{ scroll-behavior:auto; }
	*,*::before,*::after{ animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; }
}

body{
	margin:0;
	font-family:var(--anc-font);
	font-size:var(--anc-body);
	line-height:1.65;
	color:var(--anc-charcoal);
	background:var(--anc-white);
}

img{ max-width:100%; height:auto; display:block; }
a{ color:var(--anc-blue); text-decoration:underline; text-underline-offset:2px; }
a:hover{ text-decoration:none; }

h1,h2,h3,h4{ line-height:1.2; font-weight:700; color:var(--anc-charcoal); margin:0 0 0.6em; }
h1{ font-size:var(--anc-h1); }
h2{ font-size:var(--anc-h2); }
h3{ font-size:var(--anc-h3); }
h4{ font-size:var(--anc-h4); }
p{ margin:0 0 1.2em; }

/* Accessibility utilities */
.screen-reader-text{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); white-space:nowrap; }
.anc-skip-link{ position:absolute; left:-999px; top:0; background:var(--anc-charcoal); color:#fff; padding:0.75em 1.25em; z-index:10000; }
.anc-skip-link:focus{ left:1rem; top:1rem; }
:focus-visible{ outline:3px solid var(--anc-blue); outline-offset:2px; }

.anc-container{ max-width:var(--anc-container-width); margin-inline:auto; padding-inline:1.25rem; }
.anc-section{ padding-block:clamp(2.5rem, 4vw, 5rem); }
.anc-section-alt{ background:var(--anc-bg); }

/* Header */
.anc-site-header{ position:sticky; top:0; z-index:100; background:rgba(255,255,255,0.96); backdrop-filter:saturate(150%) blur(6px); border-bottom:1px solid var(--anc-border); }
.anc-header-inner{ display:flex; align-items:center; gap:1.5rem; padding-block:0.75rem; }
.anc-site-title{ font-weight:800; font-size:1.25rem; color:var(--anc-charcoal); text-decoration:none; }
.anc-branding{ margin-right:auto; }
.anc-nav-toggle{ display:none; background:none; border:1px solid var(--anc-border); border-radius:var(--anc-radius); padding:0.5rem; cursor:pointer; }
.anc-menu{ display:flex; gap:1.5rem; list-style:none; margin:0; padding:0; }
.anc-menu a{ color:var(--anc-charcoal); text-decoration:none; font-weight:500; }
.anc-menu a:hover, .anc-menu a[aria-current="page"]{ color:var(--anc-blue); }
.anc-menu ul{ list-style:none; }
.anc-menu-item-has-children{ position:relative; }
.anc-submenu{ display:none; position:absolute; top:100%; left:0; min-width:220px; background:var(--anc-white); border:1px solid var(--anc-border); border-radius:var(--anc-radius); box-shadow:0 8px 24px rgba(17,24,39,0.08); padding:0.5rem 0; margin:0; z-index:50; }
.anc-menu-item-has-children:hover > .anc-submenu,
.anc-menu-item-has-children:focus-within > .anc-submenu,
.anc-menu-item-has-children.is-open > .anc-submenu{ display:block; }
.anc-submenu .anc-menu-link{ display:block; padding:0.6rem 1.1rem; white-space:nowrap; }
.anc-submenu .anc-submenu{ top:0; left:100%; }
.anc-header-utility{ display:flex; align-items:center; gap:1rem; }
.anc-search-form input{ border:1px solid var(--anc-border); border-radius:var(--anc-radius); padding:0.45rem 0.75rem; font-family:inherit; }

/* Buttons */
.anc-btn{ display:inline-block; padding:0.75rem 1.5rem; border-radius:var(--anc-radius); font-weight:600; text-decoration:none; border:2px solid transparent; cursor:pointer; font-family:inherit; font-size:1rem; }
.anc-btn-primary{ background:var(--anc-green); color:#fff; }
.anc-btn-primary:hover{ background:#0f3f22; color:#fff; }
.anc-btn-secondary{ background:transparent; color:var(--anc-charcoal); border-color:var(--anc-border); }
.anc-btn-secondary:hover{ border-color:var(--anc-charcoal); }
.anc-btn-small{ padding:0.5rem 1rem; font-size:0.9rem; }

/* Hero */
.anc-hero{ padding-block:clamp(3rem, 6vw, 6rem) clamp(2rem, 4vw, 4rem); }
.anc-hero-inner{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:3rem; align-items:center; }
.anc-hero-sub{ max-width:56ch; color:var(--anc-slate); font-size:1.15rem; }
.anc-hero-ctas{ display:flex; gap:1rem; flex-wrap:wrap; margin-top:1.5rem; }
.anc-hero-media img{ border-radius:var(--anc-radius); }

/* Grids & cards */
.anc-grid{ display:grid; gap:1.75rem; }
.anc-grid-3{ grid-template-columns:repeat(3, 1fr); }
.anc-grid-6{ grid-template-columns:repeat(6, 1fr); }
.anc-capability-card{ border:1px solid var(--anc-border); border-radius:var(--anc-radius); padding:1.5rem 1.25rem; }
.anc-capability-card h3{ font-size:1.05rem; margin:0; }

.anc-card{ border:1px solid var(--anc-border); border-radius:var(--anc-radius); overflow:hidden; display:flex; flex-direction:column; }
.anc-card-media img{ width:100%; aspect-ratio:16/10; object-fit:cover; }
.anc-card-body{ padding:1.1rem 1.25rem 1.4rem; }
.anc-card-eyebrow{ display:inline-block; font-size:0.75rem; text-transform:uppercase; letter-spacing:0.06em; color:var(--anc-blue); font-weight:700; margin-bottom:0.4rem; }
.anc-card-title{ font-size:1.15rem; margin:0 0 0.5rem; }
.anc-card-title a{ color:var(--anc-charcoal); text-decoration:none; }
.anc-card-title a:hover{ color:var(--anc-blue); }
.anc-card-excerpt{ color:var(--anc-slate); font-size:0.95rem; }
.anc-card-date{ color:var(--anc-slate); font-size:0.8rem; margin:0; }

.anc-why-list{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; list-style:none; padding:0; margin:0; }
.anc-why-list li{ border-left:3px solid var(--anc-green); padding:0.5rem 0 0.5rem 1rem; font-weight:600; }

.anc-model-flow{ font-size:1.1rem; font-weight:600; color:var(--anc-slate); }

/* Single/page content */
.anc-page-wrap, .anc-single-wrap, .anc-archive-wrap{ padding-block:2.5rem 4rem; }
.anc-entry-content, .anc-single-page .anc-entry-content{ max-width:var(--anc-content-width); font-size:1.05rem; }
.anc-entry-content h2, .anc-entry-content h3{ margin-top:1.6em; }
.anc-entry-content img{ border-radius:var(--anc-radius); }
.anc-featured-image img{ width:100%; border-radius:var(--anc-radius); }
.anc-dates-line{ color:var(--anc-slate); font-size:0.9rem; }
.anc-content-type-eyebrow{ display:inline-block; text-transform:uppercase; letter-spacing:0.06em; font-size:0.8rem; font-weight:700; color:var(--anc-green); }
.anc-sponsored-badge, .anc-sponsored-notice{ display:inline-block; background:#FEF3C7; color:#92400E; padding:0.4em 0.9em; border-radius:var(--anc-radius); font-size:0.85rem; font-weight:600; }
.anc-taxonomy-line{ display:flex; gap:0.5rem; flex-wrap:wrap; }
.anc-tag{ background:var(--anc-bg); border:1px solid var(--anc-border); border-radius:999px; padding:0.3em 0.9em; font-size:0.85rem; text-decoration:none; color:var(--anc-charcoal); }

/* Author box */
.anc-author-box{ display:flex; gap:1.25rem; border:1px solid var(--anc-border); border-radius:var(--anc-radius); padding:1.5rem; margin-block:2rem; max-width:var(--anc-content-width); }
.anc-author-avatar{ border-radius:50%; }
.anc-author-name{ font-weight:700; margin:0; }
.anc-author-title{ display:block; color:var(--anc-slate); font-weight:400; font-size:0.9rem; }
.anc-author-meta{ list-style:none; padding:0; margin:0.5rem 0; color:var(--anc-slate); font-size:0.9rem; }
.anc-author-links a{ margin-right:0.75rem; }

/* Social share */
.anc-social-share{ display:flex; gap:0.6rem; flex-wrap:wrap; margin-block:1.5rem; }
.anc-share-link{ border:1px solid var(--anc-border); border-radius:999px; padding:0.4em 1em; font-size:0.85rem; text-decoration:none; color:var(--anc-charcoal); background:var(--anc-white); cursor:pointer; font-family:inherit; }

/* Lead form */
.anc-lead-form{ max-width:640px; display:grid; gap:0.9rem; }
.anc-field label{ display:block; font-weight:600; margin-bottom:0.3rem; }
.anc-field input, .anc-field select, .anc-field textarea{ width:100%; padding:0.65rem 0.8rem; border:1px solid var(--anc-border); border-radius:var(--anc-radius); font-family:inherit; font-size:1rem; }
.anc-hp{ position:absolute; left:-9999px; }
.anc-form-status{ font-weight:600; }
.anc-form-status.is-success{ color:var(--anc-green); }
.anc-form-status.is-error{ color:#B91C1C; }

/* Breadcrumbs */
.anc-breadcrumbs ol{ list-style:none; display:flex; flex-wrap:wrap; gap:0.4rem; padding:0; margin:0 0 1.5rem; font-size:0.85rem; color:var(--anc-slate); }
.anc-breadcrumbs li:not(:last-child)::after{ content:"/"; margin-left:0.4rem; }
.anc-breadcrumbs a{ color:var(--anc-slate); }

/* Empty states */
.anc-empty-state{ grid-column:1/-1; padding:3rem 1rem; text-align:center; color:var(--anc-slate); border:1px dashed var(--anc-border); border-radius:var(--anc-radius); }

/* Verified stat */
.anc-verified-stat{ display:inline-flex; flex-direction:column; border-left:3px solid var(--anc-blue); padding-left:1rem; }
.anc-source-box{ background:var(--anc-bg); border:1px solid var(--anc-border); border-radius:var(--anc-radius); padding:1.25rem 1.5rem; }
.anc-stat-value{ font-size:2rem; font-weight:800; }
.anc-stat-label{ color:var(--anc-slate); font-size:0.9rem; }

/* Book single */
.anc-book-layout{ display:grid; grid-template-columns:260px 1fr; gap:2.5rem; }
.anc-book-meta-list{ display:grid; grid-template-columns:auto 1fr; gap:0.3rem 1rem; margin:1rem 0; }
.anc-book-meta-list dt{ font-weight:700; color:var(--anc-slate); }

/* Team single */
.anc-team-layout{ display:grid; grid-template-columns:160px 1fr; gap:2rem; align-items:start; }
.anc-team-photo img{ border-radius:50%; }

/* Footer */
.anc-site-footer{ background:var(--anc-charcoal); color:#CBD5E1; padding-block:3.5rem 1.5rem; margin-top:3rem; }
.anc-footer-grid{ display:grid; grid-template-columns:1.4fr repeat(4, 1fr); gap:2rem; }
.anc-site-footer h3{ color:#fff; font-size:0.95rem; text-transform:uppercase; letter-spacing:0.05em; }
.anc-site-footer a{ color:#CBD5E1; text-decoration:none; }
.anc-site-footer a:hover{ color:#fff; }
.anc-footer-menu{ list-style:none; padding:0; margin:0; display:grid; gap:0.5rem; }
.anc-footer-social{ list-style:none; display:flex; gap:0.75rem; padding:0; }
.anc-footer-bottom{ border-top:1px solid rgba(255,255,255,0.1); margin-top:2.5rem; padding-top:1.5rem; font-size:0.85rem; }

/* Responsive */
@media (max-width: 1024px){
	.anc-footer-grid{ grid-template-columns:repeat(2,1fr); }
	.anc-grid-6{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 900px){
	.anc-hero-inner{ grid-template-columns:1fr; }
	.anc-grid-3{ grid-template-columns:repeat(2,1fr); }
	.anc-book-layout, .anc-team-layout{ grid-template-columns:1fr; }
}
@media (max-width: 782px){
	.anc-nav-toggle{ display:inline-flex; }
	.anc-primary-nav{ display:none; width:100%; order:3; }
	.anc-primary-nav.is-open{ display:block; }
	.anc-menu{ flex-direction:column; gap:0; border-top:1px solid var(--anc-border); }
	.anc-menu li{ border-bottom:1px solid var(--anc-border); }
	.anc-menu a{ display:block; padding:0.85rem 0; }
	.anc-submenu{ position:static; display:block; box-shadow:none; border:none; padding-left:1rem; }
	.anc-submenu .anc-menu-link{ padding:0.6rem 0; }
	.anc-header-inner{ flex-wrap:wrap; }
	.anc-grid-3, .anc-grid-6, .anc-why-list{ grid-template-columns:1fr; }
	.anc-footer-grid{ grid-template-columns:1fr; }
}
@media (max-width: 480px){
	.anc-container{ padding-inline:1rem; }
}
