/* ================= Base Reset ================= */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Be Vietnam Pro', sans-serif;
}

html {
    scroll-behavior: smooth;
    /* ThÄ‚Âªm hiĂ¡Â»â€¡u Ă¡Â»Â©ng cuĂ¡Â»â„¢n mĂ†Â°Ă¡Â»Â£t mÄ‚Â  */
}

body {
    color: #333;
    line-height: 1.5;
}

img {
    max-width: 100%;
    display: block;
}

a {
    text-decoration: none;
    color: inherit;
}

/* ================= Utility Classes ================= */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.flex-row {
    display: flex;
    flex-wrap: wrap;
}

.flex-between {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.flex-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

.align-center {
    align-items: center;
}

/* Custom Flex Grid System */
.row {
    display: flex;
    flex-wrap: wrap;
}

.col-2 {
    flex: 0 0 16.666%;
    max-width: 16.666%;
    padding: 0 10px;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 0 10px;
}

.col-4 {
    flex: 0 0 33.333%;
    max-width: 33.333%;
    padding: 0 10px;
}

.col-5 {
    flex: 0 0 41.666%;
    max-width: 41.666%;
    padding: 0 10px;
}

.col-7 {
    flex: 0 0 58.333%;
    max-width: 58.333%;
    padding: 0 10px;
}

.col-8 {
    flex: 0 0 66.666%;
    max-width: 66.666%;
    padding: 0 10px;
}

.section-padding {
    padding: 50px 15px;
}

.mt-2 {
    margin-top: 20px;
}

.bg-light {
    background-color: #f8f9fa;
}

.bg-dark {
    background-color: #0d3b45;
    color: white;
}

.text-primary {
    color: #f26522;
}

/* Buttons */
.btn {
    padding: 10px 20px;
    border-radius: 4px;
    border: none;
    font-weight: bold;
    cursor: pointer;
    transition: 0.3s;
    font-size: 14px;
}

.btn-primary {
    background-color: #f26522;
    color: white;
}

.btn-primary:hover {
    background-color: #d15116;
}

.btn-outline {
    background-color: transparent;
    border: 1px solid #ccc;
    color: #333;
}

.btn-outline:hover {
    border-color: #f26522;
    color: #f26522;
}

.btn-full {
    width: 100%;
    padding: 12px;
}

/* ================= Header ================= */

/* TÄ‚Â¹y chĂ¡Â»â€°nh kÄ‚Â­ch thĂ†Â°Ă¡Â»â€ºc Logo hÄ‚Â¬nh Ă¡ÂºÂ£nh */
.img-logo {
    max-width: 110px;
    /* ChiĂ¡Â»Âu rĂ¡Â»â„¢ng tĂ¡Â»â€˜i Ă„â€˜a cĂ¡Â»Â§a logo trÄ‚Âªn thanh menu */
    height: auto;
    display: block;
}

.img-logo-footer {
    max-width: 160px;
    /* Logo Ă¡Â»Å¸ footer cÄ‚Â³ thĂ¡Â»Æ’ Ă„â€˜Ă¡Â»Æ’ to hĂ†Â¡n mĂ¡Â»â„¢t chÄ‚Âºt */
    margin-bottom: 15px;
    /* TĂ¡ÂºÂ¡o khoĂ¡ÂºÂ£ng thĂ¡Â»Å¸ vĂ¡Â»â€ºi Ă„â€˜oĂ¡ÂºÂ¡n vĂ„Æ’n bĂ¡ÂºÂ£n bÄ‚Âªn dĂ†Â°Ă¡Â»â€ºi */
    height: auto;
    display: block;
}



.logo h2 {
    color: #0d3b45;
    font-weight: 900;
    line-height: 1;
    margin: 0;
}

.slogan {
    font-size: 10px;
    color: #666;
    letter-spacing: 1px;
}

.nav-menu {
    display: flex;
    gap: 35px;
    font-weight: 500;
    font-size: 15px;


    margin-left: 40px;
    margin-right: auto;
}

.nav-menu a:hover {
    color: #f26522;
}

.header-action {
    gap: 20px;
}

.hotline {
  white-space: nowrap;
    font-size: 14px;
}

.hotline strong {
    display: block;
    font-size: 16px;
    color: #0d3b45;
}

.mobile-menu-toggle {
    display: none;
    font-size: 24px;
    cursor: pointer;
}

/* ================= Hero Section ================= */
.hero {
    padding: 40px 0;
}

.hero-content {
    flex: 0 0 50%;
    max-width: 50%;
    padding-right: 40px;
}

.hero-content h1 {
    font-size: 42px;
    color: #0d3b45;
    margin-bottom: 20px;
    line-height: 1.2;
}

.subtitle {
    color: #555;
    margin-bottom: 30px;
    font-size: 16px;
}

.hero-buttons {
    gap: 15px;
    margin-bottom: 40px;
}

.hero-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 15px;
    margin-bottom: 40px;
    justify-content: center;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    color: #444;
}

.feature-item .icon {
    font-size: 24px;
    background: #e0f2f1;
    padding: 10px;
    border-radius: 50%;
}

.hero-signature {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-size: 28px;
    color: #777;
}

/* AI Form Card */
.hero-form {
    flex: 0 0 60%;
    max-width: 60%;
    padding: 0;
}

