/* Page-specific styles: achievements.html */

.wrap{max-width:1400px;margin:0 auto;padding:0 56px;}
  @media(max-width:900px){.wrap{padding:0 24px;}}

  
  
  .eyebrow.on-dark .num{color:var(--soft-grey);opacity:.6;}
  .eyebrow.on-dark{color:var(--green);}
  
  
  
  
  
  
  
  
  
  

  /* header (shared) */
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  @media(max-width:900px){nav.main-nav,.header-enquiry{display:none;}.hamburger{display:flex;}}

  
  
  
  
  
  
  
  

  /* ===== HERO ===== */
  /* ===== HERO ===== */
  .ach-hero{height:64vh;min-height:440px;position:relative;overflow:hidden;display:flex;align-items:flex-end;}
  .ach-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;}
  .ach-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,15,14,.72) 0%,rgba(15,15,14,.6) 35%,rgba(15,15,14,.82) 65%,rgba(15,15,14,.94) 100%);}
  .ach-hero-content{position:relative;z-index:2;width:100%;padding-bottom:64px;}
  .breadcrumb{color:var(--soft-grey);font-size:12px;letter-spacing:1.5px;margin-bottom:24px;opacity:.7;}
  .breadcrumb a{color:var(--soft-grey);}
  .breadcrumb a:hover{color:var(--green);}
  .ach-hero-label{color:var(--green);font-size:13px;letter-spacing:4px;font-weight:600;margin-bottom:16px;}
  .ach-hero-heading{color:var(--warm-white);font-size:clamp(30px,4.6vw,58px);font-weight:400;line-height:1.15;letter-spacing:-.5px;margin-bottom:18px;max-width:820px;}
  .ach-hero-sub{color:var(--soft-grey);font-size:15px;line-height:1.8;font-weight:300;max-width:640px;}

  /* ===== AWARDS GRID ===== */
  .awards{padding:150px 0 0;background:var(--off-white);}
  .awards-head{max-width:760px;margin-bottom:60px;}
  .awards-head h2{font-size:clamp(28px,3.6vw,48px);font-weight:700;letter-spacing:-.5px;}

  .awards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line);}
  @media(max-width:960px){.awards-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:600px){.awards-grid{grid-template-columns:1fr;}}
  .award-card{background:var(--off-white);display:flex;flex-direction:column;}
  .award-card-img{width:100%;aspect-ratio:4/3;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px;}
  .award-card-img img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:opacity .4s var(--ease);}
  .award-card:hover .award-card-img img{opacity:.85;}
  .award-card-body{padding:26px 26px 32px;flex:1;}
  .award-year{font-size:12px;letter-spacing:2px;color:var(--green-dark);font-weight:700;margin-bottom:10px;}
  .award-title{font-size:15.5px;font-weight:700;letter-spacing:.3px;margin-bottom:12px;color:var(--charcoal-deep);line-height:1.35;}
  .award-desc{font-size:13px;line-height:1.75;color:var(--charcoal);font-weight:300;}

  /* ===== PMAY MILESTONE ===== */
  .pmay{background:var(--charcoal-deep);color:var(--warm-white);padding:110px 0;margin-top:110px;}
  .pmay-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;}
  @media(max-width:900px){.pmay-grid{grid-template-columns:1fr;gap:36px;}}
  .pmay-year{font-size:clamp(40px,5vw,64px);font-weight:700;color:var(--green);letter-spacing:-2px;line-height:1;margin-bottom:18px;}
  .pmay-title{font-size:clamp(22px,2.6vw,32px);font-weight:700;letter-spacing:.5px;margin-bottom:20px;}
  .pmay-desc{font-size:14.5px;line-height:1.85;color:var(--soft-grey);font-weight:300;margin-bottom:44px;}
  .pmay-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line-light);}
  @media(max-width:500px){.pmay-stats{grid-template-columns:1fr;}}
  .pmay-stat{background:var(--charcoal-deep);padding:28px 20px;}
  .pmay-stat .num{font-size:clamp(20px,2.4vw,26px);font-weight:700;color:var(--green);letter-spacing:-.5px;margin-bottom:8px;}
  .pmay-img{width:100%;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line-light);}
  .pmay-img img{width:100%;height:100%;object-fit:cover;}
  .pmay-stat .lbl{font-size:12.5px;letter-spacing:1px;color:var(--soft-grey);text-transform:uppercase;}

  /* ===== CERTIFICATION ===== */
  .certification{padding:150px 0;background:var(--warm-white);}
  .cert-head{max-width:760px;margin-bottom:70px;}
  .cert-head h2{font-size:clamp(28px,3.6vw,48px);font-weight:700;letter-spacing:-.5px;}

  .cert-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line);}
  @media(max-width:800px){.cert-row-3{grid-template-columns:1fr;}}
  .cert-card{background:var(--off-white);padding:36px 32px;display:flex;flex-direction:column;gap:18px;}
  .cert-card-logo{background:#fff;border:1px solid var(--line);width:100%;aspect-ratio:16/10;padding:20px;display:flex;align-items:center;justify-content:center;position:relative;}
  .cert-card-logo img{max-width:100%;max-height:100%;object-fit:contain;}
  #certOpen.cert-card-logo{cursor:pointer;transition:border-color .3s;}
  #certOpen.cert-card-logo:hover{border-color:var(--green);}
  .cert-card-logo .cert-zoom-hint{position:absolute;bottom:10px;right:10px;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--green-dark);font-weight:600;background:var(--warm-white);padding:5px 10px;border:1px solid var(--line);}
  .cert-card-name{font-size:15px;font-weight:700;letter-spacing:.8px;color:var(--charcoal-deep);}
  .cert-card p{font-size:13px;line-height:1.7;color:var(--charcoal);font-weight:300;}

  .lightbox{position:fixed;inset:0;background:rgba(20,20,19,.94);z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s var(--ease);padding:40px;}
  .lightbox.open{opacity:1;pointer-events:auto;}
  .lightbox img{max-width:min(900px,90vw);max-height:85vh;object-fit:contain;background:#fff;padding:24px;}
  .lightbox-close{position:absolute;top:28px;right:36px;color:var(--warm-white);font-size:34px;line-height:1;cursor:pointer;}
  .lightbox-close:focus{outline:1px solid var(--green);}

  /* ===== AFFILIATIONS ===== */
  .affiliations{background:var(--charcoal-deep);color:var(--warm-white);padding:150px 0;}
  .aff-head{max-width:760px;margin-bottom:70px;}
  .aff-head h2{font-size:clamp(28px,3.6vw,48px);font-weight:700;letter-spacing:-.5px;margin-bottom:20px;}
  .aff-head p{font-size:15px;line-height:1.9;color:var(--soft-grey);font-weight:300;}
  .aff-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line-light);border-left:1px solid var(--line-light);}
  @media(max-width:900px){.aff-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:520px){.aff-grid{grid-template-columns:1fr;}}
  .aff-card{border-right:1px solid var(--line-light);border-bottom:1px solid var(--line-light);padding:32px 26px;display:flex;flex-direction:column;}
  .aff-logo-box{background:var(--warm-white);width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:22px;margin-bottom:22px;}
  .aff-logo-box img{max-width:100%;max-height:100%;object-fit:contain;}
  .aff-name{font-size:12.5px;font-weight:700;letter-spacing:.8px;margin-bottom:10px;line-height:1.4;}
  .aff-desc{font-size:12px;line-height:1.7;color:var(--soft-grey);font-weight:300;}

  /* ===== CTA ===== */


  /* ===== FOOTER (shared) ===== */
  
  
  @media(max-width:900px){.footer-grid{grid-template-columns:1fr;gap:44px;}}
  
  
  
  
  
  
  
  
  
  
  
  .footer-contact .office a{font-size:13px;color:var(--soft-grey);}
  .footer-contact .office a:hover{color:var(--green);}
