:root{
--primary:#2a6fdb;
--primary-600:#1f5bbd;
--primary-50:#eef4ff;
--primary-100:#d9e7ff;
--green:#1fa971;
--green-50:#e7f7ef;
--yellow:#f2b01e;
--yellow-50:#fff6dc;
--red:#e5484d;
--red-50:#fdecec;
--purple:#7a5cf0;
--purple-50:#f1edff;
--teal:#12a4b4;
--teal-50:#e3f6f8;
--text:#1b2b3c;
--text-2:#46586c;
--muted:#7b8a9b;
--line:#e3eaf3;
--bg:#f6f9fd;
--surface:#ffffff;
--radius:20px;
--radius-sm:12px;
--shadow-sm:0 2px 10px rgba(30,60,100,.06);
--shadow:0 12px 30px rgba(30,60,100,.09);
--shadow-lg:0 24px 60px rgba(30,60,100,.14);
--font:"PingFang SC","Microsoft YaHei","Noto Sans SC","Hiragino Sans GB","Helvetica Neue",Arial,sans-serif;
--kai:"KaiTi","楷体","STKaiti","BiauKai",serif;
--brand-bar:linear-gradient(90deg,#2a6fdb 0 25%,#e5484d 25% 50%,#f2b01e 50% 75%,#1fa971 75% 100%);
}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;vertical-align:middle;border:0}
a{color:var(--primary);text-decoration:none;transition:color .2s,background-color .2s,border-color .2s,box-shadow .2s,transform .2s}
a:hover{color:var(--primary-600)}
h1,h2,h3,h4,h5{line-height:1.35;color:var(--text);margin:0 0 .6em}
p{margin:0 0 1em}
button,input,select,textarea{font-family:inherit;font-size:inherit}
mark{background:#fff0b3;color:inherit;padding:0 2px;border-radius:4px}
::selection{background:var(--primary-100)}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--primary);color:#fff;padding:8px 14px;z-index:3000;border-radius:0 0 10px 0}
.skip-link:focus{left:0;color:#fff}
.container{width:100%;max-width:1240px;margin:0 auto;padding:0 20px}
.container-narrow{max-width:960px}
.container-wide{max-width:1800px;padding-left:clamp(20px,3.2vw,64px);padding-right:clamp(20px,3.2vw,64px)}
.kai{font-family:var(--kai)}
.muted{color:var(--muted)}
.text-center{text-align:center}
.nowrap{white-space:nowrap}
.mt-0{margin-top:0}
.mt-1{margin-top:8px}
.mt-2{margin-top:16px}
.mt-3{margin-top:24px}
.mt-4{margin-top:36px}
.mb-0{margin-bottom:0}
.mb-1{margin-bottom:8px}
.mb-2{margin-bottom:16px}
.mb-3{margin-bottom:24px}
.mb-4{margin-bottom:36px}
.topbar{background:linear-gradient(90deg,#e9f2ff,#ecf8f2);color:var(--text-2);font-size:13px}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px}
.topbar a{color:var(--text-2)}
.topbar a:hover{color:var(--primary)}
.topbar .fa{color:var(--primary);margin-right:5px}
.topbar-left,.topbar-right{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px}
.topbar-right .tb-fb{width:26px;height:26px;border-radius:50%;background:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.topbar-right .tb-fb .fa{margin:0}
.site-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:box-shadow .25s,border-color .25s}
.site-header.is-scrolled{box-shadow:0 8px 24px rgba(30,60,100,.08);border-bottom-color:var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:78px}
.brand{display:flex;align-items:center;flex:none}
.brand img{height:54px;width:auto;display:block}
.main-nav{flex:1;display:flex;justify-content:center}
.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.nav-item{position:relative}
.nav-link{display:flex;align-items:center;gap:5px;padding:9px 13px;border-radius:999px;color:#21344a;font-weight:600;font-size:15px;white-space:nowrap;background:transparent;border:0;cursor:pointer;line-height:1.4}
.nav-link .fa-angle-down{font-size:13px;opacity:.6;transition:transform .2s}
.nav-item:hover>.nav-link,.nav-item:focus-within>.nav-link{background:var(--primary-50);color:var(--primary)}
.nav-item:hover>.nav-link .fa-angle-down{transform:rotate(180deg)}
.nav-item.active>.nav-link{color:var(--primary);background:var(--primary-50)}
.nav-drop{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,8px);min-width:210px;background:#fff;border-radius:18px;box-shadow:var(--shadow-lg);border:1px solid var(--line);padding:8px;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;z-index:950}
.nav-drop:before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.nav-drop.cols-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:430px;gap:2px}
.nav-item:hover>.nav-drop,.nav-item:focus-within>.nav-drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav-item.drop-right .nav-drop{left:auto;right:0;transform:translate(0,8px)}
.nav-item.drop-right:hover>.nav-drop,.nav-item.drop-right:focus-within>.nav-drop{transform:translate(0,0)}
.nav-drop a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:12px;color:var(--text);font-size:14.5px;line-height:1.45}
.nav-drop a:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary-100);flex:none;transition:background .2s}
.nav-drop a:hover,.nav-drop a.active{background:var(--primary-50);color:var(--primary)}
.nav-drop a:hover:before,.nav-drop a.active:before{background:var(--primary)}
.header-actions{display:flex;align-items:center;gap:8px;flex:none}
.icon-btn{width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--primary-50);color:var(--primary);border:0;cursor:pointer;font-size:17px}
.icon-btn:hover{background:var(--primary);color:#fff}
.nav-toggle{display:none}
.drawer-backdrop{position:fixed;inset:0;background:rgba(15,30,50,.38);opacity:0;visibility:hidden;transition:.25s;z-index:1400}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(88vw,360px);background:#fff;z-index:1500;transform:translateX(105%);transition:transform .3s ease;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.drawer-open .drawer{transform:translateX(0)}
.drawer-open .drawer-backdrop{opacity:1;visibility:visible}
.drawer-open{overflow:hidden}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}
.drawer-head img{height:40px;width:auto}
.drawer-body{flex:1;overflow-y:auto;padding:10px 12px 30px}
.drawer-search{display:flex;gap:6px;margin:6px 4px 12px}
.drawer-search input{flex:1;min-width:0;border:1px solid var(--line);border-radius:999px;padding:9px 14px;outline:0}
.drawer-search button{border:0;border-radius:999px;background:var(--primary);color:#fff;padding:0 16px}
.drawer a.d-link,.drawer summary{display:flex;align-items:center;justify-content:space-between;padding:12px 12px;border-radius:12px;color:var(--text);font-weight:600;cursor:pointer;list-style:none}
.drawer summary::-webkit-details-marker{display:none}
.drawer summary:after{content:"\f107";font-family:FontAwesome;color:var(--muted);transition:transform .2s}
.drawer details[open] summary:after{transform:rotate(180deg)}
.drawer details[open] summary{color:var(--primary);background:var(--primary-50)}
.drawer a.d-link:hover{background:var(--primary-50)}
.drawer .d-sub{padding:4px 0 8px 14px;border-left:2px solid var(--primary-50);margin:4px 0 6px 16px}
.drawer .d-sub a{display:block;padding:8px 10px;border-radius:10px;color:var(--text-2);font-size:15px}
.drawer .d-sub a.active,.drawer .d-sub a:hover{color:var(--primary);background:var(--primary-50)}
.search-overlay{position:fixed;inset:0;z-index:1600;background:rgba(15,30,50,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 16px;opacity:0;visibility:hidden;transition:.2s}
.search-open .search-overlay{opacity:1;visibility:visible}
.search-box{width:100%;max-width:680px;background:#fff;border-radius:24px;box-shadow:var(--shadow-lg);padding:22px}
.search-box-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:800;font-size:18px}
.search-hot{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.searchbar{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px;box-shadow:var(--shadow-sm);transition:border-color .2s,box-shadow .2s}
.searchbar:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-50)}
.searchbar .fa-search{color:var(--muted);margin-left:14px}
.searchbar input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:10px 12px;font-size:16px;color:var(--text)}
.searchbar button{border:0;border-radius:999px;background:var(--primary);color:#fff;font-weight:700;padding:10px 24px;cursor:pointer}
.searchbar button:hover{background:var(--primary-600)}
.page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 8% 18%,#dfeeff 0,rgba(223,238,255,0) 42%),radial-gradient(circle at 92% 8%,#e2f6ea 0,rgba(226,246,234,0) 40%),radial-gradient(circle at 70% 100%,#fff3d1 0,rgba(255,243,209,0) 35%),var(--bg);padding:42px 0 46px}
.page-hero-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:center}
.page-hero-inner.no-media{grid-template-columns:minmax(0,1fr)}
.page-hero.compact{padding:26px 0 30px}
.page-hero.compact h1{font-size:clamp(24px,3.4vw,34px)}
.m-date{display:none}
.page-hero h1{font-size:clamp(28px,4.2vw,44px);font-weight:800;letter-spacing:.02em;margin:14px 0 6px;color:#12263c}
.page-hero h1:after{content:"";display:block;width:92px;height:5px;border-radius:5px;margin-top:16px;background:var(--brand-bar)}
.page-hero-sub{color:var(--text-2);font-size:16px;letter-spacing:.06em;margin:14px 0 0}
.page-hero-media{position:relative}
.page-hero-media:before{content:"";position:absolute;width:62%;height:78%;right:-18px;top:-18px;border-radius:28px;background:linear-gradient(135deg,var(--yellow-50),var(--green-50));z-index:0}
.page-hero-media img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:24px;box-shadow:var(--shadow-lg);background:#e8eef6}
.crumbs{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px 10px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:999px;padding:6px 16px;font-size:13.5px;color:var(--muted)}
.crumbs a{color:var(--text-2)}
.crumbs a:hover{color:var(--primary)}
.crumbs .fa-angle-right{color:#b7c3d1;font-size:12px}
.crumbs span{color:var(--primary);font-weight:600}
.section{padding:52px 0}
.section-sm{padding:30px 0}
.section-white{background:#fff}
.section-tint{background:linear-gradient(180deg,#f0f6ff,#f6fbf8)}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.sec-title{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:800;margin:0;color:#14283e}
.sec-title .fa{width:40px;height:40px;border-radius:13px;background:var(--primary-50);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-size:18px;flex:none}
.sec-sub{margin:6px 0 0;color:var(--muted)}
.sec-more{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14.5px;color:var(--primary);padding:8px 16px;border-radius:999px;background:var(--primary-50)}
.sec-more:hover{background:var(--primary);color:#fff}
.block{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px 32px;box-shadow:var(--shadow-sm);margin-bottom:24px}
.block:last-child{margin-bottom:0}
.block-title{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;margin:0 0 18px;color:#14283e}
.block-title .fa{width:36px;height:36px;border-radius:12px;background:var(--primary-50);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-size:16px;flex:none}
.block-title.t-green .fa{background:var(--green-50);color:var(--green)}
.block-title.t-yellow .fa{background:var(--yellow-50);color:#c98a00}
.block-title.t-red .fa{background:var(--red-50);color:var(--red)}
.block-title.t-purple .fa{background:var(--purple-50);color:var(--purple)}
.block-title.t-teal .fa{background:var(--teal-50);color:var(--teal)}
.block-sub{font-size:17px;font-weight:800;color:#1c3654;margin:22px 0 10px;display:flex;align-items:center;gap:8px}
.block-sub:before{content:"";width:5px;height:18px;border-radius:4px;background:var(--primary)}
.block-sub.first{margin-top:0}
.lead{font-size:17.5px;color:var(--text-2);line-height:1.9}
.prose{color:#27394d;line-height:1.95}
.prose p{margin:0 0 1em}
.prose ol,.prose ul{margin:0 0 1em;padding-left:1.5em}
.prose li{margin:.35em 0}
.prose li::marker{color:var(--primary);font-weight:700}
.prose a{text-decoration:underline;text-underline-offset:3px;word-break:break-all}
.prose strong,.prose b{color:#15283d}
.list-cjk{list-style-type:cjk-ideographic}
.list-decimal{list-style-type:decimal}
.list-circle{list-style-type:circle}
.list-disc{list-style-type:disc}
.list-square{list-style-type:square}
.list-alpha{list-style-type:upper-alpha}
.list-roman{list-style-type:lower-roman}
.list-uroman{list-style-type:upper-roman}
.list-dash{list-style-type:"-  "}
.list-check{list-style:none;padding-left:0!important}
.list-check li{position:relative;padding-left:32px;margin:.55em 0}
.list-check li:before{content:"\f00c";font-family:FontAwesome;position:absolute;left:0;top:.2em;width:22px;height:22px;border-radius:7px;background:var(--green-50);color:var(--green);font-size:12px;display:flex;align-items:center;justify-content:center}
.grid{display:grid;gap:22px}
.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-auto{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.g-auto-sm{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.layout-side{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}
.layout-main-side{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}
.side-sticky{position:sticky;top:100px}
.side-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:var(--shadow-sm)}
.side-title{font-weight:800;font-size:15px;padding:8px 10px 12px;color:#14283e;display:flex;align-items:center;gap:8px}
.side-title .fa{color:var(--primary)}
.side-nav{display:flex;flex-direction:column;gap:3px}
.side-nav a,.side-nav button{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:13px;color:var(--text);font-weight:600;font-size:15px;background:transparent;border:0;cursor:pointer;text-align:left;width:100%;line-height:1.45}
.side-nav a .fa,.side-nav button .fa{width:28px;height:28px;border-radius:9px;background:var(--primary-50);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-size:13px;flex:none;transition:.2s}
.side-nav a:hover,.side-nav button:hover{background:var(--primary-50);color:var(--primary)}
.side-nav a.active,.side-nav button.active{background:var(--primary);color:#fff}
.side-nav a.active .fa,.side-nav button.active .fa{background:rgba(255,255,255,.2);color:#fff}
.side-foot{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;padding:10px;border-radius:13px;background:var(--green-50);color:var(--green);font-weight:700;font-size:14px}
.side-foot:hover{background:var(--green);color:#fff}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}
.card-pad{padding:22px 24px}
.card-hover{transition:transform .25s,box-shadow .25s,border-color .25s}
.card-hover:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--primary-100)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:999px;font-weight:700;font-size:15px;line-height:1.4;border:1px solid transparent;cursor:pointer;background:var(--primary-50);color:var(--primary);white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-600);color:#fff}
.btn-soft{background:var(--primary-50);color:var(--primary)}
.btn-soft:hover{background:var(--primary-100);color:var(--primary-600)}
.btn-outline{background:#fff;border-color:var(--line);color:var(--text)}
.btn-outline:hover{border-color:var(--primary);color:var(--primary)}
.btn-green{background:var(--green);color:#fff}
.btn-green:hover{background:#178c5d;color:#fff}
.btn-yellow{background:var(--yellow);color:#3d2c00}
.btn-yellow:hover{background:#e0a010;color:#3d2c00}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{background:#cf3a3f;color:#fff}
.btn-white{background:#fff;color:var(--primary);box-shadow:var(--shadow-sm)}
.btn-sm{padding:7px 14px;font-size:13.5px}
.btn-lg{padding:14px 28px;font-size:16.5px}
.btn-block{display:flex;width:100%}
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:999px;font-size:12.5px;font-weight:700;background:var(--primary-50);color:var(--primary);line-height:1.6;white-space:nowrap}
.chip-green{background:var(--green-50);color:var(--green)}
.chip-yellow{background:var(--yellow-50);color:#a87100}
.chip-red{background:var(--red-50);color:var(--red)}
.chip-purple{background:var(--purple-50);color:var(--purple)}
.chip-teal{background:var(--teal-50);color:var(--teal)}
.chip-gray{background:#eef1f5;color:var(--text-2)}
.filter-bar{display:flex;flex-wrap:wrap;gap:8px}
.filter-bar a,.filter-bar button{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--text-2);font-weight:600;font-size:14px;cursor:pointer}
.filter-bar a:hover,.filter-bar button:hover{border-color:var(--primary);color:var(--primary)}
.filter-bar a.active,.filter-bar button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.filter-bar .count{font-size:12px;opacity:.7}
.toolbar{display:flex;flex-direction:column;gap:14px;margin-bottom:26px}
.result-info{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:14.5px;margin-bottom:16px}
.result-info strong{color:var(--primary)}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.post-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm);color:var(--text);transition:transform .25s,box-shadow .25s,border-color .25s}
.post-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--primary-100);color:var(--text)}
.post-thumb{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,#e6f0ff,#eaf8f1);overflow:hidden}
.post-thumb img{width:100%;height:100%;object-fit:cover;object-position:50% 0;transition:transform .5s}
.post-card:hover .post-thumb img{transform:scale(1.05)}
.post-thumb.no-img{display:flex;align-items:center;justify-content:center}
.post-thumb.no-img .fa{font-size:44px;color:#a9c4ea}
.post-thumb .date-flag{position:absolute;left:14px;top:14px;background:#fff;border-radius:14px;padding:6px 10px;text-align:center;line-height:1.1;box-shadow:var(--shadow-sm)}
.date-flag b{display:block;font-size:20px;color:var(--primary)}
.date-flag small{font-size:11.5px;color:var(--muted)}
.post-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.post-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.post-title{font-size:17px;font-weight:800;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-excerpt{font-size:14.5px;color:var(--text-2);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-more{margin-top:auto;font-size:14px;font-weight:700;color:var(--primary);display:inline-flex;align-items:center;gap:6px}
.post-list{display:flex;flex-direction:column;gap:12px}
.post-item{display:flex;gap:14px;align-items:flex-start;padding:14px;border-radius:18px;background:#fff;border:1px solid var(--line);color:var(--text);transition:.2s}
.post-item:hover{border-color:var(--primary-100);box-shadow:var(--shadow);transform:translateX(3px);color:var(--text)}
.date-badge{flex:none;width:62px;border-radius:15px;background:linear-gradient(160deg,var(--primary),#4b8ff0);color:#fff;text-align:center;padding:7px 4px;line-height:1.15;box-shadow:0 8px 16px rgba(42,111,219,.22)}
.date-badge b{display:block;font-size:22px}
.date-badge small{display:block;font-size:11.5px;opacity:.9}
.date-badge.green{background:linear-gradient(160deg,var(--green),#39c28a);box-shadow:0 8px 16px rgba(31,169,113,.22)}
.date-badge.red{background:linear-gradient(160deg,var(--red),#f07074);box-shadow:0 8px 16px rgba(229,72,77,.2)}
.post-item-body{min-width:0;flex:1}
.post-item-title{font-weight:700;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:2px 0 6px}
.post-item-meta{font-size:13px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.article{background:#fff;border:1px solid var(--line);border-radius:26px;padding:36px 42px;box-shadow:var(--shadow-sm)}
.article-type{margin-bottom:10px}
.article-title{font-size:clamp(22px,3vw,31px);font-weight:800;line-height:1.45;margin:0 0 14px;color:#12263c}
.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;color:var(--muted);font-size:14.5px;padding-bottom:18px;margin-bottom:24px;border-bottom:1px dashed var(--line)}
.article-meta .fa{color:var(--primary);margin-right:5px}
.article-body{font-size:17px;line-height:2;color:#23364b;word-break:break-word;overflow-wrap:anywhere}
.article-body a{text-decoration:underline;text-underline-offset:3px}
.article-body img{max-width:100%;height:auto;border-radius:12px}
.article-body table{border-collapse:collapse;margin:0;font-size:15px;line-height:1.6}
.article-body td,.article-body th{border:1px solid #d7e0ea;padding:6px 10px}
.article-body p{margin:0 0 .6em}
.table-scroll{overflow-x:auto;margin:12px 0;-webkit-overflow-scrolling:touch}
.embed{position:relative;width:100%;max-width:820px;aspect-ratio:16/9;margin:16px 0;border-radius:16px;overflow:hidden;background:#0d1b2a}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.article-gallery{display:flex;flex-direction:column;gap:22px;margin-top:26px}
.article-inline-gallery{display:grid;gap:14px;margin:16px 0 18px;line-height:1.6}
.article-inline-gallery.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.article-inline-gallery.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.article-inline-gallery figure{margin:0;min-width:0}
.article-inline-gallery img{display:block;width:100%;height:auto;border-radius:16px;cursor:zoom-in;background:#eef3f9}
.article-inline-gallery.cols-1 figure{text-align:center}
.article-inline-gallery.cols-1 img{display:inline-block;width:auto;max-width:100%}
.article-inline-gallery figcaption{font-size:14.5px;color:var(--text-2);margin-top:8px;padding:2px 0 2px 12px;border-left:3px solid var(--primary-100);line-height:1.7;text-align:left}
.article-gallery figure{margin:0}
.article-gallery img{width:100%;border-radius:16px;cursor:zoom-in;display:block;background:#eef3f9}
.article-gallery figcaption{font-size:14.5px;color:var(--text-2);margin-top:10px;padding:2px 0 2px 12px;border-left:3px solid var(--primary-100);line-height:1.7}
.article-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:30px;padding-top:20px;border-top:1px dashed var(--line)}
.share-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.share-bar span{font-size:14px;color:var(--muted);margin-right:4px}
.share-btn{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer;font-size:16px;background:var(--primary-50);color:var(--primary)}
.share-btn:hover{transform:translateY(-2px)}
.share-btn.fb{background:#e7effd;color:#1877f2}
.share-btn.wa{background:#e5f8ed;color:#1faa53}
.share-btn.cp{background:var(--yellow-50);color:#a87100}
.share-btn.pr{background:#eef1f5;color:var(--text-2)}
.post-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
.post-nav a,.post-nav span{display:block;padding:16px 18px;border-radius:18px;background:#fff;border:1px solid var(--line);color:var(--text);min-height:82px}
.post-nav a:hover{border-color:var(--primary);box-shadow:var(--shadow)}
.post-nav small{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;margin-bottom:4px}
.post-nav b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.5}
.post-nav .next{text-align:right}
.post-nav .next small{justify-content:flex-end}
.post-nav span{color:var(--muted);background:#f9fbfd}
.side-list-title{font-weight:800;font-size:16px;margin:0 0 12px;display:flex;align-items:center;justify-content:space-between}
.side-list-title a{font-size:13px;font-weight:600}
.mini-post{display:flex;gap:12px;padding:10px;border-radius:14px;color:var(--text)}
.mini-post:hover{background:var(--primary-50);color:var(--text)}
.mini-thumb{width:84px;height:64px;border-radius:12px;overflow:hidden;flex:none;background:linear-gradient(135deg,#e6f0ff,#eaf8f1);display:flex;align-items:center;justify-content:center}
.mini-thumb img{width:100%;height:100%;object-fit:cover;object-position:50% 0}
.mini-thumb .fa{color:#a9c4ea;font-size:22px}
.mini-title{font-size:14.5px;font-weight:700;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mini-meta{font-size:12.5px;color:var(--muted);margin-top:3px}
.preview-bar{background:var(--yellow-50);border:1px solid #f3dc9a;color:#7a5600;border-radius:16px;padding:12px 16px;margin-bottom:18px;display:flex;gap:10px;align-items:center;font-weight:600}
.notice{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;border-radius:16px;background:var(--primary-50);color:#1e4b8f;border:1px solid var(--primary-100)}
.notice .fa{margin-top:4px}
.notice-yellow{background:var(--yellow-50);color:#7a5600;border-color:#f3dc9a}
.notice-green{background:var(--green-50);color:#146c49;border-color:#bfe8d4}
.empty{text-align:center;padding:56px 20px;color:var(--muted);background:#fff;border:1px dashed #cfdbea;border-radius:22px}
.empty .fa{display:block;font-size:44px;color:#bcd0ec;margin-bottom:12px}
.pager{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:34px}
.pager-num,.pager-btn{min-width:42px;height:42px;padding:0 14px;border-radius:13px;background:#fff;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:700;color:var(--text-2);font-size:14.5px}
.pager a:hover{border-color:var(--primary);color:var(--primary)}
.pager .active{background:var(--primary);border-color:var(--primary);color:#fff}
.pager .disabled{opacity:.45}
.pager-gap{color:var(--muted);padding:0 4px}
.people-row{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;margin-bottom:26px}
.people-row:last-child{margin-bottom:0}
.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:20px}
.people-sm{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.person{width:190px;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm);text-align:center;transition:transform .25s,box-shadow .25s}
.people-grid .person{width:auto}
.person:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.person-lg{width:230px}
.person-photo{aspect-ratio:5/6;background:#eef4ff;overflow:hidden}
.person-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;pointer-events:none;-webkit-user-select:none;user-select:none;display:block}
.person-info{padding:12px 10px 15px}
.person-name{font-weight:800;font-size:16.5px;line-height:1.4;color:#14283e}
.person-lg .person-name{font-size:18px}
.person-title{display:inline-block;margin-top:6px;font-size:12.5px;color:var(--primary);background:var(--primary-50);padding:2px 10px;border-radius:999px;line-height:1.6}
.people-sm .person-name{font-size:15px}
.rank-group{margin-bottom:26px}
.rank-group:last-child{margin-bottom:0}
.rank-label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:var(--muted);margin:0 0 14px}
.rank-label:after{content:"";flex:1;height:1px;background:var(--line)}
.group-title{display:flex;align-items:center;justify-content:center;gap:12px;font-size:22px;font-weight:800;margin:0 0 24px;color:#14283e;text-align:center}
.group-title:before,.group-title:after{content:"";height:2px;width:60px;border-radius:2px;background:linear-gradient(90deg,rgba(42,111,219,0),var(--primary-100))}
.group-title:after{background:linear-gradient(90deg,var(--primary-100),rgba(42,111,219,0))}
.tab-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}
.tab-panel{display:none}
.tab-panel.active{display:block;animation:fykFadeUp .35s ease}
@keyframes fykFadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.panel-title{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:800;margin:0;color:#14283e}
.panel-title .fa{width:42px;height:42px;border-radius:14px;background:var(--primary-50);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;font-size:18px}
.timeline{position:relative;padding-left:36px}
.timeline:before{content:"";position:absolute;left:12px;top:8px;bottom:8px;width:3px;border-radius:3px;background:linear-gradient(180deg,var(--primary-100),var(--green-50))}
.tl-item{position:relative;margin-bottom:22px}
.tl-item:last-child{margin-bottom:0}
.tl-dot{position:absolute;left:-32px;top:8px;width:19px;height:19px;border-radius:50%;background:#fff;border:4px solid var(--primary);box-shadow:0 0 0 4px var(--primary-50)}
.tl-item:nth-child(4n+2) .tl-dot{border-color:var(--red);box-shadow:0 0 0 4px var(--red-50)}
.tl-item:nth-child(4n+3) .tl-dot{border-color:var(--yellow);box-shadow:0 0 0 4px var(--yellow-50)}
.tl-item:nth-child(4n+4) .tl-dot{border-color:var(--green);box-shadow:0 0 0 4px var(--green-50)}
.tl-year{display:inline-block;font-weight:800;font-size:17px;color:var(--primary);background:var(--primary-50);padding:2px 14px;border-radius:999px;margin-bottom:8px}
.tl-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 20px;box-shadow:var(--shadow-sm)}
.tl-card ul{margin:0;padding-left:1.2em}
.tl-card li{margin:.3em 0;line-height:1.85}
.tl-card li::marker{color:var(--primary)}
.steps{display:flex;flex-direction:column;gap:12px;counter-reset:fykstep}
.step{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.step:before{counter-increment:fykstep;content:counter(fykstep);flex:none;width:42px;height:42px;border-radius:14px;background:linear-gradient(160deg,var(--primary),#4b8ff0);color:#fff;font-weight:800;font-size:18px;display:flex;align-items:center;justify-content:center}
.step strong{display:block;font-size:16.5px;margin-bottom:4px;color:#14283e}
.flow{display:flex;flex-direction:column;gap:0}
.flow-item{display:flex;gap:16px}
.flow-mark{display:flex;flex-direction:column;align-items:center;flex:none}
.flow-num{width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 5px var(--primary-50)}
.flow-line{flex:1;width:3px;background:var(--primary-100);margin:6px 0}
.flow-body{padding:6px 0 22px}
.flow-body b{display:block;font-size:16.5px;color:#14283e}
.flow-body p{margin:2px 0 0;color:var(--text-2)}
.feature{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.feature h4{margin:0 0 4px;font-size:17px}
.feature p{margin:0;color:var(--text-2)}
.f-icon{width:50px;height:50px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:21px;flex:none;background:var(--primary-50);color:var(--primary)}
.ic-green{background:var(--green-50);color:var(--green)}
.ic-yellow{background:var(--yellow-50);color:#c98a00}
.ic-red{background:var(--red-50);color:var(--red)}
.ic-purple{background:var(--purple-50);color:var(--purple)}
.ic-teal{background:var(--teal-50);color:var(--teal)}
.stat{text-align:center;padding:26px 18px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.stat .f-icon{margin:0 auto 12px}
.stat-num{font-size:40px;font-weight:800;color:var(--primary);line-height:1.2;font-variant-numeric:tabular-nums}
.stat-label{color:var(--text-2);font-weight:600;margin-top:4px}
.tbl-wrap{overflow-x:auto;border-radius:18px;border:1px solid var(--line);background:#fff;-webkit-overflow-scrolling:touch}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th{background:#f2f7fe;text-align:left;padding:13px 16px;font-weight:800;color:#1c3654;white-space:nowrap;vertical-align:top}
.tbl td{padding:13px 16px;border-top:1px solid var(--line);vertical-align:top;color:#27394d;line-height:1.8}
.tbl tr:hover td{background:#fbfdff}
.tbl-kv th{width:150px;border-top:1px solid var(--line)}
.tbl-kv tr:first-child th{border-top:0}
.acc{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:12px;overflow:hidden}
.acc summary{padding:16px 20px;font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.acc summary::-webkit-details-marker{display:none}
.acc summary:after{content:"\f107";font-family:FontAwesome;color:var(--primary);transition:transform .2s}
.acc[open] summary:after{transform:rotate(180deg)}
.acc[open] summary{border-bottom:1px solid var(--line);background:#fbfdff}
.acc-body{padding:16px 20px 18px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.split-media img{width:100%;border-radius:24px;box-shadow:var(--shadow);display:block}
.img-frame{background:#fff;padding:10px;border-radius:22px;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.img-frame img{display:block;width:100%;border-radius:14px}
.img-stack{display:flex;flex-direction:column;gap:18px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.gallery-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.gallery-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery figure{margin:0;background:#fff;border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.gallery .g-img{display:block;overflow:hidden;background:#eef3f9}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;cursor:zoom-in;transition:transform .45s}
.gallery figure:hover img{transform:scale(1.05)}
.gallery figcaption{padding:11px 14px;font-size:14px;color:var(--text-2);text-align:center;line-height:1.6}
.gallery.natural img{aspect-ratio:auto}
.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px}
.book{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;padding:12px;box-shadow:var(--shadow-sm);color:var(--text);text-align:center;transition:transform .25s,box-shadow .25s}
.book:hover{transform:translateY(-5px);box-shadow:var(--shadow);color:var(--primary)}
.book-cover{border-radius:12px;overflow:hidden;background:#eef3f9}
.book-cover img{width:100%;display:block}
.book-title{margin-top:10px;font-weight:700;font-size:14.5px;line-height:1.5}
.book-title .fa{color:var(--primary);margin-right:4px}
.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.video-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm)}
.video-card .embed{margin:0;border-radius:0;max-width:none}
.video-poster{cursor:pointer;background:linear-gradient(135deg,#1f3b63,#2a6fdb)}
.video-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity .3s,transform .5s}
.video-poster:hover img{opacity:1;transform:scale(1.03)}
.video-poster .play{position:absolute;left:50%;top:50%;width:70px;height:70px;margin:-35px 0 0 -35px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .2s;padding-left:5px}
.video-poster:hover .play{transform:scale(1.08)}
.video-title{padding:14px 18px;font-weight:800;display:flex;gap:10px;align-items:center}
.video-title .fa{color:var(--red)}
.cal-wrap{position:relative;border-radius:18px;overflow:hidden;background:#fff}
.cal-wrap iframe{display:block;width:100%;border:0;min-height:420px}
.cal-wrap:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72px;background:#fff;pointer-events:none}
.map-embed{border-radius:22px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#e8eef6}
.map-embed iframe{display:block;width:100%;height:460px;border:0}
.contact-list{list-style:none;margin:0;padding:0}
.contact-list li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line)}
.contact-list li:last-child{border-bottom:0}
.contact-list .ci{width:36px;height:36px;border-radius:12px;background:var(--primary-50);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex:none}
.contact-list .cl{color:var(--muted);font-size:14px;min-width:84px}
.contact-list .cv{font-weight:700;color:var(--text)}
.anchor-nav{position:sticky;top:78px;z-index:50;background:rgba(246,249,253,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);margin-bottom:10px}
.anchor-nav .filter-bar{flex-wrap:nowrap;overflow-x:auto;padding:12px 0;scrollbar-width:none}
.anchor-nav .filter-bar::-webkit-scrollbar{display:none}
.anchor-nav a{white-space:nowrap}
.anchor-target{scroll-margin-top:150px}
.clamp-box{position:relative}
.clamp-box.is-clamped .clamp-content{max-height:160px;overflow:hidden;position:relative}
.clamp-box.is-clamped .clamp-content:after{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(rgba(255,255,255,0),#fff)}
.clamp-toggle{display:none;margin-top:8px;border:0;background:var(--primary-50);color:var(--primary);font-weight:700;font-size:13.5px;padding:6px 14px;border-radius:999px;cursor:pointer}
.clamp-box.has-more .clamp-toggle{display:inline-flex;align-items:center;gap:6px}
.pre-line{white-space:pre-line}
.lb{position:fixed;inset:0;z-index:2000;background:rgba(8,18,32,.92);display:none;flex-direction:column;align-items:center;justify-content:center;padding:20px}
.lb.open{display:flex}
.lb-img{max-width:94vw;max-height:80vh;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.4);background:#fff}
.lb-cap{color:#e9eef5;text-align:center;margin-top:14px;font-size:14.5px;max-width:860px;line-height:1.7}
.lb-count{color:#9fb0c4;font-size:13px;margin-top:4px}
.lb-btn{position:absolute;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.lb-btn:hover{background:rgba(255,255,255,.28)}
.lb-close{top:18px;right:18px}
.lb-prev{left:18px;top:50%;margin-top:-24px}
.lb-next{right:18px;top:50%;margin-top:-24px}
.lb-open{overflow:hidden}
.zoomable{cursor:zoom-in}
.back-top{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 10px 24px rgba(42,111,219,.35);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s;z-index:800}
.back-top.show{opacity:1;visibility:visible;transform:none}
.back-top:hover{color:#fff;background:var(--primary-600)}
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.is-in{opacity:1;transform:none}
.site-footer{position:relative;margin-top:70px;background:linear-gradient(180deg,#eaf3ff 0,#e9f7f0 100%);color:#23364b;padding-top:58px}
.site-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--brand-bar)}
.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1.15fr .75fr;gap:38px}
.footer-logo{height:52px;width:auto;margin-bottom:14px;mix-blend-mode:multiply}
.site-footer h4{font-size:16.5px;font-weight:800;margin:0 0 16px;color:#14283e;display:flex;align-items:center;gap:8px}
.site-footer h4:before{content:"";width:5px;height:17px;border-radius:4px;background:var(--primary)}
.footer-links{list-style:none;margin:0;padding:0}
.footer-links li{margin:0 0 9px}
.footer-links a{color:#34485e;font-size:14.5px;display:inline-flex;align-items:center;gap:8px}
.footer-links a:before{content:"\f105";font-family:FontAwesome;color:var(--primary);font-size:13px}
.footer-links a:hover{color:var(--primary)}
.footer-contact{list-style:none;margin:0;padding:0;font-size:14.5px}
.footer-contact li{display:flex;gap:10px;margin-bottom:9px;line-height:1.6}
.footer-contact .fa{color:var(--primary);width:16px;margin-top:4px;text-align:center}
.footer-contact a{color:#23364b}
.footer-btns{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}
.footer-btns .btn{justify-content:flex-start}
.social{display:flex;gap:10px;flex-wrap:wrap}
.social a{width:44px;height:44px;border-radius:14px;background:#fff;color:#1877f2;display:inline-flex;align-items:center;justify-content:center;font-size:19px;box-shadow:var(--shadow-sm)}
.social a:hover{background:#1877f2;color:#fff;transform:translateY(-2px)}
.social-label{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.7}
.footer-bottom{margin-top:44px;border-top:1px solid rgba(30,60,100,.1);padding:18px 0 22px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:13.5px;color:var(--muted)}
.home-hero{padding:24px 0 10px}
.slider{position:relative;border-radius:30px;overflow:hidden;box-shadow:var(--shadow-lg);background:#dfe8f3;aspect-ratio:21/8;width:100%}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.slide.active{opacity:1;visibility:visible}
.slide img{width:100%;height:100%;object-fit:cover;display:block}
.slide.pos-bottom img{object-position:50% 100%}
.slide-caption{position:absolute;left:34px;bottom:34px;max-width:560px;background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:24px;padding:22px 28px;box-shadow:var(--shadow)}
.slide-caption h2{font-family:var(--kai);font-size:clamp(24px,3.4vw,40px);margin:0;color:#12263c;letter-spacing:.06em}
.slide-caption p{margin:6px 0 0;font-weight:700;color:var(--primary);font-size:clamp(14px,1.6vw,18px)}
.slide-caption p.kai{font-family:var(--kai);color:var(--text-2);font-weight:600}
.slider-dots{position:absolute;right:26px;bottom:22px;display:flex;gap:8px;z-index:5}
.slider-dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(255,255,255,.7);cursor:pointer;padding:0;transition:width .3s,background .3s}
.slider-dots button.active{width:30px;background:#fff}
.slider-arrow{position:absolute;top:50%;margin-top:-24px;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.82);color:var(--primary);font-size:22px;cursor:pointer;z-index:5;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}
.slider-arrow:hover{background:#fff}
.slider-prev{left:18px}
.slider-next{right:18px}
.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.quick{display:flex;align-items:center;gap:14px;padding:18px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--text)}
.quick:hover{transform:translateY(-4px);box-shadow:var(--shadow);color:var(--text);border-color:var(--primary-100)}
.quick b{display:block;font-size:16px;line-height:1.4}
.quick small{display:block;color:var(--muted);font-size:12.5px;line-height:1.5}
.home-news{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:start}
.news-feature{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.news-lead .post-thumb{aspect-ratio:16/8}
.news-lead .post-title{font-size:20px}
.news-small{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.news-small .post-title{font-size:15.5px}
.news-small .post-body{padding:12px 14px 14px}
.panel{background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:var(--shadow-sm)}
.panel-mini-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.panel-mini-title h3{margin:0;font-size:19px;font-weight:800;display:flex;align-items:center;gap:10px}
.panel-mini-title h3 .fa{width:34px;height:34px;border-radius:11px;background:var(--red-50);color:var(--red);display:inline-flex;align-items:center;justify-content:center;font-size:15px}
.promo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.promo{display:block;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm);background:#fff;border:1px solid var(--line)}
.promo img{display:block;width:100%;height:auto;transition:transform .5s}
.promo:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.promo:hover img{transform:scale(1.03)}
.home-info{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start}
.motto-band{position:relative;border-radius:30px;overflow:hidden;min-height:280px;display:flex;align-items:center;background:#dfe8f3 center/cover no-repeat}
.motto-band:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.94) 0,rgba(255,255,255,.75) 45%,rgba(255,255,255,.1) 100%)}
.motto-inner{position:relative;padding:40px 46px;max-width:620px}
.motto-inner h2{font-family:var(--kai);font-size:clamp(30px,4.4vw,52px);letter-spacing:.3em;margin:0 0 8px;color:#12263c}
.motto-inner p{font-family:var(--kai);font-size:clamp(17px,2vw,22px);color:var(--text-2);margin:0}
.about-quote{position:relative;padding:8px 0 0 0}
.about-quote .fa-quote-left{font-size:34px;color:var(--primary-100)}
.about-quote p{font-size:17px;line-height:2;color:#27394d;margin:10px 0 0}
.comp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.comp-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s}
.comp-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.comp-cover{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#e7f0ff,#fff4dd);overflow:hidden;display:flex;align-items:center;justify-content:center}
.comp-cover .blur{position:absolute;inset:-20px;width:calc(100% + 40px);height:calc(100% + 40px);object-fit:cover;filter:blur(18px) saturate(1.1);opacity:.55}
.comp-cover .main{position:relative;max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in}
.comp-cover .cover-title{position:relative;padding:24px;font-size:22px;font-weight:800;color:#14283e;text-align:center;line-height:1.5}
.comp-badges{position:absolute;left:14px;top:14px;display:flex;gap:6px;flex-wrap:wrap;z-index:2}
.comp-badges .chip{box-shadow:var(--shadow-sm);background:#fff}
.comp-body{padding:20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.comp-title{font-size:19px;font-weight:800;line-height:1.5;margin:0;color:#14283e}
.comp-text{font-size:15px;color:#2f4257;white-space:pre-line;line-height:1.85;word-break:break-word}
.comp-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 22px 18px;border-top:1px dashed var(--line)}
.deadline{display:flex;flex-direction:column;line-height:1.4}
.deadline small{color:var(--muted);font-size:12.5px}
.deadline b{font-size:16px;color:#14283e}
.countdown{font-size:12.5px;font-weight:700;color:var(--red)}
.countdown.ok{color:var(--green)}
.sale-list{display:flex;flex-direction:column;gap:22px}
.sale-card{display:grid;grid-template-columns:320px minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:var(--shadow-sm)}
.sale-cover{position:relative;background:linear-gradient(135deg,#fff4dd,#e7f0ff);overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:320px}
.sale-cover .blur{position:absolute;inset:-20px;width:calc(100% + 40px);height:calc(100% + 40px);object-fit:cover;filter:blur(18px);opacity:.5}
.sale-cover .main{position:relative;max-width:100%;max-height:440px;object-fit:contain;cursor:zoom-in;padding:14px}
.sale-cover .no-poster{position:relative;color:var(--muted);font-weight:700}
.sale-info{padding:24px 28px;display:flex;flex-direction:column;gap:12px}
.sale-top{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sale-title{font-size:21px;font-weight:800;margin:0;color:#14283e;line-height:1.5}
.sale-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:14px;border-top:1px dashed var(--line)}
.thanks{display:flex;gap:16px;align-items:center;padding:20px 24px;border-radius:22px;background:linear-gradient(135deg,var(--yellow-50),var(--green-50));border:1px solid #f1e3b4;margin-bottom:26px}
.thanks .fa{font-size:30px;color:var(--red)}
.thanks p{margin:0;font-weight:700;font-size:16.5px;color:#3a4a5c;line-height:1.8}
.co-cat{margin-bottom:26px}
.co-cat-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.co-letter{width:46px;height:46px;border-radius:15px;background:var(--primary);color:#fff;font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center;flex:none}
.co-cat:nth-child(5n+2) .co-letter{background:var(--green)}
.co-cat:nth-child(5n+3) .co-letter{background:var(--yellow)}
.co-cat:nth-child(5n+4) .co-letter{background:var(--red)}
.co-cat:nth-child(5n+5) .co-letter{background:var(--purple)}
.co-cat-head h3{margin:0;font-size:20px}
.co-cat-head small{color:var(--muted);font-weight:600}
.co-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.co-tile{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 12px 14px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--text);text-align:center;font-weight:700;font-size:15px}
.co-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--primary-100);color:var(--primary)}
.co-logo{height:86px;width:100%;display:flex;align-items:center;justify-content:center}
.co-logo img{max-height:86px;max-width:110px;object-fit:contain}
.co-hero{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;align-items:center}
.co-hero-logo{background:#fff;border-radius:26px;border:1px solid var(--line);box-shadow:var(--shadow-sm);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:22px}
.co-hero-logo img{max-height:100%;max-width:100%;object-fit:contain}
.co-hero h2{font-size:clamp(24px,3vw,32px);margin:8px 0 4px}
.co-en{color:var(--text-2);font-weight:600;letter-spacing:.03em}
.quote-box{position:relative;background:linear-gradient(135deg,#f3f8ff,#f3fbf7);border-radius:20px;padding:22px 26px 22px 60px;color:#27394d;line-height:2}
.quote-box:before{content:"\f10d";font-family:FontAwesome;position:absolute;left:22px;top:18px;font-size:24px;color:var(--primary-100)}
.emblem-text strong{color:#c0392b}
.org-card{display:grid;grid-template-columns:260px minmax(0,1fr);gap:26px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:var(--shadow-sm)}
.org-logo{background:#f6f9fd;border-radius:18px;height:180px;display:flex;align-items:center;justify-content:center;padding:14px;overflow:hidden}
.org-logo img{max-height:100%;max-width:100%;object-fit:contain}
.org-card h3{font-size:21px;margin:0 0 12px}
.org-contact{list-style:none;margin:0;padding:0}
.org-contact li{display:flex;gap:12px;align-items:flex-start;padding:6px 0;word-break:break-word}
.org-contact .fa{width:32px;height:32px;border-radius:10px;background:var(--primary-50);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:14px}
.org-contact .fa-facebook-square{color:#1877f2}
.org-contact .fa-weixin{background:var(--green-50);color:var(--green)}
.org-contact .fa-map-marker{background:var(--red-50);color:var(--red)}
.partner-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow-sm);color:var(--text)}
.partner-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);color:var(--text)}
.partner-media{aspect-ratio:16/10;background:linear-gradient(135deg,#e7f0ff,#eaf8f1);display:flex;align-items:center;justify-content:center;overflow:hidden}
.partner-media img{width:100%;height:100%;object-fit:cover}
.partner-media .fb{padding:20px;font-weight:800;font-size:19px;text-align:center;color:#2b4c7e}
.partner-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.partner-body h3{font-size:18px;margin:0}
.partner-body .en{color:var(--muted);font-size:13.5px}
.partner-body p{margin:0;color:var(--text-2);font-size:15px}
.partner-body .more{margin-top:auto;font-weight:700;color:var(--primary)}
.intro-hero{position:relative;border-radius:28px;overflow:hidden;min-height:380px;display:flex;align-items:flex-end;background:#dfe8f3 center/cover no-repeat;box-shadow:var(--shadow)}
.intro-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 20%,rgba(255,255,255,.96) 78%)}
.intro-hero-body{position:relative;padding:34px 38px;max-width:900px}
.intro-hero-body h2{font-size:clamp(22px,3vw,32px);margin:0 0 4px}
.intro-hero-body .en{color:var(--primary);font-weight:700;margin-bottom:12px}
.intro-hero-body p{margin:0;color:#27394d;line-height:1.95}
.story{background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px 40px;box-shadow:var(--shadow-sm)}
.story p{font-family:var(--kai);font-size:19px;line-height:2.05;color:#23364b}
.story-float{float:right;width:44%;min-width:260px;margin:6px 0 16px 26px;border-radius:18px;box-shadow:var(--shadow)}
.sign-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sign-card .col{background:#f7faff;border-radius:18px;padding:16px 18px;line-height:1.9}
.sign-card b{color:#1c3654}
.card-title-bar{font-weight:800;color:var(--red);margin:0 0 10px;font-size:17px}
.building{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:0;background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:26px}
.building:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
.building:nth-child(even) .building-media{order:2}
.building-media{background:#dfe8f3 center/cover no-repeat;min-height:320px}
.building-body{padding:32px 36px}
.building-body h3{font-size:23px;margin:0 0 6px;display:flex;align-items:center;gap:10px}
.building-body h3 .num{width:36px;height:36px;border-radius:12px;background:var(--primary-50);color:var(--primary);font-size:15px;display:inline-flex;align-items:center;justify-content:center}
.building-body p{color:#2f4257;line-height:1.95;margin:10px 0 0}
.room{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:26px;padding:18px;box-shadow:var(--shadow-sm)}
.room-media img{width:100%;border-radius:18px;display:block;cursor:zoom-in}
.room-body{padding:6px 12px}
.room-body h3{font-size:22px;margin:0 0 10px}
.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.room-grid figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm)}
.room-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;cursor:zoom-in}
.room-grid figcaption{padding:12px 16px;font-weight:800;display:flex;align-items:center;gap:8px}
.room-grid figcaption .fa{color:var(--primary)}
.view-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.view-card{position:relative;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-sm);background:#dfe8f3}
.view-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;cursor:zoom-in;transition:transform .5s}
.view-card:hover img{transform:scale(1.05)}
.view-card span{position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.9);padding:6px 14px;border-radius:999px;font-weight:800;font-size:14.5px;box-shadow:var(--shadow-sm)}
.sport-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.sport{background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow-sm);text-align:center}
.sport img{height:72px;width:auto;margin-bottom:8px}
.sport h4{margin:0 0 10px;font-size:17px}
.sport dl{margin:0;font-size:14px;text-align:left;background:#f7faff;border-radius:14px;padding:10px 12px}
.sport dt{color:var(--muted);font-size:12.5px}
.sport dd{margin:0 0 6px;font-weight:700;color:#1c3654}
.sport dd:last-child{margin-bottom:0}
.col-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.col-list .item{background:#f8fbff;border:1px solid var(--line);border-radius:18px;padding:16px 18px}
.col-list .item b{display:block;color:#1c3654;margin-bottom:6px;font-size:16px}
.col-list ol{margin:0;padding-left:1.3em;font-size:14.5px;line-height:1.85;color:#2f4257}
.col-list ol ol{margin:4px 0;font-size:13.5px;list-style-type:square}
.two-col-list{columns:2;column-gap:40px}
.two-col-list li{break-inside:avoid}
.subject-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.subject{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.subject h4{margin:0;padding:12px 16px;background:linear-gradient(135deg,var(--primary),#4b8ff0);color:#fff;font-size:17px;text-align:center}
.subject ul{list-style:none;margin:0;padding:10px 16px 14px}
.subject li{font-family:var(--kai);font-size:19px;padding:6px 0;border-bottom:1px dashed var(--line);text-align:center}
.subject li:last-child{border-bottom:0}
.subject.plain h4{background:linear-gradient(135deg,var(--green),#39c28a)}
.emblem{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:center}
.emblem img{width:100%;max-width:260px;margin:0 auto;display:block}
.dl-list{display:grid;gap:12px}
.dl-list div{background:#f8fbff;border-radius:16px;padding:12px 16px;border:1px solid var(--line)}
.dl-list b{display:block;color:#c0392b;font-size:17px}
.motto-lines{font-family:var(--kai);font-size:clamp(22px,2.6vw,30px);line-height:1.9;font-weight:700;color:#14283e}
.olcards{list-style:none;margin:0;padding:0;counter-reset:olc;display:grid;gap:12px}
.olcards li{counter-increment:olc;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 18px;box-shadow:var(--shadow-sm);font-weight:700}
.olcards li:before{content:counter(olc);width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff;background:var(--primary);font-weight:800}
.olcards li:nth-child(4n+2):before{background:var(--red)}
.olcards li:nth-child(4n+3):before{background:var(--yellow)}
.olcards li:nth-child(4n+4):before{background:var(--green)}
.chart-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px 22px;box-shadow:var(--shadow-sm)}
.chart-card h4{margin:0 0 12px;font-size:16px}
.chart-svg{width:100%;height:auto;display:block;overflow:visible}
.chart-svg .grid-line{stroke:#e7edf5;stroke-width:1}
.chart-svg .axis-text{fill:#7b8a9b;font-size:12px}
.chart-svg .area{fill:url(#fykArea)}
.chart-svg .line{fill:none;stroke:var(--primary);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.chart-svg .pt{fill:#fff;stroke:var(--primary);stroke-width:2.5}
.chart-svg .pt-hit{fill:transparent;cursor:pointer}
.chart-svg .pt-hit:hover+.pt,.chart-svg g.pt-g:hover .pt{fill:var(--primary)}
.chart-svg .val{fill:#1c3654;font-size:11px;font-weight:700;opacity:0;transition:opacity .2s}
.chart-svg g.pt-g:hover .val{opacity:1}
.chart-svg .last-val{opacity:1}
.toc a{display:flex;flex-direction:column;padding:9px 12px;border-radius:12px;color:var(--text);font-weight:700;font-size:14.5px}
.toc a small{color:var(--muted);font-weight:500;font-size:12.5px}
.toc a:hover{background:var(--primary-50);color:var(--primary)}
.callout{background:linear-gradient(145deg,#2a6fdb,#1fa971);color:#fff;border-radius:24px;padding:22px;box-shadow:var(--shadow)}
.callout h4{color:#fff;margin:0 0 8px;font-size:18px}
.callout p{color:rgba(255,255,255,.9);margin:0 0 14px;font-size:14.5px}
.callout .mail{display:block;background:rgba(255,255,255,.16);border-radius:14px;padding:10px 14px;font-weight:800;word-break:break-all;margin-bottom:12px}
.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.course{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:8px}
.course h4{margin:0;font-size:17px;line-height:1.5}
.course ul{list-style:none;margin:0;padding:0;font-size:14px;color:var(--text-2)}
.course li{display:flex;gap:8px;padding:3px 0}
.course li .fa{color:var(--primary);width:16px;margin-top:5px}
.filter-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:16px}
.filter-form label{display:block;font-size:13px;font-weight:700;color:var(--text-2);margin-bottom:6px}
.filter-form select{min-width:220px;padding:10px 14px;border-radius:14px;border:1px solid var(--line);background:#fff;outline:0}
.filter-form select:focus{border-color:var(--primary)}
.meta-pills{display:flex;flex-wrap:wrap;gap:10px}
.meta-pills span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14.5px;color:var(--text-2)}
.meta-pills .fa{color:var(--primary);margin-right:6px}
.hero-card{background:linear-gradient(135deg,#f0f6ff,#f0faf5);border:1px solid var(--line);border-radius:26px;padding:30px 34px}
.hero-card h2{font-size:clamp(21px,2.6vw,28px);margin:10px 0 10px}
.search-page-bar{max-width:760px;margin:0 auto 24px}
.search-group{margin-bottom:30px}
.search-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.search-group-head h3{margin:0;font-size:19px;display:flex;align-items:center;gap:10px}
.search-hit{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;margin-bottom:10px;color:var(--text)}
.search-hit:hover{border-color:var(--primary-100);box-shadow:var(--shadow);color:var(--text)}
.search-hit-title{font-weight:800;font-size:16.5px;line-height:1.5}
.search-hit-meta{font-size:13px;color:var(--muted);margin:4px 0 6px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.search-hit-text{font-size:14.5px;color:var(--text-2);margin:0}
.error-page{text-align:center;padding:40px 20px}
.error-code{font-size:clamp(80px,14vw,150px);font-weight:800;line-height:1;background:var(--brand-bar);-webkit-background-clip:text;background-clip:text;color:transparent}
.home-hero.hero-full{padding:0}
.slider.slider-full{border-radius:0;box-shadow:none;aspect-ratio:auto;height:clamp(340px,min(40vw,74vh),800px)}
.slider-full:after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(180deg,rgba(18,38,60,0) 0,rgba(18,38,60,.28) 100%);pointer-events:none;z-index:1}
.slider-full .slide-cap-wrap{position:absolute;left:0;right:0;bottom:clamp(84px,7vw,128px);z-index:2}
.slider-full .slide-caption{position:relative;left:auto;bottom:auto;display:inline-block;max-width:620px}
.slider-full .slider-arrow{z-index:5}
.slider-full .slider-prev{left:clamp(12px,1.6vw,32px)}
.slider-full .slider-next{right:clamp(12px,1.6vw,32px)}
.slider-full .slider-dots{right:clamp(20px,3.2vw,64px);bottom:clamp(84px,7vw,128px)}
.home-quick{position:relative;z-index:6;margin-top:-58px;padding-top:0}
.home-quick .quick{box-shadow:0 14px 34px rgba(30,60,100,.12)}
.motto-band.motto-full{border-radius:0;min-height:360px}
.motto-full .motto-inner{padding:56px 0;max-width:680px}
.page-home .split-media img{max-height:560px;object-fit:cover}
.home-promos{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:22px}
.home-promos .promo{border-radius:16px}
@media (min-width:1400px){
.home-quick .quick-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:18px}
.home-quick .quick{flex-direction:column;align-items:center;text-align:center;gap:12px;padding:24px 14px 22px}
.home-quick .quick .f-icon{width:56px;height:56px;font-size:24px}
.home-quick .quick b{font-size:16.5px}
}
@media (min-width:1025px) and (max-width:1199px){
.page-home .news-small .post-card:nth-child(n+5){display:none}
}
@media (min-width:1200px){
.page-home .home-news{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:34px}
.page-home .news-lead{flex-direction:row}
.page-home .news-lead .post-thumb{flex:0 0 54%;aspect-ratio:16/10}
.page-home .news-lead .post-body{justify-content:center;padding:26px 30px}
.page-home .news-lead .post-title{font-size:22px}
.page-home .news-small{grid-template-columns:repeat(3,minmax(0,1fr))}
.page-home .home-info{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:34px}
.page-home .split{gap:64px}
}
@media (max-width:1180px){
.main-nav{display:none}
.nav-toggle{display:inline-flex}
.header-inner{min-height:68px}
.brand img{height:46px}
.anchor-nav{top:68px}
.side-sticky{top:90px}
}
@media (max-width:1024px){
.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-news,.home-info{grid-template-columns:minmax(0,1fr)}
.layout-main-side{grid-template-columns:minmax(0,1fr)}
.g-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.room-grid,.view-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
.page-hero{padding:26px 0 30px}
.page-hero-inner{grid-template-columns:minmax(0,1fr);gap:24px}
.page-hero-media:before{display:none}
.layout-side,.tab-layout{grid-template-columns:minmax(0,1fr);gap:18px}
.side-sticky{position:static}
.side-card{padding:8px}
.side-title{display:none}
.side-nav{flex-direction:row;overflow-x:auto;gap:6px;padding:2px;scrollbar-width:none}
.side-nav::-webkit-scrollbar{display:none}
.side-nav a,.side-nav button{width:auto;white-space:nowrap;flex:none;padding:8px 12px}
.side-foot{display:none}
.g-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.comp-grid,.video-grid{grid-template-columns:minmax(0,1fr)}
.sale-card{grid-template-columns:minmax(0,1fr)}
.sale-cover{min-height:260px}
.split,.building,.building:nth-child(even),.room,.co-hero,.org-card,.emblem{grid-template-columns:minmax(0,1fr)}
.building:nth-child(even) .building-media{order:0}
.building-media{min-height:220px}
.co-hero-logo{max-width:220px;margin:0 auto}
.slide-caption{left:16px;right:16px;bottom:16px;padding:14px 18px}
.slider{aspect-ratio:4/3;border-radius:22px}
.slider-arrow{display:none}
.slider-dots{bottom:auto;top:16px;right:16px}
.article{padding:24px 20px;border-radius:22px}
.block{padding:22px 20px;border-radius:22px}
.story{padding:24px 20px}
.story-float{float:none;width:100%;margin:0 0 16px}
.sign-card{grid-template-columns:minmax(0,1fr)}
.two-col-list{columns:1}
.intro-hero-body{padding:24px 22px}
}
@media (max-width:640px){
body{font-size:15.5px}
.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.quick{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}
.quick b{font-size:15px}
.quick small{display:none}
.slide-caption h2{font-size:22px}
.topbar-left .tb-hide{display:none}
.topbar-right .tb-hide{display:none}
.post-grid,.g-2,.g-3,.g-4,.news-small,.gallery-2,.gallery-3,.room-grid,.view-grid{grid-template-columns:minmax(0,1fr)}
.promo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.footer-grid{grid-template-columns:minmax(0,1fr)}
.post-nav{grid-template-columns:minmax(0,1fr)}
.post-nav .next{text-align:left}
.post-nav .next small{justify-content:flex-start}
.sec-title{font-size:21px}
.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.searchbar button{padding:10px 16px}
.section{padding:36px 0}
.map-embed iframe{height:340px}
.filter-form select{min-width:0;width:100%}
.filter-form>div{flex:1 1 100%}
.toolbar .filter-bar{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
.toolbar .filter-bar::-webkit-scrollbar{display:none}
.toolbar .filter-bar a{white-space:nowrap;flex:none}
.page-hero-media img{aspect-ratio:16/7}
.post-grid{gap:12px}
.post-grid .post-card{flex-direction:row;border-radius:18px}
.post-grid .post-thumb{width:112px;aspect-ratio:auto;flex:none;min-height:108px}
.post-grid .post-thumb .date-flag{display:none}
.post-grid .post-thumb.no-img .fa{font-size:28px}
.post-grid .post-body{padding:12px 14px;gap:5px}
.post-grid .post-title{font-size:15.5px}
.post-grid .post-excerpt,.post-grid .post-more{display:none}
.m-date{display:inline}
}
.site-banners{display:flex;flex-direction:column;gap:14px}
.site-banner{position:relative;color:#fff;background:linear-gradient(100deg,#d93a40 0%,#f26b3a 100%);overflow:hidden;border-radius:22px;box-shadow:0 16px 36px rgba(30,60,100,.18)}
.home-banners{position:relative;z-index:7;margin-top:-58px}
.home-banners+.home-quick{margin-top:0;padding-top:20px}
.page-banners{margin-top:26px}
.site-banner:before{content:"";position:absolute;top:0;bottom:0;left:-40%;width:40%;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.18),rgba(255,255,255,0));animation:sb-shine 5s ease-in-out infinite;pointer-events:none}
.site-banner.sb-orange{background:linear-gradient(100deg,#d97706 0%,#f2a91e 100%)}
.site-banner.sb-blue{background:linear-gradient(100deg,#1f5fc9 0%,#3d8bef 100%)}
.site-banner.sb-green{background:linear-gradient(100deg,#12875a 0%,#2bb57c 100%)}
.site-banner.sb-purple{background:linear-gradient(100deg,#5b3cc4 0%,#8a6cf0 100%)}
.sb-inner{position:relative;display:flex;align-items:center;gap:16px;min-height:76px;padding:16px 24px}
.sb-icon{flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;font-size:21px;animation:sb-pulse 2.2s ease-out infinite}
.sb-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.sb-title{color:#fff;font-size:19px;font-weight:800;line-height:1.4;letter-spacing:.02em}
a.sb-title:hover{color:#fff;text-decoration:underline}
.sb-msg{font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.92)}
.sb-preview{align-self:flex-start;font-size:12px;font-weight:700;padding:1px 10px;border-radius:999px;background:rgba(0,0,0,.25);color:#fff;margin-bottom:2px}
.sb-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;background:#fff;color:#c2312f;font-weight:800;font-size:15px;padding:11px 22px;border-radius:999px;white-space:nowrap;box-shadow:0 8px 20px rgba(0,0,0,.15)}
.sb-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.2)}
.sb-orange .sb-btn,.sb-orange .sb-btn:hover{color:#b45f00}
.sb-blue .sb-btn,.sb-blue .sb-btn:hover{color:#1f5fc9}
.sb-green .sb-btn,.sb-green .sb-btn:hover{color:#0f7a51}
.sb-purple .sb-btn,.sb-purple .sb-btn:hover{color:#5b3cc4}
.sb-red .sb-btn:hover{color:#a8201f}
.sb-btn .fa{transition:transform .2s}
.sb-btn:hover .fa{transform:translateX(3px)}
.sb-close{flex:0 0 auto;width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:15px}
.sb-close:hover{background:rgba(255,255,255,.3)}
.site-banner.is-closed{display:none}
@keyframes sb-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.55)}70%{box-shadow:0 0 0 14px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@keyframes sb-shine{0%{left:-40%}60%{left:120%}100%{left:120%}}
@media (prefers-reduced-motion:reduce){.sb-icon,.site-banner:before{animation:none}}
@media (max-width:760px){
.sb-inner{flex-wrap:wrap;gap:10px 12px;padding:14px 16px}
.sb-icon{flex-basis:38px;width:38px;height:38px;font-size:17px}
.sb-text{flex:1 1 0;padding-right:34px}
.sb-title{font-size:16.5px}
.sb-msg{font-size:13.5px}
.sb-btn{flex:1 1 100%;justify-content:center;padding:10px 16px}
.sb-close{position:absolute;top:12px;right:12px;width:30px;height:30px}
.site-banner{border-radius:18px}
}
.share-top{display:flex;flex-wrap:wrap;gap:8px;margin:-6px 0 22px}
.share-pill{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 16px;border-radius:999px;border:0;cursor:pointer;font-size:14px;font-weight:700;line-height:1}
.share-pill .fa{font-size:16px}
.share-pill.fb{background:#1877f2;color:#fff;box-shadow:0 6px 16px rgba(24,119,242,.28)}
.share-pill.fb:hover{background:#0f63d1;color:#fff;transform:translateY(-2px)}
.share-pill.wa{background:#e5f8ed;color:#128c45}
.share-pill.wa:hover{background:#d2f2e0;color:#0d6f37}
.share-pill.cp{background:var(--primary-50);color:var(--primary)}
.share-pill.cp:hover{background:var(--primary-100)}
@media (max-width:1024px){
.home-quick{margin-top:18px}
.home-banners{margin-top:18px}
.page-banners{margin-top:20px}
.slider-full .slide-cap-wrap{bottom:56px}
.slider-full .slider-dots{bottom:24px}
}
@media (max-width:760px){
.slider.slider-full{height:auto;aspect-ratio:4/3}
.slider-full .slide-cap-wrap{bottom:16px}
.slider-full .slide-caption{position:relative;left:auto;right:auto;bottom:auto;display:block;padding:14px 18px}
.slider-full .slider-dots{top:16px;bottom:auto;right:16px}
.motto-band.motto-full{min-height:260px}
.motto-full .motto-inner{padding:36px 0}
.page-home .news-small{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.page-home .news-small .post-body{padding:10px 12px 12px;gap:4px}
.page-home .news-small .post-title{font-size:14px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.page-home .news-small .post-meta{font-size:12px}
}
@media (max-width:640px){
.home-promos{grid-template-columns:minmax(0,1fr);gap:10px}
}
@media (max-width:640px){
.article-inline-gallery.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.article-inline-gallery{gap:10px}
}
@media print{
.site-banners,.share-top,.topbar,.site-header,.site-footer,.back-top,.drawer,.drawer-backdrop,.search-overlay,.share-bar,.post-nav,.layout-main-side>aside,.page-hero-media,.no-print{display:none!important}
body{background:#fff}
.article{border:0;box-shadow:none;padding:0}
.layout-main-side{display:block}
}