.form-card {
    background: #fff;
    border-radius: 12px;
    padding: 25px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.complex-form {
    padding: 0;
    /* Remove default padding to allow split columns */
    display: flex;
    overflow: hidden;
    /* Keep border-radius working */
}

.form-main {
    flex: 1;
    padding: 25px 30px;
}

.form-sidebar {
    width: 220px;
    background: #f4f9f9;
    padding: 25px 20px;
    border-left: 1px solid #e2ecec;
    text-align: center;
    display: flex;
    flex-direction: column;
}

.form-sidebar h5 {
    color: #0d3b45;
    font-size: 14px;
    margin-bottom: 20px;
}

.ai-suggestion-imgs .img-box {
    position: relative;
    margin-bottom: 10px;
}

.ai-suggestion-imgs .img-box img {
    border-radius: 6px;
    border: 2px solid #e0e0e0;
}

.ai-suggestion-imgs .arrow-down {
    font-size: 18px;
    color: #00796b;
    margin-bottom: 10px;
}

.sidebar-signature {
    margin-top: auto;
    font-size: 12px;
    color: #777;
    font-style: italic;
    line-height: 1.4;
}

.badge-dark {
    position: absolute;
    top: -8px;
    left: -8px;
    background: #0d3b45;
    color: #fff;
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: bold;
    z-index: 2;
}

.form-header h3 {
    color: #0d3b45;
    display: flex;
    align-items: center;
    gap: 10px;
}

.badge {
    background: #00796b;
    color: #fff;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
}

.sub-text {
    font-size: 13px;
    color: #777;
    margin-bottom: 20px;
    display: block;
    margin-top: 5px;
}

.form-group {
    margin-bottom: 18px;
}

.form-group label {
    display: block;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 8px;
}

.radio-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 14px;
    align-items: center;
}

/* Step number badge */
.step-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: #f26522;
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
    font-weight: 700;
    margin-right: 6px;
    flex-shrink: 0;
}

/* Radio pill button */
.radio-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1.5px solid #ddd;
    border-radius: 30px;
    padding: 7px 16px;
    background-color: #fff;
    cursor: pointer;
    font-size: 14px;
    color: #333;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.radio-pill:hover {
    border-color: #f26522;
}

.radio-pill.active,
.radio-pill:has(input:checked) {
    border-color: #f26522;
    background-color: #fff8f5;
}

.radio-pill input[type="radio"] {
    accent-color: #f26522;
    margin: 0;
    cursor: pointer;
}

.form-group select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 6px;
    outline: none;
}

.upload-box {
    border: 2px dashed #ccc;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
    color: #666;
    font-size: 13px;
    cursor: pointer;
    background: #fafafa;
}

/* ================= Categories ================= */
.section-header {
    margin-bottom: 30px;
}

.section-header h2 {
    color: #0d3b45;
}

.section-header p {
    color: #666;
}

.link {
    color: #00796b;
    font-weight: 600;
}

.category-card {
    margin-bottom: 20px;
}

.category-card img {
    border-radius: 8px;
    margin-bottom: 15px;
}

.category-card h4 {
    color: #0d3b45;
}

.category-card p {
    font-size: 13px;
    color: #666;
}

/* ================= Products CĂ¡ÂºÂ­p nhĂ¡ÂºÂ­t ================= */

/* 1. Ä‚â€°p cÄ‚Â¡c hÄ‚Â¬nh Ă¡ÂºÂ£nh sĂ¡ÂºÂ£n phĂ¡ÂºÂ©m cÄ‚Â³ chung mĂ¡Â»â„¢t chiĂ¡Â»Âu cao Ă„â€˜Ă¡Â»Æ’ khÄ‚Â´ng bĂ¡Â»â€¹ xÄ‚Â´ lĂ¡Â»â€¡ch */
.product-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
    background: #fff;
}

/* Wrapper cĂ¡Â»â€˜ Ă„â€˜Ă¡Â»â€¹nh chiĂ¡Â»Âu cao vÄ‚Â¹ng Ă¡ÂºÂ£nh - Ă„â€˜Ă¡ÂºÂ£m bĂ¡ÂºÂ£o 3 box luÄ‚Â´n Ă„â€˜Ă¡Â»Âu nhau */
.product-card .product-img-wrap {
    width: 100%;
    height: 220px;
    overflow: hidden;
    background-color: #f5f5f5;
    flex-shrink: 0;
}

.product-card .product-img-wrap a {
    display: block;
    width: 100%;
    height: 100%;
}

.product-card .product-img-wrap img,
.product-card a > img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    background-color: #fff;
    transition: transform 0.4s ease;
}

.product-card:hover .product-img-wrap img {
    transform: scale(1.05);
}

.product-info {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    /* YÄ‚Âªu cĂ¡ÂºÂ§u phĂ¡ÂºÂ§n nÄ‚Â y giÄ‚Â£n ra Ă„â€˜Ă¡Â»Æ’ chiĂ¡ÂºÂ¿m hĂ¡ÂºÂ¿t khÄ‚Â´ng gian trĂ¡Â»â€˜ng */
    padding: 15px;
    /* ThÄ‚Âªm padding nĂ¡ÂºÂ¿u code cĂ…Â© cĂ¡Â»Â§a bĂ¡ÂºÂ¡n chĂ†Â°a cÄ‚Â³ Ă„â€˜Ă¡Â»Æ’ chĂ¡Â»Â¯ khÄ‚Â´ng sÄ‚Â¡t lĂ¡Â»Â */
}

/* 2. CĂ„Æ’n chĂ¡Â»â€°nh phĂ¡ÂºÂ§n giÄ‚Â¡ tiĂ¡Â»Ân to, rÄ‚Âµ rÄ‚Â ng hĂ†Â¡n */
.price {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 15px;
}

.price strong {
    font-size: 22px;
    color: #f26522;
    font-weight: 700;
}

.price del {
    font-size: 14px;
    color: #a0a0a0;
    text-decoration: line-through;
}

/* 3. TĂ¡ÂºÂ¡o khung viĂ¡Â»Ân bo trÄ‚Â²n (Pill) cho thÄ‚Â´ng sĂ¡Â»â€˜ kĂ¡Â»Â¹ thuĂ¡ÂºÂ­t giĂ¡Â»â€˜ng HÄ‚Â¬nh 2 */
.specs {
    gap: 8px;
    margin-bottom: 20px;
}

.spec-pill {
    border: 1px solid #e0e0e0;
    border-radius: 20px;
    padding: 4px 10px;
    font-size: 12px;
    color: #555;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #fff;
}

.spec-pill i {
    font-size: 12px;
    color: #555;
}

/* 4. ChĂ¡Â»â€°nh nÄ‚Âºt bĂ¡ÂºÂ¥m Ă„â€˜Ă¡Â»Âu nhau */
.product-actions {
    gap: 10px;
    display: flex;
    margin-top: auto;
}

