/*
Theme Name:   NextAwards Child
Template:     nextawards
Description:  Child theme con personalizzazioni per Ambienti Culturali Genovesi
Version:      1.1
Author:       Ambienti Culturali Genovesi
*/

/* ACG Header */
.acg-header {
    position: sticky !important;
    top: 1rem !important;
    z-index: 1000 !important;
    background: #ffffff !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.10);
    border: 1px solid #ebebeb;
    border-radius: 12px;
    margin: 0 1.5rem !important;
}

.acg-header-inner {
    width: 100%;
}

.acg-logo img {
    max-height: 60px !important;
    width: auto !important;
}

.acg-nav .wp-block-navigation__container a,
.acg-nav .wp-block-navigation-item__content {
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.09em !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    padding: 0.3rem 0.8rem !important;
}

.acg-nav .wp-block-navigation__container a:hover,
.acg-nav .wp-block-navigation-item__content:hover {
    color: #666666 !important;
}

/* Mobile hamburger */
@media (max-width: 768px) {
    .acg-header-inner {
        padding: 0.8rem 1rem !important;
    }
    .wp-block-navigation__responsive-container-open {
        color: #1a1a1a !important;
    }
    .wp-block-navigation__responsive-container.is-menu-open {
        background: #ffffff !important;
        padding: 2rem 1.5rem !important;
    }
    .wp-block-navigation__responsive-container.is-menu-open a {
        font-size: 1.1rem !important;
        padding: 0.8rem 0 !important;
        border-bottom: 1px solid #f0f0f0 !important;
    }
}

/* ACG Events Grid */
.acg-events-grid .tribe-events-list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
}

.acg-events-grid .tribe-event-featured-image img {
  width: 100% !important;
  height: 120px !important;
  object-fit: cover !important;
  border-radius: 6px 6px 0 0 !important;
}

.acg-events-grid .tribe-events-loop .type-tribe_events {
  background: #ffffff !important;
  border-radius: 8px !important;
  border: 0.5px solid #e2cba8 !important;
  overflow: hidden !important;
  padding: 0 !important;
}

.acg-events-grid .tribe-events-loop .tribe-events-list-event-title a {
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #2a1a0a !important;
  text-decoration: none !important;
  padding: 8px 10px 4px !important;
  display: block !important;
}

.acg-events-grid .tribe-event-schedule-details,
.acg-events-grid .tribe-venue-location {
  font-size: 0.8rem !important;
  color: #9e6b3a !important;
  padding: 0 10px 8px !important;
  display: block !important;
}

.acg-events-grid .tribe-events-calendar-list__event-categories,
.acg-events-grid .tribe-event-categories {
  padding: 8px 10px 0 !important;
}

.acg-events-grid .tribe-event-categories a {
  background: #9e3b1e !important;
  color: #fff !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  padding: 2px 8px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
}

@media (max-width: 768px) {
  .acg-events-grid .tribe-events-list {
    grid-template-columns: 1fr !important;
  }
}

/* Hide title on Home 2 */
.page-id-1677 .wp-block-post-title,
.page-id-1677 h1.entry-title,
.page-id-1677 .page-title {
  display: none !important;
}

