/*
Design Philosophy: 新电影手帐风与轻胶片数字拼贴。
This stylesheet supports a non-symmetric cinema notebook layout for 女神视频, emphasizing video discoverability, warm theatrical contrast, and readable SEO-first Chinese content.
*/
:root {
  --bg: #130d10;
  --panel: #1d1317;
  --panel-soft: #25181d;
  --line: #4c3039;
  --text: #fff8f2;
  --muted: #dfc5ba;
  --accent: #f05b79;
  --accent-2: #f5b36d;
  --tech: #69d1df;
  --card: #21151a;
  --shadow: 0 18px 60px rgba(0,0,0,.32);
  --radius: 24px;
  --container: min(1180px, calc(100% - 32px));
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: "Noto Sans SC", "Microsoft YaHei", sans-serif; background: radial-gradient(circle at top left, rgba(240,91,121,.10), transparent 25%), linear-gradient(180deg, #100b0d 0%, #181013 100%); color: var(--text); line-height: 1.7; }
a { color: inherit; text-decoration: none; }
img, video { max-width: 100%; display: block; }
img { border: 0; }
button, input { font: inherit; }
.container { width: var(--container); margin: 0 auto; }
.site-header { position: sticky; top: 0; z-index: 40; backdrop-filter: blur(16px); background: rgba(16,10,12,.84); border-bottom: 1px solid rgba(255,255,255,.07); }
.header-shell { display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; padding: 14px 0; }
.brand-lockup { display: inline-flex; align-items: center; gap: 12px; min-width: 0; }
.brand-lockup img.badge { width: 40px; height: 40px; border-radius: 14px; box-shadow: 0 10px 28px rgba(240,91,121,.18); }
.brand-lockup img.logo { width: 176px; height: auto; }
.brand-note { color: var(--muted); font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.main-nav { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 14px; }
.nav-link { padding: 10px 14px; border-radius: 999px; color: #ffe8dd; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.06); transition: .22s ease; font-size: 14px; }
.nav-link:hover, .nav-link.is-active { background: linear-gradient(120deg, rgba(240,91,121,.18), rgba(245,179,109,.18)); border-color: rgba(245,179,109,.36); transform: translateY(-1px); }
.header-side { display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 13px; }
.search-shell { border-top: 1px solid rgba(255,255,255,.05); border-bottom: 1px solid rgba(255,255,255,.05); background: rgba(255,255,255,.015); }
.search-bar { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; padding: 14px 0 16px; }
.search-bar input { background: #120d0f; border: 1px solid #3e2830; color: var(--text); border-radius: 999px; padding: 15px 18px; outline: none; }
.search-bar input:focus { border-color: rgba(105,209,223,.58); box-shadow: 0 0 0 4px rgba(105,209,223,.10); }
.search-bar button, .share-btn, .btn-primary, .btn-secondary, .btn-inline { border: 0; border-radius: 999px; cursor: pointer; transition: .2s ease; }
.search-bar button, .btn-primary { background: linear-gradient(135deg, var(--accent), #ff8d61); color: white; padding: 14px 18px; box-shadow: 0 14px 32px rgba(240,91,121,.24); }
.btn-secondary { background: rgba(255,255,255,.06); color: var(--text); padding: 14px 18px; border: 1px solid rgba(255,255,255,.08); }
.1zvZo { align-self: center; color: var(--muted); font-size: 13px; min-width: 128px; text-align: right; }
.hero-section { padding: 38px 0 30px; }
.hero-layout { display: grid; grid-template-columns: 0.94fr 1.06fr; gap: 26px; align-items: stretch; }
.hero-copy, .hero-visual, .section-block, .sub-hero, .V0cODHl, .contact-visual { background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.015)); border: 1px solid rgba(255,255,255,.07); box-shadow: var(--shadow); border-radius: 30px; overflow: hidden; }
.hero-copy { padding: 34px; position: relative; }
.hero-copy::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 18px; background: linear-gradient(180deg, rgba(245,179,109,.85), rgba(240,91,121,.40)); }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; text-transform: uppercase; letter-spacing: .18em; color: #ffcdb3; }
.eyebrow::before { content: ""; width: 34px; height: 1px; background: linear-gradient(90deg, var(--accent-2), transparent); }
h1, h2, h3, h4, h5, h6 { font-family: "Noto Serif SC", "Songti SC", serif; line-height: 1.22; margin: 0 0 14px; }
h1 { font-size: clamp(32px, 4.2vw, 56px); max-width: 12ch; }
h2 { font-size: clamp(25px, 2.7vw, 36px); }
h3 { font-size: 22px; }
p.lead { font-size: 17px; color: #f6e2d8; max-width: 60ch; }
.tag-row, .hero-points { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.tag-row span, .hero-points span, .duration, .status { display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 999px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); color: #ffe7da; font-size: 13px; }
.hero-visual { position: relative; min-height: 600px; }
.hero-visual img { width: 100%; height: 100%; object-fit: cover; filter: saturate(1.04) contrast(1.02); }
.meta-inline, .film-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.film-stats .metric, .meta-inline .metric { padding: 16px 16px 14px; border-radius: 22px; background: rgba(0,0,0,.22); border: 1px solid rgba(255,255,255,.08); }
.metric strong { display: block; font-size: 24px; color: #fff0e7; }
.metric span { color: var(--muted); font-size: 13px; }
.section-block { padding: 28px; margin-top: 28px; }
.section-copy { display: grid; gap: 14px; margin-bottom: 20px; }
.split-layout, .trust-layout, .contact-layout, .y0AJqI, .sub-hero-layout { display: grid; grid-template-columns: 1.06fr .94fr; gap: 24px; align-items: stretch; }
.video-grid, .expert-grid, .review-grid, .faq-grid, .matrix-grid, .step-grid, .oIjQpFaB, .badge-wall { display: grid; gap: 18px; }
.video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.matrix-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.expert-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.review-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.faq-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.step-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.badge-wall { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.oIjQpFaB { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
.video-card, .matrix-card, .expert-card, .review-card, .faq-item, .step-card, .trust-card, .article-card, .V0cODHl, .link-panel { position: relative; background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)); border: 1px solid rgba(255,255,255,.08); border-radius: 24px; overflow: hidden; box-shadow: 0 12px 28px rgba(0,0,0,.22); }
.video-card { min-height: 360px; }
.video-shell { position: relative; aspect-ratio: 16/10; background: #0d090a; overflow: hidden; }
.video-shell img, .sub-hero img, .contact-visual img { width: 100%; height: 100%; object-fit: cover; }
.video-shell video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .02; }
.play-indicator { position: absolute; inset: 50% auto auto 50%; width: 74px; height: 74px; margin: -37px 0 0 -37px; border-radius: 50%; display: grid; place-items: center; background: rgba(8,8,8,.42); border: 1px solid rgba(255,255,255,.28); box-shadow: 0 10px 30px rgba(0,0,0,.35); transform: scale(.88); opacity: 0; transition: .24s ease; }
.play-indicator::before { content: ""; border-left: 20px solid white; border-top: 12px solid transparent; border-bottom: 12px solid transparent; margin-left: 4px; }
.video-card:hover .play-indicator, .video-card.is-hovered .play-indicator { opacity: 1; transform: scale(1); }
.video-card:hover .video-shell img { transform: scale(1.05); filter: saturate(1.05); }
.video-shell img { transition: .3s ease; }
.video-copy { padding: 18px 20px 20px; }
.duration { position: absolute; top: 14px; right: 14px; background: rgba(9,9,9,.65); }
.meta-row { display: flex; flex-wrap: wrap; gap: 12px; color: var(--muted); font-size: 13px; }
.matrix-card, .expert-card, .review-card, .faq-item, .step-card, .article-card, .trust-card { padding: 20px; }
.step-index { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: linear-gradient(135deg, rgba(240,91,121,.22), rgba(245,179,109,.22)); color: #fff5ee; margin-bottom: 14px; }
.stars { color: #ffc763; letter-spacing: .2em; font-size: 13px; text-transform: uppercase; }
.partner-wall { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.partner-wall div, .badge-wall div { padding: 18px 14px; border-radius: 22px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); text-align: center; color: #ffe6dc; min-height: 78px; display: grid; place-items: center; }
.IrAP8H { margin: 0; padding: 18px; border-radius: 24px; background: #0d0a0b; border: 1px solid rgba(105,209,223,.22); color: #a8edf7; overflow-x: auto; font-size: 13px; line-height: 1.65; min-height: 100%; }
.breadcrumb { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; color: #d9beb2; font-size: 14px; margin-bottom: 14px; }
.breadcrumb span { opacity: .82; }
.sub-hero { min-height: 300px; }
.timeline { display: grid; gap: 14px; }
.timeline-item { padding: 18px 18px 18px 24px; border-left: 2px solid rgba(245,179,109,.55); background: rgba(255,255,255,.03); border-radius: 0 22px 22px 0; }
.contact-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.contact-table td { padding: 13px 0; border-bottom: 1px dashed rgba(255,255,255,.10); vertical-align: top; }
.qr-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 18px; }
.qr-grid figure { margin: 0; padding: 14px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 22px; }
.qr-grid img { border-radius: 18px; background: white; }
.qr-grid figcaption { padding-top: 10px; color: var(--muted); font-size: 13px; text-align: center; }
.share-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.share-btn { padding: 12px 16px; color: #fff5ef; background: linear-gradient(135deg, rgba(240,91,121,.18), rgba(105,209,223,.18)); border: 1px solid rgba(255,255,255,.10); }
.ljuGvdD0 { padding: 16px; background: #0c0a0b; border-radius: 18px; border: 1px solid rgba(255,255,255,.09); }
.kAdR5EB { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; color: #ffdbcd; }
.sqqAa0 { display: grid; grid-template-columns: 110px 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px dashed rgba(255,255,255,.08); color: #e7d4cb; }
.sqqAa0:last-child { border-bottom: 0; }
.link-panel { padding: 20px; }
.site-footer { margin-top: 34px; background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)); border-top: 1px solid rgba(255,255,255,.08); }
.footer-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 24px; padding: 28px 0 18px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; color: var(--muted); padding: 0 0 26px; font-size: 14px; }
.table-wrap { overflow-x: auto; }
.9US2C { padding: 20px; border-radius: 24px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
.muted { color: var(--muted); }
.highlight { color: #ffd8c4; }
@media (max-width: 1080px) {
  .hero-layout, .split-layout, .trust-layout, .contact-layout, .y0AJqI, .sub-hero-layout, .footer-grid { grid-template-columns: 1fr; }
  .matrix-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .video-grid, .expert-grid, .review-grid, .faq-grid, .oIjQpFaB, .step-grid, .badge-wall, .partner-wall, .qr-grid { grid-template-columns: 1fr 1fr; }
  .header-shell { grid-template-columns: 1fr; justify-items: start; }
  .main-nav { justify-content: flex-start; }
}
@media (max-width: 720px) {
  .container { width: min(100% - 20px, 1180px); }
  .video-grid, .expert-grid, .review-grid, .faq-grid, .oIjQpFaB, .step-grid, .badge-wall, .partner-wall, .matrix-grid, .qr-grid { grid-template-columns: 1fr; }
  .search-bar { grid-template-columns: 1fr; }
  .film-stats, .meta-inline { grid-template-columns: 1fr 1fr; }
  h1 { max-width: none; }
  .brand-lockup img.logo { width: 154px; }
}
