:root{--body-bg-color:#f8fafc;--body-bg-gradient1:#f8fafc;--body-bg-gradient2:#e2e8f0;--body-text-color:#222;--heading-color:#222;--hero-gradient1:#177097;--hero-gradient2:#a29d06;--footer-bg-color:#31787b;--footer-bg-gradient1:#31787b;--footer-bg-gradient2:#acaf0e;--link-color:#2563eb;--box-color:#0d644a;--box-text-color:#fff;--header-bg-color:#fff;--font-family:system-ui;--nav-link-color:#141414;--footer-text-color:#fff;--header-text-color:#ffff}
html{overflow-x:hidden}
body{background-color:var(--body-bg-color);color:var(--body-text-color)!important;font-family:var(--font-family);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
h1{font-size:clamp(2rem,4vw,2.5rem)!important}
h2{font-size:clamp(1.6rem,3vw,2rem)!important}
h3{font-size:clamp(1.4rem,3vw,1.7rem)!important}
p{margin-bottom:.5rem!important}
section{padding:15px 0;scroll-margin-top:70px}
h2,h3{color:var(--heading-color)!important}
.content-area a{color:var(--link-color)!important;text-decoration:none!important}
.content-area a:hover{color:var(--link-color)!important;opacity:.8}
.error_page{min-height:70vh}
.footer{background-color:var(--footer-bg-color);color:var(--footer-text-color)}
.footer a{text-decoration:none;color:var(--link-color)!important}
.footer{background-image:linear-gradient(135deg,var(--footer-bg-gradient1),var(--footer-bg-gradient2))}
.navbar{transition:background-color .3s ease,box-shadow .3s ease;box-shadow:0 4px 12px #00000026;background-color:var(--header-bg-color)!important;position:sticky;top:0;z-index:1020}
.hero-section{padding:55px 0;position:relative;overflow:hidden;color:var(--header-text-color);box-shadow:0 6px 12px #0000003f}
.hero-section.gradient-bg{background:linear-gradient(135deg,var(--hero-gradient1),var(--hero-gradient2))}
.hero-section .container{position:relative;z-index:2}
@media (max-width: 768px) {
.hero-section{padding:60px 0}
}
.navbar .navbar-nav .nav-link{color:var(--nav-link-color,#141414)!important;font-weight:500;padding:0 1rem;transition:color .3s ease,transform .2s ease}
.navbar .navbar-nav .nav-link:hover{color:var(--link-color)!important;transform:translateY(-1px)}
.navbar .navbar-nav .nav-link.active{color:var(--link-color)!important;font-weight:600;border-bottom:2px solid var(--link-color)}
@media (max-width: 1199.98px) {
.navbar-collapse{position:fixed;top:61px;left:15px;right:15px;background-color:color-mix(in srgb,var(--header-bg-color) 65%,transparent);backdrop-filter:blur(12px);border-radius:12px;box-shadow:0 15px 40px #00000026;z-index:9999;padding:15px;margin:0}
.navbar-nav{width:100%}
.navbar-nav .nav-item{margin:7px 0}
.navbar-nav .nav-item:hover{transform:translateY(-1px)}
.navbar .navbar-nav .nav-link{font-size:1.2rem;font-weight:500;text-decoration:none;display:block;padding:0}
.navbar-toggler{z-index:10000;position:relative;border:var(--bs-border-width) solid var(--nav-link-color,#141414)!important}
}
.custom-dropdown{border:0;box-shadow:0 10px 40px #00000026;border-radius:12px;padding:.5rem 0;margin-top:.5rem;min-width:220px;background:color-mix(in srgb,var(--header-bg-color) 65%,transparent)!important;backdrop-filter:blur(12px)}
.custom-dropdown .dropdown-item{padding:.75rem 1.5rem;transition:all .3s ease;color:var(--nav-link-color,#141414)!important;font-weight:500;border-radius:0;text-wrap:wrap}
.dropdown-menu{display:none}
.custom-dropdown .dropdown-item:hover{color:#fff;background:color-mix(in srgb,var(--header-bg-color) 95%,transparent)!important}
.nav-item.dropdown > .nav-link{display:flex;align-items:center}
.nav-item.dropdown > .nav-link .arrow{position:relative;margin-left:auto;border:solid var(--nav-link-color,#141414);border-width:0 2px 2px 0;padding:3px;transform:rotate(45deg);transition:transform .25s}
.dropdown.open .dropdown-menu{display:block}
@media (min-width: 1200px) {
.nav-item.dropdown{position:relative}
.nav-item.dropdown > .nav-link .arrow{margin-left:7px}
.custom-dropdown.dropdown-menu{position:absolute;top:100%;left:0;margin-top:0;z-index:1000}
.nav-item.dropdown:hover > .nav-link .arrow{transform:rotate(-135deg)}
.nav-item.dropdown:hover > .dropdown-menu{display:block!important}
}
@media (max-width: 1199px) {
.nav-item.dropdown > .nav-link .arrow{padding:4px}
}
.box{background:#fff;border-radius:14px;padding:11px;box-shadow:0 6px 20px #00000014;transition:transform .25s ease,box-shadow .25s ease;overflow:hidden;height:100%}
.box:hover{transform:translateY(-4px);box-shadow:0 10px 28px #0000001f}
.box h3{margin:0 0 14px;font-size:1.4rem;font-weight:700}
.box h3 a{color:#222;text-decoration:none}
.box h3 a:hover{color:#0d6efd}
.box:hover img{transform:scale(1.02)}
.camp-page{max-width:1100px;margin:0 auto;color:#222;line-height:1.7}
.camp-page section{margin-bottom:32px;padding:28px;background:#fff;border-radius:16px;box-shadow:0 6px 24px #00000012}
.camp-page h1,.camp-page h2,.camp-page h3{line-height:1.3;margin-top:0}
.camp-page h1{font-size:clamp(2rem,4vw,3rem);margin-bottom:16px}
.camp-page h2{font-size:1.8rem;margin-bottom:20px}
.camp-page h3{font-size:1.3rem;margin-top:28px;margin-bottom:10px}
.camp-intro{text-align:center;padding:21px!important}
.camp-intro p{font-size:1.1rem;margin:6px 0}
.camp-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 28px;padding:0;list-style:none;counter-reset:benefit}
.camp-benefits li{counter-increment:benefit;position:relative;padding:18px 18px 18px 58px;background:#f6f8fa;border-radius:12px}
.camp-benefits li::before{content:counter(benefit);position:absolute;left:18px;top:16px;width:28px;height:28px;border-radius:50%;background:#176b87;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.camp-highlight{margin-top:24px;padding:18px 20px;background:#eef7fa;border-left:4px solid #176b87;border-radius:8px}
.camp-schedule{width:100%;border-collapse:collapse;margin-top:16px}
.camp-schedule td{padding:12px 14px;border-bottom:1px solid #e5e7eb;vertical-align:top}
.camp-schedule td:first-child{width:150px;font-weight:700;white-space:nowrap}
.camp-phone{display:inline-block;margin-top:10px;padding:10px 18px;border-radius:8px;background:#176b87;color:#fff;font-weight:700;text-decoration:none}
.camp-phone:hover{opacity:.9;color:#fff}
@media (max-width: 700px) {
.camp-page section{padding:22px}
.camp-benefits{grid-template-columns:1fr}
.camp-schedule td{display:block;width:100%!important;padding:8px 0;border:0}
.camp-schedule tr{display:block;padding:12px 0;border-bottom:1px solid #e5e7eb}
}
.contact-page{max-width:1100px;margin:0 auto;color:#222;line-height:1.7}
.contact-page section{margin-bottom:28px;padding:28px;background:#fff;border-radius:16px;box-shadow:0 6px 24px #00000012}
.contact-page h1,.contact-page h2,.contact-page h3{line-height:1.3;margin-top:0}
.contact-page h1{margin-bottom:10px;font-size:clamp(2rem,4vw,3rem)}
.contact-page h2{margin-bottom:18px;font-size:1.6rem}
.contact-intro{text-align:center}
.contact-intro p{margin:5px 0}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.contact-card{padding:24px;background:#f6f8fa;border-radius:14px}
.contact-card h3{margin-bottom:14px}
.contact-list{margin:0;padding:0;list-style:none}
.contact-list li{margin-bottom:10px}
.contact-list a{color:#176b87;font-weight:600;text-decoration:none}
.contact-list a:hover{text-decoration:underline}
.company-data{display:grid;grid-template-columns:180px 1fr;gap:8px 18px}
.company-data strong{color:#333}
.contact-form{display:grid;gap:16px}
.contact-form label{display:block;margin-bottom:6px;font-weight:600}
.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border:1px solid #d5d9dd;border-radius:8px;font:inherit;background:#fff;box-sizing:border-box}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:#176b87;box-shadow:0 0 0 3px #176b871f}
.contact-form textarea{min-height:150px;resize:vertical}
.contact-submit{display:inline-block;width:fit-content;padding:12px 22px;border:0;border-radius:8px;background:#176b87;color:#fff;font-weight:700;cursor:pointer}
.contact-submit:hover{opacity:.9}
.contact-note{margin-top:10px;font-size:.9rem;color:#666}
@media (max-width: 768px) {
.contact-grid{grid-template-columns:1fr}
.company-data{grid-template-columns:1fr;gap:4px}
.contact-page section{padding:22px}
}