/* 官网首页：基于老板提供的深色电影感参考图，首页独立使用全宽品牌布局。 */
body.marketing-home-body,
body.marketing-home-body #app { background:#f7f6f2; }
#app.marketing-shell { width:100%; max-width:none; min-height:100vh; margin:0; overflow:visible; background:#f7f6f2; box-shadow:none; }
.home-page { position:relative; width:100%; max-width:none; min-height:100vh; margin:0; padding:0 0 0; overflow:clip; background:#f7f6f2; color:#202022; }
.home-page [hidden] { display:none !important; }
.home-page button { font:inherit; }
.home-page .home-site-header-wrap { position:absolute; z-index:12; inset:0 0 auto; padding-top:env(safe-area-inset-top); }
.home-page .home-site-header { width:min(100%,1500px); height:78px; margin:0 auto; padding:0 clamp(22px,4.4vw,64px); display:flex; align-items:center; gap:clamp(16px,2.2vw,34px); color:#fffaf2; }
.home-page .home-brand { flex:0 0 auto; display:flex; align-items:center; gap:10px; padding:0; border:0; background:transparent; color:inherit; text-align:left; text-decoration:none; }
.home-page .home-brand-mark { display:grid; place-items:center; width:34px; height:34px; color:#f4d6ac; font-size:27px; line-height:1; }
.home-page .home-brand-mark svg { width:100%; height:100%; }
.home-page .home-brand-copy strong,.home-page .home-brand-copy small { display:block; white-space:nowrap; }
.home-page .home-brand-copy strong { font-family:"Songti SC","STSong",serif; font-size:17px; font-weight:700; letter-spacing:.04em; }
.home-page .home-brand-copy small { margin-top:3px; color:rgba(255,244,225,.73); font-size:9px; letter-spacing:.12em; }
.home-page .home-site-nav { flex:1 1 auto; min-width:0; display:flex; align-items:center; justify-content:center; gap:clamp(10px,1.55vw,23px); overflow-x:auto; scrollbar-width:none; }
.home-page .home-site-nav::-webkit-scrollbar { display:none; }
.home-page .home-site-nav>button,.home-page .home-site-nav>a,.home-page .home-more-toggle { position:relative; flex:0 0 auto; min-height:42px; padding:0 1px; display:flex; align-items:center; border:0; background:transparent; color:rgba(255,250,243,.91); font-size:13px; text-decoration:none; white-space:nowrap; }
.home-page .home-site-nav>button:hover,.home-page .home-site-nav>a:hover,.home-page .home-more-toggle:hover { color:#ffe0b2; }
.home-page .home-site-nav>button.is-current::after,.home-page .home-site-nav>a.is-current::after { content:""; position:absolute; left:0; right:0; bottom:2px; width:23px; height:1px; margin:auto; background:#efcea0; }
.home-page .home-more-wrap { position:relative; flex:0 0 auto; }
.home-page .home-more-toggle span { margin-left:4px; color:#e7cda7; }
.home-page .home-more-menu { position:absolute; top:48px; right:-14px; z-index:30; width:166px; padding:8px; border:1px solid rgba(230,210,181,.22); border-radius:14px; background:rgba(20,22,25,.97); box-shadow:0 18px 45px rgba(0,0,0,.32); backdrop-filter:blur(14px); }
.home-page .home-more-menu button,.home-page .home-more-menu a { width:100%; padding:11px 12px; display:block; border:0; border-radius:8px; background:transparent; color:#f7f1e8; text-align:left; font-size:13px; text-decoration:none; }
.home-page .home-more-menu button:hover,.home-page .home-more-menu a:hover { background:rgba(239,206,160,.12); color:#f2d2a5; }
.home-page .home-site-actions { flex:0 0 auto; display:flex; align-items:center; gap:16px; }
.home-page .home-search-toggle { width:36px; height:36px; display:grid; place-items:center; padding:7px; border:0; background:transparent; color:#fffaf2; }
.home-page .home-search-toggle svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; }
.home-page .home-login-button { min-width:102px; height:36px; padding:0 17px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(255,244,225,.84); border-radius:999px; background:#f5dfbd; color:#322b25; font-size:12px; font-weight:650; text-decoration:none; white-space:nowrap; }
.home-page .home-search-panel { position:absolute; top:82px; right:clamp(20px,4.4vw,64px); z-index:20; width:min(360px,calc(100vw - 36px)); padding:15px 46px 15px 16px; border:1px solid rgba(240,224,205,.88); border-radius:16px; background:#fffdf9; box-shadow:0 18px 50px rgba(24,19,15,.18); color:#332d27; }
.home-page .home-search-panel label { display:block; margin-bottom:7px; color:#887765; font-size:11px; }
.home-page .home-search-panel input { width:100%; height:40px; padding:0 12px; border:1px solid #e7dbce; border-radius:10px; outline:none; background:#fff; color:#302820; font-size:13px; }
.home-page .home-search-panel input:focus { border-color:#c89b65; box-shadow:0 0 0 3px rgba(200,155,101,.12); }
.home-page .home-search-panel>button { position:absolute; top:31px; right:12px; width:28px; height:28px; border:0; background:transparent; color:#8a7c70; font-size:22px; }

.home-page .home-hero-card { position:relative !important; display:block !important; width:100% !important; height:clamp(402px,39.3vw,680px) !important; min-height:0 !important; max-height:none !important; margin:0 !important; padding:0 !important; grid-template-columns:none !important; aspect-ratio:auto !important; overflow:hidden; border:0 !important; border-radius:0 !important; background:#171719; box-shadow:none !important; }
.home-page .home-hero-card::before { display:none !important; }
.home-page .home-hero-picture { position:absolute !important; inset:0 !important; grid-column:auto !important; grid-row:auto !important; display:block !important; width:100% !important; height:100% !important; overflow:hidden; border-radius:0 !important; }
.home-page .home-hero-image { position:absolute !important; inset:0 !important; width:100% !important; height:100% !important; object-fit:cover !important; object-position:66% 48% !important; filter:saturate(.88) contrast(1.04); border-radius:0 !important; }
.home-page .home-hero-shade { position:absolute !important; inset:0 !important; display:block !important; background:linear-gradient(90deg,rgba(8,9,11,.9) 0%,rgba(11,12,13,.75) 25%,rgba(12,12,13,.28) 53%,rgba(9,10,10,.02) 78%),linear-gradient(180deg,rgba(7,8,9,.46) 0%,transparent 27%,transparent 72%,rgba(7,8,9,.36) 100%) !important; }
.home-page .home-hero-copy { position:absolute !important; z-index:2; left:max(clamp(24px,4.3vw,66px),calc((100vw - 1430px)/2)) !important; top:48% !important; right:auto !important; bottom:auto !important; grid-column:auto !important; grid-row:auto !important; align-self:auto !important; width:min(54%,650px) !important; padding:0 !important; transform:translateY(-32%) !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; backdrop-filter:none !important; text-align:left !important; }
.home-page .home-hero-eyebrow { display:block; margin-bottom:17px; color:#e6c99e; font-family:"Songti SC","STSong",serif; font-size:13px; letter-spacing:.46em; }
.home-page .home-hero-copy h1 { width:auto !important; margin:0 0 15px !important; color:#fffdfa !important; font-family:"Songti SC","STSong",serif; font-size:clamp(40px,4.8vw,67px) !important; font-style:normal !important; font-weight:500; line-height:1.25 !important; letter-spacing:.025em; text-shadow:0 2px 16px rgba(0,0,0,.26) !important; }
.home-page .home-hero-copy>p { max-width:440px; margin:0 0 25px !important; color:rgba(255,250,243,.9) !important; font-size:14px !important; line-height:1.8; letter-spacing:.015em; white-space:normal !important; text-shadow:none !important; }
.home-page .primary-btn.home-primary { width:auto !important; min-width:198px !important; height:46px; min-height:46px !important; margin:0 !important; padding:0 21px !important; display:inline-flex !important; align-items:center; justify-content:center; gap:9px; border:1px solid rgba(255,239,215,.85) !important; border-radius:999px !important; background:linear-gradient(110deg,#f6dfbc,#f0d1a5) !important; box-shadow:0 8px 28px rgba(0,0,0,.17) !important; color:#322820 !important; font-size:13px !important; font-weight:700; letter-spacing:.02em; text-decoration:none; }
.home-page .primary-btn.home-primary>span { font-size:14px; }
.home-page .primary-btn.home-primary>b { margin-left:3px; font-size:17px; font-weight:500; }
.home-page .home-hero-badges { position:absolute; z-index:3; right:clamp(17px,3vw,42px); bottom:16px; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.home-page .home-hero-badges span { padding:6px 9px; border:1px solid rgba(255,255,255,.42); border-radius:999px; background:rgba(14,15,16,.47); color:rgba(255,250,244,.9); font-size:9px; line-height:1.2; backdrop-filter:blur(7px); }
.home-page .home-hero-side-note { position:absolute; z-index:2; right:4.4%; bottom:23%; color:rgba(255,246,230,.86); font-family:"KaiTi","STKaiti",serif; font-size:clamp(14px,1.5vw,21px); line-height:1.55; letter-spacing:.12em; transform:rotate(-7deg); text-shadow:0 2px 12px rgba(0,0,0,.5); }

.home-page .home-theme-band { position:relative; z-index:4; width:min(100%,1500px); margin:-1px auto 0; padding:27px clamp(20px,4.2vw,62px) 29px; border-radius:22px 22px 0 0; background:linear-gradient(125deg,#16191e,#101216 76%); color:#f8f5ef; box-shadow:0 -8px 35px rgba(0,0,0,.1); }
.home-page .home-section-heading { min-height:52px; margin:0 0 17px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.home-page .home-section-heading h2 { margin:0; color:#252429; font-family:"Songti SC","STSong",serif; font-size:23px; font-weight:650; line-height:1.25; letter-spacing:.02em; }
.home-page .home-section-heading p { margin:6px 0 0; color:#7b7778; font-size:12px; line-height:1.5; }
.home-page .home-theme-heading { margin-bottom:17px; }
.home-page .home-theme-heading h2 { color:#f7f2eb; font-size:21px; }
.home-page .home-theme-heading p { color:#b5b1b0; }
.home-page .home-popular-label { flex:0 0 auto; color:#e2c89f; font-size:11px; }
.home-page .home-popular-label b { padding-left:3px; color:#ef8c75; font-size:13px; }
.home-page .home-theme-grid { display:grid; grid-template-columns:1.55fr repeat(5,minmax(0,1fr)); gap:11px; }
.home-page .home-theme-card { position:relative; min-width:0; height:207px; padding:0; overflow:hidden; border:1px solid rgba(255,255,255,.1); border-radius:12px; background:#292a2b; color:#fff; text-align:left; isolation:isolate; }
.home-page .home-theme-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 38%; transition:transform .45s ease; }
.home-page .home-theme-card:hover img { transform:scale(1.045); }
.home-page .home-theme-card.is-primary { height:224px; margin-top:-8px; border:2px solid #f0d2a5; border-radius:14px; box-shadow:0 0 0 1px rgba(240,210,165,.2); }
.home-page .home-theme-shade { position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(0,0,0,.02) 20%,rgba(0,0,0,.03) 40%,rgba(8,9,10,.84) 100%); }
.home-page .home-theme-copy { position:absolute; z-index:2; left:13px; right:11px; bottom:13px; display:grid; gap:4px; }
.home-page .home-theme-copy strong { color:#fffaf2; font-family:"Songti SC","STSong",serif; font-size:15px; font-weight:650; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.home-page .home-theme-copy small { color:rgba(255,249,240,.78); font-size:9px; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.home-page .home-theme-main-tag { position:absolute; z-index:2; top:12px; right:12px; padding:4px 9px; border-radius:999px; background:#f2d5ad; color:#3b3028; font-size:9px; font-weight:700; }
.home-page .home-theme-arrow { position:absolute; z-index:2; right:10px; bottom:11px; color:#fff7eb; font-size:15px; }
.home-page .home-theme-status { position:absolute; z-index:2; top:9px; right:8px; padding:4px 6px; border-radius:999px; background:rgba(24,25,27,.66); color:rgba(255,249,239,.88); font-size:8px; backdrop-filter:blur(6px); }
.home-page .home-theme-card.is-upcoming { cursor:pointer; }

.home-page .home-featured-section { width:min(100%,1450px); margin:0 auto; padding:32px clamp(20px,4.2vw,62px) 35px; background:#f7f6f2; }
.home-page .home-text-link { flex:0 0 auto; padding:8px 0 8px 14px; border:0; background:transparent; color:#6f6d6d; font-size:11px; text-decoration:none; white-space:nowrap; }
.home-page .home-text-link b { margin-left:5px; color:#8c765b; font-size:16px; vertical-align:-1px; }
.home-page .home-featured-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:13px; }
.home-page .home-featured-card { position:relative; height:clamp(195px,23vw,258px); min-width:0; padding:0; overflow:hidden; border:0; border-radius:11px; background:#d7d1c9; color:white; text-align:left; isolation:isolate; }
.home-page .home-featured-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 35%; transition:transform .45s ease; }
.home-page .home-featured-card:hover img { transform:scale(1.045); }
.home-page .home-featured-shade { position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.62) 100%); }
.home-page .home-featured-copy { position:absolute; z-index:2; left:14px; right:32px; bottom:14px; display:grid; gap:4px; }
.home-page .home-featured-copy strong { overflow:hidden; color:#fff; font-family:"Songti SC","STSong",serif; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }
.home-page .home-featured-copy small { color:rgba(255,255,255,.82); font-size:9px; }
.home-page .home-featured-arrow { position:absolute; z-index:2; right:12px; bottom:14px; width:23px; height:23px; display:grid; place-items:center; border-radius:50%; background:rgba(25,25,25,.38); color:#fff; font-size:13px; }
.home-page .home-featured-empty { min-height:180px; padding:28px; border:1px solid #e9e2d9; border-radius:14px; background:#fffdfa; text-align:center; }
.home-page .home-featured-empty strong { font-family:"Songti SC","STSong",serif; font-size:16px; }
.home-page .home-featured-empty p { color:#827b75; font-size:12px; }
.home-page .home-featured-empty button { padding:9px 16px; border:1px solid #d7be9b; border-radius:999px; background:#f4e3c9; color:#463a2e; font-size:12px; }
.home-page .home-image-disclosure { margin:11px 1px 0; color:#89837c; font-size:9px; line-height:1.5; text-align:right; }

.home-page .home-benefits-section { position:relative; width:min(calc(100% - clamp(40px,7vw,84px)),1370px); min-height:202px; margin:0 auto 31px; padding:23px 30px; display:grid; grid-template-columns:minmax(220px,.92fr) 2.2fr; align-items:center; gap:23px; overflow:hidden; border-radius:17px; background:linear-gradient(112deg,#f7f3ec 0%,#f2ede4 57%,#eee7dc 100%); }
.home-page .home-benefits-intro { position:relative; z-index:1; }
.home-page .home-section-kicker { color:#a58a65; font-size:8px; font-weight:700; letter-spacing:.24em; }
.home-page .home-benefits-intro h2 { margin:7px 0 5px; color:#2c2927; font-family:"Songti SC","STSong",serif; font-size:20px; }
.home-page .home-benefits-intro>p { max-width:270px; margin:0; color:#77716c; font-size:10px; line-height:1.55; }
.home-page .home-benefits-handwrite { position:absolute; left:calc(100% + 98px); top:6px; width:160px; color:rgba(99,80,58,.72); font-family:"KaiTi","STKaiti",serif; font-size:16px; line-height:1.4; transform:rotate(-8deg); }
.home-page .home-benefits-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); }
.home-page .home-benefit { min-width:0; min-height:111px; padding:6px 13px; border-left:1px solid rgba(164,145,122,.2); }
.home-page .home-benefit:first-child { border-left:0; }
.home-page .home-benefit-icon { width:34px; height:34px; margin-bottom:8px; display:grid; place-items:center; border:1px solid rgba(117,100,80,.3); border-radius:50%; color:#4f4942; font-family:"Songti SC","STSong",serif; font-size:19px; }
.home-page .home-benefit strong { display:block; color:#36312c; font-size:11px; white-space:nowrap; }
.home-page .home-benefit p { max-width:145px; margin:6px 0 0; color:#80786f; font-size:9px; line-height:1.6; }

.home-page .home-cta-banner { position:relative; width:100%; min-height:226px; overflow:hidden; background:#191a1b; color:#fff; }
.home-page .home-cta-banner>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 44%; opacity:.66; }
.home-page .home-cta-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,13,15,.91),rgba(12,13,15,.6) 46%,rgba(12,13,15,.19)),linear-gradient(0deg,rgba(10,11,12,.18),rgba(10,11,12,.18)); }
.home-page .home-cta-copy { position:relative; z-index:1; width:min(100%,1450px); margin:0 auto; padding:35px clamp(20px,4.2vw,62px); }
.home-page .home-cta-copy>span { color:#e8cda5; font-size:8px; letter-spacing:.22em; }
.home-page .home-cta-copy h2 { margin:9px 0 7px; color:#fffaf3; font-family:"Songti SC","STSong",serif; font-size:clamp(22px,3vw,32px); font-weight:500; }
.home-page .home-cta-copy p { margin:0 0 16px; color:rgba(255,249,239,.82); font-size:11px; }
.home-page .home-cta-copy button,.home-page .home-cta-copy>a { min-width:124px; height:36px; padding:0 16px; display:inline-flex; align-items:center; justify-content:center; border:1px solid #f0dbba; border-radius:999px; background:#f2d9b4; color:#312b24; font-size:11px; font-weight:700; text-decoration:none; }
.home-page .home-cta-copy button b,.home-page .home-cta-copy>a b { margin-left:9px; font-size:15px; }
.home-page .home-cta-sample-note { position:absolute; z-index:2; right:clamp(19px,4.2vw,62px); bottom:12px; padding:5px 8px; border:1px solid rgba(255,255,255,.26); border-radius:999px; background:rgba(12,13,15,.4); color:rgba(255,255,255,.85); font-size:8px; }
.home-page .home-site-footer { min-height:82px; width:100%; padding:17px clamp(20px,4.2vw,62px); display:grid; grid-template-columns:minmax(190px,1fr) 2fr minmax(120px,1fr); align-items:center; gap:20px; background:#111317; color:#d8d1c8; }
.home-page .home-footer-brand { width:max-content; display:grid; grid-template-columns:28px auto; grid-template-rows:1fr 1fr; align-items:center; column-gap:7px; padding:0; border:0; background:transparent; color:#f0d3a8; text-align:left; text-decoration:none; }
.home-page .home-footer-brand .home-brand-mark { grid-row:1/3; width:28px; height:28px; font-size:22px; }
.home-page .home-footer-brand strong { font-family:"Songti SC","STSong",serif; font-size:14px; }
.home-page .home-footer-brand small { color:#aaa097; font-size:8px; letter-spacing:.08em; }
.home-page .home-site-footer>nav { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 19px; }
.home-page .home-site-footer>nav button,.home-page .home-site-footer>nav a { padding:0; border:0; background:transparent; color:#aaa6a2; font-size:9px; text-decoration:none; white-space:nowrap; }
.home-page .home-site-footer>nav button:hover,.home-page .home-site-footer>nav a:hover { color:#f0d3a8; }
.home-page .home-footer-social { justify-self:end; display:grid; gap:4px; color:#c3bbb1; font-size:9px; text-align:right; }
.home-page .home-footer-social small { color:#817b75; font-size:8px; }
.home-page .home-site-footer>p { grid-column:1/-1; margin:0; padding-top:9px; border-top:1px solid rgba(255,255,255,.08); color:#77736f; font-size:8px; text-align:center; }
.home-page .home-site-footer>p span { margin-left:8px; }
.home-page>.bottom-nav { display:grid; }

@media (min-width:1051px) {
  .home-page .home-benefits-handwrite { position:static; width:160px; margin:12px 0 0 22px; display:block; font-size:13px; transform:rotate(-5deg); }
}

@media (min-width:768px) {
  .home-page { padding-bottom:0; }
  .home-page>.bottom-nav { display:none; }
}

@media (max-width:1050px) {
  .home-page .home-site-header { gap:14px; padding-right:25px; padding-left:25px; }
  .home-page .home-site-nav { justify-content:flex-start; gap:clamp(9px,1.25vw,14px); }
  .home-page .home-site-nav>button,.home-page .home-site-nav>a,.home-page .home-more-toggle { font-size:11px; }
  .home-page .home-brand-copy strong { font-size:15px; }
  .home-page .home-brand-copy small { font-size:8px; }
  .home-page .home-brand { gap:6px; }
  .home-page .home-brand-mark { width:29px; height:29px; }
  .home-page .home-site-actions { gap:7px; }
  .home-page .home-login-button { min-width:86px; padding:0 11px; font-size:10px; }
  .home-page .home-benefits-handwrite { position:static; width:min(160px,100%); margin:10px 0 0 18px; display:block; font-size:12px; line-height:1.22; transform:rotate(-5deg); }
  .home-page .home-hero-card { height:402px !important; }
  .home-page .home-theme-band { padding-bottom:38px; }
  .home-page .home-theme-card { height:201px; }
  .home-page .home-theme-card.is-primary { height:222px; }
  .home-page .home-theme-copy { left:9px; right:8px; }
  .home-page .home-theme-copy strong { font-size:13px; }
  .home-page .home-theme-copy small { font-size:8px; }
  .home-page .home-benefits-section { grid-template-columns:minmax(180px,.82fr) 2.2fr; gap:12px; padding:21px 18px; }
  .home-page .home-benefit { padding-right:8px; padding-left:9px; }
  .home-page .home-featured-section { padding:24px clamp(20px,4.2vw,62px) 16px; }
  .home-page .home-featured-section>.home-section-heading { min-height:46px; margin-bottom:12px; }
  .home-page .home-image-disclosure { margin-top:4px; font-size:7px; }
  .home-page .home-benefits-section { min-height:211px; margin-bottom:18px; }
  .home-page .home-cta-banner { min-height:152px; }
  .home-page .home-cta-copy { padding:16px clamp(20px,4.2vw,62px); }
  .home-page .home-cta-copy h2 { margin:6px 0 4px; font-size:23px; }
  .home-page .home-cta-copy p { margin-bottom:8px; }
  .home-page .home-cta-copy button,.home-page .home-cta-copy>a { height:30px; }
  .home-page .home-site-footer { min-height:58px; padding:6px 25px 5px; grid-template-rows:28px 12px; gap:3px 14px; }
  .home-page .home-site-footer>p { padding-top:3px; font-size:7px; }
}

@media (max-width:767px) {
  .home-page { padding-bottom:calc(78px + env(safe-area-inset-bottom)); overflow:clip; }
  .home-page .home-site-header-wrap { padding-top:env(safe-area-inset-top); }
  .home-page .home-site-header { height:62px; padding:0 16px; justify-content:space-between; gap:12px; }
  .home-page .home-brand { gap:7px; }
  .home-page .home-brand-mark { width:27px; height:27px; }
  .home-page .home-brand-copy strong { font-size:15px; }
  .home-page .home-brand-copy small { font-size:7px; letter-spacing:.1em; }
  .home-page .home-site-nav { display:none; }
  .home-page .home-site-actions { gap:8px; }
  .home-page .home-search-toggle { width:34px; height:34px; color:#fff9f1; }
  .home-page .home-search-toggle svg { width:20px; height:20px; }
  .home-page .home-login-button { min-width:78px; height:32px; padding:0 10px; font-size:10px; }
  .home-page .home-search-panel { top:68px; right:12px; }
  .home-page .home-hero-card { height:min(660px,130vw) !important; min-height:480px !important; max-height:620px !important; }
  .home-page .home-hero-image { object-position:86% center !important; }
  .home-page .home-hero-shade { background:linear-gradient(180deg,rgba(7,8,10,.48) 0%,rgba(9,10,11,.05) 31%,rgba(11,12,13,.05) 44%,rgba(8,9,10,.81) 100%),linear-gradient(90deg,rgba(8,9,10,.23),transparent 70%) !important; }
  .home-page .home-hero-copy { top:auto !important; right:20px !important; bottom:39px !important; left:20px !important; width:auto !important; transform:none !important; text-align:left !important; }
  .home-page .home-hero-eyebrow { margin-bottom:9px; font-size:10px; letter-spacing:.36em; }
  .home-page .home-hero-copy h1 { margin-bottom:8px !important; font-size:clamp(31px,9vw,43px) !important; line-height:1.22 !important; }
  .home-page .home-hero-copy>p { width:min(100%,310px) !important; max-width:310px; margin-bottom:15px !important; font-size:11px !important; line-height:1.65; white-space:normal !important; }
  .home-page .primary-btn.home-primary { min-width:168px !important; height:39px; min-height:39px !important; padding:0 15px !important; gap:7px; font-size:11px !important; }
  .home-page .home-hero-badges { right:12px; bottom:9px; gap:4px; }
  .home-page .home-hero-badges span { padding:4px 6px; font-size:7px; }
  .home-page .home-hero-side-note { display:none; }
  .home-page .home-theme-band { width:100%; margin-top:-1px; padding:20px 0 22px; border-radius:17px 17px 0 0; }
  .home-page .home-section-heading { min-height:45px; margin:0 17px 12px; }
  .home-page .home-section-heading h2 { font-size:18px; }
  .home-page .home-section-heading p { max-width:300px; margin-top:4px; font-size:10px; }
  .home-page .home-theme-heading h2 { font-size:17px; }
  .home-page .home-theme-heading p { color:#bcb7b6; }
  .home-page .home-popular-label { font-size:9px; }
  .home-page .home-theme-grid { display:flex; gap:9px; padding:2px 17px 4px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .home-page .home-theme-grid::-webkit-scrollbar { display:none; }
  .home-page .home-theme-card,.home-page .home-theme-card.is-primary { flex:0 0 43vw; width:43vw; max-width:210px; height:158px; margin:0; border-radius:10px; scroll-snap-align:start; }
  .home-page .home-theme-card.is-primary { flex-basis:55vw; width:55vw; max-width:245px; height:167px; }
  .home-page .home-theme-copy { left:11px; bottom:10px; gap:3px; }
  .home-page .home-theme-copy strong { font-size:14px; }
  .home-page .home-theme-copy small { font-size:8px; }
  .home-page .home-theme-main-tag { top:9px; right:9px; padding:3px 7px; font-size:8px; }
  .home-page .home-theme-status { top:8px; right:7px; padding:3px 5px; font-size:7px; }
  .home-page .home-featured-section { padding:24px 0 25px; }
  .home-page .home-featured-section>.home-section-heading { margin-bottom:12px; }
  .home-page .home-section-heading .home-text-link { padding-right:17px; font-size:9px; }
  .home-page .home-featured-grid { display:flex; gap:10px; padding:0 17px 3px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .home-page .home-featured-grid::-webkit-scrollbar { display:none; }
  .home-page .home-featured-card { flex:0 0 44vw; width:44vw; max-width:218px; height:195px; border-radius:10px; scroll-snap-align:start; }
  .home-page .home-featured-copy { left:11px; bottom:11px; }
  .home-page .home-featured-copy strong { font-size:13px; }
  .home-page .home-featured-copy small { font-size:8px; }
  .home-page .home-featured-arrow { right:8px; bottom:9px; width:21px; height:21px; }
  .home-page .home-image-disclosure { margin:9px 17px 0; font-size:8px; text-align:left; }
  .home-page .home-featured-empty { min-height:150px; margin:0 17px; padding:22px 15px; }
  .home-page .home-featured-empty strong { font-size:14px; }
  .home-page .home-featured-empty p { font-size:10px; }
  .home-page .home-benefits-section { width:calc(100% - 28px); min-height:0; margin:0 auto 20px; padding:18px 15px 17px; grid-template-columns:1fr; gap:12px; border-radius:13px; }
  .home-page .home-section-kicker { font-size:7px; }
  .home-page .home-benefits-intro h2 { margin:5px 0 3px; font-size:17px; }
  .home-page .home-benefits-intro>p { max-width:255px; font-size:9px; }
  .home-page .home-benefits-handwrite { left:auto; right:0; top:2px; width:auto; font-size:12px; }
  .home-page .home-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:3px 0; }
  .home-page .home-benefit { min-height:86px; padding:7px 9px; border-left:1px solid rgba(164,145,122,.2); }
  .home-page .home-benefit:nth-child(odd) { border-left:0; }
  .home-page .home-benefit:last-child { grid-column:1/-1; min-height:72px; border-left:0; }
  .home-page .home-benefit-icon { width:27px; height:27px; margin-bottom:5px; font-size:15px; }
  .home-page .home-benefit strong { font-size:9px; }
  .home-page .home-benefit p { max-width:180px; margin-top:4px; font-size:8px; }
  .home-page .home-cta-banner { min-height:190px; }
  .home-page .home-cta-banner>img { object-position:60% center; }
  .home-page .home-cta-copy { padding:29px 19px; }
  .home-page .home-cta-copy>span { font-size:7px; }
  .home-page .home-cta-copy h2 { max-width:270px; margin:7px 0 5px; font-size:22px; line-height:1.35; }
  .home-page .home-cta-copy p { margin-bottom:13px; font-size:9px; }
  .home-page .home-cta-copy button { height:33px; min-width:110px; font-size:10px; }
  .home-page .home-cta-sample-note { right:10px; bottom:8px; padding:4px 6px; font-size:7px; }
  .home-page .home-site-footer { min-height:0; padding:15px 17px 18px; grid-template-columns:1fr auto; gap:12px; }
  .home-page .home-footer-brand { grid-column:1; grid-row:1; }
  .home-page .home-site-footer>nav { grid-column:1/-1; grid-row:2; justify-content:flex-start; gap:11px 15px; }
  .home-page .home-site-footer>nav button,.home-page .home-site-footer>nav a { font-size:8px; }
  .home-page .home-footer-social { grid-column:2; grid-row:1; font-size:8px; }
  .home-page .home-site-footer>p { grid-row:3; font-size:7px; line-height:1.5; }
  .home-page>.bottom-nav { position:fixed !important; right:0 !important; bottom:0 !important; left:0 !important; z-index:80; width:100% !important; height:calc(74px + env(safe-area-inset-bottom)); padding:4px 7px env(safe-area-inset-bottom); transform:none !important; }
}

@media (max-width:360px) {
  .home-page .home-brand-copy strong { font-size:13px; }
  .home-page .home-brand-copy small { font-size:6px; }
  .home-page .home-brand-mark { width:23px; height:23px; }
  .home-page .home-login-button { min-width:69px; padding:0 7px; font-size:9px; }
  .home-page .home-theme-card,.home-page .home-theme-card.is-primary { flex-basis:54vw; width:54vw; }
}
