/* ===== HIRISE V2 EXTRA STYLES ===== */

/* Hero content centre aligned */
.hero-content{text-align:center;display:flex;flex-direction:column;align-items:center;max-width:860px;margin:0 auto}
.hero-actions{justify-content:center}

/* Services card - pin Explore to bottom */
.service-card{display:flex!important;flex-direction:column!important;height:100%}
.service-card p{flex:1}
.service-link{margin-top:auto!important;display:block!important;padding-top:1.5rem!important}
.services-grid{align-items:stretch}

/* Remove blank gap between projects & Why section */
.projects-section{padding-bottom:50px!important}
.why-section{padding-top:50px!important}

/* Explore All Projects - always visible */
.btn-outline-dark{display:inline-block!important;opacity:1!important;visibility:visible!important;padding:14px 40px;border:2px solid rgba(255,255,255,0.6);color:#fff;font-family:var(--font-head);font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:all .3s}
.btn-outline-dark:hover{background:var(--orange);border-color:var(--orange);color:#fff}

/* Premium CTA buttons */
.btn-primary{display:inline-block!important;padding:16px 48px!important;background:var(--orange)!important;color:#fff!important;font-family:var(--font-head)!important;font-size:.8rem!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important;border:2px solid var(--orange)!important;transition:all .3s!important;width:auto!important;cursor:pointer!important}
.btn-primary:hover{background:transparent!important;color:var(--orange)!important}
#cf-submit{padding:16px 48px!important;width:auto!important;display:inline-block!important;font-size:.8rem!important;letter-spacing:.14em!important;font-weight:700!important;background:var(--orange)!important;color:#fff!important;border:2px solid var(--orange)!important;transition:all .3s!important;cursor:pointer!important}
#cf-submit:hover{background:transparent!important;color:var(--orange)!important}

/* CTA band premium */
.cta-band{background:var(--dark)!important;padding:80px 0!important}
.cta-band h2{color:#fff!important}
.cta-band-inner{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:40px!important}

/* Why Hi Rise - always prominent */
.why-points{margin-top:1.5rem}
.why-point{display:flex!important;gap:24px!important;align-items:flex-start!important;margin-bottom:2rem!important;opacity:1!important}
.why-num{font-family:var(--font-head)!important;font-size:2.8rem!important;font-weight:800!important;color:var(--orange)!important;line-height:1!important;min-width:64px!important;opacity:1!important}
.why-point h4{font-family:var(--font-head)!important;font-size:1rem!important;font-weight:700!important;color:#fff!important;margin-bottom:6px!important}
.why-point p{color:rgba(255,255,255,.8)!important;font-size:.9rem!important;opacity:1!important}

/* Client logos slightly bigger */
.client-logo img{height:52px!important;max-width:140px!important}

/* Google Maps link */
.maps-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:var(--font-head);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);border-bottom:1px solid transparent;transition:border-color .2s}
.maps-link:hover{border-bottom-color:var(--orange)}
.maps-link svg{flex-shrink:0}

/* Lightbox */
.hr-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}
.hr-lightbox-inner{position:relative;max-width:90vw;max-height:90vh}
.hr-lightbox img{max-width:90vw;max-height:85vh;object-fit:contain;display:block}
.hr-lightbox-close{position:absolute;top:-44px;right:0;color:#fff;font-size:2.2rem;cursor:pointer;line-height:1;background:none;border:none;padding:0}
.hr-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.15);border:none;color:#fff;font-size:1.8rem;padding:12px 18px;cursor:pointer;transition:background .2s}
.hr-lightbox-nav:hover{background:var(--orange)}
.hr-lightbox-prev{left:-62px}
.hr-lightbox-next{right:-62px}
.hr-lightbox-caption{color:rgba(255,255,255,.8);text-align:center;margin-top:12px;font-size:.85rem;font-family:var(--font-head)}

/* Footer links */
.footer-bottom-links a{color:rgba(255,255,255,.5);font-size:.8rem;transition:color .2s}
.footer-bottom-links a:hover{color:var(--orange)}

/* Project card cursor */
.project-card{cursor:pointer}

.why-section{margin-top:0!important;padding-top:40px!important}
.projects-section{padding-bottom:40px!important}
.projects-section .container{padding-bottom:0!important}

/* Fix why-point hover - keep text visible */
.why-point:hover{background:rgba(255,255,255,0.06)!important;color:#fff!important}
.why-point:hover h4{color:#fff!important}
.why-point:hover p{color:rgba(255,255,255,.8)!important}
.why-point:hover .why-num{color:var(--orange)!important}

.hero-scroll{display:none!important}
.hero-actions{justify-content:center!important;align-items:center!important;flex-wrap:wrap!important;gap:16px!important}
.hero-content{align-items:center!important}

/* CTA band - proper margins + button sizing */
.cta-band .container{padding-left:6%!important;padding-right:6%!important;max-width:1400px!important}
.cta-band h2{font-size:clamp(1.4rem,2.5vw,2rem)!important;margin-bottom:0.4rem!important}
.btn-primary{padding:12px 32px!important;font-size:0.78rem!important;letter-spacing:0.12em!important;font-weight:700!important}

/* === CTA BAND MARGINS + BUTTON FIX === */
.cta-band{padding:60px 0!important}
.cta-band .cta-band-inner{padding:0 6%!important;max-width:1200px!important;margin:0 auto!important;box-sizing:border-box!important}
/* Match Get in Touch button size to Contact Us nav button */
.btn-primary,.cta-band a.btn-primary,a.btn-primary{padding:12px 28px!important;font-size:0.78rem!important;font-weight:700!important;letter-spacing:0.1em!important;background:var(--orange)!important;color:#fff!important;border:2px solid var(--orange)!important;font-family:var(--font-head)!important;text-transform:uppercase!important;display:inline-block!important;transition:all 0.3s!important;width:auto!important;white-space:nowrap!important}
.btn-primary:hover{background:transparent!important;color:var(--orange)!important}

/* === ROUND 3 FIXES === */

/* 1. Hero buttons - force centre */
.hero-content { text-align:center!important; display:flex!important; flex-direction:column!important; align-items:center!important; }
.hero-actions { display:flex!important; justify-content:center!important; align-items:center!important; flex-wrap:wrap!important; gap:16px!important; width:100%!important; }
.hero .btn { margin:0!important; }

/* 2. Service card headings - smaller so single line */
.service-card h3 { font-size:1rem!important; font-weight:700!important; white-space:nowrap!important; overflow:hidden!important; text-overflow:ellipsis!important; }

/* 3. CTA band - perfect vertical alignment sitewide */
.cta-band { padding:48px 0!important; }
.cta-band .container { padding-left:6%!important; padding-right:6%!important; }
.cta-band-inner { display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:space-between!important; gap:32px!important; flex-wrap:nowrap!important; }
.cta-band-inner > div { display:flex!important; flex-direction:column!important; justify-content:center!important; }
.cta-band-inner h2 { margin-bottom:4px!important; line-height:1.2!important; font-size:clamp(1.2rem,2vw,1.8rem)!important; }
.cta-band-inner p { margin:0!important; font-size:0.9rem!important; }
.cta-band a.btn-primary, .cta-band button.btn-primary { flex-shrink:0!important; align-self:center!important; }

/* 4 & 5. Values cards - redesign with visible headings */
.value-card { background:var(--white)!important; border:1px solid var(--grey-light)!important; border-top:3px solid var(--orange)!important; padding:36px 28px!important; }
.value-card h4 { font-family:var(--font-head)!important; font-size:1.05rem!important; font-weight:700!important; color:var(--dark)!important; margin-bottom:12px!important; }
.value-card p { color:#555!important; font-size:0.9rem!important; line-height:1.6!important; }
.value-card:hover { box-shadow:0 6px 24px rgba(0,0,0,0.1)!important; transform:translateY(-4px)!important; transition:all 0.3s!important; }

/* HSE values cards same treatment */
.hse-pillar { background:rgba(255,255,255,0.05)!important; border:1px solid rgba(255,255,255,0.12)!important; border-top:3px solid var(--orange)!important; padding:32px 24px!important; }
.hse-pillar h4 { color:#fff!important; font-size:1rem!important; font-weight:700!important; margin-bottom:10px!important; }
.hse-pillar p { color:rgba(255,255,255,0.75)!important; }
.hse-pillar-icon svg { color:var(--orange)!important; }

/* === HERO CENTRE FIX - AGGRESSIVE === */
.hero{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.hero-content{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:100%!important;max-width:900px!important;margin:0 auto!important;padding:0 5%!important;text-align:center!important;display:block!important}
.hero-actions{display:flex!important;justify-content:center!important;align-items:center!important;flex-wrap:wrap!important;gap:16px!important;margin-top:2rem!important}
.hero h1,.hero-eyebrow,.hero-sub{text-align:center!important;width:100%!important}

/* Homepage 2x2 projects grid */
#projects-grid.projects-2x2,.projects-grid.projects-2x2{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:16px!important}
.projects-2x2 .project-img-wrap{aspect-ratio:16/10!important}
.projects-2x2 .project-overlay{opacity:1!important;background:linear-gradient(to top,rgba(13,13,13,0.75) 0%,transparent 55%)!important}

/* Projects page - 3 column grid, no gaps */
.projects-full-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important}
.projects-full-grid .project-img-wrap{aspect-ratio:4/3!important}
@media(max-width:768px){.projects-full-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:480px){.projects-full-grid{grid-template-columns:1fr!important}}

/* Larger logo */
.site-logo img{height:70px!important;width:auto!important;max-width:none!important}
.site-logo{display:flex!important;align-items:center!important}

/* Leadership photo circles */
.leader-img-placeholder{display:none!important}
.leader-photo{width:90px!important;height:90px!important;border-radius:50%!important;object-fit:cover!important;object-position:center top!important;flex-shrink:0!important}
.leader-img-wrap{width:90px!important;height:90px!important;border-radius:50%!important;overflow:hidden!important;flex-shrink:0!important}
.leader-img-wrap img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important}

/* Fix hero banner text visibility */
.page-hero-sub{color:#fff!important;opacity:1!important;text-shadow:0 1px 4px rgba(0,0,0,0.6)!important}
.page-hero-label{color:var(--orange)!important;opacity:1!important}
.page-hero-content h1{text-shadow:0 2px 8px rgba(0,0,0,0.5)!important}
.page-hero-overlay{background:linear-gradient(to top,rgba(13,13,13,0.85) 0%,rgba(13,13,13,0.55) 60%,rgba(13,13,13,0.3) 100%)!important}
.hero-eyebrow{color:rgba(255,255,255,0.9)!important;text-shadow:0 1px 4px rgba(0,0,0,0.6)!important}
.hero-sub{color:rgba(255,255,255,0.9)!important;text-shadow:0 1px 4px rgba(0,0,0,0.6)!important}

/* All section labels in orange */
.section-label{color:var(--orange)!important;opacity:1!important}
.section-label.light{color:var(--orange)!important}
/* Hero banner h1 white bold */
.page-hero-content h1{color:#fff!important;font-weight:800!important;text-shadow:0 2px 8px rgba(0,0,0,0.7)!important}
.page-hero-content h1 .text-orange, .page-hero-content h1 span.text-orange{color:var(--orange)!important}

/* Hero eyebrow + subtitle bold */
.hero-eyebrow{font-weight:700!important;color:rgba(255,255,255,0.95)!important;letter-spacing:0.1em!important}
.hero-sub{font-weight:700!important;color:rgba(255,255,255,0.95)!important;letter-spacing:0.18em!important}

/* Hero image slider - 3 slides crossfade with zoom */
.hero-slider{position:absolute;inset:0;overflow:hidden}
.hero-bg-slide{position:absolute;inset:0;background-size:cover;background-position:center center;opacity:0;animation:heroBgSlide 30s ease-in-out infinite}
.hero-bg-slide:nth-child(1){animation-delay:0s}
.hero-bg-slide:nth-child(2){animation-delay:10s}
.hero-bg-slide:nth-child(3){animation-delay:20s}
@keyframes heroBgSlide{
	0%{opacity:0;transform:scale(1.05)}
	5%{opacity:1}
	28%{opacity:1;transform:scale(1.12)}
	33%{opacity:0;transform:scale(1.12)}
	100%{opacity:0;transform:scale(1.05)}
}
}