/*
Theme Name: DAA3 HCDT Official
Theme URI: https://daa3hcdt.com.ng
Author: DAA3 HCDT
Description: Production WordPress CMS conversion of the approved DAA3 HCDT HTML/CSS/JavaScript website.
Version: 1.5.6
Text Domain: daa3-hcdt
*/

/* ===== CSS VARIABLES ===== */
:root {
  --red: #E53032;
  --gold: #F99E26;
  --navy: #2F2C69;
  --dark: #3C3C3B;
  --light: #f9fafb;
  --white: #ffffff;
  --gray: #4b5563;
  --border: #e5e7eb;
  --shadow: 0 10px 25px -5px rgba(0,0,0,0.05);
  --shadow-hover: 0 20px 30px -12px rgba(0,0,0,0.1);
  --transition: 0.2s ease;
}

/* ===== RESET & BASE ===== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  line-height: 1.6;
  color: var(--dark);
  background: var(--light);
  overflow-x: hidden;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

img {
  max-width: 100%;
  display: block;
}

a {
  text-decoration: none;
  transition: var(--transition);
}

/* ===== HEADER ===== */
header {
  background: var(--white);
  box-shadow: 0 2px 12px rgba(0,0,0,0.05);
  position: sticky;
  top: 0;
  z-index: 100;
}

.header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0.8rem 20px;
}

.logos {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.logos img {
  height: 50px;
  width: auto;
}

.menu-toggle {
  display: none;
  flex-direction: column;
  cursor: pointer;
}

.menu-toggle span {
  width: 25px;
  height: 3px;
  background: var(--dark);
  margin: 3px 0;
  border-radius: 3px;
}

nav ul {
  display: flex;
  gap: 1.8rem;
  list-style: none;
}

nav a {
  font-weight: 600;
  color: var(--gray);
}

nav a:hover,
nav a.active {
  color: var(--red);
}

/* ===== HERO SECTION ===== */
.hero-bg {
  position: relative;
  min-height: 600px;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  color: white;
  overflow: hidden;
}

.hero-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(47, 44, 105, 0.45);
  z-index: 1;
}

.hero-bg .container {
  position: relative;
  z-index: 2;
  max-width: 700px;
  text-align: left;
  padding: 80px 0;
}

.hero-bg h1 {
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 1rem;
  color: white;
}

.hero-bg .lead {
  font-size: clamp(1rem, 4vw, 1.2rem);
  font-weight: 500;
  margin-bottom: 1rem;
  color: rgba(255,255,255,0.95);
}

.hero-bg p {
  margin-bottom: 1rem;
  color: rgba(255,255,255,0.9);
  font-size: clamp(0.9rem, 3.5vw, 1rem);
}

.hero-buttons {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1.5rem;
}

/* Buttons */
.btn {
  display: inline-block;
  background: var(--red);
  color: white;
  padding: 12px 28px;
  border-radius: 40px;
  font-weight: 600;
  transition: var(--transition);
  border: none;
  cursor: pointer;
  text-align: center;
  font-size: 0.95rem;
}

.btn:hover {
  background: #c4282a;
  transform: translateY(-2px);
}

.btn-outline {
  background: transparent;
  border: 2px solid white;
  color: white;
}

.btn-outline:hover {
  background: white;
  color: var(--navy);
  transform: translateY(-2px);
}

/* ===== GENERAL SECTION STYLES ===== */
section {
  padding: 80px 0;
}

h2 span {
  background: linear-gradient(120deg, var(--red), var(--gold));
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  display: inline-block;
}

h2 {
  font-size: clamp(1.8rem, 5vw, 2.2rem);
  margin-bottom: 1rem;
  text-align: center;
}

.section-sub {
  text-align: center;
  font-size: clamp(0.95rem, 4vw, 1.1rem);
  color: var(--gray);
  margin-bottom: 1rem;
}

/* ===== CARDS & GRIDS ===== */
.pillars-grid,
.approach-grid,
.values-grid,
.work-steps,
.highlights-grid,
.timeline-grid,
.communication-grid,
.themes-grid,
.process-steps,
.principles-grid,
.structure-grid,
.principles-gov-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
  margin-top: 2rem;
}

.pillar-card,
.approach-item,
.value-card,
.work-step,
.highlight-card,
.timeline-item,
.comm-card,
.theme-card,
.process-step,
.principle-card,
.structure-card,
.principle-gov-card {
  background: white;
  padding: 2rem;
  border-radius: 16px;
  box-shadow: var(--shadow);
  transition: var(--transition);
  border: 1px solid var(--border);
  text-align: center;
}

.pillar-card:hover,
.value-card:hover,
.work-step:hover,
.highlight-card:hover,
.theme-card:hover,
.process-step:hover,
.principle-card:hover,
.structure-card:hover,
.principle-gov-card:hover,
.timeline-item:hover,
.comm-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-hover);
}

.pillar-icon,
.value-icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
  display: inline-block;
}

.value-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  background: var(--red);
  color: white;
  margin-bottom: 1rem;
}

.step-number {
  width: 40px;
  height: 40px;
  background: var(--red);
  color: white;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  margin-bottom: 1rem;
}

/* ===== CHAIRMAN SECTION (who-we-are) ===== */
.chairman-card {
  display: flex;
  gap: 2rem;
  align-items: center;
  background: var(--light);
  padding: 2rem;
  border-radius: 20px;
  box-shadow: var(--shadow);
}

.chairman-image {
  flex: 1;
}

.chairman-image img {
  width: 100%;
  border-radius: 12px;
  object-fit: cover;
}

.chairman-info {
  flex: 2;
}

.chairman-info h2 {
  text-align: left;
  margin-bottom: 0.5rem;
  font-size: clamp(1.5rem, 4vw, 1.8rem);
}

.chairman-info h3 {
  color: var(--red);
  margin-bottom: 1rem;
  font-size: clamp(1.2rem, 4vw, 1.5rem);
}

/* ===== VIDEO EMBED ===== */
.video-card {
  background: white;
  padding: 2rem;
  border-radius: 16px;
  box-shadow: var(--shadow);
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}

.video-wrapper {
  margin-top: 1.5rem;
}

iframe {
  width: 100%;
  border-radius: 12px;
  aspect-ratio: 16 / 9;
}

.timeline-year {
  display: inline-block;
  background: var(--red);
  color: white;
  padding: 0.3rem 1rem;
  border-radius: 30px;
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

/* ===== CONTACT PAGE ===== */
.contact-page-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: start;
}

.contact-info-box {
  background: var(--light);
  padding: 2rem;
  border-radius: 20px;
}

.info-item {
  display: flex;
  gap: 1rem;
  margin: 1.5rem 0;
}

.info-item i {
  font-size: 1.5rem;
  color: var(--red);
  width: 30px;
}

.contact-form-box {
  background: var(--light);
  padding: 2rem;
  border-radius: 20px;
}

.form-group {
  margin-bottom: 1rem;
}

.form-group label {
  display: block;
  margin-bottom: 0.3rem;
  font-weight: 600;
}

.form-group input,
.form-group textarea {
  width: 100%;
  padding: 0.8rem;
  border: 1px solid var(--border);
  border-radius: 8px;
  font-family: inherit;
}

.btn-submit {
  width: 100%;
  margin-top: 1rem;
}

/* ===== CTA SECTIONS (bottom of pages) ===== */
.wwa-cta,
.updates-cta,
.projects-cta,
.governance-cta {
  background: linear-gradient(135deg, var(--navy), #1f1d4a);
  color: white;
  text-align: center;
  padding: 60px 20px;
}

.wwa-cta h2,
.updates-cta h2,
.projects-cta h2,
.governance-cta h2 {
  color: white;
  margin-bottom: 1rem;
  font-size: clamp(1.5rem, 5vw, 2rem);
}

.wwa-cta p,
.updates-cta p,
.projects-cta p,
.governance-cta p {
  color: rgba(255,255,255,0.9);
  margin-bottom: 2rem;
  font-size: clamp(0.9rem, 4vw, 1rem);
}

.wwa-cta .btn,
.updates-cta .btn,
.projects-cta .btn,
.governance-cta .btn {
  background: var(--gold);
  color: var(--navy);
}

.wwa-cta .btn:hover,
.updates-cta .btn:hover,
.projects-cta .btn:hover,
.governance-cta .btn:hover {
  background: #e58e1a;
}

/* ===== ENHANCED CONTACT SECTION (homepage) ===== */
.contact-enhanced {
  padding: 80px 0;
  background: linear-gradient(135deg, #f8fafc 0%, #eef2f6 100%);
}

.contact-enhanced-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: center;
}

.contact-details {
  background: white;
  padding: 2.5rem;
  border-radius: 24px;
  box-shadow: var(--shadow);
  border: 1px solid var(--border);
}

.contact-details h3 {
  font-size: clamp(1.5rem, 5vw, 1.8rem);
  margin-bottom: 1.5rem;
  color: var(--navy);
}

.contact-detail-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.2rem;
  font-size: clamp(0.9rem, 4vw, 1rem);
  color: var(--dark);
}

.contact-detail-item i {
  width: 30px;
  font-size: 1.3rem;
  color: var(--red);
}

.contact-detail-item a {
  color: var(--dark);
  text-decoration: none;
  transition: var(--transition);
}

.contact-detail-item a:hover {
  color: var(--red);
}

.contact-detail-item.italic {
  margin-top: 1.5rem;
  font-style: italic;
  border-top: 1px solid var(--border);
  padding-top: 1.2rem;
}

.contact-cta-box {
  background: white;
  padding: 2.5rem;
  border-radius: 24px;
  text-align: center;
  box-shadow: var(--shadow);
  border: 1px solid var(--border);
}

.contact-cta-box h2 {
  font-size: clamp(1.5rem, 5vw, 1.8rem);
  margin-bottom: 1rem;
  color: var(--navy);
}

.contact-cta-box p {
  margin-bottom: 1.8rem;
  color: var(--gray);
  font-size: clamp(0.9rem, 4vw, 1rem);
}

.contact-cta-box .btn-primary {
  background: var(--red);
  color: white;
}

.contact-cta-box .btn-primary:hover {
  background: #c4282a;
  transform: translateY(-2px);
}

/* ===== COLOURED BOTTOM SHADOWS (index only) ===== */
.index-section {
  position: relative;
  margin-bottom: 50px;
}

.index-section:nth-of-type(1) {
  box-shadow: 0 15px 20px -10px rgba(229,48,50,0.25);
}
.index-section:nth-of-type(2) {
  box-shadow: 0 15px 20px -10px rgba(249,158,38,0.25);
}
.index-section:nth-of-type(3) {
  box-shadow: 0 15px 20px -10px rgba(47,44,105,0.25);
}
.index-section:last-of-type {
  margin-bottom: 0;
}

/* ===== FOOTER ===== */
footer {
  background: #111827;
  color: #9ca3af;
  padding: 60px 0 20px;
  margin-top: 0;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 2rem;
  margin-bottom: 2rem;
}

.footer-brand p {
  margin-top: 0.5rem;
  color: #9ca3af;
  font-size: clamp(0.85rem, 4vw, 0.95rem);
}

.footer-links h4,
.footer-contact h4 {
  color: #f3f4f6;
  margin-bottom: 1rem;
  font-size: clamp(1rem, 4vw, 1.1rem);
}

.footer-links ul {
  list-style: none;
}

.footer-links li {
  margin-bottom: 0.5rem;
}

.footer-links a {
  color: #9ca3af;
  font-size: clamp(0.85rem, 4vw, 0.95rem);
}

.footer-links a:hover {
  color: var(--gold);
}

.footer-contact p {
  margin: 0.5rem 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: clamp(0.85rem, 4vw, 0.95rem);
}

.copyright {
  text-align: center;
  padding-top: 2rem;
  border-top: 1px solid #1f2937;
  font-size: clamp(0.8rem, 3.5vw, 0.9rem);
  color: #6b7280;
}