.product-actions .btn {
    flex: 1;
    padding: 10px 5px;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.product-actions .btn-outline {
    border-color: #e0e0e0;
    color: #333;
}

/* ================= Replacement Banner (Giao diĂ¡Â»â€¡n Card mĂ¡Â»â€ºi) ================= */
.replacement-banner {
    background: #f4f9f9;
    /* MÄ‚Â u nĂ¡Â»Ân xanh nhĂ¡ÂºÂ¡t y hĂ¡Â»â€¡t Ă¡ÂºÂ£nh 2 */
    padding: 60px 0;
}

/* ChĂ¡Â»â€°nh tĂ¡Â»Â· lĂ¡Â»â€¡ cĂ¡Â»â„¢t chĂ¡Â»Â¯ vÄ‚Â  tĂ¡ÂºÂ¡o khoĂ¡ÂºÂ£ng cÄ‚Â¡ch */
.banner-text {
    padding-right: 40px;
}

.banner-text h2 {
    color: #0d3b45;
    margin-bottom: 15px;
    font-size: 28px;
}

.banner-text p {
    color: #555;
}

/* TĂ¡ÂºÂ¡o Ă„â€˜Ă†Â°Ă¡Â»Âng kĂ¡ÂºÂ» dĂ¡Â»Âc ngĂ„Æ’n cÄ‚Â¡ch 2 bÄ‚Âªn */
.banner-steps-container {
    border-left: 2px solid #e2ecec;
    /* Ă„ÂĂ†Â°Ă¡Â»Âng kĂ¡ÂºÂ» dĂ¡Â»Âc mĂ¡Â»Â */
    padding-left: 20px;
}

/* Ă„ÂĂ¡Â»â€¹nh dĂ¡ÂºÂ¡ng tĂ¡Â»Â«ng thĂ¡ÂºÂ» trĂ¡ÂºÂ¯ng (Card) */
.step-item {
    padding: 0 10px;
    height: auto;
}

.step-card {
    background: #fff;
    border-radius: 16px;
    /* Bo gÄ‚Â³c to nhĂ†Â° Ă¡ÂºÂ£nh */
    padding: 30px 10px 20px;
    /* CĂ„Æ’n chĂ¡Â»â€°nh khoĂ¡ÂºÂ£ng trĂ¡Â»â€˜ng trong card */
    text-align: center;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.03);
    /* Ă„ÂĂ¡Â»â€¢ bÄ‚Â³ng cĂ¡Â»Â±c nhĂ¡ÂºÂ¹ */
}

/* Con sĂ¡Â»â€˜ Ă„â€˜Ä‚Â¡nh thĂ¡Â»Â© tĂ¡Â»Â± gÄ‚Â³c trÄ‚Â¡i trÄ‚Âªn */
.step-number {
    position: absolute;
    top: -10px;
    /* NhÄ‚Â´ lÄ‚Âªn khĂ¡Â»Âi thĂ¡ÂºÂ» mĂ¡Â»â„¢t chÄ‚Âºt */
    left: -10px;
    /* NhÄ‚Â´ ra ngoÄ‚Â i cĂ¡ÂºÂ¡nh trÄ‚Â¡i mĂ¡Â»â„¢t chÄ‚Âºt */
    width: 26px;
    height: 26px;
    background-color: #0d3b45;
    /* Xanh Ă„â€˜Ă¡ÂºÂ­m */
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    border: 3px solid #f4f9f9;
    /* TĂ¡ÂºÂ¡o viĂ¡Â»Ân bao quanh Ă„â€˜Ă¡Â»Æ’ cĂ¡ÂºÂ¯t nĂ¡Â»Ân */
    z-index: 2;
}

/* Ă„ÂĂ¡Â»â€¹nh dĂ¡ÂºÂ¡ng vÄ‚Â²ng trÄ‚Â²n chĂ¡Â»Â©a Icon */
.step-card .step-icon {
    width: 65px;
    height: 65px;
    background: #f0f6f6;
    /* NĂ¡Â»Ân xanh/xÄ‚Â¡m nhĂ¡ÂºÂ¡t */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    /* TĂ„Æ’ng nhĂ¡ÂºÂ¹ Ă„â€˜Ă¡Â»Æ’ cÄ‚Â¢n Ă„â€˜Ă¡Â»â€˜i hĂ†Â¡n */
    margin: 0 auto 15px;
    color: #0d3b45;
    /* MÄ‚Â u icon xanh Ă„â€˜Ă¡ÂºÂ­m */
}

.step-card h5 {
    color: #0d3b45;
    margin-bottom: 8px;
    font-size: 15px;
    font-weight: 700;
}

.step-card p {
    font-size: 12px;
    color: #666;
    line-height: 1.4;
    min-height: 34px;
    /* Ă„ÂĂ¡ÂºÂ£m bĂ¡ÂºÂ£o Ă„â€˜Ă¡Â»Â§ chiĂ¡Â»Âu cao cho 2 dÄ‚Â²ng, giÄ‚Âºp thĂ¡ÂºÂ» luÄ‚Â´n cÄ‚Â¢n bĂ¡ÂºÂ±ng */
    margin: 0;
}

/* ================= TÄ‚â„¢Y CHĂ¡Â»Ë†NH HERO BANNER THĂ¡ÂºÂ¨M MĂ¡Â»Â¸ ================= */

/* Ă¡ÂºÂ¢nh nĂ¡Â»Ân nhÄ‚Â  bĂ¡ÂºÂ¿p vÄ‚Â  LĂ¡Â»â€ºp phĂ¡Â»Â§ */
.banner-bg {
    /* Ă„Âang dÄ‚Â¹ng Ă¡ÂºÂ£nh giĂ¡ÂºÂ£ lĂ¡ÂºÂ­p, bĂ¡ÂºÂ¡n hÄ‚Â£y Ă„â€˜Ă¡Â»â€¢i link Ă¡ÂºÂ£nh nhÄ‚Â  bĂ¡ÂºÂ¿p thĂ¡ÂºÂ­t vÄ‚Â o Ă„â€˜Ä‚Â¢y */
    background-image: url('https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTKNkMK14LefJZoOCNMwxDS35MU1SjfqYvpmlOpCqcm7w&s=10');
    background-size: cover;
    background-position: center;
    position: relative;
    padding: 60px 0;
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Gradient: TĂ¡Â»Â« trĂ¡ÂºÂ¯ng Ă„â€˜Ă¡Â»Â¥c (trÄ‚Â¡i) chuyĂ¡Â»Æ’n sang trong suĂ¡Â»â€˜t (phĂ¡ÂºÂ£i) */
    background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.85) 45%, rgba(255, 255, 255, 0) 100%);
}

