/* ==========================================================================
   产品拍摄 · 公司宣传片拍摄  页面样式
   2026-11-08  仅用于 /p/yxtg4.html
   设计语言沿用站点：品牌蓝 #2A8FD1 / 深灰 #272727 / 浅灰底 #f6f7f9
   ========================================================================== */

.ps-wrap { background: #fff; }

/* ---------- 首屏 ---------- */
.ps-hero {
    position: relative;
    height: 560px;
    overflow: hidden;
    background: #1b1f24;
}
.ps-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .78;
    display: block;
}
.ps-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(12,18,26,.86) 0%, rgba(12,18,26,.66) 42%, rgba(12,18,26,.15) 100%);
}
.ps-hero-in {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
}
.ps-hero-txt { max-width: 640px; }
.ps-hero-txt .ps-kicker {
    display: inline-block;
    font-size: 14px;
    letter-spacing: .18em;
    color: #7fc4ec;
    border: 1px solid rgba(127,196,236,.42);
    padding: 6px 14px;
    border-radius: 2px;
    margin-bottom: 22px;
}
.ps-hero-txt h1 {
    font-size: 52px;
    line-height: 1.18;
    color: #fff;
    font-weight: 600;
    letter-spacing: .01em;
}
.ps-hero-txt h1 em {
    font-style: normal;
    color: #7fc4ec;
}
.ps-hero-txt p {
    margin-top: 20px;
    font-size: 17px;
    line-height: 1.85;
    color: rgba(255,255,255,.78);
    max-width: 560px;
}
.ps-hero-btns { margin-top: 34px; display: flex; gap: 14px; flex-wrap: wrap; }
.ps-btn {
    display: inline-flex;
    align-items: center;
    height: 52px;
    padding: 0 30px;
    font-size: 16px;
    border-radius: 3px;
    transition: .25s;
}
/* 主题的 a:link/a:visited 会盖掉单类选择器，这里提升权重 */
.ps-hero-btns a.ps-btn,
.ps-hero-btns a.ps-btn:link,
.ps-hero-btns a.ps-btn:visited,
.ps-hero-btns a.ps-btn:hover {
    color: #fff;
    text-decoration: none;
}
.ps-hero-btns a.ps-btn-main { background: #2A8FD1; border: 1px solid #2A8FD1; }
.ps-hero-btns a.ps-btn-main:hover { background: #1f7ab5; border-color: #1f7ab5; }
.ps-hero-btns a.ps-btn-ghost { background: transparent; border: 1px solid rgba(255,255,255,.55); }
.ps-hero-btns a.ps-btn-ghost:hover { background: rgba(255,255,255,.14); border-color: #fff; }
.ps-btn-main { background: #2A8FD1; color: #fff; }
.ps-btn-main:hover { background: #1f7ab5; color: #fff; }
.ps-btn-ghost { border: 1px solid rgba(255,255,255,.4); color: #fff; }
.ps-btn-ghost:hover { background: rgba(255,255,255,.12); color: #fff; }

/* ---------- 通用区块 ---------- */
.ps-sec { padding: 96px 0; }
.ps-sec-alt { background: #f6f7f9; }
.ps-head { max-width: 760px; margin-bottom: 54px; }
.ps-head .ps-label {
    font-size: 13px;
    letter-spacing: .2em;
    color: #2A8FD1;
    font-weight: 600;
    margin-bottom: 14px;
}
.ps-head h2 {
    font-size: 40px;
    line-height: 1.28;
    color: #1f2328;
    font-weight: 600;
    letter-spacing: -.01em;
}
.ps-head h2 span { color: #2A8FD1; }
.ps-head p {
    margin-top: 18px;
    font-size: 16px;
    line-height: 1.9;
    color: #6b7280;
}

/* ---------- 两大业务卡 ---------- */
.ps-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.ps-card {
    background: #fff;
    border: 1px solid #e9ecf0;
    border-radius: 6px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: box-shadow .3s, transform .3s;
}
.ps-card:hover { box-shadow: 0 18px 40px -18px rgba(16,38,60,.28); transform: translateY(-3px); }
.ps-card .ps-card-img {
    height: 260px;
    overflow: hidden;
    background: #eef1f4;
}
.ps-card .ps-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s;
}
.ps-card:hover .ps-card-img img { transform: scale(1.05); }
.ps-card-body { padding: 30px 32px 34px; flex: 1; display: flex; flex-direction: column; }
.ps-card-body h3 {
    font-size: 24px;
    color: #1f2328;
    font-weight: 600;
    margin-bottom: 12px;
}
.ps-card-body .ps-card-desc {
    font-size: 15px;
    line-height: 1.85;
    color: #6b7280;
    margin-bottom: 20px;
}
.ps-card-body ul { margin-top: auto; }
.ps-card-body ul li {
    position: relative;
    padding-left: 20px;
    font-size: 15px;
    line-height: 2;
    color: #3f4854;
}
.ps-card-body ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 13px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #2A8FD1;
    opacity: .8;
}

/* ---------- 详解：左右交替 ---------- */
.ps-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
    padding: 64px 0;
}
.ps-row + .ps-row { border-top: 1px solid #ebedf1; }
.ps-row.ps-flip .ps-row-img { order: 2; }
.ps-row-img {
    border-radius: 6px;
    overflow: hidden;
    background: #eef1f4;
    aspect-ratio: 4 / 3;
}
.ps-row-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.ps-row-txt .ps-num {
    font-size: 13px;
    letter-spacing: .18em;
    color: #2A8FD1;
    font-weight: 600;
    margin-bottom: 12px;
}
.ps-row-txt h3 {
    font-size: 28px;
    color: #1f2328;
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 16px;
}
.ps-row-txt p {
    font-size: 16px;
    line-height: 1.9;
    color: #6b7280;
}
.ps-row-txt .ps-spec {
    margin-top: 22px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.ps-row-txt .ps-spec span {
    font-size: 13px;
    color: #2A8FD1;
    background: rgba(42,143,209,.08);
    border-radius: 2px;
    padding: 6px 12px;
}

/* ---------- 流程 ---------- */
.ps-flow { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; }
.ps-step {
    background: #fff;
    border: 1px solid #e9ecf0;
    border-radius: 6px;
    padding: 28px 24px 30px;
    position: relative;
}
.ps-step .ps-step-n {
    font-size: 13px;
    font-weight: 700;
    color: #2A8FD1;
    letter-spacing: .1em;
}
.ps-step h4 {
    font-size: 18px;
    color: #1f2328;
    font-weight: 600;
    margin: 12px 0 10px;
}
.ps-step p {
    font-size: 14px;
    line-height: 1.8;
    color: #7a8493;
}
.ps-step::after {
    content: "";
    position: absolute;
    top: 38px;
    right: -11px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #cfd6de;
    border-right: 1px solid #cfd6de;
    transform: rotate(45deg);
}
.ps-step:last-child::after { display: none; }

/* ---------- 交付清单 ---------- */
.ps-deliver { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ps-dcard {
    background: #fff;
    border-radius: 6px;
    padding: 32px 30px;
    border-top: 3px solid #2A8FD1;
    box-shadow: 0 10px 30px -22px rgba(16,38,60,.3);
}
.ps-dcard h4 {
    font-size: 17px;
    color: #1f2328;
    font-weight: 600;
    margin-bottom: 14px;
}
.ps-dcard dl { font-size: 14px; line-height: 2.05; color: #6b7280; }
.ps-dcard dl div { display: flex; }
.ps-dcard dt { flex: 0 0 78px; color: #9aa3ae; }
.ps-dcard dd { flex: 1; color: #3f4854; }

/* ---------- FAQ ---------- */
.ps-faq { max-width: 900px; }
.ps-faq-item { border-bottom: 1px solid #e9ecf0; }
.ps-faq-q {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 24px 0;
    font-size: 17px;
    color: #1f2328;
    font-weight: 500;
    cursor: pointer;
    line-height: 1.6;
}
.ps-faq-q .ps-qmark {
    flex: 0 0 22px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    background: #2A8FD1;
    border-radius: 2px;
    margin-top: 2px;
}
.ps-faq-a {
    display: none;
    padding: 0 0 24px 36px;
    font-size: 15px;
    line-height: 1.95;
    color: #6b7280;
}
.ps-faq-item.on .ps-faq-a { display: block; }
.ps-faq-item.on .ps-faq-q { color: #2A8FD1; }

/* ---------- 底部 CTA ---------- */
.ps-cta {
    background: #12303f;
    padding: 76px 0;
    text-align: center;
}
.ps-cta h2 { font-size: 34px; color: #fff; font-weight: 600; }
.ps-cta p { margin-top: 14px; font-size: 16px; color: rgba(255,255,255,.72); }
.ps-cta .ps-btn { margin-top: 30px; }

/* ---------- 响应式 ---------- */
@media (max-width: 1200px) {
    .ps-hero-txt h1 { font-size: 42px; }
    .ps-flow { grid-template-columns: repeat(3, 1fr); }
    .ps-step::after { display: none; }
}
@media (max-width: 992px) {
    .ps-sec { padding: 64px 0; }
    .ps-duo, .ps-row { grid-template-columns: 1fr; gap: 32px; }
    .ps-row.ps-flip .ps-row-img { order: 0; }
    .ps-deliver { grid-template-columns: 1fr; }
    .ps-head h2 { font-size: 30px; }
    .ps-hero { height: 440px; }
    .ps-hero-txt h1 { font-size: 32px; }
}
@media (max-width: 768px) {
    .ps-hero { height: 400px; }
    .ps-hero-txt h1 { font-size: 26px; }
    .ps-hero-txt p { font-size: 15px; }
    .ps-hero-txt .ps-kicker { font-size: 12px; }
    .ps-flow { grid-template-columns: 1fr 1fr; }
    .ps-sec { padding: 48px 0; }
    .ps-head { margin-bottom: 32px; }
    .ps-head h2 { font-size: 24px; }
    .ps-card .ps-card-img { height: 200px; }
    .ps-row-txt h3 { font-size: 22px; }
}

/* ---------- 底部 CTA 区（沿用主题表单结构，仅调整留白） ---------- */
.yxtg_message1 .message2 { padding: 84px 0 96px; }
.yxtg_message1 .message2_t { margin-bottom: 0; }
.yxtg_message1 .message2_t p { max-width: 760px; }
