*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#14283f;background:#fff;line-height:1.6}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid #e8edf2}.nav-wrap{max-width:1180px;margin:auto;min-height:76px;padding:10px 22px;display:flex;align-items:center;gap:25px}.brand{display:flex;align-items:center;text-decoration:none;color:#0b2744;margin-right:auto}.brand-mark{width:42px;height:42px;border-radius:10px;background:#0b2744;color:#d9a52b;display:grid;place-items:center;font-weight:900}.brand-logo{display:block;width:270px;height:68px;max-width:100%;object-fit:contain;object-position:left center;background:#fff}.brand b{display:block;font-size:1.08rem;letter-spacing:.05em}.brand small{display:block;color:#66778a;font-size:.68rem}nav{display:flex;gap:20px}nav a{color:#33465a;text-decoration:none;font-size:.9rem;font-weight:700}.btn{display:inline-block;padding:12px 20px;border-radius:7px;text-decoration:none;font-weight:800}.btn-gold{background:#d9a52b;color:#0b2744}.btn-outline{border:1px solid #fff;color:#fff}.hero{min-height:620px;display:grid;place-items:center;position:relative;background:linear-gradient(115deg,#0b2744 5%,#173d5d 60%,#49677b 100%);overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,39,68,.96),rgba(11,39,68,.62),rgba(11,39,68,.2));}.hero-inner{position:relative;z-index:2;max-width:1180px;width:100%;padding:90px 22px;color:#fff}.eyebrow{color:#d9a52b;font-size:.78rem;font-weight:900;letter-spacing:.16em;margin:0 0 8px}.hero h1{font-size:clamp(3rem,7vw,5.6rem);line-height:.98;margin:0 0 22px;letter-spacing:-.04em}.hero h1 em{color:#e0ae32;font-style:normal}.hero-copy{max-width:640px;font-size:1.08rem;color:#e6edf3}.hero-actions{display:flex;gap:12px;margin-top:30px}.service-strip{max-width:1180px;margin:-45px auto 0;position:relative;z-index:5;background:#fff;border-radius:14px;box-shadow:0 15px 40px rgba(11,39,68,.14);display:grid;grid-template-columns:repeat(4,1fr);padding:0}.service-strip div{padding:24px 20px;border-right:1px solid #e6ebef}.service-strip div:last-child{border:0}.service-strip b{display:block}.service-strip span{display:block;color:#6c7c8d;font-size:.84rem;margin-top:4px}.section{max-width:1180px;margin:auto;padding:95px 22px}.section-head h2,.ceo-copy h2,.cta h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;margin:6px 0 16px}.about-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:60px}.about-grid p{font-size:1.05rem;color:#536477}.about-card{background:#0b2744;color:#fff;border-radius:16px;padding:28px}.about-card b{display:block;color:#d9a52b;margin-bottom:15px}.about-card span{display:block;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.15)}.center{text-align:center;max-width:800px}.center>p:last-child{color:#69798a}.projects{max-width:1280px}.notice{background:#fff8e6;border-left:4px solid #d9a52b;padding:14px 16px;margin:28px 0;color:#5d4a20;font-weight:700}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project{background:#fff;border:1px solid #e4e9ee;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(11,39,68,.07)}.project img{width:100%;height:220px;object-fit:cover;display:block}.project>div{padding:20px}.project span{font-size:.68rem;color:#b27e0e;font-weight:900;letter-spacing:.08em}.project h3{font-size:1.22rem;line-height:1.2;margin:7px 0}.project p{color:#637487;font-size:.92rem}.project small{color:#536477}.leadership{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.ceo-photo img{width:100%;max-width:470px;display:block;margin:auto;aspect-ratio:4/5;object-fit:cover;border-radius:25px;box-shadow:0 20px 45px rgba(11,39,68,.16)}.gold-line{height:4px;width:65px;background:#d9a52b;margin:0 0 25px}.ceo-copy>p:not(.eyebrow){color:#526477}.signoff{border-left:3px solid #d9a52b;padding-left:16px;margin-top:24px}.signoff b{display:block;font-size:1.3rem}.signoff span{color:#718092;font-size:.9rem}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.values div{background:#f7f9fb;border:1px solid #e4e9ee;border-radius:12px;text-align:center;padding:15px}.values b{display:block;text-transform:uppercase;font-size:.82rem}.values span{font-size:.76rem;color:#718092}.cta{background:#0b2744;color:#fff;padding:65px max(22px,calc((100% - 1136px)/2));display:flex;justify-content:space-between;align-items:center;gap:30px}.cta p:not(.eyebrow){color:#d6e0e8}.cta h2{margin-bottom:10px}footer{background:#071b2d;color:#dbe4ec;padding:55px 22px 18px}.footer-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr;gap:60px}.footer-brand{color:#fff}.footer-grid b{color:#d9a52b}.footer-bottom{max-width:1180px;margin:35px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem;color:#9db0c1}@media(max-width:850px){nav{display:none}.service-strip{grid-template-columns:1fr 1fr;margin:0 16px}.service-strip div:nth-child(2){border-right:0}.project-grid{grid-template-columns:1fr 1fr}.about-grid,.leadership{grid-template-columns:1fr;gap:35px}.cta{display:block}.cta .btn{margin-top:18px}}@media(max-width:560px){.brand-logo{width:205px;height:58px}.nav-wrap{padding:10px 15px}.nav-wrap>.btn{display:none}.hero{min-height:570px}.hero-inner{padding:75px 18px}.hero h1{font-size:3rem}.service-strip{grid-template-columns:1fr}.service-strip div{border-right:0;border-bottom:1px solid #e6ebef}.project-grid{grid-template-columns:1fr}.section{padding:65px 18px}.values{gap:7px}.values div{padding:12px 5px}.footer-grid{grid-template-columns:1fr;gap:30px}}

  width: 100%;
  height: auto;
  max-height: 560px;
  object-fit: cover;
  object-position: center;
  image-rendering: auto;
}

  min-height: 360px;
}