/* ===== RESPONSIVE (MOBILE) ===== */
@media (max-width: 992px) {
  .menu-toggle {
    display: flex;
  }
  nav {
    position: fixed;
    top: 70px;
    left: -100%;
    width: 80%;
    height: calc(100% - 70px);
    background: white;
    box-shadow: 2px 0 10px rgba(0,0,0,0.1);
    transition: 0.3s;
    padding: 2rem;
    z-index: 99;
    overflow-y: auto;
  }
  nav.active {
    left: 0;
  }
  nav ul {
    flex-direction: column;
    gap: 1rem;
  }
  .hero-bg .container {
    text-align: center;
    max-width: 100%;
    padding: 60px 20px;
  }
  .hero-buttons {
    justify-content: center;
  }
  .contact-page-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .chairman-card {
    flex-direction: column;
    text-align: center;
  }
  .chairman-info h2 {
    text-align: center;
  }
  .contact-enhanced-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .contact-enhanced {
    padding: 60px 0;
  }
  section {
    padding: 60px 0;
  }
  .hero-bg {
    min-height: 500px;
  }
  .hero-bg h1 {
    font-size: 2rem;
  }
}

@media (max-width: 768px) {
  .pillars-grid,
  .mv-grid,
  .values-grid,
  .work-steps,
  .highlights-grid,
  .timeline-grid,
  .communication-grid,
  .themes-grid,
  .process-steps,
  .principles-grid,
  .structure-grid,
  .principles-gov-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .card,
  .pillar-card,
  .value-card,
  .work-step,
  .highlight-card,
  .timeline-item,
  .comm-card,
  .theme-card,
  .process-step,
  .principle-card,
  .structure-card,
  .principle-gov-card {
    padding: 1.5rem;
  }
  .contact-details,
  .contact-cta-box {
    padding: 1.8rem;
  }
  .contact-detail-item {
    flex-wrap: wrap;
    gap: 0.5rem;
  }
  .contact-detail-item i {
    width: 25px;
  }
}

@media (max-width: 480px) {
  .logos img {
    height: 40px;
  }
  .header-content {
    padding: 0.5rem 20px;
  }
  .hero-bg {
    min-height: 450px;
  }
  .hero-bg .container {
    padding: 40px 20px;
  }
  .btn {
    padding: 10px 20px;
    font-size: 0.85rem;
  }
  .hero-buttons {
    gap: 0.8rem;
  }
  .index-section {
    margin-bottom: 30px;
  }
  .index-section:nth-of-type(1) {
    box-shadow: 0 12px 16px -8px rgba(229,48,50,0.25);
  }
  .index-section:nth-of-type(2) {
    box-shadow: 0 12px 16px -8px rgba(249,158,38,0.25);
  }
  .index-section:nth-of-type(3) {
    box-shadow: 0 12px 16px -8px rgba(47,44,105,0.25);
  }
}

/* ===== ENHANCED CARD STYLES FOR WHO-WE-ARE PAGE ===== */

/* Intro section – turned into a card */
.wwa-intro {
    background: var(--white);
    border-radius: 24px;
    box-shadow: var(--shadow);
    margin: 40px auto;
    padding: 40px 20px;
    max-width: 1000px;
    transition: transform 0.2s, box-shadow 0.2s;
}

.wwa-intro:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-hover);
}

/* Mission & Vision cards */
.mv-card {
    background: var(--white);
    border-radius: 24px;
    box-shadow: var(--shadow);
    padding: 2rem;
    transition: transform 0.2s, box-shadow 0.2s;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.mv-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-hover);
}

.mv-card h2 {
    text-align: left;
    margin-bottom: 1.2rem;
    font-size: 1.6rem;
}

.mv-card p {
    flex: 1;
    font-size: 1rem;
    line-height: 1.6;
    color: var(--dark);
}

/* Ensure the grid for mission/vision is centered and cards have equal height */
.mv-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 2rem;
}

