:root {
    --navy: #0b315f;
    --navy-deep: #072b58;
    --blue: #174f82;
    --gold: #d1a552;
    --gold-soft: #f1dfb4;
    --ink: #12365f;
    --muted: #7d8fa5;
    --line: #dfe8f1;
    --mist: #f5f9fd;
}

* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; }
body.huiwai-home { margin: 0; padding: 0 !important; overflow-x: hidden; color: var(--ink); background: #fff; font-family: "Microsoft YaHei UI", "PingFang SC", "Noto Sans CJK SC", "Noto Sans SC", Arial, sans-serif; font-size: 16px; line-height: 1.55; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.huiwai-home button, .huiwai-home input, .huiwai-home select { font: inherit; }
.huiwai-home button { border: 0; }
.huiwai-home a { color: inherit; text-decoration: none; }
.huiwai-home img { display: block; max-width: 100%; }
.page-container { width: min(1320px, calc(100% - 64px)); margin: 0 auto; }
.icon-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.ui-icon { width: 1em; height: 1em; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

.site-header { position: absolute; z-index: 20; top: 0; left: 0; width: 100%; height: 64px; border-bottom: 1px solid rgba(216,228,238,.9); background: rgba(255,255,255,.96); box-shadow: 0 5px 18px rgba(7,43,88,.045); backdrop-filter: blur(12px); transition: background .25s ease, box-shadow .25s ease; }
.site-header.scrolled { position: fixed; background: rgba(255,255,255,.96); box-shadow: 0 8px 30px rgba(7,43,88,.08); backdrop-filter: blur(12px); }
.header-inner { width: min(1320px, calc(100% - 64px)); height: 100%; margin: 0 auto; display: flex; align-items: center; }
.brand { flex: 0 0 auto; display: inline-flex; align-items: center; }
.brand-mark { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; overflow: hidden; }
.brand-mark img { width: 100%; height: 100%; object-fit: contain; }
.main-nav { margin-left: 34px; display: flex; align-items: stretch; gap: 34px; height: 100%; }
.main-nav a, .main-nav button { position: relative; padding: 0; display: inline-flex; align-items: center; color: #294866; background: transparent; font-size: 14px; font-weight: 500; line-height: 1; letter-spacing: .015em; white-space: nowrap; cursor: pointer; }
.main-nav a::after, .main-nav button::after { content: ""; position: absolute; left: 50%; bottom: 7px; width: 0; height: 2px; transform: translateX(-50%); background: var(--navy); transition: width .2s ease; }
.main-nav a:hover::after, .main-nav button:hover::after, .main-nav .active::after { width: 18px; }
.main-nav .active { color: var(--navy); }
.header-tools { margin-left: auto; display: flex; align-items: center; gap: 13px; }
.language-switch { display: inline-flex; align-items: center; gap: 5px; color: #8d9cad; font-size: 13px; }
.language-switch a { padding: 3px 1px; color: #8d9cad; font-weight: 500; }
.language-switch a.active { color: var(--navy); }
.login-link { padding: 0; color: var(--navy); background: transparent; font-size: 13px; font-weight: 500; cursor: pointer; }
.huiwai-home .consult-button { min-height: 34px; padding: 0 15px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; color: #fff; background: var(--navy); font-size: 13px; font-weight: 600; cursor: pointer; }
.huiwai-home .consult-button:hover, .huiwai-home .consult-button:focus { color: #fff; background: #114476; }
.search-button, .menu-button { display: none; color: var(--navy); background: rgba(255,255,255,.78); cursor: pointer; }
.search-button { width: 36px; height: 36px; padding: 0; border-radius: 10px; align-items: center; justify-content: center; font-size: 17px; line-height: 1; }
.search-button .ui-icon { display: block; }
.menu-button { position: relative; z-index: 2; width: 36px; height: 36px; padding: 8px; border-radius: 10px; touch-action: manipulation; }
.menu-button span { display: block; height: 2px; margin: 4px 0; border-radius: 2px; background: var(--navy); }

.hero-section { position: relative; height: 666px; overflow: hidden; background: #e9f5fc url("../../img/huiwai/flash01.png") no-repeat center top / 100% 100%; }
.hero-inner { position: relative; z-index: 2; padding-top: 164px; }
.hero-copy { width: 560px; }
.eyebrow { margin: 0 0 24px; color: #c29442; font-size: 14px; font-weight: 700; line-height: 1.5; }
.hero-copy h1 { margin: 0; color: #082f5b; font-family: "STZhongsong", "Songti SC", "Noto Serif CJK SC", SimSun, serif; font-size: clamp(48px, 4vw, 56px); font-weight: 700; line-height: 1.25; letter-spacing: .01em; }
.hero-copy h1 span { display: block; }
.hero-subtitle { margin: 24px 0 28px; color: #526d88; font-size: 15px; }
.hero-search { width: 472px; max-width: 100%; height: 52px; padding: 4px 5px 4px 17px; border: 1px solid #d7a13e; border-radius: 11px; display: flex; align-items: center; background: #fff; box-shadow: none; }
.hero-search > .ui-icon { flex: 0 0 16px; margin-right: 11px; color: #214e78; font-size: 16px; }
.hero-search textarea { min-width: 0; height: 34px; flex: 1; padding: 10px 7px 0 0; overflow: hidden; resize: none; border: 0; outline: 0; color: var(--ink); background: transparent; font: inherit; font-size: 12px; line-height: 15px; }
.hero-search textarea::placeholder { color: #aab9ca; opacity: 1; }
.hero-search select { flex: 0 0 98px; width: 98px; height: 40px; padding: 0 3px; border: 0; outline: 0; color: #12385f; background: transparent; font-size: 12px; cursor: pointer; }
.hero-search button { flex: 0 0 69px; width: 69px; height: 42px; padding: 0; border-radius: 9px; color: #fff; background: #cda14e; font-size: 12px; font-weight: 700; cursor: pointer; }
.trust-panel { position: absolute; z-index: 4; left: 50%; bottom: 0; min-height: 100px; padding: 15px 30px; transform: translateX(-50%); border-radius: 12px 12px 0 0; display: grid; grid-template-columns: repeat(4, 1fr); background: rgba(255,255,255,.96); box-shadow: 0 14px 38px rgba(17,55,91,.08); }
.trust-panel article { min-width: 0; padding: 0 28px; display: flex; align-items: center; gap: 15px; border-right: 1px solid var(--line); }
.trust-panel article:last-child { border-right: 0; }
.trust-icon { flex: 0 0 43px; width: 43px; height: 43px; display: inline-flex; align-items: center; justify-content: center; }
.trust-icon img { width: 43px; height: 43px; object-fit: contain; }
.trust-panel h3 { margin: 0 0 2px; color: var(--navy); font-size: 14px; font-weight: 600; }
.trust-panel p { margin: 0; color: #8493a3; font-size: 12px; white-space: nowrap; }

.services-section {
    padding: 64px 0 70px;
    border-top: 1px solid #e7eef5;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 10px 24px rgba(14, 52, 81, .04);
}
.service-mosaic { height: 440px; display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 14px; }
.service-card { position: relative; overflow: hidden; border-radius: 12px; color: #fff; background-position: center; background-size: cover; cursor: pointer; }
.service-card::before { content: ""; position: absolute; inset: 0; background-position: center; background-size: cover; transition: transform .4s ease; }
.service-card:hover::before { transform: scale(1.035); }
.service-life { grid-row: 1 / 3; }
.service-life::before { background-image: url("../../img/huiwai/hainan-day-hero-v2.png"); }
.service-local::before { background-image: url("../../img/huiwai/local-old-town-v2.png"); }
.service-stay::before { background-image: url("../../img/huiwai/ocean-hotel-room-v2.png"); }
.service-transport::before { background-image: url("../../img/huiwai/coastal-drive.jpg"); }
.service-leisure::before { background-image: url("../../img/huiwai/hainan-day-hero-v2.png"); background-position: 22% 60%; }
.card-overlay { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, rgba(5,28,50,.78), rgba(5,28,50,.24) 72%); }
.service-life .card-overlay { background: linear-gradient(90deg, rgba(5,34,58,.84), rgba(5,34,58,.18) 78%); }
.service-content { position: absolute; z-index: 2; inset: 0; padding: 42px 40px; display: flex; flex-direction: column; align-items: flex-start; color: #fff; }
.service-content h3, .small-card-copy h3 { margin: 0; color: #fff; font-family: "STZhongsong", "Songti SC", SimSun, serif; font-size: 31px; font-weight: 500; line-height: 1.25; text-shadow: 0 2px 10px rgba(0,20,40,.72); }
.service-content > p, .small-card-copy p { margin: 9px 0 0; color: rgba(255,255,255,.82); font-size: 14px; }
.light-button { margin-top: 18px; padding: 8px 15px; border-radius: 7px; display: inline-flex; align-items: center; gap: 5px; color: var(--navy); background: #fff; font-size: 12px; cursor: pointer; }
.service-content ul { margin: auto 0 0; padding: 0; list-style: none; color: rgba(255,255,255,.94); font-size: 14px; line-height: 1.8; text-shadow: 0 1px 7px rgba(0,20,40,.78); }
.small-card-copy { position: absolute; z-index: 2; inset: 0; padding: 25px 24px; display: flex; flex-direction: column; align-items: flex-start; color: #fff; }
.small-card-copy h3 { font-size: 23px; }
.small-card-copy p { margin-top: 4px; font-size: 11px; }
.small-card-copy > span { margin-top: auto; padding: 6px 11px; border: 1px solid rgba(255,255,255,.7); border-radius: 7px; display: inline-flex; align-items: center; gap: 4px; color: #fff; font-size: 11px; }

.featured-section { padding: 0 0 68px; background: #fff; }
.featured-heading { margin-bottom: 36px; display: flex; align-items: center; justify-content: space-between; }
.featured-heading h2, .why-section h2 { margin: 0; color: var(--navy); font-family: "STZhongsong", "Songti SC", SimSun, serif; font-size: 30px; font-weight: 700; }
.featured-heading h2 span { color: #91a2ba; font-weight: 500; }
.featured-heading > button, .featured-heading > a { padding: 9px 15px; border: 1px solid var(--line); border-radius: 8px; display: inline-flex; align-items: center; gap: 5px; color: var(--navy); background: #fff; font-size: 12px; font-weight: 500; cursor: pointer; }
.featured-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 38px 20px; }
.feature-card { position: relative; min-width: 0; height: 366px; overflow: hidden; border: 1px solid var(--line); border-radius: 11px; background: #fff; cursor: pointer; transition: transform .2s ease, box-shadow .2s ease; }
.feature-card:hover { transform: translateY(-3px); box-shadow: 0 14px 32px rgba(14,52,81,.10); }
.feature-image { height: 190px; overflow: hidden; }
.feature-image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.92) contrast(.98); transition: transform .35s ease; }
.feature-card:hover .feature-image img { transform: scale(1.025); }
.feature-copy { padding: 16px 18px; }
.feature-copy > span { display: inline-block; padding: 3px 9px; border-radius: 4px; color: #fff; background: #d3a64e; font-size: 11px; }
.feature-copy h3 { min-height: 25px; margin: 9px 0 4px; color: var(--navy); font-size: 18px; font-weight: 600; }
.feature-copy strong { display: block; color: var(--navy); font-size: 17px; font-weight: 700; }
.feature-copy p { margin: 9px 0 2px; display: flex; align-items: center; gap: 4px; color: #a19373; font-size: 12px; }
.feature-copy em { display: inline-flex; align-items: center; gap: 5px; color: var(--navy); font-size: 12px; font-style: normal; }
.feature-copy > .feature-consult-button { position: absolute; z-index: 3; right: 14px; bottom: 12px; min-height: 34px; padding: 0 12px; border: 1px solid var(--navy); border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 5px; color: #fff; background: var(--navy); font-size: 12px; font-weight: 700; line-height: 1; white-space: nowrap; cursor: pointer; }
.feature-copy > .feature-consult-button:hover, .feature-copy > .feature-consult-button:focus { color: #fff; background: #164b7b; }
.feature-consult-button .ui-icon { font-size: 15px; }
.feature-card-poster { border: 0; color: #fff; }
.feature-card-poster .feature-image { position: absolute; inset: 0; height: auto; }
.feature-card-poster .feature-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3,24,44,.08), rgba(3,24,44,.86)); }
.feature-card-poster .feature-copy { position: absolute; z-index: 1; inset: 0; padding: 24px 22px; display: flex; flex-direction: column; align-items: flex-start; }
.feature-card-poster .feature-copy h3 { min-height: 0; margin-top: 16px; color: #fff; font-size: 24px; }
.feature-card-poster .feature-copy strong { color: #fff; font-size: 20px; }
.feature-card-poster .feature-copy p { margin-top: auto; color: #ead5a5; }
.feature-card-poster .feature-copy em { margin-top: 8px; color: #fff; }
.feature-card-poster .feature-copy > .feature-consult-button { border-color: #d5a348; color: var(--navy); background: #f2c66f; }
.feature-card-poster .feature-copy > .feature-consult-button:hover, .feature-card-poster .feature-copy > .feature-consult-button:focus { color: var(--navy); background: #ffd98f; }

.cta-section { padding: 0 0 66px; background: #fff; }
.cta-box { min-height: 164px; padding: 30px 40px; border-radius: 12px; display: flex; align-items: center; justify-content: space-between; gap: 40px; color: #fff; background: linear-gradient(90deg, rgba(20,65,110,.96), rgba(31,83,133,.82)), url("../../img/huiwai/hainan-day-hero-v2.png") center 66% / cover; }
.cta-copy h2 { margin: 0 0 10px; font-family: "STZhongsong", "Songti SC", SimSun, serif; font-size: 30px; font-weight: 500; }
.cta-copy p { margin: 0 0 14px; color: rgba(255,255,255,.72); font-size: 13px; }
.cta-copy > span { color: #92d4a4; font-size: 12px; }
.cta-copy > span i { width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; display: inline-block; background: #55d789; box-shadow: 0 0 0 4px rgba(85,215,137,.12); }
.cta-actions { width: 240px; display: grid; gap: 10px; }
.cta-actions button, .cta-actions a { min-height: 48px; border: 1px solid rgba(255,255,255,.24); border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; color: #fff; background: rgba(7,34,67,.28); font-size: 13px; font-weight: 600; cursor: pointer; }
.cta-actions button:first-child, .cta-actions a:first-child { border-color: #d8aa54; background: #d8aa54; }

.why-section { padding: 0 0 64px; background: #fff; }
.why-section h2 { margin-bottom: 38px; }
.advantage-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.advantage-grid article { min-height: 166px; padding: 26px 25px; border: 1px solid #e2ebf4; border-radius: 11px; text-align: left; background: #f7fafe; }
.advantage-grid article > span { width: 42px; height: 42px; margin: 0 0 17px; display: flex; align-items: center; justify-content: center; }
.advantage-grid article > span img { width: 42px; height: 42px; object-fit: contain; }
.advantage-grid h3 { margin: 0 0 8px; color: var(--navy); font-size: 17px; font-weight: 600; }
.advantage-grid p { margin: 0; color: #7d91a9; font-size: 12px; }
.global-statement-section { padding: 48px 0; border-top: 1px solid #e2ebf2; background: #f5f9fd; }
.global-statement-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.global-statement-card { min-width: 0; padding: 28px 30px; border: 1px solid #dce7ef; border-radius: 14px; background: #fff; box-shadow: 0 12px 32px rgba(11,49,95,.05); }
.global-compliance-card { border-color: #e8d8b9; background: #fffbf3; }
.global-statement-heading { margin-bottom: 20px; display: flex; align-items: center; gap: 12px; }
.global-statement-heading > span { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #9b722d; background: #f3e5c8; font-family: Georgia, serif; font-size: 12px; font-weight: 700; }
.global-statement-heading h2 { margin: 0; color: var(--navy); font-family: "STZhongsong", "Songti SC", SimSun, serif; font-size: 22px; line-height: 1.35; }
.global-statement-card ol { margin: 0; padding: 0; display: grid; gap: 13px; list-style: none; }
.global-statement-card li { min-width: 0; display: grid; grid-template-columns: 26px 1fr; gap: 10px; align-items: start; }
.global-statement-card li b { width: 24px; height: 24px; border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: var(--navy); font-size: 11px; }
.global-compliance-card li b { background: #b28233; }
.global-statement-card li p { min-width: 0; margin: 0; color: #5f778d; font-size: 13px; line-height: 1.75; overflow-wrap: anywhere; }
html[lang="ru"] .global-statement-heading h2 { font-family: Georgia, "Times New Roman", serif; font-size: 21px; }

.site-footer { padding: 54px 0 0; color: #fff; background: #092f63; }
.footer-grid { padding-bottom: 42px; display: grid; grid-template-columns: 2.5fr 1fr 1fr .9fr; gap: 64px; }
.footer-brand img { width: 82px; height: auto; object-fit: contain; }
.footer-brand h2 { margin: 9px 0 8px; font-family: "STZhongsong", "Songti SC", SimSun, serif; font-size: 20px; }
.footer-brand p { max-width: 440px; margin: 0; color: rgba(255,255,255,.58); font-size: 12px; }
.footer-links h3 { margin: 0 0 15px; color: #fff; font-size: 14px; font-weight: 600; }
.footer-links button, .footer-links a { display: block; margin: 7px 0; padding: 0; color: rgba(255,255,255,.58); background: transparent; font-size: 12px; text-align: left; cursor: pointer; }
.footer-links button:hover, .footer-links a:hover { color: #fff; }
.footer-bottom { position: relative; padding: 19px 0 28px; border-top: 1px solid rgba(255,255,255,.09); color: rgba(255,255,255,.42); font-size: 11px; }
.footer-bottom p { max-width: calc(100% - 110px); margin: 0 0 5px; }
.footer-bottom span { position: absolute; right: 0; top: 19px; }
.footer-bottom b { color: #fff; }
.floating-service { position: fixed; z-index: 80; right: max(26px, calc((100vw - 1320px) / 2)); bottom: 28px; min-width: 0; width: 68px; height: 68px; padding: 0; border: 3px solid #fff; border-radius: 50%; display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; color: #fff; background: #d19d3e; box-shadow: 0 12px 30px rgba(7,43,88,.24); font-size: 13px; font-weight: 700; line-height: 1; transition: transform .2s ease, background .2s ease, box-shadow .2s ease; }
.floating-service::after { content: ""; position: absolute; top: 2px; right: 3px; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #38ad67; }
.floating-service:hover, .floating-service:focus { color: #fff; background: #bc8529; box-shadow: 0 16px 36px rgba(7,43,88,.3); transform: translateY(-2px); }
.floating-service .ui-icon { font-size: 20px; }
.floating-service .fa { font-size: 20px; }
.floating-service span { max-width: 58px; overflow-wrap: anywhere; text-align: center; white-space: normal; }
html[lang="ru"] .floating-service { min-width: 0; width: 82px; height: 82px; font-size: 11px; }
html[lang="ru"] .floating-service span { max-width: 70px; }

.mobile-drawer { position: fixed; z-index: 100; top: 0; right: 0; width: min(390px, 88vw); height: 100vh; padding: 24px; transform: translateX(102%); background: #fff; box-shadow: -20px 0 50px rgba(3,28,48,.16); transition: transform .28s ease; flex-direction: column; }
.mobile-drawer.open { display: flex; transform: translateX(0); }
.drawer-head { padding-bottom: 18px; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; color: var(--navy); font-family: "Songti SC", serif; }
.drawer-head button { width: 36px; height: 36px; color: var(--navy); background: transparent; font-size: 30px; cursor: pointer; }
.mobile-drawer nav { padding: 22px 0; display: flex; flex-direction: column; }
.mobile-drawer nav a, .mobile-drawer nav button { padding: 12px 2px; color: var(--navy); background: transparent; font-weight: 700; text-align: left; }
.mobile-drawer nav .active { color: var(--gold); }
.drawer-footer { margin-top: auto; padding-top: 20px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; }
.drawer-mask { position: fixed; z-index: 90; inset: 0; pointer-events: none; opacity: 0; background: rgba(4,28,47,.48); transition: opacity .25s ease; }
.drawer-mask.open { pointer-events: auto; opacity: 1; }
body.drawer-open { overflow: hidden; }
.toast-message { position: fixed; z-index: 120; left: 50%; bottom: 32px; max-width: min(460px, calc(100% - 32px)); padding: 12px 18px; transform: translate(-50%, 25px); border-radius: 9px; color: #fff; background: #071f36; box-shadow: 0 16px 40px rgba(0,0,0,.22); opacity: 0; pointer-events: none; text-align: center; font-size: 13px; transition: opacity .22s ease, transform .22s ease; }
.toast-message.show { opacity: 1; transform: translate(-50%, 0); }

html[lang="ru"] body.huiwai-home { font-family: "Segoe UI", Arial, sans-serif; }
html[lang="ru"] .hero-copy { width: 780px; }
html[lang="ru"] .hero-copy h1 { font-family: Georgia, "Times New Roman", serif; font-size: 52px; font-weight: 700; line-height: 1.08; letter-spacing: -.025em; }
html[lang="ru"] .hero-copy h1 span { white-space: nowrap; }
html[lang="ru"] .service-content h3,
html[lang="ru"] .small-card-copy h3,
html[lang="ru"] .featured-heading h2,
html[lang="ru"] .why-section h2,
html[lang="ru"] .feature-card-poster .feature-copy h3,
html[lang="ru"] .cta-copy h2,
html[lang="ru"] .footer-brand h2 { font-family: Georgia, "Times New Roman", serif; letter-spacing: -.015em; }
html[lang="ru"] .small-card-copy h3 { font-size: 21px; }
html[lang="ru"] .trust-panel h3 { font-size: 13px; }
html[lang="ru"] .trust-panel p { font-size: 11px; }

@media (max-width: 1260px) {
    .header-inner { width: calc(100% - 36px); }
    .main-nav { margin-left: 22px; gap: 23px; }
    .main-nav a, .main-nav button { font-size: 13px; }
    .trust-panel article { padding: 0 16px; }
    .trust-panel p { white-space: normal; }
    html[lang="ru"] .hero-copy { width: 680px; }
    html[lang="ru"] .hero-copy h1 { font-size: 46px; }
}

@media (max-width: 1020px) {
    .page-container { width: calc(100% - 40px); }
    .main-nav { display: none; }
    .menu-button { display: block; }
    .search-button { display: inline-flex; }
    .featured-grid { grid-template-columns: repeat(2, 1fr); }
    .advantage-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 2fr 1fr 1fr; }
    .footer-links:last-child { grid-column: 2; }
}

@media (max-width: 767px) {
    body.huiwai-home { width: 100%; max-width: 100%; overflow-x: hidden; }
    .page-container { width: calc(100% - 28px); }
    .site-header, .site-header.scrolled {
        position: fixed;
        height: 80px;
        border-bottom: 1px solid rgba(32, 78, 116, .10);
        background: linear-gradient(90deg, rgba(248, 252, 255, .97), rgba(237, 247, 253, .94));
        box-shadow: 0 7px 22px rgba(8, 49, 84, .06);
        -webkit-backdrop-filter: blur(14px);
        backdrop-filter: blur(14px);
    }
    .header-inner { width: calc(100% - 28px); }
    .brand-mark { width: 52px; height: 52px; }
    .header-tools { gap: 8px; }
    .header-tools > .login-link, .header-tools > .consult-button { display: none; }
    .language-switch { font-size: 15px; }
    .search-button, .menu-button { width: 38px; height: 38px; background: rgba(255,255,255,.72); }
    .search-button { display: inline-flex; }
    .menu-button { display: block; }

    .hero-section { height: 282px; margin-bottom: 90px; overflow: visible; background-position: 43% top; background-size: auto 282px; }
    .hero-inner { padding-top: 114px; }
    .hero-copy { width: 232px; padding: 14px 17px; border-radius: 13px; background: rgba(255,255,255,.9); box-shadow: 0 10px 28px rgba(12,55,91,.06); backdrop-filter: blur(4px); }
    .eyebrow { margin-bottom: 8px; font-size: 11px; }
    .hero-copy h1 { font-size: 19px; line-height: 1.26; }
    html[lang="ru"] .hero-copy { width: min(292px, calc(100vw - 56px)); padding: 13px 16px 14px; }
    html[lang="ru"] .hero-copy h1 { font-size: 19px; line-height: 1.12; letter-spacing: -.018em; text-wrap: balance; }
    html[lang="ru"] .hero-copy h1 span { white-space: normal; }
    html[lang="ru"] .hero-subtitle { max-width: 245px; line-height: 1.45; }
    .hero-subtitle { margin: 8px 0 0; font-size: 10px; }
    .hero-search { display: none; }
    .trust-panel { position: absolute; left: 14px; bottom: -90px; width: calc(100% - 28px); min-height: 90px; margin: 0; padding: 12px 4px; transform: none; border-radius: 0 0 12px 12px; grid-template-columns: repeat(4, 1fr); box-shadow: none; }
    .trust-panel article { padding: 0 3px; gap: 6px; border: 0; flex-direction: column; justify-content: center; text-align: center; }
    .trust-icon { width: 39px; height: 39px; flex-basis: 39px; font-size: 14px; }
    .trust-icon img { width: 39px; height: 39px; }
    .trust-panel h3 { font-size: 11px; }
    html[lang="ru"] .trust-panel h3 { font-size: 9.5px; line-height: 1.16; letter-spacing: -.015em; overflow-wrap: normal; hyphens: none; }
    .trust-panel p { display: none; }

    .services-section { padding: 14px 0 36px; }
    .service-mosaic { height: auto; grid-template-columns: repeat(2, 1fr); grid-template-rows: 124px 116px 116px; gap: 7px; }
    .service-life { grid-column: 1 / 3; grid-row: auto; }
    .card-overlay { background: linear-gradient(90deg, rgba(4,28,50,.76), rgba(4,28,50,.24) 78%); }
    .service-life .card-overlay { background: linear-gradient(90deg, rgba(4,31,54,.82), rgba(4,31,54,.28) 76%); }
    .service-content { padding: 13px 15px; }
    .service-content, .small-card-copy { color: #fff; }
    .service-content h3, .small-card-copy h3 { color: #fff; text-shadow: 0 1px 8px rgba(0,25,48,.55); }
    .service-content h3 { max-width: 54%; font-size: 18px; }
    .service-content > p { max-width: 54%; margin-top: 2px; font-size: 10px; }
    .light-button { margin-top: 8px; padding: 6px 10px; font-size: 10px; }
    .service-content ul { position: absolute; right: 13px; top: 14px; width: 42%; margin: 0; font-size: 10px; line-height: 1.4; text-align: right; }
    .small-card-copy { padding: 12px 10px; }
    .small-card-copy h3 { font-size: 15px; }
    html[lang="ru"] .small-card-copy h3 { max-width: 100%; font-size: 14px; line-height: 1.08; letter-spacing: -.02em; text-wrap: balance; }
    html[lang="ru"] .service-content h3 { max-width: 52%; font-size: 15px; line-height: 1.12; }
    html[lang="ru"] .service-content > p { max-width: 52%; font-size: 8px; line-height: 1.25; }
    html[lang="ru"] .small-card-copy p { max-width: 145px; font-size: 10px; line-height: 1.3; }
    html[lang="ru"] .service-content > p { max-width: 52%; font-size: 10px; line-height: 1.3; }
    .small-card-copy p { margin-top: 3px; font-size: 10px; line-height: 1.3; }
    .small-card-copy > span { padding: 4px 8px; font-size: 10px; }

    .featured-section { padding-bottom: 32px; }
    .featured-heading { margin-bottom: 17px; }
    .featured-heading h2 { min-width: 0; }
    .featured-heading h2 { font-size: 18px; }
    .featured-heading > button, .featured-heading > a { flex: 0 0 auto; margin-left: 8px; padding: 5px 2px; border: 0; font-size: 10px; white-space: nowrap; }
    .featured-grid { grid-template-columns: repeat(2, 1fr); gap: 12px 8px; }
    .feature-card { height: auto; min-height: 284px; border-radius: 10px; }
    .feature-card:nth-child(5), .feature-card:nth-child(n+7) { display: none; }
    .feature-image { height: 130px; }
    .feature-copy { height: auto; min-height: 154px; padding: 10px 10px 8px; display: flex; flex-direction: column; align-items: flex-start; }
    .feature-copy > span { padding: 2px 7px; font-size: 9px; }
    .feature-copy h3 { margin: 6px 0 2px; font-size: 14px; }
    .feature-copy strong { font-size: 15px; }
    .feature-copy p { margin: 6px 0 0; font-size: 9px; }
    .feature-copy em { display: none; }
    .feature-copy > .feature-consult-button { position: static; width: 100%; min-height: 32px; margin-top: 10px; padding: 0 7px; flex: 0 0 auto; font-size: 10px; }
    .feature-consult-button .ui-icon { font-size: 14px; }
    .feature-card-poster { grid-column: 1 / 3; height: 140px; min-height: 140px; }
    .feature-card-poster .feature-copy { height: auto; min-height: 0; padding: 13px 14px 16px; }
    .feature-card-poster .feature-copy h3 { margin-top: 16px; font-size: 17px; }
    .feature-card-poster .feature-copy strong { font-size: 17px; }
    .feature-card-poster .feature-copy p { position: absolute; top: 11px; right: 13px; margin: 0; }
    .feature-card-poster .feature-copy em { display: inline-flex; margin-top: auto; font-size: 10px; }
    .feature-card-poster .feature-copy > .feature-consult-button { position: absolute; right: 12px; bottom: 12px; width: auto; margin-top: 0; }

    .cta-section { padding-bottom: 28px; }
    .cta-box { width: 100%; min-height: 160px; padding: 20px 14px; border-radius: 0; display: block; }
    .cta-copy, .channel-cta > div, .concierge-process > div:first-child { padding-right: 82px; }
    .cta-copy h2 { margin-bottom: 8px; font-size: 18px; }
    .cta-copy p { margin-bottom: 7px; font-size: 10px; }
    .cta-actions { width: 100%; margin-top: 16px; grid-template-columns: 1fr; gap: 8px; }
    .cta-actions button, .cta-actions a { min-height: 42px; font-size: 10px; }

    .why-section { padding-bottom: 26px; }
    .why-section h2 { margin-bottom: 18px; text-align: center; font-size: 19px; }
    .advantage-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .advantage-grid article { min-height: 125px; padding: 14px 13px; }
    .advantage-grid article > span { width: 37px; height: 37px; margin-bottom: 11px; font-size: 14px; }
    .advantage-grid article > span img { width: 37px; height: 37px; }
    .advantage-grid h3 { margin-bottom: 5px; font-size: 13px; }
    .advantage-grid p { font-size: 9px; }
    .global-statement-section { padding: 28px 0; }
    .global-statement-grid { grid-template-columns: 1fr; gap: 12px; }
    .global-statement-card { padding: 20px 17px; border-radius: 11px; }
    .global-statement-heading { margin-bottom: 15px; gap: 10px; }
    .global-statement-heading > span { flex-basis: 30px; width: 30px; height: 30px; }
    .global-statement-heading h2, html[lang="ru"] .global-statement-heading h2 { font-size: 18px; }
    .global-statement-card ol { gap: 11px; }
    .global-statement-card li { grid-template-columns: 23px 1fr; gap: 8px; }
    .global-statement-card li b { width: 22px; height: 22px; font-size: 10px; }
    .global-statement-card li p { font-size: 12px; line-height: 1.65; }

    .site-footer { padding-top: 27px; }
    .footer-grid { padding-bottom: 20px; grid-template-columns: repeat(3, 1fr); gap: 20px 10px; }
    .footer-brand { grid-column: 1 / 4; }
    .footer-brand img { width: 50px; height: auto; float: left; margin-right: 12px; }
    .footer-brand h2 { padding-top: 8px; font-size: 17px; }
    .footer-brand p { clear: both; padding-top: 9px; font-size: 9px; }
    .footer-links:last-child { grid-column: auto; }
    .footer-links h3 { margin-bottom: 9px; font-size: 11px; }
    .footer-links button, .footer-links a { margin: 6px 0; font-size: 9px; }
    .footer-bottom { padding: 14px 0 24px; font-size: 8px; }
    .footer-bottom p { max-width: 100%; }
    .footer-bottom span { display: none; }
    .floating-service { z-index: 80; right: 14px; bottom: max(14px, env(safe-area-inset-bottom)); min-width: 0; width: 60px; height: 60px; padding: 0; border: 3px solid #fff; border-radius: 50%; flex-direction: column; gap: 2px; background: #d6a343; box-shadow: 0 8px 20px rgba(0,0,0,.18); font-size: 11px; }
    .floating-service .ui-icon { font-size: 20px; }
    .floating-service span { max-width: 54px; line-height: 1.05; overflow-wrap: anywhere; text-align: center; white-space: normal; }
    html[lang="ru"] .floating-service { min-width: 0; width: 64px; height: 64px; right: 12px; font-size: 9px; }
    html[lang="ru"] .floating-service span { max-width: 54px; }
}

@media (max-width: 390px) {
    .language-switch { font-size: 13px; }
    .hero-copy { width: 218px; }
    .hero-copy h1 { font-size: 18px; }
    html[lang="ru"] .hero-copy { width: min(284px, calc(100vw - 48px)); }
    html[lang="ru"] .hero-copy h1 { font-size: 18px; }
    html[lang="ru"] .small-card-copy h3 { font-size: 13px; }
    html[lang="ru"] .trust-panel h3 { font-size: 9px; }
}

@media (min-width: 768px) {
    html { scrollbar-gutter: stable; }
    .huiwai-life .site-header,
    .huiwai-life .site-header.scrolled,
    .channel-page .site-header,
    .channel-page .site-header.scrolled { position: fixed; top: 0; height: 64px; }
    .huiwai-life > main,
    .channel-page > main { padding-top: 64px; }
    .life-breadcrumb,
    .channel-breadcrumb,
    .inner-breadcrumb { min-height: 18px; line-height: 18px; }
}
