:root{--ink:#172033;--muted:#657084;--primary:#155eef;--secondary:#7c3aed;--surface:#fff;--soft:#f4f7fb;--line:#e6eaf0;--shadow:0 18px 50px rgba(25,38,65,.10);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}
.topline{background:#101828;color:#d0d5dd;font-size:13px}.top-inner{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.top-inner a{color:#fff}
.nav-wrap{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(15px);border-bottom:1px solid rgba(230,234,240,.9)}.nav-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-weight:900;font-size:21px;box-shadow:0 9px 24px rgba(21,94,239,.25)}.brand b{display:block;font-size:19px;line-height:1.05}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.04em;font-weight:700}
.main-nav ul{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}.main-nav li{position:relative}.menu-link{border:0;background:transparent;padding:11px 14px;font:inherit;font-weight:700;color:#344054;border-radius:12px;cursor:pointer;display:flex;gap:7px;align-items:center;transition:.25s}.menu-link:hover,.menu-link.active{background:#eef4ff;color:var(--primary);transform:translateY(-2px)}.has-dropdown:hover>.dropdown{opacity:1;visibility:visible;transform:translateY(0)}.dropdown{position:absolute;top:48px;left:0;min-width:220px;padding:8px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}.dropdown li{width:100%}.dropdown .menu-link{width:100%;justify-content:space-between}.menu-toggle{display:none;border:0;background:#eef4ff;border-radius:12px;width:44px;height:44px;padding:10px}.menu-toggle i{display:block;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
.hero{min-height:620px;position:relative;overflow:hidden;display:grid;place-items:center;color:#fff}.hero-slides,.hero-slide,.hero-overlay{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center;opacity:0;transform:scale(1.06);transition:opacity 1.2s ease,transform 6s ease}.hero-slide.show{opacity:1;transform:scale(1)}.hero-overlay{background:linear-gradient(90deg,rgba(7,17,34,.83),rgba(7,17,34,.35),rgba(7,17,34,.6))}.hero-content{position:relative;z-index:2}.eyebrow,.section-kicker{font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#9dbdff}.hero h1{font-size:clamp(42px,7vw,78px);line-height:1.02;max-width:800px;margin:12px 0}.hero p{font-size:20px;color:#e6edf7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:12px;font-weight:800;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 25px rgba(21,94,239,.22)}.btn-light{background:#fff;color:var(--ink)}.hero-dots{position:absolute;z-index:3;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.hero-dots button{width:28px;height:5px;border:0;border-radius:99px;background:rgba(255,255,255,.45);cursor:pointer}.hero-dots button.active{background:#fff;width:44px}
.section{padding:78px 0}.soft{background:var(--soft)}.two-column{display:grid;grid-template-columns:1.1fr .9fr;gap:30px}.intro-card,.content-card,.notice-board{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.intro-card{padding:40px}.intro-card h2,.section-heading h2{font-size:clamp(30px,4vw,45px);line-height:1.15;margin:10px 0 15px}.intro-card p{color:var(--muted);font-size:17px}.text-link{color:var(--primary);font-weight:800}.notice-board{overflow:hidden}.board-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-weight:900}.board-head a{color:var(--primary);font-size:13px}.notice-scroll{height:290px;overflow:hidden}.notice-scroll a{display:block;padding:20px 22px;border-bottom:1px solid var(--line)}.notice-scroll a:hover{background:#f7faff}.notice-scroll strong,.notice-scroll small{display:block}.notice-scroll small{color:var(--muted);margin-top:5px}
.section-heading{text-align:center;margin-bottom:34px}.section-heading .section-kicker{color:var(--primary)}.feature-grid{display:grid;gap:16px}.feature-grid.six{grid-template-columns:repeat(3,1fr)}.feature-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:18px;transition:.25s}.feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#c9d8ff}.feature-card span{color:var(--primary);font-weight:900}.feature-card h3{margin:9px 0 4px}.feature-card p{margin:0;color:var(--muted)}
.page-banner{padding:38px 0;background:rgb(68,168,50);color:#fff}.page-banner h1{font-size:clamp(38px,6vw,62px);margin:8px 0}.page-banner p{margin:0;color:#d7e2ff}.content-card{padding:32px}.content-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:25px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 15px;text-align:left;border-bottom:1px solid var(--line)}th{background:#f7f9fc;font-size:13px;text-transform:uppercase;letter-spacing:.05em}.staff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.person{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}.person img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#eef2f7}.person h3,.person p{margin:10px 14px}.person p{color:var(--muted);font-size:14px}.subhead{margin-top:45px}.clean-list{padding-left:20px}.doc-link{display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);font-weight:800}.doc-link span{color:var(--primary)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery-grid figure{margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid figcaption{padding:11px 13px;color:var(--muted);font-size:13px}.document-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.document-preview-grid img{width:100%;height:300px;object-fit:contain;background:#f5f7fa;border-radius:12px;margin-bottom:18px}.notice-list a{display:block;padding:20px;border-bottom:1px solid var(--line)}.notice-list b,.notice-list span{display:block}.notice-list span{color:var(--muted);margin-top:5px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px}.form-card label{display:block;font-weight:800;margin-bottom:15px}.form-card input,.form-card select,.form-card textarea{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #d7dde8;border-radius:11px;font:inherit;outline:none;background:#fff}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(21,94,239,.09)}.form-status{color:var(--muted)}.contact-note{padding:15px;background:#f5f8ff;border-radius:12px;color:#475467}.gallery-strip{padding:35px 0;background:#0b1324;color:#fff}.strip-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-weight:900}.strip-head a{color:#b9ccff}.picture-scroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.picture-scroll a{flex:0 0 190px;scroll-snap-align:start}.picture-scroll img{width:190px;height:125px;object-fit:cover;border-radius:13px;border:1px solid rgba(255,255,255,.15)}footer{background:#101828;color:#c7cedb;padding-top:45px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px;padding-bottom:35px}.footer-brand{color:#fff}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.footer-links a:hover,footer a:hover{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.1);padding:17px 0;font-size:13px}
code{background:#f1f3f6;padding:2px 6px;border-radius:5px}
@media(max-width:900px){.top-inner{display:none}.menu-toggle{display:block}.main-nav{position:absolute;left:4%;right:4%;top:84px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:8px;display:none;max-height:75vh;overflow:auto}.main-nav.open{display:block}.main-nav ul{display:block}.menu-link{width:100%;justify-content:space-between}.dropdown{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 0 12px}.has-dropdown.open>.dropdown{display:block}.two-column,.content-grid,.contact-grid{grid-template-columns:1fr}.feature-grid.six{grid-template-columns:1fr 1fr}.staff-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.document-preview-grid,.footer-grid{grid-template-columns:1fr}}
@media(max-width:560px){.hero{min-height:560px}.hero h1{font-size:42px}.section{padding:55px 0}.intro-card,.content-card{padding:23px}.feature-grid.six{grid-template-columns:1fr}.staff-grid,.gallery-grid{grid-template-columns:1fr 1fr}.picture-scroll a,.picture-scroll img{width:160px;flex-basis:160px}.picture-scroll img{height:110px}.footer-links{grid-template-columns:1fr}}
.picture-scroll{overflow:hidden;position:relative;scroll-snap-type:none}.picture-scroll-track{display:flex;gap:12px;width:max-content;animation:galleryMove 34s linear infinite}.picture-scroll:hover .picture-scroll-track{animation-play-state:paused}@keyframes galleryMove{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 6px))}}@media(prefers-reduced-motion:reduce){.picture-scroll-track{animation:none}}.contact-map{min-height:100%;background:#f7f9fc;border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:#98a2b3;text-align:center;padding:30px}
/* V3 fixes */
.picture-scroll{display:block;overflow:hidden;position:relative;width:100%;padding:0 0 8px;scroll-snap-type:none}
.picture-scroll-track{display:flex;gap:12px;width:max-content;animation:galleryMove 42s linear infinite;will-change:transform}
.picture-scroll-track a{display:block;flex:0 0 190px;width:190px}
.picture-scroll-track img{display:block;width:190px;height:125px;object-fit:cover;border-radius:13px;border:1px solid rgba(255,255,255,.15)}
.picture-scroll:hover .picture-scroll-track{animation-play-state:paused}
@keyframes galleryMove{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - 6px),0,0)}}
.contact-left{display:flex;flex-direction:column;gap:20px}.contact-info-card{padding:24px}.info-table th{width:30%;vertical-align:top;background:#f7f9fc}.info-table td{vertical-align:top}.map-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.map-title{padding:16px 20px;display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid var(--line)}.map-title a{color:var(--primary);font-weight:800;font-size:13px}.google-map{display:block;width:100%;height:340px;border:0}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.google-map{height:300px}.info-table th{width:38%}}
@media(max-width:560px){.picture-scroll-track a,.picture-scroll-track img{width:160px;flex-basis:160px}.picture-scroll-track img{height:110px}.google-map{height:280px}.info-table th,.info-table td{display:block;width:100%}.info-table th{border-bottom:0;padding-bottom:4px}.info-table td{padding-top:4px}}
@media(prefers-reduced-motion:reduce){.picture-scroll-track{animation:none}}
