:root{--primary:#0b2341;--hero-blue:#0f5ea8;--accent:#d4af37;--bg:#f7f9fc;--text:#1b2430;--white:#fff;--border:#e4e9f2;--muted:#3a4a5a}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Segoe UI,Arial,sans-serif;font-size:1.125rem;font-weight:500;line-height:1.8;background:var(--bg);color:var(--text)}
.container{width:min(92%,1200px);margin:auto}
.skip-link{position:absolute;left:-9999px;z-index:999;padding:8px 16px;background:var(--accent);color:#111;text-decoration:none}
.skip-link:focus{left:16px;top:16px}

/* Sticky Navigation */
.site-header{position:sticky;top:0;z-index:100;background:var(--primary)}
.navbar{display:flex;justify-content:space-between;align-items:center;padding:20px 0}
.brand{display:flex;align-items:center;text-decoration:none}
.brand-logo{max-width:320px;height:auto;display:block}
.nav-links{display:flex;gap:28px;list-style:none}
.nav-links a{color:rgba(255,255,255,.82);text-decoration:none;font-size:.925rem;font-weight:500;transition:color .2s}
.nav-links a:hover{color:var(--accent)}

/* Hero */
.hero{min-height:85vh;background:var(--hero-blue);color:#fff;display:flex;align-items:center}
.hero-layout{display:grid;grid-template-columns:58% 38%;gap:3rem;align-items:center;width:100%}
.hero-content{padding:80px 0}
.hero-content .section-label{margin-bottom:1rem;font-size:.85rem;letter-spacing:1.5px}
.hero-content h1{font-size:2.6rem;line-height:1.2;margin-bottom:1.25rem;font-weight:700}
.hero-content .lead{font-size:1.05rem;line-height:1.7;margin-bottom:1.75rem;color:rgba(255,255,255,.82)}
.hero-actions{display:flex;gap:16px;margin-bottom:2rem}
.hero-tags{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none}
.hero-tags li{font-size:.925rem;color:rgba(255,255,255,.65)}

/* Hero Snapshot Card */
.hero-panel{display:flex;justify-content:flex-end}
.snapshot-card{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.08);width:100%;max-width:340px}
.snapshot-heading{color:#7A1F2B;text-transform:uppercase;font-size:1.6rem;letter-spacing:1.5px;font-weight:700;margin-bottom:1.25rem}
.snapshot-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}
.snapshot-row:last-child{border-bottom:none}
.snapshot-key{color:var(--muted);font-size:.875rem}
.snapshot-value{color:var(--primary);font-weight:600;font-size:.875rem}

/* Buttons */
.button,.button-secondary{padding:12px 28px;text-decoration:none;border-radius:6px;font-weight:700;font-size:.925rem;display:inline-block;transition:opacity .2s}
.button{background:var(--hero-blue);color:#fff}
.button-secondary{background:var(--white);border:2px solid var(--hero-blue);color:var(--hero-blue)}
.button:hover,.button-secondary:hover{opacity:.88}

/* Section Label & Heading */
.section-label{color:var(--accent);text-transform:uppercase;font-size:.85rem;letter-spacing:1.5px;font-weight:600;margin-bottom:.75rem}
section h2{font-size:2.25rem;font-weight:700;color:var(--primary);margin-bottom:2rem;line-height:1.25}

/* Project Snapshot (Statistics) */
.stats-section{padding:5rem 0;background:var(--bg);text-align:center}
.stats-section .section-label{text-align:center}
.stats-section h2{text-align:center}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.stat-card{background:var(--white);border:1px solid var(--border);border-radius:.75rem;padding:2rem 1rem;text-align:center;display:flex;flex-direction:column;justify-content:center;min-height:140px}
.stat-value{font-size:1.5rem;font-weight:700;color:var(--primary);margin-bottom:.35rem}
.stat-label{font-size:.925rem;font-weight:500;color:var(--muted)}

/* About MYOGL */
.about-section{padding:5rem 0;background:var(--white)}
.about-content{max-width:720px}
.about-text .section-label{margin-bottom:.75rem}
.about-text h2{margin-bottom:1.25rem}
.about-text p:not(.section-label){font-size:1.125rem;font-weight:500;line-height:1.8;color:var(--text);margin-bottom:1.75rem}
.about-text .button{margin-top:.5rem}

/* APPL 674 Overview */
.project-section{padding:6rem 0;background:var(--bg)}
.project-layout{display:grid;grid-template-columns:58% 38%;gap:3rem;align-items:start;width:100%}
.project-content-col .section-label{margin-bottom:.75rem}
.project-content-col h2{font-size:2.25rem;font-weight:700;color:var(--primary);margin-bottom:1.25rem;line-height:1.25}
.project-intro-card{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);max-width:100%;margin-bottom:2rem}
.project-intro-card p{font-size:1.125rem;font-weight:500;line-height:1.8;color:var(--text)}
.project-panels{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:2rem}
.project-panel{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.project-panel h3{font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}
.project-panel p{font-size:1.05rem;font-weight:500;line-height:1.75;color:var(--muted)}
.project-content-col .button{margin-top:.5rem}
.project-info-col{display:flex;justify-content:flex-end}
.project-info-col .snapshot-card{max-width:100%}

/* Investment Highlights */
.invest-section{padding:6rem 0;background:var(--white)}
.invest-layout{display:grid;grid-template-columns:38% 58%;gap:3rem;align-items:start;width:100%}
.invest-info-col{display:flex;justify-content:flex-start}
.invest-info-col .snapshot-card{max-width:100%}
.invest-summary-note{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}
.invest-summary-note p{font-size:1.05rem;font-weight:500;line-height:1.75;color:var(--muted)}
.invest-content-col .section-label{margin-bottom:.75rem}
.invest-content-col h2{font-size:2.25rem;font-weight:700;color:var(--primary);margin-bottom:1.25rem;line-height:1.25}
.invest-intro-card{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);max-width:100%;margin-bottom:2rem}
.invest-intro-card p{font-size:1.125rem;font-weight:500;line-height:1.8;color:var(--text)}
.invest-panels{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:2rem}
.invest-panel{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.invest-panel h3{font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}
.invest-panel p{font-size:1.05rem;font-weight:500;line-height:1.75;color:var(--muted)}
.invest-content-col .button{margin-top:.5rem}

/* Leadership Preview */
.leadership-section{padding:6rem 0;background:var(--primary);color:#fff}
.leadership-layout{display:grid;grid-template-columns:40% 56%;gap:3rem;align-items:start;width:100%}
.leadership-cards-col{display:grid;gap:1.5rem}
.leadership-card{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);text-align:center}
.leadership-photo{max-width:50%;height:auto;aspect-ratio:4/5;border-radius:1.125rem;object-fit:cover;border:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.06);margin:0 auto 1.25rem;display:block}
.leadership-card h3{font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:.25rem}
.leadership-position{font-size:.9rem;font-weight:600;color:var(--hero-blue);margin-bottom:.75rem}
.leadership-card p:not(.leadership-position){font-size:1.05rem;font-weight:500;line-height:1.75;color:var(--muted)}
.leadership-content-col .section-label{margin-bottom:.75rem}
.leadership-content-col h2{font-size:2.25rem;font-weight:700;color:#fff;margin-bottom:1.25rem;line-height:1.25}
.leadership-intro-card{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2rem;box-shadow:0 2px 12px rgba(0,0,0,.06);margin-bottom:2rem}
.leadership-intro-card p{font-size:1.125rem;font-weight:500;line-height:1.8;color:var(--text)}
.leadership-content-col .button{background:var(--accent);color:#111}

/* Investor Contact CTA */
.cta-section{padding:5rem 0;background:var(--primary);color:#fff;text-align:center}
.cta-content{max-width:720px;margin:auto}
.cta-content .section-label{margin-bottom:.75rem}
.cta-content h2{font-size:2rem;font-weight:700;margin-bottom:1.25rem;color:#fff}
.cta-content p:not(.section-label){font-size:1.05rem;line-height:1.7;margin-bottom:1.75rem;color:rgba(255,255,255,.82)}
.cta-content .button{margin-top:.5rem}

/* Investor Relations */
.ir-section{padding:5rem 0;background:var(--primary)}
.ir-panel{background:var(--white);border:1px solid var(--border);border-radius:1.125rem;padding:2.5rem;box-shadow:0 4px 20px rgba(0,0,0,.08);max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:start}
.ir-main .section-label{margin-bottom:.75rem}
.ir-main h2{font-size:2.25rem;font-weight:700;color:var(--primary);margin-bottom:1.5rem;line-height:1.25}
.ir-main>p{font-size:1.125rem;font-weight:500;line-height:1.8;color:var(--text);margin-bottom:1.5rem}
.ir-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:.5rem}
.ir-contact{background:var(--bg);border:1px solid var(--border);border-radius:1.125rem;padding:2rem}
.ir-contact h3{font-size:2rem;font-weight:700;color:#7A1F2B;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:1.25rem}
.ir-contact-name{font-size:1.35rem;font-weight:700;color:var(--primary);margin-bottom:.25rem}
.ir-contact-position{font-size:.95rem;font-weight:600;color:var(--hero-blue);margin-bottom:1rem}
.ir-contact-email{display:inline-block;font-size:1.05rem;font-weight:600;color:var(--hero-blue);text-decoration:none;margin-bottom:1.25rem;padding:2px 0;transition:color .2s,text-decoration .2s}
.ir-contact-email:hover,.ir-contact-email:focus{color:var(--primary);text-decoration:underline}
.ir-contact-note{font-size:1rem;font-weight:500;line-height:1.7;color:var(--muted)}

/* Why Papua New Guinea */
.why-png-section{padding:5rem 0;background:var(--white)}
.why-png-layout{display:grid;grid-template-columns:48% 52%;gap:2.5rem;align-items:center}
.why-png-image{position:relative;width:100%;border-radius:1.125rem;border:1px solid var(--border);background:#eef2f7;box-shadow:0 4px 20px rgba(0,0,0,.08);overflow:hidden}
.why-png-image img{width:100%;height:auto;display:block;border-radius:1.125rem}
.why-png-image-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:2px dashed var(--border);border-radius:1.125rem;margin:1rem}
.why-png-image-placeholder span{color:var(--muted);font-size:.95rem;font-weight:500;text-align:center;padding:1rem}
.tech-figure{margin:2rem 0;text-align:center}
.tech-figure img{max-width:100%;height:auto;border-radius:1.125rem;border:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.06)}
.tech-figure figcaption{font-size:.9rem;font-weight:500;color:var(--muted);margin-top:.75rem;line-height:1.6;text-align:center;max-width:720px;margin-left:auto;margin-right:auto}
.tech-figure .map-label{font-size:1.7rem;font-weight:700;color:#7A1F2B;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;display:block}
.why-png-content .section-label{margin-bottom:.75rem}
.why-png-content h2{font-size:2.25rem;font-weight:700;color:var(--primary);margin-bottom:1.25rem;line-height:1.25}
.why-png-content>p{font-size:1.125rem;font-weight:500;line-height:1.8;color:var(--text);margin-bottom:2.75rem}
.why-png-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.why-png-card{background:var(--white);border:1px solid var(--border);border-radius:.75rem;padding:1.5rem;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.why-png-card h3{font-size:1.2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}
.why-png-card p{font-size:1.05rem;font-weight:500;line-height:1.75;color:var(--muted)}
.why-png-content .button{margin-top:1.5rem}

/* Footer */
.site-footer{background:var(--primary);color:rgba(255,255,255,.82);padding:3.5rem 0 0}
.footer-grid{display:grid;grid-template-columns:1.4fr 0.8fr 1fr 1.2fr;gap:2.5rem;align-items:start}
.footer-logo{max-width:400px;height:auto;display:block;margin-bottom:.75rem}
.footer-company-name{font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:.75rem}
.footer-summary{font-size:1rem;font-weight:500;line-height:1.75;color:rgba(255,255,255,.78)}
.footer-grid h3{font-size:1rem;font-weight:700;margin-bottom:1rem;color:var(--accent);text-transform:uppercase;letter-spacing:1px}
.footer-nav{display:grid;gap:.65rem}
.footer-nav a{color:rgba(255,255,255,.82);text-decoration:none;line-height:1.6;font-size:1rem;font-weight:500;transition:color .2s}
.footer-nav a:hover{color:var(--accent)}
.footer-nav a:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}
.footer-ir-name{font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:.15rem}
.footer-ir-position{font-size:1rem;font-weight:600;color:var(--accent);margin-bottom:.75rem}
.footer-ir-email{color:var(--hero-blue);text-decoration:none;font-size:1rem;font-weight:600;display:inline-block;margin-bottom:.75rem;transition:color .2s,text-decoration .2s}
.footer-ir-email:hover,.footer-ir-email:focus{color:var(--accent);text-decoration:underline}
.footer-ir-note{font-size:1rem;font-weight:500;line-height:1.7;color:rgba(255,255,255,.78)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;margin-top:2.5rem;border-top:1px solid rgba(255,255,255,.12);font-size:.95rem;color:rgba(255,255,255,.78)}
.footer-bottom p{margin:0}
.footer-bottom-links{display:flex;gap:1.5rem}
.footer-bottom-links a{color:rgba(255,255,255,.82);text-decoration:none;transition:color .2s}
.footer-bottom-links a:hover{color:var(--accent)}
.footer-bottom-links a:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}

/* Responsive */
@media(max-width:960px){
.hero-layout{grid-template-columns:1fr;gap:2rem}
.hero-content h1{font-size:2rem}
.hero-panel{justify-content:center}
.snapshot-card{max-width:100%}
.stats-grid{grid-template-columns:repeat(2,1fr)}
.invest-layout{grid-template-columns:1fr;gap:2rem}
.invest-info-col{justify-content:stretch}
.project-layout{grid-template-columns:1fr;gap:2rem}
.project-info-col{justify-content:stretch}
.leadership-layout{grid-template-columns:1fr;gap:2rem}
.leadership-cards-col{order:2}
.leadership-content-col{order:1}
.why-png-layout{grid-template-columns:1fr;gap:2rem}
.why-png-image{max-width:100%}
.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
.nav-links{gap:16px}
.brand-logo{max-width:260px}
.ir-panel{grid-template-columns:1fr;gap:2rem}
.footer-bottom{flex-direction:column;gap:.75rem;text-align:center}
}
@media(max-width:640px){
.hero{min-height:60vh}
.stats-grid{grid-template-columns:1fr}
.hero-actions{flex-direction:column}
.nav-links{gap:12px;font-size:.85rem}
.hero-content h1{font-size:1.6rem}
.why-png-grid{grid-template-columns:1fr}
.brand-logo{max-width:200px}
.ir-actions{flex-direction:column}
.ir-panel{padding:1.5rem}
.footer-grid{grid-template-columns:1fr;gap:1.5rem}
.footer-logo{max-width:320px}
}

/* Homepage completion — clean APPL 674 geographic visual */
.why-png-map-figure {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--color-border, #dfe5ec);
  border-radius: var(--radius-lg, 16px);
  background: var(--color-surface, #fff);
  box-shadow: 0 18px 45px rgba(15, 35, 55, 0.10);
}

.why-png-map-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 720px;
  object-fit: contain;
  background: #fff;
}

.why-png-map-figure figcaption {
  padding: 0.85rem 1rem 1rem;
  border-top: 1px solid var(--color-border, #dfe5ec);
  color: var(--color-muted, #5f6b76);
  font-size: 0.88rem;
  line-height: 1.5;
}

.hero-status-note {
  max-width: 62rem;
  margin-top: 1rem;
  padding: 0.8rem 1rem;
  border-left: 3px solid currentColor;
  font-size: 0.9rem;
  line-height: 1.5;
  opacity: 0.92;
}

@media (max-width: 900px) {
  .why-png-map-image {
    max-height: none;
  }
}

@media print {
  .why-png-map-figure {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    box-shadow: none !important;
  }

  .why-png-map-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-height: 185mm !important;
    object-fit: contain !important;
  }

  .hero-status-note {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }
}

/* FINAL A4 PDF PAGINATION OVERRIDE */
@media print {
  @page {
    size: A4 portrait;
    margin: 12mm 10mm 14mm 10mm;
  }

  html, body {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    zoom: 1 !important;
  }

  body {
    margin: 0 !important;
    background: #fff !important;
    font-size: 10pt !important;
    line-height: 1.4 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }

  .site-header,
  .skip-link {
    display: none !important;
  }

  main, section, header, footer,
  .hero, .container,
  .hero-layout, .stats-grid, .why-png-layout,
  .about-layout, .project-layout, .invest-layout,
  .leadership-layout, .leadership-cards-col,
  .ir-panel, .footer-grid {
    position: static !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
  }

  .hero,
  .stats-section,
  .why-png-section,
  .about-section,
  .project-section,
  .invest-section,
  .leadership-section,
  .ir-section,
  .site-footer {
    padding-top: 7mm !important;
    padding-bottom: 7mm !important;
  }

  /* Major corporate sections begin cleanly on a new PDF page. */
  .why-png-section,
  .about-section,
  .project-section,
  .invest-section,
  .leadership-section,
  .ir-section,
  .site-footer {
    break-before: page !important;
    page-break-before: always !important;
  }

  .hero {
    break-after: page !important;
    page-break-after: always !important;
  }

  .stats-section {
    break-before: auto !important;
    page-break-before: auto !important;
  }

  .leadership-layout {
    display: block !important;
  }

  .leadership-cards-col {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 5mm !important;
  }

  .leadership-card,
  .stat-card,
  .why-png-card,
  .project-panel,
  .invest-panel,
  .snapshot-card,
  .ir-contact,
  .why-png-map-figure {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .leadership-photo {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 38mm !important;
    height: 48mm !important;
    object-fit: cover !important;
    margin: 0 auto 3mm !important;
  }

  img {
    max-width: 100% !important;
    height: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .why-png-map-image {
    max-height: 170mm !important;
    object-fit: contain !important;
  }

  h1, h2, h3, h4,
  .section-label, .section-intro {
    break-after: avoid !important;
    page-break-after: avoid !important;
  }

  a {
    color: inherit !important;
    text-decoration: none !important;
  }
}


/* Soft section background utility */
.section-soft{background:var(--bg)}

/* Investment page burgundy accent */
body.investment-page .section-label{color:#7A1F2B;font-size:1.7rem;font-weight:800}

/* Homepage light-background burgundy label treatment */
.stats-section .section-label,
.why-png-section .section-label,
.about-section .section-label,
.project-section .section-label,
.invest-section .section-label {
  color: #7A1F2B;
  font-size: 1.7rem;
  font-weight: 700;
}

.hero-panel .snapshot-heading,
.project-section .snapshot-heading,
.invest-section .snapshot-heading {
  color: #7A1F2B;
  font-size: 1.6rem;
  font-weight: 700;
}

/* Light-background Investor Relations panel burgundy label */
.ir-panel .ir-main .section-label {
  color: #7A1F2B;
  font-size: 1.7rem;
  font-weight: 700;
}

/* News page light-background burgundy label treatment */
.news-page .news-intro .section-label,
.news-page .update-panel .section-label {
  color: #7A1F2B;
  font-size: 1.7rem;
  font-weight: 700;
}

.news-page .news-category {
  color: #7A1F2B;
  font-size: 1.56rem;
  font-weight: 700;
}

.news-page .update-contact h3 {
  color: #7A1F2B;
  font-size: 1.8rem;
  font-weight: 700;
}

/* Homepage-only wide header alignment */
@media (min-width: 1100px) {
  body.home-page .site-header > .container {
    max-width: none;
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  body.home-page .navbar {
    width: 100%;
  }

  body.home-page .brand {
    margin-right: auto;
  }

  body.home-page .nav-links {
    margin-left: auto;
    justify-content: flex-end;
    gap: 16px;
  }
}


/* Homepage navigation wider text treatment without increasing height */
@media (min-width: 1100px) {
  body.home-page .nav-links {
    gap: 12px;
  }

  body.home-page .nav-links a {
    letter-spacing: 0.45px;
    white-space: nowrap;
  }
}

/* Homepage navigation centred between logo and right banner edge */
@media (min-width: 1100px) {
  body.home-page .navbar > nav {
    flex: 1;
    min-width: 0;
  }

  body.home-page .nav-links {
    width: 100%;
    margin-left: 0;
    justify-content: center;
  }
}