.bg-white {
    background-color: #fff !important;
}

/* TĂ¡Â»â€˜i Ă†Â°u vÄ‚Â²ng trÄ‚Â²n Icon Font Awesome */
.feature-item .dark-icon {
    background: #0d3b45;
    width: 48px;
    /* TĂ„Æ’ng nhĂ¡ÂºÂ¹ kÄ‚Â­ch thĂ†Â°Ă¡Â»â€ºc vÄ‚Â²ng trÄ‚Â²n */
    height: 48px;
    border-radius: 50%;
    /* Bo trÄ‚Â²n tuyĂ¡Â»â€¡t Ă„â€˜Ă¡Â»â€˜i */
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    /* ChĂ¡Â»â€°nh Ă„â€˜Ă¡Â»â„¢ to cĂ¡Â»Â§a Icon bÄ‚Âªn trong */
    margin-right: 12px;
    /* Ă„ÂĂ¡ÂºÂ©y chĂ¡Â»Â¯ cÄ‚Â¡ch xa vÄ‚Â²ng trÄ‚Â²n mĂ¡Â»â„¢t chÄ‚Âºt */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    padding: 0;
    /* XÄ‚Â³a padding cĂ…Â© Ă„â€˜Ă¡Â»Æ’ icon nĂ¡ÂºÂ±m ngay giĂ¡Â»Â¯a */
}

/* CĂ¡ÂºÂ¥u trÄ‚Âºc chia cĂ¡Â»â„¢t Form AI vÄ‚Â  Sidebar */
.hero-form {
    flex: 0 0 62%;
    max-width: 62%;
    padding: 0;
}

.hero-content {
    flex: 0 0 38%;
    max-width: 38%;
    padding-right: 30px;
}

.complex-form {
    display: flex;
    padding: 0;
    overflow: hidden;
    /* CĂ¡ÂºÂ¯t viĂ¡Â»Ân bo gÄ‚Â³c thĂ¡Â»Â«a */
}

.form-main {
    padding: 25px;
    flex: 1;
}

.form-sidebar {
    width: 170px;
    background: #eef7f7;
    padding: 20px 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-left: 1px solid #d8ebeb;
}

/* CÄ‚Â¡c vÄ‚Â²ng trÄ‚Â²n sĂ¡Â»â€˜ thĂ¡Â»Â© tĂ¡Â»Â± trong Form */
.step-num {
    display: inline-flex;
    width: 22px;
    height: 22px;
    background: #0d3b45;
    color: white;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    margin-right: 5px;
}

/* TÄ‚Â¹y chĂ¡Â»â€°nh mÄ‚Â u chĂ¡Â»Â¯ cam cho Radio khi Ă„â€˜Ă†Â°Ă¡Â»Â£c chĂ¡Â»Ân */
.radio-group input[type="radio"] {
    accent-color: #f26522;
}

.radio-group label {
    display: flex;
    align-items: center;
    font-weight: normal;
}

.radio-text {
    margin-left: 5px;
    color: #333;
}

/* Trang trÄ‚Â­ Sidebar TrĂ†Â°Ă¡Â»â€ºc/Sau */
.form-sidebar h5 {
    text-align: center;
    color: #0d3b45;
    margin-bottom: 15px;
    font-size: 13px;
}

.ai-suggestion-imgs .img-box {
    position: relative;
    margin-bottom: -5px;
}

.ai-suggestion-imgs img {
    border-radius: 6px;
    border: 3px solid #fff;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    display: block;
}

.badge-dark {
    position: absolute;
    top: 5px;
    left: 5px;
    background: #0d3b45;
    color: #fff;
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 4px;
    z-index: 2;
}

.arrow-down {
    text-align: center;
    color: #0d3b45;
    font-weight: bold;
    background: #fff;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    z-index: 3;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
}

.sidebar-signature {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-size: 18px;
    color: #00796b;
    text-align: center;
    margin-top: 15px;
    line-height: 1.2;
}