/* Remove extra margin/padding on intro container */
.wwa-intro .container {
    padding: 0;
    max-width: 100%;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .wwa-intro {
        margin: 30px 20px;
        padding: 30px 20px;
    }
    .mv-card {
        padding: 1.5rem;
    }
    .mv-card h2 {
        font-size: 1.4rem;
    }
}
/* Optional: background for the whole page to make cards pop */
body {
    background: linear-gradient(180deg, var(--light) 0%, #ffffff 100%);
}


/* ===== LOGO SIZE & SPACING ===== */
.logos {
    gap: 8px; /* closer together */
}

.logos img {
    height: 77px; /* 55px * 1.4 ≈ 77px */
    width: auto;
}

/* Adjust header padding to accommodate larger logos */
.header-content {
    padding: 0.5rem 20px; /* slightly reduced vertical padding */
}

/* On tablets, slightly reduce logo size */
@media (max-width: 992px) {
    .logos img {
        height: 66px; /* ~85% of 77px */
    }
}

/* On mobile, further reduce to avoid crowding */
@media (max-width: 768px) {
    .logos img {
        height: 55px; /* back to original size */
    }
    .logos {
        gap: 6px;
    }
}

.vendor-btn { font-weight: 700; border: 2px solid #d4af37; padding: 8px 12px; border-radius: 4px; }
.focus-areas { margin: 40px 0; }

/* Vendor Registration */
.vendor-page { padding: 80px 0; background:#f7f8fa; }
.vendor-card { max-width:900px; margin:auto; background:#fff; padding:45px; border-radius:12px; box-shadow:0 8px 25px rgba(0,0,0,.08); }
.vendor-card h1 { text-align:center; margin-bottom:15px; }
.vendor-card .lead { text-align:center; font-size:18px; margin-bottom:35px; }
.instruction-box { border-left:5px solid #eab308; background:#fafafa; padding:30px; }
.instruction-box h2 { margin-top:0; }

/* Strategic Focus Areas */
.focus-highlight { padding:70px 0; background:linear-gradient(135deg,#f8f9fb,#fff); }
.focus-header { text-align:center; max-width:800px; margin:0 auto 40px; }
.focus-header h2 { font-size:36px; color:#1f3658; margin-bottom:12px; }
.focus-header p { font-size:18px; color:#555; }
.focus-highlight-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:30px; }
.focus-feature-card { background:#fff; padding:35px; border-radius:16px; display:flex; gap:25px; align-items:flex-start; box-shadow:0 10px 30px rgba(0,0,0,.08); border-top:5px solid #d4af37; }
.focus-feature-card h3 { color:#1f3658; font-size:28px; margin:0 0 8px; }
.focus-feature-card h4 { color:#d4af37; margin:0 0 15px; }
.focus-feature-icon { font-size:45px; }
@media(max-width:768px){ .focus-highlight-grid{grid-template-columns:1fr;} .focus-feature-card{flex-direction:column;} .focus-header h2{font-size:28px;} }


/* ===== WordPress CMS integration ===== */
.cms-section { padding: 70px 0; background: #f7f8fa; }
.cms-section.cms-white { background: #fff; }
.cms-section .section-heading { text-align:center; margin-bottom:34px; }
.cms-section .section-heading h2 { color:#1f3658; font-size:34px; margin:0 0 10px; }
.cms-section .section-heading p { max-width:760px; margin:0 auto; color:#666; }
.cms-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.cms-card { background:#fff; border-radius:14px; overflow:hidden; box-shadow:0 10px 28px rgba(0,0,0,.08); border:1px solid rgba(31,54,88,.07); }
.cms-card-image { aspect-ratio:16/10; overflow:hidden; background:#eef1f5; }
.cms-card-image img { width:100%; height:100%; object-fit:cover; display:block; }
.cms-card-body { padding:24px; }
.cms-card h3 { color:#1f3658; margin:0 0 10px; font-size:22px; }
.cms-card h3 a { color:inherit; text-decoration:none; }
.cms-card p { margin:0 0 14px; }
.cms-meta { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 14px; font-size:14px; color:#687386; }
.cms-meta span { background:#f2f4f7; padding:5px 9px; border-radius:999px; }
.cms-card .btn { margin-top:8px; }
.cms-empty { text-align:center; padding:24px; background:#fff; border-radius:12px; color:#667085; }
.board-cms-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.board-cms-card { text-align:center; background:#fff; border-radius:14px; padding:28px; box-shadow:0 10px 28px rgba(0,0,0,.08); }
.board-cms-card img { width:160px; height:160px; object-fit:cover; border-radius:50%; margin-bottom:18px; }
.board-cms-card h3 { color:#1f3658; margin:0 0 4px; }
.board-position { color:#d4af37; font-weight:700; margin-bottom:12px; }
.project-detail-grid { display:grid; grid-template-columns:2fr 1fr; gap:36px; align-items:start; }
.project-sidebar { background:#f7f8fa; border-radius:14px; padding:24px; }
.project-sidebar dt { font-weight:700; color:#1f3658; margin-top:12px; }
.project-sidebar dd { margin:4px 0 0; }
.project-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:30px; }
.project-gallery img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:10px; }
.contact-status { padding:14px 18px; border-radius:10px; margin-bottom:18px; }
.contact-status.success { background:#eaf7ee; color:#176a35; }
.contact-status.error { background:#fff0f0; color:#9d1c1c; }
.vendor-address { font-style:normal; }
@media(max-width:900px){ .cms-grid,.board-cms-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.project-detail-grid{grid-template-columns:1fr;} }
@media(max-width:640px){ .cms-grid,.board-cms-grid{grid-template-columns:1fr;}.project-gallery{grid-template-columns:1fr 1fr;}.cms-section{padding:50px 0;} }


/* Editable Projects page block compatibility */
.projects-page-editor-content > .wp-block-group,
.projects-page-editor-content > .wp-block-shortcode {
    margin: 0;
}
.projects-page-editor-content .wp-block-columns {
    margin-bottom: 0;
}
.projects-page-editor-content .wp-block-column {
    min-width: 0;
}
.projects-page-editor-content .wp-block-button.btn .wp-block-button__link {
    background: var(--primary-red, #ef2b2d);
    border-radius: 999px;
    color: #fff;
    font-weight: 700;
    padding: 0.85rem 1.35rem;
    text-decoration: none;
}


/* All core pages are now driven by the WordPress page editor. */
.daa3-editable-page-content {
    width: 100%;
}
.daa3-editable-page-content > p,
.daa3-editable-page-content > h1,
.daa3-editable-page-content > h2,
.daa3-editable-page-content > h3,
.daa3-editable-page-content > ul,
.daa3-editable-page-content > ol,
.daa3-editable-page-content > .wp-block-buttons {
    width: min(1200px, 90%);
    margin-left: auto;
    margin-right: auto;
}
.daa3-editable-page-content .wp-block-image img {
    max-width: 100%;
    height: auto;
}








/* Hide the public projects section completely when no records exist.
   The PHP template returns early, so no admin/internal message is exposed. */
.public-projects-list {
    padding-top: 1rem;
}





/* =========================================================
   PROJECT FOCUS AREAS — EQUAL PRIORITY CARDS (THEME LEVEL)
   ========================================================= */
.daa3-focus-showcase {
    position: relative;
    padding: 1rem 0 4.5rem;
}
.daa3-focus-showcase::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 10% 10%, rgba(239,43,45,.05), transparent 30%),
        radial-gradient(circle at 92% 82%, rgba(246,166,35,.07), transparent 28%),
        linear-gradient(180deg,#fff 0%,#fafbfd 100%);
    z-index: 0;
}
.daa3-focus-showcase .container {
    position: relative;
    z-index: 1;
}

.focus-equal-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: 1.1rem;
    align-items: stretch;
}

.focus-equal-card {
    --focus-accent: #ef2b2d;
    --focus-tint: rgba(239,43,45,.10);

    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 310px;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(15,36,65,.08);
    border-radius: 20px;
    box-shadow: 0 14px 36px rgba(15,36,65,.08);
    transition: transform .2s ease, box-shadow .2s ease;
}

.focus-equal-card::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: var(--focus-accent);
    z-index: 2;
}

.focus-equal-card::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    right: -42px;
    top: -42px;
    border-radius: 50%;
    background: var(--focus-tint);
    z-index: 0;
}

.focus-equal-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 48px rgba(15,36,65,.13);
}

.focus-equal-icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin: 1.55rem 1.45rem 1rem;
    border-radius: 16px;
    background: var(--focus-tint);
    color: var(--focus-accent);
    font-size: 1.6rem;
    position: relative;
    z-index: 1;
}

.focus-card-image {
    width: 100%;
    height: 150px;
    overflow: hidden;
    position: relative;
    z-index: 1;
    background: #f4f6f8;
}

.focus-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.focus-equal-copy {
    position: relative;
    z-index: 1;
    padding: 0 1.45rem 1.55rem;
}

.focus-card-image + .focus-equal-copy {
    padding-top: 1.25rem;
}

.focus-equal-card h3 {
    margin: 0 0 .35rem;
    color: #0f2441;
    font-size: 1.08rem;
    line-height: 1.28;
}

.focus-equal-card h4 {
    margin: 0 0 .75rem;
    color: #667085;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.35;
}

.focus-equal-card p {
    margin: 0;
    color: #667085;
    font-size: .91rem;
    line-height: 1.62;
}

/* Same card design; only accent colours vary. */
.focus-color-1 { --focus-accent:#ef2b2d; --focus-tint:rgba(239,43,45,.10); }
.focus-color-2 { --focus-accent:#d49a1f; --focus-tint:rgba(212,154,31,.12); }
.focus-color-3 { --focus-accent:#1f7a63; --focus-tint:rgba(31,122,99,.11); }
.focus-color-4 { --focus-accent:#7651a8; --focus-tint:rgba(118,81,168,.11); }
.focus-color-5 { --focus-accent:#28558a; --focus-tint:rgba(40,85,138,.11); }

@media (max-width: 1200px) {
    .focus-equal-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 800px) {
    .focus-equal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 560px) {
    .focus-equal-grid { grid-template-columns: 1fr; }
    .focus-equal-card { min-height: 0; }
}


/* =========================================================
   DAA3 PROJECT PHASES + HOME PREVIEWS — v1.1.2
   ========================================================= */
.home-eyebrow{
    display:inline-block;
    margin-bottom:.55rem;
    color:#ef2b2d;
    font-size:.76rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.home-text-link{
    color:#0f2441;
    font-weight:700;
    text-decoration:none;
}
.home-text-link:hover{color:#ef2b2d;}

.home-trust-intro{padding:4.5rem 0 3.5rem;background:#fff;}
.home-trust-grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:3rem;
    align-items:start;
}
.home-trust-grid h2{margin:0;color:#0f2441;font-size:clamp(2rem,3.6vw,3.25rem);line-height:1.08;}
.home-trust-grid p{margin:0 0 1rem;color:#667085;font-size:1.03rem;line-height:1.75;}

.home-section-heading{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:1.5rem;
    margin-bottom:1.75rem;
}
.home-section-heading h2{margin:0;color:#0f2441;font-size:clamp(1.8rem,3vw,2.6rem);}

.home-focus-preview{padding:3.5rem 0;background:#f8fafc;}
.home-focus-strip{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:.85rem;
}
.home-focus-item{
    --focus:#ef2b2d;
    display:flex;
    align-items:center;
    gap:.7rem;
    min-height:84px;
    padding:1rem;
    border-radius:15px;
    background:#fff;
    color:#0f2441;
    text-decoration:none;
    font-weight:750;
    line-height:1.25;
    border-top:3px solid var(--focus);
    box-shadow:0 10px 25px rgba(15,36,65,.06);
}
.home-focus-icon{
    width:38px;height:38px;display:grid;place-items:center;flex:none;
    border-radius:11px;background:color-mix(in srgb,var(--focus) 12%, white);
}
.home-focus-1{--focus:#ef2b2d}.home-focus-2{--focus:#d49a1f}.home-focus-3{--focus:#1f7a63}.home-focus-4{--focus:#7651a8}.home-focus-5{--focus:#28558a}

.home-projects-preview{padding:4.75rem 0;background:#fff;}
.home-projects-intro{
    display:grid;
    grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr);
    gap:2rem;
    align-items:center;
    margin-bottom:2rem;
}
.home-project-stat{
    padding:1.65rem;border-radius:20px;background:#0f2441;color:#fff;
}
.home-project-stat strong{display:block;font-size:3.1rem;line-height:1;color:#f5c15d;}
.home-project-stat span{display:block;margin-top:.65rem;line-height:1.5;color:rgba(255,255,255,.86);}
.home-projects-copy h2{margin:.15rem 0 .65rem;color:#0f2441;font-size:clamp(1.9rem,3vw,2.7rem);}
.home-projects-copy p{margin:0;color:#667085;line-height:1.7;}

.home-project-grid,.home-update-grid{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem;
}
.home-project-card,.home-update-card{
    overflow:hidden;border-radius:18px;background:#fff;border:1px solid rgba(15,36,65,.08);
    box-shadow:0 12px 30px rgba(15,36,65,.07);
}
.home-project-image,.home-update-image{display:block;height:190px;background:#edf1f5;overflow:hidden;}
.home-project-image img,.home-update-image img{width:100%;height:100%;object-fit:cover;display:block;}
.home-project-placeholder{
    width:100%;height:100%;display:grid;place-items:center;color:#8a95a4;font-size:2rem;
    background:linear-gradient(135deg,#f3f5f7,#e8edf2);
}
.home-project-card-body,.home-update-body{padding:1.25rem;}
.home-project-meta{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.65rem;}
.home-project-meta span{
    padding:.28rem .55rem;border-radius:999px;background:#f2f4f7;color:#667085;font-size:.72rem;font-weight:750;
}
.home-project-card h3,.home-update-card h3{margin:0 0 .7rem;font-size:1.05rem;line-height:1.35;}
.home-project-card h3 a,.home-update-card h3 a{color:#0f2441;text-decoration:none;}
.home-section-action{margin-top:1.75rem;text-align:center;}

.home-updates-preview{padding:4.5rem 0;background:#f8fafc;}
.home-update-date{display:block;margin-bottom:.5rem;color:#ef2b2d;font-size:.76rem;font-weight:800;text-transform:uppercase;}
.home-update-body p{color:#667085;line-height:1.6;}
.home-contact-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-top:1.1rem;}

/* Projects page phase browser */
.daa3-project-phases{padding:4.5rem 0;background:#f8fafc;}
.phase-section-heading{text-align:center;max-width:760px;margin:0 auto 1.6rem;}
.phase-section-heading h2{margin:0 0 .5rem;color:#ef2b2d;font-size:clamp(2rem,3vw,2.6rem);}
.phase-section-heading p{color:#667085;}

.phase-jump-nav{
    display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1.7rem;
}
.phase-jump-nav a{
    padding:.72rem 1.05rem;border-radius:999px;background:#0f2441;color:#fff;text-decoration:none;font-weight:800;
}
.phase-jump-nav a:hover{background:#ef2b2d;}

.phase-accordion{display:grid;gap:1rem;}
.phase-panel{
    border:1px solid rgba(15,36,65,.09);border-radius:18px;background:#fff;
    box-shadow:0 12px 30px rgba(15,36,65,.06);overflow:hidden;
}
.phase-panel summary{
    list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;
    padding:1.25rem 1.4rem;color:#0f2441;font-weight:850;font-size:1.12rem;
}
.phase-panel summary::-webkit-details-marker{display:none;}
.phase-panel summary::after{content:"+";font-size:1.4rem;color:#ef2b2d;}
.phase-panel[open] summary::after{content:"–";}
.phase-count{font-size:.76rem;font-weight:750;color:#667085;background:#f2f4f7;padding:.34rem .62rem;border-radius:999px;margin-left:auto;margin-right:.7rem;}

.phase-project-grid{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:0 1.25rem 1.25rem;
}
.phase-project-card{
    overflow:hidden;border:1px solid rgba(15,36,65,.08);border-radius:15px;background:#fff;
}
.phase-project-media{display:block;height:155px;background:#edf1f5;overflow:hidden;}
.phase-project-media img{width:100%;height:100%;object-fit:cover;display:block;}
.phase-project-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#9aa4b2;font-size:1.6rem;background:linear-gradient(135deg,#f5f7f9,#e9eef2);}
.phase-project-body{padding:1rem;}
.phase-project-meta{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:.55rem;}
.phase-project-meta span{font-size:.7rem;font-weight:750;color:#667085;background:#f2f4f7;padding:.25rem .5rem;border-radius:999px;}
.phase-project-body h3{margin:0 0 .55rem;font-size:.98rem;line-height:1.35;}
.phase-project-body h3 a{color:#0f2441;text-decoration:none;}
.phase-project-body p{margin:0 0 .7rem;color:#667085;font-size:.87rem;line-height:1.55;}
.phase-project-link{color:#ef2b2d;font-weight:800;text-decoration:none;font-size:.84rem;}

/* Individual project */
.project-detail-page{padding:3.5rem 0 5rem;background:#fff;}
.project-back-link{display:inline-block;margin-bottom:1rem;color:#667085;text-decoration:none;font-weight:700;}
.project-detail-kicker{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.65rem;}
.project-detail-kicker span{background:#0f2441;color:#fff;border-radius:999px;padding:.3rem .65rem;font-size:.72rem;font-weight:800;}
.project-detail-header h1{margin:0;color:#0f2441;font-size:clamp(2rem,4vw,3.4rem);line-height:1.08;}
.project-detail-location{color:#667085;font-weight:700;margin:.85rem 0 2rem;}
.project-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,.75fr);gap:2rem;align-items:start;}
.project-feature-image{overflow:hidden;border-radius:18px;margin-bottom:1.5rem;}
.project-feature-image img{width:100%;height:auto;display:block;}
.project-detail-copy{color:#475467;line-height:1.75;}
.project-sidebar{padding:1.4rem;border-radius:17px;background:#f8fafc;border:1px solid rgba(15,36,65,.08);}
.project-sidebar h3{margin-top:0;color:#0f2441;}
.project-sidebar dl{margin:0;}
.project-sidebar dt{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#98a2b3;}
.project-sidebar dd{margin:.2rem 0 1rem;color:#0f2441;font-weight:750;}
.project-photo-section{margin-top:3rem;}
.project-photo-section .section-heading{margin-bottom:1.25rem;}
.project-photo-section .section-heading h2{margin:0 0 .35rem;color:#0f2441;}
.project-photo-section .section-heading p{margin:0;color:#667085;}
.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;}
.project-gallery img{width:100%;height:260px;object-fit:cover;border-radius:14px;}

@media(max-width:1000px){
    .home-focus-strip{grid-template-columns:repeat(3,minmax(0,1fr));}
    .home-project-grid,.home-update-grid,.phase-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
    .home-trust-grid,.home-projects-intro,.project-detail-grid{grid-template-columns:1fr;}
    .home-section-heading{align-items:flex-start;flex-direction:column;}
    .home-focus-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
    .phase-panel summary{align-items:flex-start;flex-wrap:wrap;}
    .phase-count{margin-left:0;}
    .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:520px){
    .home-focus-strip,.home-project-grid,.home-update-grid,.phase-project-grid,.project-gallery{grid-template-columns:1fr;}
}


/* v1.1.4 — preserve requested Home intro heading alignment */
.home-trust-intro .home-trust-grid h2 {
    text-align: left !important;
}


/* =========================================================
   PROJECT GALLERY — LANDSCAPE + CLICKABLE LIGHTBOX v1.1.5
   ========================================================= */
.project-photo-section {
    margin-top: 3.5rem;
}
.project-photo-section .section-heading {
    max-width: 760px;
    margin: 0 0 1.4rem;
}
.project-photo-section .section-heading h2 {
    margin: 0 0 .35rem;
    color: #0f2441;
    font-size: clamp(1.8rem, 3vw, 2.5rem);
}
.project-photo-section .section-heading p {
    margin: 0;
    color: #667085;
    line-height: 1.65;
}

.project-gallery {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 1rem;
}
.project-gallery-link {
    position: relative;
    display: block;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    border-radius: 15px;
    background: #edf1f5;
    box-shadow: 0 10px 24px rgba(15,36,65,.09);
    cursor: zoom-in;
}
.project-gallery-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
    transition: transform .28s ease, filter .28s ease;
}
.project-gallery-link:hover .project-gallery-image {
    transform: scale(1.025);
    filter: brightness(.92);
}
.project-gallery-zoom {
    position: absolute;
    right: .8rem;
    bottom: .8rem;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(15,36,65,.84);
    color: #fff;
    opacity: 0;
    transform: translateY(5px);
    transition: .2s ease;
}
.project-gallery-link:hover .project-gallery-zoom,
.project-gallery-link:focus-visible .project-gallery-zoom {
    opacity: 1;
    transform: translateY(0);
}

/* Lightbox */
.daa3-lightbox {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(4,12,25,.94);
    padding: 2rem 5rem;
}
.daa3-lightbox.is-open {
    display: flex;
}
.daa3-lightbox-stage {
    margin: 0;
    max-width: min(1180px, 88vw);
    max-height: 88vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .75rem;
}
.daa3-lightbox-stage img {
    display: block;
    max-width: 100%;
    max-height: 80vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 12px;
    box-shadow: 0 24px 70px rgba(0,0,0,.38);
}
.daa3-lightbox-stage figcaption {
    color: rgba(255,255,255,.78);
    font-size: .9rem;
    text-align: center;
}
.daa3-lightbox-close,
.daa3-lightbox-prev,
.daa3-lightbox-next {
    position: absolute;
    border: 0;
    color: #fff;
    background: rgba(255,255,255,.10);
    cursor: pointer;
    transition: background .2s ease;
}
.daa3-lightbox-close:hover,
.daa3-lightbox-prev:hover,
.daa3-lightbox-next:hover {
    background: rgba(255,255,255,.20);
}
.daa3-lightbox-close {
    top: 1rem;
    right: 1rem;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    font-size: 2rem;
    line-height: 1;
}
.daa3-lightbox-prev,
.daa3-lightbox-next {
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 70px;
    border-radius: 12px;
    font-size: 1.8rem;
}
.daa3-lightbox-prev { left: 1rem; }
.daa3-lightbox-next { right: 1rem; }
.daa3-lightbox-counter {
    position: absolute;
    left: 50%;
    bottom: 1rem;
    transform: translateX(-50%);
    color: rgba(255,255,255,.82);
    font-size: .82rem;
    font-weight: 700;
}
body.daa3-lightbox-open {
    overflow: hidden;
}

@media(max-width:900px){
    .project-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:620px){
    .project-gallery { grid-template-columns: 1fr; }
    .daa3-lightbox { padding: 4rem 1rem 3.5rem; }
    .daa3-lightbox-prev,
    .daa3-lightbox-next {
        width: 42px;
        height: 56px;
        top: auto;
        bottom: .7rem;
        transform: none;
    }
    .daa3-lightbox-prev { left: 1rem; }
    .daa3-lightbox-next { right: 1rem; }
}


/* v1.1.6 — fuller project imagery */
.project-feature-image {
    background: #edf1f5;
}
.project-feature-image img {
    width: 100% !important;
    height: auto !important;
    max-height: 620px;
    object-fit: cover;
    display: block;
}

/* =========================================================
   DAA-3 HCDT PREMIUM REDESIGN — v1.3.0
   Theme-level visual system; page content remains editable.
   ========================================================= */
:root{
  --ink:#0b1f3a;
  --ink-2:#17365d;
  --brand-red:#e53032;
  --brand-red-dark:#be2027;
  --brand-gold:#d8a53d;
  --brand-gold-soft:#f3e2b6;
  --cream:#f7f4ee;
  --paper:#ffffff;
  --mist:#f2f5f8;
  --slate:#5d6b7c;
  --line:rgba(11,31,58,.11);
  --premium-shadow:0 24px 70px rgba(11,31,58,.10);
  --premium-shadow-sm:0 12px 32px rgba(11,31,58,.08);
  --radius-xl:30px;
  --radius-lg:22px;
  --radius-md:16px;
  --ease-premium:cubic-bezier(.22,1,.36,1);
}
html{scroll-behavior:smooth;scroll-padding-top:125px;background:var(--ink);}
body{
  color:var(--ink);
  background:#fff;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::selection{background:rgba(229,48,50,.18);color:var(--ink);}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(216,165,61,.65);outline-offset:4px;}
.container{max-width:1280px;padding-inline:32px;}
main{background:#fff;overflow:hidden;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.screen-reader-text:focus{position:fixed!important;clip:auto!important;width:auto;height:auto;top:12px;left:12px;padding:12px 18px;background:#fff;color:var(--ink);z-index:100000;border-radius:10px;box-shadow:var(--premium-shadow-sm);}

/* Utility bar */
.daa3-utility-bar{background:var(--ink);color:rgba(255,255,255,.76);font-size:.72rem;letter-spacing:.04em;position:relative;z-index:1002;}
.daa3-utility-inner{min-height:34px;display:flex;align-items:center;justify-content:flex-end;gap:1rem;}
.daa3-utility-email{color:#fff;font-weight:650;display:inline-flex;align-items:center;gap:.45rem;}
.daa3-utility-email:hover{color:var(--brand-gold-soft);}

/* Premium header */
header.daa3-site-header{position:sticky;top:0;z-index:1001;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(11,31,58,.08);transition:box-shadow .3s ease,background .3s ease;}
header.daa3-site-header.is-scrolled{box-shadow:0 15px 42px rgba(11,31,58,.12);background:rgba(255,255,255,.985);}
.header-content{max-width:1360px;min-height:88px;margin:auto;padding:10px 32px;gap:2rem;}
.brand-lockup{display:flex;align-items:center;gap:15px;color:var(--ink);min-width:330px;}
.logos{gap:9px;flex:none;}
.logos img,.logos .custom-logo{height:62px!important;width:auto!important;object-fit:contain;}
.logos .custom-logo-link{display:flex;align-items:center;}
.brand-separator{width:1px;height:42px;background:linear-gradient(180deg,transparent,var(--line),transparent);}
.brand-copy{display:flex;flex-direction:column;line-height:1.05;}
.brand-copy strong{font-size:.88rem;letter-spacing:.02em;text-transform:uppercase;font-weight:850;}
.brand-copy small{font-size:.69rem;color:#7b8796;margin-top:6px;letter-spacing:.03em;}
nav ul{gap:.15rem;align-items:center;}
nav a{position:relative;padding:.8rem .74rem;color:#42516a;font-size:.88rem;font-weight:750;border-radius:10px;}
nav a:not(.vendor-btn)::after{content:"";position:absolute;height:2px;left:50%;right:50%;bottom:4px;background:var(--brand-red);border-radius:2px;transition:left .22s ease,right .22s ease;}
nav a:not(.vendor-btn):hover::after,nav a:not(.vendor-btn).active::after{left:.74rem;right:.74rem;}
nav a:hover,nav a.active{color:var(--ink);}
.vendor-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--ink);color:#fff!important;border:0;padding:.78rem 1rem!important;border-radius:12px;box-shadow:0 9px 22px rgba(11,31,58,.16);}
.vendor-btn:hover,.vendor-btn.active{background:var(--brand-red);transform:translateY(-1px);}
.vendor-btn i{font-size:.7rem;}
.menu-toggle{border:0;background:transparent;padding:10px;border-radius:10px;}
.menu-toggle span{height:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease;}

/* Premium hero */
.hero-bg.daa3-premium-hero{min-height:540px;background-position:center;isolation:isolate;overflow:hidden;}
.hero-bg.daa3-home-hero{min-height:690px;}
.hero-bg.daa3-premium-hero::before{background:linear-gradient(90deg,rgba(6,20,39,.90) 0%,rgba(6,20,39,.78) 42%,rgba(6,20,39,.25) 72%,rgba(6,20,39,.12) 100%);z-index:1;}
.hero-bg .overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(11,31,58,.18));}
.hero-pattern{position:absolute;inset:0;z-index:1;background-image:url('assets/images/premium-pattern.svg');background-position:right center;background-repeat:repeat-y;background-size:320px 320px;opacity:.38;mix-blend-mode:screen;pointer-events:none;}
.hero-bg .container{width:100%;max-width:1280px;padding:110px 32px 125px;text-align:left;}
.hero-copy{max-width:760px;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.65rem;padding:.48rem .78rem;margin-bottom:1.25rem;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.10em;text-transform:uppercase;}
.hero-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--brand-gold);box-shadow:0 0 0 5px rgba(216,165,61,.14);}
.hero-bg h1{max-width:720px;font-size:clamp(2.75rem,5.2vw,5.3rem);font-weight:850;letter-spacing:-.045em;line-height:.98;margin-bottom:1.45rem;text-wrap:balance;text-shadow:0 3px 20px rgba(0,0,0,.16);}
.daa3-inner-hero h1{font-size:clamp(2.5rem,4.2vw,4.4rem);}
.hero-bg .lead{max-width:680px;font-size:clamp(1.08rem,1.8vw,1.36rem);line-height:1.55;font-weight:650;margin-bottom:.85rem;color:#fff;}
.hero-bg .hero-description{max-width:680px;font-size:1rem;line-height:1.75;color:rgba(255,255,255,.82);}
.hero-buttons{margin-top:2rem;gap:.75rem;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:50px;padding:.85rem 1.3rem;border-radius:12px;background:var(--brand-red);font-size:.88rem;font-weight:800;letter-spacing:.01em;box-shadow:0 12px 30px rgba(229,48,50,.23);transition:transform .25s var(--ease-premium),box-shadow .25s var(--ease-premium),background .25s ease;}
.btn:hover{background:var(--brand-red-dark);transform:translateY(-3px);box-shadow:0 18px 36px rgba(229,48,50,.28);}
.btn-outline{border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.06);box-shadow:none;backdrop-filter:blur(10px);}
.btn-outline:hover{background:#fff;color:var(--ink);border-color:#fff;}
.hero-trust-row{display:flex;flex-wrap:wrap;gap:1.15rem;margin-top:2.25rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.16);max-width:680px;color:rgba(255,255,255,.8);font-size:.78rem;font-weight:700;}
.hero-trust-row span{display:flex;align-items:center;gap:.45rem;}
.hero-trust-row i{color:var(--brand-gold-soft);}
.hero-edge{position:absolute;z-index:2;left:0;right:0;bottom:-1px;height:40px;background:#fff;clip-path:polygon(0 70%,38% 70%,40% 0,100% 0,100% 100%,0 100%);opacity:1;}

/* Global section rhythm */
section{padding:96px 0;}
.daa3-editable-page-content>section{position:relative;}
.daa3-editable-page-content>section:nth-of-type(even):not(.wwa-cta):not(.updates-cta):not(.projects-cta):not(.governance-cta):not(.contact-enhanced){background:linear-gradient(180deg,#f7f9fb 0%,#f2f5f8 100%);}
.daa3-editable-page-content>section:nth-of-type(odd):not(.wwa-cta):not(.updates-cta):not(.projects-cta):not(.governance-cta):not(.contact-enhanced){background:#fff;}
section h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.08;letter-spacing:-.035em;color:var(--ink);font-weight:840;text-wrap:balance;}
h2 span{background:none!important;color:inherit!important;}
.section-sub{max-width:760px;margin:0 auto 1rem;font-size:1.05rem;line-height:1.7;color:var(--slate);}
.daa3-editable-page-content section>.container>p:not(.section-sub){max-width:880px;margin:0 auto;color:var(--slate);line-height:1.78;text-align:center;}

/* Premium card system */
.pillars-grid,.approach-grid,.values-grid,.work-steps,.highlights-grid,.timeline-grid,.communication-grid,.themes-grid,.process-steps,.principles-grid,.structure-grid,.principles-gov-grid,.mv-grid{gap:1.35rem;margin-top:2.4rem;}
.pillar-card,.approach-item,.value-card,.work-step,.highlight-card,.timeline-item,.comm-card,.theme-card,.process-step,.principle-card,.structure-card,.principle-gov-card,.mv-card{position:relative;overflow:hidden;background:rgba(255,255,255,.96);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--premium-shadow-sm);text-align:left;transition:transform .35s var(--ease-premium),box-shadow .35s var(--ease-premium),border-color .35s ease;}
.pillar-card::before,.value-card::before,.highlight-card::before,.structure-card::before,.principle-gov-card::before,.work-step::before,.approach-item::before,.mv-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--brand-red),var(--brand-gold));opacity:.86;}
.pillar-card:hover,.approach-item:hover,.value-card:hover,.work-step:hover,.highlight-card:hover,.timeline-item:hover,.comm-card:hover,.theme-card:hover,.process-step:hover,.principle-card:hover,.structure-card:hover,.principle-gov-card:hover,.mv-card:hover{transform:translateY(-7px);box-shadow:var(--premium-shadow);border-color:rgba(216,165,61,.30);}
.pillar-card h3,.approach-item h3,.value-card h3,.work-step h3,.highlight-card h3,.timeline-item h3,.comm-card h3,.theme-card h3,.process-step h3,.principle-card h3,.structure-card h3,.principle-gov-card h3{font-size:1.13rem;color:var(--ink);margin:0 0 .65rem;line-height:1.3;}
.pillar-card p,.approach-item p,.value-card p,.work-step p,.highlight-card p,.timeline-item p,.comm-card p,.theme-card p,.process-step p,.principle-card p,.structure-card p,.principle-gov-card p,.mv-card p{color:var(--slate);line-height:1.72;font-size:.94rem;}
.pillar-icon,.value-icon{width:58px;height:58px;display:grid;place-items:center;margin:0 0 1.1rem;border-radius:16px;background:linear-gradient(135deg,rgba(229,48,50,.10),rgba(216,165,61,.14));font-size:1.65rem;}
.structure-card>i,.principle-gov-card>i,.highlight-card>i,.comm-card>i{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:rgba(11,31,58,.06);color:var(--brand-red);font-size:1.15rem;margin-bottom:1.1rem;}
.step-number{width:44px;height:44px;background:var(--ink);box-shadow:0 8px 18px rgba(11,31,58,.16);}

/* Home */
.home-trust-intro{padding:88px 0 82px;background:#fff;}
.home-trust-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:5.5rem;align-items:center;}
.home-trust-grid h2{position:relative;font-size:clamp(2.35rem,4vw,4rem);letter-spacing:-.045em;line-height:1.03;padding-left:1.4rem;}
.home-trust-grid h2::before{content:"";position:absolute;left:0;top:.1em;bottom:.08em;width:5px;border-radius:4px;background:linear-gradient(180deg,var(--brand-red),var(--brand-gold));}
.home-trust-grid p{font-size:1.08rem;line-height:1.82;}
.home-eyebrow{color:var(--brand-red);font-size:.70rem;letter-spacing:.13em;}
.home-text-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--ink);font-size:.88rem;font-weight:800;border-bottom:1px solid rgba(11,31,58,.20);padding-bottom:3px;}
.home-text-link:hover{color:var(--brand-red);border-color:var(--brand-red);}
.home-focus-preview{padding:75px 0;background:var(--cream)!important;}
.home-section-heading{margin-bottom:2rem;}
.home-section-heading h2{font-size:clamp(2rem,3.4vw,3rem);}
.home-focus-strip{gap:1rem;}
.home-focus-item{min-height:112px;padding:1.25rem;border:1px solid rgba(11,31,58,.08);border-top:0;border-left:4px solid var(--focus);border-radius:18px;box-shadow:0 12px 28px rgba(11,31,58,.07);transition:transform .3s var(--ease-premium),box-shadow .3s var(--ease-premium);}
.home-focus-item:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(11,31,58,.12);}
.home-focus-icon{width:46px;height:46px;border-radius:13px;font-size:1.15rem;}
.home-projects-preview{padding:96px 0;background:#fff;}
.home-projects-intro{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:3rem;margin-bottom:2.4rem;}
.home-project-stat{position:relative;overflow:hidden;min-height:190px;padding:2rem;border-radius:26px;background:linear-gradient(135deg,var(--ink),#163b65);box-shadow:0 22px 55px rgba(11,31,58,.18);}
.home-project-stat::after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-75px;top:-75px;box-shadow:0 0 0 28px rgba(255,255,255,.03),0 0 0 55px rgba(255,255,255,.02);}
.home-project-stat strong{font-size:4.2rem;color:var(--brand-gold-soft);}
.home-project-stat span{max-width:220px;font-size:.95rem;}
.home-projects-copy h2{font-size:clamp(2.15rem,3.7vw,3.25rem);letter-spacing:-.04em;}
.home-project-grid,.home-update-grid{gap:1.2rem;}
.home-project-card,.home-update-card,.cms-card{border-radius:20px;border:1px solid var(--line);box-shadow:var(--premium-shadow-sm);transition:transform .35s var(--ease-premium),box-shadow .35s var(--ease-premium);}
.home-project-card:hover,.home-update-card:hover,.cms-card:hover{transform:translateY(-6px);box-shadow:var(--premium-shadow);}
.home-project-image,.home-update-image,.cms-card-image{height:225px;}
.home-project-image img,.home-update-image img,.cms-card-image img{transition:transform .45s var(--ease-premium);}
.home-project-card:hover img,.home-update-card:hover img,.cms-card:hover img{transform:scale(1.035);}
.home-project-card-body,.home-update-body,.cms-card-body{padding:1.4rem 1.4rem 1.5rem;}
.home-project-meta span,.cms-meta span{background:#f2f5f8;color:#536174;border:1px solid rgba(11,31,58,.05);}
.home-updates-preview{padding:96px 0;background:#f4f7fa!important;}
.contact-enhanced{padding:92px 0;background:linear-gradient(135deg,#f8fafc,#edf2f6)!important;}
.contact-details,.contact-cta-box{padding:2.2rem;border-radius:24px;border:1px solid var(--line);box-shadow:var(--premium-shadow-sm);}
.contact-cta-box{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--ink),#17385f);color:#fff;text-align:left;}
.contact-cta-box::after{content:"";position:absolute;inset:auto -90px -120px auto;width:280px;height:280px;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.02);}
.contact-cta-box h2{color:#fff;text-align:left;}
.contact-cta-box p{color:rgba(255,255,255,.78);}
.contact-cta-box .home-text-link{color:#fff;border-color:rgba(255,255,255,.3);}

/* Who we are */
.wwa-intro{max-width:1100px;margin:0 auto;padding:88px 32px;background:#fff;border-radius:0;box-shadow:none;text-align:center;}
.wwa-intro:hover{transform:none;box-shadow:none;}
.wwa-intro .lead{font-size:1.2rem;color:var(--ink);font-weight:650;margin-bottom:.8rem;}
.wwa-intro p:last-child{max-width:850px;margin:auto;color:var(--slate);line-height:1.8;}
.mv-card h2{text-align:left;font-size:1.7rem;}
.chairman-section{background:var(--cream)!important;}
.chairman-card{gap:0;padding:0;overflow:hidden;border-radius:30px;background:#fff;border:1px solid var(--line);box-shadow:var(--premium-shadow);}
.chairman-image{align-self:stretch;min-height:460px;}
.chairman-image img{height:100%;min-height:460px;border-radius:0;object-fit:cover;}
.chairman-info{padding:3.5rem;}
.chairman-info h2{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--brand-red);font-weight:850;}
.chairman-info h3{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.05;color:var(--ink);letter-spacing:-.03em;}
.chairman-info p{color:var(--slate);line-height:1.78;}

/* Projects */
.daa3-focus-showcase{padding:86px 0 100px;background:var(--cream);}
.focus-equal-grid{gap:1.15rem;}
.focus-equal-card{min-height:355px;border-radius:22px;box-shadow:var(--premium-shadow-sm);}
.focus-card-image{height:175px;}
.focus-equal-card h3{font-size:1.14rem;}
.daa3-project-phases{padding:100px 0;background:#fff;}
.phase-section-heading h2{color:var(--ink);font-size:clamp(2.1rem,3.5vw,3.1rem);}
.phase-jump-nav a{background:#eef2f6;color:var(--ink);border:1px solid var(--line);}
.phase-jump-nav a:hover{background:var(--ink);color:#fff;}
.phase-panel{border-radius:22px;border:1px solid var(--line);box-shadow:var(--premium-shadow-sm);}
.phase-panel summary{padding:1.4rem 1.55rem;font-size:1.13rem;}
.phase-panel summary::after{color:var(--brand-red);}
.phase-project-grid{gap:1.1rem;padding:0 1.4rem 1.4rem;}
.phase-project-card{border-radius:18px;box-shadow:0 8px 22px rgba(11,31,58,.06);transition:transform .3s var(--ease-premium),box-shadow .3s var(--ease-premium);}
.phase-project-card:hover{transform:translateY(-5px);box-shadow:var(--premium-shadow-sm);}
.phase-project-media{height:190px;}
.phase-project-media img{transition:transform .4s var(--ease-premium);}
.phase-project-card:hover img{transform:scale(1.04);}
.phase-project-body{padding:1.2rem;}
.phase-project-link{color:var(--brand-red);}

/* Single project */
.project-detail-page{padding:72px 0 100px;background:linear-gradient(180deg,#fff,#f8fafc);}
.project-back-link{display:inline-flex;align-items:center;gap:.4rem;color:#667085;}
.project-detail-header{max-width:920px;margin-bottom:2.2rem;}
.project-detail-header h1{font-size:clamp(2.5rem,4.8vw,4.6rem);letter-spacing:-.05em;}
.project-detail-kicker span{background:var(--cream);color:var(--ink);border:1px solid rgba(216,165,61,.35);}
.project-detail-grid{gap:2.2rem;}
.project-feature-image{border-radius:26px;box-shadow:var(--premium-shadow);border:1px solid rgba(11,31,58,.06);}
.project-sidebar{position:sticky;top:140px;padding:1.6rem;border-radius:20px;background:#fff;box-shadow:var(--premium-shadow-sm);}
.project-sidebar h3{font-size:1.1rem;}
.project-photo-section{margin-top:4rem;}
.project-gallery{gap:1.15rem;}
.project-gallery-link{border-radius:18px;box-shadow:0 12px 28px rgba(11,31,58,.10);}

/* Updates, governance, contact, vendor */
.video-card{max-width:940px;padding:2.4rem;border-radius:28px;border:1px solid var(--line);box-shadow:var(--premium-shadow);}
.timeline-item{border-top:3px solid var(--brand-gold);}
.timeline-year{background:var(--ink);}
.board-cms-grid{gap:1.3rem;}
.board-cms-card{border-radius:22px;border:1px solid var(--line);box-shadow:var(--premium-shadow-sm);transition:transform .3s var(--ease-premium),box-shadow .3s var(--ease-premium);}
.board-cms-card:hover{transform:translateY(-6px);box-shadow:var(--premium-shadow);}
.board-cms-card img{width:172px;height:172px;border:6px solid #fff;box-shadow:0 0 0 1px var(--line),0 14px 30px rgba(11,31,58,.12);}
.contact-editor-intro{padding-bottom:35px;}
.contact-page-grid{gap:1.5rem;}
.contact-info-box,.contact-form-box{padding:2.2rem;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--premium-shadow-sm);}
.form-group input,.form-group textarea{padding:.9rem 1rem;border-radius:12px;border:1px solid rgba(11,31,58,.15);background:#fbfcfd;transition:border-color .2s ease,box-shadow .2s ease;}
.form-group input:focus,.form-group textarea:focus{border-color:var(--brand-gold);box-shadow:0 0 0 4px rgba(216,165,61,.12);outline:none;background:#fff;}
.vendor-page{padding:100px 0;background:linear-gradient(180deg,#f8fafc,#f2f5f8)!important;}
.vendor-card{max-width:900px;padding:3.2rem;border-radius:28px;border:1px solid var(--line);box-shadow:var(--premium-shadow);}
.vendor-card h2{font-size:clamp(2rem,3vw,2.8rem);}
.vendor-address{padding:1rem 1.2rem;border-left:4px solid var(--brand-gold);background:var(--cream);border-radius:0 12px 12px 0;line-height:1.7;}
.wwa-cta,.updates-cta,.projects-cta,.governance-cta{position:relative;overflow:hidden;padding:86px 20px;background:linear-gradient(135deg,var(--ink),#183e69);}
.wwa-cta::before,.updates-cta::before,.projects-cta::before,.governance-cta::before{content:"";position:absolute;inset:0;background-image:url('assets/images/premium-pattern.svg');background-position:right center;opacity:.18;}
.wwa-cta .container,.updates-cta .container,.projects-cta .container,.governance-cta .container{position:relative;z-index:1;}
.wwa-cta h2,.updates-cta h2,.projects-cta h2,.governance-cta h2{font-size:clamp(2rem,3.6vw,3.1rem);max-width:850px;margin-inline:auto;}
.wwa-cta p,.updates-cta p,.projects-cta p,.governance-cta p{max-width:720px;margin-inline:auto;}

/* Premium footer */
.daa3-site-footer{position:relative;background:#08172b;color:#9fb0c3;padding:0 0 26px;}
.footer-accent{height:5px;background:linear-gradient(90deg,var(--brand-red) 0 33%,var(--brand-gold) 33% 66%,#1d7f68 66% 100%);}
.premium-footer-grid{grid-template-columns:1.45fr .72fr .78fr 1.05fr;gap:3rem;padding-top:68px;margin-bottom:3rem;}
.footer-brand-lockup{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;}
.footer-brand-lockup img{width:60px;height:auto;}
.footer-brand-lockup strong{display:block;color:#fff;font-size:1.12rem;letter-spacing:.01em;}
.footer-brand-lockup span{display:block;color:#8498af;font-size:.77rem;margin-top:.2rem;}
.footer-brand p{max-width:360px;line-height:1.75;color:#93a6ba;}
.footer-values{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:1.15rem;}
.footer-values span{padding:.38rem .62rem;border:1px solid rgba(255,255,255,.11);border-radius:999px;font-size:.68rem;color:#c9d4df;}
.footer-links h4,.footer-contact h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#fff;}
.footer-links li{margin-bottom:.68rem;}
.footer-links a,.footer-contact a{color:#9fb0c3;}
.footer-links a:hover,.footer-contact a:hover{color:#fff;}
.footer-contact p{align-items:flex-start;line-height:1.6;}
.footer-contact i{width:18px;margin-top:.22rem;color:var(--brand-gold);}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.08);}
.copyright{padding:0;border:0;text-align:left;color:#6f839a;}
.footer-back-top{display:inline-flex;align-items:center;gap:.55rem;color:#cbd5df;font-size:.78rem;font-weight:750;}
.footer-back-top:hover{color:#fff;}
.footer-back-top i{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.07);}

/* Subtle reveal motion */
@media (prefers-reduced-motion:no-preference){
  .daa3-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease-premium),transform .7s var(--ease-premium);}
  .daa3-reveal.is-visible{opacity:1;transform:none;}
}

/* Responsive premium */
@media(max-width:1180px){
  .brand-copy{display:none;}
  .brand-separator{display:none;}
  .brand-lockup{min-width:auto;}
  .header-content{gap:1rem;}
  nav a{padding:.72rem .58rem;font-size:.83rem;}
  .premium-footer-grid{grid-template-columns:1.3fr 1fr 1fr;}
  .footer-contact{grid-column:span 1;}
}
@media(max-width:992px){
  /* Offset content anchors without scrolling a focused header button into view. */
  html{scroll-padding-top:0;}
  main[id],main [id]{scroll-margin-top:100px;}
  .daa3-utility-bar{display:none;}
  .header-content{min-height:76px;padding:8px 22px;}
  .logos img,.logos .custom-logo{height:54px!important;}
  .menu-toggle{display:flex;}
  nav{top:76px;width:min(88%,380px);height:calc(100% - 76px);padding:1.25rem 1.4rem;}
  nav ul{gap:.25rem;}
  nav a{display:block;padding:.9rem 1rem;font-size:.95rem;}
  .vendor-btn{margin-top:.45rem;justify-content:center;}
  .hero-bg.daa3-home-hero{min-height:620px;}
  .hero-bg .container{padding:92px 24px 105px;}
  .hero-copy{max-width:720px;}
  .home-trust-grid{gap:2.5rem;}
  .premium-footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:2rem;}
}
@media(max-width:780px){
  .container{padding-inline:22px;}
  section{padding:72px 0;}
  .hero-bg.daa3-premium-hero,.hero-bg.daa3-home-hero{min-height:560px;}
  .hero-bg.daa3-premium-hero::before{background:linear-gradient(90deg,rgba(6,20,39,.90),rgba(6,20,39,.68));}
  .hero-bg .container{text-align:left;padding:82px 22px 94px;}
  .hero-bg h1{font-size:clamp(2.55rem,12vw,4rem);}
  .hero-buttons{justify-content:flex-start;}
  .hero-trust-row{gap:.8rem;}
  .home-trust-grid{grid-template-columns:1fr;gap:1.5rem;}
  .home-trust-grid h2{font-size:2.55rem;}
  .home-projects-intro{grid-template-columns:1fr;}
  .chairman-card{flex-direction:column;text-align:left;}
  .chairman-image{width:100%;min-height:360px;}
  .chairman-image img{min-height:360px;max-height:470px;}
  .chairman-info{padding:2rem;}
  .chairman-info h2{text-align:left;}
  .project-sidebar{position:static;}
  .premium-footer-grid{grid-template-columns:1fr 1fr;}
  .footer-brand{grid-column:1/-1;}
}
@media(max-width:560px){
  .header-content{padding-inline:16px;}
  .logos{gap:5px;}
  .logos img,.logos .custom-logo{height:48px!important;}
  .hero-bg.daa3-premium-hero,.hero-bg.daa3-home-hero{min-height:540px;}
  .hero-bg .container{padding:74px 18px 88px;}
  .hero-eyebrow{font-size:.63rem;letter-spacing:.07em;}
  .hero-bg .lead{font-size:1rem;}
  .hero-bg .hero-description{font-size:.92rem;}
  .hero-buttons{flex-direction:column;align-items:stretch;max-width:300px;}
  .btn{width:100%;}
  .hero-trust-row{font-size:.72rem;}
  .hero-edge{height:25px;}
  .home-trust-intro{padding:65px 0;}
  .home-trust-grid h2{font-size:2.15rem;}
  .home-focus-strip{grid-template-columns:1fr;}
  .home-project-stat strong{font-size:3.5rem;}
  .focus-equal-grid{grid-template-columns:1fr;}
  .premium-footer-grid{grid-template-columns:1fr;gap:2rem;}
  .footer-brand{grid-column:auto;}
  .footer-bottom{align-items:flex-start;flex-direction:column;}
}


/* =========================================================
   v1.4.6 — SITE-WIDE LAYOUT QA / PREMIUM ALIGNMENT SYSTEM
   One structural alignment system for all public templates.
   This centres SECTION GROUPS without forcing left-aligned card
   copy, hero copy, article text, project details, or contact text
   to become centred.
   ========================================================= */
:root{
    --daa3-content-max:1280px;
    --daa3-header-max:1280px;
    --daa3-grid-max:1100px;
    --daa3-wide-grid-max:1180px;
    --daa3-reading-max:900px;
    --daa3-gutter:32px;
}

/* One reliable site axis. The max width includes the horizontal gutters. */
.container,
.header-content{
    width:100%;
    max-width:var(--daa3-content-max);
    margin-left:auto;
    margin-right:auto;
    padding-left:var(--daa3-gutter);
    padding-right:var(--daa3-gutter);
}
.header-content{max-width:var(--daa3-header-max);}

/* Keep every page section on the same horizontal axis. */
.daa3-editable-page-content > section > .container,
.daa3-editable-page-content section.cms-section > .container,
.daa3-editable-page-content section.daa3-focus-showcase > .container,
.daa3-editable-page-content section.daa3-project-phases > .container,
.daa3-home-content > section > .container,
.projects-page-editor-content > section > .container,
.daa3-site-footer > .container{
    width:100%;
    max-width:var(--daa3-content-max);
    margin-inline:auto !important;
}

/* Gutenberg/editor wrappers can otherwise introduce a subtle left offset. */
.daa3-editable-page-content > .wp-block-group:not(.alignfull),
.projects-page-editor-content > .wp-block-group:not(.alignfull),
.daa3-editable-page-content > .wp-block-columns:not(.alignfull),
.projects-page-editor-content > .wp-block-columns:not(.alignfull){
    width:100%;
    max-width:var(--daa3-content-max);
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:var(--daa3-gutter);
    padding-right:var(--daa3-gutter);
}
.daa3-editable-page-content > .wp-block-group.alignwide,
.projects-page-editor-content > .wp-block-group.alignwide,
.daa3-editable-page-content > .wp-block-columns.alignwide,
.projects-page-editor-content > .wp-block-columns.alignwide{
    width:100%;
    max-width:var(--daa3-content-max);
    margin-inline:auto !important;
}
.daa3-editable-page-content > .wp-block-group.alignfull,
.projects-page-editor-content > .wp-block-group.alignfull{
    width:100%;
    max-width:none;
    margin-inline:0 !important;
}
.daa3-editable-page-content .wp-block-group__inner-container,
.projects-page-editor-content .wp-block-group__inner-container{
    width:100%;
    margin-inline:auto;
}

/* Section headings and explanatory copy share a consistent centred measure. */
.daa3-editable-page-content section > .container > h1,
.daa3-editable-page-content section > .container > h2,
.daa3-editable-page-content section > .container > .section-sub,
.daa3-editable-page-content section > .container > p:not(.section-sub),
.cms-section > .container > .section-heading,
.phase-section-heading{
    margin-left:auto;
    margin-right:auto;
}
.daa3-editable-page-content section > .container > h2,
.cms-section > .container > .section-heading,
.phase-section-heading{
    text-align:center;
}
.daa3-editable-page-content section > .container > p:not(.section-sub){
    max-width:var(--daa3-reading-max);
}
.section-sub{max-width:760px;}
.section-heading{max-width:900px;margin-inline:auto;}

/* The Who We Are intro should be a full-width section with centred inner copy. */
.wwa-intro{
    width:100%;
    max-width:none;
    margin:0;
}
.wwa-intro .container{
    width:100%;
    max-width:1040px;
    margin-inline:auto;
    padding-left:var(--daa3-gutter);
    padding-right:var(--daa3-gutter);
}

/* Stable three-column premium card groups.
   These sections all contain three primary items in the current site content. */
.pillars-grid,
.approach-grid,
.values-grid,
.work-steps,
.highlights-grid,
.timeline-grid,
.communication-grid,
.themes-grid,
.process-steps,
.principles-grid,
.structure-grid,
.principles-gov-grid{
    width:100%;
    max-width:var(--daa3-grid-max);
    margin:2.4rem auto 0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1.35rem;
    align-items:stretch;
}

/* Mission / vision is deliberately two-column, but follows the same centre line. */
.mv-grid{
    width:100%;
    max-width:1000px;
    margin:2.4rem auto 0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1.35rem;
    align-items:stretch;
}

/* Large composite modules line up to a common premium working width. */
.chairman-card,
.contact-page-grid,
.contact-enhanced-grid,
.home-trust-grid,
.home-projects-intro,
.home-project-grid,
.home-update-grid,
.home-focus-strip,
.phase-accordion,
.project-detail-grid{
    width:100%;
    max-width:var(--daa3-wide-grid-max);
    margin-left:auto;
    margin-right:auto;
}
.video-card,
.vendor-card{
    margin-left:auto;
    margin-right:auto;
}

/* Dynamic CMS collections: incomplete final rows are centred, not left stranded. */
.cms-grid,
.board-cms-grid,
.phase-project-grid,
.project-gallery{
    width:100%;
    max-width:var(--daa3-wide-grid-max);
    margin-left:auto;
    margin-right:auto;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
}
.cms-grid,
.board-cms-grid{gap:1.35rem;}
.phase-project-grid{gap:1.1rem;}
.project-gallery{gap:1.15rem;}
.cms-grid > .cms-card,
.board-cms-grid > .board-cms-card,
.phase-project-grid > .phase-project-card,
.project-gallery > .project-gallery-link{
    flex:0 1 calc((100% - 2.7rem)/3);
    min-width:0;
}

/* Five focus-area cards centre gracefully at every breakpoint. */
.focus-equal-grid{
    width:100%;
    max-width:var(--daa3-wide-grid-max);
    margin-left:auto;
    margin-right:auto;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    gap:1.15rem;
}
.focus-equal-grid > .focus-equal-card{
    flex:1 1 205px;
    max-width:260px;
}

/* Home grids remain intentionally three-up, but the whole group is centred. */
.home-project-grid,
.home-update-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1.2rem;
}
.home-focus-strip{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:1rem;
}

/* Project phase navigation and accordions stay visually attached to the heading. */
.phase-jump-nav{
    max-width:var(--daa3-wide-grid-max);
    margin-left:auto;
    margin-right:auto;
    justify-content:center;
}
.phase-accordion{max-width:var(--daa3-wide-grid-max);}

/* Nested project gallery is content, not a new full page section. */
.project-photo-section{
    padding:0;
    margin-top:4rem;
}

/* Long-form updates should read like editorial content, not span the full monitor. */
body.single-daa3_update .cms-section > .container,
body.single-daa3-update .cms-section > .container{
    max-width:1020px;
}
body.single-daa3_update .cms-section article,
body.single-daa3-update .cms-section article,
.index-section article{
    margin-left:auto;
    margin-right:auto;
}
body.single-daa3_update .cms-section article > p,
body.single-daa3_update .cms-section article > ul,
body.single-daa3_update .cms-section article > ol,
body.single-daa3_update .cms-section article > blockquote,
body.single-daa3-update .cms-section article > p,
body.single-daa3-update .cms-section article > ul,
body.single-daa3-update .cms-section article > ol,
body.single-daa3-update .cms-section article > blockquote{
    max-width:var(--daa3-reading-max);
    margin-left:auto;
    margin-right:auto;
}

/* Home project images always use a clean landscape crop. */
.home-project-image{
    display:block;
    aspect-ratio:16 / 9;
    height:auto;
    overflow:hidden;
    background:#edf1f5;
}
.home-project-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

/* Tablet: two-up where useful, while preserving a centred last item. */
@media (max-width:1024px){
    :root{--daa3-gutter:24px;}
    .pillars-grid,
    .approach-grid,
    .values-grid,
    .work-steps,
    .highlights-grid,
    .timeline-grid,
    .communication-grid,
    .themes-grid,
    .process-steps,
    .principles-grid,
    .structure-grid,
    .principles-gov-grid{
        max-width:820px;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .pillars-grid > :last-child:nth-child(odd),
    .approach-grid > :last-child:nth-child(odd),
    .values-grid > :last-child:nth-child(odd),
    .work-steps > :last-child:nth-child(odd),
    .highlights-grid > :last-child:nth-child(odd),
    .timeline-grid > :last-child:nth-child(odd),
    .communication-grid > :last-child:nth-child(odd),
    .themes-grid > :last-child:nth-child(odd),
    .process-steps > :last-child:nth-child(odd),
    .principles-grid > :last-child:nth-child(odd),
    .structure-grid > :last-child:nth-child(odd),
    .principles-gov-grid > :last-child:nth-child(odd){
        grid-column:1 / -1;
        width:min(100%,400px);
        justify-self:center;
    }
    .cms-grid > .cms-card,
    .board-cms-grid > .board-cms-card,
    .phase-project-grid > .phase-project-card,
    .project-gallery > .project-gallery-link{
        flex-basis:calc((100% - 1.35rem)/2);
    }
    .home-project-grid,
    .home-update-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .home-project-grid > :last-child:nth-child(odd),
    .home-update-grid > :last-child:nth-child(odd){
        grid-column:1 / -1;
        width:min(100%,560px);
        justify-self:center;
    }
    .home-focus-strip{grid-template-columns:repeat(3,minmax(0,1fr));}
    .home-focus-strip > :nth-last-child(2):nth-child(3n+1){grid-column:1 / 2;}
}

@media (max-width:760px){
    :root{--daa3-gutter:22px;}
    .mv-grid{grid-template-columns:1fr;max-width:620px;}
    .contact-page-grid,
    .contact-enhanced-grid,
    .home-trust-grid,
    .home-projects-intro,
    .project-detail-grid{max-width:700px;}
    .home-focus-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
    .focus-equal-grid > .focus-equal-card{flex-basis:calc((100% - 1.15rem)/2);max-width:none;}
}

@media (max-width:700px){
    :root{--daa3-gutter:18px;}
    .pillars-grid,
    .approach-grid,
    .values-grid,
    .work-steps,
    .highlights-grid,
    .timeline-grid,
    .communication-grid,
    .themes-grid,
    .process-steps,
    .principles-grid,
    .structure-grid,
    .principles-gov-grid,
    .mv-grid,
    .home-project-grid,
    .home-update-grid,
    .home-focus-strip{
        grid-template-columns:1fr;
        max-width:560px;
    }
    .pillars-grid > :last-child:nth-child(odd),
    .approach-grid > :last-child:nth-child(odd),
    .values-grid > :last-child:nth-child(odd),
    .work-steps > :last-child:nth-child(odd),
    .highlights-grid > :last-child:nth-child(odd),
    .timeline-grid > :last-child:nth-child(odd),
    .communication-grid > :last-child:nth-child(odd),
    .themes-grid > :last-child:nth-child(odd),
    .process-steps > :last-child:nth-child(odd),
    .principles-grid > :last-child:nth-child(odd),
    .structure-grid > :last-child:nth-child(odd),
    .principles-gov-grid > :last-child:nth-child(odd),
    .home-project-grid > :last-child:nth-child(odd),
    .home-update-grid > :last-child:nth-child(odd){
        grid-column:auto;
        width:100%;
        justify-self:stretch;
    }
    .cms-grid > .cms-card,
    .board-cms-grid > .board-cms-card,
    .phase-project-grid > .phase-project-card,
    .project-gallery > .project-gallery-link,
    .focus-equal-grid > .focus-equal-card{
        flex-basis:100%;
        max-width:560px;
    }
    .daa3-editable-page-content > .wp-block-group:not(.alignfull),
    .projects-page-editor-content > .wp-block-group:not(.alignfull),
    .daa3-editable-page-content > .wp-block-columns:not(.alignfull),
    .projects-page-editor-content > .wp-block-columns:not(.alignfull){
        padding-left:var(--daa3-gutter);
        padding-right:var(--daa3-gutter);
    }
}

/* Projects Execution Review Workshop — v1.4.9 */
.daa3-review-workshop-feature .section-heading h2 a { color: inherit; text-decoration: none; }
.daa3-workshop-banner { max-width: 960px; margin: 1.5rem auto 2rem; }
.daa3-workshop-banner img { display: block; width: 100%; height: auto; border: 1px solid var(--border); border-radius: 14px; }
.daa3-workshop-content > p { margin: 1rem 0; line-height: 1.75; }
.daa3-workshop-details { display: grid; grid-template-columns: 1fr .7fr 1.6fr; gap: 1.2rem; padding: 1.5rem; margin: 1.5rem 0; background: #f3f6fa; border-radius: 14px; }
.daa3-workshop-details dt { font-weight: 800; color: var(--navy); margin-bottom: .35rem; }
.daa3-workshop-details dd { margin: 0; line-height: 1.6; }
.daa3-event-gallery { margin: 1.5rem 0; }
.daa3-event-gallery > .project-gallery-link { flex-basis: calc((100% - 2.3rem) / 3); }
.daa3-event-gallery .project-gallery-image { object-fit: contain !important; }
.daa3-event-gallery .project-gallery-link[hidden], .daa3-gallery-more[hidden] { display: none !important; }
.daa3-event-gallery-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin: 1.5rem 0 2rem; }
.daa3-event-gallery-toolbar p { margin: 0; color: var(--gray); }
@media (max-width: 760px) {
    .daa3-workshop-details { grid-template-columns: 1fr; gap: 1rem; }
    .daa3-event-gallery > .project-gallery-link { flex-basis: calc((100% - 1.15rem) / 2); }
}
@media (max-width: 520px) {
    .daa3-event-gallery > .project-gallery-link { flex-basis: 100%; }
    .daa3-workshop-details { padding: 1.1rem; }
}

/* Adverts & Tenders — v1.5.4 */
#nav a{white-space:nowrap;}
.daa3-adverts-content>p{max-width:var(--daa3-reading-max);margin:1.5rem auto;padding-inline:var(--daa3-gutter);}
.daa3-advert-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);color:#fff;padding:82px 0 88px;}
.daa3-advert-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 95% 0%,rgba(216,165,61,.13),transparent 48%),linear-gradient(125deg,transparent 45%,rgba(255,255,255,.025) 45%,rgba(255,255,255,.025) 70%,transparent 70%);pointer-events:none;}
.daa3-advert-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:80px;align-items:center;}
.daa3-advert-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-gold-soft);margin-bottom:24px;}
.daa3-advert-eyebrow::before{content:"";width:28px;height:2px;background:var(--brand-gold);}
.daa3-advert-hero h1{font-size:clamp(2.9rem,5.2vw,4.5rem);font-weight:850;line-height:1.04;letter-spacing:-.04em;margin:0 0 24px;color:#fff;}
.daa3-advert-hero h1 span{display:block;color:var(--brand-gold-soft);}
.daa3-advert-hero .daa3-advert-lead{font-size:1.26rem;font-weight:700;line-height:1.5;color:#fff;margin-bottom:16px;}
.daa3-advert-hero-copy>p:not(.daa3-advert-lead){font-size:.99rem;line-height:1.85;color:#c6d2df;max-width:610px;}
.daa3-advert-hero-button{margin-top:28px;color:#fff;}
.daa3-advert-hero-button span{font-size:1.2rem;margin-left:8px;}
.daa3-advert-dates{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:30px 32px;}
.daa3-advert-dates-label{font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--brand-gold-soft);}
.daa3-advert-dates dl{margin:18px 0;}
.daa3-advert-dates dl>div{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12);}
.daa3-advert-dates dl>div:first-child{padding-top:0;}
.daa3-advert-dates dt{font-size:.78rem;color:#b3c2d3;margin-bottom:5px;}
.daa3-advert-dates dd{margin:0;color:#fff;font-size:1.13rem;font-weight:750;line-height:1.55;}
.daa3-advert-dates dd span{display:block;color:var(--brand-gold-soft);font-size:.93rem;font-weight:600;}
.daa3-advert-dates>p{font-size:.73rem;line-height:1.65;color:#bdcad9;}
.daa3-advert-list{padding:76px 0 84px;background:var(--mist);scroll-margin-top:110px;}
.daa3-advert-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px;}
.daa3-advert-section-heading h2,.daa3-advert-guidance h2{color:var(--ink);font-size:clamp(1.9rem,3vw,2.5rem);line-height:1.2;letter-spacing:-.025em;font-weight:850;margin:10px 0 0;text-align:left;}
.daa3-advert-count{flex:none;font-size:.78rem;color:var(--slate);font-weight:700;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px;}
.daa3-advert-alert{display:flex;align-items:flex-start;gap:14px;background:#fff8e7;border:1px solid #e9d9b4;border-left:3px solid var(--brand-gold);border-radius:12px;padding:18px 20px;margin-bottom:28px;}
.daa3-advert-alert-icon{display:grid;place-items:center;flex:none;width:23px;height:23px;margin-top:2px;border:1.5px solid #796020;border-radius:50%;color:#796020;font-size:.8rem;font-weight:800;}
.daa3-advert-alert p{margin:0;color:#594c30;font-size:.89rem;line-height:1.75;}
.daa3-advert-alert strong{color:#473b22;}
.daa3-tender-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;}
.daa3-tender-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 12px 36px rgba(11,31,58,.045);}
.daa3-tender-card-top{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:142px;padding:26px 30px;background:radial-gradient(circle at 92% 100%,rgba(216,165,61,.18) 0,rgba(216,165,61,.18) 24%,transparent 24.3%),#f4f1ea;border-bottom:1px solid rgba(11,31,58,.055);}
.daa3-tender-illustration{display:flex;align-items:center;justify-content:center;width:82px;height:82px;color:var(--ink);}
.daa3-tender-illustration svg{display:block;width:78px;height:78px;}
.daa3-tender-status{display:inline-block;flex:none;color:#15523d;background:#eaf5ee;border:1px solid #cee3d4;font-size:.75rem;font-weight:800;padding:6px 13px;border-radius:999px;}
.daa3-tender-status.is-closed{color:#873331;background:#fff2ed;border-color:#ead3ca;}
.daa3-tender-card-body{display:flex;flex-direction:column;flex:1;padding:30px;}
.daa3-tender-category{color:#6b6572;font-size:.68rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;}
.daa3-tender-card h3{color:var(--ink);font-size:1.7rem;font-weight:850;line-height:1.22;letter-spacing:-.02em;min-height:2.44em;margin:0 0 14px;}
.daa3-tender-description{color:var(--slate);font-size:.94rem;line-height:1.8;margin:0;min-height:5.4em;}
.daa3-tender-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0;}
.daa3-tender-specs>div{background:#f6f8fa;border-radius:10px;padding:12px 15px;min-width:0;}
.daa3-tender-specs dt{color:#687688;font-size:.72rem;margin:0 0 3px;}
.daa3-tender-specs dd{color:var(--ink);font-size:.9rem;font-weight:750;line-height:1.55;margin:0;}
.daa3-tender-deadline{padding:16px 0 20px;border-top:1px solid var(--line);}
.daa3-tender-deadline>span{display:block;color:#6d7988;text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:800;margin-bottom:5px;}
.daa3-tender-deadline time{color:var(--ink);font-size:.84rem;font-weight:700;line-height:1.7;}
.daa3-tender-downloads{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;}
.daa3-tender-file-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;color:#657387;font-size:.72rem;line-height:1.6;margin-bottom:14px;}
.daa3-tender-file-meta span{color:#6a7480;}
.daa3-tender-download{width:100%;min-height:51px;color:#fff;box-shadow:0 6px 16px rgba(229,48,50,.13);font-size:.85rem;}
.daa3-tender-download svg{flex:none;}
.daa3-tender-view{display:flex;align-items:center;justify-content:center;gap:8px;min-height:43px;color:var(--ink);font-size:.8rem;font-weight:750;margin-top:5px;text-decoration:underline;text-underline-offset:4px;}
.daa3-tender-view:hover{color:var(--brand-red);}
.daa3-advert-guidance{padding:84px 0 90px;background:#fff;}
.daa3-advert-guidance-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:72px;align-items:start;}
.daa3-advert-guidance-intro{color:var(--slate);font-size:.95rem;line-height:1.85;margin:18px 0 0;max-width:640px;}
.daa3-advert-steps{list-style:none;margin:24px 0 0;padding:0;}
.daa3-advert-steps li{display:flex;align-items:flex-start;gap:18px;padding:20px 0;border-bottom:1px solid var(--line);}
.daa3-advert-steps li:last-child{border:0;padding-bottom:0;}
.daa3-advert-steps li>span{display:grid;place-items:center;flex:none;width:36px;height:36px;background:#faf3e2;border-radius:10px;color:#7b5a15;font-size:.72rem;font-weight:850;}
.daa3-advert-steps h3{font-size:1rem;font-weight:800;line-height:1.5;color:var(--ink);margin:0 0 6px;}
.daa3-advert-steps p{font-size:.88rem;line-height:1.8;color:var(--slate);margin:0;}
.daa3-advert-office{background:var(--mist);border:1px solid var(--line);border-top:3px solid var(--brand-gold);border-radius:20px;padding:30px;}
.daa3-advert-office-label{color:#6b6572;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.daa3-advert-office h3{color:var(--ink);font-size:1.35rem;line-height:1.35;margin:12px 0 20px;font-weight:850;}
.daa3-advert-office address{font-style:normal;font-size:.93rem;line-height:1.95;color:#485a70;}
.daa3-advert-office address strong{color:var(--ink);font-weight:750;}
.daa3-advert-office-note{margin:23px 0 0;padding-top:20px;border-top:1px solid var(--line);}
.daa3-advert-office-note h4{font-size:.88rem;font-weight:800;color:var(--ink);margin-bottom:9px;}
.daa3-advert-office-note p{font-size:.83rem;line-height:1.85;color:var(--slate);}
.daa3-advert-vendor-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--ink);font-size:.8rem;font-weight:800;margin-top:16px;text-decoration:underline;text-underline-offset:4px;}
.daa3-advert-vendor-link:hover{color:var(--brand-red);}
@media(max-width:1240px){
 .brand-copy,.brand-separator{display:none;}
 .brand-lockup{min-width:auto;}
 .header-content{gap:1rem;}
}
@media(max-width:900px){
 .daa3-advert-hero-grid{grid-template-columns:1fr;gap:36px;}
 .daa3-advert-hero-copy{max-width:720px;}
 .daa3-advert-dates dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
 .daa3-advert-dates dl>div,.daa3-advert-dates dl>div:first-child{border-bottom:0;padding:0;}
 .daa3-advert-dates dd{font-size:1rem;}
 .daa3-advert-guidance-grid{grid-template-columns:1fr;gap:36px;}
 .daa3-tender-card-body{padding:24px;}
 .daa3-tender-card h3{font-size:1.45rem;}
 .daa3-tender-description{min-height:7.2em;}
}
@media(max-width:640px){
 .daa3-advert-hero{padding:56px 0 60px;}
 .daa3-advert-hero-grid{gap:30px;}
 .daa3-advert-eyebrow{font-size:.64rem;letter-spacing:.1em;margin-bottom:20px;}
 .daa3-advert-hero h1{font-size:3rem;}
 .daa3-advert-hero .daa3-advert-lead{font-size:1.1rem;}
 .daa3-advert-hero-copy>p:not(.daa3-advert-lead){font-size:.92rem;}
 .daa3-advert-hero-button{width:100%;font-size:.82rem;}
 .daa3-advert-dates{padding:24px;}
 .daa3-advert-dates dl{display:block;margin-bottom:14px;}
 .daa3-advert-dates dl>div,.daa3-advert-dates dl>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12);}
 .daa3-advert-dates dt{flex:0 1 40%;font-size:.75rem;}
 .daa3-advert-dates dd{flex:0 1 60%;text-align:right;font-size:.97rem;}
 .daa3-advert-dates dd span{font-size:.83rem;}
 .daa3-advert-list,.daa3-advert-guidance{padding:54px 0 60px;}
 .daa3-advert-section-heading{gap:12px;align-items:center;}
 .daa3-advert-section-heading h2,.daa3-advert-guidance h2{font-size:1.95rem;}
 .daa3-advert-count{font-size:.7rem;padding:6px 10px;}
 .daa3-advert-alert{padding:16px;gap:12px;}
 .daa3-advert-alert p{font-size:.82rem;}
 .daa3-tender-grid{grid-template-columns:1fr;gap:24px;}
 .daa3-tender-card-top{min-height:122px;padding:20px 24px;}
 .daa3-tender-illustration,.daa3-tender-illustration svg{width:68px;height:68px;}
 .daa3-tender-card h3{font-size:1.6rem;min-height:0;}
 .daa3-tender-description{min-height:0;}
 .daa3-tender-specs{gap:9px;}
 .daa3-tender-specs>div{padding:11px 13px;}
 .daa3-tender-file-meta{font-size:.7rem;}
 .daa3-advert-office{padding:25px;}
}

/* v1.5.5: responsive navigation with a scrollable, viewport-sized disclosure. */
body{overflow-x:clip;}
.daa3-menu-backdrop[hidden]{display:none;}
.daa3-menu-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(6,20,39,.48);}
html.daa3-menu-open{overflow:hidden;overscroll-behavior:none;}
/* The root locks scrolling; a body scroll container would break the sticky header. */
html.daa3-menu-open body{overflow:visible;overscroll-behavior:none;}
body.admin-bar header.daa3-site-header{top:32px;}
@media(max-width:992px){
  /* Without JavaScript every destination stays visible and usable. */
  .daa3-site-header .header-content{flex-wrap:wrap;}
  #mobile-menu{display:none;min-width:46px;min-height:46px;align-items:center;justify-content:center;flex-shrink:0;}
  #nav{position:static;top:auto;left:auto;width:100%;height:auto;max-height:none;padding:.5rem 0 1rem;box-shadow:none;background:#fff;transition:none;overflow:visible;}
  #nav ul{width:100%;align-items:stretch;gap:.25rem;}
  #nav li{width:100%;}
  #nav a{display:flex;align-items:center;min-height:48px;white-space:normal;}
  #nav .vendor-btn{display:flex;justify-content:center;}
  .daa3-nav-ready .header-content{flex-wrap:nowrap;}
  .daa3-nav-ready #mobile-menu{display:flex;}
  .daa3-nav-ready #nav{position:absolute;top:100%;left:0;width:100%;height:auto;max-height:var(--daa3-menu-space,calc(100vh - 76px));max-height:var(--daa3-menu-space,calc(100dvh - 76px));padding:.75rem var(--daa3-gutter) 1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-top:1px solid var(--line);box-shadow:0 18px 32px rgba(11,31,58,.15);visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s;}
  .daa3-nav-ready #nav.active{visibility:visible;opacity:1;pointer-events:auto;transform:none;}
  #mobile-menu[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg);}
  #mobile-menu[aria-expanded="true"] span:nth-child(2){opacity:0;}
  #mobile-menu[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
}
@media(min-width:993px){.daa3-menu-backdrop{display:none;}}
@media(max-width:782px){body.admin-bar header.daa3-site-header{top:46px;}}
@media(max-width:600px){body.admin-bar header.daa3-site-header{top:0;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.daa3-nav-ready #nav,.menu-toggle span{transition:none;}}

/* Revised tender specifications: keep the delivery period easy to scan. */
.daa3-tender-specs>div:last-child:nth-child(odd){grid-column:1/-1;}
