*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#111827;background:#fff;line-height:1.7}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #eab308;outline-offset:4px}header{background:#111827;color:#fff;position:sticky;top:0;z-index:10}nav{display:flex;gap:24px;align-items:center}.wrap{max-width:1150px;margin:auto;padding:0 30px}.nav{display:flex;justify-content:space-between;align-items:center;min-height:85px;gap:25px}.brand{display:flex;align-items:center;font-weight:700;font-size:23px;white-space:nowrap}.brand img{width:65px;height:65px;-o-object-fit:contain;object-fit:contain}.brand span{color:#eab308}nav a:hover{color:#eab308}.hero{min-height:620px;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#0009,#0009),var(--bg);background-size:cover;background-position:center;color:#fff;padding:90px 24px}.hero h1{font-size:48px;line-height:1.2;max-width:810px;margin:0 auto 20px;font-weight:800}.yellow{color:#eab308}.hero p{color:#d1d5db;font-size:18px;max-width:760px;margin:0 auto 25px}.buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}.btn{display:inline-block;background:#eab308;color:#111827;padding:13px 24px;font-weight:700;border:2px solid #eab308;border-radius:8px}.btn.outline{color:#eab308;background:transparent}.btn:hover{background:#facc15;color:#111827}.section{padding:65px 0}.gray{background:#f3f4f6}.dark{background:#111827;color:#fff}.section h1,.section h2{font-size:36px;line-height:1.25;text-align:center;margin:0 0 32px}.intro{max-width:850px;margin:0 auto 35px;text-align:center;color:#4b5563;font-size:17px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card{background:#fff;padding:28px;border-radius:12px;box-shadow:0 5px 15px #0001;text-align:center}.card h3{font-size:20px;line-height:1.3;margin:12px 0}.card p{color:#4b5563;margin:0;font-size:15px}.card .symbol{color:#eab308;font-size:34px}.four{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.dark .card{background:#1f2937}.dark .card h3{color:#eab308}.dark .card p{color:#9ca3af}.center{text-align:center}.space{margin-top:32px}.portfolio{border:1px solid #e5e7eb;box-shadow:none;background:#f9fafb}.team img{width:128px;height:128px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 50%;object-position:center 50%}.portrait{width:96px;height:128px;border-radius:8px;overflow:hidden}.team a{font-size:13px;overflow-wrap:anywhere}.team p{margin-bottom:12px}.service-card{text-align:left}.service-card ul{padding-left:20px;color:#4b5563;font-size:14px}.service-card li{margin:8px 0}.service-card .btn{margin-top:15px;font-size:13px}.two{display:grid;grid-template-columns:1fr 1fr;gap:35px}.contact-card{text-align:left}.contact-card a{display:block;margin:10px 0;color:#111827;overflow-wrap:anywhere}.contact-card small{display:block;color:#6b7280}.contact-card strong{font-size:20px}.request{padding:30px;background:#fff;border-radius:12px;border:1px solid #e5e7eb}.request p{color:#4b5563}.contact-box{background:#f3f4f6;padding:23px;border-radius:10px;margin-bottom:16px}.contact-box h3{margin:0 0 5px;font-size:17px}.contact-box p{margin:0;color:#4b5563}.footer{background:#111827;color:#d1d5db;padding:48px 0 25px}.footer h2,.footer h3{color:#fff;margin-top:0}.footer p{font-size:14px;margin:6px 0}.footer a{display:block;margin:7px 0;font-size:14px;overflow-wrap:anywhere}.copyright{text-align:center;color:#9ca3af;margin-top:30px;font-size:12px}.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.card ul{line-height:1.65}.wide{max-width:760px;margin:auto}.note{font-size:14px;color:#6b7280}.services-heading{margin-bottom:20px}@media (max-width:800px){.nav{flex-wrap:wrap;justify-content:center;gap:0;padding:8px 0 15px}nav{font-size:13px;gap:18px;flex-wrap:wrap;justify-content:center}.brand{font-size:21px}.brand img{width:48px;height:48px}.hero{min-height:520px;padding:65px 22px}.hero h1{font-size:34px}.hero p{font-size:16px}.wrap{padding:0 22px}.cards,.four,.two,.footer-grid{grid-template-columns:1fr;gap:20px}.section{padding:45px 0}.section h1,.section h2{font-size:29px}.four{grid-template-columns:1fr 1fr}.card{padding:24px}.intro{font-size:15px}.footer-grid{gap:24px}}@media print{header,footer{display:none}.page{display:block!important;-moz-column-break-before:page;break-before:page}.hero{min-height:400px}.section{padding:30px 0}.cards,.four{-moz-column-break-inside:avoid;break-inside:avoid}a{color:inherit}}header.reference-header{background:#f5f4ef;border:0;position:relative;top:auto}.reference-banner{display:block;width:100%;line-height:0}.reference-banner img{display:block;width:100%;height:auto;max-width:none}.reference-menu{background:#fff;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:16px 24px}.reference-menu nav{display:flex;justify-content:center;gap:38px;flex-wrap:wrap;color:#14252c;font-size:15px}@media (max-width:800px){.reference-menu{padding:13px 14px}.reference-menu nav{gap:18px;font-size:13px}}.team img.team-circle{display:block;width:144px;height:144px;margin:0 auto 18px;border-radius:50%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;box-shadow:0 5px 18px #14252c12}.site-credit{text-align:center;margin-top:16px;padding-top:16px;border-top:1px solid #ffffff18;color:#aab4c3;font-size:12px;letter-spacing:.3px}:root{--bg:url(/images/architecture-background.png)}.reference-menu a[aria-current=page]{color:#8c6800;font-weight:700}.skip-link{position:absolute;left:16px;top:-80px;background:#fff;padding:10px 18px;z-index:100}.skip-link:focus{top:12px}.reference-banner img{aspect-ratio:1079/216}.service-overview .service-card{display:flex;flex-direction:column}.service-overview .service-card .btn{align-self:flex-start;margin-top:auto}.service-overview .service-card ul{flex:1}.detail-header{padding:70px 24px;background:#111827;color:#fff;text-align:center}.detail-header h1{font-size:40px;line-height:1.2;margin:0 0 18px}.detail-header p{max-width:750px;margin:auto;color:#d1d5db}.detail-body{max-width:850px;margin:auto}.detail-body h2{text-align:left;font-size:30px}.detail-body p,.detail-body li{color:#4b5563}.detail-body li{margin:10px 0}.not-found{text-align:center;padding:80px 20px}main{min-height:50vh}@media (max-width:480px){.four{grid-template-columns:1fr}.hero h1,.detail-header h1{font-size:30px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.service-more{display:inline-block;margin-top:20px;color:#7a5b00;text-decoration:underline;text-underline-offset:5px;font-size:14px;font-weight:700}