/* Responsive cho Sidebar khi thu nhĂ¡Â»Â mÄ‚Â¡y tÄ‚Â­nh bĂ¡ÂºÂ£ng */
@media (max-width: 1200px) {
    .form-sidebar {
        display: none;
    }

    /* Ă¡ÂºÂ¨n cĂ¡Â»â„¢t Before/After nĂ¡ÂºÂ¿u mÄ‚Â n hÄ‚Â¬nh bĂ¡Â»â€¹ chĂ¡ÂºÂ­t */

    /* ===== CĂ¡ÂºÂ¬P NHĂ¡ÂºÂ¬T GIAO DIĂ¡Â»â€ N FORM AI (BĂ¡ÂºÂ¢N MĂ¡Â»ÂI) ===== */

    /* 1. XĂ¡Â»Â­ lÄ‚Â½ Header Form */
    .form-header {
        display: block !important;
        margin-bottom: 20px;
    }

    .form-header .title-row {
        display: flex;
        align-items: center;
        /* CĂ„Æ’n giĂ¡Â»Â¯a logo vÄ‚Â  chĂ¡Â»Â¯ theo chiĂ¡Â»Âu dĂ¡Â»Âc */
        gap: 10px;
        /* KhoĂ¡ÂºÂ£ng cÄ‚Â¡ch giĂ¡Â»Â¯a logo vÄ‚Â  chĂ¡Â»Â¯ */
        margin-bottom: 5px;
    }

    .form-header .form-logo {
        height: 32px !important;
        /* Ä‚â€°p cĂ¡Â»Â©ng chiĂ¡Â»Âu cao ngang vĂ¡Â»â€ºi chĂ¡Â»Â¯ H3 */
        width: auto !important;
        /* KhÄ‚Â´ng cho phÄ‚Â©p Ă¡ÂºÂ£nh tĂ¡Â»Â± phÄ‚Â¬nh to */
        display: block !important;
        margin: 0 !important;
    }

    .form-header h3 {
        margin: 0;
        font-size: 22px;
        line-height: 1;
        /* GiÄ‚Âºp chĂ¡Â»Â¯ khÄ‚Â´ng bĂ¡Â»â€¹ Ă„â€˜Ă¡ÂºÂ©y lĂ¡Â»â€¡ch */
    }

    .form-header .sub-text {
        margin: 0;
    }

    /* 2. XĂ¡Â»Â­ lÄ‚Â½ nÄ‚Âºt Radio (ViĂ¡Â»Ân bo trÄ‚Â²n) */
    .radio-pill {
        border: 1px solid #e0e0e0;
        /* MÄ‚Â u viĂ¡Â»Ân xÄ‚Â¡m nhĂ¡ÂºÂ¡t */
        border-radius: 20px;
        /* Bo trÄ‚Â²n Ă„â€˜Ă¡Â»Âu 2 cĂ¡ÂºÂ¡nh */
        padding: 6px 15px;
        cursor: pointer;
        background: #fff;
        transition: border-color 0.3s ease;
    }

    .radio-pill:hover {
        border-color: #b5b5b5;
        /* HiĂ¡Â»â€¡u Ă¡Â»Â©ng Ă„â€˜Ă¡ÂºÂ­m viĂ¡Â»Ân khi rÄ‚Â  chuĂ¡Â»â„¢t */
    }

    /* ===== TĂ¡ÂºÂ O BOX CHO NÄ‚ÂT CHĂ¡Â»Å’N (RADIO PILL) ===== */

    /* 1. TrĂ¡ÂºÂ¡ng thÄ‚Â¡i mĂ¡ÂºÂ·c Ă„â€˜Ă¡Â»â€¹nh (ViĂ¡Â»Ân xÄ‚Â¡m) */
    .radio-pill {
        display: inline-flex !important;
        align-items: center !important;
        border: 1px solid #ccc !important;
        /* ViĂ¡Â»Ân xÄ‚Â¡m mĂ¡ÂºÂ·c Ă„â€˜Ă¡Â»â€¹nh */
        border-radius: 30px !important;
        /* Bo trÄ‚Â²n */
        padding: 8px 16px !important;
        background-color: #fff !important;
        cursor: pointer;
        margin-right: 10px;
        transition: all 0.2s ease;
    }

    /* Class active sĂ¡ÂºÂ½ Ă„â€˜Ă†Â°Ă¡Â»Â£c JS tĂ¡Â»Â± Ă„â€˜Ă¡Â»â„¢ng thÄ‚Âªm vÄ‚Â o khi click */
    .radio-pill.active, .radio-pill:has(input:checked) {
        border-color: #f26522 !important;
        /* ViĂ¡Â»Ân cam */
        background-color: #fffaf7 !important;
        /* NĂ¡Â»Ân cam nhĂ¡ÂºÂ¡t */
    }

    .radio-pill input[type="radio"] {
        accent-color: #f26522;
        transform: scale(1.2);
        margin: 0 8px 0 0 !important;
        cursor: pointer;
    }

    .radio-pill .radio-text {
        font-size: 14px !important;
        color: #333 !important;
    }
}

/* ================= Footer CTA ================= */






















/* ================= Footer Social Icons ================= */










/* ================= Categories ================= */
.categories .row {
    display: flex;
    gap: 0;
}

.category-card {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.category-card:hover {
    border-color: #00796b;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
    transform: translateY(-5px);
}

.category-card img {
    width: 100%;
    height: 180px;
    object-fit: contain;
    margin-bottom: 20px;
}

.category-card .flex-between {
    align-items: flex-end;
}

.category-card h4 {
    margin: 0 0 5px 0;
    font-size: 18px;
    color: #0d3b45;
}

.category-card p {
    margin: 0;
    font-size: 14px;
    color: #666;
}

.category-card .arrow-icon {
    color: #00796b;
    font-size: 18px;
    font-weight: bold;
}

/* ================= Trusted Brands ================= */
.trusted-brands {
    padding-top: 30px;
    padding-bottom: 30px;
    background: #fff;
}

.trusted-brands .brands-header {
    margin-bottom: 25px;
}

.trusted-brands .brands-title {
    color: #0d3b45;
    font-size: 18px;
    font-weight: 700;
    margin: 0;
}

.trusted-brands .brands-list {
    margin-top: 15px;
    flex-wrap: wrap;
    gap: 15px;
}

.trusted-brands .brand-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.9;
    transition: opacity 0.3s ease;
    cursor: pointer;
}

.trusted-brands .brand-logo:hover {
    opacity: 1;
}

/* ================= Footer ================= */


.img-logo-footer {
    max-width: 120px;
    height: auto;
    margin-bottom: 15px;
}

















/* ================= Responsive ================= */
/* ================= TĂ¡Â»ÂI Ă†Â¯U CHO PC / MÄ‚â‚¬N HÄ‚Å’NH RĂ¡Â»ËœNG ================= */

/* 1. TĂ¡Â»â€˜i Ă†Â°u MÄ‚Â n hÄ‚Â¬nh lĂ¡Â»â€ºn (Ultra Wide / Full HD) */
@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
        /* MĂ¡Â»Å¸ rĂ¡Â»â„¢ng khung chĂ¡Â»Â©a */
    }

    .hero-content h1 {
        font-size: 50px;
        /* ChĂ¡Â»Â¯ to hĂ†Â¡n cho cÄ‚Â¢n xĂ¡Â»Â©ng vĂ¡Â»â€ºi mÄ‚Â n hÄ‚Â¬nh lĂ¡Â»â€ºn */
    }
}

/* 2. Menu bÄ‚Â¡m Ă„â€˜Ă¡Â»â€°nh (Sticky Header) */


/* 3. HiĂ¡Â»â€¡u Ă¡Â»Â©ng Hover nÄ‚Â¢ng cao cho SĂ¡ÂºÂ£n phĂ¡ÂºÂ©m vÄ‚Â  Danh mĂ¡Â»Â¥c */
/* SĂ¡ÂºÂ£n phĂ¡ÂºÂ©m trĂ†Â°Ă¡Â»Â£t lÄ‚Âªn vÄ‚Â  Ă„â€˜Ă¡Â»â€¢ bÄ‚Â³ng Ă„â€˜Ă¡ÂºÂ­m hĂ†Â¡n */
.product-card {
    transition: all 0.3s ease;
}