.ceo-section img, .ceo img, img[src*="mr-ramson"] {
  width: 190px !important;
  height: 230px !important;
  max-width: 100%;
  object-fit: cover;
  object-position: center top;
  border-radius: 12px;
}

.projects-grid, .project-grid, .concept-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}
.project-card, .concept-card {
  min-width: 0;
}
.project-card img, .concept-card img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.project-card-content, .concept-card-content {
  padding: 18px 18px 22px;
}
.project-card-content h3, .concept-card-content h3 {
  font-size: 1.15rem;
  line-height: 1.25;
  margin: 8px 0 10px;
}
.project-card-content p, .concept-card-content p {
  font-size: 0.98rem;
  line-height: 1.5;
}
.project-card .eyebrow, .concept-card .eyebrow {
  font-size: .78rem;
  letter-spacing: .06em;
}
@media (max-width: 900px) {
  .projects-grid, .project-grid, .concept-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}
@media (max-width: 600px) {
  .projects-grid, .project-grid, .concept-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .ceo-section img, .ceo img, img[src*="mr-ramson"] {
    width: 150px !important;
    height: 190px !important;
  }
}

/* Final readability adjustments */
.projects-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.project-card img { width: 100%; height: 260px; object-fit: cover; }
.project-card-content h3 { font-size: 1.2rem; line-height: 1.3; }
.project-card-content p { font-size: 1rem; line-height: 1.55; }
.ceo-section img, .ceo-image img { max-width: 230px; width: 100%; height: auto; object-fit: cover; }
@media (max-width: 700px) {
  .projects-grid { grid-template-columns: 1fr; }
  .project-card img { height: 230px; }
  .ceo-section img, .ceo-image img { max-width: 190px; margin: 0 auto; }
}

