*, *::before, *::after{margin: 0;padding: 0;box-sizing: border-box;}:root{--bg: #0a0a0a;--fg: #f0f0f0;--muted: #999;--accent: #2DD4BF;--on-accent: #0a0a0a;--surface: #141414;--border: #2a2a2a;
}html{font-size: 16px;}
body{font-family: 'Roboto Slab', Georgia, serif;background: var(--bg);color: var(--fg);line-height: 1.6;
}
a{color: var(--accent);}
img{max-width: 100%;display: block;}.skip-link{position: absolute;top: -100%;left: 0;background: var(--accent);color: var(--on-accent);padding: 12px 20px;z-index: 100;
}
.skip-link:focus{top: 0;}nav#nav{display: flex;align-items: center;justify-content: space-between;padding: 16px 24px;border-bottom: 1px solid var(--border);
}
.nav-logo{font-size: 20px;font-weight: 700;text-decoration: none;color: var(--fg);}
.nav-links{list-style: none;display: flex;gap: 24px;}
.nav-links a{text-decoration: none;color: var(--fg);}.nav-toggle{display: none;width: 44px;height: 44px;padding: 0;background: none;border: none;cursor: pointer;flex-direction: column;align-items: center;justify-content: center;gap: 5px;
}
.nav-toggle span{display: block;width: 24px;height: 2px;background: var(--fg);transition: transform 0.2s ease, opacity 0.2s ease;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform: translateY(7px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity: 0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform: translateY(-7px) rotate(-45deg);}.site-banner{background: var(--accent);color: var(--on-accent);text-align: center;padding: 10px 16px;font-size: 14px;
}.page-hero{position: relative;padding: 80px 24px;text-align: center;}
.page-hero--dark{background: var(--surface);}
.page-hero-bg--default{position: absolute;inset: 0;background: var(--surface);}
.hero-overlay{position: absolute;inset: 0;background: rgba(0,0,0,0.3);}
.page-hero-content{position: relative;}
.hero-title{font-size: clamp(28px, 5vw, 48px);font-weight: 700;}
.hero-supertitle{font-size: 12px;letter-spacing: 3px;text-transform: uppercase;color: var(--muted);}
.hero-description{color: var(--muted);max-width: 560px;margin: 16px auto 0;}.blog--home{padding: 48px 24px;max-width: 960px;margin: 0 auto;}
.blog-header{display: flex;justify-content: space-between;align-items: baseline;margin-bottom: 24px;}
.blog-header a{text-decoration: none;font-size: 14px;}.contact-section{padding: 48px 24px;max-width: 640px;margin: 0 auto;}
.contact-tag{font-size: 12px;letter-spacing: 2px;text-transform: uppercase;color: var(--accent);}
.contact-title{font-size: 24px;margin: 8px 0 16px;}
.contact-sub{color: var(--muted);margin-bottom: 24px;}
.contact-form{display: flex;flex-direction: column;gap: 16px;}
.contact-form label{font-size: 13px;color: var(--muted);margin-bottom: 4px;display: block;}
.contact-form input, .contact-form textarea, .contact-form select{width: 100%;background: var(--surface);border: 1px solid var(--border);color: var(--fg);padding: 12px;font-size: 14px;
}
.contact-form input:focus, .contact-form textarea:focus, .contact-form select:focus{outline: none;border-color: var(--accent);
}
.contact-submit{background: var(--accent);color: var(--on-accent);border: none;padding: 14px;font-size: 13px;letter-spacing: 2px;text-transform: uppercase;cursor: pointer;
}
.contact-submit:disabled{opacity: 0.6;cursor: not-allowed;}
#contact-status, #emp-status{padding: 12px;font-size: 14px;}
.hidden{display: none;}
.contact-msg--success{background: #0f1f0f;border: 1px solid #2a5c2a;color: #7fc77f;}
.contact-msg--error{background: #1f0f0f;border: 1px solid #5c2a2a;color: #c77f7f;}.jobs-section{padding: 48px 24px;max-width: 720px;margin: 0 auto;}
.job-list{list-style: none;display: flex;flex-direction: column;gap: 12px;}
.job-card{border: 1px solid var(--border);}
.job-head{padding: 16px;cursor: pointer;display: flex;justify-content: space-between;}
.job-meta{color: var(--muted);font-size: 13px;}
.job-body{padding: 0 16px 16px;}.blog-listing, .post-single, .post-share, .blog--related{padding: 48px 24px;max-width: 960px;margin: 0 auto;}
.blog-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));gap: 24px;}
.post-link{text-decoration: none;color: var(--fg);}
.post-img-wrap{aspect-ratio: 16/9;background: var(--surface);overflow: hidden;}
.post-img-wrap img{width: 100%;height: 100%;object-fit: cover;}
.post-title{font-size: 18px;margin: 8px 0 4px;}
.post-cat{font-size: 11px;letter-spacing: 1px;text-transform: uppercase;color: var(--accent);}
.post-date{color: var(--muted);font-size: 13px;}
.post-single-title{font-size: 28px;margin: 16px 0 8px;}
.post-single-body{line-height: 1.8;}
.post-single-body p{margin-bottom: 16px;}
.blog-empty{text-align: center;padding: 60px 0;color: var(--muted);}
.share-links{display: flex;gap: 12px;}
.share-btn{display: inline-block;border: 1px solid var(--border);padding: 8px 16px;text-decoration: none;color: var(--fg);font-size: 13px;
}.error-404{text-align: center;padding: 100px 24px;}
.error-404-title{font-size: 32px;margin: 8px 0 16px;}
.error-404-links{display: flex;gap: 16px;justify-content: center;margin-top: 24px;}
.btn{display: inline-block;background: var(--accent);color: var(--on-accent);text-decoration: none;padding: 12px 24px;font-size: 13px;
}footer{border-top: 1px solid var(--border);padding: 48px 24px 24px;}
.footer-inner{display: grid;grid-template-columns: 2fr 1fr 1fr 1fr;gap: 32px;max-width: 1100px;margin: 0 auto;
}
.footer-col h3{font-size: 13px;text-transform: uppercase;letter-spacing: 1px;color: var(--muted);margin-bottom: 12px;}
.footer-col a{display: block;text-decoration: none;color: var(--fg);margin-bottom: 8px;}
.footer-bottom{text-align: center;margin-top: 32px;padding-top: 24px;border-top: 1px solid var(--border);color: var(--muted);font-size: 13px;}
.hours-schedule .hours-row{display: flex;justify-content: space-between;font-size: 13px;margin-bottom: 4px;}@media (max-width: 720px){.nav-links{display: none;position: absolute;top: 100%;left: 0;right: 0;flex-direction: column;gap: 0;background: var(--bg);border-bottom: 1px solid var(--border);}.nav-links.is-open{display: flex;}.nav-links li{border-top: 1px solid var(--border);}.nav-links a{display: block;padding: 16px 24px;}.nav-toggle{display: flex;}nav#nav{position: relative;}.footer-inner{grid-template-columns: 1fr;}
}