/* Ensure SureCart official single product section is shown prominently above custom LP */
body.postid-2032 form.wp-block-surecart-product-page {
display: block !important;
}
body.postid-2032 .elementor-element-a3c6f9f {
display: flex !important;
}
/* Scoped Styles for XinChaoVi Private Class Landing Page */
.xcv-lp-container {
–xcv-primary: #3a5da5;
–xcv-primary-hover: #24417c;
–xcv-primary-light: #f0f5ff;
–xcv-primary-border: #d4e2fc;
–xcv-dark: #102136;
–xcv-text: #2d3748;
–xcv-muted: #64748b;
–xcv-light: #f8fafc;
–xcv-card-bg: #ffffff;
–xcv-border: #e2e8f0;
–xcv-accent: #f59e0b;
–xcv-green: #10b981;
–xcv-green-light: #ecfdf5;
–xcv-yt: #ef4444;
–xcv-yt-light: #fef2f2;
–xcv-ig: #db2777;
–xcv-ig-light: #fdf2f8;
–xcv-radius: 16px;
–xcv-radius-sm: 10px;
–xcv-shadow: 0 4px 20px -2px rgba(16, 33, 54, 0.06), 0 2px 6px -1px rgba(16, 33, 54, 0.04);
–xcv-shadow-hover: 0 12px 28px -4px rgba(58, 93, 165, 0.12), 0 4px 10px -2px rgba(16, 33, 54, 0.05);
font-family: -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, Helvetica, Arial, sans-serif;
color: var(–xcv-text);
line-height: 1.6;
max-width: 1080px;
margin: 32px auto 0;
padding: 0 16px;
box-sizing: border-box;
}
.xcv-lp-container * {
box-sizing: border-box;
}
/* Section Common */
.xcv-section {
margin-bottom: 56px;
}
.xcv-section-header {
text-align: center;
max-width: 760px;
margin: 0 auto 36px;
}
.xcv-badge {
display: inline-flex;
align-items: center;
gap: 6px;
background: var(–xcv-primary-light);
color: var(–xcv-primary);
border: 1px solid var(–xcv-primary-border);
padding: 5px 14px;
border-radius: 999px;
font-size: 13px;
font-weight: 700;
letter-spacing: 0.02em;
text-transform: uppercase;
margin-bottom: 12px;
}
.xcv-badge-green {
background: var(–xcv-green-light);
color: #047857;
border-color: #a7f3d0;
}
.xcv-badge-influencer {
background: linear-gradient(135deg, #fdf2f8 0%, #f5f3ff 100%);
color: #9333ea;
border-color: #e9d5ff;
}
.xcv-section-title {
font-size: 28px;
font-weight: 800;
color: var(–xcv-dark);
margin: 0 0 12px;
line-height: 1.3;
}
@media (min-width: 768px) {
.xcv-section-title {
font-size: 34px;
}
}
.xcv-section-subtitle {
font-size: 16px;
color: var(–xcv-muted);
margin: 0;
line-height: 1.6;
}
/* Hero Value Box */
.xcv-hero-card {
background: linear-gradient(135deg, #f8fafc 0%, #edf4fe 100%);
border: 1px solid var(–xcv-primary-border);
border-radius: var(–xcv-radius);
padding: 32px 28px;
box-shadow: var(–xcv-shadow);
margin-bottom: 48px;
position: relative;
overflow: hidden;
}
.xcv-hero-card::after {
content: “”;
position: absolute;
top: -40px;
right: -40px;
width: 140px;
height: 140px;
background: radial-gradient(circle, rgba(58, 93, 165, 0.12) 0%, rgba(255,255,255,0) 70%);
border-radius: 50%;
pointer-events: none;
}
.xcv-hero-title {
font-size: 24px;
font-weight: 800;
color: var(–xcv-dark);
margin: 8px 0 14px;
line-height: 1.3;
}
@media (min-width: 768px) {
.xcv-hero-title {
font-size: 30px;
}
}
.xcv-hero-lead {
font-size: 16px;
color: #334155;
margin-bottom: 20px;
line-height: 1.65;
}
.xcv-checklist {
list-style: none;
padding: 0;
margin: 0 0 24px;
display: grid;
grid-template-columns: 1fr;
gap: 10px;
}
@media (min-width: 640px) {
.xcv-checklist {
grid-template-columns: 1fr 1fr;
}
}
.xcv-check-item {
display: flex;
align-items: center;
gap: 8px;
font-size: 14px;
font-weight: 600;
color: var(–xcv-dark);
}
.xcv-check-icon {
color: var(–xcv-green);
flex-shrink: 0;
width: 18px;
height: 18px;
}
.xcv-cta-group {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 12px;
}
.xcv-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 12px 24px;
border-radius: var(–xcv-radius-sm);
font-size: 15px;
font-weight: 700;
text-decoration: none !important;
transition: all 0.2s ease;
cursor: pointer;
border: 1px solid transparent;
}
.xcv-btn-primary {
background: var(–xcv-primary);
color: #ffffff !important;
box-shadow: 0 4px 12px rgba(58, 93, 165, 0.25);
}
.xcv-btn-primary:hover {
background: var(–xcv-primary-hover);
transform: translateY(-1px);
box-shadow: 0 6px 16px rgba(58, 93, 165, 0.35);
}
.xcv-btn-outline {
background: #ffffff;
color: var(–xcv-primary) !important;
border-color: var(–xcv-primary-border);
}
.xcv-btn-outline:hover {
background: var(–xcv-primary-light);
border-color: var(–xcv-primary);
}
/* 4 Core Learning Pillars */
.xcv-grid-4 {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
}
@media (min-width: 640px) {
.xcv-grid-4 {
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 1024px) {
.xcv-grid-4 {
grid-template-columns: repeat(4, 1fr);
}
}
.xcv-pillar-card {
background: var(–xcv-card-bg);
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius);
padding: 24px 20px;
transition: all 0.25s ease;
display: flex;
flex-direction: column;
}
.xcv-pillar-card:hover {
transform: translateY(-3px);
box-shadow: var(–xcv-shadow-hover);
border-color: var(–xcv-primary-border);
}
.xcv-pillar-icon {
width: 44px;
height: 44px;
border-radius: 12px;
background: var(–xcv-primary-light);
color: var(–xcv-primary);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16px;
}
.xcv-pillar-title {
font-size: 17px;
font-weight: 700;
color: var(–xcv-dark);
margin: 0 0 8px;
line-height: 1.35;
}
.xcv-pillar-desc {
font-size: 14px;
color: var(–xcv-muted);
line-height: 1.55;
margin: 0;
}
/* Section 3: Meet Your Tutor & Influencer */
.xcv-instructor-card {
background: #ffffff;
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius);
padding: 32px 24px;
box-shadow: var(–xcv-shadow);
display: grid;
grid-template-columns: 1fr;
gap: 28px;
align-items: center;
}
@media (min-width: 860px) {
.xcv-instructor-card {
grid-template-columns: 280px 1fr;
padding: 36px 32px;
gap: 36px;
}
}
.xcv-instructor-media {
text-align: center;
}
.xcv-instructor-avatar-wrap {
position: relative;
width: 180px;
height: 180px;
margin: 0 auto 16px;
}
.xcv-instructor-avatar {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 50%;
border: 4px solid #ffffff;
box-shadow: 0 8px 24px rgba(16, 33, 54, 0.12);
}
.xcv-super-tutor-badge {
position: absolute;
bottom: 4px;
right: 6px;
background: #1e293b;
color: #f8fafc;
padding: 4px 10px;
border-radius: 999px;
font-size: 11px;
font-weight: 700;
display: flex;
align-items: center;
gap: 4px;
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
border: 1px solid #334155;
}
.xcv-instructor-name {
font-size: 22px;
font-weight: 800;
color: var(–xcv-dark);
margin: 0 0 4px;
}
.xcv-instructor-tagline {
font-size: 13px;
color: var(–xcv-muted);
margin: 0 0 14px;
}
.xcv-lang-tags {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 6px;
}
.xcv-lang-pill {
font-size: 11px;
padding: 3px 8px;
border-radius: 6px;
font-weight: 600;
}
.xcv-lang-pill-native {
background: #fef3c7;
color: #92400e;
}
.xcv-lang-pill-c1 {
background: #f1f5f9;
color: #334155;
}
.xcv-creator-badge-strip {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 14px;
}
.xcv-creator-pill {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 4px 10px;
border-radius: 999px;
font-size: 12px;
font-weight: 700;
}
.xcv-creator-pill-ig {
background: #fdf2f8;
color: #db2777;
border: 1px solid #fbcfe8;
}
.xcv-creator-pill-yt {
background: #fef2f2;
color: #ef4444;
border: 1px solid #fecaca;
}
.xcv-creator-pill-comm {
background: var(–xcv-primary-light);
color: var(–xcv-primary);
border: 1px solid var(–xcv-primary-border);
}
.xcv-social-stats-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 12px;
margin: 20px 0;
}
@media (min-width: 640px) {
.xcv-social-stats-grid {
grid-template-columns: repeat(4, 1fr);
}
}
.xcv-stat-box {
background: #f8fafc;
border: 1px solid #e2e8f0;
border-radius: var(–xcv-radius-sm);
padding: 10px 4px;
text-align: center;
min-width: 0;
overflow: hidden;
}
.xcv-stat-num {
font-size: clamp(16px, 2.4vw, 20px);
font-weight: 900;
color: var(–xcv-dark);
line-height: 1.1;
margin-bottom: 3px;
white-space: nowrap;
}
.xcv-stat-label {
font-size: 10.5px;
color: var(–xcv-muted);
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0;
line-height: 1.25;
display: block;
}
/* Social Channel Links Strip (Instagram Ranked First) */
.xcv-channel-strip {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 16px;
}
.xcv-channel-btn {
display: inline-flex;
align-items: center;
gap: 7px;
padding: 8px 14px;
border-radius: 999px;
font-size: 13px;
font-weight: 700;
text-decoration: none !important;
transition: all 0.2s ease;
border: 1px solid transparent;
white-space: nowrap;
}
@media (max-width: 480px) {
.xcv-channel-strip {
gap: 8px;
}
.xcv-channel-btn {
font-size: 12px;
padding: 7px 11px;
}
}
.xcv-channel-btn-ig {
background: #ffffff;
color: #111111 !important;
border-color: #fbcfe8;
}
.xcv-channel-btn-ig:hover {
background: #fdf2f8;
border-color: #db2777;
transform: translateY(-1px);
}
.xcv-channel-btn-yt {
background: #ffffff;
color: #111111 !important;
border-color: #fecaca;
}
.xcv-channel-btn-yt:hover {
background: #fff5f5;
border-color: #ef4444;
transform: translateY(-1px);
}
.xcv-channel-btn-hub {
background: #ffffff;
color: var(–xcv-primary) !important;
border-color: var(–xcv-primary-border);
}
.xcv-channel-btn-hub:hover {
background: var(–xcv-primary-light);
border-color: var(–xcv-primary);
transform: translateY(-1px);
}
.xcv-instructor-bio p {
font-size: 15px;
color: #334155;
line-height: 1.65;
margin: 0 0 12px;
}
.xcv-instructor-quote {
background: var(–xcv-light);
border-left: 3px solid var(–xcv-primary);
padding: 12px 16px;
border-radius: 0 8px 8px 0;
font-size: 14px;
font-style: italic;
color: #475569;
margin: 0 0 14px 0;
}
/* 4 Simple Steps */
.xcv-steps-grid {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
}
@media (min-width: 640px) {
.xcv-steps-grid {
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 1024px) {
.xcv-steps-grid {
grid-template-columns: repeat(4, 1fr);
}
}
.xcv-step-card {
background: #ffffff;
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius);
padding: 24px 20px;
position: relative;
overflow: hidden;
}
.xcv-step-num {
position: absolute;
top: 12px;
right: 16px;
font-size: 28px;
font-weight: 900;
color: #e2e8f0;
line-height: 1;
}
.xcv-step-icon {
width: 40px;
height: 40px;
border-radius: 10px;
background: var(–xcv-primary-light);
color: var(–xcv-primary);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 14px;
}
.xcv-step-title {
font-size: 16px;
font-weight: 700;
color: var(–xcv-dark);
margin: 0 0 8px;
}
.xcv-step-desc {
font-size: 13px;
color: var(–xcv-muted);
line-height: 1.5;
margin: 0;
}
/* Social & Student Reviews (Instagram Ranked First) */
.xcv-testi-grid {
display: grid;
grid-template-columns: 1fr;
gap: 18px;
margin-bottom: 32px;
}
@media (min-width: 640px) {
.xcv-testi-grid {
grid-template-columns: 1fr 1fr;
}
}
@media (min-width: 1024px) {
.xcv-testi-grid {
grid-template-columns: repeat(3, 1fr);
}
}
.xcv-testi-card {
background: #ffffff;
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius);
padding: 22px 20px;
display: flex;
flex-direction: column;
justify-content: space-between;
box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.xcv-testi-card-top {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 12px;
}
.xcv-testi-stars {
color: #f59e0b;
display: flex;
gap: 2px;
}
.xcv-platform-badge {
display: inline-flex;
align-items: center;
gap: 4px;
font-size: 11px;
font-weight: 700;
padding: 2px 7px;
border-radius: 4px;
}
.xcv-platform-badge-ig {
background: var(–xcv-ig-light);
color: var(–xcv-ig);
}
.xcv-platform-badge-yt {
background: var(–xcv-yt-light);
color: var(–xcv-yt);
}
.xcv-platform-badge-verified {
background: var(–xcv-green-light);
color: #047857;
}
.xcv-testi-quote {
font-size: 14px;
line-height: 1.55;
color: #334155;
margin: 0 0 16px;
font-style: normal;
flex-grow: 1;
}
.xcv-testi-author {
display: flex;
align-items: center;
gap: 10px;
border-top: 1px solid #f1f5f9;
padding-top: 12px;
}
.xcv-author-avatar-img {
width: 40px;
height: 40px;
border-radius: 50%;
object-fit: cover;
border: 2px solid #ffffff;
box-shadow: 0 2px 8px rgba(16, 33, 54, 0.12);
display: block;
flex-shrink: 0;
}
.xcv-author-name {
font-size: 13px;
font-weight: 700;
color: var(–xcv-dark);
}
.xcv-author-sub {
font-size: 11px;
color: var(–xcv-muted);
}
/* Proof Gallery Cards */
.xcv-proof-grid {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
margin-top: 24px;
}
@media (min-width: 768px) {
.xcv-proof-grid {
grid-template-columns: repeat(3, 1fr);
}
}
.xcv-proof-card {
background: #ffffff;
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius);
overflow: hidden;
box-shadow: 0 2px 10px rgba(0,0,0,0.04);
}
.xcv-proof-card-header {
padding: 12px 16px;
background: #f8fafc;
border-bottom: 1px solid #e2e8f0;
font-size: 13px;
font-weight: 700;
color: var(–xcv-dark);
display: flex;
align-items: center;
gap: 8px;
}
.xcv-proof-card-body {
padding: 12px;
display: flex;
align-items: center;
justify-content: center;
}
.xcv-proof-img {
width: 100%;
height: auto;
border-radius: 6px;
border: 1px solid #f1f5f9;
display: block;
}
/* Pricing Grid */
.xcv-pricing-cards {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
margin-bottom: 24px;
}
@media (min-width: 768px) {
.xcv-pricing-cards {
grid-template-columns: repeat(3, 1fr);
}
}
.xcv-price-card {
background: #ffffff;
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius);
padding: 28px 24px;
display: flex;
flex-direction: column;
position: relative;
transition: all 0.2s ease;
}
.xcv-price-card-highlight {
border-color: var(–xcv-primary);
box-shadow: 0 8px 28px -4px rgba(58, 93, 165, 0.18);
}
.xcv-price-tag-badge {
position: absolute;
top: -12px;
left: 50%;
transform: translateX(-50%);
background: var(–xcv-primary);
color: #ffffff;
padding: 3px 12px;
border-radius: 999px;
font-size: 11px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 0.04em;
}
.xcv-price-tier {
font-size: 18px;
font-weight: 800;
color: var(–xcv-dark);
margin: 0 0 6px;
}
.xcv-price-amount {
font-size: 32px;
font-weight: 900;
color: var(–xcv-dark);
line-height: 1.1;
margin-bottom: 4px;
}
.xcv-price-unit {
font-size: 13px;
color: var(–xcv-muted);
margin-bottom: 20px;
}
.xcv-price-bullets {
list-style: none;
padding: 0;
margin: 0 0 24px;
flex-grow: 1;
}
.xcv-price-bullets li {
display: flex;
align-items: center;
gap: 8px;
font-size: 13px;
color: #334155;
margin-bottom: 10px;
}
.xcv-price-bullets svg {
color: var(–xcv-green);
width: 16px;
height: 16px;
flex-shrink: 0;
}
.xcv-price-btn {
width: 100%;
}
/* Pricing Tabs & Segmented Control */
.xcv-pricing-tabs-wrap {
display: flex;
justify-content: center;
margin: 20px 0 28px;
}
.xcv-pricing-tabs {
display: inline-flex;
background: #f1f5f9;
padding: 5px;
border-radius: 999px;
border: 1px solid var(–xcv-border);
gap: 4px;
max-width: 100%;
}
.xcv-pricing-tabs .xcv-tab-btn,
button.xcv-tab-btn {
background: transparent !important;
border: none !important;
padding: 9px 20px !important;
border-radius: 999px !important;
font-size: 14px !important;
font-weight: 700 !important;
color: #475569 !important;
cursor: pointer !important;
transition: all 0.2s ease !important;
white-space: nowrap !important;
box-shadow: none !important;
}
.xcv-pricing-tabs .xcv-tab-btn:hover,
button.xcv-tab-btn:hover {
color: var(–xcv-dark, #102136) !important;
}
.xcv-pricing-tabs .xcv-tab-btn.active,
button.xcv-tab-btn.active {
background: #ffffff !important;
color: var(–xcv-primary, #24417C) !important;
box-shadow: 0 2px 8px rgba(16, 33, 54, 0.12) !important;
border: none !important;
}
.xcv-pricing-panel {
display: block;
}
.xcv-tabs-initialized .xcv-pricing-panel {
display: none;
}
.xcv-tabs-initialized .xcv-pricing-panel.active {
display: block;
}
.xcv-price-original {
font-size: 18px;
color: #94a3b8;
text-decoration: line-through;
margin-right: 6px;
font-weight: 600;
}
.xcv-switch-prompt {
text-align: center;
font-size: 14px;
color: var(–xcv-muted);
margin-top: 20px;
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
flex-wrap: wrap;
}
.xcv-lp-container button.xcv-switch-link,
.xcv-switch-prompt .xcv-switch-link {
background: var(–xcv-primary-light) !important;
border: 1.5px solid var(–xcv-primary-border) !important;
color: var(–xcv-primary) !important;
font-weight: 700 !important;
text-decoration: none !important;
cursor: pointer !important;
padding: 8px 20px !important;
border-radius: 999px !important;
font-size: 14px !important;
display: inline-flex !important;
align-items: center !important;
gap: 6px !important;
line-height: 1.4 !important;
transition: all 0.2s ease !important;
box-shadow: 0 1px 3px rgba(58, 93, 165, 0.08) !important;
}
.xcv-lp-container button.xcv-switch-link:hover,
.xcv-switch-prompt .xcv-switch-link:hover {
background: var(–xcv-primary) !important;
color: #ffffff !important;
border-color: var(–xcv-primary) !important;
transform: translateY(-1px) !important;
box-shadow: 0 4px 10px rgba(58, 93, 165, 0.2) !important;
}
.xcv-sku-meta {
text-align: center;
font-size: 12px;
color: var(–xcv-muted);
margin-top: 24px;
padding-top: 16px;
border-top: 1px dashed var(–xcv-border);
}
.xcv-sku-code {
font-family: SFMono-Regular, Menlo, Monaco, Consolas, monospace;
font-weight: 700;
color: var(–xcv-primary);
}
.xcv-price-card-target-glow {
border-color: var(–xcv-primary) !important;
box-shadow: 0 0 0 3px rgba(58, 93, 165, 0.35), 0 12px 32px -4px rgba(58, 93, 165, 0.25) !important;
animation: xcvTargetPulse 2s ease-in-out infinite alternate;
}
@keyframes xcvTargetPulse {
0% { transform: scale(1); box-shadow: 0 0 0 3px rgba(58, 93, 165, 0.35), 0 12px 32px -4px rgba(58, 93, 165, 0.25); }
100% { transform: scale(1.015); box-shadow: 0 0 0 6px rgba(58, 93, 165, 0.45), 0 16px 36px -4px rgba(58, 93, 165, 0.35); }
}
/* FAQ */
.xcv-faq-list {
max-width: 800px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 12px;
}
.xcv-faq-item {
border: 1px solid var(–xcv-border);
border-radius: var(–xcv-radius-sm);
background: #ffffff;
overflow: hidden;
transition: all 0.2s ease;
}
.xcv-faq-question {
padding: 16px 20px;
font-size: 16px;
font-weight: 700;
color: var(–xcv-dark);
cursor: pointer;
list-style: none;
display: flex;
align-items: center;
justify-content: space-between;
}
.xcv-faq-question::-webkit-details-marker {
display: none;
}
.xcv-faq-question::after {
content: “+”;
font-size: 20px;
color: var(–xcv-muted);
transition: transform 0.2s ease;
}
details[open] .xcv-faq-question::after {
content: “−”;
color: var(–xcv-primary);
}
.xcv-faq-answer {
padding: 0 20px 18px;
font-size: 14px;
line-height: 1.6;
color: #475569;
}
/* Self-study bar */
.xcv-self-study-bar {
background: #f1f5f9;
border-radius: var(–xcv-radius-sm);
padding: 14px 20px;
text-align: center;
font-size: 13px;
color: #475569;
margin-bottom: 56px;
}
.xcv-self-study-bar a {
color: var(–xcv-primary);
font-weight: 700;
text-decoration: underline;
}
/* Final CTA */
.xcv-final-box {
background: linear-gradient(135deg, #102136 0%, #1e3a5f 100%);
border-radius: var(–xcv-radius);
padding: 44px 28px;
text-align: center;
color: #ffffff;
box-shadow: 0 12px 36px rgba(16, 33, 54, 0.2);
}
.xcv-final-title {
font-size: 26px;
font-weight: 800;
margin: 0 0 12px;
color: #ffffff;
}
@media (min-width: 768px) {
.xcv-final-title {
font-size: 32px;
}
}
.xcv-final-sub {
font-size: 15px;
color: #cbd5e1;
max-width: 640px;
margin: 0 auto 24px;
line-height: 1.6;
}
.xcv-final-btn {
background: #ffffff;
color: var(–xcv-dark) !important;
font-size: 16px;
padding: 14px 32px;
border-radius: var(–xcv-radius-sm);
font-weight: 800;
display: inline-flex;
align-items: center;
gap: 8px;
text-decoration: none;
box-shadow: 0 4px 14px rgba(0,0,0,0.15);
transition: all 0.2s ease;
}
.xcv-final-btn:hover {
background: #f8fafc;
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(0,0,0,0.25);
color: var(–xcv-primary) !important;
}
.xcv-final-trust {
margin-top: 18px;
font-size: 13px;
color: #94a3b8;
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 16px;
}
Creator of Xin Chào Vietnam · 572+ Lessons · 5.0★ Super Tutor
US & Europe Friendly Timezones · 100% Risk-Free
Join 1000+ Active Learners with Vy
Master Real, Natural Vietnamese with Live 1:1 Feedback Apps can’t fix your tones, and textbooks don’t teach sidewalk conversation. For less than the price of two coffees ($9.90), unlock real tones, unblock persistent pronunciation roadblocks, and speak genuine Vietnamese naturally with live 1:1 guidance from Vy.
Full 50-Min Live 1:1 Lesson Zero Auto-Renewal Trap ($9.90 Trial) US, Europe & Asia-Pacific Friendly Slots Instant Google Calendar & 60-Day Validity
Live Tone & Accent Correction Vietnamese has 6 tones. Vy corrects your mouth shape and pitch in real time so locals understand you on the first try.
Real Street Talk vs. Textbooks Skip robotic phrases. Learn the everyday slang, coffee shop ordering, and market bargaining locals actually use.
100% Customized to Your Goals From expat daily life and workplace talk to family conversations, every session adapts strictly to your priorities.
Multilingual Empathy (C1) Fluent in English, Chinese, and Japanese (C1), Vy breaks down Vietnamese logic through languages you already know.
Instagram Creator YouTube Creator Voice of Xin Chào Vietnam
Xin chào! I’m Vy from sunny Da Nang. Graduated from Da Nang University of Foreign Languages, I create Xin Chào Vietnam — helping global learners master conversational Vietnamese across Instagram and YouTube.
Language isn’t dry rules — it’s living culture, local slang, and the confidence to chat at your neighborhood coffee stall. In 1:1 sessions, you get high energy, deep patience, and instant feedback tailored 100% to your real conversation goals.
C1 Level
English & Multilingual
“My goal is simple: give you a joyful connection to real Vietnamese culture — with high energy, endless patience, and practical phrases you can use today.”
01
Book Your $9.90 Trial Secure your 50-minute trial session. One-time payment, no auto-renewal trap.
02
Pick Your Calendar Slot Select any open slot in your own timezone via instant Google Calendar booking.
03
Join Your 50-Min Live Class Meet 1:1 on Google Meet or Zoom to assess your level, practice speaking, and fix tones.
04
Post-Class Notes & Audio Receive custom lesson notes, key vocabulary, and audio recordings for ongoing practice.
“Found @xinchaovietnam_vn on Instagram Reels. Her street slang and market bargaining tips were so practical for my trip to Saigon! 1:1 lessons gave me the confidence to chat with locals without hesitation.”
Alex M.
Travel Nomad · @alex.expat.life
“Vy customizes every lesson to my needs and explains everything patiently. Being fluent in English and Chinese makes understanding nuances effortless.”
Feng
Verified Platform Student · 5.0 ★
“Vy’s tone breakdown made tones click for the first time. In our 1:1 session, she fixed my mouth shape in 30 minutes. Locals in Da Nang finally understand my coffee orders!”
Mark D.
Expat in Da Nang · @mark_in_danang
“Vy broke through my fear of tones in two lessons. Grab drivers and coffee vendors now understand me on the first try. Best language investment in Vietnam.”
Michael S.
Expat living in Ho Chi Minh City
“Having a private lesson with Vy feels like having your own witty local insider walking you through authentic Vietnamese life and culture.”
Sarah T.
Heritage Learner, CA · @sarah_travels_vn
“The post-class voice recordings and notes are gold. Vy keeps you accountable and gives you exact audio clips to practice on your daily commute.”
David K.
Digital Nomad · Da Nang
[Grow] Weekly $99.60
4 x 50-min lessons / month ($24.90/ea)
1 lesson per week steady rhythm Steady conversational progress Post-class notes & audio feedback Full 60-day credit rollover validity Subscribe 4 Lessons / Mo Popular for Expats [Grow Fast] Bi-Weekly $191.20
8 x 50-min lessons / month ($23.90/ea)
2 lessons per week immersion Fastest path to conversational fluency Priority calendar booking slots Between-class audio review checks Subscribe 8 Lessons / Mo Maximum Fluency [Grow Wild] Intensive $274.80
12 x 50-min lessons / month ($22.90/ea — Best Value)
3 lessons per week intensive fluency Accelerated relocation & business prep Tailored homework & priority scheduling 60-day rollover credit validity Subscribe 12 Lessons / Mo Looking for a one-time trial or flexible drop-in class? View Single & Trial Lessons ($9.90 / $24.90 / $29) →
Recommended First Step Trial Class $35 $9.90
single 50-min lesson · one-time assessment
Full 50-min private lesson with Vy Level assessment & personalized roadmap Immediate pronunciation & tone corrections Zero auto-renewal commitment Book $9.90 Trial Active Student Rate 1 Class Top-Up $35 $24.90
single 50-min lesson · for subscribed students
Special member price for enrolled learners Extra session between subscription cycles Instant credit sync to Student Portal Full 60-day validity period Purchase $24.90 Top-Up Standalone Drop-In Single Drop-In $35 $29.00
single 50-min lesson · non-subscribed learners
Full 50-minute private lesson with Vy Complete flexibility with no subscription Ideal for travel prep or specific question review Full 60-day validity period Book $29.00 Drop-In Ready for consistent weekly progress? View Monthly Subscriptions (Save up to 35%) →
SureCart Official SKU: XCV-1ON1-PRIVATE · All 6 plans supported with instant calendar booking & 60-day validity.
Expats & Digital Nomads Living in Da Nang, Saigon, or Hanoi? Learn to order coffee, handle Grab rides, talk to neighbors, and navigate daily life anxiety-free.
Heritage & Family Learners Have a Vietnamese partner or family? Master respectful pronouns (anh, chị, em, cô, chú) and speak warmly with relatives.
Business & Cultural Explorers Working with local teams or managing suppliers? Master professional small talk, dining etiquette, and cultural nuances.
How does scheduling work after I book? Right after checkout, you will receive an automated email with our Google Calendar link. Pick any open slot in your own timezone.
What if I am an absolute beginner? Over 60% of Vy’s private students started from ground zero. We begin with basic sound inventory, tones, and survival phrases. Vy is fluent in English, Chinese, and Japanese.
Which dialect do you teach: Northern or Southern? Vy is based in Da Nang and natively teaches Southern, Central, and Northern accents. We tailor directly to where you live, travel, or work.
Can I reschedule if an emergency comes up? Yes! Reschedule free through Google Calendar up to 12 hours before class. All lesson credits remain valid for 60 days.
Are class times compatible with US, European, or Australian timezones? Absolutely! Vy offers slots spanning early mornings, afternoons, and evenings (Vietnam Time, UTC+7), which match prime evening and weekend slots for US East and West Coast, daytime hours for Europe, and midday for Australia. You can preview real-time availability in your local timezone anytime on our live scheduling calendar before booking.
What platform do we use for live classes? Classes run via Google Meet or Zoom. Your calendar invite includes your secure video room link.
Ready to Speak Vietnamese with Confidence? Experience the difference of personalized 1:1 feedback with Vy. Take your first 50-minute trial lesson today for just $9.90.
Claim Your $9.90 Trial Lesson (50 Min) → function xcvSwitchPricingTab(panelId) {
var container = document.getElementById(‘xcv-lp-content’);
if (container) container.classList.add(‘xcv-tabs-initialized’);
var tabs = document.querySelectorAll(‘.xcv-tab-btn’);
var panels = document.querySelectorAll(‘.xcv-pricing-panel’);
tabs.forEach(function(t) {
var isTarget = t.getAttribute(‘data-target’) === panelId;
t.classList.toggle(‘active’, isTarget);
t.setAttribute(‘aria-selected’, isTarget ? ‘true’ : ‘false’);
});
panels.forEach(function(p) {
p.classList.toggle(‘active’, p.id === panelId);
});
}
(function() {
function initPricing() {
try {
var container = document.getElementById(‘xcv-lp-content’);
if (container) container.classList.add(‘xcv-tabs-initialized’);
var tabBtns = document.querySelectorAll(‘.xcv-tab-btn’);
tabBtns.forEach(function(btn) {
btn.addEventListener(‘click’, function() {
var target = btn.getAttribute(‘data-target’);
xcvSwitchPricingTab(target);
});
});
// Check URL parameters & referrer
var url = new URL(window.location.href);
var plan = (url.searchParams.get(‘plan’) || ”).toLowerCase();
var price = url.searchParams.get(‘price’) || ”;
var hash = (window.location.hash || ”).toLowerCase();
var ref = (document.referrer || ”).toLowerCase();
var isAdditional = plan.indexOf(‘additional’) !== -1
|| plan.indexOf(‘subscribed’) !== -1
|| hash.indexOf(‘additional’) !== -1
|| price === ‘3566fa57-0f15-42b0-a465-23f2f077e946’
|| (ref.indexOf(‘/student/’) !== -1 && (plan || hash || url.searchParams.has(‘balance_zero’)));
var isTrial = plan.indexOf(‘trial’) !== -1
|| price === ‘d0492334-65cc-4e41-a6e9-0f1c730221f1’;
if (isAdditional) {
xcvSwitchPricingTab(‘panel-single’);
setTimeout(function() {
var card = document.getElementById(‘price-additional’);
if (card) {
card.scrollIntoView({ behavior: ‘smooth’, block: ‘center’ });
card.classList.add(‘xcv-price-card-target-glow’);
}
}, 150);
} else if (isTrial) {
xcvSwitchPricingTab(‘panel-single’);
setTimeout(function() {
var trialCard = document.querySelector(‘[data-price-id=”d0492334-65cc-4e41-a6e9-0f1c730221f1″]’);
if (trialCard) {
trialCard.scrollIntoView({ behavior: ‘smooth’, block: ‘center’ });
}
}, 150);
}
} catch (e) {
console.warn(‘xcv pricing init notice:’, e);
}
}
// Run immediately since DOM elements are parsed before this script
initPricing();
if (document.readyState === ‘loading’) {
document.addEventListener(‘DOMContentLoaded’, initPricing);
}
})();