.product-card:hover {
    transform: translateY(-8px);
    /* NhĂ¡ÂºÂ¥c bĂ¡Â»â€¢ng thĂ¡ÂºÂ» sĂ¡ÂºÂ£n phĂ¡ÂºÂ©m lÄ‚Âªn 8px */
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
    /* BÄ‚Â³ng Ă„â€˜Ă¡Â»â€¢ to vÄ‚Â  mĂ¡Â»Â hĂ†Â¡n */
}

/* Ă¡ÂºÂ¢nh danh mĂ¡Â»Â¥c phÄ‚Â³ng to nhĂ¡ÂºÂ¹ */
.category-card img {
    transition: transform 0.4s ease;
}

.category-card {
    overflow: hidden;
    /* CĂ¡ÂºÂ¯t phĂ¡ÂºÂ§n Ă¡ÂºÂ£nh bĂ¡Â»â€¹ lĂ¡Â»â€œi ra khi phÄ‚Â³ng to */
}

.category-card:hover img {
    transform: scale(1.05);
    /* PhÄ‚Â³ng to Ă¡ÂºÂ£nh thÄ‚Âªm 5% */
}

/* ===== MÄ‚Â n hÄ‚Â¬nh MÄ‚Â¡y tÄ‚Â­nh bĂ¡ÂºÂ£ng (Tablet) ===== */
@media (max-width: 992px) {
    .hero-content {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0 0 30px 0;
    }

    .hero-form {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0;
    }

    .complex-form {
        flex-direction: column;
    }

    .form-sidebar {
        width: 100%;
        border-left: none;
        border-top: 1px solid #e2ecec;
        padding: 20px;
    }

    .ai-suggestion-imgs {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 15px;
    }

    .ai-suggestion-imgs .img-box {
        margin-bottom: 0;
        width: 120px;
    }

    .ai-suggestion-imgs .arrow-down {
        transform: rotate(-90deg);
        margin-bottom: 0;
    }

    .col-4,
    .col-3,
    .col-2 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-5,
    .col-7 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 20px;
    }

    .nav-menu,
    .header-action {
        display: none;
    }

    .mobile-menu-toggle {
        display: block;
    }

    .header-action {
        display: flex;
    }

    .header-action .btn {
        display: none;
    }
}

/* ===== CHĂ¡Â»Ë†NH FONT CHĂ¡Â»Â® VIĂ¡ÂºÂ¾T TAY (SIGNATURE) ===== */

/* PhĂ¡ÂºÂ§n "BĂ¡ÂºÂ¿p tĂ¡Â»â€˜t hĂ†Â¡n mĂ¡Â»â€”i ngÄ‚Â y" */
.hero-signature,
.hero-signature i {
    font-family: 'Be Vietnam Pro', sans-serif;
    /* Ă„ÂĂ¡Â»â€¢i tÄ‚Âªn font tĂ¡ÂºÂ¡i Ă„â€˜Ä‚Â¢y */
    font-size: 42px !important;
    /* TĂ„Æ’ng nhĂ¡ÂºÂ¹ size vÄ‚Â¬ Dancing Script hĂ†Â¡i nhĂ¡Â»Â hĂ†Â¡n Caveat */
    color: #0d3b45 !important;
    transform: rotate(-8deg);
    display: inline-block;
    line-height: 1.2 !important;
    /* GiÄ‚Â£n dÄ‚Â²ng ra mĂ¡Â»â„¢t chÄ‚Âºt cho chĂ¡Â»Â¯ khÄ‚Â´ng dÄ‚Â­nh dĂ¡ÂºÂ¥u */
    margin-top: 30px;
    font-weight: 600;
}

/* PhĂ¡ÂºÂ§n "CÄ‚Â¹ng mĂ¡Â»â„¢t cĂ„Æ’n bĂ¡ÂºÂ¿p - KhÄ‚Â¡c biĂ¡Â»â€¡t lĂ¡Â»â€ºn hĂ†Â¡n" */
.sidebar-signature {
    font-family: 'Be Vietnam Pro', sans-serif;
    /* Ă„ÂĂ¡Â»â€¢i tÄ‚Âªn font tĂ¡ÂºÂ¡i Ă„â€˜Ä‚Â¢y */
    font-size: 24px !important;
    /* TĂ„Æ’ng nhĂ¡ÂºÂ¹ size */
    color: #0d3b45 !important;
    transform: rotate(-6deg);
    line-height: 1.3 !important;
    margin-top: 25px;
    font-weight: 600;
    text-align: center;
    width: 100%;
    min-width: 0;
}

/* Keep the FitMatch caption on four evenly spaced, centered lines. */
.form-sidebar .sidebar-signature-line {
    display: block;
    text-wrap: balance;
}

/* Hide mobile drawer on desktop by default */
.mobile-drawer,
.mobile-drawer-overlay {
    display: none;
}

