/* TapHoaCode mobile/sidebar wordmark and Home Glass fallback cascade. */
.m-logo .brand-wordmark, .sidebar-logo.brand-wordmark { display:inline-flex; align-items:center; color:#0284c7; font-size:22px; font-weight:800; letter-spacing:-.6px; text-decoration:none; }
.sidebar-logo.brand-wordmark { font-size:20px; }

/* HOME_GLASS palette: keep legacy --primary-red intact globally, remap only inside home. */
body.home-glass { --primary-red:#0ea5e9; --primary-hover:#2563eb; }
/* HOME_GLASS 390px real fix (no page-level overflow mask): neutralize legacy negative
   margins that widen the page; internal scrollers keep their own overflow-x. */
@media (max-width:768px) {
    body.home-glass .quick-access-section { width:100%!important; max-width:100%!important; min-width:0; box-sizing:border-box; margin-left:0!important; margin-right:0!important; padding-left:12px; padding-right:12px; }
    body.home-glass .promo-grid { width:100%!important; max-width:100%!important; min-width:0; box-sizing:border-box; margin:15px 0 0 0!important; padding:0 0 6px 0!important; gap:10px; }
    body.home-glass .promo-group { flex:0 0 100%; min-width:0; max-width:100%; box-sizing:border-box; }
    body.home-glass .promo-card { min-width:0; max-width:100%; box-sizing:border-box; }
    body.home-glass .promo-card .promo-info { min-width:0; }
    body.home-glass .promo-card .promo-info h4, body.home-glass .promo-card .promo-info p { overflow-wrap:anywhere; }
    body.home-glass .announcement-bar { width:100%!important; max-width:100%!important; min-width:0; box-sizing:border-box; margin-left:0!important; margin-right:0!important; }
    body.home-glass .announce-content { min-width:0; max-width:100%; box-sizing:border-box; }
    body.home-glass .product-explorer { width:100%!important; max-width:100%!important; min-width:0; box-sizing:border-box; margin-left:0!important; margin-right:0!important; }
    body.home-glass .theme-grid { width:100%!important; max-width:100%!important; min-width:0; box-sizing:border-box; }
    body.home-glass .explorer-header, body.home-glass .header-left, body.home-glass .header-right-controls { min-width:0; max-width:100%; box-sizing:border-box; }
    body.home-glass .sort-controls { max-width:100%!important; min-width:0; box-sizing:border-box; }
    body.home-glass .theme-card, body.home-glass .theme-body, body.home-glass .theme-card-content, body.home-glass .theme-card-link { min-width:0; max-width:100%; box-sizing:border-box; }
    body.home-glass .theme-card-bottom, body.home-glass .theme-price { min-width:0; max-width:100%; flex-wrap:wrap; box-sizing:border-box; }
}
/* Fixed full-viewport decor must not use 100vw (scrollbar width leaks 390px overflow). */
body.home-glass #fireworks-canvas, body.home-glass #blossom-canvas { width:100%!important; max-width:100%!important; left:0!important; right:0!important; }
/* HOME_GLASS palette inside home scope: wordmark cyan/blue, legacy red stays outside home. */
body.home-glass .m-logo .brand-wordmark, body.home-glass .sidebar-logo.brand-wordmark, body.home-glass .brand-logo.brand-wordmark { color:#0284c7; }
.home-glass { --glass-cyan:#0ea5e9; --glass-blue:#2563eb; --glass-ink:#10233d; --glass-muted:#5e718a; --glass-surface:rgba(255,255,255,.78); background:radial-gradient(circle at 4% 12%,rgba(34,211,238,.14),transparent 27rem),radial-gradient(circle at 96% 24%,rgba(139,92,246,.11),transparent 27rem),#f5fbff; color:var(--glass-ink); }
/* NOTE: do not mask page overflow with overflow:hidden/clip on content-body.
   390px must pass with real width constraints below. */
.home-glass .content-body { overflow:visible; }
.home-glass .main-header { background:transparent; box-shadow:none; padding:12px 0; }
.home-glass .header-desktop,.home-glass .header-mobile,.home-glass .main-header .container { position:relative; z-index:2; }
.home-glass .home-products-state { grid-column:1/-1; padding:42px 16px; text-align:center; color:var(--glass-muted); font-weight:700; }
.home-glass .header-search-bar,.home-glass .category-dropdown-v2,.home-glass .wishlist-dropdown,.home-glass .d-profile-dropdown,.home-glass .m-profile-dropdown { background:rgba(255,255,255,.82); border-color:rgba(14,165,233,.18); box-shadow:0 15px 38px rgba(15,56,91,.12),inset 0 1px 0 rgba(255,255,255,.9); backdrop-filter:blur(16px) saturate(145%); -webkit-backdrop-filter:blur(16px) saturate(145%); }
.home-glass .header-search-bar { border:1px solid rgba(148,163,184,.23); border-radius:16px; }
.home-glass .product-explorer { padding:26px; border:1px solid rgba(148,163,184,.18); border-radius:26px; background:rgba(255,255,255,.47); box-shadow:0 18px 48px rgba(15,56,91,.07); }
.home-glass .theme-grid { gap:18px; margin-bottom:28px; }
.home-glass .theme-card { position:relative; display:flex; flex-direction:column; background:rgba(255,255,255,.94); border:1px solid rgba(148,163,184,.22); border-radius:18px; overflow:visible; }
.home-glass .theme-card-content { display:flex; flex:1; flex-direction:column; }
.home-glass .theme-img-fixed { display:block; height:172px; padding:10px 10px 0; }
.home-glass .theme-card-link { display:flex; flex:1; color:inherit; min-width:0; }
.home-glass .theme-body { width:100%; padding:13px 14px 10px; }
.home-glass .theme-card-bottom { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:0 14px 14px; margin-top:auto; }
.home-glass .theme-price { display:flex; align-items:baseline; gap:5px; min-width:0; }
.home-glass .price-badge,.home-glass .price-free { position:static; border-radius:9px; }
.home-glass .price-old { position:static; color:#94a3b8; font-size:11px; font-weight:700; text-decoration:line-through; }
.home-glass .product-detail-button { flex:none; padding:7px 10px; border:1px solid rgba(14,165,233,.25); border-radius:9px; color:#0284c7; font-size:12px; font-weight:700; text-decoration:none; }
.home-glass .wish-btn { position:absolute; top:12px; right:12px; z-index:8; transform:none; }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { .home-glass .main-header .container,.home-glass .header-search-bar,.home-glass .category-dropdown-v2,.home-glass .wishlist-dropdown,.home-glass .d-profile-dropdown,.home-glass .m-profile-dropdown,.home-glass .promo-card,.home-glass .announcement-bar,.home-glass .sort-controls,.home-glass .mobile-footer-nav,.home-glass .header-mobile { background:rgba(255,255,255,.97); } }
@media (min-width:769px) { .home-glass .main-header .container { padding:11px 18px; border:1px solid rgba(148,163,184,.25); border-radius:22px; background:var(--glass-surface); backdrop-filter:blur(18px) saturate(145%); -webkit-backdrop-filter:blur(18px) saturate(145%); } }
@media (max-width:1024px) {
    /* Override style.css only on Home Glass; the mobile header is displayed at this breakpoint. */
    body.home-glass .header-mobile {
        background:rgba(255,255,255,.72);
        backdrop-filter:blur(16px) saturate(145%);
        -webkit-backdrop-filter:blur(16px) saturate(145%);
    }
    body.home-glass .header-mobile .m-header-top { background:transparent; }
}

@media (max-width:768px) { .home-glass .content-body { padding-bottom:calc(76px + env(safe-area-inset-bottom)); } .home-glass .product-explorer { margin-left:0; margin-right:0; padding:15px; border-radius:20px; box-sizing:border-box; } .home-glass .theme-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; } .home-glass .theme-img-fixed { height:132px; padding:7px 7px 0; } .home-glass .theme-body { padding:10px 10px 8px; min-width:0; } .home-glass .theme-card { min-width:0; } .home-glass .theme-card-bottom { padding:0 10px 10px; flex-wrap:wrap; } .home-glass .theme-price { flex:1 1 auto; flex-wrap:wrap; } .home-glass .product-detail-button { padding:6px 7px; font-size:11px; } .home-glass .price-old { display:none; } }
/* Real 390px constraints: fix vw-based promo width and scroll groups (no overflow:hidden trick). */
@media (max-width:768px) {
    body.home-glass .quick-access-section { padding:16px 12px; box-sizing:border-box; min-width:0; max-width:100%; }
    body.home-glass .promo-grid { width:100%; max-width:100%; min-width:0; box-sizing:border-box; padding-left:0; gap:10px; }
    body.home-glass .promo-group { min-width:min(270px,78vw); max-width:100%; }
    body.home-glass .promo-card { min-width:0; max-width:100%; box-sizing:border-box; }
    body.home-glass .announcement-bar { box-sizing:border-box; min-width:0; max-width:100%; }
    body.home-glass .announce-content { min-width:0; }
    body.home-glass .product-explorer { width:100%; max-width:100%; min-width:0; }
    body.home-glass .theme-grid { width:100%; max-width:100%; min-width:0; }
    body.home-glass .explorer-header { min-width:0; }
    body.home-glass .header-right-controls { min-width:0; max-width:100%; }
    body.home-glass .sort-controls { max-width:100%; box-sizing:border-box; }
}
@media (max-width:340px) { .home-glass .theme-grid { grid-template-columns:1fr; } .home-glass .theme-img-fixed { height:180px; } }
@media (prefers-reduced-motion:reduce) { .home-glass *,.home-glass *::before,.home-glass *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; } }

/* Final fallback cascade: only browsers without backdrop-filter receive an opaque header. */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
    .home-glass .main-header,
    .home-glass .main-header .container,
    .home-glass .header-mobile { background:rgba(255,255,255,.97) !important; }
}

/* Home Glass 2.0 — ice-white / cyan / blue visual system. */
body.home-glass { --glass-ink:#102a43; --glass-muted:#66809a; --glass-cyan:#06b6d4; --glass-blue:#2563eb; --glass-line:rgba(148,163,184,.22); min-height:100vh; color:var(--glass-ink); background:radial-gradient(circle at 4% 10%,rgba(34,211,238,.18),transparent 30rem),radial-gradient(circle at 96% 22%,rgba(99,102,241,.14),transparent 34rem),linear-gradient(135deg,#f6fcff 0%,#eef8ff 48%,#f8f9ff 100%); }
body.home-glass .main-header { background:transparent; border:0; box-shadow:none; padding:12px 0; }
body.home-glass .main-header > .container { position:relative; z-index:2; border:1px solid var(--glass-line); border-radius:26px; background:rgba(255,255,255,.58); box-shadow:0 22px 60px rgba(41,93,129,.10),inset 0 1px rgba(255,255,255,.92); backdrop-filter:blur(24px) saturate(150%); -webkit-backdrop-filter:blur(24px) saturate(150%); }
body.home-glass .header-search-bar { background:rgba(255,255,255,.72); border:1px solid rgba(96,165,250,.22); border-radius:18px; box-shadow:0 12px 30px rgba(30,64,175,.08); }
body.home-glass .header-search-bar .search-btn { background:linear-gradient(135deg,var(--glass-cyan),var(--glass-blue)); border-radius:13px; }
body.home-glass .nav-menu a.active,body.home-glass .nav-menu a:hover { color:var(--glass-blue); border-color:var(--glass-cyan); }
body.home-glass .hero-banner-section { margin:18px 0 24px; }
body.home-glass .main-banner-slider,body.home-glass .home-fallback-hero { min-height:220px; border:1px solid rgba(96,165,250,.20); border-radius:28px; overflow:hidden; background:linear-gradient(115deg,rgba(255,255,255,.75),rgba(224,247,255,.54)); box-shadow:0 24px 60px rgba(30,64,175,.12),inset 0 1px rgba(255,255,255,.9); }
body.home-glass .main-banner-slider .swiper-slide { height:280px; }
body.home-glass .banner-item,body.home-glass .banner-img { display:block; width:100%; height:100%; } body.home-glass .banner-img { object-fit:cover; }
body.home-glass .banner-overlay { background:linear-gradient(90deg,rgba(8,47,73,.62),rgba(8,47,73,.08)); justify-content:flex-start; text-align:left; padding:clamp(24px,6vw,72px); }
body.home-glass .banner-content-inner h2 { text-shadow:none; }
body.home-glass .home-fallback-hero { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:clamp(28px,5vw,58px); position:relative; isolation:isolate; }
body.home-glass .home-fallback-hero:before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(circle at 83% 45%,rgba(34,211,238,.26),transparent 18rem); }
body.home-glass .home-hero-copy { max-width:720px; } body.home-glass .home-hero-eyebrow { display:inline-flex; gap:8px; align-items:center; color:#0891b2; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
body.home-glass .home-hero-copy h1 { margin:12px 0 10px; max-width:680px; font-size:clamp(28px,4vw,52px); line-height:1.06; letter-spacing:-.045em; color:#12304d; }
body.home-glass .home-hero-copy p { max-width:600px; margin:0; color:var(--glass-muted); font-size:clamp(14px,1.5vw,17px); }
body.home-glass .home-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }

body.home-glass .promo-card { border:1px solid rgba(148,163,184,.20); background:rgba(255,255,255,.62)!important; color:var(--glass-ink); box-shadow:0 16px 34px rgba(30,64,175,.08); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
body.home-glass .card-community,body.home-glass .card-forum,body.home-glass .card-news,body.home-glass .card-subject { background:rgba(255,255,255,.62)!important; }
body.home-glass .promo-icon-box { background:linear-gradient(135deg,rgba(6,182,212,.18),rgba(37,99,235,.18)); color:var(--glass-blue); border-color:rgba(14,165,233,.22); }
body.home-glass .promo-action { background:rgba(37,99,235,.10); color:var(--glass-blue); }
body.home-glass .announcement-bar { border:1px solid var(--glass-line); background:rgba(255,255,255,.58); box-shadow:0 12px 30px rgba(30,64,175,.07); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
body.home-glass .announce-tag { background:linear-gradient(135deg,var(--glass-cyan),var(--glass-blue)); }
body.home-glass .product-explorer { padding:clamp(20px,3vw,34px); border:1px solid var(--glass-line); border-radius:28px; background:rgba(255,255,255,.52); box-shadow:0 24px 60px rgba(30,64,175,.08); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); }
body.home-glass .explorer-title { color:#12304d; letter-spacing:-.035em; } body.home-glass .explorer-subtitle { color:var(--glass-muted); }
body.home-glass .sort-controls { border:1px solid var(--glass-line); background:rgba(255,255,255,.54); }
/* Override legacy red !important cascade within home scope. */
body.home-glass .product-explorer .sort-controls .sort-btn.active { color:var(--glass-blue)!important; background:rgba(14,165,233,.12)!important; border-color:rgba(14,165,233,.28)!important; }
body.home-glass .product-explorer .sort-controls .sort-btn.active i { color:var(--glass-blue)!important; }
body.home-glass .section-main-title { color:var(--glass-ink); }
body.home-glass .section-title-underline { background:linear-gradient(135deg,var(--glass-cyan),var(--glass-blue))!important; }
body.home-glass .theme-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
body.home-glass .theme-card { background:rgba(255,255,255,.78); border:1px solid rgba(148,163,184,.22); border-radius:20px; box-shadow:0 14px 34px rgba(30,64,175,.08); overflow:hidden; }
body.home-glass .theme-card:hover { transform:translateY(-4px); border-color:rgba(6,182,212,.42); box-shadow:0 20px 42px rgba(30,64,175,.14); }
body.home-glass .theme-img-fixed { background:linear-gradient(135deg,#e9faff,#eef2ff); } body.home-glass .wish-btn { background:rgba(255,255,255,.82); color:var(--glass-blue); }
body.home-glass .theme-cate,body.home-glass .stat-view { color:var(--glass-muted); } body.home-glass .category-label { color:#0891b2; background:rgba(6,182,212,.10); }
body.home-glass .price-badge,body.home-glass .price-free { color:#075985; background:rgba(34,211,238,.15); } body.home-glass .product-detail-button { color:var(--glass-blue); border-color:rgba(37,99,235,.22); background:rgba(255,255,255,.55); }
body.home-glass .btn-load-more { color:white; border:0; background:linear-gradient(135deg,var(--glass-cyan),var(--glass-blue)); }
body.home-glass .mobile-footer-nav { background:rgba(255,255,255,.72); border-top:1px solid var(--glass-line); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
body.home-glass .f-nav-item.active,body.home-glass .f-nav-item:hover { color:var(--glass-blue); }
@media (max-width:1024px) { body.home-glass .theme-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } body.home-glass .header-mobile { background:rgba(255,255,255,.62); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); } body.home-glass .m-header-top { background:transparent; } }
@media (max-width:768px) { body.home-glass .theme-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } body.home-glass .home-fallback-hero { min-height:300px; padding:26px 20px; } body.home-glass .home-hero-orbit { width:94px; height:94px; flex-basis:94px; font-size:24px; } body.home-glass .home-hero-orbit span { width:120px; height:42px; } body.home-glass .home-hero-orbit b { width:38px; height:38px; } body.home-glass .home-hero-copy h1 { font-size:30px; } }
@media (max-width:520px) { body.home-glass .home-fallback-hero { display:block; } body.home-glass .home-hero-orbit { position:absolute; right:18px; top:20px; opacity:.7; } body.home-glass .home-hero-copy { position:relative; z-index:1; } body.home-glass .home-hero-copy h1 { max-width:290px; } }
@media (min-width:1025px) { body.home-glass .mobile-sidebar,body.home-glass .sidebar-overlay { display:none; } }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { body.home-glass .main-header > .container,body.home-glass .header-mobile,body.home-glass .product-explorer,body.home-glass .promo-card { background:rgba(255,255,255,.96); } }

@media (max-width:520px) { body.home-glass .home-hero-actions { display:grid; grid-template-columns:1fr; width:100%; } body.home-glass .home-hero-primary,body.home-glass .home-hero-secondary { justify-content:center; width:100%; white-space:normal; } }

/* Prevent legacy mobile edge-to-edge rules from widening the fallback hero. */
@media (max-width:768px) {
    body.home-glass .content-body > .container { width:100%; max-width:100%; }
    body.home-glass .hero-banner-section { width:100%; max-width:100%; margin:18px 0 24px!important; }
    body.home-glass .home-fallback-hero { width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
    body.home-glass .home-hero-copy,body.home-glass .home-hero-actions { min-width:0; max-width:100%; }
    body.home-glass .home-hero-copy h1,body.home-glass .home-hero-copy p { overflow-wrap:anywhere; }
}
@media (max-width:520px) {
    body.home-glass .main-header > .container { width:100%; max-width:100%; padding-left:12px; padding-right:12px; }
    body.home-glass .m-header-top { min-width:0; gap:8px; }
    body.home-glass .m-logo { min-width:0; }
    body.home-glass .m-icons-right { flex:0 0 auto; gap:4px; }
    body.home-glass .m-icon-btn { width:36px; height:36px; }
}



body.home-glass .home-hero-primary,body.home-glass .home-hero-secondary { display:inline-flex; align-items:center; gap:10px; padding:12px 18px; border-radius:13px; font-weight:800; }
body.home-glass .home-hero-primary { color:white; background:linear-gradient(135deg,var(--glass-cyan),var(--glass-blue)); box-shadow:0 12px 24px rgba(37,99,235,.22); }
body.home-glass .home-hero-secondary { color:#1769aa; border:1px solid rgba(37,99,235,.20); background:rgba(255,255,255,.58); }
body.home-glass .home-hero-orbit { width:190px; height:190px; flex:0 0 190px; display:grid; place-items:center; border:1px solid rgba(14,165,233,.28); border-radius:50%; color:var(--glass-blue); font-size:42px; background:rgba(255,255,255,.42); box-shadow:0 0 0 22px rgba(34,211,238,.06),0 20px 50px rgba(14,116,144,.12); }
body.home-glass .home-hero-orbit span,body.home-glass .home-hero-orbit b { position:absolute; display:block; border-radius:50%; border:1px solid rgba(14,165,233,.25); } body.home-glass .home-hero-orbit span { width:235px; height:80px; transform:rotate(28deg); } body.home-glass .home-hero-orbit b { width:72px; height:72px; background:rgba(34,211,238,.17); filter:blur(3px); }



/* Final mobile cascade: keep the fallback hero inside the viewport. */
@media (max-width:768px) { body.home-glass .content-body > .container,body.home-glass .hero-banner-section,body.home-glass .home-fallback-hero { width:100%; max-width:100%; min-width:0; box-sizing:border-box; } body.home-glass .hero-banner-section { margin:18px 0 24px!important; } }

@media (max-width:520px) { body.home-glass .home-hero-copy { width:100%; } body.home-glass .home-hero-copy h1 { font-size:clamp(26px,8vw,31px); line-height:1.08; } body.home-glass .home-hero-copy p { max-width:100%; } body.home-glass .home-hero-actions { width:100%; max-width:100%; } }

@media (max-width:520px) { body.home-glass .home-fallback-hero { display:block; } body.home-glass .home-hero-actions { display:grid; grid-template-columns:1fr; width:100%; } body.home-glass .home-hero-primary,body.home-glass .home-hero-secondary { width:100%; justify-content:center; box-sizing:border-box; } }

/* Editorial news feed on the home page */
body.home-glass .home-news-section { margin:54px 0 30px; padding:clamp(22px,3.5vw,42px); border:1px solid rgba(148,163,184,.20); border-radius:28px; background:rgba(255,255,255,.64); box-shadow:0 22px 54px rgba(30,64,175,.08); backdrop-filter:blur(15px); -webkit-backdrop-filter:blur(15px); }
body.home-glass .home-news-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:22px; margin-bottom:28px; } body.home-glass .home-news-kicker { display:inline-flex; align-items:center; gap:7px; color:#0786bd; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; } body.home-glass .home-news-heading h2 { margin:7px 0 6px; color:#12304d; font-size:clamp(25px,3vw,34px); line-height:1.1; letter-spacing:-.04em; } body.home-glass .home-news-heading p { margin:0; color:#5e718a; font-size:14px; }
body.home-glass .home-news-all { display:inline-flex; flex:0 0 auto; align-items:center; gap:9px; padding:11px 15px; border:1px solid rgba(14,165,233,.2); border-radius:12px; background:rgba(255,255,255,.78); color:#126b9c; font-size:13px; font-weight:800; text-decoration:none; transition:.2s ease; } body.home-glass .home-news-all:hover { border-color:#0ea5e9; background:#e8f8ff; color:#075b90; transform:translateY(-2px); }
body.home-glass .home-news-layout { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr); gap:24px; } body.home-glass .home-news-featured { overflow:hidden; border:1px solid rgba(148,163,184,.18); border-radius:20px; background:#fff; box-shadow:0 12px 30px rgba(30,64,175,.07); } body.home-glass .home-news-featured__image { position:relative; display:block; height:245px; overflow:hidden; background:#dceefa; } body.home-glass .home-news-featured__image::after { content:''; position:absolute; inset:35% 0 0; background:linear-gradient(transparent,rgba(9,41,70,.58)); } body.home-glass .home-news-featured__image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; } body.home-glass .home-news-featured:hover img { transform:scale(1.05); } body.home-glass .home-news-featured__image span { position:absolute; z-index:1; top:15px; left:15px; padding:6px 10px; border-radius:8px; background:rgba(255,255,255,.92); color:#0873ac; font-size:11px; font-weight:800; }
body.home-glass .home-news-featured__body { padding:21px 23px 23px; } body.home-glass .home-news-meta { display:flex; align-items:center; gap:7px; color:#70829a; font-size:11px; font-weight:700; } body.home-glass .home-news-meta i { color:#0ea5e9; } body.home-glass .home-news-meta b { color:#b2c1d0; } body.home-glass .home-news-featured h3 { margin:11px 0 8px; font-size:21px; line-height:1.32; letter-spacing:-.025em; } body.home-glass .home-news-featured h3 a,body.home-glass .home-news-item h3 a { color:#163653; text-decoration:none; transition:color .2s; } body.home-glass .home-news-featured h3 a:hover,body.home-glass .home-news-item h3 a:hover { color:#0786bd; } body.home-glass .home-news-featured p { display:-webkit-box; margin:0; overflow:hidden; color:#62748b; font-size:13px; line-height:1.65; -webkit-box-orient:vertical; -webkit-line-clamp:2; } body.home-glass .home-news-read { display:inline-flex; align-items:center; gap:8px; margin-top:17px; color:#0878b2; font-size:12px; font-weight:800; text-decoration:none; } body.home-glass .home-news-read i { transition:transform .2s; } body.home-glass .home-news-read:hover i { transform:translateX(4px); }
body.home-glass .home-news-list { display:grid; gap:12px; align-content:start; } body.home-glass .home-news-item { display:grid; grid-template-columns:126px minmax(0,1fr); gap:15px; align-items:center; padding:11px; border:1px solid transparent; border-radius:16px; transition:.2s ease; } body.home-glass .home-news-item:hover { border-color:rgba(14,165,233,.18); background:rgba(255,255,255,.82); box-shadow:0 9px 20px rgba(30,64,175,.06); } body.home-glass .home-news-item__image { display:block; height:91px; overflow:hidden; border-radius:11px; background:#dceefa; } body.home-glass .home-news-item__image img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; } body.home-glass .home-news-item:hover img { transform:scale(1.07); } body.home-glass .home-news-item__body > span { color:#0786bd; font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; } body.home-glass .home-news-item h3 { display:-webkit-box; margin:5px 0 7px; overflow:hidden; font-size:14px; line-height:1.38; -webkit-box-orient:vertical; -webkit-line-clamp:2; } body.home-glass .home-news-item small { color:#8493a7; font-size:10px; font-weight:600; } body.home-glass .home-news-item small b { color:#c0ccd8; padding:0 3px; } body.home-glass .home-news-empty { grid-column:1/-1; padding:45px; color:#718096; text-align:center; } body.home-glass .home-news-empty i { color:#0ea5e9; font-size:32px; } body.home-glass .home-news-empty p { margin:10px 0 0; }


/* Home membership invitation */
body.home-glass .home-member-cta { margin:42px 0 22px; }
body.home-glass .home-member-cta__card { position:relative; display:grid; grid-template-columns:270px minmax(0,1fr); align-items:center; gap:clamp(24px,5vw,74px); min-height:300px; padding:34px clamp(28px,6vw,76px); overflow:hidden; border:1px solid rgba(255,255,255,.42); border-radius:30px; color:#fff; background:linear-gradient(116deg,#0b477a 0%,#1468a5 48%,#0d9bd2 100%); box-shadow:0 22px 52px rgba(14,88,151,.24); }
body.home-glass .home-member-cta__card::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(1,24,53,.22),transparent 62%); pointer-events:none; }
body.home-glass .home-member-cta__glow { position:absolute; border-radius:50%; pointer-events:none; } body.home-glass .home-member-cta__glow--one { width:390px; height:390px; top:-235px; right:-60px; border:58px solid rgba(255,255,255,.08); } body.home-glass .home-member-cta__glow--two { width:220px; height:220px; bottom:-165px; left:26%; background:rgba(34,211,238,.18); }
body.home-glass .home-member-cta__visual { position:relative; z-index:1; display:grid; width:230px; height:230px; place-items:center; margin:auto; } body.home-glass .home-member-cta__orbit { position:absolute; border:1px solid rgba(255,255,255,.22); border-radius:50%; } body.home-glass .home-member-cta__orbit--one { width:218px; height:218px; } body.home-glass .home-member-cta__orbit--two { width:160px; height:160px; border-style:dashed; transform:rotate(25deg); }
body.home-glass .home-member-cta__visual-icon { display:grid; width:106px; height:106px; place-items:center; border:1px solid rgba(255,255,255,.45); border-radius:31px; background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(255,255,255,.08)); box-shadow:0 20px 38px rgba(1,30,67,.25),inset 0 1px rgba(255,255,255,.35); font-size:41px; transform:rotate(-8deg); }
body.home-glass .home-member-cta__float { position:absolute; display:grid; width:44px; height:44px; place-items:center; border-radius:14px; background:#fff; box-shadow:0 12px 25px rgba(1,30,67,.2); color:#168cc8; font-size:18px; } body.home-glass .home-member-cta__float--top { top:14px; right:8px; } body.home-glass .home-member-cta__float--bottom { bottom:14px; left:3px; color:#f59e0b; }
body.home-glass .home-member-cta__copy { position:relative; z-index:1; max-width:690px; } body.home-glass .home-member-cta__eyebrow { display:inline-flex; align-items:center; gap:7px; padding:7px 11px; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(255,255,255,.1); color:#dff8ff; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
body.home-glass .home-member-cta h2 { margin:15px 0 10px; color:#fff; font-size:clamp(26px,3.2vw,40px); line-height:1.12; letter-spacing:-.04em; } body.home-glass .home-member-cta__copy > p { max-width:660px; margin:0; color:rgba(235,249,255,.85); font-size:15px; line-height:1.7; }
body.home-glass .home-member-cta__benefits { display:flex; flex-wrap:wrap; gap:10px 18px; margin-top:19px; } body.home-glass .home-member-cta__benefits span { display:inline-flex; align-items:center; gap:7px; color:#e8fbff; font-size:12px; font-weight:700; } body.home-glass .home-member-cta__benefits i { color:#8cf4d1; }
body.home-glass .home-member-cta__actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-top:25px; } body.home-glass .home-member-cta__button { display:inline-flex; align-items:center; gap:10px; padding:13px 20px; border-radius:12px; background:#fff; box-shadow:0 10px 22px rgba(1,30,67,.17); color:#0872ab; font-size:14px; font-weight:800; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease; } body.home-glass .home-member-cta__button:hover { color:#075f91; transform:translateY(-2px); box-shadow:0 15px 28px rgba(1,30,67,.25); } body.home-glass .home-member-cta__actions > span { color:rgba(235,249,255,.77); font-size:13px; } body.home-glass .home-member-cta__actions > span a { color:#fff; font-weight:800; text-decoration:underline; text-underline-offset:3px; }



@media (max-width:760px) { body.home-glass .home-member-cta { margin-top:28px; } body.home-glass .home-member-cta__card { display:block; min-height:0; padding:30px 24px; border-radius:22px; } body.home-glass .home-member-cta__visual { width:150px; height:112px; margin:0 0 7px; } body.home-glass .home-member-cta__orbit--one { width:150px; height:150px; } body.home-glass .home-member-cta__orbit--two { width:106px; height:106px; } body.home-glass .home-member-cta__visual-icon { width:67px; height:67px; border-radius:21px; font-size:26px; } body.home-glass .home-member-cta__float { width:31px; height:31px; border-radius:10px; font-size:12px; } body.home-glass .home-member-cta__float--top { top:0; right:3px; } body.home-glass .home-member-cta__float--bottom { bottom:-6px; left:0; } body.home-glass .home-member-cta h2 { font-size:28px; } body.home-glass .home-member-cta__copy > p { font-size:13px; } body.home-glass .home-member-cta__actions { align-items:flex-start; flex-direction:column; gap:14px; } body.home-glass .home-news-section { margin-top:34px; padding:23px 17px; border-radius:21px; } body.home-glass .home-news-heading { align-items:flex-start; flex-direction:column; margin-bottom:22px; } body.home-glass .home-news-heading p { font-size:13px; line-height:1.5; } body.home-glass .home-news-layout { grid-template-columns:1fr; gap:17px; } body.home-glass .home-news-featured__image { height:205px; } body.home-glass .home-news-featured__body { padding:18px; } body.home-glass .home-news-featured h3 { font-size:18px; } body.home-glass .home-news-item { grid-template-columns:102px minmax(0,1fr); gap:12px; padding:8px; } body.home-glass .home-news-item__image { height:76px; } }