/* Full width sections on Home 2 */
.page-id-1677 .wp-block-html.alignfull,
.page-id-1677 .wp-block-html.alignfull > div {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.page-id-1677 .entry-content {
  padding: 0 !important;
  max-width: 100% !important;
}

/* Shortcode block stesso sfondo della sezione eventi */
.page-id-1677 .wp-block-shortcode {
  background: #fffaf4;
  padding: 0 24px 24px;
  max-width: 100% !important;
}

/* Home 2 — griglia eventi responsive */
.page-id-1677 .eventi-oggi__lista {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
  gap: 16px !important;
}
.page-id-1677 .eventi-oggi__item {
  border-bottom: none !important;
  border: 1px solid #e8ddd3 !important;
  border-radius: 8px !important;
  padding: 12px !important;
  background: #ffffff !important;
}
@media (max-width: 600px) {
  .page-id-1677 .eventi-oggi__lista {
    grid-template-columns: 1fr !important;
  }
}

/* ACG Hero — Home 2 */
.page-id-1677 .wrapper.load {
  padding-top: 0 !important;
}
.page-id-1677 .acg-hero-home2 {
  width: 100%;
  background: #f5ede0;
  line-height: 0;
}
.page-id-1677 .acg-hero-img {
  width: 100%;
  height: auto;
  display: block;
  mix-blend-mode: multiply;
  -webkit-mask-image:
    radial-gradient(ellipse 85% 90% at 50% 50%, black 50%, transparent 100%);
          mask-image:
    radial-gradient(ellipse 85% 90% at 50% 50%, black 50%, transparent 100%);
}
@media (max-width: 768px) {
  .page-id-1677 .acg-hero-img {
    -webkit-mask-image:
      radial-gradient(ellipse 90% 88% at 50% 50%, black 45%, transparent 100%);
            mask-image:
      radial-gradient(ellipse 90% 88% at 50% 50%, black 45%, transparent 100%);
  }
}

/* ACG Contatti Section */
.acg-contatti-section {
  background: #fffaf4;
  border-top: 2px solid #e2cba8;
  border-bottom: 2px solid #e2cba8;
  overflow: hidden;
}
.acg-contatti-header {
  background: #2a1a0a;
  padding: 12px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.acg-contatti-title {
  color: #f5ede0;
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.acg-contatti-sub {
  color: #b8956a;
  font-size: 0.78rem;
}
.acg-contatti-body {
  display: flex;
  gap: 12px;
  padding: 16px 24px;
}
.acg-social-btn {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  padding: 14px 10px;
  background: #ffffff;
  border-radius: 8px;
  border: 0.5px solid #e2cba8;
  text-decoration: none !important;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.acg-social-btn:hover {
  border-color: #9e3b1e !important;
  box-shadow: 0 2px 8px rgba(158,59,30,0.10);
}
.acg-social-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.acg-fb  { background: #e8f0fe; }
.acg-ig  { background: #fce4ec; }
.acg-mail { background: #fff3e0; }
.acg-social-name {
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: #2a1a0a;
}
.acg-social-handle {
  font-size: 0.72rem;
  color: #9e6b3a;
  text-align: center;
  line-height: 1.3;
}
@media (max-width: 600px) {
  .acg-contatti-body {
    flex-direction: column;
    padding: 12px 16px;
  }
  .acg-social-btn {
    flex-direction: row;
    justify-content: flex-start;
    gap: 14px;
    padding: 12px 14px;
  }
  .acg-social-icon {
    width: 38px;
    height: 38px;
    flex-shrink: 0;
  }
  .acg-social-handle { text-align: left; }
}

/* ACG Contatti — bottoni più grandi */
.acg-social-btn {
  padding: 20px 14px !important;
  gap: 10px !important;
}
.acg-social-icon {
  width: 56px !important;
  height: 56px !important;
}
.acg-social-icon svg {
  width: 28px !important;
  height: 28px !important;
}
.acg-social-name {
  font-size: 0.88rem !important;
}
.acg-social-handle {
  font-size: 0.78rem !important;
}
@media (max-width: 600px) {
  .acg-social-icon {
    width: 46px !important;
    height: 46px !important;
  }
}

/* ACG Contatti — bottoni ancora più grandi */
.acg-social-btn {
  padding: 26px 18px !important;
  gap: 12px !important;
}
.acg-social-icon {
  width: 68px !important;
  height: 68px !important;
}
.acg-social-icon svg {
  width: 34px !important;
  height: 34px !important;
}
.acg-social-name {
  font-size: 0.95rem !important;
}
.acg-social-handle {
  font-size: 0.84rem !important;
}
@media (max-width: 600px) {
  .acg-social-icon {
    width: 54px !important;
    height: 54px !important;
  }
}

/* ACG CTA Block */
.acg-cta-block {
  background: #9e3b1e;
  padding: 36px 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.acg-cta-block::before {
  content: "\1F3AD\1F3B5\1F3A8\1F3AD\1F3B5\1F3A8\1F3AD\1F3B5\1F3A8";
  position: absolute;
  top: -8px;
  left: 0;
  right: 0;
  font-size: 28px;
  opacity: 0.08;
  letter-spacing: 8px;
  pointer-events: none;
}
.acg-cta-title {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin-bottom: 10px !important;
  position: relative;
}
.acg-cta-text {
  font-size: 0.88rem !important;
  color: rgba(255,255,255,0.80) !important;
  margin-bottom: 22px !important;
  line-height: 1.6 !important;
  position: relative;
}
.acg-cta-btn {
  display: inline-block !important;
  background: #ffffff !important;
  color: #9e3b1e !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 12px 32px !important;
  border-radius: 28px !important;
  text-decoration: none !important;
  position: relative;
  transition: background 0.2s, color 0.2s;
}
.acg-cta-btn:hover {
  background: #f5ede0 !important;
  color: #9e3b1e !important;
}
@media (max-width: 768px) {
  .acg-cta-block { padding: 28px 18px; }
  .acg-cta-title { font-size: 1rem !important; }
  .acg-cta-text  { font-size: 0.82rem !important; }
}

/* ACG Chi Siamo */
.acg-chisiamo {
  background: #fffaf4;
  border-top: 2px solid #e2cba8;
  overflow: hidden;
}
.acg-cs-header {
  background: #2a1a0a;
  padding: 14px 28px;
}
.acg-cs-title {
  color: #f5ede0;
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.acg-cs-body {
  padding: 24px 28px 20px;
}
.acg-cs-lead {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #9e3b1e !important;
  line-height: 1.4 !important;
  margin-bottom: 18px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid #e2cba8 !important;
}
.acg-cs-para {
  font-size: 0.84rem !important;
  color: #3a2010 !important;
  line-height: 1.75 !important;
  margin-bottom: 14px !important;
}
.acg-cs-para strong {
  font-weight: 700 !important;
  color: #2a1a0a !important;
}
.acg-cs-bottom {
  background: #f5ede0;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #e2cba8;
}
.acg-cs-note {
  font-size: 0.75rem;
  color: #7a5c3a;
}
.acg-cs-btn {
  display: inline-block !important;
  background: #9e3b1e !important;
  color: #fff !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 9px 20px !important;
  border-radius: 22px !important;
  text-decoration: none !important;
  white-space: nowrap;
}
.acg-cs-btn:hover {
  background: #7a2c14 !important;
  color: #fff !important;
}
@media (max-width: 768px) {
  .acg-cs-body { padding: 18px 16px 16px; }
  .acg-cs-lead { font-size: 0.95rem !important; }
  .acg-cs-bottom {
    flex-direction: column;
    gap: 12px;
    text-align: center;
    padding: 14px 16px;
  }
}

/* ACG Chi Siamo — testo più grande */
.acg-cs-lead { font-size: 1.18rem !important; }
.acg-cs-para { font-size: 0.95rem !important; }
@media (max-width: 768px) {
  .acg-cs-lead { font-size: 1.05rem !important; }
  .acg-cs-para { font-size: 0.88rem !important; }
}

/* ACG Chi Siamo — logo + titolo grande centrato */
.acg-cs-header--center {
  justify-content: center !important;
  padding: 22px 28px !important;
}
.acg-cs-title--big {
  font-size: 1.8rem !important;
  letter-spacing: 0.18em !important;
}
.acg-cs-body {
  display: flex !important;
  gap: 32px !important;
  align-items: flex-start !important;
  padding: 24px 28px 20px !important;
}
.acg-cs-content {
  flex: 1 !important;
  min-width: 0 !important;
}
.acg-cs-logo-wrap {
  flex-shrink: 0 !important;
  width: 200px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.acg-cs-logo {
  width: 200px !important;
  height: 200px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  mix-blend-mode: multiply;
}
@media (max-width: 768px) {
  .acg-cs-title--big { font-size: 1.3rem !important; }
  .acg-cs-body {
    flex-direction: column !important;
    align-items: center !important;
  }
  .acg-cs-logo-wrap {
    width: 150px !important;
    order: -1;
  }
  .acg-cs-logo {
    width: 150px !important;
    height: 150px !important;
  }
}

/* ACG Chi Siamo — fix titolo centrato */
.acg-chisiamo .acg-cs-header {
  justify-content: center !important;
  text-align: center !important;
  padding: 22px 28px !important;
}
.acg-chisiamo .acg-cs-title {
  font-size: 1.8rem !important;
  letter-spacing: 0.18em !important;
  width: 100% !important;
  text-align: center !important;
  display: block !important;
}

/* ACG Contatti — titolo grande centrato come Chi siamo */
.acg-contatti-header {
  justify-content: center !important;
  flex-direction: column !important;
  text-align: center !important;
  gap: 4px !important;
  padding: 22px 28px !important;
}
.acg-contatti-title {
  font-size: 1.8rem !important;
  letter-spacing: 0.18em !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
}
.acg-contatti-sub {
  display: block !important;
  text-align: center !important;
  width: 100% !important;
}

/* ACG Chi Siamo — bottom centrato, bottone più grande */
.acg-cs-bottom {
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  gap: 14px !important;
  padding: 20px 28px !important;
}
.acg-cs-btn {
  font-size: 0.92rem !important;
  padding: 13px 32px !important;
  border-radius: 28px !important;
}

/* ACG Footer locale Home 2 */
.acg-footer-local {
  background: #2a1a0a;
  overflow: hidden;
}
.acg-fl-top {
  padding: 18px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,0.07);
  flex-wrap: wrap;
  gap: 16px;
}
.acg-fl-logo {
  display: flex;
  align-items: center;
  gap: 12px;
}
.acg-fl-logo-text {
  color: #f5ede0;
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;
}
.acg-fl-logo-sub {
  color: #b8956a;
  font-size: 0.7rem;
  margin-top: 2px;
}
.acg-fl-nav {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.acg-fl-nav a {
  color: #b8956a !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  text-decoration: none !important;
}
.acg-fl-nav a:hover { color: #f5ede0 !important; }
.acg-fl-bottom {
  padding: 10px 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.acg-fl-copy {
  color: rgba(245,237,224,0.35);
  font-size: 0.72rem;
}
.acg-fl-social { display: flex; gap: 14px; }
.acg-fl-social a {
  color: rgba(245,237,224,0.45) !important;
  font-size: 0.72rem !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
}
.acg-fl-social a:hover { color: #b8860b !important; }
.acg-fl-policy { display: flex; gap: 12px; }
.acg-fl-policy a {
  color: rgba(245,237,224,0.3) !important;
  font-size: 0.68rem !important;
  text-decoration: none !important;
}
.acg-fl-policy a:hover { color: #b8956a !important; }
@media (max-width: 640px) {
  .acg-fl-top { flex-direction: column; align-items: flex-start; }
  .acg-fl-bottom { flex-direction: column; align-items: flex-start; gap: 10px; }
}

/* ACG footer full width */
.page-id-1677 .acg-footer-local {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* ACG Footer — font più grande + full width */
.acg-footer-local {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  box-sizing: border-box !important;
  position: relative !important;
}
.acg-fl-logo-text { font-size: 1rem !important; }
.acg-fl-logo-sub  { font-size: 0.85rem !important; }
.acg-fl-nav a     { font-size: 0.9rem !important; }
.acg-fl-copy      { font-size: 0.85rem !important; }
.acg-fl-social a  { font-size: 0.85rem !important; }
.acg-fl-policy a  { font-size: 0.8rem !important; }

/* ACG Footer locale — full width fix */
.acg-footer-local {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* Hide global footer on Home 2 only */
.page-id-1677 .wp-block-template-part[data-slug="footer"],
.page-id-1677 footer.wp-block-group:not(.acg-footer-local),
.page-id-1677 .wp-site-blocks > footer,
.page-id-1677 .footer-content,
.page-id-1677 footer.footer {
  display: none !important;
}

/* Full width fix for custom blocks on Home 2 */
.page-id-1677 .entry-content,
.page-id-1677 .wp-block-post-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
}

.page-id-1677 .wp-block-post-content > .wp-block-html {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 100% !important;
}

/* Break out of wrapper.load max-width */
body.page-id-1677 .wrapper.load {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.page-id-1677 {
  overflow-x: clip !important;
}

.acg-footer-local,
.acg-cta-block,
.acg-contatti-section,
.acg-chisiamo {
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
}

/* Anchor offset for sticky header */
#chisiamo,
#contatti {
  scroll-margin-top: 80px;
}

/* ACG Footer categories strip */
.acg-fl-categories {
  padding: 10px 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border-top: 1px solid rgba(255,255,255,0.07);
  border-bottom: 1px solid rgba(255,255,255,0.07);
}
.acg-fl-categories a {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  text-decoration: none !important;
  transition: opacity 0.2s !important;
}
.acg-fl-categories a:hover { opacity: 0.8 !important; }

/* ACG Newsletter */
.acg-nl-wrap {
  background: #fffaf4;
  border-top: 2px solid #e2cba8;
  overflow: hidden;
}
.acg-nl-header {
  background: #2a1a0a;
  padding: 14px 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.acg-nl-header-title {
  color: #f5ede0;
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.acg-nl-body {
  padding: 28px 28px 20px;
  display: flex;
  align-items: center;
  gap: 32px;
}
.acg-nl-left { flex: 1; }
.acg-nl-lead {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #9e3b1e !important;
  margin-bottom: 6px !important;
  line-height: 1.3 !important;
}
.acg-nl-sub {
  font-size: 0.82rem !important;
  color: #7a5c3a !important;
  line-height: 1.6 !important;
}
.acg-nl-right { flex: 1; }
.acg-nl-form-row {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
}
.acg-nl-form-row input[type="email"] {
  flex: 1 !important;
  background: #ffffff !important;
  border: 1.5px solid #e2cba8 !important;
  border-radius: 24px !important;
  color: #2a1a0a !important;
  padding: 11px 18px !important;
  font-size: 0.88rem !important;
  outline: none !important;
  min-width: 0 !important;
}
.acg-nl-form-row input[type="email"]:focus {
  border-color: #9e3b1e !important;
}
.acg-nl-form-row button {
  background: #9e3b1e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 24px !important;
  padding: 11px 22px !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}
.acg-nl-form-row button:hover {
  background: #7a2c14 !important;
}
.acg-nl-privacy {
  font-size: 0.7rem !important;
  color: #b8956a !important;
}
.acg-nl-success {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: #4a5e2a !important;
  margin-top: 8px !important;
}
.acg-nl-error {
  font-size: 0.82rem !important;
  color: #9e3b1e !important;
  margin-top: 6px !important;
}
.acg-nl-bottom {
  background: #f5ede0;
  padding: 10px 28px;
  border-top: 1px solid #e2cba8;
  display: flex;
  align-items: center;
  gap: 8px;
}
.acg-nl-bottom-text {
  font-size: 0.75rem !important;
  color: #7a5c3a !important;
}
@media (max-width: 600px) {
  .acg-nl-body {
    flex-direction: column !important;
    gap: 16px !important;
    padding: 20px 16px 16px !important;
  }
  .acg-nl-form-row {
    flex-direction: column !important;
  }
  .acg-nl-form-row button {
    width: 100% !important;
  }
  .acg-nl-bottom {
    padding: 10px 16px !important;
  }
}

/* ACG Newsletter FORCE */
div.acg-nl-wrap {
  background: #fffaf4 !important;
  border-top: 2px solid #e2cba8 !important;
  overflow: hidden !important;
  font-family: inherit !important;
}
div.acg-nl-header {
  background: #2a1a0a !important;
  padding: 14px 28px !important;
  text-align: center !important;
}
div.acg-nl-header span {
  color: #f5ede0 !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
}
div.acg-nl-body {
  padding: 28px !important;
  display: flex !important;
  align-items: center !important;
  gap: 32px !important;
  background: #fffaf4 !important;
}
div.acg-nl-lead {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #9e3b1e !important;
  margin-bottom: 6px !important;
}
div.acg-nl-sub {
  font-size: 0.82rem !important;
  color: #7a5c3a !important;
  line-height: 1.6 !important;
}
div.acg-nl-form-row {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 8px !important;
}
div.acg-nl-form-row input[type="email"] {
  flex: 1 !important;
  background: #ffffff !important;
  border: 1.5px solid #e2cba8 !important;
  border-radius: 24px !important;
  color: #2a1a0a !important;
  padding: 11px 18px !important;
  font-size: 0.88rem !important;
  min-width: 0 !important;
  outline: none !important;
}
div.acg-nl-form-row button[type="submit"] {
  background: #9e3b1e !important;
  color: #fff !important;
  border: none !important;
  border-radius: 24px !important;
  padding: 11px 22px !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
div.acg-nl-form-row button[type="submit"]:hover {
  background: #7a2c14 !important;
}
div.acg-nl-privacy {
  font-size: 0.7rem !important;
  color: #b8956a !important;
}
div.acg-nl-success {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: #4a5e2a !important;
  margin-top: 8px !important;
}
div.acg-nl-error {
  font-size: 0.82rem !important;
  color: #9e3b1e !important;
  margin-top: 6px !important;
}
div.acg-nl-bottom {
  background: #f5ede0 !important;
  padding: 10px 28px !important;
  border-top: 1px solid #e2cba8 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
div.acg-nl-bottom-text {
  font-size: 0.75rem !important;
  color: #7a5c3a !important;
}
@media (max-width: 600px) {
  div.acg-nl-body {
    flex-direction: column !important;
    gap: 16px !important;
  }
  div.acg-nl-form-row {
    flex-direction: column !important;
  }
  div.acg-nl-form-row button[type="submit"] {
    width: 100% !important;
  }
  div.acg-nl-bottom {
    padding: 10px 16px !important;
  }
}


/* ACG Tablet Nav Fix */
@media (min-width: 769px) and (max-width: 1024px) {
    .acg-nav .wp-block-navigation__responsive-container-open,
    .acg-nav .wp-block-navigation__responsive-container-close {
        display: none !important;
    }
    .acg-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
        display: flex !important;
        flex-wrap: nowrap !important;
    }
}

/* ACG Mobile Nav (<= 768px) */
@media (max-width: 768px) {
    .acg-nav .wp-block-navigation__responsive-container-open {
        display: flex !important;
    }
}


/* SEO hidden text - visible to search engines, invisible to users */
.acg-seo-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* SEO hidden — force override */
p.acg-seo-hidden,
h2.acg-seo-hidden,
.acg-seo-hidden,
.wp-block-paragraph.acg-seo-hidden,
.wp-block-heading.acg-seo-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
  font-size: 0 !important;
  opacity: 0 !important;
}


/* Sticky footer — clean version */
body.page-template-template-marchetti-php {
  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
}

body.page-template-template-marchetti-php div.wrapper.load {
  flex: 1 !important;
}

body.page-template-template-marchetti-php div.acg-footer-local {
  flex-shrink: 0 !important;
}