/* ===== MÄ‚Â n hÄ‚Â¬nh Ă„ÂiĂ¡Â»â€¡n thoĂ¡ÂºÂ¡i (Mobile) ===== */
@media (max-width: 576px) {

    /* Mobile Drawer Menu */
    .mobile-drawer-overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 1000;
        opacity: 0;
        transition: opacity 0.3s;
    }

    .mobile-drawer-overlay.active {
        display: block;
        opacity: 1;
    }

    .mobile-drawer {
        position: fixed;
        top: 0;
        left: -300px;
        width: 280px;
        height: 100%;
        background: #fff;
        z-index: 1001;
        transition: left 0.3s ease;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
        display: flex;
        flex-direction: column;
    }

    .mobile-drawer.active {
        left: 0;
    }

    .drawer-header {
        padding: 15px 20px;
        border-bottom: 1px solid #eee;
    }

    .close-drawer {
        font-size: 24px;
        cursor: pointer;
        color: #333;
        line-height: 1;
    }

    .drawer-body {
        padding: 10px 0;
        flex-grow: 1;
        overflow-y: auto;
    }

    .drawer-body a {
        display: block;
        padding: 15px 20px;
        color: #333;
        font-size: 16px;
        border-bottom: 1px solid #f5f5f5;
        text-decoration: none;
        font-weight: 500;
    }

    .drawer-footer {
        padding: 20px;
        border-top: 1px solid #eee;
    }

    .hotline-drawer {
        font-size: 16px;
        font-weight: bold;
        color: #333;
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .hotline-drawer i {
        color: #0d3b45;
        font-size: 18px;
    }

    .col-8,
    .col-7,
    .col-5,
    .col-4,
    .col-3,
    .col-2 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    /* Hero & General */
    .hero-buttons .btn {
        width: 100%;
        margin-bottom: 10px;
    }

    .hero-content h1 {
        font-size: 32px;
    }

    .hero-signature {
        font-size: 22px;
    }

    .radio-group {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 12px;
    }

    .form-group select {
        padding: 12px;
    }

    .section-padding {
        padding: 30px 15px;
    }

    .hero {
        padding: 20px 0;
    }

    .btn {
        padding: 14px 15px;
    }

    /* Header Hotline */
    .header .flex-between {
        align-items: center;
    }

    .mobile-menu-toggle {
        display: none;
    }

    

    .header-action {
        order: 3;
    }

    .header-action .hotline {
  white-space: nowrap;
        margin-right: 0 !important;
        text-align: right;
    }

    .header-action .hotline span {
        display: none;
    }

    /* Products */
    .product-actions {
        flex-direction: column;
    }

    .product-actions .btn {
        width: 100%;
        margin-bottom: 8px;
    }

    /* Section Headers */
    .section-header.flex-between {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    /* Brands Section */
    .brands-header.flex-between {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .brands-list.flex-between {
        justify-content: center;
        gap: 20px;
    }

    .trusted-brands .brand-logo {
        font-size: 18px !important;
    }

    /* Thu nhĂ¡Â»Â nhĂ¡ÂºÂ¹ logo text trÄ‚Âªn mobile */

    /* Replacement Banner (AI Steps) */
    .banner-text {
        padding-right: 0;
        margin-bottom: 25px;
    }

    #btn-thu-ngay {
        font-size: 13px;
        padding: 14px 10px;
        white-space: normal;
        line-height: 1.4;
        width: 100%;
        text-align: center;
    }

    .banner-steps-container {
        border-left: none;
        padding-left: 0;
        margin-left: 0;
    }

    .banner-steps {
        flex-direction: column;
        gap: 0;
        align-items: center;
    }

    .step-item {
        margin-bottom: 25px;
        width: 100%;
        display: flex;
        justify-content: center;
    }

    /* Keep vertical alignment inside card but add spacing */
    .step-card {
        padding: 20px 10px 15px;
        border: 1px solid #eee;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
        width: 100%;
        max-width: 260px;
        /* Limits width so it doesn't stretch too much, looks better centered */
        margin: 0 auto;
    }

    .step-number {
        top: -10px;
        left: -10px;
    }

    /* Footer & CTA */














    .cta-action {
        flex-direction: column;
        align-items: flex-start;
        margin-top: 10px;
        gap: 15px;
        width: 100%;
    }


}
/* --- CSS Ă„ÂĂ¡Â»â€ LÄ‚â‚¬M TOÄ‚â‚¬N BĂ¡Â»Ëœ BOX CLICK Ă„ÂĂ†Â¯Ă¡Â»Â¢C (THĂ¡ÂºÂº A FULL BOX) --- */
.product-card, .article-card, .featured-post {
  position: relative;
}
.product-card a::after, .article-card a::after, .featured-post a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
}

/* Contact links hover state */
.contact-link:hover {
  text-decoration: underline !important;
  opacity: 0.8;
}
/* ============================================================== */
/* STANDARDIZED HEADER & MOBILE MENU CSS (ADDED BY AI)            */
/* ============================================================== */

/* DESKTOP LAYOUT (Default) */






.main-nav {
    display: flex;
    align-items: center;
}

.nav-list {
    display: flex;
    gap: 24px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-item {
    text-decoration: none;
    color: #333;
    font-weight: 500;
    font-size: 16px;
}



.mobile-menu-btn {
    display: none; /* Hidden on desktop */
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #0d3b45;
}

.mobile-only {
    display: none;
}

.menu-overlay { display: none; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.5); z-index: 9998; }
.menu-overlay.menu-active { display: block; }

/* MOBILE LAYOUT */
@media (max-width: 1024px) {


    /* Hide desktop actions */


    /* Show mobile menu button */
    .mobile-menu-btn {
        display: block;
        position: relative;
        z-index: 9999;
    }

    /* Standardize mobile Sidebar Menu */
    .main-nav {
        position: fixed;
        top: 0;
        left: 0;
        width: 280px;
        display: flex;
        height: 100vh;
        background: #fff;
        z-index: 9999;
        flex-direction: column;
        align-items: flex-start;
        padding: 0;
        transform: translateX(-100%);
        transition: transform 0.3s ease-in-out;
        box-shadow: 2px 0 8px rgba(0,0,0,0.1);
        overflow-y: auto;
    }

    /* Active state for Sidebar */
    .main-nav.menu-active { transform: translateX(0) !important; }

    .mobile-only {
        display: flex !important;
    }

    .nav-list {
        flex-direction: column;
        width: 100%;
        gap: 0;
    }

    .nav-list li {
        width: 100%;
        border-bottom: 1px solid #eee;
    }

    .nav-list .nav-item {
        display: block;
        padding: 16px 20px;
        width: 100%;
    }

    .mobile-nav-header {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 16px 20px;
        border-bottom: 1px solid #eee;
    }

    .mobile-nav-logo {
        height: 40px;
    }

    .mobile-nav-close {
        background: none;
        border: none;
        font-size: 24px;
        cursor: pointer;
        color: #333;
    }

    .mobile-nav-footer {
        flex-direction: column;
        width: 100%;
        padding: 20px;
        gap: 12px;
        margin-top: auto;
    }

    .btn-mobile-consult {
        display: block;
        text-align: center;
        background: #ff6a00;
        color: #fff;
        padding: 12px;
        border-radius: 8px;
        text-decoration: none;
        font-weight: bold;
    }
    
    .mobile-hotline {
        display: block;
        text-align: center;
        color: #0d3b45;
        text-decoration: none;
        font-weight: bold;
        font-size: 16px;
    }
}

