.brand-copy{display:flex;flex-direction:column;gap:1px}
.brand-copy small{color:var(--muted);font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.brand-mark{width:68px;height:68px;background:transparent}
.brand-mark img{width:100%;height:100%;display:block;object-fit:contain;border-radius:50%}
.hero-slides{position:absolute;inset:0;background:var(--navy)}
.hero-slide{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;transform:scale(1.04);transition:opacity 1.1s ease,transform 6s ease}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.slide-ds{background:var(--navy)}
.slide-ds::before{content:'';position:absolute;inset:0;background:url('DS-transparent.png') center/ min(78vw,720px) no-repeat;animation:ds-roll 10s linear forwards}
@keyframes ds-roll{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.slide-engineering{background-image:url('https://images.unsplash.com/photo-1503387762-592deb58ef4e?auto=format&fit=crop&w=2200&q=88')}
.slide-accounting{background-image:url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=2200&q=88')}
.slide-it{background-image:url('https://images.unsplash.com/photo-1558494949-ef010cbdcc31?auto=format&fit=crop&w=2200&q=88')}
.hero-footer{align-items:center}
.slide-dots{display:flex;gap:8px}
.slide-dots button{width:22px;height:3px;padding:0;border:0;background:rgba(255,255,255,.35);cursor:pointer}
.slide-dots button.is-active{background:var(--gold)}
.whatsapp-float{position:fixed;z-index:20;right:25px;bottom:25px;background:#20b96b;color:#fff;text-decoration:none;display:flex;align-items:center;gap:9px;padding:13px 16px;border-radius:30px;box-shadow:0 8px 24px rgba(11,84,52,.28);font-size:12px;font-weight:700;animation:whatsapp-flicker 2.4s infinite}
.contact-details .address{color:var(--navy);font-size:13px;font-weight:600;line-height:1.5;display:flex;align-items:flex-start;gap:12px;max-width:390px}
.contact-details .address svg{width:16px;min-width:16px;color:var(--gold);margin-top:2px}
.whatsapp-float svg{width:19px}
.whatsapp-float:hover{background:#159b58;animation:none}
@keyframes whatsapp-flicker{0%,100%{box-shadow:0 8px 24px rgba(11,84,52,.28);opacity:1}8%{box-shadow:0 0 0 7px rgba(32,185,107,.2),0 8px 24px rgba(11,84,52,.28);opacity:.75}16%{opacity:1}24%{box-shadow:0 0 0 0 rgba(32,185,107,0),0 8px 24px rgba(11,84,52,.28)}35%{opacity:.82}42%{opacity:1}}
.it-card{min-height:430px}
.it-services-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 18px;margin:20px 0 45px;padding:0;list-style:none;color:var(--muted);font-size:11px;line-height:1.3}
.it-services-list li{position:relative;padding-left:12px}
.it-services-list li::before{content:'';position:absolute;left:0;top:6px;width:4px;height:4px;background:var(--gold);border-radius:50%}
.civil-card{min-height:430px}
.civil-services-list{display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;margin:20px 0 45px;padding:0;list-style:none;color:#c5d3d7;font-size:11px;line-height:1.35}
.civil-services-list li{position:relative;padding-left:12px}
.civil-services-list li::before{content:'';position:absolute;left:0;top:6px;width:4px;height:4px;background:var(--gold);border-radius:50%}
.accounting-card{min-height:430px}
.accounting-services-list{display:grid;gap:9px;margin:20px 0 45px;padding:0;list-style:none;color:var(--muted);font-size:11px;line-height:1.35}
.accounting-services-list li{position:relative;padding-left:12px}
.accounting-services-list li::before{content:'';position:absolute;left:0;top:6px;width:4px;height:4px;background:var(--gold);border-radius:50%}
@media(max-width:800px){.brand-mark{width:56px;height:56px}.slide-dots{display:none}.whatsapp-float{right:16px;bottom:16px}.whatsapp-float span{display:none}.whatsapp-float{width:50px;height:50px;justify-content:center;padding:0}.whatsapp-float svg{width:23px;height:23px}}
@media(max-width:800px){.it-card{min-height:0}.it-services-list{grid-template-columns:1fr;gap:8px;margin-bottom:48px}}
@media(max-width:800px){.accounting-card{min-height:0}.accounting-services-list{gap:8px;margin-bottom:48px}}
@media(max-width:800px){.civil-card{min-height:0}.civil-services-list{grid-template-columns:1fr;gap:8px;margin-bottom:48px}}

/* Final responsive safeguards for narrow screens. */
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%;height:auto}
.main-nav{min-width:0}
.hero-content,.hero-footer{min-width:0}
.hero h1,.section-heading h2,.about h2,.contact h2{overflow-wrap:break-word}
.quote-form input,.quote-form select,.quote-form textarea{min-width:0}

@media(max-width:600px){
	.container{width:calc(100% - 32px)}
	.site-header{height:68px}
	.brand{gap:7px;min-width:0}
	.brand-mark{width:50px;height:50px;flex:none}
	.brand-name{font-size:20px}
	.brand-copy small{font-size:7px;letter-spacing:.04em;white-space:normal;line-height:1.15;max-width:190px}
	.menu-toggle{padding:8px 0 8px 12px}
	.main-nav{top:68px}
	.hero{height:590px}
	.hero-content{padding-bottom:38px}
	.hero h1{font-size:clamp(42px,13vw,54px);margin-top:20px}
	.hero p{font-size:15px;line-height:1.5;max-width:330px}
	.hero-actions{width:100%}
	.button{max-width:100%;padding:14px 16px}
	.hero-footer{bottom:17px;font-size:8px;letter-spacing:.08em}
	.slide-label{max-width:70%;line-height:1.4}
	.intro-strip{padding:42px 0}
	.section-pad{padding:64px 0}
	.section-heading h2{font-size:clamp(34px,10vw,43px)}
	.pillar-card{padding:24px;min-height:0}
	.pillar-card h3{margin-top:34px}
	.civil-services-list,.accounting-services-list,.it-services-list{font-size:12px}
	.about-visual img{height:280px}
	.image-label{padding:15px 17px;gap:12px}
	.project-grid{gap:12px}
	.project.large,.project{height:275px}
	.quote{padding:64px 0}
	.quote blockquote{font-size:26px}
	.contact h2{font-size:clamp(40px,12vw,52px)}
	.contact-details .address{font-size:12px}
	.footer{padding-top:34px}
	.footer-top{padding-bottom:28px}
}

@media(max-width:360px){
	.container{width:calc(100% - 24px)}
	.brand-copy small{max-width:145px}
	.hero h1{font-size:41px}
	.hero p{font-size:14px}
	.section-heading h2{font-size:34px}
	.footer-links{flex-wrap:wrap;justify-content:flex-start;gap:12px 20px}
}
