/* ==========================================================
   拿云智学教育科技有限公司 · 全站品牌标识
   1) 各子系统左上角企业 logo
   2) 各页面底部企业页脚
   ========================================================== */

/* ---------- 全站品牌页眉、页脚容器 ---------- */
:root { --brand-content-width: 1080px; --brand-title-font: 'Ma Shan Zheng', 'STXingkai', 'KaiTi', serif; }

/* ---------- 子系统标题与内容统一使用首页版心 ---------- */
.yw-hero, .yw-page-banner, .meta-hero { box-sizing: border-box; width: min(var(--brand-content-width), calc(100% - 32px)); margin: 16px auto 28px; border: 1px solid rgba(139, 105, 20, 0.38); border-radius: 6px; background: radial-gradient(ellipse 70% 90% at 20% 10%, rgba(184,58,43,.05), transparent 60%), radial-gradient(ellipse 55% 80% at 85% 90%, rgba(139,115,85,.08), transparent 55%), linear-gradient(168deg,#f8f0e2 0%,#f4e8d5 55%,#f1e0ca 100%); box-shadow: inset 0 0 0 4px rgba(253,250,245,.85), inset 0 0 0 5px rgba(139,105,20,.2), 0 14px 40px rgba(60,50,35,.1); }
.meta-hero { border-radius: 6px; }
.meta-hero::after { left: 8%; right: 8%; }
.yw-hero { padding: 42px 28px 44px; overflow: hidden; }
.yw-hero::after { left: 8%; right: 8%; }
.yw-page-banner { padding: 42px 28px 38px; }
.yw-hero .yw-hero-title, .yw-page-banner .banner-title, .meta-hero .meta-hero-title { font-family: var(--brand-title-font); font-size: clamp(26px, 2.8vw, 30px); font-weight: 400; letter-spacing: 6px; line-height: 1.35; }
.yw-hero .yw-hero-slogan, .yw-page-banner .banner-subtitle, .meta-hero .meta-hero-slogan { font-family: 'Noto Serif SC', 'STSong', 'SimSun', serif; font-size: 14px; letter-spacing: 3px; line-height: 1.8; }
.yw-page-banner .banner-title { font-weight: 400; }
@media (max-width: 640px) { .yw-hero .yw-hero-title, .yw-page-banner .banner-title, .meta-hero .meta-hero-title { font-size: clamp(24px, 7vw, 30px); letter-spacing: 4px; } }
.yw-page-content, .yw-main:not(.full-width), .yw-container, .pr-container:not(.full-width), .rt-container, .ra-container, .es-main, .rv-wrap, .wb-container, .fc-wrap { box-sizing: border-box; width: min(var(--brand-content-width), calc(100% - 32px)); max-width: none; margin-left: auto; margin-right: auto; }
.yw-head:has(+ .yw-hero) { display: none; }
.meta-header { display: none; }
.yw-head:not(:has(+ .yw-hero)) .yw-head-inner, .rv-header { position: relative; width: min(var(--brand-content-width), calc(100% - 32px)); margin: 16px auto 28px; padding: 18px 24px; border: 1px solid rgba(139,105,20,.38); border-radius: 6px; background: linear-gradient(168deg,#f8f0e2,#f1e0ca); box-shadow: inset 0 0 0 4px rgba(253,250,245,.85), 0 14px 40px rgba(60,50,35,.08); }
.yw-head:not(:has(+ .yw-hero)) .brand-corner, .rv-header .brand-corner { display: none; }
.yw-hero-back { bottom: 14px; }
.brand-corner { top: 18px; left: 22px; }
.brand-corner img { height: 42px; }
.brand-row { max-width: var(--brand-content-width); margin: 16px auto -4px; padding: 0 8px; }
.brand-corner {
    position: absolute;
    top: 14px;
    left: 20px;
    z-index: 30;
    display: inline-flex;
    align-items: center;
    line-height: 0;
    text-decoration: none;
    opacity: 0.95;
    transition: opacity 0.2s ease;
}
.brand-corner:hover { opacity: 1; }
.yw-title-panel .brand-corner { cursor: default; }
.brand-corner img {
    display: block;
    height: 38px;
    width: auto;
}

/* 嵌入顶部导航条（flex 行）时的行内形态 */
.brand-corner.brand-inline {
    position: static;
    top: auto;
    left: auto;
    flex-shrink: 0;
}
.brand-corner.brand-inline img { height: 34px; }

/* 独立品牌行（置于顶部栏上方，不改变原有布局） */
.brand-row {
    display: flex;
    justify-content: flex-start;
    margin: 0 0 10px;
}
.brand-row img {
    display: block;
    height: 34px;
    width: auto;
}

/* ---------- 企业页脚 ---------- */
.brand-footer {
    position: relative;
    box-sizing: border-box;
    width: min(var(--brand-content-width), calc(100% - 32px));
    margin: 52px auto 24px;
    padding: 42px 20px 10px;
    text-align: center;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    font-family: 'Noto Serif SC', 'STSong', 'SimSun', serif;
}
.brand-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 8%;
    right: 8%;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(139,105,20,.18) 18%, rgba(184,58,43,.52) 50%, rgba(139,105,20,.18) 82%, transparent);
}
.brand-footer-inner::before {
    content: '◇';
    position: absolute;
    top: -38px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(168,50,50,.62);
    font-size: 14px;
    line-height: 20px;
}
.brand-footer-inner {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}
.brand-footer-logo {
    display: block;
    height: 36px;
    width: auto;
    opacity: 0.9;
}
.brand-footer-company {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    color: #5b4c37;
}
.brand-footer-slogan {
    font-size: 13px;
    letter-spacing: 4px;
    color: rgba(107, 90, 66, 0.72);
}
.brand-footer-copyright { margin-top: 8px; padding-top: 10px; border-top: 1px solid rgba(139,105,20,.14); color: rgba(107,90,66,.62); font: 12px/1.6 sans-serif; letter-spacing: .04em; }

@media (max-width: 720px) {
    .yw-hero, .yw-page-banner, .meta-hero { width: calc(100% - 20px); padding-left: 16px; padding-right: 16px; }
    .yw-head:not(:has(+ .yw-hero)) .yw-head-inner, .rv-header { width: calc(100% - 20px); margin-top: 8px; padding: 14px 12px; }
    .brand-corner { top: 12px; left: 12px; }
    .brand-corner img { height: 30px; }
    .brand-corner.brand-inline img { height: 28px; }
    .brand-row img { height: 28px; }
    .brand-footer { margin-top: 34px; padding: 42px 14px 8px; }
    .brand-footer-logo { height: 30px; }
    .brand-footer-company { font-size: 13px; }
    .brand-footer-slogan { font-size: 12px; letter-spacing: 2px; }
}
