html, body, #page, .site-grid, .site-content, .site-main, #primary, #main, .entry-content, .inside-article, .grid-container, .generate-columns-container {
display: block !important;
width: 100% !important;
max-width: 100% !important;
margin: 0 !important;
padding: 0 !important;
float: none !important;
box-shadow: none !important;
border: none !important;
} :root {
--accent: #FF6B00 !important;
--accent-hover: #E65F00 !important;
--accent-light: rgba(255, 107, 0, 0.1) !important;
--transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
--radius: 12px;
--radius-sm: 8px;
--header-height: 80px;
}
[data-theme="dark"] {
--bg: #0a0a0a !important;
--surface: #141414 !important;
--surface-2: #1c1c1c !important;
--text: #ffffff !important;
--text-muted: #a0a0a0 !important;
--border: #2a2a2a !important;
--shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}
[data-theme="light"] {
--bg: #f8f9fa !important;
--surface: #ffffff !important;
--surface-2: #f1f3f5 !important;
--text: #121212 !important;
--text-muted: #555555 !important;
--border: #e0e0e0 !important;
--shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--header-height); }
body {
font-family: 'Inter', sans-serif !important;
background-color: var(--bg) !important;
color: var(--text) !important;
line-height: 1.6;
overflow-x: hidden;
transition: background-color 0.3s ease, color 0.3s ease;
}
a { color: inherit !important; text-decoration: none !important; background-color: transparent; }
a:hover, a:focus { text-decoration: none !important; color: var(--accent) !important; }
h1, h2, h3, h4, h5, h6 { font-family: 'Poppins', sans-serif !important; font-weight: 700 !important; line-height: 1.2 !important; color: var(--text) !important; }
img { max-width: 100%; display: block; }
::selection { background-color: var(--accent); color: #fff; }
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 4px; }
button, input, select, textarea { font-family: 'Inter', sans-serif !important; } .container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.section { padding: 100px 0; position: relative; display: block; clear: both; }
.section-header { text-align: center; margin-bottom: 60px; }
.section-header .badge {
display: inline-block; padding: 6px 16px; background-color: var(--accent-light) !important;
color: var(--accent) !important; border-radius: 20px; font-size: 0.85rem; font-weight: 600;
margin-bottom: 16px; text-transform: uppercase; letter-spacing: 1px;
}
.section-header h2 { font-size: 2.5rem; margin-bottom: 16px; }
.section-header p { color: var(--text-muted) !important; max-width: 600px; margin: 0 auto; }
.btn {
display: inline-flex; align-items: center; justify-content: center; gap: 8px;
padding: 14px 28px; font-family: 'Poppins', sans-serif !important; font-weight: 600 !important;
font-size: 0.95rem; border-radius: var(--radius-sm); border: none; cursor: pointer;
transition: var(--transition); text-align: center;
}
.btn-primary { background-color: var(--accent) !important; color: #fff !important; }
.btn-primary:hover { background-color: var(--accent-hover) !important; color: #fff !important; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(255, 107, 0, 0.3); }
.btn-outline { background-color: transparent; color: var(--text) !important; border: 1px solid var(--border) !important; }
.btn-outline:hover { border-color: var(--accent) !important; color: var(--accent) !important; } #preloader {
position: fixed; top: 0; left: 0; width: 100%; height: 100%;
background-color: var(--bg) !important; z-index: 9999; display: flex;
align-items: center; justify-content: center;
transition: opacity 0.5s ease, visibility 0.5s ease;
}
#preloader.hidden { opacity: 0; visibility: hidden; }
.spinner { width: 40px; height: 40px; border: 4px solid var(--border); border-top-color: var(--accent); border-radius: 50%; animation: spin 1s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } } header#header {
position: fixed; top: 0; left: 0; width: 100%; height: var(--header-height);
z-index: 1000; transition: var(--transition); background-color: transparent;
border-bottom: 1px solid transparent;
} header#header:not(.scrolled) {
background: linear-gradient(to bottom, rgba(0,0,0,0.8), transparent);
}
header#header.scrolled {
background-color: var(--bg) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.1);
border-bottom: 1px solid var(--border); backdrop-filter: blur(10px);
}
.nav-wrapper { display: flex; align-items: center; justify-content: space-between; height: 100%; }
.logo { font-family: 'Poppins', sans-serif !important; font-weight: 800 !important; font-size: 1.2rem; color: var(--text) !important; display: flex; align-items: center; gap: 10px; }
.logo span { color: var(--accent) !important; }
.nav-menu { display: flex; gap: 25px; list-style: none; margin: 0; }
.nav-menu li { margin: 0; }
.nav-menu a { font-weight: 500; position: relative; transition: var(--transition); font-size: 0.95rem; color: var(--text) !important; }
.nav-menu a::after { content: ''; position: absolute; bottom: -5px; left: 0; width: 0; height: 2px; background-color: var(--accent); transition: var(--transition); }
.nav-menu a:hover { color: var(--accent) !important; }
.nav-menu a:hover::after { width: 100%; }
.nav-actions { display: flex; align-items: center; gap: 15px; }
.theme-toggle {
background: transparent; 
border: 1px solid var(--border) !important; 
width: 40px; height: 40px;
border-radius: 50%; cursor: pointer; display: flex;
align-items: center; justify-content: center; transition: var(--transition);
color: var(--text);
}
.theme-toggle:hover { 
background-color: var(--accent-light) !important; 
border-color: var(--accent) !important;
color: var(--accent) !important; 
} .theme-toggle i {
font-size: 1.1rem;
color: inherit !important; } header#header:not(.scrolled) .logo,
header#header:not(.scrolled) .nav-menu a,
header#header:not(.scrolled) .theme-toggle {
color: #ffffff !important;
}
header#header:not(.scrolled) .theme-toggle {
border-color: rgba(255, 255, 255, 0.4) !important; 
}
header#header:not(.scrolled) .theme-toggle:hover {
background-color: rgba(255, 255, 255, 0.1) !important;
border-color: #ffffff !important;
}
header#header:not(.scrolled) .hamburger span {
background-color: #ffffff !important;
}
.hamburger { display: none; flex-direction: column; gap: 5px; background: transparent; border: none; cursor: pointer; padding: 5px; }
.hamburger span { width: 25px; height: 3px; background-color: var(--text); transition: var(--transition); } .hero { min-height: 100vh; display: flex; align-items: center; position: relative; overflow: hidden; padding-top: var(--header-height); }
.hero-bg {
position: absolute; top: 0; left: 0; width: 100%; height: 100%;
background: url(https://picsum.photos/seed/agusprodbanner/1920/1080) center/cover no-repeat;
opacity: 0.2; z-index: -1;
}
.hero-content { max-width: 800px; margin: 0 auto; text-align: center; }
.hero h1 { font-size: 4rem; margin-bottom: 20px; line-height: 1.1; color: var(--text) !important; }
.hero h1 span { color: var(--accent) !important; }
.hero p { font-size: 1.2rem; color: var(--text-muted) !important; margin-bottom: 40px; }
.hero-btns { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; } .trust { padding: 60px 0; border-bottom: 1px solid var(--border); }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; text-align: center; }
.trust-item h3 { color: var(--accent) !important; font-size: 1.5rem; margin-bottom: 5px; }
.trust-item p { color: var(--text-muted) !important; font-size: 0.9rem; font-weight: 500; } .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.about-img { position: relative; border-radius: var(--radius); overflow: hidden; }
.about-img img { width: 100%; height: 100%; object-fit: cover; }
.about-content h2 { margin-bottom: 20px; font-size: 2.2rem; color: var(--text) !important; }
.about-content p { margin-bottom: 20px; color: var(--text-muted) !important; }
.about-features { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 30px; }
.about-feature { display: flex; align-items: center; gap: 10px; font-weight: 500; color: var(--text) !important; }
.about-feature svg { width: 24px; height: 24px; color: var(--accent); flex-shrink: 0; } .services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; }
.service-card { background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius); padding: 30px; transition: var(--transition); cursor: pointer; }
.service-card:hover { transform: translateY(-5px); border-color: var(--accent); box-shadow: var(--shadow); }
.service-icon { width: 60px; height: 60px; background-color: var(--accent-light) !important; border-radius: 12px; display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }
.service-icon svg { width: 30px; height: 30px; color: var(--accent); }
.service-card h3 { font-size: 1.3rem; margin-bottom: 12px; color: var(--text) !important; }
.service-card p { color: var(--text-muted) !important; font-size: 0.95rem; margin-bottom: 20px; }
.service-link { color: var(--accent) !important; font-weight: 600; display: inline-flex; align-items: center; gap: 5px; } .pricing-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.pricing-card { background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius); padding: 40px 30px; text-align: center; position: relative; }
.pricing-card.featured { border-color: var(--accent); box-shadow: var(--shadow); }
.pricing-card.featured::before { content: 'Populer'; position: absolute; top: 20px; right: 20px; background-color: var(--accent); color: #fff !important; padding: 4px 12px; border-radius: 20px; font-size: 0.8rem; font-weight: 600; }
.pricing-card h3 { font-size: 1.5rem; margin-bottom: 10px; color: var(--text) !important; }
.pricing-card .price { font-size: 2rem; color: var(--accent) !important; font-weight: 700; margin: 20px 0; }
.pricing-features { list-style: none; text-align: left; margin-bottom: 30px; }
.pricing-features li { margin-bottom: 12px; display: flex; align-items: center; gap: 10px; color: var(--text-muted) !important; }
.pricing-features li svg { width: 18px; height: 18px; color: var(--accent); } .portfolio-filters { display: flex; justify-content: center; gap: 15px; margin-bottom: 40px; flex-wrap: wrap; }
.filter-btn { padding: 8px 20px; background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: 20px; color: var(--text) !important; cursor: pointer; transition: var(--transition); font-weight: 500; }
.filter-btn.active, .filter-btn:hover { background-color: var(--accent) !important; color: #fff !important; border-color: var(--accent); }
.portfolio-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.portfolio-item { position: relative; border-radius: var(--radius); overflow: hidden; cursor: pointer; aspect-ratio: 4/3; }
.portfolio-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.portfolio-item:hover img { transform: scale(1.1); }
.portfolio-overlay { position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px; background: linear-gradient(to top, rgba(0,0,0,0.8), transparent); color: #fff !important; transform: translateY(20px); opacity: 0; transition: var(--transition); }
.portfolio-item:hover .portfolio-overlay { transform: translateY(0); opacity: 1; }
.portfolio-overlay h4 { color: var(--accent) !important; margin-bottom: 5px; }
.portfolio-overlay p { color: #fff !important; } .catalog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 25px; }
.catalog-card { background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.catalog-img { position: relative; height: 200px; background-color: var(--surface-2) !important; }
.catalog-img img { width: 100%; height: 100%; object-fit: cover; }
.catalog-badge { position: absolute; top: 10px; left: 10px; padding: 4px 10px; border-radius: 4px; font-size: 0.75rem; font-weight: 600; color: #fff !important; }
.badge-available { background-color: #28a745; }
.badge-rented { background-color: #dc3545; }
.badge-sold { background-color: #6c757d; }
.catalog-info { padding: 20px; }
.catalog-info h4 { margin-bottom: 8px; font-size: 1.1rem; color: var(--text) !important; }
.catalog-info p { font-size: 0.9rem; color: var(--text-muted) !important; margin-bottom: 15px; }
.catalog-actions { display: flex; gap: 10px; }
.catalog-actions .btn { flex: 1; padding: 10px; font-size: 0.85rem; } .blog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.blog-card { background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; transition: var(--transition); cursor: pointer; }
.blog-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); border-color: var(--accent); }
.blog-img { height: 200px; overflow: hidden; }
.blog-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.blog-card:hover .blog-img img { transform: scale(1.1); }
.blog-content { padding: 25px; }
.blog-meta { display: flex; gap: 15px; font-size: 0.85rem; color: var(--text-muted) !important; margin-bottom: 10px; }
.blog-meta span { display: flex; align-items: center; gap: 5px; }
.blog-content h3 { font-size: 1.2rem; margin-bottom: 10px; line-height: 1.4; color: var(--text) !important; }
.blog-content p { font-size: 0.9rem; color: var(--text-muted) !important; margin-bottom: 15px; }
.read-more { color: var(--accent) !important; font-weight: 600; display: inline-flex; align-items: center; gap: 5px; } .schedule-controls { display: flex; justify-content: space-between; margin-bottom: 30px; flex-wrap: wrap; gap: 15px; }
.schedule-search { position: relative; flex: 1; min-width: 250px; }
.schedule-search input { width: 100%; padding: 12px 40px 12px 20px; background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius-sm); color: var(--text) !important; font-family: inherit; }
.schedule-search svg { position: absolute; right: 15px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; color: var(--text-muted); }
.schedule-filters select { padding: 12px 20px; background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius-sm); color: var(--text) !important; cursor: pointer; font-family: inherit; }
.schedule-table-wrapper { overflow-x: auto; background-color: var(--surface) !important; border-radius: var(--radius); border: 1px solid var(--border); }
.schedule-table { width: 100%; border-collapse: collapse; min-width: 800px; }
.schedule-table th { background-color: var(--surface-2) !important; padding: 15px; text-align: left; font-weight: 600; color: var(--text-muted) !important; border-bottom: 1px solid var(--border); }
.schedule-table td { padding: 15px; border-bottom: 1px solid var(--border); color: var(--text) !important; }
.schedule-table tr:last-child td { border-bottom: none; }
.status-badge { padding: 5px 12px; border-radius: 20px; font-size: 0.8rem; font-weight: 600; display: inline-block; }
.status-confirmed { background-color: rgba(40, 167, 69, 0.15); color: #28a745 !important; }
.status-pending { background-color: rgba(255, 193, 7, 0.15); color: #ffc107 !important; }
.status-inquiry { background-color: rgba(23, 162, 184, 0.15); color: #17a2b8 !important; }
.status-completed { background-color: rgba(108, 117, 125, 0.15); color: #6c757d !important; }
.status-cancelled { background-color: rgba(220, 53, 69, 0.15); color: #dc3545 !important; }
.schedule-cards { display: none; flex-direction: column; gap: 15px; }
.schedule-card { background-color: var(--surface) !important; border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 20px; }
.schedule-card-header { display: flex; justify-content: space-between; margin-bottom: 15px; border-bottom: 1px solid var(--border); padding-bottom: 10px; }
.schedule-card-header h4 { color: var(--accent) !important; }
.schedule-card-row { display: flex; justify-content: space-between; margin-bottom: 8px; font-size: 0.9rem; }
.schedule-card-row span:first-child { color: var(--text-muted) !important; }
.schedule-card-row span:last-child { color: var(--text) !important; text-align: right; }
.no-data { text-align: center; padding: 40px; color: var(--text-muted) !important; background-color: var(--surface) !important; border-radius: var(--radius); border: 1px dashed var(--border); } .faq-container { max-width: 800px; margin: 0 auto; }
.faq-item { border-bottom: 1px solid var(--border); margin-bottom: 15px; }
.faq-question { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; cursor: pointer; font-weight: 600; font-size: 1.1rem; color: var(--text) !important; }
.faq-question svg { width: 24px; height: 24px; transition: transform 0.3s ease; color: var(--accent); flex-shrink: 0; margin-left: 15px; }
.faq-item.active .faq-question svg { transform: rotate(45deg); }
.faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.3s ease; color: var(--text-muted) !important; }
.faq-item.active .faq-answer { max-height: 200px; padding-bottom: 20px; } .cta-section { background: linear-gradient(45deg, #1a1a1a, #0a0a0a); padding: 80px 0; text-align: center; border-top: 1px solid var(--border); }
[data-theme="light"] .cta-section { background: var(--surface) !important; }
.cta-section h2 { font-size: 2.5rem; margin-bottom: 20px; color: #fff !important; }
[data-theme="light"] .cta-section h2 { color: var(--text) !important; }
.cta-section p { color: var(--text-muted) !important; margin-bottom: 30px; font-size: 1.1rem; }
.contact-grid { display: grid; grid-template-columns: 1fr 1.5fr; gap: 60px; }
.contact-info h3 { font-size: 1.8rem; margin-bottom: 20px; color: var(--text) !important; }
.contact-info p { margin-bottom: 30px; color: var(--text-muted) !important; }
.contact-list { list-style: none; margin: 0; }
.contact-list li { display: flex; align-items: center; gap: 15px; margin-bottom: 20px; color: var(--text-muted) !important; }
.contact-list svg { width: 24px; height: 24px; color: var(--accent); flex-shrink: 0; }
.contact-map { position: relative; border-radius: var(--radius); overflow: hidden; min-height: 450px; border: 1px solid var(--border); }
.contact-map iframe { width: 100%; height: 100%; min-height: 450px; border: 0; border-radius: var(--radius); } footer { background-color: var(--surface) !important; border-top: 1px solid var(--border); padding: 60px 0 20px; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 40px; }
.footer-col h4 { margin-bottom: 20px; font-size: 1.1rem; color: var(--text) !important; }
.footer-col p { color: var(--text-muted) !important; margin-bottom: 20px; font-size: 0.9rem; }
.footer-col ul { list-style: none; margin: 0; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul li a { color: var(--text-muted) !important; transition: var(--transition); font-size: 0.9rem; }
.footer-col ul li a:hover { color: var(--accent) !important; }
.footer-social { display: flex; gap: 15px; margin-top: 20px; }
.footer-social a { width: 40px; height: 40px; border-radius: 50%; background-color: var(--bg) !important; display: flex; align-items: center; justify-content: center; transition: var(--transition); color: var(--text-muted) !important; }
.footer-social a:hover { background-color: var(--accent) !important; color: #fff !important; }
.footer-social svg { width: 20px; height: 20px; }
.footer-bottom { text-align: center; padding-top: 20px; border-top: 1px solid var(--border); color: var(--text-muted) !important; font-size: 0.85rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; }
.footer-bottom a { color: var(--accent) !important; font-weight: 500; } .floating-wa, .back-top { position: fixed; right: 30px; width: 55px; height: 55px; border-radius: 50%; display: flex; align-items: center; justify-content: center; z-index: 999; transition: var(--transition); box-shadow: 0 5px 15px rgba(0,0,0,0.2); }
.floating-wa { bottom: 30px; background-color: #25D366 !important; color: #fff !important; }
.floating-wa:hover { transform: scale(1.1); background-color: #128C7E !important; color: #fff !important; }
.floating-wa svg { width: 30px; height: 30px; }
.wa-tooltip { position: absolute; right: 65px; background-color: var(--surface) !important; border: 1px solid var(--border); padding: 8px 15px; border-radius: var(--radius-sm); font-size: 0.85rem; white-space: nowrap; opacity: 0; visibility: hidden; transition: var(--transition); color: var(--text) !important; }
.floating-wa:hover .wa-tooltip { opacity: 1; visibility: visible; }
.back-top { bottom: 100px; background-color: var(--accent) !important; color: #fff !important; opacity: 0; visibility: hidden; border: none; cursor: pointer; }
.back-top.active { opacity: 1; visibility: visible; }
.back-top:hover { background-color: var(--accent-hover) !important; color: #fff !important; }
.back-top svg { width: 24px; height: 24px; }
.modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.8); z-index: 10000; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: var(--transition); padding: 20px; }
.modal-overlay.active { opacity: 1; visibility: visible; }
.modal-content { background-color: var(--surface) !important; padding: 40px; border-radius: var(--radius); max-width: 600px; width: 100%; max-height: 90vh; overflow-y: auto; position: relative; transform: translateY(20px); transition: var(--transition); color: var(--text) !important; }
.modal-overlay.active .modal-content { transform: translateY(0); }
.modal-close { position: absolute; top: 20px; right: 20px; background: transparent; border: none; font-size: 1.5rem; color: var(--text-muted) !important; cursor: pointer; }
.modal-close:hover { color: var(--accent) !important; }
.modal-content h2 { color: var(--accent) !important; margin-bottom: 20px; }
.modal-content p { margin-bottom: 15px; color: var(--text-muted) !important; }
.modal-content ul { margin-bottom: 20px; padding-left: 20px; color: var(--text-muted) !important; }
.lightbox { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.95); z-index: 10001; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: var(--transition); }
.lightbox.active { opacity: 1; visibility: visible; }
.lightbox img { max-width: 90%; max-height: 80vh; border-radius: var(--radius-sm); }
.lightbox-close, .lightbox-prev, .lightbox-next { position: absolute; background: transparent; border: none; color: #fff !important; font-size: 2rem; cursor: pointer; opacity: 0.7; transition: var(--transition); }
.lightbox-close:hover, .lightbox-prev:hover, .lightbox-next:hover { opacity: 1; color: var(--accent) !important; }
.lightbox-close { top: 30px; right: 30px; }
.lightbox-prev { left: 30px; top: 50%; transform: translateY(-50%); font-size: 3rem; }
.lightbox-next { right: 30px; top: 50%; transform: translateY(-50%); font-size: 3rem; } .reveal { opacity: 0; transform: translateY(40px); transition: opacity 0.8s ease, transform 0.8s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); } .mobile-menu { position: fixed; top: 0; right: -100%; width: 80%; max-width: 300px; height: 100%; background-color: var(--surface) !important; z-index: 1001; transition: right 0.3s ease; padding: 80px 30px 30px; box-shadow: -5px 0 15px rgba(0,0,0,0.2); }
.mobile-menu.active { right: 0; }
.mobile-menu ul { list-style: none; margin: 0; }
.mobile-menu ul li { margin-bottom: 20px; }
.mobile-menu ul li a { font-size: 1.2rem; font-weight: 500; color: var(--text) !important; }
.mobile-menu-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 1000; opacity: 0; visibility: hidden; transition: var(--transition); }
.mobile-menu-overlay.active { opacity: 1; visibility: visible; }
.mobile-menu-close {
position: absolute; top: 20px; right: 20px; background: transparent; 
border: none; color: var(--text) !important; cursor: pointer; display: flex; 
align-items: center; justify-content: center; transition: var(--transition);
font-size: 1.5rem;
}
.mobile-menu-close:hover { color: var(--accent) !important; } @media (max-width: 1024px) {
.nav-menu { display: none; }
.hamburger { display: flex; }
.hero h1 { font-size: 3rem; }
.about-grid, .contact-grid { grid-template-columns: 1fr; }
.footer-grid { grid-template-columns: 1fr 1fr; }
.portfolio-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
.section { padding: 60px 0; }
.hero h1 { font-size: 2.2rem; }
.hero p { font-size: 1rem; }
.trust-grid { grid-template-columns: repeat(2, 1fr); }
.about-features { grid-template-columns: 1fr; }
.schedule-table-wrapper { display: none; }
.schedule-cards { display: flex; }
.cta-section h2 { font-size: 1.8rem; }
.footer-grid { grid-template-columns: 1fr; gap: 30px; }
.footer-bottom { flex-direction: column; text-align: center; }
}
@media (max-width: 480px) {
.hero h1 { font-size: 1.8rem; }
.hero-btns { flex-direction: column; width: 100%; }
.hero-btns .btn { width: 100%; }
.portfolio-grid { grid-template-columns: 1fr; }
.section-header h2 { font-size: 1.8rem; }
} .alignleft { float: left; margin-right: 1.5em; }
.alignright { float: right; margin-left: 1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }blockquote,body,dd,dl,dt,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,html,iframe,legend,li,ol,p,pre,textarea,ul{margin:0;padding:0;border:0}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}progress{vertical-align:baseline}html{box-sizing:border-box}*,::after,::before{box-sizing:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;margin:0}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}body,button,input,select,textarea{font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-weight:400;text-transform:none;font-size:17px;line-height:1.5}p{margin-bottom:1.5em}h1,h2,h3,h4,h5,h6{font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit}pre{background:rgba(0,0,0,.05);font-family:inherit;font-size:inherit;line-height:normal;margin-bottom:1.5em;padding:20px;overflow:auto;max-width:100%}blockquote{border-left:5px solid rgba(0,0,0,.05);padding:20px;font-size:1.2em;font-style:italic;margin:0 0 1.5em;position:relative}blockquote p:last-child{margin:0}table,td,th{border:1px solid rgba(0,0,0,.1)}table{border-collapse:separate;border-spacing:0;border-width:1px 0 0 1px;margin:0 0 1.5em;width:100%}td,th{padding:8px}th{border-width:0 1px 1px 0}td{border-width:0 1px 1px 0}hr{background-color:rgba(0,0,0,.1);border:0;height:1px;margin-bottom:40px;margin-top:40px}fieldset{padding:0;border:0;min-width:inherit}fieldset legend{padding:0;margin-bottom:1.5em}h1{font-size:42px;margin-bottom:20px;line-height:1.2em;font-weight:400;text-transform:none}h2{font-size:35px;margin-bottom:20px;line-height:1.2em;font-weight:400;text-transform:none}h3{font-size:29px;margin-bottom:20px;line-height:1.2em;font-weight:400;text-transform:none}h4{font-size:24px}h5{font-size:20px}h4,h5,h6{margin-bottom:20px}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}b,strong{font-weight:700}cite,dfn,em,i{font-style:italic}address{margin:0 0 1.5em}code,kbd,tt,var{font:15px Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace}abbr,acronym{border-bottom:1px dotted #666;cursor:help}ins,mark{text-decoration:none}sub,sup{font-size:75%;height:0;line-height:0;position:relative;vertical-align:baseline}sup{bottom:1ex}sub{top:.5ex}small{font-size:75%}big{font-size:125%}figure{margin:0}table{margin:0 0 1.5em;width:100%}th{font-weight:700}img{height:auto;max-width:100%}button,input[type=button],input[type=reset],input[type=submit]{background:#55555e;color:#fff;border:1px solid transparent;cursor:pointer;-webkit-appearance:button;padding:10px 20px}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{border:1px solid;border-radius:0;padding:10px 15px;max-width:100%}textarea{width:100%}a,button,input{transition:color .1s ease-in-out,background-color .1s ease-in-out}a{text-decoration:none}.button,.wp-block-button .wp-block-button__link{padding:10px 20px;display:inline-block}.wp-block-button .wp-block-button__link{font-size:inherit;line-height:inherit}.using-mouse :focus{outline:0}.using-mouse ::-moz-focus-inner{border:0}.alignleft{float:left;margin-right:1.5em}.alignright{float:right;margin-left:1.5em}.aligncenter{clear:both;display:block;margin:0 auto}.size-auto,.size-full,.size-large,.size-medium,.size-thumbnail{max-width:100%;height:auto}.no-sidebar .entry-content .alignfull{margin-left:calc(-100vw / 2 + 100% / 2);margin-right:calc(-100vw / 2 + 100% / 2);max-width:100vw;width:auto}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#21759b;display:block;font-size:.875rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}#primary[tabindex="-1"]:focus{outline:0}.main-navigation{z-index:100;padding:0;clear:both;display:block}.main-navigation a{display:block;text-decoration:none;font-weight:400;text-transform:none;font-size:15px}.main-navigation ul{list-style:none;margin:0;padding-left:0}.main-navigation .main-nav ul li a{padding-left:20px;padding-right:20px;line-height:60px}.inside-navigation{position:relative}.main-navigation .inside-navigation{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between}.main-navigation .main-nav>ul{display:flex;flex-wrap:wrap;align-items:center}.main-navigation li{position:relative}.main-navigation .menu-bar-items{display:flex;align-items:center;font-size:15px}.main-navigation .menu-bar-items a{color:inherit}.main-navigation .menu-bar-item{position:relative}.main-navigation .menu-bar-item.search-item{z-index:20}.main-navigation .menu-bar-item>a{padding-left:20px;padding-right:20px;line-height:60px}.sidebar .main-navigation .main-nav{flex-basis:100%}.sidebar .main-navigation .main-nav>ul{flex-direction:column}.sidebar .main-navigation .menu-bar-items{margin:0 auto}.sidebar .main-navigation .menu-bar-items .search-item{order:10}.nav-align-center .inside-navigation{justify-content:center}.nav-align-center .main-nav>ul{justify-content:center}.nav-align-right .inside-navigation{justify-content:flex-end}.main-navigation ul ul{display:block;box-shadow:1px 1px 0 rgba(0,0,0,.1);float:left;position:absolute;left:-99999px;opacity:0;z-index:99999;width:200px;text-align:left;top:auto;transition:opacity 80ms linear;transition-delay:0s;pointer-events:none;height:0;overflow:hidden}.main-navigation ul ul a{display:block}.main-navigation ul ul li{width:100%}.main-navigation .main-nav ul ul li a{line-height:normal;padding:10px 20px;font-size:14px}.main-navigation .main-nav ul li.menu-item-has-children>a{padding-right:0;position:relative}.main-navigation.sub-menu-left ul ul{box-shadow:-1px 1px 0 rgba(0,0,0,.1)}.main-navigation.sub-menu-left .sub-menu{right:0}.main-navigation:not(.toggled) ul li.sfHover>ul,.main-navigation:not(.toggled) ul li:hover>ul{left:auto;opacity:1;transition-delay:150ms;pointer-events:auto;height:auto;overflow:visible}.main-navigation:not(.toggled) ul ul li.sfHover>ul,.main-navigation:not(.toggled) ul ul li:hover>ul{left:100%;top:0}.main-navigation.sub-menu-left:not(.toggled) ul ul li.sfHover>ul,.main-navigation.sub-menu-left:not(.toggled) ul ul li:hover>ul{right:100%;left:auto}.nav-float-right .main-navigation ul ul ul{top:0}.menu-item-has-children .dropdown-menu-toggle{display:inline-block;height:100%;clear:both;padding-right:20px;padding-left:10px}.menu-item-has-children ul .dropdown-menu-toggle{padding-top:10px;padding-bottom:10px;margin-top:-10px}.sidebar .menu-item-has-children .dropdown-menu-toggle,nav ul ul .menu-item-has-children .dropdown-menu-toggle{float:right}.widget-area .main-navigation li{float:none;display:block;width:100%;padding:0;margin:0}.sidebar .main-navigation.sub-menu-right ul li.sfHover ul,.sidebar .main-navigation.sub-menu-right ul li:hover ul{top:0;left:100%}.sidebar .main-navigation.sub-menu-left ul li.sfHover ul,.sidebar .main-navigation.sub-menu-left ul li:hover ul{top:0;right:100%}.site-main .comment-navigation,.site-main .post-navigation,.site-main .posts-navigation{margin:0 0 2em;overflow:hidden}.site-main .post-navigation{margin-bottom:0}.paging-navigation .nav-next,.paging-navigation .nav-previous{display:none}.paging-navigation .nav-links>*{padding:0 5px}.paging-navigation .nav-links .current{font-weight:700}.nav-links>:first-child{padding-left:0}.site-header{position:relative}.inside-header{padding:20px 40px}.main-title{margin:0;font-size:25px;line-height:1.2em;word-wrap:break-word;font-weight:700;text-transform:none}.site-description{margin:0;line-height:1.5;font-weight:400;text-transform:none;font-size:15px}.site-logo{display:inline-block;max-width:100%}.site-header .header-image{vertical-align:middle}.inside-header{display:flex;align-items:center}.header-widget{margin-left:auto}.header-widget p:last-child{margin-bottom:0}.nav-float-right .header-widget{margin-left:20px}.nav-float-right #site-navigation{margin-left:auto}.nav-float-left #site-navigation{margin-right:auto;order:-10}.nav-float-left .header-widget{margin-left:0;margin-right:20px;order:-15}.header-aligned-center:not([class*=nav-float-]) .inside-header{justify-content:center;flex-direction:column;text-align:center}.header-aligned-center:not([class*=nav-float-]) .header-widget{margin-left:auto;margin-right:auto}.header-aligned-center:not([class*=nav-float-]) .inside-header>:not(:first-child){margin-top:1em}.header-aligned-right:not([class*=nav-float-]) .inside-header{justify-content:flex-end}.header-aligned-right:not([class*=nav-float-]) .header-widget{margin-right:auto;margin-left:0;order:-10}.site-branding-container{display:inline-flex;align-items:center;text-align:left;flex-shrink:0}.site-branding-container .site-logo{margin-right:1em}.sticky{display:block}.entry-header .gp-icon,.posted-on .updated{display:none}.byline,.entry-header .cat-links,.entry-header .comments-link,.entry-header .tags-links,.group-blog .byline,.single .byline{display:inline}footer.entry-meta .byline,footer.entry-meta .posted-on{display:block}.entry-content:not(:first-child),.entry-summary:not(:first-child),.page-content:not(:first-child){margin-top:2em}.page-links{clear:both;margin:0 0 1.5em}.archive .format-aside .entry-header,.archive .format-status .entry-header,.archive .format-status .entry-meta,.archive .format-status .entry-title,.blog .format-aside .entry-header,.blog .format-status .entry-header,.blog .format-status .entry-meta,.blog .format-status .entry-title{display:none}.archive .format-aside .entry-content,.archive .format-status .entry-content,.blog .format-aside .entry-content,.blog .format-status .entry-content{margin-top:0}.archive .format-status .entry-content p:last-child,.blog .format-status .entry-content p:last-child{margin-bottom:0}.entry-header,.site-content{word-wrap:break-word}.entry-title{margin-bottom:0}.author .page-header .page-title{display:flex;align-items:center}.author .page-header .avatar{margin-right:20px}.page-header .author-info>:last-child,.page-header>:last-child{margin-bottom:0}.entry-meta{font-size:85%;margin-top:.5em;line-height:1.5}footer.entry-meta{margin-top:2em}.cat-links,.comments-link,.tags-links{display:block}.entry-content>p:last-child,.entry-summary>p:last-child,.page-content>p:last-child,.read-more-container,.taxonomy-description p:last-child{margin-bottom:0}.wp-caption{margin-bottom:1.5em;max-width:100%;position:relative}.wp-caption img[class*=wp-image-]{display:block;margin:0 auto 0;max-width:100%}.wp-caption .wp-caption-text{font-size:75%;padding-top:5px;opacity:.8}.wp-caption img{position:relative;vertical-align:bottom}.wp-block-image figcaption{font-size:13px;text-align:center}.wp-block-gallery,ul.blocks-gallery-grid{margin-left:0}.wp-block-gallery .blocks-gallery-image figcaption,.wp-block-gallery .blocks-gallery-item figcaption{background:rgba(255,255,255,.7);color:#000;padding:10px;box-sizing:border-box}.gallery{margin-bottom:1.5em}.gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%}.gallery-columns-2 .gallery-item{max-width:50%}.gallery-columns-3 .gallery-item{max-width:33.33%}.gallery-columns-4 .gallery-item{max-width:25%}.gallery-columns-5 .gallery-item{max-width:20%}.gallery-columns-6 .gallery-item{max-width:16.66%}.gallery-columns-7 .gallery-item{max-width:14.28%}.gallery-columns-8 .gallery-item{max-width:12.5%}.gallery-columns-9 .gallery-item{max-width:11.11%}.gallery-caption{display:block}.site-main .gallery{margin-bottom:1.5em}.gallery-item img{vertical-align:bottom}.gallery-icon{padding:5px}embed,iframe,object{max-width:100%}.wp-block-post-template{margin-left:0}.widget-area .widget{padding:40px}.widget select{max-width:100%}.footer-widgets .widget :last-child,.sidebar .widget :last-child{margin-bottom:0}.widget-title{margin-bottom:30px;font-size:20px;line-height:1.5;font-weight:400;text-transform:none}.widget ol,.widget ul{margin:0}.widget .search-field{width:100%}.widget .search-form{display:flex}.widget .search-form button.search-submit{font-size:15px}.footer-widgets .widget{margin-bottom:30px}.footer-widgets .widget:last-child,.sidebar .widget:last-child{margin-bottom:0}.widget ul li{list-style-type:none;position:relative;margin-bottom:.5em}.widget ul li ul{margin-left:1em;margin-top:.5em}.wp-calendar-table{table-layout:fixed}.site-content{display:flex}.grid-container{margin-left:auto;margin-right:auto;max-width:1200px}.page-header,.sidebar .widget,.site-main>*{margin-bottom:20px}.both-left .inside-left-sidebar,.both-right .inside-left-sidebar{margin-right:10px}.both-left .inside-right-sidebar,.both-right .inside-right-sidebar{margin-left:10px}.one-container.both-right .site-main,.one-container.right-sidebar .site-main{margin-right:40px}.one-container.both-left .site-main,.one-container.left-sidebar .site-main{margin-left:40px}.one-container.both-sidebars .site-main{margin:0 40px 0 40px}.one-container.archive .post:not(:last-child):not(.is-loop-template-item),.one-container.blog .post:not(:last-child):not(.is-loop-template-item){padding-bottom:40px}.one-container .site-content{padding:40px}.separate-containers .comments-area,.separate-containers .inside-article,.separate-containers .page-header,.separate-containers .paging-navigation{padding:40px}.separate-containers .site-main{margin:20px}.separate-containers.no-sidebar .site-main{margin-left:0;margin-right:0}.separate-containers.both-right .site-main,.separate-containers.right-sidebar .site-main{margin-left:0}.separate-containers.both-left .site-main,.separate-containers.left-sidebar .site-main{margin-right:0}.separate-containers .inside-left-sidebar,.separate-containers .inside-right-sidebar{margin-top:20px;margin-bottom:20px}.inside-page-header{padding:40px}.widget-area .main-navigation{margin-bottom:20px}.one-container .site-main>:last-child,.separate-containers .site-main>:last-child{margin-bottom:0}.full-width-content .container.grid-container{max-width:100%}.full-width-content.no-sidebar.separate-containers .site-main{margin:0}.full-width-content.one-container .site-content,.full-width-content.separate-containers .inside-article{padding:0}.full-width-content .entry-content .alignwide{margin-left:0;width:auto;max-width:unset}.contained-content.one-container .site-content,.contained-content.separate-containers .inside-article{padding:0}.sidebar .grid-container{max-width:100%;width:100%}.both-left .is-left-sidebar,.both-sidebars .is-left-sidebar,.left-sidebar .sidebar{order:-10}.both-left .is-right-sidebar{order:-5}.both-right .is-left-sidebar{order:5}.both-right .is-right-sidebar,.both-sidebars .is-right-sidebar{order:10}.inside-site-info{display:flex;align-items:center;justify-content:center;padding:20px 40px}.site-info{text-align:center;font-size:15px}.post-image:not(:first-child){margin-top:2em}.featured-image{line-height:0}.separate-containers .featured-image{margin-top:20px}.separate-containers .inside-article>.featured-image{margin-top:0;margin-bottom:2em}.one-container .inside-article>.featured-image{margin-top:0;margin-bottom:2em}.gp-icon{display:inline-flex;align-self:center}.gp-icon svg{height:1em;width:1em;top:.125em;position:relative;fill:currentColor}.close-search .icon-search svg:first-child,.icon-menu-bars svg:nth-child(2),.icon-search svg:nth-child(2),.toggled .icon-menu-bars svg:first-child{display:none}.close-search .icon-search svg:nth-child(2),.toggled .icon-menu-bars svg:nth-child(2){display:block}.entry-meta .gp-icon{margin-right:.6em;opacity:.7}nav.toggled .icon-arrow-left svg{transform:rotate(-90deg)}nav.toggled .icon-arrow-right svg{transform:rotate(90deg)}nav.toggled .sfHover>a>.dropdown-menu-toggle .gp-icon svg{transform:rotate(180deg)}nav.toggled .sfHover>a>.dropdown-menu-toggle .gp-icon.icon-arrow-left svg{transform:rotate(-270deg)}nav.toggled .sfHover>a>.dropdown-menu-toggle .gp-icon.icon-arrow-right svg{transform:rotate(270deg)}.container.grid-container{width:auto}.menu-toggle,.mobile-bar-items,.sidebar-nav-mobile{display:none}.menu-toggle{padding:0 20px;line-height:60px;margin:0;font-weight:400;text-transform:none;font-size:15px;cursor:pointer}.menu-toggle .mobile-menu{padding-left:3px}.menu-toggle .gp-icon+.mobile-menu{padding-left:9px}.menu-toggle .mobile-menu:empty{display:none}button.menu-toggle{background-color:transparent;flex-grow:1;border:0;text-align:center}button.menu-toggle:active,button.menu-toggle:focus,button.menu-toggle:hover{background-color:transparent}.has-menu-bar-items button.menu-toggle{flex-grow:0}nav.toggled ul ul.sub-menu{width:100%}.toggled .menu-item-has-children .dropdown-menu-toggle{padding-left:20px}.main-navigation.toggled .main-nav{flex-basis:100%;order:3}.main-navigation.toggled .main-nav>ul{display:block}.main-navigation.toggled .main-nav li{width:100%;text-align:left}.main-navigation.toggled .main-nav ul ul{transition:0s;visibility:hidden;box-shadow:none;border-bottom:1px solid rgba(0,0,0,.05)}.main-navigation.toggled .main-nav ul ul li:last-child>ul{border-bottom:0}.main-navigation.toggled .main-nav ul ul.toggled-on{position:relative;top:0;left:auto!important;right:auto!important;width:100%;pointer-events:auto;height:auto;opacity:1;display:block;visibility:visible;float:none}.main-navigation.toggled .menu-item-has-children .dropdown-menu-toggle{float:right}.mobile-menu-control-wrapper{display:none;margin-left:auto;align-items:center}.has-inline-mobile-toggle #site-navigation.toggled{margin-top:1.5em}.has-inline-mobile-toggle #site-navigation.has-active-search{margin-top:1.5em}.has-inline-mobile-toggle #site-navigation.has-active-search .nav-search-active{position:relative}.has-inline-mobile-toggle #site-navigation.has-active-search .navigation-search input{outline:auto}.nav-float-left .mobile-menu-control-wrapper{order:-10;margin-left:0;margin-right:auto;flex-direction:row-reverse}@media (max-width:768px){.hide-on-mobile{display:none!important}a,body,button,input,select,textarea{transition:all 0s ease-in-out}.inside-header{flex-direction:column;text-align:center}.site-header .header-widget{margin-top:1.5em;margin-left:auto;margin-right:auto;text-align:center}.site-content{flex-direction:column}.container .site-content .content-area{width:auto}.is-left-sidebar.sidebar,.is-right-sidebar.sidebar{width:auto;order:initial}.is-left-sidebar+.is-right-sidebar .inside-right-sidebar{margin-top:0}.both-left .inside-left-sidebar,.both-left .inside-right-sidebar,.both-right .inside-left-sidebar,.both-right .inside-right-sidebar{margin-right:0;margin-left:0}#main{margin-left:0;margin-right:0}body:not(.no-sidebar) #main{margin-bottom:0}.alignleft,.alignright{float:none;display:block;margin-left:auto;margin-right:auto}.comment .children{padding-left:10px;margin-left:0}.entry-meta{font-size:inherit}.entry-meta a{line-height:1.8em}}@media (min-width:769px) and (max-width:1024px){.hide-on-tablet{display:none!important}}@media (min-width:1025px){.hide-on-desktop{display:none!important}}