/* DESKTOP ACTIONS STANDARDIZATION (ADDED BY AI) */

.search-box {
    display: flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 4px 10px;
    background: #f9f9f9;
}
.search-box input {
    border: none;
    outline: none;
    background: transparent;
    padding: 5px;
    font-size: 14px;
    width: 150px;
}
.search-box button {
    background: none;
    border: none;
    cursor: pointer;
    color: #666;
}
.btn-try-fit {
    background-color: #ff6a00;
    color: #fff;
    padding: 9px 18px;
    border-radius: 4px;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none;
    transition: background 0.2s;
    white-space: nowrap;
}
.btn-try-fit:hover {
    background-color: #e65c00;
}
.hotline {
    white-space: nowrap;
    font-weight: 700;
    color: #333;
    font-size: 14px;
}
.hotline a {
    color: inherit;
    text-decoration: none;
}
.nav-item:hover, .nav-item.active {
    color: #ff6a00;
}

/* --- Hero Banner Title (index.html) --- */
.hero-title {
    font-family: 'Be Vietnam Pro', sans-serif;
    font-size: 55px;
    font-weight: 700;
    color: #0d3b44;
    line-height: 1.2;
}

/* Hide on Mobile helper */
@media (max-width: 768px) {
    .hero-title {
        font-size: 36px; /* GiĂ¡ÂºÂ£m size chĂ¡Â»Â¯ cho mobile */
    }
    .desktop-only {
        display: none !important; /* Ă¡ÂºÂ¨n thĂ¡ÂºÂ» <br> trÄ‚Âªn mobile Ă„â€˜Ă¡Â»Æ’ chĂ¡Â»Â¯ tĂ¡Â»Â± Ă„â€˜Ă¡Â»â„¢ng rĂ¡Â»â€ºt dÄ‚Â²ng */
    }
}


/* TĂ¹y ch?nh nĂºt Add to cart c?a WooCommerce trĂªn trang ch? */
.product-actions .add_to_cart_button {
    flex: 1;
    padding: 10px 15px;
    border-radius: 4px;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
    background: transparent;
    border: 1px solid #005a5a;
    color: #005a5a;
    transition: all 0.3s;
    text-decoration: none;
    display: inline-block;
    font-size: 14px;
    white-space: nowrap;
}
.product-actions .add_to_cart_button:hover {
    background-color: #005a5a;
    color: #fff;
}
.product-actions .add_to_cart_button::before {
    content: "\f07a"; /* FontAwesome cart icon */
    font-family: 'Be Vietnam Pro', sans-serif;
    font-weight: 900;
    margin-right: 5px;
}
/* WooCommerce Price Fallbacks to match design */
.price ins, .price > .amount, .price > .woocommerce-Price-amount {
    font-size: 22px;
    color: #f26522;
    font-weight: 700;
    text-decoration: none;
}
.price ins .amount {
    font-size: 22px;
    color: #f26522;
    font-weight: 700;
}



/* FIX: Layout for AI Form */
@media (max-width: 768px) {
    .radio-group {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        width: 100% !important;
    }
    .radio-group .radio-pill {
        width: 100% !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        border-radius: 30px !important;
        padding: 12px 16px !important;
    }
}
.form-group select {
    width: 100% !important;
    padding: 12px 16px !important;
    border-radius: 30px !important;
    border: 1px solid #ccc !important;
    background-color: #fff !important;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23333333%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: right 15px top 50%;
    background-size: 12px auto;
}


/* FIX: Force feature icons to remain circular on mobile */
.feature-item .icon, .feature-item .dark-icon { flex-shrink: 0 !important; }

/* ================= Best Seller Section ================= */
.best-seller-section {
    padding-top: 10px;
    padding-bottom: 50px;
}

.best-seller-section .col-3 {
    display: flex;
    flex-direction: column;
    margin-bottom: 24px;
}

.best-seller-section .product-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.best-seller-section .product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12);
}

.best-seller-section .product-card-link {
    display: block;
    width: 100%;
    height: 200px;
    overflow: hidden;
    background-color: #f8f9fa;
}

.best-seller-section .product-card a > img,
.best-seller-section .product-card-link img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

.best-seller-section .product-card:hover a > img,
.best-seller-section .product-card:hover .product-card-link img {
    transform: scale(1.05);
}

.best-seller-section .product-info {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding: 15px 14px;
}

.best-seller-section .product-info h4 {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    margin: 6px 0 10px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 42px;
}

.best-seller-section .product-info .price {
    margin-bottom: 12px;
}

.best-seller-section .product-info .specs {
    margin-bottom: 16px;
    min-height: 28px;
}

.best-seller-section .product-actions {
    margin-top: auto;
    display: flex;
    gap: 8px;
    align-items: center;
}

.best-seller-section .product-actions .btn,
.best-seller-section .product-actions .add_to_cart_button {
    flex: 1;
    min-width: 0;
    padding: 9px 6px;
    font-size: 12.5px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 38px;
    line-height: 1.35;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
    border-radius: 4px;
    text-decoration: none;
    box-sizing: border-box;
}

.best-seller-section .product-actions .add_to_cart_button::before {
    display: none !important;
}

@media (min-width: 993px) and (max-width: 1200px) {
    .best-seller-section .product-actions {
        flex-direction: column;
        gap: 6px;
    }
    .best-seller-section .product-actions .btn,
    .best-seller-section .product-actions .add_to_cart_button {
        width: 100%;
        padding: 9px 8px;
        font-size: 13px;
    }
}

@media (max-width: 576px) {
    .best-seller-section .product-actions {
        flex-direction: column;
        gap: 8px;
    }
    .best-seller-section .product-actions .btn,
    .best-seller-section .product-actions .add_to_cart_button {
        width: 100%;
        padding: 10px;
        font-size: 13px;
    }
}





