:root{--y:#f5c400;--ink:#111;--muted:#686868;--line:#e6e6e6;--light:#f5f5f1;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(calc(100% - 48px),var(--max));margin:auto}
.topbar{background:#111;color:#fff;font-size:12px}.topbar-inner{display:flex;justify-content:space-between;padding:8px 0}.topbar a{color:var(--y)}
.header{background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:50}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}
.menu{display:flex;align-items:center;gap:30px;font-weight:600;font-size:14px}.menu a:hover,.menu a.active{color:#a78300}.nav-cta{background:#111;color:#fff!important;padding:12px 20px}.menu-toggle{display:none;border:0;background:none;font-size:26px}
.hero{min-height:690px;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.25)),url("https://images.unsplash.com/photo-1503387762-592deb58ef4e?auto=format&fit=crop&w=2200&q=90") center/cover;display:flex;align-items:center;color:#fff}.hero-content{padding:100px 0;max-width:800px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2.2px;color:var(--y);margin-bottom:16px}.eyebrow.dark{color:#927900}.hero h1,.page-hero h1,.project-detail-hero h1{font-family:Manrope,sans-serif;font-size:clamp(48px,7vw,92px);line-height:.98;letter-spacing:-4px;margin:0 0 28px}.hero h1 span{color:var(--y)}.hero p{font-size:20px;max-width:690px;color:#ddd}.hero-actions{display:flex;gap:12px;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border:0;font-weight:800;cursor:pointer;font-family:inherit}.btn-yellow{background:var(--y);color:#111}.btn-outline{border:1px solid rgba(255,255,255,.6);color:#fff}.btn-dark{background:#111;color:#fff}
.stats{background:var(--y)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid>div{padding:28px 20px;border-right:1px solid rgba(0,0,0,.14)}.stats-grid strong{display:block;font:800 30px Manrope}.stats-grid span{font-size:13px}
.section{padding:110px 0}.section.light{background:var(--light)}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px}.split h2,.section h2{font:800 clamp(36px,4.5vw,62px)/1.05 Manrope;margin:0 0 24px;letter-spacing:-2.5px}.lead{font-size:21px;line-height:1.55}.text-link{font-weight:800;border-bottom:2px solid var(--y);padding-bottom:4px}
.dark-section{background:#111;color:#fff;padding:100px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:44px}.cards{display:grid;gap:18px}.cards-4{grid-template-columns:repeat(4,1fr)}.cards-3{grid-template-columns:repeat(3,1fr)}.service-card,.info-card{border:1px solid #292929;padding:28px;min-height:240px}.service-card span,.info-card b{color:var(--y);font-weight:800}.service-card h3,.info-card h3{font:800 25px Manrope;margin:38px 0 12px}.service-card p,.info-card p{color:#bcbcbc}.info-card{background:#fff;border-color:var(--line)}.info-card p{color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project-grid-large{grid-template-columns:repeat(2,1fr)}.project-card{background:#fff;border:1px solid var(--line);overflow:hidden;transition:.25s}.project-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.1)}.project-card img{width:100%;height:300px;object-fit:cover}.project-grid-large .project-card img{height:390px}.project-card>div{padding:22px}.project-card span{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;color:#8a7200;font-weight:800}.project-card h3{font:800 24px Manrope;margin:8px 0 0;line-height:1.15}.project-card p{color:var(--muted)}
.cta{background:#eeeccf;padding:80px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font:800 52px Manrope;letter-spacing:-2px;margin:0 0 10px}
.page-hero{background:#111;color:#fff;padding:105px 0}.page-hero h1{max-width:900px}.page-hero p{max-width:720px;color:#ccc;font-size:19px}.image-band{min-height:560px;background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.15)),url("https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=2200&q=85") center/cover;color:#fff;display:flex;align-items:center}.image-band-content{max-width:700px}.image-band h2{font-size:65px}
.location-box{display:grid;grid-template-columns:1fr 2fr;gap:16px;padding:30px;background:#fff;border:1px solid var(--line)}.location-box strong{font-family:Manrope}
.service-list{max-width:1000px}.service-row{display:grid;grid-template-columns:70px 1fr auto;gap:25px;align-items:start;padding:36px 0;border-top:1px solid var(--line)}.service-row>span{font-weight:800;color:#a68700}.service-row h2{font-size:30px;margin:0 0 10px}.service-row p{margin:0;color:var(--muted);max-width:700px}.service-row>a{font-weight:800}
.filterbar{display:flex;gap:8px;margin-bottom:30px}.filter{padding:11px 18px;border:1px solid var(--line);background:#fff;font:600 13px inherit;cursor:pointer}.filter.active{background:var(--y);border-color:var(--y)}
.project-detail-hero{min-height:580px;background-size:cover;background-position:center;display:flex;align-items:end;color:#fff;padding:90px 0;position:relative}.project-detail-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 20%,rgba(0,0,0,.85))}.project-detail-hero .container{position:relative}.project-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.tags{display:flex;flex-wrap:wrap;gap:10px}.tags span{border:1px solid #ccc;padding:10px 16px;background:#fff}
.careers-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:60px}.job{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:24px 0}.job h3{font:800 20px Manrope;margin:0}.job span{font-size:11px;color:#967d00;text-transform:uppercase;font-weight:800}.job p{color:var(--muted);margin:8px 0 0}.job>a{font-weight:800;white-space:nowrap}.apply-box,.form-box{background:#f2f1e6;padding:35px}.apply-box h2,.form-box h2{font-size:38px}.apply-box form,.form-box form{display:grid;gap:16px}label{font-weight:700;font-size:13px;display:grid;gap:6px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #d3d3d0;background:#fff;font:inherit}small,.small{font-size:12px;color:var(--muted)}.alert{padding:14px;margin-bottom:18px;font-size:13px}.success{background:#dff3df}.error{background:#ffe1df}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-lines{margin-top:35px;display:grid;gap:18px}.contact-lines p{display:grid;margin:0}.contact-lines a{font-weight:700}.prose{max-width:850px}.prose h2{font-size:32px;margin-top:45px}
.footer{background:#111;color:#aaa;padding-top:70px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:50px;padding-bottom:60px}.footer-brand{color:#fff}.footer h4{color:#fff;margin:0 0 18px}.footer-grid>div>a:not(.brand){display:block;margin:8px 0}.footer p{max-width:380px}.footer-bottom{border-top:1px solid #2b2b2b;padding:20px 0;display:flex;justify-content:space-between;font-size:12px}.footer-bottom a{color:#fff}
@media(max-width:900px){.menu-toggle{display:block}.menu{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:20px 24px;flex-direction:column;align-items:stretch;border-bottom:1px solid #ddd}.menu.open{display:flex}.nav-cta{text-align:center}.cards-4,.cards-3,.project-grid,.project-grid-large,.footer-grid{grid-template-columns:1fr 1fr}.split,.careers-grid,.contact-grid,.project-detail-grid{grid-template-columns:1fr;gap:45px}.hero{min-height:600px}.stats-grid{grid-template-columns:1fr 1fr}.section{padding:75px 0}.section-head,.cta-inner{align-items:flex-start;flex-direction:column}.footer-grid{gap:30px}}
@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--max))}.topbar-inner span{display:none}.hero h1,.page-hero h1,.project-detail-hero h1{font-size:48px;letter-spacing:-2px}.hero p{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.stats-grid,.cards-4,.cards-3,.project-grid,.project-grid-large,.footer-grid{grid-template-columns:1fr}.stats-grid>div{border-right:0;border-bottom:1px solid rgba(0,0,0,.12)}.project-card img,.project-grid-large .project-card img{height:260px}.service-row{grid-template-columns:45px 1fr}.service-row>a{grid-column:2}.cta h2,.image-band h2{font-size:40px}.footer-bottom{flex-direction:column;gap:8px}.location-box{grid-template-columns:1fr}.page-hero{padding:75px 0}}


/* MCKME logo */
.brand{display:flex;align-items:center;height:82px;text-decoration:none;flex-shrink:0}
.brand img{display:block;width:auto;height:52px;max-width:240px;object-fit:contain}
.footer-brand img{height:52px;width:auto;max-width:240px;object-fit:contain;margin-bottom:20px}

/* Global rotating contact button */
.contact-floating{position:fixed;right:28px;bottom:28px;width:125px;height:125px;z-index:99999;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--y);box-shadow:0 15px 40px rgba(0,0,0,.22);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}
.contact-circle-text{position:absolute;left:0;top:0;width:125px;height:125px;display:block;transform-origin:50% 50%;transform-box:fill-box;will-change:transform;pointer-events:none;overflow:visible}
.contact-circle-text text{fill:#111;font-family:"DM Sans",Arial,sans-serif;font-size:8.5px;font-weight:800;letter-spacing:1.5px}
.contact-floating-center{position:relative;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#111;color:var(--y);font-size:25px;font-weight:800;z-index:5;transition:transform .25s ease,background .25s ease,color .25s ease}
.contact-floating:hover{transform:scale(1.08);box-shadow:0 20px 50px rgba(0,0,0,.30)}
.contact-floating:hover .contact-floating-center{transform:rotate(45deg);background:#fff;color:#111}
.footer-contact-link{color:var(--y);font-weight:800;margin-top:15px}

.form-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.quote-box{max-width:1050px;margin:auto}

@media(max-width:900px){.brand img{height:48px;max-width:220px}}
@media(max-width:600px){.brand{height:82px}.brand img{height:44px;max-width:200px}.contact-floating{right:16px;bottom:16px;width:92px;height:92px}.contact-circle-text{width:92px;height:92px}.contact-circle-text text{font-size:7px;letter-spacing:1px}.contact-floating-center{width:40px;height:40px;font-size:19px}.form-two{grid-template-columns:1fr}}
