html{overflow-x:hidden;}
img{max-width:100%;height:auto;}

.service-areas-wrap{max-width:1600px;margin:0 auto;padding:64px min(64px,5vw);border-bottom:1px solid var(--rule, #2a2a2a);}
.service-areas-wrap .sec-label{font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#808080;margin-bottom:24px;}
.area-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:#2a2a2a;border:1px solid #2a2a2a;}
.area-card{display:flex;flex-direction:column;gap:8px;background:#111;padding:28px 26px;text-decoration:none;transition:background .2s;}
.area-card:hover{background:#181818;}
.area-card h3{font-family:'Oswald',sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:#f4f4f4;letter-spacing:.01em;}
.area-card p{font-size:13px;font-weight:300;color:#808080;line-height:1.6;}
.area-card-link{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#b8b8b8;margin-top:4px;}
.other-areas{padding:48px min(64px,5vw);border-bottom:1px solid var(--rule,#2a2a2a);}
.other-areas h3{font-family:'Oswald',sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--light,#b8b8b8);margin-bottom:18px;}
.area-links{display:flex;flex-wrap:wrap;gap:10px;}
.area-link{font-family:'Oswald',sans-serif;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--white,#f4f4f4);background:var(--dark2,#181818);border:1px solid var(--rule,#2a2a2a);padding:16px 24px;text-decoration:none;display:inline-block;transition:background .2s ease,border-color .2s ease;}
.area-link:hover{background:var(--dark3,#202020);border-color:var(--mid,#808080);}
@media(max-width:620px){.other-areas{padding:36px 20px;}}
.faq-section{padding:64px min(64px,5vw);border-bottom:1px solid var(--rule,#2a2a2a);}
.faq-list{display:flex;flex-direction:column;gap:0;}
.faq-item{border-bottom:1px solid var(--rule,#2a2a2a);}
.faq-q{font-family:'Oswald',sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--white,#f4f4f4);padding:22px 0 10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-q::after{content:'+';font-size:20px;color:var(--dim,#555);flex-shrink:0;transition:transform .2s;}
.faq-item.open .faq-q::after{transform:rotate(45deg);}
.faq-a{font-size:14px;font-weight:300;color:var(--mid,#808080);line-height:1.75;padding-bottom:20px;display:none;}
.faq-item.open .faq-a{display:block;}
@media(max-width:620px){.faq-section{padding:48px 20px;}}