/* FINAL PROJECTS FIX — larger concept cards and readable text */
.project-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}
.project {
  display: flex;
  flex-direction: column;
}
.project img {
  width: 100%;
  height: 340px;
  object-fit: cover;
  display: block;
}
.project > div {
  padding: 24px 24px 26px;
}
.project span {
  font-size: .76rem;
  line-height: 1.3;
}
.project h3 {
  font-size: 1.5rem;
  line-height: 1.25;
  margin: 9px 0 12px;
}
.project p {
  color: #526477;
  font-size: 1.05rem;
  line-height: 1.6;
  margin: 0 0 10px;
}
.project small {
  display: block;
  font-size: .95rem;
  line-height: 1.45;
  color: #536477;
}
  width: 100%;
  height: 430px;
  max-height: none;
  object-fit: cover;
  object-position: center;
}
  font-size: 1.5rem;
}
  font-size: 1.05rem;
  line-height: 1.6;
}
@media (max-width: 850px) {
  .project-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .project img { height: 280px; }
  .project h3 { font-size: 1.3rem; }
}
@media (max-width: 560px) {
  .project-grid { grid-template-columns: 1fr; gap: 20px; }
  .project img { height: 250px; }
  .project > div { padding: 20px; }
  .project h3 { font-size: 1.25rem; }
  .project p { font-size: 1rem; }
}

/* EXTRA READABILITY — Proposed Project cards */
.project-grid .project > div {
  padding: 28px 28px 30px;
}
.project-grid .project span {
  display: inline-block;
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.35;
}
.project-grid .project h3 {
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.22;
  margin: 10px 0 14px;
}
.project-grid .project p {
  font-size: 1.18rem;
  line-height: 1.65;
  margin-bottom: 12px;
}
.project-grid .project small {
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.5;
}
@media (max-width: 850px) {
  .project-grid .project h3 { font-size: 1.55rem; }
  .project-grid .project p { font-size: 1.08rem; }
}
@media (max-width: 560px) {
  .project-grid .project > div { padding: 22px; }
  .project-grid .project span { font-size: 0.82rem; }
  .project-grid .project h3 { font-size: 1.4rem; }
  .project-grid .project p { font-size: 1.05rem; line-height: 1.6; }
  .project-grid .project small { font-size: 0.98rem; }
}

/* FINAL CLEAN PROJECT IMAGES + READABILITY */
.project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.project-grid .project img { height: 360px; object-fit: cover; }
.project-grid .project > div { padding: 28px 30px 30px; }
.project-grid .project span { font-size: .92rem; font-weight: 800; }
.project-grid .project h3 { font-size: 1.85rem; line-height: 1.22; margin: 10px 0 14px; }
.project-grid .project p { font-size: 1.18rem; line-height: 1.65; margin-bottom: 12px; }
.project-grid .project small { font-size: 1rem; line-height: 1.5; }
@media (max-width: 850px) {
  .project-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
  .project-grid .project img { height: 300px; }
  .project-grid .project h3 { font-size: 1.45rem; }
  .project-grid .project p { font-size: 1.05rem; }
}
@media (max-width: 560px) {
  .project-grid { grid-template-columns: 1fr; gap: 20px; }
  .project-grid .project img { height: 250px; }
  .project-grid .project > div { padding: 22px; }
  .project-grid .project h3 { font-size: 1.3rem; }
  .project-grid .project p { font-size: 1rem; }
}


