/* Only content defaults change. The shared official navigation/footer retain their styles. */
.has-short-drama-demo #center-page { padding-top: 60px; }
.has-short-drama-demo .hall_bottom { display: block; }
/* The homepage video continues behind the existing official navigation. */
.has-short-drama-demo[currentpage="index"] #center-page { padding-top: 0; }
.sd-demo .homepage-hero .hero-media.reveal { opacity: 1; transform: none; transition: none; }
.has-short-drama-demo[currentpage="index"] .hall_header_wrapper {
    background: #ffffff;
    transition: background-color .2s ease, box-shadow .2s ease;
}
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) {
    background: linear-gradient(180deg, #06120f9c, #06120f12);
}
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .logo_img {
    content: url('/images/hall/logo_white.png');
}
.has-short-drama-demo[currentpage="index"].en:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .en_show .logo_img {
    content: url('/images/hall/en_logo_white.png');
}
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .leftNav > .nav_item > a > span,
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) #loginBtn > span,
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .langBoxText,
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .app_nav_item_login > a > span {
    color: #fff;
}
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .black_drop,
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) .langBoxWrapper > a > img,
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) #menu-btn img {
    filter: brightness(0) invert(1);
}
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) #menu-btn:not(.menu-open)::before,
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) #menu-btn:not(.menu-open)::after { background: #fff; }
.has-short-drama-demo[currentpage="index"]:not(.sd-home-scrolled) .hall_header_wrapper:not(:hover):not(:focus-within) #menu-btn:not(.menu-open)::before { box-shadow: 0 7px 0 #fff; }
.has-short-drama-demo[currentpage="index"].sd-home-scrolled .hall_header_wrapper { box-shadow: 0 1px 12px #102d1712; }
.sd-demo .pricing-title-row { position: relative; display: flex; align-items: center; flex-wrap: wrap; gap: 9px; padding-right: 0; }
.sd-demo .pricing-plan-icon { width: 32px; height: 32px; object-fit: contain; flex: 0 0 32px; }
.sd-demo .pricing-plan-name { display: inline-flex; align-items: center; gap: 7px; }
.sd-demo .pricing-section .pricing-action.green-gradient {
    color: #fff;
    background: linear-gradient(to right, #52d680, #47cbb7);
    border-color: transparent;
}
.sd-demo .pricing-section .pricing-action.black-gradient {
    color: #fff;
    background: linear-gradient(to right, #242629, #434343);
    border-color: transparent;
}
.sd-demo .pricing-section .pricing-action.green-gradient:hover { background: linear-gradient(to right, #36bd65, #2eaf9c); }
.sd-demo .pricing-section .pricing-action.black-gradient:hover { background: linear-gradient(to right, #17191b, #303030); }
.sd-demo #ai-products .product-listen .ai-product-icon img,
.sd-demo #ai-products .product-knowledge .ai-product-icon img { width: 20px; height: 20px; }
.sd-demo .pricing-card > .pricing-badge {
    position: absolute;
    top: 16px;
    right: 16px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    padding: 3px 7px;
    border: 1px solid #b7d9c8;
    border-radius: 5px;
    background: #e9f8ef;
    color: #087b50;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 500;
    letter-spacing: 0;
}
.sd-demo .pricing-summary { min-height: 177px; }
.purchase-page .pricing-section { padding-top: 96px; }
.purchase-page .pricing-section > .container > .section-heading h1 {
    margin: 0 0 14px;
    color: #202629;
    font-size: clamp(30px, 3.2vw, 46px);
    line-height: 1.3;
    font-weight: 700;
}
.purchase-page .pricing-section .pricing-card { min-height: 100%; }
.sd-demo .pricing-section .pricing-card {
    position: relative;
    padding-top: 48px;
    transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.sd-demo .pricing-section .pricing-card:hover {
    transform: translateY(-7px);
    border-color: #9fcdb4;
    box-shadow: 0 18px 38px #152d2420;
}
.sd-demo .pricing-section .pricing-card-points:hover { border-color: #aebfd2; }
.sd-demo .pricing-section .pricing-card:focus-within {
    border-color: #7eb998;
    box-shadow: 0 0 0 3px #1593691f, 0 15px 32px #152d2418;
}
.sd-demo { font-size: 16px; line-height: normal; overflow: clip; }
.sd-demo h1, .sd-demo h2, .sd-demo h3, .sd-demo h4, .sd-demo p,
.sd-demo ul, .sd-demo li, .sd-demo button { font-family: inherit; }
.sd-demo button { cursor: pointer; }
.sd-demo a:focus-visible, .sd-demo button:focus-visible { outline: 3px solid #079e55; outline-offset: 5px; }
.sd-demo [id] { scroll-margin-top: 100px; }
.sd-demo#top .homepage-hero .value-card p { white-space: normal !important; overflow: visible !important; text-overflow: clip !important; }
.sd-demo#top .homepage-hero .value-card-body { min-width: 0 !important; max-width: 100%; }
.sd-demo .hero-value-strip .value-card { min-width: 0; }
.sd-demo .sub-copy, .sd-demo .showcase-copy, .sd-demo .mode-card, .sd-demo .sub-heading { min-width: 0; }
.sd-demo .sub-copy h1,
.sd-demo .tool-hero .sub-copy h1,
.sd-demo .solution-hero .sub-copy h1 { white-space: normal; }
.sd-demo .sub-hero-actions, .sd-demo .hero-actions { flex-wrap: wrap; }
.sd-demo .sub-button, .sd-demo .button { text-align: center; }
.sd-demo .approach-title .approach-word { white-space: nowrap; }
.sd-demo .pricing-card { min-width: 0; }
.sd-demo .pricing-feature-list li { overflow-wrap: anywhere; }
.en .sd-demo { font-family: Arial, sans-serif; }
.en .sd-demo .hero h1 { white-space: normal; letter-spacing: -.035em !important; }
.en .sd-demo .homepage-hero h1 { font-size: clamp(40px, 4.1vw, 64px) !important; }
.en .sd-demo .homepage-hero h1 span { white-space: normal !important; }
.sd-demo .sub-kicker.green { color: #087f49; }
.sd-demo .sub-dark .sub-kicker.green, .sd-demo .workflow-solution .sub-kicker.green, .sd-demo .sub-cta .sub-kicker.green { color: #61e7a0; }
.en .sd-demo .tool-hero .sub-copy h1, .en .sd-demo .solution-hero .sub-copy h1 { white-space: normal; font-size: clamp(38px, 4.1vw, 60px); }
.en .sd-demo .approach-title { letter-spacing: -.03em; }
.en .sd-demo .approach-title-line { white-space: normal; }
.en .sd-demo .approach-word { min-width: 0; }
.en .sd-demo #approach .approach-word { width: 4.1em; min-width: 0; white-space: nowrap; }
.en .sd-demo #approach .approach-card h3 {
    font-size: clamp(21px, 2vw, 28px);
    min-height: 2.72em;
}
.en .sd-demo #approach .approach-card p { min-height: 3.5em; }
.en .sd-demo .pricing-value { font-size: clamp(26px, 2.6vw, 40px); }
.en .sd-demo .pricing-title-row { padding-right: 0; }
.en .sd-demo .pricing-card-points .pricing-title-row { font-size: clamp(21px, 1.9vw, 27px); }
.en .sd-demo .pricing-summary { min-height: 205px; }
.en .sd-demo .pricing-section .section-heading p > span + span { margin-left: .3em; }
@media (min-width: 906px) and (max-width: 1100px) {
    .en .sd-demo .pricing-summary { min-height: 232px; }
}
.en .sd-demo .mode-card ul { grid-template-columns: 1fr; }
.en .sd-demo #platform .scene-card h3 { font-size: clamp(21px, 2vw, 26px); }
.en .sd-demo #platform .scene-card h3 > span { max-width: 100%; overflow-wrap: anywhere; }
@media (max-width: 905px) {
    .has-short-drama-demo #center-page { padding-top: 44px; }
    .has-short-drama-demo[currentpage="index"] #center-page { padding-top: 0; }
    .sd-demo [id] { scroll-margin-top: 70px; }
    .sd-demo .homepage-hero .hero-copy,
    .sd-demo .homepage-hero .hero-copy.reveal,
    .sd-demo .homepage-hero .hero-copy.reveal.is-visible { width: 100% !important; }
    .en .sd-demo .tool-hero .sub-copy h1, .en .sd-demo .solution-hero .sub-copy h1 { font-size: clamp(34px, 7vw, 52px); }
    .sd-demo .pricing-summary, .en .sd-demo .pricing-summary { min-height: 0; }
    .purchase-page .pricing-section { padding-top: 72px; }
    .purchase-page .pricing-section > .container > .section-heading { margin-bottom: 30px; }
    .purchase-page .pricing-section > .container > .section-heading h1 { font-size: 27px; }
    .sd-demo .pricing-title-row { padding-right: 0; padding-top: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .sd-demo .pricing-section .pricing-card { transition: none; }
    .sd-demo .pricing-section .pricing-card:hover { transform: none; }
}
@media (max-width: 520px) {
    .sd-demo .container, .sd-demo .sub-container { width: calc(100% - 36px); }
    .en .sd-demo .homepage-hero h1 { font-size: clamp(24px, 8vw, 42px) !important; }
    .en .sd-demo .homepage-hero .hero-lead { font-size: 14px; line-height: 1.7; }
    .sd-demo .hero-value-strip .value-card p { font-size: 11px !important; }
    .en .sd-demo .approach-title { font-size: clamp(32px, 8vw, 45px); }
.en .sd-demo #platform .scene-card h3 { font-size: 24px !important; letter-spacing: -.025em !important; }
}
@media (prefers-reduced-motion: reduce) {
    .sd-demo *, .sd-demo *::before, .sd-demo *::after { animation: none !important; transition: none !important; }
}