/* Clickable contact details */
.footer-grid a{color:#dbe4ec;text-decoration:none}.footer-grid a:hover{text-decoration:underline}

/* Inquiry form */
.inquiry-section{background:#f7f9fb}
.inquiry-wrap{max-width:1180px;margin:35px auto 0;display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:32px;align-items:start}
.inquiry-form{background:#fff;border:1px solid #e3e9ef;border-radius:16px;padding:30px;box-shadow:0 12px 30px rgba(11,39,68,.06)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.inquiry-form label{display:block;font-weight:800;color:#243b53;font-size:.92rem;margin-bottom:20px}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #ccd7e1;border-radius:8px;padding:13px 14px;font:inherit;color:#14283f;background:#fff;outline:none}
.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:#d9a52b;box-shadow:0 0 0 3px rgba(217,165,43,.14)}
.inquiry-form textarea{resize:vertical;min-height:150px}
.form-submit{border:0;cursor:pointer;font-size:1rem}
.form-note{margin:15px 0 0;color:#718092;font-size:.8rem;line-height:1.5}
.inquiry-info{background:#0b2744;color:#fff;border-radius:16px;padding:30px;position:sticky;top:100px}
.inquiry-info h3{font-size:1.7rem;line-height:1.2;margin:5px 0 14px}
.inquiry-info>p:not(.eyebrow){color:#d5e0e9}
.inquiry-contact{border-top:1px solid rgba(255,255,255,.16);padding:15px 0 0;margin-top:15px}
.inquiry-contact b{display:block;color:#d9a52b;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.inquiry-contact a{display:inline-block;color:#fff;text-decoration:none;margin-top:3px}
.inquiry-contact a:hover{text-decoration:underline}
@media(max-width:850px){.inquiry-wrap{grid-template-columns:1fr}.inquiry-info{position:static}.form-grid{grid-template-columns:1fr}}
@media(max-width:560px){.inquiry-form,.inquiry-info{padding:22px}.inquiry-wrap{gap:20px}}


/* =========================================================
   CASPE BRIDGE — FINAL MOBILE RESPONSIVE LAYER
   ========================================================= */
html { scroll-padding-top: 88px; }
[id] { scroll-margin-top: 88px; }

.menu-toggle {
  display: none;
  border: 0;
  background: transparent;
  width: 44px;
  height: 44px;
  padding: 8px;
  cursor: pointer;
  border-radius: 8px;
}
.menu-toggle span:not(.sr-only) {
  display: block;
  height: 2px;
  width: 25px;
  margin: 5px auto;
  background: #0b2744;
  border-radius: 2px;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 900px) {
  .nav-wrap {
    min-height: 68px;
    padding: 9px 16px;
    gap: 12px;
  }
  .brand { min-width: 0; }
  .brand b { font-size: 1rem; }
  .brand small { font-size: .62rem; }
  .menu-toggle { display: block; margin-left: auto; flex: 0 0 44px; }
  .nav-wrap > .btn { display: none; }

  nav#main-nav {
    display: none;
    position: absolute;
    left: 12px;
    right: 12px;
    top: calc(100% + 6px);
    flex-direction: column;
    gap: 0;
    padding: 8px;
    background: #fff;
    border: 1px solid #e4e9ee;
    border-radius: 12px;
    box-shadow: 0 16px 35px rgba(11,39,68,.16);
  }
  body.menu-open nav#main-nav { display: flex; }
  nav#main-nav a {
    display: block;
    padding: 13px 14px;
    border-radius: 8px;
    font-size: .98rem;
  }

  .hero { min-height: 570px; }
  .hero-inner { padding: 72px 22px; }
  .hero h1 { font-size: clamp(2.65rem, 8vw, 4rem); }
  .hero-copy { font-size: 1rem; max-width: 600px; }
  .hero-actions { flex-wrap: wrap; }

  .service-strip {
    margin: -28px 16px 0;
    grid-template-columns: 1fr 1fr;
  }
  .service-strip div:nth-child(2) { border-right: 0; }

  .section { padding: 72px 20px; }
  .about-grid, .leadership { grid-template-columns: 1fr; gap: 36px; }
  .about-grid p { font-size: 1rem; }

  .project-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
  .project-grid .project img { height: 285px; }
  .project-grid .project > div { padding: 22px; }
  .project-grid .project h3 { font-size: 1.45rem; }
  .project-grid .project p { font-size: 1rem; }

  .ceo-photo img { max-width: 330px; }
  .values { grid-template-columns: repeat(3, 1fr); }

  .inquiry-wrap {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .inquiry-form { padding: 24px; }
  .inquiry-info { padding: 4px 2px; }

  .cta {
    padding: 55px 20px;
    display: block;
  }
  .cta .btn { margin-top: 16px; }

  .footer-grid { grid-template-columns: 1fr; gap: 35px; }
}

@media (max-width: 600px) {
  .nav-wrap { padding: 8px 13px; }
  .brand-logo { width: 235px; height: 60px; }
  .brand b { font-size: .92rem; }
  .brand small { font-size: .57rem; }

  .hero {
    min-height: 540px;
    text-align: left;
  }
  .hero-inner { padding: 66px 18px 72px; }
  .hero h1 {
    font-size: clamp(2.35rem, 12vw, 3.25rem);
    line-height: 1;
    letter-spacing: -.035em;
  }
  .hero-copy { font-size: .98rem; line-height: 1.55; }
  .hero-actions { margin-top: 22px; gap: 10px; }
  .hero-actions .btn {
    padding: 11px 16px;
    font-size: .92rem;
  }

  .service-strip {
    grid-template-columns: 1fr;
    margin: -18px 12px 0;
    border-radius: 12px;
  }
  .service-strip div {
    padding: 18px 16px;
    border-right: 0;
    border-bottom: 1px solid #e6ebef;
  }
  .service-strip div:last-child { border-bottom: 0; }
  .service-strip span { font-size: .82rem; }

  .section { padding: 58px 16px; }
  .section-head h2, .ceo-copy h2, .cta h2 {
    font-size: clamp(1.9rem, 9vw, 2.55rem);
  }

  .project-grid { grid-template-columns: 1fr; gap: 18px; }
  .project-grid .project img { height: 230px; }
  .project-grid .project > div { padding: 20px; }
  .project-grid .project span { font-size: .8rem; }
  .project-grid .project h3 { font-size: 1.3rem; }
  .project-grid .project p { font-size: .98rem; line-height: 1.55; }
  .project-grid .project small { font-size: .9rem; }

  .ceo-photo img { max-width: 230px; border-radius: 18px; }
  .values { grid-template-columns: 1fr; gap: 9px; }
  .values div { padding: 13px; }

  .inquiry-form { padding: 18px; border-radius: 14px; }
  .form-grid { grid-template-columns: 1fr; gap: 0; }
  .inquiry-form label { font-size: .9rem; margin-bottom: 17px; }
  .inquiry-form input,
  .inquiry-form select,
  .inquiry-form textarea {
    font-size: 16px; /* prevents iOS zoom on focus */
    min-height: 48px;
    padding: 12px 13px;
  }
  .inquiry-form textarea { min-height: 150px; }
  .form-submit {
    width: 100%;
    min-height: 50px;
    font-size: 1rem;
  }
  .form-note { font-size: .78rem; }

  .inquiry-info h3 { font-size: 1.55rem; }
  .inquiry-contact { padding: 13px 0; }

  .cta { padding: 48px 16px; }
  footer { padding: 42px 16px 18px; }
  .footer-grid { gap: 28px; }
  .footer-bottom { margin-top: 28px; line-height: 1.6; }

  /* Keep long email/phone strings from overflowing narrow screens. */
  a, .inquiry-contact, .footer-grid p {
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}

@media (max-width: 380px) {
  .brand small { display: none; }
  .hero h1 { font-size: 2.25rem; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-actions .btn { text-align: center; width: 100%; }
}



/* Ongoing projects */
.ongoing-projects { background: #fff; }
.ongoing-notice { margin-bottom: 34px; }
.ongoing-grid {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}
.ongoing-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid #e3e9ef;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(11,39,68,.07);
}
.ongoing-card img {
  width: 100%;
  height: 390px;
  display: block;
  object-fit: cover;
  object-position: center;
}
.ongoing-card-content { padding: 26px 28px 30px; }
.ongoing-card-content span {
  display: inline-block;
  color: #8b650f;
  font-size: .9rem;
  font-weight: 800;
  letter-spacing: .04em;
}
.ongoing-card-content h3 {
  font-size: 1.7rem;
  line-height: 1.25;
  margin: 9px 0 12px;
}
.ongoing-card-content p {
  color: #526477;
  font-size: 1.08rem;
  line-height: 1.6;
  margin: 0 0 10px;
}
.ongoing-card-content small {
  color: #536477;
  font-size: .98rem;
  font-weight: 600;
}
@media (max-width: 850px) {
  .ongoing-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
  .ongoing-card img { height: 300px; }
  .ongoing-card-content h3 { font-size: 1.4rem; }
  .ongoing-card-content p { font-size: 1rem; }
}
@media (max-width: 560px) {
  .ongoing-grid { grid-template-columns: 1fr; gap: 20px; }
  .ongoing-card img { height: 330px; }
  .ongoing-card-content { padding: 22px; }
  .ongoing-card-content h3 { font-size: 1.3rem; }
}


/* OUR TEAM */
.team-section { background: #f7f9fb; }
.team-grid {
  max-width: 1180px;
  margin: 35px auto 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}
.team-card {
  background: #fff;
  border: 1px solid #e3e9ef;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(11,39,68,.07);
}
.team-card img {
  width: 100%;
  height: 390px;
  display: block;
  object-fit: cover;
  object-position: center 28%;
}
.team-card-body { padding: 28px 30px 30px; }
.team-card-body h3 {
  margin: 8px 0 7px;
  color: #0b2744;
  font-size: 1.65rem;
  line-height: 1.2;
}
.team-role {
  color: #a67608;
  font-weight: 800;
  margin: 0 0 13px;
}
.team-card-body > p:last-child {
  color: #5f7183;
  line-height: 1.65;
  margin: 0;
}
@media (max-width: 700px) {
  .team-grid { grid-template-columns: 1fr; gap: 20px; }
  .team-card img { height: 330px; }
  .team-card-body { padding: 23px; }
  .team-card-body h3 { font-size: 1.4rem; }
}


/* FINAL ONGOING PROJECT IMAGE FIX
   Use the complete original photographs. No cover-cropping or head/foot cropping. */
.ongoing-card img {
  width: 100%;
  height: auto !important;
  max-height: none !important;
  display: block;
  object-fit: initial !important;
  object-position: initial !important;
  background: transparent;
}

/* The CEO portrait belongs in Our Team; do not repeat it in the CEO message. */
.leadership {
  grid-template-columns: 1fr !important;
}
.leadership .ceo-photo {
  display: none !important;
}


/* COMPANY REGISTRATION */
.registration-section { background: #f7f9fb; }
.registration-grid {
  max-width: 1180px;
  margin: 35px auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.registration-card {
  background: #fff;
  border: 1px solid #e3e9ef;
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 12px 30px rgba(11,39,68,.06);
}
.registration-label {
  display: block;
  color: #a67608;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .78rem;
  margin-bottom: 9px;
}
.registration-card h3 {
  margin: 0 0 16px;
  color: #0b2744;
}
.registration-card p {
  color: #5f7183;
  line-height: 1.6;
  margin: 8px 0;
}
.registration-card strong { color: #0b2744; }
.registration-note { font-size: .9rem; }
@media (max-width: 850px) {
  .registration-grid { grid-template-columns: 1fr; }
}

/* FINAL PORTRAIT PRESENTATION: never crop heads */
.team-card img {
  width: 100%;
  height: 390px;
  display: block;
  object-fit: contain !important;
  object-position: center !important;
  background: #f7f9fb;
}
@media (max-width: 700px) {
  .team-card img { height: 330px; }
}

/* FINAL ONGOING PROJECT PRESENTATION: preserve complete source photos */
.ongoing-card img {
  width: 100%;
  height: auto !important;
  max-height: none !important;
  display: block;
  object-fit: contain !important;
  object-position: center !important;
  background: #f7f9fb;
}

/* HEADER LOGO — use the complete CASPE BRIDGE logo at a readable size */
@media (min-width: 901px) {
  .nav-wrap { min-height: 118px; padding-top: 8px; padding-bottom: 8px; gap: 18px; }
  .brand-logo { width: 190px; height: 102px; object-fit: contain; object-position: center; }
  nav { gap: 15px; align-items: center; }
  nav a { font-size: .84rem; }
  .nav-wrap > .btn { white-space: nowrap; }
}
@media (max-width: 900px) {
  .nav-wrap { min-height: 88px; }
  .brand-logo { width: 165px; height: 78px; object-fit: contain; object-position: center; }
}
@media (max-width: 560px) {
  .nav-wrap { min-height: 78px; }
  .brand-logo { width: 150px; height: 68px; }
}

/* TEAM PHOTOS — preserve complete heads while keeping a compact professional portrait */
.team-card img { object-fit: cover !important; object-position: center top !important; }

/* WhatsApp branding for clickable WhatsApp numbers */
.whatsapp-link{display:inline-flex!important;align-items:center;gap:8px;}
.whatsapp-icon{width:19px;height:19px;fill:currentColor;flex:0 0 19px;}
.whatsapp-link:hover .whatsapp-icon{transform:scale(1.05);}
